A86: Replacement OS


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

A86: Replacement OS



Please read the attachement and send me some comments on this idea
please.
It has to do with writing a replacement OS for the 86 (as should be
obvious from the subject or this email)

Later,
Chicane
Programming/Gaming Interface for the TI-86

This is a replacement operation system for the TI-86, which would attempt to give the
programmer more space for standard programs, as well at a ton of data space. Math would
be pretty much extinguished, so don't count on it being easy to get used to...

Some basic information (proposed):

[RAM page 0]
Operating System Data     = $C000 - $C7FF (2kb for ops, shadow regs and things of that nature)
Operating System Calls    = $C800 - $E7FF (~8kb for os calls (findpixel, putsprite, _puts etc)
Variable Table = $E800 - Stack End (approx 4kb for 256 variables)
Stack          = $FBFF (going up)   (approx 1kb)
Video memory 1 = $FC00 - $FFFF

[RAM page 1] (to be loaded into port 5)
_asm_exec_ram (place of execution) = $4000 - $7FFF

[RAM page 2] (to be loaded into port 6)
extended execution area if needed  = $8000 - $BFFF (16kb)

[RAM page 3 - 7]
Standard variable data

Total of 96kb user available memory (same as current TI-86 memory).
~6 - 12kb of this could be used to save the current system into a string, so the new OS could
be exited back to the TI-OS.

This takes the execution area to 32kb of continuous usable space at one time w/o 
any page swapping.

ROM calls that would need to be replaced are numerous:
(obviously only a partial list)

_putx and _vputx
_clrScrn and _clrLCD (could be same call actually)
_HtimesL (_MUL_HL)
_OPx moving routines
_FindSym
_load_ram_ahl
_disp_ahl
_get_free_mem
_get_word_de (there's anoter name for this i think)
_createstring
_createprgm
all abs address data moving routines (or at least the usefull ones)






Follow-Ups: