A86: Re: Replacement OS


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

A86: Re: Replacement OS




That really sounds awesome... you gonna do it?
----- Original Message -----
From: Chris Phelps <chicane@reninet.com>
To: <assembly-86@lists.ticalc.org>
Sent: Wednesday, December 29, 1999 7:42 PM
Subject: 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)
>
>
>
>
>
>



References: