diff --git a/apps/basic/basic.asm b/apps/basic/basic.asm index 445c93c..be96293 100644 --- a/apps/basic/basic.asm +++ b/apps/basic/basic.asm @@ -4663,6 +4663,7 @@ CLOADB: inc hl ; skip # pop hl inc hl inc hl ; get filename + ; TODO filename always null terminated? call PRS ; print filename ; de contains the nr of blocks to load ; TODO check de>0 @@ -4678,7 +4679,7 @@ CLOADB: inc hl ; skip # exx pop hl ; get stored data back pop de ; get destination - ld bc,64 ; block size + ld bc,128 ; block size ldir ; copy data to memory push de ; store destination address exx diff --git a/bios.asm b/bios.asm index e96a8dd..3e22f6f 100644 --- a/bios.asm +++ b/bios.asm @@ -144,26 +144,6 @@ init: ; Enter bios jp BASIC_RAM_START -; 100$ -; ld hl,msg_start -; call BIOS_PUTS -; call BIOS_FLUSH -; call read_block -; jr c,101$ ; error -; ; block received correctly -; ld hl,BLOCK_BUFFER -; call BIOS_PUTS -; call BIOS_FLUSH -; jp 100$ -; 101$: -; add '0' ; get error number -; call BIOS_PUTC -; ld a, 0ah -; call BIOS_PUTC -; ld a, 0dh -; call BIOS_PUTC -; call BIOS_FLUSH -; jp 100$ ; Shouldnt come here ; just to be safe an endless loop diff --git a/scripts/encode.py b/scripts/encode.py index c09ac9a..1b0271d 100644 --- a/scripts/encode.py +++ b/scripts/encode.py @@ -8,7 +8,7 @@ import os import math from pathlib import Path -BLOCK_SIZE = 64 +BLOCK_SIZE = 128 TYPE_RAW = 0 TYPE_HEADER = 1 diff --git a/tape.asm b/tape.asm index fc69a6a..b1a06eb 100644 --- a/tape.asm +++ b/tape.asm @@ -1,4 +1,4 @@ -BLOCK_SIZE .equ 1+64+2 ; type + 64 bytes + crc-16 +BLOCK_SIZE .equ 1+128+2 ; type + 64 bytes + crc-16 BLOCK_ERROR_CALIBRATION .equ 1 BLOCK_ERROR_SYNC .equ 2 BLOCK_ERROR_READ .equ 3 diff --git a/tapes/recording_makefile.wav b/tapes/recording_makefile.wav new file mode 100644 index 0000000..4f9e5b7 Binary files /dev/null and b/tapes/recording_makefile.wav differ diff --git a/tapes/test.wav b/tapes/test.wav index 77f17b0..b399c15 100644 Binary files a/tapes/test.wav and b/tapes/test.wav differ