Calling all ROMs! Collecting DeclROM data

eharmon

Well-known member
Thanks for everything people have shared for testing! If anyone happens to have them, I have a few requests for ROMs with DeclROM entries:
  • DayStar Turbo 601
  • DayStar PowerPro
  • Apple PowerPC Upgrade Cards (all flavors)
  • PowerBook 5300
  • PowerBook 2400c/3400c
  • All types of clone boards
  • ISDN cards, various
  • Duo Dock
  • A DECNet card, may or may not even exist
  • Any non-SCSI storage
  • MIDI Card, various
  • Parallel card, may not exist
  • Any compression accelerators
  • Any RAM cards besides the DayStar RAM PowerCard
  • Radius Rockets besides the 40MHz and 25i
And as usual, anything exotic you happen to have!

This would make my test matrix fairly complete so I can squish out any more bugs!
 

Phipli

Well-known member
Radius Rockets besides the 40MHz and 25i
 

Arbee

Well-known member
I didn't do the dump, but the person who did did both an EPROM read and an in-system read with Paul Pratt's SlotROM utility and they match. (It was working in the system when the SlotROM dump was run).
 

amedeo_68k

Well-known member
ImageWriter II/LQ AppleTalk Option Card Firmware attached
 

Attachments

  • ImageWriter_AppleTalk_Card.BIN
    8 KB · Views: 6

powermax

Well-known member
It would be nice to have DeclROM dumps for the following Apple video cards:
Although both cards have been designed to be used in the PDS/VDS slot of a first-generation Power Macintosh computer,
they still can be considered Nubus cards due to the way they are handled by the system software (Nubus pseudo-slot $E).

The above ROMs should conform to the DeclROM format in order to be usable in a Power Macintosh.

Moreover, both ROMs supposedly contain a predefined signature (details here) in order to be resetable during machine startup
before the card is recognized by the Slot Manager.

Does someone own the above cards and could dump their ROMs?

P.S.: ROM dump for the former has been posted here. It seems to be incomplete though - it misses the standard DeclROM header for somewhat reason so it can't be recognized by the Slot Manager...
 
Last edited:

powermax

Well-known member
The ROM chips mentioned here look like 128k x 8 bit CMOS MASK ones, probably a KM23C1010-15 or similar Samsung components.
The 341S0020 dump posted here is 64K. It supposedly misses the second half.
 

Arbee

Well-known member
If anyone has any DuoDock DeclROMs I'd be interested in those. A little off the beaten path, but as far as I know they're still standard NuBus DeclROMs.
 

Dandu

Well-known member
I have the two cards (HPV and AV) and i will try to dump it too, because i have found Easter Eggs into the ROM (i suppose). What's the best way to try tu dump the chip ? Is this possible with software ?
 

joevt

Well-known member
Software should be able to dump it. Read the "Slot Manager" chapter of "Inside Macintosh: Devices". I wrote a program to dump slot resources but not to dump raw bytes.
#12 #6 #11
 

joevt

Well-known member
For the HPV card, with SlotDump and SlotRom
SlotsDump could be updated to parse some of the sRsrcUnknown types if info about those types can be found.

Slot 0 has some bytes not covered by the directory - these are maybe meant for other Macs unless there's a bug in the SlotsDump parsing.

The Slot E rom dump is 128K. I think that makes sense. All the addresses in SlotsDump for Slot E have to be divided by 4 to find the offset in the ROM because slot E is using only lane 0 (1/4 lanes).
0xFF000000 - 0xFEF80000 = 0x80000 with 1/4 lanes = 0x20000 = 128K.

However, the last slot manager item is at address 0xFEF8FCB8 (rom offset 0x3f2e) and there's no way to tell what the size of that item is because 0x58 (88) is an unknown slot item id. What other info is in the ROM besides the Slot Manager stuff? There seems to be strange stuff starting at 64K which doesn't look related.
 

powermax

Well-known member
For the HPV card, with SlotDump and SlotRom
First of all, many thanks for dumping the DeclROM of your HPV card with SlotDump and SlotRom!

The first 64K of the SlotRom dump seems to match the earlier dump posted here. The second 64K seems to contain garbage.
The fact that both dumps made with SlotRom don't contain the expected Nubus DeclROM test pattern (0x5A932BC7) makes me think that SlotRom is broken on PDM.

A short peek into the source code of the SlotRom reveals the way DeclROM dump is made. It relies on SReadStruct function of the Slot Manager. Apple documentation tells us that SReadStruct can be used to obtain a copy of any data structure pointed to by an sResource entry. There is no mention that it can be used for obtaining a copy of the whole DeclROM.

Interestingly, SlotDump does provide the required format header:

Code:
FHeaderRec:
40AFFFEC
       fhDirOffset: 00 FFFF9C = 40AFFF88
          fhLength: 100008
             fhCRC: 9BDD5617
          fhROMRev: 1 = romRevision
          fhFormat: 1 = appleFormat
          fhTstPat: 5A932BC7 = testPattern
        fhReserved: 00
       fhByteLanes: 0F = byte lanes: 0,1,2,3

It seems to specify logical address though. Physical address of the PDS/VDS pseudo-slot $E is 0xFExxxxxx. It's a full 32bit address.
fhLength doesn't seem to make any sense.
ROM chip on the card clearly looks like a 128 x 8 mask ROM - it has 32 pins. That means it contains 17 address lines. 2^17=128K.
 

powermax

Well-known member
The Slot E rom dump is 128K. I think that makes sense. All the addresses in SlotsDump for Slot E have to be divided by 4 to find the offset in the ROM because slot E is using only lane 0 (1/4 lanes).
0xFF000000 - 0xFEF80000 = 0x80000 with 1/4 lanes = 0x20000 = 128K.
fhByteLanes is set to 0F - that means that all four lanes are valid. Which is strange because both ERS and SuperMario source code assume one-byte MSB DeclROMs for PDS/VDS cards.
 

powermax

Well-known member
fhByteLanes is set to 0F - that means that all four lanes are valid. Which is strange because both ERS and SuperMario source code assume one-byte MSB DeclROMs for PDS/VDS cards.
I was mistakenly looking at the info for Slot 0 (the motherboard slot) 🤷‍♂️
 

joevt

Well-known member
The fact that both dumps made with SlotRom don't contain the expected Nubus DeclROM test pattern (0x5A932BC7) makes me think that SlotRom is broken on PDM.
That is strange. Where's the FHeaderRec in the hex dump? It should be at the end of the ROM but, like you said, the last 64K seems bogus. SlotsDump is using the API to get most of the info which is why it was able to dump that.

Probably could make some changes to SlotsDump: set numToCover to 128K or more (whatever is required by the slot). Then replace WriteUncoveredBytes with WriteAllBytes to dump all the bytes even if they were covered (parsed).
 
Top