Author: Carsten Strotmann
Assembler: Bibo Assembler
Published: 08.07.91
00010 .LI OFF 00020 ****************************** 00030 * * 00040 * PROGRAMM:BOOT PROGRAMM LOAD* 00050 * AUTOR :CARSTEN STROTMANN * 00060 * DATUM :08.07.91 * 00070 * VERSION :01 * 00080 * FUER :PSC * 00090 * * 00100 ****************************** 00110 ; 00120 BOTSEC = 4 00130 BOOT = $9 00140 DOSVEC = $A 00150 DOSINI = $C 00160 RTCLOK = $12 00170 SDLSTL = $230 00180 COLOR0 = $2C4 00190 COLOR1 = $2C5 00200 COLOR2 = $2C6 00210 COLOR3 = $2C7 00220 COLOR4 = $2C8 00230 DDEVIC = $300 00240 DUNIT = $301 00250 DCMND = $302 00260 DSTAT = $303 00270 DBUF = $304 00280 DTIMLO = $306 00290 DUBUSE = $307 00300 DBYT = $308 00310 DAUX = $30A 00320 ; 00330 PORTB = $D301 00340 SIOV = $E459 00350 ; 00360 .OR $9C00 00370 .TA $4000 00380 ; 00390 ------------------------------ 00400 ; 00410 DSKBOOT 00420 .HX 00 00430 .DA #BOTSEC 00440 .DA DSKBOOT 00450 .DA INIT 00460 ; 00470 BOTCON 00480 CLC 00490 RTS 00500 ------------------------------ 00510 PRGADR .DA $0F80 00520 FIRSEC .DA $0006 00530 CNTSEC .DA $00FF 00540 PRGJMP .DA $8844 00550 ------------------------------ 00560 DL .HX 707070707070707070 00570 .HX 42 00580 TXTADR .DA TXT 00590 .HX 60066002000200020002 00600 .HX 41 00610 .DA DL 00620 ------------------------------ 00630 TXT .AT " NOW LOADING... " 00640 .AT " my programm " 00650 .AT " (c) my company " 00660 .AT " Diskversion 2003 by my other company " 00670 .AT "---------------------------------------- " 00680 .AT " Sectors to load : " 00690 CNT .AT "255 " 00700 ------------------------------ 00710 INIT 00720 ; LDA #START 00730 ; STA DOSVEC 00740 ; LDA /START 00750 ; STA DOSVEC+1 00760 ; RTS 00770 ; 00780 START 00790 LDA PORTB 00800 ORA #1 00810 STA PORTB 00820 ; 00830 LDA #DL 00840 STA SDLSTL 00850 LDA /DL 00860 STA SDLSTL+1 00870 ; 00880 LDA #0 00890 STA COLOR4 00900 LDA #4 00910 STA COLOR2 00920 LDA #10 00930 STA COLOR1 00940 LDA #90 00950 STA COLOR0 00960 ; 00970 WAITVBI 00980 LDA RTCLOK+2 00990 .1 CMP RTCLOK+2 01000 BEQ .1 01010 ; 01020 LDA #$31 01030 STA DDEVIC 01040 LDA #$01 01050 STA DUNIT 01060 LDA #$52 01070 STA DCMND 01080 LDA #7 01090 STA DTIMLO 01100 LDA #$80 01110 STA DBYT 01120 LDA #0 01130 STA DUBUSE 01140 STA DBYT+1 01150 LDA PRGADR 01160 STA DBUF 01170 LDA PRGADR+1 01180 STA DBUF+1 01190 ; 01200 LDA FIRSEC 01210 STA DAUX 01220 LDA FIRSEC+1 01230 STA DAUX+1 01240 ; 01250 SIOJMP LDA #$40 01260 STA DSTAT 01270 JSR SIOV 01280 ; 01290 INCADR LDA DBUF 01300 CLC 01310 ADC #$80 01320 STA DBUF 01330 BCC INCSEC 01340 INC DBUF+1 01350 INCSEC 01360 INC DAUX 01370 LDA DAUX 01380 BNE DECTXT 01390 INC DAUX+1 01400 ; 01410 DECTXT 01420 DEC CNT+2 01430 LDA CNT+2 01440 CMP #$0F 01450 BNE .1 01460 LDA #$19 01470 STA CNT+2 01480 DEC CNT+1 01490 .1 01500 LDA CNT+1 01510 CMP #$0F 01520 BNE .2 01530 LDA #$19 01540 STA CNT+1 01550 DEC CNT 01560 .2 01570 NOP 01580 DECCNT 01590 DEC CNTSEC 01600 LDA CNTSEC 01610 BNE NEWSEC 01620 DEC CNTSEC+1 01630 NEWSEC 01640 LDA CNTSEC+1 01650 BPL SIOJMP 01660 ; 01670 LDA PRGJMP+1 01680 PHA 01690 LDA PRGJMP 01700 PHA 01710 RTS 01720 ------------------------------