VOGONS

Common searches


Search results

Display options

Re: x86 emulation optimizing RAM-heavy processes?

I'm already using a doubly-linked list for the TLB's emulation, which sped it up quite a bit. That's just reading a pointer for most accesses, only moving other items to the head of the queue when it's not the most recent(or allocated at all) entry. It will still slowdown a bit in protected mode, …

Re: Interesting VM86 entering issue

Potentially-silly question, but what is the effective operand size of the IRET? If it's in a 16-bit segment you'd need the operand-size override. Without it, that could explain the loading-CS-as-a-descriptor-rather-than-an-offset behavior. The Intel manuals suggest it's all one operation. As far as …

Re: Open Source i386 BIOSes?

I'm using SeaBIOS in my emulator, but if I remember correctly it relies on the remapping support in the chipset to decompress itself to RAM. Edit: IIRC the *legacy* Bochs BIOS doesn't rely on this, and is only 64K so it fits in the F000 segment.

Re: x86 PDE/PTE dirty/accessed bit updating?

The Intel SDM says: Whenever the processor uses a paging-structure entry as part of linear-address translation, it sets the accessed flag in that entry (if it is not already set).Whenever there is a write to a linear address, the processor sets the dirty flag (if it is not already set) in the paging …

Re: Programming PC Emulator Getting Started Questions

The datasheets have all the commands/parameters/etc listed, and are a pretty good resource. Can also consult many of the emulators out there, although not all of them are "correct". Cycle accuracy definitely isn't a requirement except if you want to run some very picky demos. If I recall correctly, …

Re: Programming PC Emulator Getting Started Questions

There's a few of us doing PC emulators in various communities, I lurk here and on the emudev discord. A few public domain BIOSes exist for the PC/XT, you can find some of them here: http://minuszerodegrees.net/xt_clone_bios/xt_clone_bios.htm. I've personally used this one: https://www.phatcode.net/ …

Re: UniPCemu's Dosbox-bases CD-ROM swap issues?

VIDE-CDD seems to work fine for me after a disc swap. Two ATA channels, CD-ROM is on primary slave. FWIW it's the same on the secondary channel. Trace: [ 235.7322] T/i8259_PIC: PIC 1 mask 0x8F [ 235.7324] T/HW::HDC: ATA write drive select 0xB0 (drive 1) [ 235.7337] T/HW::HDC: ATA read status …

Re: UniPCemu's Dosbox-bases CD-ROM swap issues?

Here's a trace from my emulator for a "dir" command after swapping discs. The first command is the "test unit ready", and the final command is the re-reading of the TOC. [ 10.8132] T/HW::HDC: ATA 0/1 write control register <- 0x08 [ 10.8137] T/HW::HDC: ATA write drive select 0xB0 (drive 1) [ 10.8142 …

Re: UniPCemu's Dosbox-bases CD-ROM swap issues?

To be honest, that confused me a bit too. I guess the driver has to work out which device caused the interrupt by checking the status bits. However, I still suspect your problem is due to not erroring out on the test unit status command. Edit: Should mention, if you're firing the interrupt, probably …

Page 1 of 4