Add firmware WIP.

This commit is contained in:
Christopher RYU
2023-07-10 05:59:05 +09:00
parent 42cef0320e
commit 98fe9fcda7
18 changed files with 257 additions and 0 deletions
BIN
View File
Binary file not shown.
+146
View File
@@ -0,0 +1,146 @@
; da65 V2.11.0 - (C) Copyright 2000-2005, Ullrich von Bassewitz
; Created: 2022-01-26 21:00:18
; Input file: xaa
; Page: 1
.setcpu "6502"
MON_WAIT = $FCA8
GETLNZ = $FD67
BELL = $FF3A
IORTS = $FF58
GETNUM = $FFA7
* = $c600
lda #$A3
sta $33
LC604: jsr BELL
LC607: jsr GETLNZ
lda #$00
sta $F2
LC60E: sta $C010
sta $F3
ldy $F2
jsr GETNUM
sty $F2
cmp #$C6
beq LC607
cmp #$EC
beq LC64E
cmp #$F0
beq LC676
cmp #$F3
beq LC657
ldy #$7F
cmp #$06
beq LC67C
cmp #$EB
beq LC641
ldx #$06
stx $F3
cmp #$F1
beq LC67C
cmp #$EA
bne LC604
brk
LC641: lda #$50
sta $FC
txa
adc #$00
sta $F3
lda #$00
beq LC651
LC64E: lda $3E
asl a
LC651: sta $F0
ldy #$FF
bne LC67C
LC657: lda $3E
asl a
sta $F1
ldy #$00
beq LC67C
LC660: lda #$50
jsr MON_WAIT
sta $C088,x
ldy $3E
LC66A: jsr MON_WAIT
dey
bpl LC66A
bmi LC68E
LC672: lda #$00
beq LC60E
LC676: lda $3E
sta $FF
ldy #$0F
LC67C: sty $09
jsr IORTS
tsx
lda $0100,x
asl a
asl a
asl a
asl a
sta $FD
adc $F3
tax
LC68E: sta $C089,x
lda $09
beq LC6BA
bmi LC6BA
asl a
bmi LC6AC
sta $C08F,x
LC69D: lda $09
asl a
bmi LC660
nop
nop
lda $FF
sta $C08D,x
cmp $C08C,x
LC6AC: lda $C000
eor #$9B
bne LC69D
ldx $FD
sta $C08E,x
LC6B8: beq LC672
LC6BA: ldx $FD
sta $C089,x
LC6BF: ldy $FC
LC6C1: cpy $F0
bne LC6E3
lda $F0
sta $FC
lda $09
bne LC672
lda $F0
ldy $F1
sta $F1
sty $F0
lda $C000
eor #$9B
beq LC6B8
lda #$73
jsr MON_WAIT
bcs LC6BF
LC6E3: bcs LC6E7
iny
iny
LC6E7: dey
tya
and #$03
asl a
ora $FD
tax
lsr a
lsr a
sta $C081,x
nop
nop
lda #$56
jsr MON_WAIT
sta $C080,x
bcs LC6C1
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
Binary file not shown.
+97
View File
@@ -0,0 +1,97 @@
; Micro-SCI Floppy Drive Controller info disassembly
PRINTVEC = $08
PRBL2 = $F94A
HOME = $FC58
COUT = $FDED
* = $c600
ldx #$20 ; controller signature
ldy #$00
ldx #$03
stx $3C
jsr HOME ; clear display, home cursor
tsx
lda $0100,x ; current address (#$c6 for slot 6)
sta PRINTVEC+1
lda #0
sta PRINTVEC
ldy #<info ; offset of data begin
LC617 lda (PRINTVEC),y
LC619 bmi doit
tax
jsr PRBL2
beq loop1
doit jsr COUT
loop1 iny
bne LC617
LC627 beq LC627
info .byte $8d, $bc, $ad, $ad, $cb, $c5, $d9, $c2
.byte $cf, $c1, $d2, $c4
#ifdef USCI
; ROM checksum 5ddcbbf1
; <--KEYBOARD U-SCI REAR-->
;
; ---------JUMPER--------
; ! ! !
; V V V
;
; ### ! ! ! ### ! ! ! ###
; ### ! ! ! ### ! ! ! ###
; ### ! ! ! ### ! ! ! ###
; ### ! ! ! ### ! ! ! ###
; XXXXXXX XXXXXXX XXXXXXX
; 3.2 INFO 3.3&PASCAL
.byte $08, $d5, $ad, $d3
.byte $c3, $c9, $08, $d2, $c5, $c1, $d2, $ad
.byte $ad, $be, $8d, $8d, $08, $ad, $ad, $ad
.byte $ad, $ad, $ad, $ad, $ad, $ad, $ca, $d5
.byte $cd, $d0, $c5, $d2, $ad, $ad
#else
; ROM checksum 5dfc32ca
; <--KEYBOARD ACE 1000 REAR-->
;
; ------JUMPER------
; ! ! !
; V V V
;
; ### ! ! ! ### ! ! ! ###
; ### ! ! ! ### ! ! ! ###
; ### ! ! ! ### ! ! ! ###
; ### ! ! ! ### ! ! ! ###
; XXXXXXX XXXXXXX XXXXXXX
; 3.2 INFO 3.3&PASCAL
.byte $06, $c1, $c3, $c5
.byte $a0, $b1, $b0, $b0, $b0, $06, $d2, $c5
.byte $c1, $d2, $ad, $ad, $be, $8d, $8d, $07
.byte $a0, $02, $ad, $ad, $ad, $ad, $ad, $ad
.byte $ca, $d5, $cd, $d0, $c5, $d2
#endif
.byte $ad, $ad
.byte $ad, $ad, $ad, $ad, $8d, $07, $a1, $0b
.byte $a1, $0b, $a1, $8d, $07, $d6, $0b, $d6
.byte $0b, $d6, $8d, $8d, $06, $a3, $a3, $a3
.byte $a0, $a1, $a0, $a1, $03, $a1, $a0, $a3
.byte $a3, $a3, $a0, $a1, $03, $a1, $a0, $a1
.byte $a0, $a3, $a3, $a3, $8d, $06, $a3, $a3
.byte $a3, $a0, $a1, $a0, $a1, $03, $a1, $a0
.byte $a3, $a3, $a3, $a0, $a1, $03, $a1, $a0
.byte $a1, $a0, $a3, $a3, $a3, $8d, $06, $a3
.byte $a3, $a3, $a0, $a1, $a0, $a1, $03, $a1
.byte $a0, $a3, $a3, $a3, $a0, $a1, $03, $a1
.byte $a0, $a1, $a0, $a3, $a3, $a3, $8d, $06
.byte $a3, $a3, $a3, $a0, $a1, $a0, $a1, $03
.byte $a1, $a0, $a3, $a3, $a3, $a0, $a1, $03
.byte $a1, $a0, $a1, $a0, $a3, $a3, $a3, $8d
.byte $06, $d8, $d8, $d8, $d8, $d8, $d8, $d8
.byte $03, $d8, $d8, $d8, $d8, $d8, $d8, $d8
.byte $03, $d8, $d8, $d8, $d8, $d8, $d8, $d8
.byte $8d, $08, $b3, $ae, $b2, $06, $c9, $ce
.byte $c6, $cf, $04, $b3, $ae, $b3, $a6, $d0
.byte $c1, $d3, $c3, $c1, $cc, $8d, $8d
+9
View File
@@ -0,0 +1,9 @@
all: 0000 0100 0200 0300-franklin 0300-usci
cat 0000 0100 0200 0300-franklin > franklin.bin
cat 0000 0100 0200 0300-usci > usci.bin
0300-franklin:
xa -o 0300-franklin 0300.s
0300-usci:
xa -DUSCI -o 0300-usci 0300.s
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
Binary file not shown.
+5
View File
@@ -0,0 +1,5 @@
0x0000 - 0x0fff: Controller test firmware
0x0100 - 0x01ff: 16-sector
0x0200 - 0x02ff: 13-sector
0x0300 - 0x03ff: Firmware "put jumpers here" splash screen
Binary file not shown.

After

Width:  |  Height:  |  Size: 145 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

BIN
View File
Binary file not shown.