mirror of
https://github.com/flowenol/apple1serial.git
synced 2025-01-03 03:32:27 +00:00
hardware recognition memory addresses added, fixed apple-1 to remote test program
This commit is contained in:
parent
dd4c67fa68
commit
a334a77d4e
@ -2,7 +2,7 @@
|
||||
GAL20V8
|
||||
EQN2JED - Boolean Equations to JEDEC file assembler (Version V101)
|
||||
Copyright (c) National Semiconductor Corporation 1990-1993
|
||||
Assembled from "d:/APPLE1~1/ADDRES~1.EQN". Date: 6-22-120
|
||||
Assembled from "d:/APPLE1~2/ADDRES~1.EQN". Date: 12-28-120
|
||||
*
|
||||
NOTE PINS RW:2 A8:3 A7:4 A6:5 A5:6 A4:7 A3:8 A2:9 A1:10 A0:11*
|
||||
NOTE PINS GND:12 A9:14 A10:15 A11:16 SR:17 RD:18 WD:19 ROM:20*
|
||||
@ -15,7 +15,8 @@ L0640
|
||||
0111011011111111111111111111111111111111
|
||||
0111111011111111111111111111111111011111
|
||||
0111111011111111111111111111110111111111
|
||||
0111111011111111111111111101111111111111*
|
||||
0111111011111111111111111101111111111111
|
||||
0111101001110111011101110110011011101111*
|
||||
L0960
|
||||
1011101001011011101110111010101010100111*
|
||||
L1280
|
||||
@ -27,8 +28,8 @@ L2560
|
||||
L2632
|
||||
10000011*
|
||||
L2640
|
||||
0000000010000000111100001000000010000000100000000000000000000000*
|
||||
0000000010000000111110001000000010000000100000000000000000000000*
|
||||
L2704
|
||||
10*
|
||||
C1FC4*
|
||||
C236B*
|
||||
0000
|
||||
|
@ -1,7 +1,7 @@
|
||||
EQN2JED - Boolean Equations to JEDEC file assembler (Version V101)
|
||||
Copyright (c) National Semiconductor Corporation 1990-1993
|
||||
|
||||
Log file for d:/APPLE1~1/ADDRES~1.EQN
|
||||
Log file for d:/APPLE1~2/ADDRES~1.EQN
|
||||
Device: 20V8
|
||||
|
||||
Pin Label Type
|
||||
@ -43,12 +43,12 @@ No of feedbacks used as dedicated outputs : 3/6 (50.0%)
|
||||
Pin Label Terms Usage
|
||||
------------------------------------------
|
||||
21 RES 1/8 (12.5%)
|
||||
20 ROM 4/8 (50.0%)
|
||||
20 ROM 5/8 (62.5%)
|
||||
19 WD 1/8 (12.5%)
|
||||
18 RD 1/8 (12.5%)
|
||||
17 SR 1/8 (12.5%)
|
||||
------------------------------------------
|
||||
Total Terms 8/64 (12.5%)
|
||||
Total Terms 9/64 (14.1%)
|
||||
------------------------------------------
|
||||
|
||||
EQN2JED - Boolean Equations to JEDEC file assembler (Version V101)
|
||||
@ -69,5 +69,5 @@ Copyright (c) National Semiconductor Corporation 1990-1993
|
||||
A2 | 9 16 | A11
|
||||
A1 | 10 15 | A10
|
||||
A0 | 11 14 | A9
|
||||
GND | 12 13 |
|
||||
GND | 12 13 |
|
||||
|______________|
|
||||
|
@ -13,4 +13,5 @@ WD = A0 * /A1 * /A2 * /A3 * /A4 * /A5 * /A6 * A7 * /A8 * /A9 * /A10 * /A11 * /R
|
||||
+ A9 * /R * RW
|
||||
+ A10 * /R * RW
|
||||
+ A11 * /R * RW
|
||||
+ A2 * A3 * A4 * A5 * A6 * A7 * /A8 * /A9 * /A10 * /A11 * /R * RW
|
||||
RES = A0 * /A1 * /A2 * /A3 * /A4 * /A5 * /A6 * /A7 * /A8 * /A9 * /A10 * /A11 * /R * RW
|
||||
|
2
build.sh
2
build.sh
@ -1,3 +1,5 @@
|
||||
#!/bin/sh
|
||||
|
||||
xa -W -C -v -O ASCII -S -c src/apple1serial.xa -l apple1serial.label -o apple1serial.bin
|
||||
make -C firmware clean
|
||||
make -C firmware
|
||||
|
@ -2,6 +2,7 @@
|
||||
#define F_CPU 16000000UL
|
||||
#endif
|
||||
|
||||
// this seems to be the upper limit, above that some data is not received
|
||||
#define BAUD 9600
|
||||
|
||||
#include <avr/io.h>
|
||||
|
@ -33,8 +33,11 @@
|
||||
#define ESC $9B ;ASCII ESC
|
||||
#define SPACE $A0
|
||||
|
||||
; pad first 256 bytes with zeroes
|
||||
.dsb 256, 0
|
||||
; pad first 252 bytes with zeroes
|
||||
.dsb 252, 0
|
||||
|
||||
; include identification bytes
|
||||
.byt "A1SI"
|
||||
|
||||
; this section is almost identical to original WOZ ACI
|
||||
; adapted from https://www.sbprojects.net/projects/apple1/aci.php
|
||||
|
29
src/tests.xa
29
src/tests.xa
@ -5,6 +5,11 @@
|
||||
#define serial_read $C080
|
||||
#define serial_write $C081
|
||||
|
||||
; How to store INTEGER BASIC progams?
|
||||
; C100R - run serial monitor
|
||||
; 004A.00FFW 0800.0FFFW - write data for default LOMEM & HIMEM
|
||||
; E2B3R - warm entry point
|
||||
|
||||
* = $C300
|
||||
.dsb (*-end_of_apple1serial), 0
|
||||
|
||||
@ -14,12 +19,12 @@
|
||||
teletype_apple1 = $C300
|
||||
jsr reset_serial
|
||||
lda serial_read
|
||||
wait
|
||||
teletype_apple1_wait
|
||||
lda serial_ready
|
||||
beq wait
|
||||
beq teletype_apple1_wait
|
||||
lda serial_read
|
||||
jsr echo
|
||||
jmp wait
|
||||
jmp teletype_apple1_wait
|
||||
end_of_teletype_apple1
|
||||
|
||||
; teletype on remote
|
||||
@ -36,8 +41,12 @@ get_key
|
||||
lda kbd_cr
|
||||
bpl get_key
|
||||
lda kbd_data
|
||||
sec
|
||||
sbc #$A0
|
||||
and #$7F
|
||||
tay
|
||||
teletype_remote_wait
|
||||
lda serial_ready
|
||||
beq teletype_remote_wait
|
||||
tya
|
||||
sta serial_write
|
||||
jmp get_key
|
||||
end_of_teletype_remote
|
||||
@ -51,15 +60,11 @@ counter_remote = $C500
|
||||
jsr reset_serial
|
||||
ldy #$00
|
||||
sta serial_write
|
||||
check_ready
|
||||
counter_wait
|
||||
lda serial_ready
|
||||
beq check_ready
|
||||
beq counter_wait
|
||||
tya
|
||||
sta serial_write
|
||||
iny
|
||||
jmp check_ready
|
||||
jmp counter_wait
|
||||
end_of_counter_remote
|
||||
; How to store INTEGER BASIC progams?
|
||||
; C100R
|
||||
; 004A.00FFW 0800.0FFFW
|
||||
; E2B3R - warm entry point
|
||||
|
Loading…
Reference in New Issue
Block a user