VOGONS


First post, by bakemono

User metadata
Rank Oldbie
Rank
Oldbie

This is one of those weird things that I can't help be curious about...

MCGA supports CGA graphic modes (and presumably they get scan-doubled to VGA frequency). It has text modes with 8x16 character (can it also do 8x8?). And it can do two VGA graphic modes: 640x480x1bpp, and 320x200x8bpp (mode 13h).

That's kind of a wild combination of modes there, so it seems likely that it must have its fair share of configuration registers at the hardware level, similar to what VGA has. On VGA, this flexibility gave rise to mode X and various non-standard resolutions/scanrates. So what about MCGA?

On VGA 640x480x4bpp the memory is divided into four planes, and this resolution uses most of each plane. BTW, I recall reading that EGA cards with 64KB could do 640x350 restricted to two planes. MCGA has 64KB, so does that mean it could also do two planes? Like 640x400x2bpp? Or is it limited to one? Maybe scan-doubling could be switched off in CGA mode and produce 320x400x2bpp?

Reply 1 of 5, by retardware

User metadata
Rank Oldbie
Rank
Oldbie

MDA and CGA were controlled by the 6845, so I suppose this applies to MCGA too.
So it is just a matter to set up the 6845 register configuration to get what you want (provided the monitor can take it).
Beware that the original IBM monochrome monitor gets killed very easily if you apply wrong horizontal clocks.

Reply 2 of 5, by beastlike

User metadata
Rank Member
Rank
Member

Try to find a copy of the book Zen of Graphics Programming by Mike Abrash, he has some pages on Mode X which I used back in the day to get some exotic resolutions. The closest I can find just looking quick is 640x350, but I think it's 1bpp 😒

also try:
http://nerdlypleasures.blogspot.com/2014/09/o … tions-when.html

is mode 12h not acceptable? 640x480x16?

good luck! just looking at the cover takes me right back to when I was 16 listening to Pretty Hate Machine and cranking out assembly code all hours of the night 😀

Reply 3 of 5, by Jo22

User metadata
Rank l33t++
Rank
l33t++

I'm speaking under correction, but I believe that MCGA was somewhat restricted in several ways. No EGA modes, for example.
Some VGA games in 320x200 refused to work on MCGA also. I wonder if MCGA's palette was "set in stone" or as flexible as that of VGA.

Also an interesting read - https://trixter.oldskool.org/2017/10/01/the-f … -on-the-ibm-pc/

By the way, some tools like NSSI have the ability to search for undocumented screen modes.
Not sure if these are useful in this case, but it shouldn't hurt trying them on a real MCGA machine.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 4 of 5, by root42

User metadata
Rank l33t
Rank
l33t
Jo22 wrote:
I'm speaking under correction, but I believe that MCGA was somewhat restricted in several ways. No EGA modes, for example. Some […]
Show full quote

I'm speaking under correction, but I believe that MCGA was somewhat restricted in several ways. No EGA modes, for example.
Some VGA games in 320x200 refused to work on MCGA also. I wonder if MCGA's palette was "set in stone" or as flexible as that of VGA.

Also an interesting read - https://trixter.oldskool.org/2017/10/01/the-f … -on-the-ibm-pc/

By the way, some tools like NSSI have the ability to search for undocumented screen modes.
Not sure if these are useful in this case, but it shouldn't hurt trying them on a real MCGA machine.

Awesome read about the MCGA games! I think the palette registers were already there for the MCGA.

Also previously mentioned 640x480 mode would be monochrome on the MCGA due to it only having 64KiB framebuffer.

YouTube and Bonus
80486DX@33 MHz, 16 MiB RAM, Tseng ET4000 1 MiB, SnarkBarker & GUSar Lite, PC MIDI Card+X2+SC55+MT32, OSSC

Reply 5 of 5, by bakemono

User metadata
Rank Oldbie
Rank
Oldbie

After more searching I found a discussion thread on github https://github.com/joncampbell123/dosbox-x/issues/777

It looks like it is closer to CGA with some extra capabilities hardwired in the chip, while missing the many options/flexibility of VGA. I'm still wondering what might be possible along the lines of the CGA "160x100" hacked character mode (with different font?). Or messing with other registers while the bits are set for 8bpp or 640x480 mode (or both at the same time?). Too bad I don't have a real MCGA system to experiment on. There is a link in the thread to a digital copy of a book covering the video hardware which I haven't looked at yet.

again another retro game on itch: https://90soft90.itch.io/shmup-salad