I’ve put some work into cleaning up the SX code tonight. I’ve removed some code sections no longer needed, and added documentation where it was lacking. Code should be commented pretty good. I’ve also added a “TO-DO” section at the top of the code of things I have to work on.
This is an SX/B code file, which is simply plain text, and the framework of the program is SX/Basic. All the critical routines, namely the actual data reading/storage, FRAM communication, custom UART code is in pure assembly. I use SX/B where the high-level abstraction is convenient, easy to read, and assembly where speed/preciseness is required.
You can get the code here.
I welcome comments, corrections, suggestions, etc.
The to-do list from the top of the file follows
‘1> Deal with motor being on all the time. do we want to have a turn-off-motor command?
‘2> Optimize forward and backward code and figure out why this code actually works AS IS
‘3> double check receive uart code & comments
‘4> Deal with a non-amiga/really bad disk locking up findsync()
‘5> All code sections, including subroutines, need pre-state information, variables used
‘ and post-state to identify what needs to be in place for them to operate correctly
‘ This will make them more modular and will allow MAC’s better
‘6> More generally, handle error / no-data conditions more elegantly – display error and exit