Amstrad Diagnostics ROM

Started by llopis, 18:35, 24 February 21

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

llopis

Quote from: Sid_ on 09:03, 25 February 21
This diag rom may be installed on the c4cpc ?
Now it can (there's a cpr build in the latest release). If you check it out, let me know. I'm especially curious if it works on a GX4000 too.


Shining

Quote from: rpalmer on 23:06, 27 February 21
There various different lower ROMs to handle the different keyboard layouts.
1. The default UK English/Australian QWERTY layout.
2. The French with the AZERTY layout.3. The German layout with accented keys.4. The Spanish layout with different accented keys to the German layout.
I think that is most if not all.
As for BASIC ROMs there are several notably 1.0 and 1.1. There are several other with patches for fixes to routines and speed up of others.
The sign on message is based on the link setting on the motherboard which are used as an index into a table of possible sign on messages types.


Is there really a german official internal ROM? I never heard of a CPC with a german keyboard by default. Until today I always thought that the only difference between uk and german cpcs were the internal brand jumper, the case (brand), the key colors on 464 and 664 and on 6128 the centronics.
TGS is back

Download my productions at:
cpc.scifinet.org

llopis

#28
I just released v0.5 of the Diagnostics ROM.
https://github.com/llopis/amstrad-diagnostics

It now has a more extensive upper RAM test and a keyboard test.

I know some of you have some crazy expansions and configurations, so if you try it, let me know if it works OK. It also checks whether C3 config is supported, so if you have an expansion that does NOT support it, I would be particularly interested in hearing if it reports it correctly.

Edit: Also, I think there's something going on with the upper ROM build that's not quite right. I was told that X-Mem and M4 display the name in weird ways or something like that. I also noticed I had to mark it as a foreground ROM for it to work, but it really is a background ROM. Any ideas what I'm doing wrong? It seems pretty straightforward, but I'm clearly missing something:
https://github.com/llopis/amstrad-diagnostics/blob/main/src/RSXTable.asm

Edit2: Fixed. I didn't understand the background ROM format properly and didn't realize the first jump was the initialization one.

And if you care about some of the background and finally led me to get started with this:

https://youtu.be/tw0ClciNUDQ

Animalgril987

Hi Noel.
Can your diagnostic ROM  be used in an M4 or Romboard?


Great video, nice detective work. :D


Like your Amstrad T shirt!


Alan.

vasilisk

Is it possible to have a dsk version of this diagnostic rom?

llopis

#31
Quote from: Animalgril987 on 21:57, 04 March 21
Can your diagnostic ROM  be used in an M4 or Romboard?
Great video, nice detective work. :D
Thanks, Alan!
Yes, you can install the upper ROM build. When you do, you can run it with |DIAG. But hang on an hour or so and wait for v0.6 that fixes how the upper ROM initializes itself.
Edit: Actually, instead of waiting a while, I just released a quick 0.51 with the updated upper ROM and nothing else. So give that one a try.


Quote from: vasilisk on 22:23, 04 March 21Is it possible to have a dsk version of this diagnostic rom?
Yes, it's already available in DSK. Check out the release zip file: https://github.com/llopis/amstrad-diagnostics/releases

Animalgril987

Thanks for the quick reply, Noel.


I'll give it a go at the weekend.


Alan.

llopis

Quote from: Audronic on 09:56, 25 February 21
The id of rom 7 Varies ? 8179  - 2162 at restart (Power up ) I Varies each power up.
Hi Ray,
If you get a chance, could you give the latest version a try? (0.6) I'm curious if the ROM problem has been fixed or you still keep getting different CRCs every time.
https://github.com/llopis/amstrad-diagnostics/releases
Thanks!

Audronic

#34
Hi Noel

I have Burned an Eprom for the Lower Rom board
This is a Standard CPC6128 --  NO MODS

? No Test for lower Rom ??

Thanks

Keep Safe

Ray
Procrastinators Unite,
If it Ain't Broke PLEASE Don't Fix it.
I keep telling you I am Not Pedantic.
As I Live " Down Under " I Take my Gravity Tablets and Wear my Magnetic Boots to Keep me from Falling off.

llopis

Quote from: Audronic on 00:59, 06 March 21
Hi Noel

I have Burned an Eprom for the Lower Rom board
This is a Standard CPC6128 --  NO MODS

? No Test for lower Rom ??


Great, it's looking better! Thanks for checking!


I'm not checking for low ROM there because you're using a ROM board taking over the low ROM  :) . If there's a way to programmatically disconnect it and access the system ROM, I'd love to know. I'm already doing that for the Dandanator, but I'm not doing anything special for X-Mem or M4 for example. Anybody knows a way?




robcfg

On the M4 subject @Duke is your man  ;D

Animalgril987

|M4ROMOFF disables M4 ROM until next power cycle. :D

llopis

Quote from: Animalgril987 on 16:02, 06 March 21
|M4ROMOFF disables M4 ROM until next power cycle. :D
OK, that's good that it exists. I would need a way to do it from assembly and to turn it back on after I'm doing checking the system lower ROM. I'm looking through the M4 dev info but I don't see it. http://www.spinpoint.org/cpc/m4info.txt Any ideas?

Animalgril987

 I don't have a disassembler capable of looking at ROMs at the moment, or I'd look at the M4 command jumpblock to find the entry point for  the RSX.
And it has probably moved depending on version number.


Hopefully @Duke will see the post and will be able to help.


Alan.

robcfg

Quote from: llopis on 18:11, 06 March 21
OK, that's good that it exists. I would need a way to do it from assembly and to turn it back on after I'm doing checking the system lower ROM. I'm looking through the M4 dev info but I don't see it. http://www.spinpoint.org/cpc/m4info.txt Any ideas?


Send a PM to Duke  :D

Duke

#41
Quote from: Animalgril987 on 19:27, 06 March 21I don't have a disassembler capable of looking at ROMs at the moment, or I'd look at the M4 command jumpblock to find the entry point for  the RSX. And it has probably moved depending on version number. Hopefully @Duke will see the post and will be able to help. Alan.
It is easier to look directly into the M4 rom source code here :
https://github.com/M4Duke/m4rom

But the romsoff command is probably not gonna do it as it does a reset too.

Quote from: llopis on 18:11, 06 March 21
OK, that's good that it exists. I would need a way to do it from assembly and to turn it back on after I'm doing checking the system lower ROM. I'm looking through the M4 dev info but I don't see it. http://www.spinpoint.org/cpc/m4info.txt Any ideas?
I've just added a feature to latest M4 Firmware v2.0.7, so you can change lowerrom on the fly from the one uploaded to the romboard to the system or even the HACK menu one.

It's this command:
C_ROMLOW            0x433D         Implemented v2.0.7.
Map lower rom : data[0] = 0 system lower rom, 1 = lowerrom from romboard if enabled, 2 = lowerrom from HACK menu.

You can see various examples here on how to send commands to the M4 board:
https://github.com/M4Duke/M4examples

A version check is probably a good idea, since this is a new feature.

llopis

Quote from: Duke on 09:39, 07 March 21
I've just added a feature to latest M4 Firmware v2.0.7, so you can change lowerrom on the fly from the one uploaded to the romboard to the system or even the HACK menu one.

It's this command:
C_ROMLOW            0x433D         Implemented v2.0.7.
Map lower rom : data[0] = 0 system lower rom, 1 = lowerrom from romboard if enabled, 2 = lowerrom from HACK menu.

You can see various examples here on how to send commands to the M4 board:
https://github.com/M4Duke/M4examples

A version check is probably a good idea, since this is a new feature.
That's great. I'll look into adding it in the next release. Thanks!

llopis

I just pushed out a new release of the diagnostics ROM. Mostly it detects and checks upper RAM up to 4MB, and it also pages out the M4 lower ROM for low ROM system test (thanks @Duke !).


You can download it and read the details here https://github.com/llopis/amstrad-diagnostics/releases/tag/v0.9



VincentGR

Amazing work Noel, it's getting better and better.

SkulleateR

Ok, I have some curiosity here and I'm stuck ...


I was given a 6128 from a friend but it's faulty, it won't load any 128KB game, else it's working fine .... Nearly the same issue that my old 6128 has, but that one died in a house fire while I was in hospital some weeks ago :(


So now I decided to fire up the diagnostic and check out whats the problem here. Since the 6128 got no Diskdrive I use my M4 from my 464.


First I decided to fire up ADR from dsk, RAM test passes fine even upper ram but it crashes when detecting Lower Rom ?
Next step was to use ADR Lower Rom, put it on Rom Slot 5, fire it up and it passes all tests !
Next one was ADR Upper Rom (think I put it on Slot 15), fire it up, startet with |DIAG and it also crashes when detecting Lower Rom but here it just resets the CPC, just what it mainly does when starting a 128KB game.


Does this now mean I have a faulty Lower Rom on the mainboard ? And the test passes when using the ADR as Lower Rom ??? Btw. I use the modified 6128 Rom for the M4 on Slot 31


llopis

Hmm... it sounds like you may be using v0.9? That one had a bug like that I believe. Make sure to use the latest release (https://github.com/llopis/amstrad-diagnostics/releases/). Let me know if that works.

SkulleateR

I'm sure I downloaded THAT one, but k, now it works  :P







Guess the UNKNOWN Rom (Lower) is the modified 6128 rom then ....


Ok, still don't know why I cannot start an 128KB game but I guess I will put this into another thread since it's not connected to ADR then ... thx :)

llopis


Exactly. If you modified the 6128 ROM it just comes up as unknown.


I take it the upper RAM tests all passed fine? That would have also been my guess if you can't start 128K games.



Quote from: SkulleateR on 20:05, 20 March 21
I'm sure I downloaded THAT one, but k, now it works  :P







Guess the UNKNOWN Rom (Lower) is the modified 6128 rom then ....


Ok, still don't know why I cannot start an 128KB game but I guess I will put this into another thread since it's not connected to ADR then ... thx :)

SkulleateR

Guess so, since I only got 64KB this should be BANK 00 ...



Powered by SMFPacks Menu Editor Mod