hardware recognition memory addresses added, fixed apple-1 to remote test program

This commit is contained in:
flowenol 2021-01-07 23:32:09 +01:00
parent dd4c67fa68
commit a334a77d4e
7 changed files with 35 additions and 22 deletions

View File

@ -2,7 +2,7 @@
GAL20V8 GAL20V8
EQN2JED - Boolean Equations to JEDEC file assembler (Version V101) EQN2JED - Boolean Equations to JEDEC file assembler (Version V101)
Copyright (c) National Semiconductor Corporation 1990-1993 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 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* NOTE PINS GND:12 A9:14 A10:15 A11:16 SR:17 RD:18 WD:19 ROM:20*
@ -15,7 +15,8 @@ L0640
0111011011111111111111111111111111111111 0111011011111111111111111111111111111111
0111111011111111111111111111111111011111 0111111011111111111111111111111111011111
0111111011111111111111111111110111111111 0111111011111111111111111111110111111111
0111111011111111111111111101111111111111* 0111111011111111111111111101111111111111
0111101001110111011101110110011011101111*
L0960 L0960
1011101001011011101110111010101010100111* 1011101001011011101110111010101010100111*
L1280 L1280
@ -27,8 +28,8 @@ L2560
L2632 L2632
10000011* 10000011*
L2640 L2640
0000000010000000111100001000000010000000100000000000000000000000* 0000000010000000111110001000000010000000100000000000000000000000*
L2704 L2704
10* 10*
C1FC4* C236B*
0000 0000

View File

@ -1,7 +1,7 @@
EQN2JED - Boolean Equations to JEDEC file assembler (Version V101) EQN2JED - Boolean Equations to JEDEC file assembler (Version V101)
Copyright (c) National Semiconductor Corporation 1990-1993 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 Device: 20V8
Pin Label Type Pin Label Type
@ -43,12 +43,12 @@ No of feedbacks used as dedicated outputs : 3/6 (50.0%)
Pin Label Terms Usage Pin Label Terms Usage
------------------------------------------ ------------------------------------------
21 RES 1/8 (12.5%) 21 RES 1/8 (12.5%)
20 ROM 4/8 (50.0%) 20 ROM 5/8 (62.5%)
19 WD 1/8 (12.5%) 19 WD 1/8 (12.5%)
18 RD 1/8 (12.5%) 18 RD 1/8 (12.5%)
17 SR 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) EQN2JED - Boolean Equations to JEDEC file assembler (Version V101)
@ -69,5 +69,5 @@ Copyright (c) National Semiconductor Corporation 1990-1993
A2 | 9 16 | A11 A2 | 9 16 | A11
A1 | 10 15 | A10 A1 | 10 15 | A10
A0 | 11 14 | A9 A0 | 11 14 | A9
GND | 12 13 | GND | 12 13 |
|______________| |______________|

View File

@ -13,4 +13,5 @@ WD = A0 * /A1 * /A2 * /A3 * /A4 * /A5 * /A6 * A7 * /A8 * /A9 * /A10 * /A11 * /R
+ A9 * /R * RW + A9 * /R * RW
+ A10 * /R * RW + A10 * /R * RW
+ A11 * /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 RES = A0 * /A1 * /A2 * /A3 * /A4 * /A5 * /A6 * /A7 * /A8 * /A9 * /A10 * /A11 * /R * RW

View File

@ -1,3 +1,5 @@
#!/bin/sh #!/bin/sh
xa -W -C -v -O ASCII -S -c src/apple1serial.xa -l apple1serial.label -o apple1serial.bin xa -W -C -v -O ASCII -S -c src/apple1serial.xa -l apple1serial.label -o apple1serial.bin
make -C firmware clean
make -C firmware

View File

@ -2,6 +2,7 @@
#define F_CPU 16000000UL #define F_CPU 16000000UL
#endif #endif
// this seems to be the upper limit, above that some data is not received
#define BAUD 9600 #define BAUD 9600
#include <avr/io.h> #include <avr/io.h>

View File

@ -33,8 +33,11 @@
#define ESC $9B ;ASCII ESC #define ESC $9B ;ASCII ESC
#define SPACE $A0 #define SPACE $A0
; pad first 256 bytes with zeroes ; pad first 252 bytes with zeroes
.dsb 256, 0 .dsb 252, 0
; include identification bytes
.byt "A1SI"
; this section is almost identical to original WOZ ACI ; this section is almost identical to original WOZ ACI
; adapted from https://www.sbprojects.net/projects/apple1/aci.php ; adapted from https://www.sbprojects.net/projects/apple1/aci.php

View File

@ -5,6 +5,11 @@
#define serial_read $C080 #define serial_read $C080
#define serial_write $C081 #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 * = $C300
.dsb (*-end_of_apple1serial), 0 .dsb (*-end_of_apple1serial), 0
@ -14,12 +19,12 @@
teletype_apple1 = $C300 teletype_apple1 = $C300
jsr reset_serial jsr reset_serial
lda serial_read lda serial_read
wait teletype_apple1_wait
lda serial_ready lda serial_ready
beq wait beq teletype_apple1_wait
lda serial_read lda serial_read
jsr echo jsr echo
jmp wait jmp teletype_apple1_wait
end_of_teletype_apple1 end_of_teletype_apple1
; teletype on remote ; teletype on remote
@ -36,8 +41,12 @@ get_key
lda kbd_cr lda kbd_cr
bpl get_key bpl get_key
lda kbd_data lda kbd_data
sec and #$7F
sbc #$A0 tay
teletype_remote_wait
lda serial_ready
beq teletype_remote_wait
tya
sta serial_write sta serial_write
jmp get_key jmp get_key
end_of_teletype_remote end_of_teletype_remote
@ -51,15 +60,11 @@ counter_remote = $C500
jsr reset_serial jsr reset_serial
ldy #$00 ldy #$00
sta serial_write sta serial_write
check_ready counter_wait
lda serial_ready lda serial_ready
beq check_ready beq counter_wait
tya tya
sta serial_write sta serial_write
iny iny
jmp check_ready jmp counter_wait
end_of_counter_remote end_of_counter_remote
; How to store INTEGER BASIC progams?
; C100R
; 004A.00FFW 0800.0FFFW
; E2B3R - warm entry point