#RGB Encoder
29-Feb-88 22:09:50
Sb: #111560-#RGB Encoder
Fm: Nick Sullivan/Transactor 76703,4353
To: John Draper 76703,4322
Actually, a lot of that low memory is "reserved" by the 68000 itself rather
than the Amiga. The vectors for traps and interrupts are stored in the low 1K
of memory because that's where the 68000 wants to see them. I believe the 010
and 020 are more flexible about where those tables can be put, but with the
68000 there's no choice. So, although 4 is the only fixed location as far as
the Amiga OS is concerned, that whole stretch of memory is also fixed by the
CPU. Many programs do accidentally write more or less benignly into that
space. The 3.4a Aztec assembler frequently writes a $62 to location 12; since
that's the high byte of a pointer it does no damage (at least with a 68000).
The first release of Professional Page writes twelve successive bytes of
garbage starting at $30 or so, but that's a reserved, unused slot in the
vector table so it gets away with it. It would be nice if developers would
check to make sure that their programs don't write to low mem before
releasing a product, though; even when those writes don't crash the machine,
they do point to something unintended happening in the program, and of course
may be disastrous on some future Amiga where things are arranged a bit
differently.
Nick