!!!Infoline for BASIC and ACTION!
General Information
Author: Carsten Strotmann \\
Language: ACTION! \\
Compiler/Interpreter: ACTION! \\
Infoline for ACTION!
[{Image src='infoline2.png' width='..' height='..' align='left|center|right' style='..' class='..' }]
Load INFOLINE.COM as Autorun.sys before entering the ACTION! IDE
This is a little utility showing some information useful during ACTION! development.
* ATARI RTClock Timer Ticks
* Shift Key Status
* X/Y Screen Cursor Coordinates
* ATASCII Key-Code of last pressed key
* Interal Key-Code of last pressed key
* ACTION! Base Adress (ORG)
* ACTION! Program Code Size
* Last Sector IO Number
Disk Image (ATR) with source and binary attached: [Infoline/infoline.atr] (ACTION!), [Infoline/infoline_basic.atr] (BASIC)
1.1.1 Source Code (BIBO Assembler)
{{{
00010 .LI OFF
00020 ***************************
00030 * INFOZEILE FUER ACTION! *
00040 ***************************
00050 ;
00060 CASINI = $02
00070 BOOT = $09
00080 CONSOL = $D01F
00090 SDLST = $0230
00100 ROWCRS = $54
00110 COLCRS = $55
00120 SHFLOK = $2BE
00130 INVFLG = $2B6
00140 CHASCI = $2FB
00150 CH = $2FC
00160 BZAHL = $238
00170 CODEBASE = $0E
00180 CODESIZE = $493
00190 DAUX1 = $30A
00200 RTCLOK = $12
00210 ATTRAC = $4D
00220 COL2 = 710
00230 ;
00240 ; OS ADRESSEN
00250 ;
00260 SETVBV = $E45C
00270 XITVBV = $E462
00280 ;
00290 ;
00300 .OF D:INFOA.COM
00310 .OR $400
00320 ;
00330 UHRADR .HX 00000A00000A0000
00340 DL .HX 707042
00350 .DA TEXT
00360 .HX 000201
00370 DLEND .HX 0000
00380 CHARTAB .HX 61
00390 .HX 21
00400 .HX 40
00410 .HX 00
00420 TEXT .AT "TM:00000| |X=000|Y=000|ASC:000|INT:000"
00430 .AT "BASE:00000|SIZE:00000|SECTOR:00000| PSC "
00440 UNRUHE .HX 00
00450 DECLO .HX 10E8640A
00460 DECHI .HX 27030000
00470 ZIFFER .AT "00000"
00480 CHHLP .HX 00
00490 ;
00500 ;
00510 .OR $600
00520 ;
00530 ;
00540 TOPLINE
00550 LDA #TOPLINE
00560 STA CASINI
00570 LDA /TOPLINE
00580 STA CASINI+1
00590 ;
00600 LDA BOOT
00610 ORA #$02
00620 STA BOOT
00630 ;
00640 LDA #$04
00650 BIT CONSOL
00660 BNE SETVBI
00670 RTS
00680 ;
00690 SETVBI
00700 LDY #START
00710 LDX /START
00720 LDA #$07
00730 JSR SETVBV
00740 RTS
00750 ;
00760 START LDA SDLST+1
00770 CMP /DL
00780 BEQ CURSOR
00790 LDA SDLST
00800 CLC
00810 ADC #$03
00820 STA DLEND
00830 LDA SDLST+1
00840 ADC #$00
00850 STA DLEND+1
00860 LDA #DL
00870 STA SDLST
00880 LDA /DL
00890 STA SDLST+1
00900 ;
00910 CURSOR LDA ROWCRS
00920 LDX #00
00930 JSR BINDEZ
00940 ;
00950 LDX #3
00960 YDSPL LDY #$17
00970 JSR DSPL
00980 ;
00990 LDA COLCRS
01000 LDX COLCRS+1
01010 JSR BINDEZ
01020 ;
01030 XDSPL
01040 LDX #3
01050 LDY #$11
01060 JSR DSPL
01070 KEY
01080 LDA SHFLOK
01090 CLC
01100 ROL
01110 ROL
01120 ROL
01130 TAX
01140 LDA CHARTAB,X
01150 ORA INVFLG
01160 EOR #$80
01170 STA TEXT+$0A
01180 ;
01190 LDA CHASCI
01200 LDX #0
01210 JSR BINDEZ
01220 ;
01230 CHDSPL
01240 LDX #3
01250 LDY #$1F
01260 JSR DSPL
01270 ;
01280 LDA CH
01290 CMP #$FF
01300 BEQ .1
01310 STA CHHLP
01320 .1
01330 LDA CHHLP
01340 LDX #00
01350 JSR BINDEZ
01360 CH2DSPL
01370 LDX #3
01380 LDY #$27
01390 JSR DSPL
01400 ;
01410 LDX CODEBASE+1
01420 LDA CODEBASE
01430 JSR BINDEZ
01440 BASE
01450 LDX #5
01460 LDY #$31
01470 JSR DSPL2
01480 ;
01490 LDX CODESIZE+1
01500 LDA CODESIZE
01510 JSR BINDEZ
01520 SIZE
01530 LDX #5
01540 LDY #$3C
01550 JSR DSPL2
01560 ;
01570 LDX DAUX1+1
01580 LDA DAUX1
01590 JSR BINDEZ
01600 SECTOR
01610 LDX #5
01620 LDY #$49
01630 JSR DSPL2
01640 ;
01650 LDA RTCLOK+1
01660 LDX RTCLOK
01670 JSR BINDEZ
01680 ;
01690 LDX #5
01700 LDY #7
01710 JSR DSPL2
01720 ;
01730 LDA #0
01740 STA COL2
01750 STA ATTRAC
01760 ;
01770 JMP XITVBV
01780 ------------------------------
01790 .OR $100
01800 BINDEZ
01810 STA BZAHL
01820 STX BZAHL+1
01830 LDX #4
01840 VORBES
01850 LDA #$10
01860 STA ZIFFER,X
01870 DEX
01880 BPL VORBES
01890 LDX #0
01900 STELLE
01910 LDA BZAHL+1
01920 CMP DECHI,X
01930 BNE TSTHI
01940 LDA BZAHL
01950 CMP DECLO,X
01960 TSTHI
01970 BCC KLEINER
01980 SEC
01990 LDA BZAHL
02000 SBC DECLO,X
02010 STA BZAHL
02020 LDA BZAHL+1
02030 SBC DECHI,X
02040 STA BZAHL+1
02050 INC ZIFFER,X
02060 JMP STELLE
02070 KLEINER
02080 INX
02090 CPX #4
02100 BNE STELLE
02110 CLC
02120 LDA BZAHL
02130 ADC ZIFFER+4
02140 STA ZIFFER+4
02150 RTS
02160 ------------------------------
02170 DSPL
02180 LDA ZIFFER+1,X
02190 ORA #$80
02200 STA TEXT,Y
02210 DEY
02220 DEX
02230 BNE DSPL
02240 RTS
02250 ------------------------------
02260 DSPL2
02270 LDA ZIFFER-1,X
02280 ORA #$80
02290 STA TEXT,Y
02300 DEY
02310 DEX
02320 BNE DSPL2
02330 RTS
02340 ------------------------------
02350 .OR $2E0
02360 .DA TOPLINE
02370 ------------------------------
}}}