Infoline for BASIC and ACTION!#

General Information

Author: Carsten Strotmann
Language: ACTION!
Compiler/Interpreter: ACTION!

Infoline for ACTION!

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(info) (ACTION!), Infoline/infoline_basic.atr(info) (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 ------------------------------