#define echo $FFEF #define kbd_data $D010 #define kbd_cr $D011 #define serial_ready BASE + $000 + OFFSET #define serial_read BASE + $080 + OFFSET #define serial_write BASE + $081 + OFFSET ; How to store INTEGER BASIC progams? ; C100( + OFFSET)R - run serial monitor ; 004A.00FFW 0800.0FFFW - write data for default LOMEM & HIMEM ; E2B3R - warm entry point * = BASE + $300 + OFFSET .dsb (*-end_of_apple1serial), 0 ; teletype on apple-1 ; the data from remote appears on apple-1 screen * = BASE + $300 + OFFSET teletype_apple1 = BASE + $300 + OFFSET jsr reset_serial lda serial_read teletype_apple1_wait lda serial_ready beq teletype_apple1_wait lda serial_read jsr echo jmp teletype_apple1_wait end_of_teletype_apple1 ; teletype on remote ; the data from apple-1 appears on remote * = BASE + $400 + OFFSET .dsb (*-end_of_teletype_apple1), 0 * = BASE + $400 + OFFSET teletype_remote = BASE + $400 + OFFSET jsr reset_serial lda #$FF sta serial_write get_key lda kbd_cr bpl get_key lda kbd_data and #$7F tay teletype_remote_wait lda serial_ready beq teletype_remote_wait tya sta serial_write jmp get_key end_of_teletype_remote ; 0-255 repeating counter over TXD * = BASE + $500 + OFFSET .dsb (*-end_of_teletype_remote), 0 * = BASE + $500 + OFFSET counter_remote = BASE + $500 + OFFSET jsr reset_serial ldy #$00 sta serial_write counter_wait lda serial_ready beq counter_wait tya sta serial_write iny jmp counter_wait end_of_counter_remote