YARS(Yet Another Reset Circuit) Plus Serial Upload Timing
I revised the reset circuit again. It doesn’t look much simpler but it is, much. The reset button (with pullup and cap for debouncing) is now connected by a schottky diode direct to the Z80 reset circuit. The AVR is also reset by the signal but is otherwise not involved – it is ONLY there to do a 1khz interrupt to drive the millisecond clock.
I also did some serial upload timing.
- One simple program with no library routines generated about 100 bytes of machine code which turns into a 400 byte .ihx file. Uploading this just with the : command line option took about .4 sec which is fine.
- A larger program, which uses printf, generated about 3200 bytes of machine code (including the library routine). This turned into a 7700 character .ihx file which always times out on the simple : command line. converting it to binary generated a 3200 byte .bin file. Uploading that with xmodem took about 4 seconds.
My conclusion is that the simplest bootloader option is to use xmodem. Faster serial would be nice but it’s not critical right now. I have to say though, that with teraterm, at least, xmodem seems very flakey. About half the time it just stalls. the best result seems to come from waiting fot the ZMC to send several C characters then click though the menus to transfer the file.
I spent some time poking at the monitor as well. It’s generally to complex and tricky for me to do a lot to it but i was able to noop or bypass all the places where it was adjusting the scan buffer so i’m able to reference the fixed location of the head of the buffer at FFE0 rather than having to indirect via SCAN_PTR at FFC0
The character counter here was handy.