[comp.sys.amiga.tech] Low 16k memory. It 64K.

cstxqbt@warwick.ac.uk (CrisP of Truth and Justice) (05/25/90)

In article <18137@well.sf.ca.us> farren@well.sf.ca.us (Mike Farren) writes:
>mt87692@tut.fi (Mikko Tsokkinen) writes:
>
>> Has somebody checked what low 16k ($0000-$ffff) memory contains. I'm asking
>>this because that's the fasted memory in standart 512k machine.
>
>Unless I'm totally mistaken, you are totally mistaken.  There is NO
>difference in speed between the low 16K and any of the rest of the 512K
>in a base Amiga, of any model.
>
>>I think I will kick the operating system out, move low 16k
>>somewhere and when the program has ended move it back.
>
>Why do you need to do this?  I warn you that if you are expecting to get
>commercial sales on this project (whatever it is, sounds gamish to me),
>you'll do a lot better with it if you don't kick the operating system out.
>I, for one, am getting less and less willing to run any application, even
>a game, which requires a reboot when it's finished.

Ok. Firstly is the bottom 64K of memory. ($0000-$FFFF is 64K, give them half
a decade and they forget everything. Remember 16 bit adresses. This is all to
with the smaller the word the faster the operation is. I bet you didn't know
That a well designed 6502C (not 65C02) is far faster than the designed to be
a ballance bettween cheap and efficent Amiga when doing text.)
  It is only faster if you use the 16 bit absolute addressing. These
addressing modes are the faster then the register relative. For which the
processor has to add a 32 bit number it gets from a register to a 16 bit
offset it gets from the instruction. While the 16 bit absoute is just a
16 bit adress from the instruction. This makes this memory rather like the
zero page with the 6502s.
  It's silly not to take advantage of this. Personaly if I had designed the
system. I would have put the chip ram at say the 2meg mark, had a image of
enough of the chip ram a the zero mark for the vectors and had the rest of
this space use efficently for memory mapped I/O. Which means none of this
we've got plenty of memory space, lets speread these few byte of I/O over
a few K.
  But lets get back to reality. Mikko mentioned putting the OS back.
If you freeze the OS buy hitting the custom interupt control and turn
all interupts off, Swap you version of the bottom 64K with the OS's.
You will have the whole machine to yourself and will have your own vectors
in place. And when your finnished you can put to OS copy of the bottom 64K
back, put the cutom chip registers back to what they were before and Mike
doesn't have to reset his machine.
  What's wrong with games?

- CrisP.