zigzagjoe
Well-known member
I present: The first time, to my knowledge, that a production model Xceed Color 30 card is running 1024x768 resolution outside of Micron's labs.
Not sure there are many folks interested in tinkering with an expensive rare card like this (with the exception of @Bolle), but in case you wish to try it, the modified ROM file is attached. Write it to a 27c256 PLCC EPROM and install it on the socket on your card.
To use this ROM, your card must read 250-0369-010 REV F at the top and the main ASIC must have "MAV" imprinted on it. As always, this is an at-your-own-risk affair, similar to overclocking. I don't think there's a real danger of blowing up your card by doing this, but you've been warned.
The added resolutions are 800x600, 832x624, 1024x768 each at up to 16 colors. A additional benefit is the Color 30 HR (aka 2.0) firmware eliminates the 512 x 341 hack on the grayscale Micron implemented originally. Internal grayscale becomes 512 x 342. Not sure this difference has been documented before.
The story:
I recently came into one of the Xceed Color boards. I'd really hoped for a Color 30HR card so I could run 800x600, even if it isn't the main use case for the card. However, it was a Color 30 card, is VGA or Portrait resolution only.
However, the Color 30 card is indistinguishable from the Color 30HR card, even down the the board revision. There is no sure-fire way to differentiate them without plugging it in. So this got me thinking. The cards appear physically identical, and the 30HR can do 800x600 - why can't my card? I got hacking. Thanks to the Micron tech docs and partial source, that made available a partial changelog and some source with comments to help guide my efforts.
Reviewing those documents and taking a deep dive into both the original 8KB Color 30 hardware and ROM, I came up with a list of challenges:
Lots of work in a disassembler followed. After getting the hint that 2 registers had been changed, I was able to compare the initialization sequences for the ASIC and modify the newer ROM to use the older ASIC's settings. This required a total of 25 changes, performed via a Powershell script to avoid fat-fingering.
I fixed the DeclROM checksum, wrote it, and guess what - it works!!! All the new resolutions work just fine along with internal grayscale. I'd hoped that the 7.5 monitors control panel would work with the newer code, but you still need to use the older 7.0 CP with the MonitorXceed 3.5 extension. I haven't tested the virtual desktop utility, but I have no reason to believe it'd have any issues as its initialization sequences were patched as well.
My card isn't Rev F/has a "GAM" chip:
Not sure there are many folks interested in tinkering with an expensive rare card like this (with the exception of @Bolle), but in case you wish to try it, the modified ROM file is attached. Write it to a 27c256 PLCC EPROM and install it on the socket on your card.
To use this ROM, your card must read 250-0369-010 REV F at the top and the main ASIC must have "MAV" imprinted on it. As always, this is an at-your-own-risk affair, similar to overclocking. I don't think there's a real danger of blowing up your card by doing this, but you've been warned.
The added resolutions are 800x600, 832x624, 1024x768 each at up to 16 colors. A additional benefit is the Color 30 HR (aka 2.0) firmware eliminates the 512 x 341 hack on the grayscale Micron implemented originally. Internal grayscale becomes 512 x 342. Not sure this difference has been documented before.
The story:
I recently came into one of the Xceed Color boards. I'd really hoped for a Color 30HR card so I could run 800x600, even if it isn't the main use case for the card. However, it was a Color 30 card, is VGA or Portrait resolution only.
However, the Color 30 card is indistinguishable from the Color 30HR card, even down the the board revision. There is no sure-fire way to differentiate them without plugging it in. So this got me thinking. The cards appear physically identical, and the 30HR can do 800x600 - why can't my card? I got hacking. Thanks to the Micron tech docs and partial source, that made available a partial changelog and some source with comments to help guide my efforts.
Reviewing those documents and taking a deep dive into both the original 8KB Color 30 hardware and ROM, I came up with a list of challenges:
- ROM change from 27c64 to 27c256
- ROM code differences between 1.3 and 2.0
- PAL differences??
- ASIC change from Mavericks ("MAV") to Gambler ("GAM")
- Faster VRAM (-8 vs -10), possibly other changed ICs
- PCB differences?
- Different ROM-resident driver code
Lots of work in a disassembler followed. After getting the hint that 2 registers had been changed, I was able to compare the initialization sequences for the ASIC and modify the newer ROM to use the older ASIC's settings. This required a total of 25 changes, performed via a Powershell script to avoid fat-fingering.
I fixed the DeclROM checksum, wrote it, and guess what - it works!!! All the new resolutions work just fine along with internal grayscale. I'd hoped that the 7.5 monitors control panel would work with the newer code, but you still need to use the older 7.0 CP with the MonitorXceed 3.5 extension. I haven't tested the virtual desktop utility, but I have no reason to believe it'd have any issues as its initialization sequences were patched as well.
My card isn't Rev F/has a "GAM" chip:
- If your main ASIC reads "GAM", but is seen as a Color 30 (non-HR). You should firmware 1.3a3 Rev 4, which was a simple tweak for Gambler ASIC support. I think you can simply write the commonly available 369C.ROM (Color 30HR 2.0) ROM to a 27C256 chip without changes. I haven't tested/can't test this.
- I suspect the Rev E board could be made to work, but it may need some hacking to match the Rev F electrically. There is a schematic in this PDF that you would need to work through and verify your card against, I suspect the eeprom lines are of particular interest.