Okay, here's the current development state:
The new 65org16 emulator written in x86 assembly is up and running. I mapped the Apple//e memory (including rom and IO) via an 8 bit bus (top 8 bits = 0) to $e000 0000. The 65org16 rom is currently located at $ffff 0000 (64KB). Why integrate it in an Apple//e emulator? Because this way I've got an already working and also familiar hardware emulation (keyboard, display..) for testing. The speed of the 65org16 can be set within a few steps (double) from 0.125 to 32 Mhz. I stopped at 32 Mhz because the emulation attempts to be clock cycle exact, which also applies to the video output. Without the display and using just an instruction exact emulation the speed could certainly rise above 100 Mhz. Little test programs (write string to text screen, fill the hires screen with a bit pattern) work fine so far. Right now I continue converting my basic OO kernel to the 65org16 but apart from a few missing methods it's almost done. So here's the big question:
- What kind of software do you need?
- And how much of the software do you want to store in rom? (Is there a maximum rom size?) I ask because this also affects the programming style: self-modifying code allowed? yes or no.
Please let me know your wishes and ideas, so maybe I can come up with something.
Arlet wrote:
Yes, the Xilinx ISE tools will do that [..] You can download them for free from the Xilinx site
I think I'll register at Xilinx and download them within the next few days.
Arlet wrote:
.. but there's a steep learning curve
Unfortunately, for me the biggest hurdle to overcome is to become aquainted with the tools. Setting up the tool chain is the most tedious task I can think of, especially because I'm a noob who has hardly ever used an IDE apart from his text editor and some home-grown assemblers and compilers.
BigEd wrote:
Agreed, there is a learning curve. But have a go!
Yep, even a failure can be a fruitful experience.
BigEd wrote:
I just checked my 65Org16 project on github
Thanks! Got it.
BigEd wrote:
By the way Miles, if you want to compare your emulation against another, have a look at py65.
That's a good idea, indeed, but I don't have Python installed on my laptop. Is there a Python implementation you can recommend (still using boring Windows7 64bit)?
Cheers
Miles