General Information
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 ------------------------------