!!!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 ------------------------------ }}}