Closed hstampfl closed 2 years ago
Which bitstream and FREEZER.M65 are you using? Please provide an m65 of the FREEZER.M65
Also, please confirm that the subdirectory actually has a .. entry in it, if you mount the SD card on another system. If it's not on the file system, it won't be offered as an option.
What may also work as a work-around is to press the <- key at the top-left of the C64/C65 keyboard, as this will attempt to chdir(".."), even if its not showing in the directory listing.
I have installed bitstream mega65r3-20210105.10-138-hd-712c81f.bit. See the Freezermenu screenshot.
Ok, the problem is not the "..". When you go into a subdirectory and you return to the root, the root is empty and do only show following:
Also closing freeze and open it again does not solve the problem. I have to reboot to get the freezemenu work properly.
ok. Please check with the SD card in another computer if it has .. in the directory you are entering. You can also make a dump of the SD card and zip it and attach it, and I can see if there are clues for me in there.
There are multiple test revisions of freezer that show the same version number, so please still md5 the FREEZER.M65 file for me if you can, so that I can confirm for sure which you are using.
Aargh, because of your initial request for an m65 I thought you would like to have a screenshot. Here the MD5 F:>CertUtil -hashfile FREEZER.M65 MD5 MD5-Hash von FREEZER.M65: 76642b8675e5e359a5460a9ddb14f281
As I wrote in detail, the problem is not related to the "..", it looks like a problem when you go into a subfolder and then go back to the root. It looks like the directory listing after change back to root is not working because in the root you don't have an '..".
Hmm.. But if it was back to the root directory, then the contents of that would be visible again.
Can you please run m65 -X on boot, then once you have changed directory into the sub-directory, and then again when you have used .. to go back out, i.e., where this issue is triggered. This will give me some debug info on the internal state of the hypervisor, including the cluster number of the current directory.
I can confirm that you are using the latest version of FREEZER.M65, so that shouldn't be a problem.
Thanks, Paul.
D:\Mega65\M65>m65 -l COM4 -X MEGA65 Cross-Platform tool. version: 20201130.22-master-e84f537+DIRTY [T+0sec] Getting started.. NOTE: Scanning bitstream file '(null)' for device ID INFO: Using fpga_id 3631093 HYPPO status: Disk count = $00 Default Disk = $00 Current Disk = $00 Disk Table offset = $00 Cluster of current directory = $00000000 opendir_cluster = $00000000 opendir_sector = $00 opendir_entry = $00 dirent structure: Filename = 'Venezualen casaba melon production statistics (2012-2015).txt ' Filename len = $00 Short name = 'FILENAME.EXT' Start cluster = $00000000 File length = $00000000 ATTRIB byte = $00 Requested filename len = $00 Requested filename = 'Venezualen casaba melon production statistics (2007-2011).txt ' sectorsread = $0000 bytes_remaining = $00000000 current sector = $00000000, current cluster = $00000000 current sector in cluster = $00 File descriptor #0: disk ID = $ff, mode = $00 start cluster = $00000000, current cluster = $00000000 sector in cluster = $00, offset in sector = $0000 File descriptor #1: disk ID = $ff, mode = $00 start cluster = $00000000, current cluster = $00000000 sector in cluster = $00, offset in sector = $0000 File descriptor #2: disk ID = $ff, mode = $00 start cluster = $00000000, current cluster = $00000000 sector in cluster = $00, offset in sector = $0000 File descriptor #3: disk ID = $ff, mode = $00 start cluster = $00000000, current cluster = $00000000 sector in cluster = $00, offset in sector = $0000 Current file descriptor # = $00 Current file descriptor offset = $00 Dos error code = $00 SYSPART error code = $00 SYSPART present = $00 SYSPART start = $00000000
That's from cold start before booted to READY? (Its not showing any partitions detected etc). Please also run it:
Yes, it was from cold start.
At READY D:\Mega65\M65>m65 -l COM4 -X MEGA65 Cross-Platform tool. version: 20201130.22-master-e84f537+DIRTY [T+0sec] Getting started.. NOTE: Scanning bitstream file '(null)' for device ID INFO: Using fpga_id 3631093 HYPPO status: Disk count = $01 Default Disk = $00 Current Disk = $00 Disk Table offset = $00 Cluster of current directory = $00000002 opendir_cluster = $00000000 opendir_sector = $00 opendir_entry = $00 dirent structure: Filename = '' Filename len = $00 Short name = '' Start cluster = $00000000 File length = $00000000 ATTRIB byte = $00 Requested filename len = $0b Requested filename = '1541ROM.M65' sectorsread = $0000 bytes_remaining = $00000000 current sector = $00000002, current cluster = $00000a38 current sector in cluster = $00 File descriptor #0: disk ID = $ff, mode = $80 start cluster = $00000002, current cluster = $0ffffff8 sector in cluster = $00, offset in sector = $0000 File descriptor #1: disk ID = $ff, mode = $00 start cluster = $00000000, current cluster = $00000000 sector in cluster = $00, offset in sector = $0000 File descriptor #2: disk ID = $ff, mode = $00 start cluster = $00000000, current cluster = $00000000 sector in cluster = $00, offset in sector = $0000 File descriptor #3: disk ID = $ff, mode = $00 start cluster = $00000000, current cluster = $00000000 sector in cluster = $00, offset in sector = $0000 Current file descriptor # = $00 Current file descriptor offset = $00 Dos error code = $00 SYSPART error code = $00 SYSPART present = $00 SYSPART start = $018d9ffe
From FREEZER inside ZX directory before changing directory D:\Mega65\M65>m65 -l COM4 -X MEGA65 Cross-Platform tool. version: 20201130.22-master-e84f537+DIRTY [T+0sec] Getting started.. NOTE: Scanning bitstream file '(null)' for device ID INFO: Using fpga_id 3631093 HYPPO status: Disk count = $01 Default Disk = $00 Current Disk = $00 Disk Table offset = $00 Cluster of current directory = $00000002 opendir_cluster = $00000000 opendir_sector = $00 opendir_entry = $00 dirent structure: Filename = '' Filename len = $00 Short name = '' Start cluster = $00000000 File length = $00000000 ATTRIB byte = $00 Requested filename len = $0b Requested filename = '1541ROM.M65' sectorsread = $0000 bytes_remaining = $00000000 current sector = $00000002, current cluster = $00000a38 current sector in cluster = $00 File descriptor #0: disk ID = $ff, mode = $80 start cluster = $00000002, current cluster = $0ffffff8 sector in cluster = $00, offset in sector = $0000 File descriptor #1: disk ID = $ff, mode = $00 start cluster = $00000000, current cluster = $00000000 sector in cluster = $00, offset in sector = $0000 File descriptor #2: disk ID = $ff, mode = $00 start cluster = $00000000, current cluster = $00000000 sector in cluster = $00, offset in sector = $0000 File descriptor #3: disk ID = $ff, mode = $00 start cluster = $00000000, current cluster = $00000000 sector in cluster = $00, offset in sector = $0000 Current file descriptor # = $00 Current file descriptor offset = $00 Dos error code = $00 SYSPART error code = $00 SYSPART present = $00 SYSPART start = $018d9ffe
From FREEZER after changing directory back to root (showing empty) D:\Mega65\M65>m65 -l COM4 -X MEGA65 Cross-Platform tool. version: 20201130.22-master-e84f537+DIRTY [T+0sec] Getting started.. NOTE: Scanning bitstream file '(null)' for device ID INFO: Using fpga_id 3631093 HYPPO status: Disk count = $01 Default Disk = $00 Current Disk = $00 Disk Table offset = $00 Cluster of current directory = $00000000 opendir_cluster = $00000000 opendir_sector = $00 opendir_entry = $00 dirent structure: Filename = '' Filename len = $00 Short name = '' Start cluster = $00000000 File length = $00000000 ATTRIB byte = $00 Requested filename len = $02 Requested filename = '..' sectorsread = $0012 bytes_remaining = $00000000 current sector = $00000000, current cluster = $00000a38 current sector in cluster = $00 File descriptor #0: disk ID = $ff, mode = $80 start cluster = $00000000, current cluster = $0ffffff8 sector in cluster = $00, offset in sector = $0000 File descriptor #1: disk ID = $ff, mode = $00 start cluster = $00000000, current cluster = $00000000 sector in cluster = $00, offset in sector = $0000 File descriptor #2: disk ID = $ff, mode = $00 start cluster = $00000000, current cluster = $00000000 sector in cluster = $00, offset in sector = $0000 File descriptor #3: disk ID = $ff, mode = $00 start cluster = $00000000, current cluster = $00000000 sector in cluster = $00, offset in sector = $0000 Current file descriptor # = $00 Current file descriptor offset = $00 Dos error code = $00 SYSPART error code = $00 SYSPART present = $00 SYSPART start = $018d9ffe
Regards Heinz ( It's my discordname aswell ;) )
Btw... when I stay longer in this position the border get red. Is this an visual error message?
The border colour change is just the freezer saying it can't give you a directory listing of the selected item (which makes a lot of sense when the selected item is "no disk" ;)
Thanks for the updated m65 -X
runs. It seems to be getting cluster 0 for the cluster of the sub-directory. Can you please make a compressed image of the SD card, as I need to see how it is coming to that conclusion.
I have created the image. Where can I upload it?
Regards Heinz
Problem seems to be that some FAT implementations use the convention of putting cluster number 0 into .. when it points to the root directory, even though the root directory rarely is in cluster 0 on modern fat implementations. The fix is to add a check for this in HYPPO (not the freeze menu) that checks for this, and calls dos_cdroot if it sees the current directory get set to cluster 0.
I assume this is antique. If not, please reopen and attach sd image for testing.
After changing into a subdirectory, I can't go back into the above folder.