Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
ao486: x86-compatible Verilog core implementing all features of a 486 SX (2014) (github.com/alfikpl)
72 points by csmantle 9 days ago | hide | past | favorite | 14 comments
 help



It’s a neat core, but z386 is where the action is right now (https://github.com/nand2mario/z386_MiSTer). Interestingly this core doesn’t output a proper analogue signal. I always wondered why until I recently tried to implement a real EGA pixel clock on the PCXT EGA core. Basically, video cards with dual (or more) pixel clocks are not realistic on MiSTer. The PLLs are there, but once you get too many clock sources the routing becomes quickly impossible. MiSTer framework’s pipeline also forces pixel clocks tied directly to video output (for good reason) and switching that clock at runtime gets very tricky.

Thanks for mentioning z386. Much of its recent progress was made possible by the reverse engineering and disassembly of the original 80386 microcode (https://news.ycombinator.com/item?id=48247004), which z386 uses as its control program. That work has been especially valuable for reproducing obscure protected-mode behavior correctly.

With correctness helped greatly by that, development is now focused mainly on performance. In Doom, z386 is currently about 30% faster than ao486 on the same MiSTer setup, with benchmark performance roughly comparable to a 486DX2-66.


Can you describe why z386 is much faster than the supposedly highly optimized ao486? Is the original microcode (and corresponding chip architecture) that good?

I'm pretty sure there was a more recent 386 clone than that

z386 is in development right now, and isn't even finished. Do you mean between ao486 and z386?

I remember blog post somewhat recently here on HN comparing 2 386 opensource cores

the z386 doesn't output a proper analogue signal, or the ao486?

Sadly, neither. VGA has two completely different pixel clocks and wiring that up in MiSTer is pretty difficult.

Couldn't X.org tune that with xvidtune?

Aww :( Tragic

Curious: are these cores (ao486, z386) technically illegal because of Intel/AMD licensing/copyright/etc? Or has everything relevant expired? Surely the patents have but not sure what else comes into play.

No more than any X86 emulator since forever.

You can't copyright an API (ISA) or schematics (as in the wiring).

Maybe the microcode is copyrighted.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: