VOGONS

Common searches


Search results

Display options

GloriousCow's PC Emulation Blog

I've done a lot of research into the PC over the past year in the process of building my emulator and I'd like to share some of that work, so I've put up a little blog where I have a few articles planned on different topics pertaining to PC emulation. The first one I have published is a deep dive …

Re: Emulating Area5150

I guess it's also running in NTSC composite mode? Nope, this one is straight RGB. If you can run 8088MPH I'd say 85% of the demo will likely run fine, as it's mostly CRTC rather than CPU tricks. The three effects that will likely fall down are the Tetra3D effect which relies on accurate interrupt …

Re: Emulating Area5150

Ha, that's more or less the reaction we hoped to provoke. 😁 In fact as far back as 8088 MPH, one not-so-secret hope was to inspire the emulation scene to level-up in terms of accuracy, so it's awesome to see people stepping up to the plate (and now actually making it happen)! Even the name Marty is …

Re: Emulating Area5150

And speaking of 8088MPH... How does your emulator fare with that? Could you also post a video of it (assuming it gets acceptable results, which seems like a safe assumption given how well it handles Area5150)? I haven't been 100% satisfied with my CGA composite simulation and wanted to improve it a …

Re: Emulating Area5150

What's more, it correctly represents what is seen on the monitor, by rendering a fixed region - overscan included - and allowing the emulated 6845 to determine the parameters of the active area. This approach has been inexplicably rare in PC emulation (as opposed to say the C64, Amiga, or Amstrad …

Emulating Area5150

My PC emulator can finally emulate Area5150 https://www.youtube.com/watch?v=zADeLm9g0Zg Some of the effects were a real challenge. The end credits effect is like Kefrens from 8088MPH except even more ridiculous. It must run in exactly 304 cycles per scanline. It uses a very unique trick to get a …

Re: 8088 Interrupt delay timing

I was working on a blog post to try to describe the prefetching algorithm, at least my mental model of it. It would be interesting to compare notes. Although every time I think I have all the rules fully understood, some new bus delay scenario seems to crop up. The last ones were uncovered in my …

Re: 8088 Interrupt delay timing

I was able to disprove any sort of two-cycle phase as I can delay 10, 11, or 12 cycles after halt before asserting INTR and see the same delay value. Interesting from your code that it appears to be related to the last bus transfer type? Do you ever get the feeling that the logic for prefetching, …

8088 Interrupt delay timing

In the ongoing pursuit of emulator cycle accuracy, I'm investigating the cycle timing for interrupts. Specifically, waking from a HALT. I have an 8088 on a microcontroller and what I have discovered is that there is a somewhat significant delay between INTR being asserted and the first INTA bus …

Re: Breakpoint on DOS Program Start

Write your own .com that calls int21.4b with al=1 to load the program to be debugged, then jump to the new ip with the trap flag set (or some other method to notify your emulator to break). Thanks, I went with this method and it works pretty well. Now I'm wondering if I couldn't intercept calls to …

Re: Breakpoint on DOS Program Start

its not clear what you are trying to reach? ... maybe you don't know that there are so many working debugger solutions for DOS or i didn't understand you questions I'm writing my own emulator. I would like to be able to drop into my emulator's native debugger when a program starts. I am aware I can …

Re: Breakpoint on DOS Program Start

Well, DOS transfers to segment:100h after loading the binary and setting up it's data/stack segments (although for .COM executables only. .EXE have it in their file headers, which are dynamically allocated). In UniPCemu, you can specify a breakpoint with just an offset, making it ignore the segment …

Breakpoint on DOS Program Start

I come seeking advice for how to implement what I thought should be a fairly straightforward emulator feature - I'd like to be able to set a breakpoint on DOS program start. I know I can run a debugger under emulation, but it would be nice if I could just pause the emulator at the first instruction …

REP + String instructions behavior

I have a few questions about the behavior of an 8088 with REP-prefixed string instructions. What is the state of IP when executing a REP STOSB, for example? Does it point at the REP prefix or the STOSB opcode itself? The intel docs say: A repeating string operation can be suspended by an exception …

Re: IBM VGA BIOS initialization

mkarcher wrote on 2022-09-18, 21:01: I don't understand what you mean by "2T4". Maybe you are talking about GFX, index 9, bit 7? Sorry, using the field names from the Ferraro book. It's a bit 7 in the Maximum Scanline Register. I really appreciate you taking the time to reply in such depth.

Page 14 of 15