VOGONS

Common searches


Search results

Display options

Re: Hayes compatible modem emulation issues?

That is very interesting indeed because when I tried it in Dosbox I have ever only tested on 127.0.0.1 with 2 instances of Dosbox open at the same time with the nullmodem connection. I thought if it did not work in such a simple way it would have never worked on a connection with a computer behind …

Re: Hayes compatible modem emulation issues?

Well, using UniPCemu's serial modem and it's special phonebook support(after fixing some bugs in it), I've managed to get the 688 attack sub running. But it seemingly will only run when connecting through the phonebook(one setup for dialing out, another for answering) and even then, only when not …

Re: x86 emulator: optimizing RAM-heavy processes?

The TLB reads have been optimized for faster access, caching the MRU item. Also optimized the PIQ fetching from memory to use a faster ordering of handling it's variables. It's now at up to 38%/39% at 3 MIPS. Windows 95 is now running at ~22% on average, sometimes dipping to 19% and sometimes …

Windows 95 ET4000 DAC detection?

I've currently emulated a Sierra SC11487 DAC on the ET4000 board. When I open up dxdiag, I see that it knows of the Tseng Labs ET4000, with oddly enough 0.5MB of memory(1MB is installed), a display mode of 640 x 480 (16 bit), unknown monitor(not setup for this OS(Windows 95 RTM)), the mini VDD being …

Re: x86 emulator: optimizing RAM-heavy processes?

I feel your pain with this, I spent a couple of months optimizing just memory reads and writes for my program. I don't have any numbers off the top of my head and it may not apply to modern processors, but in general I avoid indirect jumps as much as possible. So I avoid things like function …

Re: x86 emulator: optimizing RAM-heavy processes?

Hmmmm... Can't seem to get it past 37% speed(at 3MIPS in IPS clocking mode). Pretty much optimized everything that has to do with the PIQ reading memory(as well as the PIQ function fetching opcodes into the FIFO). The heaviest part still seems to be just the prefetching process reading the bus(bus-> …

Re: x86 emulator: optimizing RAM-heavy processes?

Another small PIQ improvement: optimized 8-bit FIFO buffer reads(~0.2% less) and writes(~0.6% less) by optimizing the check for free size(to be able to read/write a byte from the buffer) to perform a simplified check(instead of the full multibyte check) to check against a simple buffer full/empty …

Re: x86 emulator: optimizing RAM-heavy processes?

Also, what I'm currently testing on mostly is the BIOS POST running(which doesn't enable paging at all). I already see 36.58% being spent on executing the virtual CPU, of which 16.99% on reading opcodes and prefixes(and 12.37% on executing the instructions themselves), of which 12.79% fetching the …

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: x86 emulation optimizing RAM-heavy processes?

Just optimized the prefetching process to not fetch more than the maximum instruction length(as supported by the protection mechanism) when handling IPS clocking mode on a 80286+. So a 80286 will only fetch until it reaches 10 bytes filled in the PIQ, a 80386 and up with 15 bytes in the PIQ(instead …

Re: x86 emulator: optimizing RAM-heavy processes?

I know that for each instruction executed, it will prefetch the instruction length's worth of bytes from memory when starting the next instruction, to keep the prefetch buffer filled. So at worst, a 12-byte instruction will make it fetch 12 bytes from memory, filling the PIQ. The worst case scenario …

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, …

x86 emulator: optimizing RAM-heavy processes?

I notice in my profiler that most execution time is actually seeming to be spent purely on handling memory accesses in UniPCemu. So that's mostly prefetching and memory checking itself(protection checks), according to the profiler. Both are already heavily optimized to use as much precalculated data …

Page 1 of 184