retro16 / acsi2stm

Atari ST ACSI to SD card converter with a STM32
GNU General Public License v3.0
150 stars 34 forks source link

ACSI_DEBUG=1 build does not fit in 64k Blue pill #37

Closed S0urceror closed 1 year ago

S0urceror commented 1 year ago

Hi, I have build your PCB and am busy setting things up.

I noticed that with the latest versions of your code v3.0.1, Roger Clarks's STM32 library v1.0.0 and Bill Greiman's SDFAT library v2.2.0 the ACSI_DEBUG=1 build does not fit in the 64k. It throws the following error message: region rom overflowed by 2932 bytes.

When I do a regular build it barely fits. Sketch uses 63820 bytes (97%) of program storage space. Maximum is 65536 bytes.

Do you have any ideas how to get debug output and fit everything. Should I use older versions of the libraries that are a bit slimmer?

Let me know.

S0urceror commented 1 year ago

Update. If I leave out BOOT_OVERLAY I have plenty of space and it fits with debug messages and verbose logging.

Now I have the following problem that my 1024STFM does not see it during boot. This is the debug log:

ACSI2STM SD bridge v3.01

Initializing SD0 ... (fs ok) (ro) (36MHz 15450112 blocks) success
Searching image /acsi2stm/hd0.img ... not found
  0,0: ACSI2STM SD0 F32   8G R 

Initializing SD0 ... (0 block) failed

Initializing SD0 ... (0 block) failed

Initializing SD0 ... (0 block) failed

SD0 disabled
Waiting for the ACSI bus ...
--- Ready to go ---
Check media: cached id=F84A6110 real id=F84A6110
Check media: cached id=0 real id=0
Refreshing 1,0:(0 block) No SD card
Check media: cached id=0 real id=0
Refreshing 2,0:(0 block) No SD card
Check media: cached id=0 real id=0
Refreshing 3,0:(0 block) No SD card
[0:8][<0][<0][<1][<0][<0](6 bytes)
Check media: cached id=F84A6110 real id=F84A6110
Read 0 blocks from 1 on 0,0
Success
[>0]
[2:8][<0][<0][<1][<0][<0](6 bytes)
Check media: cached id=0 real id=0
Refreshing 2,0:(0 block) No SD card
Error 3A06
[>2]
[5:8] - Not for us
[6:8] - Not for us
[7:8] - Not for us
[0:0]

Tried with both a raw SD and a SD with .img. Looks like the acsi2stm finds it but nothing to see in TOS. BTW. it looks like I have an old version of TOS. Does that matter?

S0urceror commented 1 year ago

Confirmation TOS1.00 is a no-go.

During start of my 1024STFM it “wrongly” first tries to load 0 blocks starting from block 1 to which acsi2stm replies success. Then no more communication.

Booting from a EmuTOS floppy show the right communication and the harddisk/sd card is visible. In verbose mode it is visible that the boot sequence does a Test Unit, followed by an Inquiry, then fetches the bootsector, etc.

For now I am on my way but probably need to upgrade my TOS roms to 1.4.