ticalc.org
Basics Archives Community Services Programming
Hardware Help About Search Your Account
   Home :: Archives :: File Archives :: TI-86 Assembly Routines
File Archives

TI-86 ASSEMBLY ROUTINES

Archive Statistics
Number of files 109
Last updated Wednesday, 16 May 2007
Total downloads 462,842
Most popular file  TI-86 Z80 Disassembler with 9,660 downloads.

Click a filename to download that file.Click a folder name to view files in that folder.Click  for file information.

Icon legend: File with screen shots File with animated screen shots File with reviews Featured programs


NameSizeDateRatingDescription
(Parent Dir)folder Up to TI-86 Assembly Source
th.zip29k07-05-16File is not ratedCooperative Multithreading Library
This is a cooperative multithreading library for the Z80 processor. It has all of the common routines for manipulating threads. It also includes a library for handling readers/writer locks.
sprite8383p86.zip7k07-05-07File is not ratedsprite.asm v1.31
A compilation of a few useful sprite routines.
string.zip13k07-03-06File is not ratedString handling routines
This is an implementation of the string handling functions found in the ANSI C Standard Library. All of the functions memchr, memcmp, memcpy, memmove, memset, strcat, strchr, strcmp, strcoll, strcpy, strcspn, strlen, strncat, strncmp, strncpy, strpbrk, strrchr, strspn, strstr, and strxfrm are implemented. Only strerror and strtok are unimplemented currently. See the file doc/index.html in the archive for complete documentation.
dither.zip2k06-11-14File is not ratedDithering routine
Converts gray to black and white using a 4x4 dithering pattern. Includes three different dithering patterns: Bayer, newspaper, and "K map" (for really interesting results). This whole routine takes only 70 cycles.
atexit.zip12k06-11-11File is not ratedC exit and atexit functions
These are the "atexit", "exit", and "_Exit" functions as found in the C Standard Library. Use "atexit" to register a function to be called on program exit. Use "exit" to exit from anywhere in a program and call each function registered with "atexit" in reverse order. Use "_Exit" to exit immediately. This version is a little faster and smaller than the previous version, at $36 bytes for code (versus $3A bytes). It still uses $05 bytes for variables and at least $42 bytes (this can vary) for stack space.
menu.zip11k06-08-05File is not ratedScrolling menu
This is a generic scrolling menu routine. It scrolls up and down with the arrow keys, calls a routine for the selection when ENTER or 2nd is pressed, returns when EXIT is pressed, and calls a routine when any other key is pressed. The routine is data-driven, so you don't have to change the routine at all. Using it is very simple and is all explained in the README.txt file.
heapsort.zip4k06-04-15File is not ratedHeapSort for the Z80
An implementation of the famous HeapSort sorting algorithm in Z80 assembly language.
soundbst.zip324k05-03-07File is not ratedSound Blast
This is a sound routine for the TI-86 calculator. It takes in the wavelength of the note, and time the note plays. This is one of the purest sound routines I have ever used. The note comes out very smooth. Attached are two pictures of how the sound wave actually looks coming from the routine.
smallscrollingtext86.zip5k05-03-02File is not ratedSmall Scrolling Text
This routine basically displays scrolling text in small font one letter at a time. It can easily be ported to the z80 calcs if needed.
vfgraysprite.zip2k05-03-02File is not ratedVery Fast Gray Sprite Routine (8x8 and 16x16)
Draws an 8x8 grayscale sprite in 4,609 cycles or less, and a 16x16 in 16,443. The fastest that I know about so far... Optional clipping added.
drawbox.zip1k04-12-10File is not ratedDrawBox 1.1
Draws a filled box on-screen.
math16.zip1k04-11-20File is not rated16-bit math routines (multiply, divide)
ctype.zip3k04-11-11File is not ratedCharacter classification routines
Standard C character classification routines - isalnum, isalpha, isascii, isblank, iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, isupper, and isxdigit. Might be useful somehow.
atoi.zip1k04-11-11File is not ratedConvert a string to an integer
Standard C atoi function. Converts a null-terminated string to a 16-bit integer. Now faster and smaller than ever.
randomgen.zip1k04-11-04File is not ratedRandom number generator
this routine is equal to randInt(1,100) or the more correct form 100 int(rand)+1
shiftscreen.zip1k04-08-03File is not ratedShift_Screen
Rotates image on screen or in buffer. Good for moving backgrounds.
qsort.zip95k04-07-24File rated 8.28Ubiquitous Z80 QuickSort Implementation
This routine is quicksort, the fastest sorting algorithm currently out there. It sorts stuff in ascending order, and a demo is included. Just plug the start and end indexes of the list to bc and de, and you're set. Simple and small (<41 instructions, 90 bytes) and really, really fast (200 elements in an unnoticable amount of time). It works for all Z80 processors, all calcs, cellphones, and whatever, though the demo is for the 86. But like all quicksorts, it uses the stack, although I made the recursion structure a little less stack expensive.
threadsp.zip41k04-07-24File is not ratedPreemptive Multithreading 1.0
These are functions for *preemptive* multithreading in an assembly-language program. This is similar to the way modern operating systems multitask. It uses mode 2 interrupts, so grayscale is possible by editing the interrupt handler. It supports unlimited number of threads (currently only one variable limits it to 255); exiting and canceling threads mid-slice; waiting on another thread; and variable thread priorities, similar to nice in *nix. It also supports conditional assembling, so you can include only the features you need!
mulhlby10.zip1k04-05-13File is not ratedMultiply HL by 10
Multiplies HL by 10. Returns carry on overflow. Faster and smaller than the TI-OS version.
fesmult.zip1k04-05-13File is not ratedFast Enough Signed Multiply routine
Fast and small signed 8-bit multiply routine. Probably the fastest and smallest classic shift-and-add signed multiply routine (correct me if I'm wrong).
usumult.zip1k04-05-12File is not ratedUltra Slow Unsigned Multiply routine
Ultra slow (averages 218114190 cycles) unsigned 8-bit multiply routine. Useful when you want the speed of cold molasses.
feumult.zip1k04-05-11File is not ratedFast Enough Unsigned Multiply routine
Fast (204-251 cycles) and small (35 bytes) unsigned 8-bit multiply routine. Probably the fastest and smallest classic shift-and-add multiply routine.
music.zip17k04-04-27File is not ratedMusic routines version 0.1b
These are easy-to-use functions to play songs on the link port. The songs it plays are defined with notes and not with a soundwave like other sound routines and programs. Because of this, the songs are much smaller than the wave versions (though they're limited to simple notes). This project is a beta version, so USE AT YOUR OWN RISK.
threading.zip8k04-03-16File is not ratedThreading 3.5
An update to my threading system. This time, I've fixed a bug with restoring the ix register, and I've also added memory locking and unlocking. This will help protect programs from crashing during routines that access global data.
test.zip2k04-02-17File is not ratedReverse Sprites
These 2 routines reverse sprites. The 1st reverses every byte, bit-by-bit, in a set of data (ideal for 1 byte wide sprites). Ihe other reverses for a 2 byte wide sprite after the 1st is applied. These saved me over 350 bytes in Super Saiya-jin Rage, soon to be re-released.
input_str.zip2k04-01-26File is not ratedString Input Routine
This is a routine that accepts a string entered on the keypad, and stores it in memory at a specified location. It supports most common characters, multiple lines, string length limits, backspacing, and graph screen text.
fastcirc_86.zip2k04-01-20File is not ratedFastCircle TI-86
Bresenham's circle algorithm. MUCH faster that the TI-OS routines. This version fixes a bug in the PSet subroutine.
_vputs_ml.zip1k03-10-19File is not rated_vputs for multiple lines
This routine works exactly like _vputs, except that it will interperet $d6 as a newline char. This can dramatically reduce code size when using the variable-width text on multiple lines. Now includes a version for the '83+.
menu86.zip4k03-10-07File is not ratedMenu 86 v1.4
TI-86 menu drawing routine. Very helpful, if you need a menus for your assembly program, or are trying to port a program directly from TI-86 Basic language. Right now the routine itself is only 159 bytes. It also has easy access to display text inside the menu. Also included is the ability to choose from the two different types of menus.
threads.zip24k03-06-30File is not ratedCooperative Multi-threading v1.0
Functions for cooperative multi-threading in an assembly-language program. This version more closely (but not exactly) adheres to POSIX threads (Pthreads) than the previous versions.
fastgamestart.zip5k03-05-30File is not ratedFast Sprite Shooter
This is a program for anyone making a game. It is a very fast routine that moves a sprite which can shoot bullets. All it needs is enemies and a storyline. This routine is fast enough to be used with some type of scrolling background and multiple enemies. A great start for any programer especially the beginer to intermediate that doesn't want to bother with their sprite shooting routines.
zmrgs.zip2k03-05-15File is not ratedZMR - Zoomin' Mob Routine (Grayscale Version)
Originally by Dux Gregis, updated by Ricky Cobb for Grayscale, and Optional Masking. This 8x8 putsprite/grayscale routine does clipping of sprites to draw only what is need to the screen. This update includes a small bug fix from the original ZMR.
smallfont.asm2k03-03-14File is not ratedSmallfont
Gives the same functions to the small font that we are used to witth the large one (_homeup, _newline...).
los.asm1k03-03-09File is not ratedLength of String
This routine calculates the length of a string if it would be printed in the variable width font. Can be useful for centering text etc.
search.asm4k03-03-09File is not ratedSearch for strings
This routine allows you to easily search for strings with a certain markup word at the beginning of the data.
scrollingroutines.zip2k03-03-06File is not ratedScrolling Routines
assorted scrolling routines for you to use, fairly fast. slightly updated from previous version
smallkey.asm2k02-08-04File is not ratedsmallkey
Using this routine programs using _getkey can be smaller.
bintobcd.z802k02-07-26File is not ratedBinary to String
Two routines that format integer numbers to ascii strings that are printable using _puts or _vputs.
blittbitmaplarge.asm3k02-03-28File is not ratedblittBitmapLarge
Display an any size, b&w sprite anywhere on screen! Comes with an example!
smoothtxt.asm1k02-03-03File is not ratedSmooth Text
This is a nifty little routine that will scroll your text down/right one pixel as many times as you want... pretty neat! check it out!!!
scrlltxt.asm1k02-02-25File is not ratedScrolling Text
Gives you that RPG style look of someone talking, or typing text. It also will scroll the screen as it gets to the bottom row.
ubersprite.asm3k02-01-01File is not ratedUbersprite
A (unaligned) sprite routine that uses a precalculated table to speed up drawing. Very fast, but not suitable for all purposes. No masking, no clipping, black and white, 8x8 only.
findpixel2.asm1k01-12-10File is not ratedFindPixel routine
24 bytes, 127 cycles, 134 cycles with bus load time
psp16m.zip2k01-06-25File is not ratedPutSprite16Masked
This routine puts a 16x16 masked sprite without clipping. You can save the background too and restore it at the same place. This is an example, maybe not the fastest...
random.zip1k01-04-04File is not ratedRandom Number Generator
This routine uses a linear feedback shift register to generate a stream of random bits. Used in "Antz!". Read the file for more info.
vs4gray.zip2k01-03-27File is not ratedVery Small 4 GrayScale
The smallest 4 GrayScale routine: 96 bytes only.
scrldown.asm25k01-03-08File is not ratedVertical Scroll
Simple Vertical Scrolling Routine by Nick Haigler. Scrolls up to 319 pixels!!!
routines.zip1k01-03-02File is not ratedRoutines
A collection of different routines maybe usefull for something.
prac.zip6k01-03-02File is not ratedPrac
Various testing and practice programs I have written. Maybe one of these will help you or spark an idea for you.
font.zip6k01-03-02File is not ratedFont
A collection of different font installation programs.
scancode.zip1k01-03-02File is not ratedScanCode
Waits for a keypress and then prints the Scan Code (Hex equivalent) of that keypress.
menumake.zip5k00-11-26File is not ratedMenu Maker
This makes a menu that uses the up and down arrows to move, and uses an arrow to point at the item you want.
zcondown.zip1k00-11-23File is not ratedContrast Down
Decrease Contrast on ti86
zcontup.asm1k00-11-23File is not ratedContrast Up
Routine for Increasing the Screen Contrast
circle.zip3k00-11-09File is not ratedSuperCircle Routine
Routine draws any filled circle. It's quite optimized. (Uses a line routine to draw)
writeback.asm1k00-08-20File is not ratedWriteback Routine
A highly optimized writeback routine for saving data such as high scores and saved games.
crtstrng.asm1k00-08-11File is not ratedCrtStrng
According to the Guide: [This] is a fast String Variable Type creation tool easy enough for everyone to use.
stringrts.asm1k00-07-22File is not ratedString Routines
Several string routines for use in asm. Substr (like sub() in BASIC), strlen (find the # of chars in a string), and strpixels (find long a string is in pixels as if it were printed in the small font). Updated to fix _substr and make it smaller.
op1equpi.zip1k00-07-14File is not ratedOp1 Equals Pi
The value of Op1 equals Pi (3.1415...)
disphist.asm2k00-07-13File is not ratedDisplay History Entry
The source shows you how to display a history entry on the screen in the variable width font
ascr86.h3k00-06-30File is not ratedEven More Advanced Sprite Clipping Routine
Nemesis' sprite routine featuring non-aligned, variable-sized (1x1-8x255) and horizontally CLIPPED!!! Just 72 bytes and fast enough.
fvputs.zip2k00-06-27File is not ratedFormatted Vputs
Allows bold, italic, underline formatting. Some grayscale support. May contain strange opcodes.
spectips.zip10k00-06-23File is not ratedIPS Patch for ZX48.ROM v0.25a
This patch, applied to a Sinclair Spectrum ROM, allows it to be runned instead of the TI-86 ROM in emulators like TI86EMU. Check webpage for more details.
scroll.zip10k00-05-15File is not ratedTI-86 Game Engine
This is a very complex and fast scrolling engine. Working, but UNFINISHED!!! Demo program included.
findpixel86.asm1k00-05-04File is not ratedFindpixel
Smallest Findpixel available (24 bytes)... Now works even if bit 6 of hl is set!
fastmap.asm5k00-04-22File is not ratedFastMap Routine
a fast tilemap routine compatible with most sprite routines
drawspr.asm5k00-03-18File is not rated8xYx4 Sprite Drawing Routine
One of the fastest routine to draw 8xY 4colors sprites (for 8x8x4,
jmmr.zip18k00-02-19File is not ratedJM's Memory Resident Loader
This is a loader that will place a small program (1KB or less) into the top of page 1. This allows you to write a program using the TI-OS's built in program writer to write a machine language. This algorithm can also be used for library routines in conjuction with an Interrupt.
fastclear.asm1k00-02-19File is not ratedFastClear routine
Clears the screen faster than call _clrLCD
cnc86.zip89k00-02-19File is not ratedC&C 86 Engine
Source code to the map scrolling and mouse interface for a C&C type game.
forloop.zip1k00-01-02File is not ratedFOR Loop
This is a routine that allows you to use the FOR repitition structure in Assembly Language. This can easily be used on any calculator because there are no specific TI-86 ROM Calls
while.zip1k00-01-02File is not ratedWhile Loop Routine
A routine that alows you to use the WHILE repitition structure in Assembly Language.
86usm.zip1k00-01-01File is not ratedUnsigned Multiplier
This is an unsigned multiply routinw for the TI-86. I believe it's the fastest routine possible, but obviously that's easy for such a small program. I'm sure this has been done before at least as good, but if you need a multiplier you might want to use this one.
vfsprite.asm7k99-11-21File is not ratedVery Fast Customizeable Sprite Routine
vfmult.asm5k99-11-21File is not ratedVery Fast 8-bit Multiplication Library
textin.asm2k99-11-05File is not ratedTextIn
Text input routine that accepts numbers and upper/lowercase letters.
dobarmenu.asm4k99-11-05File is not ratedDoBarMenu
Table-driven menu engine produces bar menus similar to BASIC's menu() command.
centered.asm1k99-07-08File is not ratedCentered Text Routines
Routines for displaying centered text in the large and small font.
sprite.asm7k99-06-21File is not ratedSprite Routines
PutSprite(clip), GraySprite(clip)
clock.asm4k99-06-15File is not ratedCTime User Code
CTime code for other programs to display a clock while CTime is running.
strtonum.asm9k99-06-13File is not ratedStringToNumeric Routine
Converts a string to a real number.
findpixel-95.asm1k99-03-04File is not rated91/95 T-state FindPixel Routine
rannum.asm1k99-03-04File is not ratedRandom Number Routine
mult.asm3k99-02-02File is not ratedFast 8-bit Signed Multiplication Routines
3drot.asm4k99-02-02File is not rated3D Rotation and Misc. 3D Math Routines
soft.asm1k99-01-02File is not ratedSoft Scroll 86
getdirec.asm1k98-11-22File is not ratedGet Direction Routine
searchcompare.asm7k98-11-15File is not ratedSearch and Compare Routines
Various routines for searching and comparing.
menuroutine.asm4k98-10-23File is not ratedMenu Bar Routine
anim.asm4k98-10-05File is not ratedAnimation Controller
sprmove.asm12k98-09-07File is not ratedSprite Moving Demo
Demos basic game coding concepts
alinsprt.asm1k98-09-05File is not ratedAlignSprite Routine
Display an aligned sprite.
fastsprt.asm2k98-09-05File is not ratedFastSprite Routine
Fastsprite routine
rpmult.asm1k98-08-28File is not ratedRussian Peasants' Algorithm
math32.inc8k98-08-28File is not rated32-bit Math Routines for the Z80
atof.asm2k98-08-10File is not ratedString to Floating Point Number Conversion Routine
fasterfp.asm1k98-08-10File is not ratedFaster FindPixel Routine
fp.asm1k98-08-10File is not ratedFast FindPixel Routine
mul8x8.asm1k98-08-10File is not ratedFast 8-bit Multiply Routine
triglite.inc17k98-08-01File is not ratedTrig Tables LITE v2.1
Header file for sine and cosine values. Compiles half the size of fat version, but twice as accurate.
trigfat.inc24k98-08-01File is not ratedTrig Tables FAT v2.1
Header file for sine and cosine values.
findpixel.asm2k98-07-27File is not ratedFind Pixel Routines
Two routines, one for speed and one for size.
fline.asm2k98-07-26File is not ratedFastLine v1.0
Fast line routine. Uses Bresenham's Line Algorithm.
sudsy2.asm1k98-07-26File is not ratedGeneral Sound Algorithm
General routine for link port sound.
strprmpt.asm1k98-07-26File is not ratedString Input
Routine to input a string.
grsprite.asm1k98-07-26File is not ratedGrayScale PutSprite Routine
PutSprite routine modified for grayscale.
gray2.asm1k98-07-26File is not ratedGrayScale Routine
Four shaded grayscale routine. Super fast and with less flicker than any other routine.
ptsprite.asm1k98-07-26File is not ratedPutSprite
Fast and small PutSprite routine.
dis.asm39k98-03-26File is not ratedTI-86 Z80 Disassembler
ascr.h4k98-01-16File is not ratedAdvanced Sprite Clipping Routines
inverse.asm1k97-12-03File is not ratedInverse Routine
Inverses the entire screen. Very fast

  Copyright © 1996-2012, the ticalc.org project. All rights reserved. | Contact Us | Disclaimer