A85: Re: usgard source...
[Prev][Next][Index][Thread]
A85: Re: usgard source...
The TI85 ROM is not optimized at all, but in a lot of cases this doesn't
matter as the decrease in speed is small. I have found a few places which a
really wierd (like a place which checks if the var name is 8 or less, if
not it goes into an infinite loop), but most of the code is just not
optimized. There also some places in the ORM which are pretty well written,
atleast I remeber having found code peices which were quite clever.
Usgaard does not suck, you might not like all the features, but it does not
suck. If you want to optimize a shell it will often become disorganized, but
that is not a sign of bad coding, but a sign of lots of optimization. Before
Usgard was released lots of people asked for TSR support, which is why it is
included in Usgard. Personally I do not use it, but some people like. The
best way of implementing interrupts is by making a 257 byte buffer as Usgard
has.
Your shell would probably be slightly faster, but lots of people wouldn't be
able to use, and having to recompile all programs...
----------------------------------------------------------------------
Dines Justesen
"ua mau ke ea o ka ai·na i ka po·no"
dines@aub.dk
www.student.dtu.dk/~c958362
----------------------------------------------------------------------
----- Original Message -----
From: Robin
To: assembly-85@lists.ticalc.org
Sent: Monday, March 27, 2000 7:29 AM
Subject: A85: usgard source...
i decompiled the usgdstd.85s file and determined Usgard sucks. the 85 ROM
too. in particular the ROM calls that use the routine at $337a, and most of
the OP register routines, i.e. like _movetoOP1, ahh, can't remember any
other
86 faxcimilies, but they're there. i also located the ones that load less
than 11 bytes to the OP reg's. I used a javascript hex-to-binary converter
i
made to convert all the font characters, too. and i found the tokens, the
strings used by the TI-OS (try printing the string at $3275), and ahh...
well, did the same for usgard. here's what i determined about Usgard:
Usgard's disorganized, has 257 bytes at $8D00 for a interrupt vector table
of
$8E's (annoying since i don't use Usgard's interrupts), will herniate itself
if you install more than 6 i think interrupts: the way the Usgard
interrupts
(if you didn't know) work is the interrupt routine at $8E8E swaps the shadow
reg's, then calls upto six user interrupt routines. I guess that's the
easiest way to install TSR's. I know the zShell emulation can be omitted,
i'm
just too lazy.
so, what I have in mind would be this stream-lined rom version v10.0 ONLY
Usgard derrived kernel. this'd have advantages and disadvantages: first,
it
won't work with other ROM versions (duh) and every program would need to be
recompiled to run. advantages? 11 clock cycles (or whatever a call takes)
instead of like 15 or so to call, then jump, etc. DAMN small. talking
7-800
bytes small, maybe 900. (no zShell emulation and no interrupt support).
and,
add in a grayscale routine, maybe protect the mem block at $F600 for the
second gray layer, build in a sprite routine (smallest & fastest), ahh, it's
12:30 am. i'm gonna go to bed. i'm curious if you guys have any interest.
maybe that dude that's working on the new kernel?? (sorry forget your name)
- Robin
President of ()rion Productions
Get free email and a permanent address at http://www.netaddress.com
References: