Live data from Hacker News

A cycle-accurate IBM PC emulator in your web browser

martypc.net

11–20 of 26 posts

Re: A cycle-accurate IBM PC emulator in your web browser

#11
post #4

Can you imagine sending an Area 5150 disk back in time to 1981?

You’d be fussing around trying to find enough RAM expansion cards to get your system to 640K (including hot patching the BIOS since it had a bug that it could only get to 544K).

640 KB in 1981 was more expensive than 640 GB today.

Re: A cycle-accurate IBM PC emulator in your web browser

#12
post #6

I've been using MartyPC for a few years and except for emulating glitches in hardware which depend on the manufacturer, date of manufacture or even temperature, it is getting harder to find cycle accurate tricks that MartyPC can't emulate perfectly (believe me, we've been trying). The whole thing is a marvel of software engineering! What is remarkable is that the author (GloriousCow) doesn't complain that people are…

Temperature? Really? How does that work?

Re: A cycle-accurate IBM PC emulator in your web browser

#13
post #3

Pretty incredible! I’m on mobile right now so I can only comment on the demo that runs automatically, which I understand isn’t the _point_. :) More about the demo: https://www.vogons.org/viewtopic.php?t=89435 (For those unfamiliar with “demo” in this context, see https://en.m.wikipedia.org/wiki/Demoscene ) I look forward to checking out the features you mention on a proper computer.

I loved it when the Doom floating head demon guy came up. Right when y'all were about to ask "...but can it run Doom?"

Re: A cycle-accurate IBM PC emulator in your web browser

#14
post #6

I've been using MartyPC for a few years and except for emulating glitches in hardware which depend on the manufacturer, date of manufacture or even temperature, it is getting harder to find cycle accurate tricks that MartyPC can't emulate perfectly (believe me, we've been trying). The whole thing is a marvel of software engineering! What is remarkable is that the author (GloriousCow) doesn't complain that people are…

Temperature? Really? How does that work?

If you program a register at a moment and in a way that causes two signals to "collide", the result effectively depends on transistor behavior. That in turn can be temperature dependent.

For an example on the PC see https://int10h.org/blog/2023/03/cga-6845-crtc-phantom-vsync-...

Re: A cycle-accurate IBM PC emulator in your web browser

#16
post #4

Can you imagine sending an Area 5150 disk back in time to 1981?

You’d be fussing around trying to find enough RAM expansion cards to get your system to 640K (including hot patching the BIOS since it had a bug that it could only get to 544K).

That was only the first 64k motherboard. ( Five slots only ). Fixed with the PC that came out less than two years later. My brothers machine only had 384k, and it was more than enough. Only three years after, I built 10Mhz XT w/ a V20 640k running Xenix.

Re: A cycle-accurate IBM PC emulator in your web browser

#17
Wow that's amazing. I sometimes play NES emulated games, which are (due to hardware limitations) using some tricks while displaying larger mobs, to show a few sprites instead of one (and using monitor synch to quickly switch the sprites in between switching to another scanline). This however renders as blinking in my emulator.

I can only imagine that this demo was doing similar tricks to "push the limits" on CGA.

Also, I remember my i386-33SX playing full 4 channel music on the PC Speaker in the game "Pinball Fantasies". This was state-of-the-art (also not working properly on DOSBox emulator nowadays)

Re: A cycle-accurate IBM PC emulator in your web browser

#18
post #4

Can you imagine sending an Area 5150 disk back in time to 1981?

You’d be fussing around trying to find enough RAM expansion cards to get your system to 640K (including hot patching the BIOS since it had a bug that it could only get to 544K).

One of my neighbours in Sydney sold a board he made in his garage, that gave you an extra ten slots, which I filled with way too much RAM. Sort of like a homebrewed 5161, before the 5161 existed.

Re: A cycle-accurate IBM PC emulator in your web browser

#19
post #14

Earlier quoted context omitted.

Temperature? Really? How does that work?

If you program a register at a moment and in a way that causes two signals to "collide", the result effectively depends on transistor behavior. That in turn can be temperature dependent. For an example on the PC see https://int10h.org/blog/2023/03/cga-6845-crtc-phantom-vsync-...

Thanks. Transistor level race conditions will keep me up at night.

Re: A cycle-accurate IBM PC emulator in your web browser

#20
post #18

Earlier quoted context omitted.

You’d be fussing around trying to find enough RAM expansion cards to get your system to 640K (including hot patching the BIOS since it had a bug that it could only get to 544K).

One of my neighbours in Sydney sold a board he made in his garage, that gave you an extra ten slots, which I filled with way too much RAM. Sort of like a homebrewed 5161, before the 5161 existed.

That's kind of neat. Did he just extend the bus in a "raw" fashion or put buffers on it? (The downside of the 5161 was any memory device in the 5161 had an extra wait state thanks to the speed of the buffers, which were necessary to deal with the capacitance on the cable to the expansion unit.)
Post reply on HN