Re: BCALL of the Day | brandonw |
BCALLs are routines in the TI-OS. It's short for "banked call" (or so I'd like to think). You know how Ion, MirageOS, and other shells have routines available for you to use, like ionFastCopy? It's the same thing...the OS provides lots of routines that make things easier for you.
You COULD implement the routines yourself, but that's a waste of space when they already exist.
Some BCALLs do things for you that you CAN'T do by yourself (like _Arc_Unarc, for example, which archives a variable...something you can't do on your own).
They work through the restart command on the z80, specfically "rst 28h." That's basically the same as "call 0028h" and there is a routine located at 0028h on page 0 of the OS which will swap in the OS page containing the routine you want to use, call it, and then swap the old page back. It handles all the ickiness of calling these routines yourself.
The official ti83plus.inc contains around 1300 BCALLs on the 83+ series, but there were several hundred (about 430) that weren't known or even named. The purpose of this project is to find out what they all do, give them a name, and give them full documentation, if possible. Since starting this, I've discovered quite a few nifty things, and WikiTI has some more information on that.
Hopefully that made some sense. |
| 11 May 2007, 19:48 GMT |