vc-3_system_interrupt_table
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| vc-3_system_interrupt_table [2026/01/21 01:53] – appledog | vc-3_system_interrupt_table [2026/01/22 22:19] (current) – appledog | ||
|---|---|---|---|
| Line 46: | Line 46: | ||
| .equ PATB_RANDSEED | .equ PATB_RANDSEED | ||
| .equ PATB_STATUS | .equ PATB_STATUS | ||
| - | ; ; Bit 0: Running (1) / Stopped (0) | + | |
| - | ; | + | ; Bit 1: Error flag |
| - | ; | + | ; Bit 2: Break flag |
| + | .equ PATB_PROGRAM_BASE | ||
| + | .equ PATB_PROGRAM_END | ||
| === Function Dispatch | === Function Dispatch | ||
| - | ; ============================================================================ | ||
| - | ; INT 05h - PALO ALTO TINY BASIC SYSTEM | ||
| - | ; Complete implementation for PATB IL interpreter | ||
| - | ; ============================================================================ | ||
| - | ; Function dispatch via AH register: | ||
| - | ; | ||
| ; === EXECUTION CONTROL (AH=$00-$0F) === | ; === EXECUTION CONTROL (AH=$00-$0F) === | ||
| ; | ; | ||
| Line 81: | Line 77: | ||
| ; | ; | ||
| ; === PROGRAM LINE MANAGEMENT (AH=$30-$3F) === | ; === PROGRAM LINE MANAGEMENT (AH=$30-$3F) === | ||
| - | ; AH=$30: LINE_FIND | + | |
| - | ; AH=$31: LINE_NEXT | + | |
| - | ; AH=$32: LINE_INSERT | + | ; $31: LINE_NEXT |
| - | ; AH=$33: LINE_DELETE | + | ; |
| - | ; AH=$34: LINE_FIRST | + | ; $33: LINE_PREV |
| - | ; AH=$35: LINE_CLEAR_ALL - Clear entire program (NEW) | + | ; $36-$39: Modify |
| - | ; AH=$36: LINE_COUNT | + | ; $36: LINE_INSERT |
| + | ; $37: LINE_DELETE | ||
| + | ; $38: LINE_REMOVE_SPACE | ||
| + | ; $39: LINE_MAKE_SPACE | ||
| + | ; $3A-$3F: Utility | ||
| + | ; $3A: LINE_FIRST | ||
| + | ; $3B: LINE_CLEAR_ALL | ||
| + | ; $3C: LINE_COUNT | ||
| + | ; $3F: PROGRAM_END | ||
| ; | ; | ||
| ; === GOSUB/ | ; === GOSUB/ | ||
| Line 110: | Line 114: | ||
| ; | ; | ||
| ; | ; | ||
| - | ; === STRING/ | + | ; === STRING/ |
| ; | ; | ||
| ; | ; | ||
| - | ; | + | ; |
| ; | ; | ||
| ; | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| + | ; | ||
| ; | ; | ||
| - | ; === ARITHMETIC/ | + | ; === ARITHMETIC/ |
| - | ; AH=$80: MATH_ADD | + | ; AH=$90: MATH_ADD |
| - | ; AH=$81: MATH_SUB | + | ; AH=$91: MATH_SUB |
| - | ; AH=$82: MATH_MUL | + | ; AH=$92: MATH_MUL |
| - | ; AH=$83: MATH_DIV | + | ; AH=$93: MATH_DIV |
| - | ; AH=$84: MATH_NEG | + | ; AH=$94: MATH_NEG |
| - | ; AH=$85: MATH_RND | + | ; AH=$95: MATH_RND |
| + | ; | ||
| ; | ; | ||
| - | ; === COMPARISON HELPERS (AH=$90-$9F) === | + | ; === COMPARISON HELPERS (AH=$A0-$AF) === |
| - | ; AH=$90: CMP_EQ | + | ; AH=$A0: CMP_EQ |
| - | ; AH=$91: CMP_NE | + | ; AH=$A1: CMP_NE |
| - | ; AH=$92: CMP_LT | + | ; AH=$A2: CMP_LT |
| - | ; AH=$93: CMP_GT | + | ; AH=$A3: CMP_GT |
| - | ; AH=$94: CMP_LE | + | ; AH=$A4: CMP_LE |
| - | ; AH=$95: CMP_GE | + | ; AH=$A5: CMP_GE |
| + | ; | ||
| ; | ; | ||
| - | ; === ERROR HANDLING (AH=$A0-$AF) === | + | ; === ERROR HANDLING (AH=$B0-$BF) === |
| - | ; AH=$A0: ERROR_SET | + | ; AH=$B0: ERROR_SET |
| - | ; AH=$A1: ERROR_GET | + | ; AH=$B1: ERROR_GET |
| - | ; AH=$A2: ERROR_CLEAR | + | ; AH=$B2: ERROR_CLEAR |
| - | ; AH=$A3: ERROR_PRINT | + | ; AH=$B3: ERROR_PRINT |
| + | ; | ||
| ; | ; | ||
| ; === IL INTERPRETER CORE (AH=$F0-$FF) === | ; === IL INTERPRETER CORE (AH=$F0-$FF) === | ||
vc-3_system_interrupt_table.1768960411.txt.gz · Last modified: by appledog
