VOGONS


Best CGA & Hercules monochrome games

Topic actions

Reply 320 of 329, by Jo22

User metadata
Rank l33t++
Rank
l33t++
BitWrangler wrote on 2024-07-16, 17:44:
rmay635703 wrote on 2024-04-16, 21:49:
The frustrating aspect of CGA is that it had a leftover 384bytes of ram that was used for very little […]
Show full quote
Jo22 wrote on 2024-02-20, 11:37:
Thanks, I admit I have a bit of a love/hate-relationship with CGA. One one hand, I love to tinker with it, while simultaneously […]
Show full quote

Thanks, I admit I have a bit of a love/hate-relationship with CGA.
One one hand, I love to tinker with it, while simultaneously wished there was "more".
There were missed opportunities so to say.

Like a 4 colour mode for 640x200 resolution or a 640x400 mono mode.
Both would have helped at increasing the level of detail in games back in the day.

Ok, strictly speaking, such CGA modes do exist!
..just not for official IBM CGA. 🙁

640x200 4c is being part of Plantronics and Tandy/PCJr, which are "Super CGAs" of some sort.
Plantronics has full 32KB of RAM, for example.
The full RAM expansion that IBM CGA should have had from very start.

I'm saying this because IBM CGA uses 16KB of RAM, but has an 32KB wide framebuffer slot.
Ie, it uses 16KB for graphics data, but it's being doubled (the cause was incomplete address decoding, I assume. A hardware bug).
Some games/applications may even depend on that mirror copy, not sure.

The frustrating aspect of CGA is that it had a leftover 384bytes of ram that was used for very little

At a minimum IBM could have had all 4 colors palletized into the 16 available allowing for pallette rotation and other tricks but they instead used a strange selection of very limited fixed pallets with only the background selectable.

384 bytes (which conviently align pretty well to rows) is enough to have a full 192 pallet changes per screen (without extra cpu overhead)

Even with 4 colors out of 16
if 192 of the 200 lines vertical resolution could be palletized independently would allow for some amazing effects despite the per line limitation.

Lots of possibilities if ibm would have been motivated to make their hardware as flexible as possible within the limitations of the time.

Maybe 50 cents of added cost would have made CGA much more user and programmer friendly CGA had more logic than it needed, streamlined for functionality it could have been much more interesting

I think there was a lot of first rodeo with the video chip and get it out the door before New York cancels it stuff going on. They did try a lot harder with EGA

Hm. Since we can't change the CGA logic postmortem, maybe the extra memory can be used to hold header information, at least?

I know this isn't necessary, because a dump of CGA video memory on disk isn't being limited to same filesize as physical bideo memory.
But it would be acceptable "filling material", maybe.

Provided that it doesn't cause any visual much distraction on screen.
Because, having a clean 16 or 32 KB memory dump including all header information might be nicer than dealing with odd numbers.

Or maybe we can change CGA circuit a bit, postmortem?
I mean, if the vintage computing community comes to a consensus, maybe a fix for IBM CGA board could be designed after all those years? A CGA 2.0?

To get away with certain design choices that caused issues or unnecessary limitations?
640x200 4c mode? More palettes?
It should be something that's well documented and applicable to CGA clones, too.

Some sort of revised CGA specification, which in 99% of applications doesn't break compatibility.
It would need time, I suppose. It shouldn't be rushed, considering the historical relevance.

These are just some thoughts, of course.

"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 321 of 329, by BitWrangler

User metadata
Rank l33t++
Rank
l33t++

Let's just copy Tandy's, Amstrad's or Plantronics' homework.

Unicorn herding operations are proceeding, but all the totes of hens teeth and barrels of rocking horse poop give them plenty of hiding spots.

Reply 322 of 329, by Jo22

User metadata
Rank l33t++
Rank
l33t++
BitWrangler wrote on 2024-07-16, 19:09:

Let's just copy Tandy's, Amstrad's or Plantronics' homework.

Fair enough. Plantronics is closest to IBM CGA, I think.
Also in terms of release date. It was been released shortly after CGA.

Plantronics had offered an upgrade to full 32 KB of video RAM, for example.
IBM CGA had 16 KB physical memory, but occupied 32KB. So the 32KB frame buffer had been there right from the start.
It's as if 32KB had been period correct.

Tandy 1000 and Schneider PC1512 had different memory layouts and no real Motorola CRTC, unlike Plantronics Color Plus.

That being said, there are differences between those two.
Just doing a Plantronics clone isn't the goal, maybe.
It's rather about fixing CGA to unleash its existing potential that had been sealed away in the past 40 years.

"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 323 of 329, by jasa1063

User metadata
Rank Oldbie
Rank
Oldbie

I fondly remember playing Broderbund's Shufflepuck Cafe on Hercules graphics back in the 80s.

Attachments

  • Shufflepuck_cafe.webp
    Filename
    Shufflepuck_cafe.webp
    File size
    175.25 KiB
    Views
    407 views
    File comment
    Shufflepuck Cafe
    File license
    Fair use/fair dealing exception

Reply 324 of 329, by OldCat

User metadata
Rank Member
Rank
Member
Benedikt wrote on 2024-07-08, 12:34:

Have you published the source code somewhere or (if not) have you considered doing so?
Is it a purely interpreting emulator or does it incorporate dynamic binary translation, too, where applicable?

No, it's a misunderstanding - I only played GB emulator on one of my Toshiba luggables with plasma screen. I was sure it was T3100 with CGA screen, but I may have misremembered and it was T5100 with EGA. See bellow.

DEAT wrote on 2024-07-16, 03:03:

This looks like no$gmb, but I have not come across any version of no$gmb that has Hercules support. Interesting!

It was no$gmb, thanks! Couldn't rememeber for the life of me the name. But as I wrote above - definitely not Hercules, I thought CGA, but it may actually have been T5100 with EGA graphics card and four shades of orange plasma screen. It would make sense then: four shades of orange mapping well to four shades of gray/green on Gameboy. So probably that.

Apologies for the confusion, everyone.

Reply 326 of 329, by mkarcher

User metadata
Rank l33t
Rank
l33t
OldCat wrote on 2024-07-17, 10:42:

No, it's a misunderstanding - I only played GB emulator on one of my Toshiba luggables with plasma screen. I was sure it was T3100 with CGA screen, but I may have misremembered and it was T5100 with EGA. See bellow.

I looked at your photo in detail. I seem to be able to identify the pixel grid. It looks like the 160*144 gameboy image is placed in a 320*200 frame, and displayed on a 640*400 plasma panel. This perfectly fits the specification of the T5100 display. The T3100 only had two shades. I wonder how they displayed EGA 640*350 on that panel. Letterboxing EGA on a display with square pixels will result in an extremely wide image

Reply 327 of 329, by DEAT

User metadata
Rank Newbie
Rank
Newbie
OldCat wrote on 2024-07-17, 10:42:

It was no$gmb, thanks! Couldn't rememeber for the life of me the name. But as I wrote above - definitely not Hercules, I thought CGA, but it may actually have been T5100 with EGA graphics card and four shades of orange plasma screen. It would make sense then: four shades of orange mapping well to four shades of gray/green on Gameboy. So probably that.

Apologies for the confusion, everyone.

I decided to check this further since nocash never supported EGA in his emulators, and it turns out I was wrong: no$gmb does support CGA and Hercules! For some reason it's not documented anywhere and there's no settings to change it in the last version (v2.5), unlike his other emulators which do have CGA/Herc support.

Somehow I didn't notice on the history page that v1.3 had added CGA and Hercules support - I decided to dig through every DOS version listed and the F1 help page for every version from v1.3 to v2.3 lists CGA and Hercules support, though it turns out every version from v1.3 will auto-detect the video mode - when you run no$gmb /? on v1.3 and v1.4 specifically it also mentions that you can use the /c parameter to force CGA support, and /h to force Hercules support. Turns out those parameters do work on v2.5 as well!

This is definitely a bad case of misinformation from my end - apologies for that. I've updated my previous post with additions.

Reply 328 of 329, by OldCat

User metadata
Rank Member
Rank
Member

Okay, now that you mention it, something unclogged in my memory. So I used to play CGA games on T5100 with EGA, because it had four shades of orange intensity on the screen (as opposed to only two on T3100's screen). Similarly, I played EGA games on my T3200SX with VGA screen, but with sixteen shades of orange, so that there is one-to-one mapping instead of forced dithering. Someone could cal that weird, but what can I say, I really like these plasma screens. There are weirder fetishes out there.

So coming back to no$gmb - I remembered that I played it on T5100 in CGA mode so that four shades of green from GB map one-to-one to four colours of CGA that will then map one-to-one on four shades of orange on T5100 plasma screen. And that is what my screenshot actually shows. QED. Thank you for prodding my memory!

Reply 329 of 329, by OldCat

User metadata
Rank Member
Rank
Member
mkarcher wrote on 2024-07-17, 19:55:

I looked at your photo in detail. I seem to be able to identify the pixel grid. It looks like the 160*144 gameboy image is placed in a 320*200 frame, and displayed on a 640*400 plasma panel. This perfectly fits the specification of the T5100 display. The T3100 only had two shades. I wonder how they displayed EGA 640*350 on that panel. Letterboxing EGA on a display with square pixels will result in an extremely wide image

Hey, thanks for being investigative! Your reasoning is 100% correct.

I would check that mode, but I don't have that machine anymore.