VOGONS


Area 5150: New IBM PC+CGA demo

Topic actions

Reply 40 of 53, by dr.zeissler

User metadata
Rank l33t
Rank
l33t

Compatibilty:
Schneider EuroPC NecV20 Paradise Hercules/CGA/PLT => BAD
Tandy 1000RL 8086 CGA/TGA/Hercules => not so bad, but bad
Sharp PC4600 Series 80188 CGA (external output) => best of these three but not good at all
http://www.bitsavers.org/pdf/sharp/brochures/SharpPC4600.pdf

https://youtu.be/n-Fnkc1X0RM

Could not get the suitable required hardware for an acceptable price.
..so still watching 5150 via video/yt on the real machine.

Doc

Retro-Gamer 😀 ...on different machines

Reply 41 of 53, by zyzzle

User metadata
Rank Member
Rank
Member
dr.zeissler wrote on 2022-12-05, 12:32:

Could not get the suitable required hardware for an acceptable price.
..so still watching 5150 via video/yt on the real machine.

Ironic isn't it? And highly unfortunate. We have a "modern" program, where experts have stunned the world by maximizing the potential, the tweaks, and the performance of 40-year-old hardware. By and by, that 4o-year-old hardware is as obsolete laughably slow and inefficient compared to any other PC released in the last 20 years.

Yet, to even have hope of of running this outstanding, stunning demo, one has to acquire 40-year-old hardware for thousands of dollars. Modern hardware simply won't run this 40-year-old code. Even though, by rights, modern systems *should* be 100% compatible with the tweaks and the hacks of the old 40-year-old composite CGA cards. Instead modern systems are so castrated, so far-removed from the compatibility standpoint, that this wonderful demo can't even be run properly in emulation.

So, the only way to experience it, really, is to spend thousands on scalperesque, greedy Ebay prices or get lucky and magically unwrap one of these 42-year-old "Original IBM 5150 PCs with composite CGA" which has been lurking in Grandpa's attic for 35 years, or rotting in his workshop, exposed and totally forgotten for many decades.

Probably, only a handful of true diehards in the entire world is willing to do this, but the expertese and the truly STUNNING work of the people who wrote this code, needs to get more exposure, and more cheaply possible to do, with 100% accuracy for the 'authentic' experience.

Sad, isn't it? And very, very ironic.

Reply 44 of 53, by VileR

User metadata
Rank l33t
Rank
l33t

Speaking of CGA clone cards... here's something we were going to include with the party release, but forgot about it: a ROM font comparison test.

The "ANSI-from-Hell" graphics rely on the contents of IBM's character ROM - many non-IBM CGA boards have the exact same 8x8 font as the original, but that's not always the case. To find out without having to dump and compare, you can use the tool at https://github.com/viler-int10h/CGA-font-compare.

If it shows you a 100% stable display (left), your ROM font is identical to IBM's, so Area 5150 can look as intended. If the font doesn't match, you'll get animated/flashing characters (right):

compare.gif?raw=true

[ WEB ] - [ BLOG ] - [ TUBE ] - [ CODE ]

Reply 45 of 53, by Error 0x7CF

User metadata
Rank Member
Rank
Member
VileR wrote on 2022-12-17, 21:28:

The "ANSI-from-Hell" graphics rely on the contents of IBM's character ROM - many non-IBM CGA boards have the exact same 8x8 font as the original, but that's not always the case. To find out without having to dump and compare, you can use the tool at https://github.com/viler-int10h/CGA-font-compare.

Would it be possible to get even more colors or higher resolution out of CGA by creating a custom font rom?

Old precedes antique.

Reply 46 of 53, by darry

User metadata
Rank l33t++
Rank
l33t++
Error 0x7CF wrote on 2022-12-18, 00:01:
VileR wrote on 2022-12-17, 21:28:

The "ANSI-from-Hell" graphics rely on the contents of IBM's character ROM - many non-IBM CGA boards have the exact same 8x8 font as the original, but that's not always the case. To find out without having to dump and compare, you can use the tool at https://github.com/viler-int10h/CGA-font-compare.

Would it be possible to get even more colors or higher resolution out of CGA by creating a custom font rom?

CGA does not support redefining fonts, AFAICR . Again AFAICR, a mod project was published in Byte magazines decades ago to allow doing that.

Someone please correct me if I am wrong .

Reply 47 of 53, by Jo22

User metadata
Rank l33t++
Rank
l33t++
darry wrote on 2022-12-18, 03:13:

Someone please correct me if I am wrong .

Hi there!

No, no I don't think you're wrong.

There's just something that comes to mind.
If the PC BIOS was copied into RAM (-> shadow memory), then it might be possible to alter the ROM font, at least.

However, IBM Model 5150/60 PCs didn't have that feature at the time.
But late Turbo XT boards, maybe.

Second, your memory about the changeable font..

There was something similar for the Sharp MZ-700.
The Sharp MZ-700 was an Z80 "PC" with a text generator and a hard-coded font in ROM (aka SHARPSCII; EU/JP versions).

To make the font user-definable (partially), a separate unit, the PCG700 was released.

It was essentially a software-controlled font RAM, which replaced the original font ROM.
By making clever use of that font device, it was possible to simulate pixel graphics.

"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 48 of 53, by Ozzuneoj

User metadata
Rank l33t
Rank
l33t

This is amazing! How did I not see this earlier?

I made it about half way through the video before I decided to just close it and save the rest so I can see it in person on my own machine. I have a 5150 and a 5153 monitor. I never got around to running 8088 MPH on it (I believe I need to hook up a composite display for that, right?), but as far as I can tell this demo would be as simple as taking my EGA card out, putting the original CGA card back in, switching off the 286 upgrade card and giving it a go.

Now for some blitting from the back buffer.

Reply 49 of 53, by VileR

User metadata
Rank l33t
Rank
l33t
darry wrote on 2022-12-18, 03:13:

CGA does not support redefining fonts, AFAICR . Again AFAICR, a mod project was published in Byte magazines decades ago to allow doing that.

That's right, lack of redefinable fonts is exactly why this demo has to rely on the ROM charset (and why this comparison tool has to display the IBM CGA font in graphics mode).

Error 0x7CF wrote on 2022-12-18, 00:01:

Would it be possible to get even more colors or higher resolution out of CGA by creating a custom font rom?

Afraid not - all that would change is the content that gets displayed.

The exception is when you're abusing text mode to get extra artifact colors on the *composite* output (something that this demo doesn't do, but 8088 MPH did). In that case, a custom character ROM might contain more useful bit patterns to increase the color count. But then it wouldn't be very useful for producing legible text in regular use... so I guess you'd be back with the problem of not being able to switch fonts.

Jo22 wrote on 2022-12-18, 08:40:

If the PC BIOS was copied into RAM (-> shadow memory), then it might be possible to alter the ROM font, at least.

However, IBM Model 5150/60 PCs didn't have that feature at the time.
But late Turbo XT boards, maybe.

Not exactly; there is a difference here between the ROM BIOS font and the character generator ROM that is physically part of the CGA (or MDA) board.

The font contained in the BIOS is used purely in BIOS *graphics* modes, so that the INT 10h routines can display text. The character generator ROM is used in text mode (and in this demo) - its address lines are only available to the CGA board; the contents aren't mapped to the CPU's address space. So shadowing the BIOS would not help in that regard.

[ WEB ] - [ BLOG ] - [ TUBE ] - [ CODE ]

Reply 50 of 53, by Jo22

User metadata
Rank l33t++
Rank
l33t++

+1
I remember them being different.
Hercules clone cards have a similar design.
They can host a character ROM (say Greek) for MDA mode. There's a socket for that.
The Hercules Plus had a soft font functionality, unfortunately it hadn't gotten much clones.

"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 51 of 53, by VileR

User metadata
Rank l33t
Rank
l33t
Ozzuneoj wrote on 2022-12-18, 09:04:

I made it about half way through the video before I decided to just close it and save the rest so I can see it in person on my own machine. I have a 5150 and a 5153 monitor. I never got around to running 8088 MPH on it (I believe I need to hook up a composite display for that, right?), but as far as I can tell this demo would be as simple as taking my EGA card out, putting the original CGA card back in, switching off the 286 upgrade card and giving it a go.

Yes. I should add that you'd need either a hard drive or a 720K floppy drive to run the *current* version of the demo (you can trick DOS into doing it with two 360K drives, but then the extra disk operations kinda screw up the timing).

The final version (which we're still working on!) will hopefully run off a single 5.25" DSDD disk.

[ WEB ] - [ BLOG ] - [ TUBE ] - [ CODE ]

Reply 52 of 53, by Ozzuneoj

User metadata
Rank l33t
Rank
l33t
VileR wrote on 2022-12-18, 09:36:
Ozzuneoj wrote on 2022-12-18, 09:04:

I made it about half way through the video before I decided to just close it and save the rest so I can see it in person on my own machine. I have a 5150 and a 5153 monitor. I never got around to running 8088 MPH on it (I believe I need to hook up a composite display for that, right?), but as far as I can tell this demo would be as simple as taking my EGA card out, putting the original CGA card back in, switching off the 286 upgrade card and giving it a go.

Yes. I should add that you'd need either a hard drive or a 720K floppy drive to run the *current* version of the demo (you can trick DOS into doing it with two 360K drives, but then the extra disk operations kinda screw up the timing).

The final version (which we're still working on!) will hopefully run off a single 5.25" DSDD disk.

No problem there at all. This poor old 5150 is packed to the gills with options. 😁

I have a 720K 3.5" drive (actually 1.44MB, but you know the limitations of the original drive controller...), an original 20MB Miniscribe MFM drive and a Parallel Port CF card reader (though the driver for that only works if the 286 is enabled).

Now for some blitting from the back buffer.

Reply 53 of 53, by digger

User metadata
Rank Oldbie
Rank
Oldbie

It's downright surreal to see an IBM PC with CGA produce such graphics and animations. Really amazing and impressive work.

It's also nice to see this continuous "arms race" between the demo scene and the emulator community. The demo coders try to make a demo that uses the hardware in ways it was never intended and envisioned, with the "breaking of emulators" being a badge of honor. In turn, that challenges the emulator developers to improve the accuracy of their emulation code, using the demo as a test case. And then the circle repeats, resulting in ever more impressive demos, a deeper understanding and historic knowledge of retro computers, and more accurate emulators. 🙂

Now that MartyPC can emulate Area 5150, I guess it's the demo coders' move again. 😉