TI-95

The TI-95 can be programmed natively with either Keystroke Programming language 
(KSL) or Assembly language. Both languages are very similar to each other.

Why use KSL Assembly language?

The assemble function represented by the ASM key increases the program execution
speed of the TI-95 by converting label addresses used by the program into 
absolute addresses. This facilitates a faster execution of the assembled program 
since the TI-95 transfers control to the absolute address immediately instead of 
searching for a label before transferring control. In an assembled program, all 
the GTL, SBL, and DFN instructions are converted to GTO, SBR, and DFA 
instructions respectively


Instruction Conversion:
GTL (Go To Label)      becomes GTO (Go To Address).
SBL (Subroutine Label) becomes SBR (Subroutine).
DFN (Define)           becomes DFA (Define Address).

Instructions that Remain the same:
LBL (Label) remains LBL
HLT (Halt)  remains HLT
STO (Store) remains STO

Example comparison code:
Keystroke programming language (KSL) KSL Assembly language
0000 LBL XX CLR 20
0006 STO 020
0009 LBL YY INC 020 39
0017 IF< 020 GTL ZZ CLR
0024 STO IND 020 GTL YY 
0031 LBL ZZ CLR STO 020 
0038 DFN F1:ENT@XX HLT
0000 LBL XX CLR 20
0006 STO 020
0009 LBL YY INC 020 39
0017 IF< 020 GTO 0034 CLR
0024 STO IND 020 GTO 0012 
0031 LBL ZZ CLR STO 020 
0038 DFA F1:ENT@0003 HLT
Pressing INV ASM disassembles the program, restoring references to labels in the program. Please note: If your program needs to be edited, it should first be disassembled to prevent the TI-95 from transferring control to an incorrect address generated by an increase or a decrease in the number of programming steps after edit. Breaking into programming REAL Assembler - more advanced TSM7000 Assembler Press Function Press F3 for SYS Press F1 for YES