From a56fba1fef0005555b7bcda9918737464b707ddc Mon Sep 17 00:00:00 2001 From: Dreaded_X Date: Sat, 19 Sep 2020 22:20:34 +0200 Subject: [PATCH] Couple of small fixes --- build.sh | 1 + src/fib.z80 | 6 ++++-- upload.py | 25 ++++++++++++------------- 3 files changed, 17 insertions(+), 15 deletions(-) mode change 100644 => 100755 upload.py diff --git a/build.sh b/build.sh index b3cc370..de1f5be 100755 --- a/build.sh +++ b/build.sh @@ -1,2 +1,3 @@ #!/bin/bash mkdir -p .build && zasm -i src/fib.z80 -o .build/fib.bin +ls -al .build/fib.bin diff --git a/src/fib.z80 b/src/fib.z80 index 8698e93..a30de8b 100644 --- a/src/fib.z80 +++ b/src/fib.z80 @@ -1,8 +1,8 @@ -_ram_start equ 0x1600 +_ram_start equ 0x1300 #target rom -#code _HOME, 0x1500 ; Non-banked part of memory +#code _HOME, 0x1200 ; Non-banked part of memory #data _DATA, _ram_start ; Uninitialized variables @@ -22,6 +22,8 @@ init: loop: add a, b + ld (hl), a + inc hl out 0x80, a ld c, a diff --git a/upload.py b/upload.py old mode 100644 new mode 100755 index cf739c0..b95d218 --- a/upload.py +++ b/upload.py @@ -1,6 +1,8 @@ +#!/usr/bin/env python3 import serial import os import sys +import time def progressbar(it, prefix="", size=60, file=sys.stdout): count = len(it) @@ -17,24 +19,21 @@ def progressbar(it, prefix="", size=60, file=sys.stdout): def main(): if len(sys.argv) == 2: - ser = serial.Serial("COM3", timeout=1, write_timeout=1) + # ser = serial.Serial("COM3", timeout=1, write_timeout=1) + ser = serial.Serial("/dev/ttyUSB0", timeout=1, write_timeout=1, baudrate=115200) if ser.is_open: - # Clear out any existing input - ser.write(b'\n') - ser.readline() - - # Send the upload command - ser.write(b'#u\n') - print(ser.readline()) - path = sys.argv[1] size = os.path.getsize(path) - ser.write([size & 0xFF]) - ser.write([(size >> 8) & 0xFF]) - i = 0 + with open(path, "rb") as f: for i in progressbar(range(size), "Upload: ", 40): - ser.write(f.read(1)) + byte = f.read(1) + ser.write(byte) + + if byte == b'#': + ser.write(b'#\n') + + time.sleep(0.002) print(ser.readline()) ser.close()