mirror of
https://codeberg.org/cryu/micro-sci-a2-controller
synced 2024-11-16 10:04:47 +00:00
Add firmware WIP.
This commit is contained in:
parent
42cef0320e
commit
98fe9fcda7
BIN
firmware/0000
Normal file
BIN
firmware/0000
Normal file
Binary file not shown.
146
firmware/0000.s-wip
Normal file
146
firmware/0000.s-wip
Normal 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
firmware/0100
Normal file
BIN
firmware/0100
Normal file
Binary file not shown.
BIN
firmware/0200
Normal file
BIN
firmware/0200
Normal file
Binary file not shown.
BIN
firmware/0300-franklin
Normal file
BIN
firmware/0300-franklin
Normal file
Binary file not shown.
BIN
firmware/0300-usci
Normal file
BIN
firmware/0300-usci
Normal file
Binary file not shown.
97
firmware/0300.s
Normal file
97
firmware/0300.s
Normal 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
firmware/Makefile
Normal file
9
firmware/Makefile
Normal 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
|
BIN
firmware/attic/0300-5ddcbbf1
Normal file
BIN
firmware/attic/0300-5ddcbbf1
Normal file
Binary file not shown.
BIN
firmware/attic/0300-5dfc32ca
Normal file
BIN
firmware/attic/0300-5dfc32ca
Normal file
Binary file not shown.
BIN
firmware/attic/5ddcbbf1.bin
Executable file
BIN
firmware/attic/5ddcbbf1.bin
Executable file
Binary file not shown.
BIN
firmware/attic/5dfc32ca.bin
Executable file
BIN
firmware/attic/5dfc32ca.bin
Executable file
Binary file not shown.
BIN
firmware/franklin-2732.bin
Normal file
BIN
firmware/franklin-2732.bin
Normal file
Binary file not shown.
BIN
firmware/franklin.bin
Normal file
BIN
firmware/franklin.bin
Normal file
Binary file not shown.
5
firmware/franklin_fdc_rom_notes.txt
Normal file
5
firmware/franklin_fdc_rom_notes.txt
Normal 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
|
||||
|
BIN
firmware/png/franklin.png
Normal file
BIN
firmware/png/franklin.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 145 KiB |
BIN
firmware/png/u-sci.png
Normal file
BIN
firmware/png/u-sci.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 144 KiB |
BIN
firmware/usci.bin
Normal file
BIN
firmware/usci.bin
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user