Tajemnice ATARI

6 STRONA

    Dziś program BASIC TRACKER autorstwa Rafała Martyniuka ze Szczecina.

   Program ten służy do śledzenia wykonywania programów w Basicu i umożliwia łatwe wykrycie błędu. W górnej części ekranu po daje numer wiersza, który jest aktualnie wykonywany przez interpreter Basica. Program po przepisaniu należy nagrać na taśmę lub dyskietkę instrukcją LIST "C:" lub LIST "D:TRACKER.LST." Teraz możemy doczy tać TRACKER'a do dowolnego programu instrukcją ENTER "C:" lub ENTER "D:TRACKER.LST" i uruchomić instrukcją GOTO 38000. Program wyłącza się klawiszem RESET.

32000 RESTORE 32010:FOR ADDR=1536 TO 1
697:READ DTA:POKE ADDR,DTA:NEXT ADDR:D
TA=USR(1536)
32010 DATA 104,173,48,2,56,233,2,133,0
,173,49,2,233,0,133,1,160,3,185,138,6,
145,0,136,16,248,165,20
32020 DATA 197,20,240,252,165,0,141,48
,2,165,1,141,49,2,169,7,160,51,162,6,7
6,92,228,160,43,185,211,0
32030 DATA 153,161,6,136,208,247,160,1
1,177,243,153,206,6,136,16,248,165,160
,133,212,165,161,133,213,32,170,217,32
32040 DATA 230,216,160,255,200,177,243
,41,247,56,233,32,153,152,6,177,243,16
,241,200,169,0,153,152,6,200,192,6
32050 DATA 208,248,160,43,185,161,6,15
3,211,0,136,208,247,160,11,185,206,6,1
45,243,136,16,248,76,98,228,112,70
32060 DATA 142,6,0,0,0,0,44,41,46,41,3
3,13,0,0,0,0,0,0,0,0,0,0

*    Basic Tracker

ADR      equ 0
FASC     equ $D8E6
IFP      equ $D9AA
FLDOR    equ $DD89
FSTOR    equ $DDA7
INBUFF   equ $F3
FRO      equ $D4
CLNN     equ $A0

     opt %100101


     org $0600

*- pobierz parametr
     PLA

*- ustal dowy DL
     LDA 560
     SEC
     SBC <2
     STA ADR
     LDA 561
     SBC >2
     STA ADR+1

     LDY #3
     LDA MDLIS,Y
     STA (ADR),Y
     DEY
     BPL *-6

*- poczekaj na
*- przerwanie
     LDA 20
     CMP 20
     BEQ *-2

     LDA ADR
     STA 560
     LDA ADR+1
     STA 561

*- ustaw przerwanie
     LDA #7
     LDY VBL
     JMP $E45C

*- procedura
*- przerwania
VBL  LDY #43
PS   LDA FRO-1,Y
     STA BUFOR-1,Y
     DEY
     BNE PS

     LDY #11
PI   LDA (INBUFF),Y
     STA BUFOR+44,Y
     DEY
     BPL PI
     LDA CLNN
     STA FRO
     LDA CLNN+1
     STA FRO+1
     JSR IFP
     JSR FASC
     LDY #$FF
LOOP INY
     LDA (INBUFF),Y
     AND #$7F
     SEC
     SBC #32
     STA NAPIS+10,Y
     LDA (INBUFF),Y
     BPL LOOP
     INY
     LDA #0
ZER  STA NAPIS+10,Y
     INY
     CPY #6
     BNE ZER
     LDY #43
OS   LDA BUFOR-1,Y
     STA FRO-1,Y
     DEY
     BNE OS
     LDY #11
OI   LDA BUFOR+44,Y
     STA (INBUFF),Y
     DEY
     BPL OI
     JMP $E462

*- dane DL
MDLIS DTA B(112),B(70)
      DTA A(NAPIS)

NAPIS DTA D'    LINIA'
     DTA D'-          '

BUFOR EQU *




Powrót na start | Powrót do spisu treści | Powrót na stronę główną

Pixel 2001