[A83] Re: 83p os


[Prev][Next][Index][Thread]

[A83] Re: 83p os



I had this idea once, but wasn't ambitious enough.

The TI-83 doesn't exactly have a "boot."  However, the TI-OS uses the z80
interrupt mode 1 (IM 1) in handling interrupt routines.  This indicates that
upon an interrupt, the calc should call code at $0038.  However, $0038 is in
ROM, and cannot be manipulated!  Interrupt mode 2, though, can be configured
to handle interrupts nearly anywhere in memory.  What you need to do is:
  -disable interrupts
  -set interrupt mode 2
  -set the I register to the most significant byte of a page-aligned 257
byte
    buffer
  -fill the 257-byte buffer with the same byte, referring to an address with
    the same byte in each significant place (for example, $9393 or $9494)
  -install interrupt code at the specified address (for example, $9393 or
    $9494), starting with EXX / EX AF,AF' and ending with EX AF,AF' / EXX /
RETI
  -enable interrupts

That is a quick overview of interrupts.  What do you mean by the TI-OS
files?  I recommend reading intguide.txt (focused on TI-83+, remember) and
asmhelp.zip, found on ticalc.org, to learn about interrupts and the VAT
(variable allocation table).  If you have any specific questions feel free
to ask!

Jeff

> Hi...
>
> I'm going to write a mutitasked os to my ti83p. Does anybody know how
> the ti-os files are stored and what addresses are called on
> boot/interrupt?
>
> TIA
>
> --
> Max Sikstrom
> pengi@molik.org
>
> MoLiK programming and demo group
> http://www.molik.org/



Follow-Ups: References: