News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_TFM

FutureOS corner

Started by TFM, 05:12, 01 October 10

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

TFM

more HGBs...
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

TFM

TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

TFM

Well, after some comments from some CPC users I got the idea to introduce a new bit in the FutureOS configuration.
I will call it the SPARTan bit, if this bit is set, then all currently not needed icons will not be shown. For example icons of not connected drives will not be shown, and so on. What do you think?
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Kris

Great Idea !! I will "clean up" the screen a little bit  ;)

TFM

Yes, and you can see more of BackGround-pictures too ;-) So I will do that! :) (Examples of pictures here: http://www.colorado-boys-muenchen.de/users/futureos/files/Wallpaper_HGBs_Deu-Eng.zip)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Gryzor

Nice feature, should be like that from the beginning. Does it reorder the available icons too or do the active ones stay at the same place?

TFM

The icons remain fixed, that's intended that way, because so you will find your icons on every CPC.

Remember the situaton: You go to a strange PC and search for the icons - now you really start searching because every PC desktop is different... Puh!

We don't have that problem here, since all icons can be found at the same position  :)

I'm a bit 'late' in moving on with that project, because I invest most of my spare time = CPC time (which tends to be smaller and smaller) into my game Cyber Huhn, which is 80% finished.
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

TFM

Time to ask now....

Already did some work today... so the weekend will be productive - I hope ;-)

If the SPARtan bit is enabled, then not-actually-needed icons will disappear. Is there anything else you want to have changed? In connection with the SPARtan bit or separated of it? Let me know.
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Devilmarkus

You should make the icons user-arrangable, so that its possible to arrange your icons in the order you like.
In rest all is fine...
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

TFM

Would it be fine for you if this would be done by an tool, which patches the ROMs (inside the MegaFlash for example)?
Well, I don't want to integrate this feature directly in the OS ROMs since it would use up some more ROM space (at least if the process is half the way comfortable).
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

TFM

There is a little update of the ROM documentation (last OS function-description of ROM A finally translated to English). Also the German ROM A doc is updated.
This update is rather a minor than a major, but it makes sense to post it, for coders.

TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

00WReX

Hello,
I have just recently observed an interesting thing with 2 of my CPC's.
I have been using FutureOS successfully for a while now and Just recently I swapped my ROM card to another CPC and found that FutureOS locks up as soon as the main screen appears. Today I got out some of my other CPC's and did some testing.
The interesting thing is that FutureOS locked up on another 6128 that happened to be exactly the same revision of mainboard as the other one that locks up. FutureOS worked fine on all my other CPC's.

The mainboard revision is MC0020I.

Cheers,
Shane.
The CPC in Australia...
Awa - CPCWiki

arnoldemu

Quote from: 00WReX on 13:05, 06 October 12
Hello,
I have just recently observed an interesting thing with 2 of my CPC's.
I have been using FutureOS successfully for a while now and Just recently I swapped my ROM card to another CPC and found that FutureOS locks up as soon as the main screen appears. Today I got out some of my other CPC's and did some testing.
The interesting thing is that FutureOS locked up on another 6128 that happened to be exactly the same revision of mainboard as the other one that locks up. FutureOS worked fine on all my other CPC's.

The mainboard revision is MC0020I.

Cheers,
Shane.
Hi Shane,

it would be interesting if you would say what model of ppi8255, ay, crtc, gate-array and z80 are on this board.
Perhaps there is something here that would explain the problem?
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

00WReX

I will grab those details when I get a moment to remove the covers.

The info I have at the moment is just some details that I grabbed when i 1st got the CPC's (I always do a basic catalogue of details of each one...maybe I need to add a bit more detail  :D )

Amstrad CPC6128 QWERTY
Serial Number on the bottom of the computer.  533-8635979
Main PCB Markings:-  Amstrad Pt No.  Z70290 © 1985  Board Revision.  MC0020I
Main PCB Serial Number (white sticker).  ZAA8Y00267
Amstrad 40010 Gate Array (no heat-sink).
Bottom of CPC case (inside), plastic dated 5/88.   Top of CPC case (inside), plastic dated 6/88
Keyboard Pt No.  Z70221   Part No.  ESU244   Date Code.  80527
Disc Drive model.  EME-156   Disc Drive dated.  15 Apr 88

Amstrad CPC6128 AZERTY
Serial Number on the bottom of the computer.  533-8Y22696
Main PCB Markings:-  Amstrad Pt No. Z70290 © 1985  Board Revision.  MC0020I
Main PCB Serial Number (white sticker).  ZAB8Y01356
Amstrad 40010 Gate Array (no heat-sink).    Amstrad 40051 French BIOS ROM.
Bottom of CPC case (inside), plastic dated 11/88.   Top of CPC case (inside), plastic dated x/xx.
Keyboard Pt No.  Z70311   Part No.  ESU2455   Date Code.  81005
Disc Drive model.  EME-156 V   Disc Drive dated.  13 Jul 88

Oh and both are CRTC 1.

Cheers,
Shane
The CPC in Australia...
Awa - CPCWiki

Bryce

I have the same issue on all Plus machines (1x 6128+ 2x 464+) that I've tested. I informed TFM of the issue about a year ago.

Bryce.

00WReX

I just did some checking on the wiki "mainboard" page.

Mainboard Versions - CPCWiki

One thing I noticed is that the MC0020I mainboards have a "microchip" branded AY-3-8912.
Almost all other CPC mainboards use the General Instruments (GI) version.
The CPC +'s also seem to use the "microchip" versions.

May not be relevant, but an observation.

I can also confirm that at least one of my MC0020I mainboards has the "microchip" AY...would need to check the other one.

Cheers,
Shane
The CPC in Australia...
Awa - CPCWiki

TFM

#191
Hi there! First, thanks' a lot for this update, This explains a lot of trouble people had. I was never ever able to reproduce the effect by myself (all my CPCs seem to have the good mainboards).
Indeed it is highly likely that the AY is the bad guy, since it does the keyboard management in the CPC. And due to the information from Bryce and now also 00WReX I have the idea that the 'lock up' happens due to keyboard scanning.
However it will be hard to find out what's the exact nature of the problem, as long as I don't have such a CPC. So I will try to get one... (but this will take a lot of time since I'm still in USA and can't access real hardware). Now if you are willing to run a test routine on your CPC this may help. But first I have to think about how to come closer to this problem.
Interestingly also the Plus seem to be different, there are problems on the Plus computers from Bryce, but not on my own. Quite confusing!

EDIT:
Quote from: 00WReX on 00:44, 04 October 12
... On top of that, it gets stranger...If I hold down an arrow key when I load FutureOS, the cursor moves around the screen, and as long as I dont let go of a cursor key (so keep holding one while filcking over to the next) I cant move the pointer around the screen.
I should have read that more early  ::)  But hey, that's a very good hint! So it is definitely the keyboard scanning! And I alread have an idea!
Can somebody runs some tests for me on an MC0020I mainboard for me please?
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

robcfg

It will take some time to dig out the 20I board at CPCManiaco's place, but sure, as soon as we find it I'll be telling you.

00WReX

#193
Thanks for your reply TFM.

I can certainly run any tests you require.

I just re-read what I wrote previously, and I made a mistake with one word that is relevant.

QuoteQuote from: 00WReX on 09:44, 04 October 12
... On top of that, it gets stranger...If I hold down an arrow key when I load FutureOS, the cursor moves around the screen, and as long as I dont let go of a cursor key (so keep holding one while flicking over to the next) I cant move the pointer around the screen.

It should have read...

"If I hold down an arrow key when I load FutureOS, the cursor moves around the screen, and as long as I dont let go of a cursor key (so keep holding one while flicking over to the next) I can move the pointer around the screen." As soon as I release the cursor keys so that none are being pressed, FOS locks up.

Anyway as I mentioned, I am happy to perform some testing if required.  :)


Cheers,
Shane
The CPC in Australia...
Awa - CPCWiki

TFM

#194
I did read you right :-) Thanks.
Ok, please perform the following test: Can you use the ROManager (from my homepage) with the 'bad' mainboard?
I ask, because it uses similar key-scanning routines. If it does not run, we are one step forward.


Now I already updated my key-scanning routines in it. So, IF the 'old' version does NOT run, then please try this version (see attached file). If it runs, we got the bug.
(both versions are for basic)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

00WReX

Hi TFM,

I just tried both versions 1.35 & 1.44 of the ROM manager for basic and they worked fine...no lockups at all.
I went through the menus and selected various items...no problem.

Cheers,
Shane
The CPC in Australia...
Awa - CPCWiki

gerald

Hi TFM

I did some test on my 6128+ MC122C motherboard, with a microchip AY.
Keyboard is OK with ROM manager V1.44 old version. So i did not test the modified version.
I then programmed futureOS 8 beta on my FLASH board and run it on the 6128+ and 6128.
As expected, the cursor cannot be moved with the 6128+.

Logic analyser show that the OS is stuck in routine starting at 0xF8BA, endlessly reading port 0xFD10 (Symbiface II?)
Read value is 0x78, which is also the last read data (in A, (C) is ED 78.


6128 +
F8BA ld (#BA60), HL
F8BD ld BC, #FD10
F8C0 in A, (C)
F8C2 ld D, A
F8C3 RLCA
F8C4 jr C, #F8F3
F8C6 RLCA
F8C7 jr NC, #F867
F8C9 RLCA
F8CA LD A, D
F8CB JR C, #F8E3

F8E3 or #E0
F8E5 ld D, #FF
F8E7 ld E, A
F8E8 ld HL,(#BA60)
F8EB add HL, DE
F8EC jr C, #F8BA
F8EE ld HL, #0000
F8F1 jr #F8BA


On a 6128, the OS loops at code starting at F8AA

F8AA ld BC, #FD10
F8AD in A, (C)
F8AF inc A       
F8B0 ret Z 


On 6128, the data read during the IN A, (C) is FF. Playing with the logic analyser threshold, you can observe that the bus is floating and as weakly pulled up quickly goes from 0x78 to 0xFF. Z80 reads 0xFF

On 6128+, the data read during the IN A, (C) is 0x78.  Playing with the logic analyser show that the bus is not pulled up, or so weakly that the Z80 read 0x78.

So we can have 3 temporary conclusion :
   1. Microchip AY is innocent, until proved guilty  ;)
   2. 6128+ MC00122C motherboard has data bus not pulled up (or really weakly)
   3. FutureOS need to identify this case

TFM

#197
Oh! WoW! Thank you so much for this detailed error analysis. It's unbelieveable what can be done with the right equippment!
Now, the next step is to delete the 'guilty' code and to see if it runs then.
I will take a closer look at the problem right now!
Big Thanks to all your help here :)

EDIT: The &FD10 port is the mouse port of the SF2. I did not know that the CPC is floating here (without a connected SF2). This logic analyzer is a wonder tool :-D

EDIT2: However it seems to me that the Microchip AY promotes floating of that port.

EDIT3: Well, obviously the OS thinks that the SF2 is connected, but it's not. So I have to check this routine too. In this case another floating port can be found in the &FDxx region. Should keep that in mind. &FDxx is probably unstable in general.
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

gerald

Quote from: TFM/FS on 18:52, 07 October 12
Oh! WoW! Thank you so much for this detailed error analysis. It's unbelieveable what can be done with the right equippment!
Well, my undestanding is that you even did not have a CPC  ;D
But if you can afford it, the Intronix 34 Channel 500MHz PC-Based Logic Analyzer Just 9 - Includes CAN, is realy nice.

Quote from: TFM/FS on 18:52, 07 October 12
EDIT: The &FD10 port is the mouse port of the SF2. I did not know that the CPC is floating here (without a connected SF2). This logic analyzer is a wonder tool :-D
EDIT3: Well, obviously the OS thinks that the SF2 is connected, but it's not. So I have to check this routine too. In this case another floating port can be found in the &FDxx region. Should keep that in mind. &FDxx is probably unstable in general.
Every port that has no HW responding to it will leave the port floating. I am just wondering who is pulling-up the bus on other CPC. I this a effect of TTL input of Z80 or other IC?


Quote from: TFM/FS on 18:52, 07 October 12
EDIT2: However it seems to me that the Microchip AY promotes floating of that port.
Well, microchip being a spin-off of General Instrument, there is a extremely high probability that GI and Micochip AY are strictly identical.
Also do not forget that the AY is by no way on the Z80 bus, but on the PPI port which will drive the bus when read.

Quote
Big Thanks to all your help here :)
Your welcome  :)

TFM

Well, the AY is at the PIO and the PIO at the Z80. Seems that the problem is connected to certain AY versions or PCB versions. Or it may be an accident, but that's IMHO unlikely.
If you take a CPC and read from some port, then you usually get an &FF when there is no hardware connected too. They should not be floating, and for most CPCs they may not do. However, obviously there are exceptions.
Now thanks to your great help I was alread able to change the OS source code in a way, that this problem will be - hopefully - ommited in future.
If someone likes to have a new update now, then let me know. Else I would like to add some other functionality too and then assemble it. (I don't know how much % of the CPCs are affected).
That logic analyzer seems to be a great tool. But I wouldn't know how to use it.  ;)  So I stay coding  ;)
Thanks' again! That really helped more than I can say. Else I would have probably investigated the key-scanning stuff for the rest of my life.  :laugh:
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Powered by SMFPacks Menu Editor Mod