mirror of
https://codeberg.org/cryu/micro-sci-a2-controller
synced 2025-02-19 15:31:29 +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…
x
Reference in New Issue
Block a user