[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Another cassette: Apple-80 (at least, it is real)
Hello Friends!
> > I created a small benchmark to test the performance (computing Pi to 100 digits).
>
> > Pi100 takes 1.62 seconds with a 2 Mhz 8080.
> > 1.51 seconds with a 2 MHz Z-80 SoftCard (same 8080 binary).
> > With Apple80 @ 1Mhz, 233 seconds (same 8080 binary with a modified echo).
> > ~144x wall clock time. I originally wanted to do 1000, but it would
> > have taken ~6.5 hours.
>
> > Native 6502 performance for 100 digits is 1.16 seconds.
>
> A factor of 200x (emulated 8080 / native 6502) is quite large. I would
> expect an emulator written for performance to do about ten times better.
>
> Therefore, it seems likely that Dann's emulator is written more for
> tutorial purposes, with performance not a serious consideration.
Yes, I can respond directly to this observation. :)
Apple80 is a direct descendent of my "8080 Simulator for the 6502" which I originally hand-assembled on the Kim-1 computer. Kim-1 had a total of 1.2K bytes of RAM, supported by about 2K bytes of firmware to run a HEX keypad and display. And so, as you might imagine, Apple80 was optimized for compact code, with no thought given to speed. Well, I did think about it... and dismissed it! :)
Yes, of course, it could have been re-optimized for speed (given the magnificent increase in space available on my Apple ][ .... :) A whopping 16K bytes of RAM! :) However, I was (at the time) content with the tutorial market.
Oh, and to answer one other question; yes, I will take bug reports. :) No promises, however, about a solution. :)
Kind regards,
-Dann (aka creator)