Skip to content

Commit be97520

Browse files
committed
Added (untested) serial test. Fixed menu error. Bumped version to 0.8
1 parent da9bff2 commit be97520

File tree

5 files changed

+69
-11
lines changed

5 files changed

+69
-11
lines changed

Makefile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@ SYS=asm_inc/ecb.inc asm_inc/coco.inc asm_inc/coco3.inc constants.inc
22
INC=cassette.asm crctab.bin hardware.asm joystick.asm keyboard.asm \
33
memory.asm menu.asm printer.asm rom.asm rs232.asm sound.asm \
44
util.asm video.asm
5-
OBJS=diag.ccc
5+
OBJS=ziadiag.ccc
66

77
all: ${OBJS}
88

9-
diag.ccc: diag.asm ${SYS} ${INC}
9+
ziadiag.ccc: diag.asm ${SYS} ${INC}
1010
lwasm -Iasm_inc -o$@ -fraw -ldiag.txt $<
1111

1212
crctab.bin:
@@ -18,5 +18,5 @@ clean:
1818
rm -f *~ *# *.txt crctab.bin
1919

2020
distclean: clean
21-
rm ${OBJS}
21+
rm -f ${OBJS}
2222

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Capabilities as of v0.7
1+
# Capabilities as of v0.8
22

33
- Hardware detection
44

@@ -28,12 +28,12 @@
2828

2929
- Cassette test
3030

31+
- Serial test - requires loopback connector, untested
32+
3133
# TODO
3234

3335
- Hardware
3436

3537
- Detect other external hardware where possible
3638

3739
- audio tests
38-
39-
- serial test

diag.asm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ anykey:
107107
title: fcz "COLOR COMPUTER"
108108
fcz "DIAGNOSTICS CART"
109109
version:
110-
fcz "VERSION 0.7"
110+
fcz "VERSION 0.8"
111111
fcz "(C) 2025 ZIA COMPUTING"
112112
page0: fcz "PAGE 0 ERROR"
113113
page1: fcz "PAGE 1 ERROR"

menu.asm

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ menu@:
4040
poll@:
4141
jsr [POLCAT]
4242
beq poll@
43-
cmpa #'G'
43+
cmpa #'I'
4444
bgt poll@
4545
suba #'A'
4646
blt poll@
@@ -53,8 +53,8 @@ poll@:
5353

5454
entries:
5555
fdb showhw,memtest,romtest,video
56-
fdb keyboard,joystick,cassette ;,sound,cassette,rs232
57-
fdb print
56+
fdb keyboard,joystick,cassette ;,sound,cassette
57+
fdb rs232,print
5858
fdb 0
5959

6060
test:

rs232.asm

Lines changed: 59 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,63 @@ rs232:
33
fdb start@
44
fcz "RS232 TEST"
55
start@:
6-
rts
6+
lbsr cls
7+
ldx #testing_rs232
8+
ldy #screen+32*7+9
9+
lbsr print_string
10+
lbsr go_slow
11+
ldx #$0000
12+
loop@:
13+
;; value 1 - 2237 cycles - 4000.28 bps
14+
lda $ff20 ; 5
15+
ora #%00000010 ; 2
16+
sta $ff20 ; 5
17+
bsr rs232_wait ; 7
18+
ldb $ff22 ; 5
19+
bitb #%00000001 ; 2
20+
beq error@ ; 3
21+
nop ; 2
22+
nop ; 2
23+
nop ; 2
24+
nop ; 2
25+
;; value 0 - 2237 cycles
26+
lda $ff20 ; 3
27+
anda #%11111101 ; 2
28+
sta $ff20 ; 3
29+
bsr rs232_wait ; 7
30+
ldb $ff22 ; 3
31+
bitb #%00000001 ; 2
32+
bne error@ ; 3
33+
leax 1,x ; 5
34+
bne loop@ ; 3
35+
lbsr cls
36+
ldx #rs232_good
37+
ldy #screen+32*7+11
38+
bra exit@
39+
error@:
40+
lbsr cls
41+
ldx #rs232_bad
42+
ldy #screen+32*7+10
43+
exit@:
44+
lbsr print_string
45+
lbsr anykey
46+
lbra go_fast
747

48+
count@: equ 273
49+
rs232_wait: ; 14+273*22 - 2200 cycles
50+
ldy #count@ ; 4
51+
delay@:
52+
leay -1,y ; 5
53+
bne delay@ ; 3
54+
nop ; 2
55+
nop ; 2
56+
brn next@ ; 3
57+
next@:
58+
rts ; 5
59+
60+
testing_rs232:
61+
fcz "TESTING RS232"
62+
rs232_bad:
63+
fcz "RS232 ERROR"
64+
rs232_good:
65+
fcz "RS232 PASS"

0 commit comments

Comments
 (0)