====== MODBOOT ====== Header for : Boot Module size: $189 #393 Module CRC : $B1FA65 (Good) Hdr parity : $70 Edition : $00 #0 Ty/La At/Rv: $C1 $81 System mod, 6809 Obj, re-ent, R/O ===== CODE ===== * Disassembly by Os9disasm of modboot mod L0189,L000d,$c1,$81,L0012,D0005 * OS-9 system function equates F$SchBit equ $12 F$SRqMem equ $28 * class D external label equates D0016 equ $0016 D0018 equ $0018 D0020 equ $0020 D0022 equ $0022 Dffff equ $ffff * OS9 data area definitions rmb 5 D0005 equ . L000d fcb $42 clr 15,s andb >$004f L0012 equ *-1 ldb #5 L0015 pshs a decb bne L0015 tfr s,u ldx #-192 leax 8,x lda #$d0 sta ,x lbsr L017f lda ,x lda #255 sta 4,u leax L0117,pcr stx $010a lda #$7e sta $0109 lda #8 sta -192 ldd #$c350 L0042 nop nop subd #1 bne L0042 pshs d,x,u clra clrb ldy #1 ldx D0020 ldu D0022 os9 F$SchBit bcs L009b exg a,b ldu 4,s std 2,u clrb ldx #0 bsr L00b9 bcs L009b ldd D0018,y std ,s os9 F$SRqMem bcs L009b stu 2,s ldu 4,s ldx 2,s stx 2,u ldx D0016,y ldd D0018,y beq L0094 L0082 pshs d,x clrb bsr L00b9 bcs L0099 puls d,x inc 2,u leax 1,x subd #$0100 bhi L0082 L0094 clrb puls d bra L009d L0099 leas 4,s L009b leas 2,s L009d puls x,u leas 5,s rts L00a2 clr ,u clr 4,u lda #5 L00a8 ldb #$43 pshs a lbsr L016a puls a deca bne L00a8 ldb #3 lbra L016a L00b9 lda #$91 cmpx #0 bne L00d1 bsr L00d1 bcs L00c8 ldy 2,u clrb L00c8 rts L00c9 bcc L00d1 pshs d,x bsr L00a2 puls d,x L00d1 pshs d,x bsr L00dc puls d,x bcc L00c8 lsra bne L00c9 L00dc bsr L0128 bcs L00c8 ldx 2,u orcc #$50 pshs y ldy #-1 ldb #$80 stb -184 ldb #$39 stb -192 lbsr L017f ldb #$b9 lda #2 L00fb bita -184 bne L010d leay Dffff,y bne L00fb lda #9 sta -192 puls y bra L0124 L010d lda -181 sta ,x+ stb -192 bra L010d L0117 leas 12,s puls y ldb -184 bitb #4 lbeq L0164 L0124 comb ldb #$f4 rts L0128 clr ,u tfr x,d cmpd #0 beq L0141 clr ,-s bra L0138 L0136 inc ,s L0138 subd #$0012 bcc L0136 addb #$12 puls a L0141 incb stb -182 ldb 4,u stb -183 cmpa 4,u beq L0162 sta 4,u sta -181 ldb #$13 bsr L016a pshs x ldx #$222e L015c leax -1,x bne L015c puls x L0162 clrb rts L0164 bitb #$98 bne L0124 clrb rts L016a bsr L017d L016c ldb -184 bitb #1 bne L016c rts L0174 lda #9 sta -192 stb -184 rts L017d bsr L0174 L017f lbsr L0182 L0182 lbsr L0185 L0185 rts emod L0189 equ * end ===== RTS ===== Return to [[:OS-9:]] or [[:Top:]]