The Apple II firmware for the CH376 is admittedly pretty permissive. I also need to have it filter out filenames that aren't 8.3, because there's no way to pass them back for loading.

I used a combination of the official data sheet: https://www.mpja.com/download/ch376ds1.pdf

and also this Arduino C++ interfacing code, which explains things in better English: https://github.com/djuseeq/Ch376msc/blob/master/src/CommDef.h