[GOODIE] A2Emulator

Jon Hylands jon at huv.com
Fri Nov 23 04:28:15 UTC 2001


On Thu, 22 Nov 2001 22:47:29 -0500, "Andrew C. Greenberg"
<werdna at mucow.com> wrote:

> Well, in practice all you do is build a table of offsets, load the 
> y-offset into the index register and use an indexed indirect mode to get 
> to the correct byte.  The trick is making whatever you want to look 
> good, because of the peculiarities in the color map.

I spent many years writing 65C02 assembler on my //c, and if you think the
addressing is strange on the normal hires screen, you should try the
double-hires screen. It used the same warped interlaced lines, but every
second byte was the same memory location as the previous byte, but in the
alternate 64K bank of memory!

And 80-column text was of course done exactly the same way, alternating
characters in alternating memory banks.

The interesting thing about text mode was that each line (in 40 or 80
column mode) was 48 bytes long (48 in each bank in 80-column mode). Since
there were only 40 characters displayed, the extra 8 bytes at the end of
each line were "wasted". I seem to recall some of them (on the //c at
least) being registers that actually did stuff when you accessed the
memory...

Those were the days... One of the reasons I like programming
micro-controllers like the PICs is that it is bare-metal programming, just
like we did on the Apple //'s. No OS, no huge system libraries, just write
your own code and do your own thing...

Later,
Jon

--------------------------------------------------------------
   Jon Hylands      Jon at huv.com      http://www.huv.com/jon

  Project: Micro Seeker (Micro Autonomous Underwater Vehicle)
           http://www.huv.com




More information about the Squeak-dev mailing list