Beige G3 RAM and PSU questions:

So, auto-eject MFM drives exist, but sounds like it could be an optional feature here.
yup, sparcstation floppy drives have auto-eject.

Right, so the Mac is looking for a Disk In Place signal - you can see that on the Gossamer schematics labelled MFDC_DIP_I. But regular PC drives do not output anything on pin 6.
hmm why not try a gotek floppy emulator? those are configurable depending on which firmware you have installed, and should support those two signals.

other than that you'd have to find an mfm floppy drive that has the complete shugart pinout... I think E-mu Emax samplers had this sort.
 
I grounded the Disk In Place and Media Density Select pins so that the Mac thinks theres always a high density disk inserted, but this didn't change anything.

Interestingly those pins (4+6) do go back to the controller IC on the floppy drive. Pin 4 is connected through a solder jumper labelled DNS, and is open by default.

TattleTech reports no drive, so it may be as @joevt says that the Heathrow is still looking for a GCR (Mac) drive and a register needs to be changed in OF.
 
I suppose we could modify the feature control bits and the device tree in Open Firmware. Connect via serial port, boot into Open Firmware with input-device and output-device set to ttya:57600, type dl to begin download, paste the code below (the text is not echoed which makes it faster than a normal paste), then press Control-D to execute the pasted code.

I pasted in your code successfully and it does seem to successfully modify the device tree, but the end result is that the floppy drive still doesn't work.

Here's my output:

Code:
Open Firmware, 2.4
To continue booting the MacOS type:
BYE<return>
To continue booting from the default boot device type:
BOOT<return>
For Open Firmware serial I/O type:
TTYA IO<return>
 ok
0 > dev / ls

Children of the node:
FF82EA78: /                             [AAPL,PowerMac G3 MacRISC]

Node Adr    Node Name                     Compatible

FF82FEE0: /cpus@0
FF82FFF8:   /PowerPC,60?@0
FF8308F0: /chosen@0
FF830A20: /memory@0
FF830B68: /openprom@0
FF830C28: /AAPL,ROM@FFC00000           [AAPL,ROM]
FF830E70: /options@0
FF8316B8: /aliases@0
FF8319F8: /packages@0
FF831A80:   /deblocker@0,0
FF8322F8:   /disk-label@0,0
FF832DE8:   /obp-tftp@0,0
FF835810:   /mac-files@0,0
FF837B68:   /mac-parts@0,0
FF838D50:   /aix-boot@0,0
More [<space>,<cr>,q] ?


FF839258:   /fat-files@0,0
FF83AC68:   /iso-9660-files@0,0
FF83B778:   /xcoff-loader@0,0
FF83C1B0:   /terminal-emulator@0,0
FF83C248: /pci@80000000                [grackle]
FF83D748:   /mac-io@10                 [heathrow]
FF83EAA0:     /mesh@10000              [mesh]
FF840B30:       /sd@0,0                [sd]
FF841880:       /st@0,0                [st]
FF8426E8:     /bmac@11000              [bmac]
FF844E28:     /escc@13000              [escc CHRP,es0]
FF844FC0:       /ch-a@13020            [ch-a CHRP,es2]
FF8456D0:       /ch-b@13000            [ch-b CHRP,es3]
FF845DE0:     /davbus@14000
FF845EC8:       /sound@0,0             [awacs screamer]
FF845FB8:     /swim3@15000             [swim3]
FF8476C0:     /nvram@60000             [nvram]
FF8477B8:     /ide@20000               [heathrow-ata]
FF849988:       /disk@0,0              [ata-disk atapi-disk]
FF84BC20:       /disk@0,0              [ata-disk atapi-disk]
FF84DF08:     /ide@21000               [heathrow-ata]
FF8500D8:       /disk@0,0              [ata-disk atapi-disk]
FF852370:       /disk@0,0              [ata-disk atapi-disk]
FF854658:     /via-cuda@16000          [via-cuda]
FF8557D8:       /adb@0,0               [adb]
FF8558F0:         /keyboard@0,0
FF856310:         /mouse@1,0
FF8565D0:       /pram@0,0
FF856680:       /rtc@0,0               [rtc]
FF856BB0:       /power-mgt@0,0         [power-mgt]
FF857A38:   /ATY,mach64_3DUPro@12
FF85C8C0:   /ATY,Rage6p@D
FF87F708:   /Seri-Tek1S2@F             [Sil3112A]
FF8851E0:     /sd@0,0
FF856F10: /perch@0                     [Wings]
 ok
0 > dl
Ready for download.  Send file then type ^D
 ok
0 > unselect-dev  ok
0 >   ok
0 > : !unprotected ( val addr -- ) ! ;  ok
0 > : parent >dn.parent @ ;  ok
0 > : delete-node  ok
0 ]  >r  ok
0 ]  r@  ok
0 ]  >dn.peer-nxt  ok
0 ]  @  ok
0 ]  r@  ok
0 ]  =  ok
0 ]  if  ok
1 ]   0  ok
1 ]   r@  ok
1 ]   parent  ok
1 ]   >dn.child  ok
1 ]   !unprotected  ok
1 ]  else  ok
1 ]   r@  ok
1 ]   parent  ok
1 ]   >dn.child  ok
1 ]   dup  ok
1 ]   @  ok
1 ]   r@  ok
1 ]   =  ok
1 ]   if  ok
2 ]    r@  ok
2 ]    >dn.peer-nxt  ok
2 ]    @  ok
2 ]    swap  ok
2 ]    !unprotected  ok
2 ]   else  ok
2 ]    drop  ok
2 ]   then  ok
1 ]   r@  ok
1 ]   >dn.peer-nxt  ok
1 ]   @  ok
1 ]   r@  ok
1 ]   >dn.peer-bak  ok
1 ]   @  ok
1 ]   >dn.peer-nxt  ok
1 ]   !unprotected  ok
1 ]   r@  ok
1 ]   >dn.peer-bak  ok
1 ]   @  ok
1 ]   r@  ok
1 ]   >dn.peer-nxt  ok
1 ]   @  ok
1 ]   >dn.peer-bak  ok
1 ]   !unprotected  ok
1 ]  then  ok
0 ]  r>  ok
0 ]  drop  ok
0 ]  ;  ok
0 >   ok
0 > " /pci/mac-io/swim3" find-package if delete-node then  ok
0 >   ok
0 > dev /aliases  ok
0 > " fd" delete-property  ok
0 > " /pci/mac-io/fdc" encode-string " fd" property  ok
0 >   ok
0 > dev /pci/mac-io  ok
0 > new-device  ok
0 > " fdc" device-name  ok
0 > " block" device-type  ok
0 > " floppy" aapl,connector  ok
0 > " fdc" compatible  ok
0 > 15000 h#100 encode-reg 8100 h#100 encode-reg encode+ "reg" property  ok
0 > 13 1 2 aapl,interrupts  ok
0 > -1 0d byte-load-file  ok
0 > finish-device  ok
0 > unselect-dev  ok
0 >   ok
0 > dl
Ready for download.  Send file then type ^D
 ok
0 > " fd" select-dev wi 9
wtw1cb 0
wtw1cb 0
wtw1cb 0
wtw1cb 0
wtwcb 0
wtwcb 0
wtwcb 0
wtw1cb 0
wtwcb 0
wtwcb 0
wtw1cb 0
wtwcb 0
wtwcb 0

select-dev: Cannot OPEN device fd
 ok
0 > dir fd wi 9
wtw1cb 0
wtw1cb 0
wtw1cb 0
wtw1cb 0
wtwcb 0
wtwcb 0
wtwcb 0
wtw1cb 0
wtwcb 0
wtwcb 0
wtw1cb 0
wtwcb 0
wtwcb 0
 unable to open the DIR device
 ok
0 > dev fd  ok
0 > hrfeaturecontrol@  8 u.r 09B6FFFB ok
0 > F3000038 rl@-flip 8 u.r 09B6FFFB ok
0 >

And here's the device tree after pasting your code:

Code:
Children of the node:
FF82EA78: /                             [AAPL,PowerMac G3 MacRISC]

Node Adr    Node Name                     Compatible

FF82FEE0: /cpus@0
FF82FFF8:   /PowerPC,60?@0
FF8308F0: /chosen@0
FF830A20: /memory@0
FF830B68: /openprom@0
FF830C28: /AAPL,ROM@FFC00000           [AAPL,ROM]
FF830E70: /options@0
FF8316B8: /aliases@0
FF8319F8: /packages@0
FF831A80:   /deblocker@0,0
FF8322F8:   /disk-label@0,0
FF832DE8:   /obp-tftp@0,0
FF835810:   /mac-files@0,0
FF837B68:   /mac-parts@0,0
FF838D50:   /aix-boot@0,0
FF839258:   /fat-files@0,0
FF83AC68:   /iso-9660-files@0,0
FF83B778:   /xcoff-loader@0,0
FF83C1B0:   /terminal-emulator@0,0
FF83C248: /pci@80000000                [grackle]
FF83D748:   /mac-io@10                 [heathrow]
FF83EAA0:     /mesh@10000              [mesh]
FF840B30:       /sd@0,0                [sd]
FF841880:       /st@0,0                [st]
FF8426E8:     /bmac@11000              [bmac]
FF844E28:     /escc@13000              [escc CHRP,es0]
FF844FC0:       /ch-a@13020            [ch-a CHRP,es2]
FF8456D0:       /ch-b@13000            [ch-b CHRP,es3]
FF845DE0:     /davbus@14000
FF845EC8:       /sound@0,0             [awacs screamer]
FF8476C0:     /nvram@60000             [nvram]
FF8477B8:     /ide@20000               [heathrow-ata]
FF849988:       /disk@0,0              [ata-disk atapi-disk]
FF84BC20:       /disk@0,0              [ata-disk atapi-disk]
FF84DF08:     /ide@21000               [heathrow-ata]
FF8500D8:       /disk@0,0              [ata-disk atapi-disk]
FF852370:       /disk@0,0              [ata-disk atapi-disk]
FF854658:     /via-cuda@16000          [via-cuda]
FF8557D8:       /adb@0,0               [adb]
FF8558F0:         /keyboard@0,0
FF856310:         /mouse@1,0
FF8565D0:       /pram@0,0
FF856680:       /rtc@0,0               [rtc]
FF856BB0:       /power-mgt@0,0         [power-mgt]
FF8ABE20:     /fdc@15000               [pex,fdc]
FF857A38:   /ATY,mach64_3DUPro@12
FF85C8C0:   /ATY,Rage6p@D
FF87F708:   /Seri-Tek1S2@F             [Sil3112A]
FF8851E0:     /sd@0,0
FF856F10: /perch@0                     [Wings]
 ok
0 >
 
I pasted in your code successfully and it does seem to successfully modify the device tree, but the end result is that the floppy drive still doesn't work.

Here's my output:

Code:
0 > dl
Ready for download.  Send file then type ^D
 ok
0 > unselect-dev  ok
0 >   ok
...
Looks like you pasted the code twice after the dl command? You should not see the code being pasted during dl. Maybe I should have added a message to the end of the pasted code to immediately show that the dl command does something. Add this to the end of the pasted code. Then, when you press Control-D to end the download, it should show done.
Code:
." done"

We could be missing a feature control bit MFDC_CELL_EN. This should maybe clear and set the specific bits required:
Code:
F3000038 rl@-flip 0fff7ffff and 0c000010 or F3000038 rl!-flip
 
The Heathrow ERS and Paddington ERS and Gossamer SW ERS and Gossamer HW ERS documents have more info about the feature control bits and the floppy signals. I think these can be found in the DingusPPC Discord's Documents channel.
Open in Preview.app and search for floppy|mfdc|mfm|gcr
 
I'm thinkin' we need to come up with a new title for what my little info request has become . . . a friggin' 4 page monster.:eek:
So much cool stuff coming outta the woodwork! Way over my pay grade, but . . .

I've got a SparcStation 2 with FDD on board. If anybody in the U.S. is working this MFM floppy on BG3 insanity, just lemme know!
 
Looks like you pasted the code twice after the dl command? You should not see the code being pasted during dl. Maybe I should have added a message to the end of the pasted code to immediately show that the dl command does something. Add this to the end of the pasted code. Then, when you press Control-D to end the download, it should show done.
Code:
." done"

Yeah I got a bit confused about the pasting process without any feedback. I tried again just now and I think I managed better.

Code:
Open Firmware, 2.4
To continue booting the MacOS type:
BYE<return>
To continue booting from the default boot device type:
BOOT<return>
For Open Firmware serial I/O type:
TTYA IO<return>
 ok
0 > dl
Ready for download.  Send file then type ^D
 ok
0 > dev / ls

Children of the node:
FF82EA78: /                             [AAPL,PowerMac G3 MacRISC]

Node Adr    Node Name                     Compatible

FF82FEE0: /cpus@0
FF82FFF8:   /PowerPC,60?@0
FF8308F0: /chosen@0
FF830A20: /memory@0
FF830B68: /openprom@0
FF830C28: /AAPL,ROM@FFC00000           [AAPL,ROM]
FF830E70: /options@0
FF8316B8: /aliases@0
FF8319F8: /packages@0
FF831A80:   /deblocker@0,0
FF8322F8:   /disk-label@0,0
FF832DE8:   /obp-tftp@0,0
FF835810:   /mac-files@0,0
FF837B68:   /mac-parts@0,0
FF838D50:   /aix-boot@0,0
FF839258:   /fat-files@0,0
FF83AC68:   /iso-9660-files@0,0
FF83B778:   /xcoff-loader@0,0
FF83C1B0:   /terminal-emulator@0,0
FF83C248: /pci@80000000                [grackle]
FF83D748:   /mac-io@10                 [heathrow]
FF83EAA0:     /mesh@10000              [mesh]
FF840B30:       /sd@0,0                [sd]
FF841880:       /st@0,0                [st]
FF8426E8:     /bmac@11000              [bmac]
FF844E28:     /escc@13000              [escc CHRP,es0]
FF844FC0:       /ch-a@13020            [ch-a CHRP,es2]
0 >
0 > " fd" select-dev wi 9
0 > dev / ls
0 > dl
0 > dev / ls
0 > " fd" select-dev wi 9
0 > F3000038 rl@-flip 8 u.r
0 >
FF8456D0:       /ch-b@13000            [ch-b CHRP,es3]
FF845DE0:     /davbus@14000
FF845EC8:       /sound@0,0             [awacs screamer]
FF8476C0:     /nvram@60000             [nvram]
FF8477B8:     /ide@20000               [heathrow-ata]
FF849988:       /disk@0,0              [ata-disk atapi-disk]
FF84BC20:       /disk@0,0              [ata-disk atapi-disk]
FF84DF08:     /ide@21000               [heathrow-ata]
FF8500D8:       /disk@0,0              [ata-disk atapi-disk]
FF852370:       /disk@0,0              [ata-disk atapi-disk]
FF854658:     /via-cuda@16000          [via-cuda]
FF8557D8:       /adb@0,0               [adb]
FF8558F0:         /keyboard@0,0
FF856310:         /mouse@1,0
FF8565D0:       /pram@0,0
FF856680:       /rtc@0,0               [rtc]
FF856BB0:       /power-mgt@0,0         [power-mgt]
FF8ABE20:     /fdc@15000               [pex,fdc]
FF857A38:   /ATY,mach64_3DUPro@12
FF85C8C0:   /ATY,Rage6p@D
FF87F708:   /Seri-Tek1S2@F             [Sil3112A]
FF8851E0:     /sd@0,0
FF856F10: /perch@0                     [Wings]
 ok
0 > " fd" select-dev wi 9 wi 9
wtw1cb 0
wtw1cb 0
wtw1cb 0
wtw1cb 0
wtwcb 0
wtwcb 0
wtwcb 0
wtw1cb 0
wtwcb 0
wtwcb 0
wtw1cb 0
wtwcb 0
wtwcb 0

select-dev: Cannot OPEN device fd
 ok
0 > F3000038 rl@-flip 8 u.r 09B6FFFB ok
0 > F3000038 rl@-flip 0fff7ffff and 0c000010 or F3000038 rl!-flip  ok
0 > dev / ls

Children of the node:
FF82EA78: /                             [AAPL,PowerMac G3 MacRISC]

Node Adr    Node Name                     Compatible

FF82FEE0: /cpus@0
FF82FFF8:   /PowerPC,60?@0
FF8308F0: /chosen@0
FF830A20: /memory@0
FF830B68: /openprom@0
FF830C28: /AAPL,ROM@FFC00000           [AAPL,ROM]
FF830E70: /options@0
FF8316B8: /aliases@0
FF8319F8: /packages@0
FF831A80:   /deblocker@0,0
FF8322F8:   /disk-label@0,0
FF832DE8:   /obp-tftp@0,0
FF835810:   /mac-files@0,0
FF837B68:   /mac-parts@0,0
FF838D50:   /aix-boot@0,0
FF839258:   /fat-files@0,0
FF83AC68:   /iso-9660-files@0,0
FF83B778:   /xcoff-loader@0,0
FF83C1B0:   /terminal-emulator@0,0
FF83C248: /pci@80000000                [grackle]
FF83D748:   /mac-io@10                 [heathrow]
FF83EAA0:     /mesh@10000              [mesh]
FF840B30:       /sd@0,0                [sd]
FF841880:       /st@0,0                [st]
FF8426E8:     /bmac@11000              [bmac]
FF844E28:     /escc@13000              [escc CHRP,es0]
FF844FC0:       /ch-a@13020            [ch-a CHRP,es2]
FF8456D0:       /ch-b@13000            [ch-b CHRP,es3]
FF845DE0:     /davbus@14000
FF845EC8:       /sound@0,0             [awacs screamer]
FF8476C0:     /nvram@60000             [nvram]
FF8477B8:     /ide@20000               [heathrow-ata]
FF849988:       /disk@0,0              [ata-disk atapi-disk]
FF84BC20:       /disk@0,0              [ata-disk atapi-disk]
FF84DF08:     /ide@21000               [heathrow-ata]
FF8500D8:       /disk@0,0              [ata-disk atapi-disk]
FF852370:       /disk@0,0              [ata-disk atapi-disk]
FF854658:     /via-cuda@16000          [via-cuda]
FF8557D8:       /adb@0,0               [adb]
FF8558F0:         /keyboard@0,0
FF856310:         /mouse@1,0
FF8565D0:       /pram@0,0
FF856680:       /rtc@0,0               [rtc]
FF856BB0:       /power-mgt@0,0         [power-mgt]
FF8ABE20:     /fdc@15000               [pex,fdc]
FF857A38:   /ATY,mach64_3DUPro@12
FF85C8C0:   /ATY,Rage6p@D
FF87F708:   /Seri-Tek1S2@F             [Sil3112A]
FF8851E0:     /sd@0,0
FF856F10: /perch@0                     [Wings]
 ok
0 > bye

We could be missing a feature control bit MFDC_CELL_EN. This should maybe clear and set the specific bits required:
Code:
F3000038 rl@-flip 0fff7ffff and 0c000010 or F3000038 rl!-flip

I added this in (see above).

No change.

The Heathrow ERS and Paddington ERS and Gossamer SW ERS and Gossamer HW ERS documents have more info about the feature control bits and the floppy signals. I think these can be found in the DingusPPC Discord's Documents channel.
Open in Preview.app and search for floppy|mfdc|mfm|gcr

Will look at these next. Thanks
 
FF844FC0: /ch-a@13020 [ch-a CHRP,es2] 0 > 0 > " fd" select-dev wi 9 0 > dev / ls 0 > dl 0 > dev / ls 0 > " fd" select-dev wi 9 0 > F3000038 rl@-flip 8 u.r 0 > FF8456D0: /ch-b@13000 [ch-b CHRP,es3]
Looking back at this bit of my copied code, it looks like I typed in a bunch of commands in the middle of a device listing. I could have sworn that I never did this - instead, it asked me to press spacebar to continue showing the listing. I'll need to double check but I'm in a bit of a rush at the moment as I get ready for a weekend break.
 
Looking back at this bit of my copied code, it looks like I typed in a bunch of commands in the middle of a device listing. I could have sworn that I never did this - instead, it asked me to press spacebar to continue showing the listing. I'll need to double check but I'm in a bit of a rush at the moment as I get ready for a weekend break.
There might be something strange about your terminal app's scroll back buffer or terminal emulation. I use Serial.app on macOS with unlimited scroll back buffer (or max scroll back buffer) and Xterm emulation. I think VT100 should also work and might be more appropriate.

When you press space at the More [<space>,<cr>,q] ? prompt, the terminal should erase that prompt and continue output. When you copy the result, the output should appear seamless and the More prompt should not exist in the output.

The terminal emulation also handles backspace for deleting characters to the left, left and right arrow for moving the cursor, and character insertion.

Yeah I got a bit confused about the pasting process without any feedback. I tried again just now and I think I managed better.

Code:
0 > dl
Ready for download.  Send file then type ^D
 ok
You didn't add the ." done" line to the end of the pasted text.

0 > " fd" select-dev wi 9 wi 9
wtw1cb 0
wtw1cb 0
wtw1cb 0
wtw1cb 0
wtwcb 0
wtwcb 0
wtwcb 0
wtw1cb 0
wtwcb 0
wtwcb 0
wtw1cb 0
wtwcb 0
wtwcb 0

select-dev: Cannot OPEN device fd
ok
I get similar results in DingusPPC but DingusPPC only emulates swim3. Should add fdc support to DingusPPC to see if the driver behaves correctly.

Code:
0 > F3000038 rl@-flip 8 u.r 09B6FFFB ok
0 > F3000038 rl@-flip 0fff7ffff and 0c000010 or F3000038 rl!-flip  ok

I added this in (see above).

No change.
Should show output of F3000038 rl@-flip 8 u.r after changing the feature control bits. Then another round of " fd" select-dev and dir fd

You have a HFS floppy inserted? No indicator lights or noises happening?
 
You're meant to put PC66 (or faster) SDRAM in a beige G3, not EDO. Also, 64MB memory modules wouldn't max out a Beige G3 - they take up to 3x 256 SDRAM modules (not all work - you need to avoid ones that use "high density" chips), so a max of 768MB.


The boards are the same between desktop, tower and AIOs? There isn't a memory ceiling difference. The only differences are which revision board it is. Later ones had newer ROMs, better graphics chips and possibly better IDE.
Actually, you can use EDO RAM with a G3 Beige. The Grackle suppoirt SDRAM and EDO.


Many northbridge from this era can use EDO or SDRAM, like Intel 440BX (i have tried too with an Asus P2B motherboard)
 
Actually, you can use EDO RAM with a G3 Beige. The Grackle suppoirt SDRAM and EDO.


Many northbridge from this era can use EDO or SDRAM, like Intel 440BX (i have tried too with an Asus P2B motherboard)
Yup, I've read that is the case, but didn't want to confuse things. While the chip supports it, Apple only ever told people to put SDRAM in them, and in the context of this thread, talking about what is technically supported by the chip, but we have no idea if works, is slower and hard to find cheap in high capacities... I was trying to helpfully answer "did I buy these for my G3?"

Edit - ah, nice, someone actually tried it. I wasn't sure if the ROM would be happy about it, or if the keys were compatible. But yes, more expensive for slower, smaller RAM.
 
Last edited:
Actually, you can use EDO RAM with a G3 Beige. The Grackle suppoirt SDRAM and EDO.
I know the HWInit code in the Beige G3 ROM does check the SPD for RAM types EDO or SDRAM and has code for sizing based on that RAM type.

The memory test works only up to 768 MiB installed. If you could add more (using two 512 MiB DIMM or one 1024 MiB DIMM) then it will crash. If the memory test is disabled (by setting NVRAM or patching the ROM), then it won't crash. This works in the DingusPPC emulator.

A 256 MiB SDRAM DIMM has 12 rows, 10 columns, 2 physical banks (bytes 3,4,5 of the SPD respectively). The theoretical 512 MiB or 1024 MiB SDRAM DIMMs would have 12 rows, 2 banks. The 512 MiB SDRAM DIMM would have 11 columns and the 1024 MiB DIMM would have 12 columns.

I don't think grackle can actually use more than 24 address bits per physical bank?

In the case of EDO, that's 13 rows and 11 columns, or 12 rows and 12 columns.
2^(13+11)*8 bytes per access = 2^(12+12)*8 = 128 MB per physical bank.

In the case of SDRAM, a chip can have 2 or 4 internal banks. HWInit doesn't use SPD to get internal banks. It assume one internal bank for row address bits ≤ 10 (maybe these don't exist in reality?). 2 internal banks for 11 and 13 row address bits. 4 internal banks for 12 row address bits. With 13 or 12 row address bits, the max columns is 10 (or at least the documentation doesn't show an example with more than 10 column bits for SDRAM).
2^(13 + 10)*2 internal banks * 8 bytes per access = 2^(12 + 10)*4*8 = 128 MB per physical bank.

It seems to me that grackle could support two additional column bits (columns uses the same pins as rows) for SDRAM. I don't know why it wouldn't. I mean it can use 12 columns for EDO so why not 12 columns for SDRAM?
 
Back
Top