Long Filename Browser for ZX-UNO / esxDOS

Field Programmable Gate Array based devices! As exciting as they sound
User avatar
bob_fossil
Manic Miner
Posts: 654
Joined: Mon Nov 13, 2017 6:09 pm

Re: New File Browser for ZX-UNO

Post by bob_fossil »

bytedelight wrote: Wed Jan 27, 2021 6:18 pm I've not read the complete thread yet (45 pages!) - as said, it's extremely busy at this moment - but is there no way of getting LFN working on an interface with 128K RAM?
LFN support doesn't need the extra divMMC memory to work. Up until v0.12, I wasn't using the additional memory banks as I didn't know about them. My NMI browser saved the RAM contents to the SD card, letting me use 16k of memory from address 49152 to store the 8.3 filenames and their long file name descriptions. This is why there is a limit of files the browser can show - I can only fit so many files in 16k. When you exited the NMI, the RAM contents were reloaded back from disk.

velesoft gave me the information to access the additional memory banks, so I used these to back up the RAM to these additional banks instead of writing the RAM to the SD card. This made things quicker and also fixed the issue where writing the RAM to the SD card took up to 18 seconds on some brands of card.

I develop the browser primarily using the Fuse emulator and on my ZX-UNO. Both of these implement esxdos/divMMC with 128k of extra memory which is what I'm targetting.

So to recap, you don't need 512k of memory. This browser only needs the standard 128k that divMMC devices typically support.
bytedelight
Drutt
Posts: 5
Joined: Wed Jan 27, 2021 6:11 pm

Re: New File Browser for ZX-UNO

Post by bytedelight »

Awesome!
I will test is as soon as I can, and I'm curious if the cards I include by default (modern 16GB Kingston) are fast or slow when RAM is saved on card.
And I'll compare it to using 512K of SRAM.
Will be a cool video!

Oh, do I know you already on FB maybe?
Would like to feature you and your developments in the video, and get to know you a bit better - what else do you do with the ZX Spectrum?
User avatar
desUBIKado
Microbot
Posts: 108
Joined: Sun Jan 10, 2021 10:27 am

Re: New File Browser for ZX-UNO

Post by desUBIKado »

In spanish. No subtitles available, sorry.

[media]https://www.youtube.com/watch?v=puBxNozC8FM[/media]
tom-cat
Drutt
Posts: 43
Joined: Sat Oct 03, 2020 7:39 am

Re: New File Browser for ZX-UNO

Post by tom-cat »

.POK plugin problems might be that ALL pokes seem to be applied always, regardless of what you select. Just noticed this with the multipoke files... I always applied all before, but now even if I don't select ANY of them with SPACE they all get applied.
User avatar
desUBIKado
Microbot
Posts: 108
Joined: Sun Jan 10, 2021 10:27 am

Re: New File Browser for ZX-UNO

Post by desUBIKado »

tom-cat wrote: Thu Jan 28, 2021 9:56 am .POK plugin problems might be that ALL pokes seem to be applied always, regardless of what you select. Just noticed this with the multipoke files... I always applied all before, but now even if I don't select ANY of them with SPACE they all get applied.
Yes, I also think that this is the reason for malfunction.
alchemist
Drutt
Posts: 3
Joined: Thu Jan 28, 2021 10:22 am

Re: New File Browser for ZX-UNO

Post by alchemist »

Hello, newcomer here :)

I like this new file browser very much, thanks a lot for developping it!

I'd elaborate a bit on a bug I found while POKing around. Actually, it's not that it applies all POKes always, but it will poke with a 0 value for all unselected cheats, given you select at least one. Maybe it tries to "restore" the original value, which is 0 in most of the POK I saw. I didn't check that yet.

I hope I'm clear, please let me know otherwise :D
alchemist
Drutt
Posts: 3
Joined: Thu Jan 28, 2021 10:22 am

Re: New File Browser for ZX-UNO

Post by alchemist »

alchemist wrote: Thu Jan 28, 2021 10:37 amMaybe it tries to "restore" the original value, which is 0 in most of the POK I saw.
I confirm! I used some very basic BASIC and a POK file to test all of that

Code: Select all

10 POKE 51540,255
20 POKE 51548,127
30 POKE 51795,255
40 POKE 52991,127
50 POKE 52995,255
60 POKE 51967,127
100 CLEAR
110 PRINT PEEK 51540
120 PRINT PEEK 51548
130 PRINT PEEK 51795
140 PRINT PEEK 52991
150 PRINT PEEK 52995
160 PRINT PEEK 51967
170 GO TO 100
And the POK file

Code: Select all

N51540_8
M 8 51540 40 63
Z 8 51548 48 255
N51795
Z 8 51795 95 0
N52991
Z 8 52991 91 0
N52995
Z 8 52995 95 0
N51967
Z 8 51967 67 0
Y
For example If you apply only the last POKe (51967), it will wrongly poke "restored" values 63, 255, 0, 0, 0 and properly poke value 67.

Hope it helps :) and that my post is not too long :?
velesoft
Drutt
Posts: 34
Joined: Sat Sep 26, 2020 11:51 pm
Location: Czech Republic
Contact:

Re: New File Browser for ZX-UNO

Post by velesoft »

bytedelight wrote: Thu Jan 28, 2021 8:26 am Awesome!
I will test is as soon as I can, and I'm curious if the cards I include by default (modern 16GB Kingston) are fast or slow when RAM is saved on card.
And I'll compare it to using 512K of SRAM.
This filebrowser run fast on any DIVMMC model with minimum 128kB ram. Then also on all your DIVMMC models from BYTEDELIGHT.
For 512kB ram not exist software now, but may be in future. On DIVMMC 128kB with this LFN filebrowser+esxdos if only 16kB divmmc ram free for next expansion.

I only plan make some new commands runable on 128kB and 512kB divmmc models, but only with 512kB ram will be this commands usable parallel with this LFN filebrowser. On 128kB model must be rewrited filebrowser code or command code (can't exist in divmmc ram in same time).
User avatar
bob_fossil
Manic Miner
Posts: 654
Joined: Mon Nov 13, 2017 6:09 pm

Re: New File Browser for ZX-UNO

Post by bob_fossil »

New test version available here.

Caps Shift + V will now launch the Browser hex file viewer so you can peek inside your files. Browser Up and Down moves the hex view backwards and forwards. Browser Left moves to the start of the file and Browser Right moves to the end. BREAK exits the viewer.

Fixed reset crash when doing file information (Caps Shift + R) on a directory entry. Thanks to [mention]desUBIKado[/mention] for the report.

Symbol Shift + 0 will let you assign the selected file to a speed dial (Symbol Shift 1 - 9). You will be prompted to select a speed dial to assign it to. If the speed dial is already in use you will have to confirm the new speed dial by pressing Shift + Y to overwrite it.

Plugins can now access browser settings so they can use the correct keyboard and colour settings. The following plugins have been upgraded: POK and SCR. Other plugins with navigation keys will be upgraded in due course.

POK plugin was always applying off values. Changed the UI so that space now toggles between 'Not Set', 'On' and 'Off'. If a poke is 'Not Set' it is ignored. For 'On' and 'Off' the relevant value is poked from the POK file. If the 'Off' value in the POK file is 0, it won't be applied - randomly poking NOPs into game code is not a good idea. Thanks to [mention]tom-cat[/mention] and [mention]alchemist[/mention] for the bug reports.

.brwscfg now uses the current browser colour settings. You can also restore default settings by pressing D.
tom-cat
Drutt
Posts: 43
Joined: Sat Oct 03, 2020 7:39 am

Re: New File Browser for ZX-UNO

Post by tom-cat »

Wow, this is great. Loving the plugin navigation using the configured keys, it brings everything together as a single utility. Really great work.
Also Pokes seem to work, just tried a few but will do more testing soon.

Really great work !
alchemist
Drutt
Posts: 3
Joined: Thu Jan 28, 2021 10:22 am

Re: New File Browser for ZX-UNO

Post by alchemist »

Fantastic :D it looks really cool!

I tested the latest version and I confirm it works as expected, my tests no longer fail :-)

Thanks a lot!
tom-cat
Drutt
Posts: 43
Joined: Sat Oct 03, 2020 7:39 am

Re: New File Browser for ZX-UNO

Post by tom-cat »

There is one issue when browsing through the directories... I am using the plugins, etc. and for a while everything is ok, then I go into one directory and the browser position goes out of bounds, sometimes only a few lines, sometimes a few screens. Have to go out of the browser and back in to get it to proper position. This happens randomly, cannot reliably reproduce it so far.
tom-cat
Drutt
Posts: 43
Joined: Sat Oct 03, 2020 7:39 am

Re: New File Browser for ZX-UNO

Post by tom-cat »

Another bug. If I use the .browse command (not the NMI button) and I exit the browser with CAPS+SPACE the spectrum resets itself. This is on an 48k speccy. I seem to remember it didn't do that before.
User avatar
bob_fossil
Manic Miner
Posts: 654
Joined: Mon Nov 13, 2017 6:09 pm

Re: New File Browser for ZX-UNO

Post by bob_fossil »

tom-cat wrote: Mon Feb 01, 2021 8:23 am There is one issue when browsing through the directories... I am using the plugins, etc. and for a while everything is ok, then I go into one directory and the browser position goes out of bounds, sometimes only a few lines, sometimes a few screens. Have to go out of the browser and back in to get it to proper position. This happens randomly, cannot reliably reproduce it so far.
Does it go wrong if you just browse / swap between folders - or do you need to launch plugins too? Have you got 'Remember last folder' or 'Save last selection' options enabled (.brwscfg 'Misc' page)?
tom-cat wrote: Mon Feb 01, 2021 3:16 pm Another bug. If I use the .browse command (not the NMI button) and I exit the browser with CAPS+SPACE the spectrum resets itself. This is on an 48k speccy. I seem to remember it didn't do that before.
Are you doing anything in particular - e.g. launching a specific plugin? If I run .browse, navigate some folders and launch a plugin, (SCR) then exit with Shift + Space, I get 0 OK, 0 :1 not a reset.
tom-cat
Drutt
Posts: 43
Joined: Sat Oct 03, 2020 7:39 am

Re: New File Browser for ZX-UNO

Post by tom-cat »

bob_fossil wrote: Mon Feb 01, 2021 6:11 pm
tom-cat wrote: Mon Feb 01, 2021 8:23 am There is one issue when browsing through the directories... I am using the plugins, etc. and for a while everything is ok, then I go into one directory and the browser position goes out of bounds, sometimes only a few lines, sometimes a few screens. Have to go out of the browser and back in to get it to proper position. This happens randomly, cannot reliably reproduce it so far.
Does it go wrong if you just browse / swap between folders - or do you need to launch plugins too? Have you got 'Remember last folder' or 'Save last selection' options enabled (.brwscfg 'Misc' page)?
Yes, I have those options selected - both of them. I found the problem, it is with the CACHED directories. If the directory to which you are going is cached then you will not endup on the first entry, but on the same entry as before. So for cached directories you don't set the Y position at all :) So you sometimes endup in a strange non existing position in a cached directory.

bob_fossil wrote: Mon Feb 01, 2021 6:11 pm
tom-cat wrote: Mon Feb 01, 2021 3:16 pm Another bug. If I use the .browse command (not the NMI button) and I exit the browser with CAPS+SPACE the spectrum resets itself. This is on an 48k speccy. I seem to remember it didn't do that before.
Are you doing anything in particular - e.g. launching a specific plugin? If I run .browse, navigate some folders and launch a plugin, (SCR) then exit with Shift + Space, I get 0 OK, 0 :1 not a reset.
Nope, I turn on the spectrum, goes to (C) 1982 Sinclair message, I do .browse and press SHIFT+SPACE ... and it resets, does not go to the 0 OK, 0:1 prompt.

EDIT: AGAIN it has to do with the CACHED directories. if the directory you are in is CACHED and you exit with SHIFT+SPACE then it will RESET. If the directory is not cached it goes to 0 OK 0:1 message :D

I have most directories cached so it is faster to browse, so I get both these problems A LOT :)
User avatar
desUBIKado
Microbot
Posts: 108
Joined: Sun Jan 10, 2021 10:27 am

Re: New File Browser for ZX-UNO

Post by desUBIKado »

tom-cat wrote: Mon Feb 01, 2021 6:40 pm EDIT: AGAIN it has to do with the CACHED directories. if the directory you are in is CACHED and you exit with SHIFT+SPACE then it will RESET. If the directory is not cached it goes to 0 OK 0:1 message :D

I have most directories cached so it is faster to browse, so I get both these problems A LOT :)
That's right. On a ZX-Uno the same error occurs.

BTW, when I try to overwrite a speed dial, the correct message appears, but although I respond by pressing the Y key, the new option is not overwritten.

And now a request: several screens for the .POK files, and that up to 8 options appear in each one of them, displaying at the top where we are compared to the total number of screens (example: 1/2 )
User avatar
bob_fossil
Manic Miner
Posts: 654
Joined: Mon Nov 13, 2017 6:09 pm

Re: New File Browser for ZX-UNO

Post by bob_fossil »

tom-cat wrote: Mon Feb 01, 2021 6:40 pm Yes, I have those options selected - both of them. I found the problem, it is with the CACHED directories. If the directory to which you are going is cached then you will not endup on the first entry, but on the same entry as before. So for cached directories you don't set the Y position at all :) So you sometimes endup in a strange non existing position in a cached directory.
I think I've fixed this. I've re-uploaded the last test version as this is quite an annoying bug if you're using cached folders. Having problems with replicating the .dot command crashing when you exit a cached folder. I'll continue investigating.
desUBIKado wrote: Mon Feb 01, 2021 7:13 pm BTW, when I try to overwrite a speed dial, the correct message appears, but although I respond by pressing the Y key, the new option is not overwritten.
Just to confirm, you are pressing SHIFT + Y to confirm? This is a safety measure like in the 'Erase File' confirm where you have to press two keys to delete rather than just y on it's own. I've just tried overwriting an existing speed dial and the existing speed dial was overwritten by the new one.
tom-cat
Drutt
Posts: 43
Joined: Sat Oct 03, 2020 7:39 am

Re: New File Browser for ZX-UNO

Post by tom-cat »

Ok, the first bug (not going to position 0 in the list when browsing the Cached directories) is fixed :) Very nice.
I can reproduce the bug of zx reseting when exiting the .browse if entering cached directories every time on my 48k + divMMC future interface.
User avatar
desUBIKado
Microbot
Posts: 108
Joined: Sun Jan 10, 2021 10:27 am

Re: New File Browser for ZX-UNO

Post by desUBIKado »

bob_fossil wrote: Mon Feb 01, 2021 9:49 pm Just to confirm, you are pressing SHIFT + Y to confirm? This is a safety measure like in the 'Erase File' confirm where you have to press two keys to delete rather than just y on it's own. I've just tried overwriting an existing speed dial and the existing speed dial was overwritten by the new one.
I was just pressing the Y key, not the SHIFT + Y combination. I have seen that doing it as you indicate it does overwrite. However, the message only displays "(Y)". I understood that it works with "y" and "Y". The other day when I made the video with 015-TEST1 version, I couldn't delete a file (finally I deleted it with Dr. Slump's browser). Now I know why it didn't work for me. In my opinion, asking the confirmation question is enough of a security measure, so accepting both "y" and "Y" as valid seems best.
User avatar
bob_fossil
Manic Miner
Posts: 654
Joined: Mon Nov 13, 2017 6:09 pm

Re: New File Browser for ZX-UNO

Post by bob_fossil »

New test version available here.

Hopefully fixed the reported crash on exit after browsing cached folders with the browse dot command. Also fixed an issue where the wrong files were being selected in the folder after you quit out of certain plugins. The PT1, PT2, PT3, SQT, LCE, IMG and STC plugins have also been upgraded to use browser navigation keys.
tom-cat
Drutt
Posts: 43
Joined: Sat Oct 03, 2020 7:39 am

Re: New File Browser for ZX-UNO

Post by tom-cat »

After a quick test everything seems in order. Both bugs I reported fixed :) Will test more over the next few days. Really well done !
User avatar
bob_fossil
Manic Miner
Posts: 654
Joined: Mon Nov 13, 2017 6:09 pm

Re: New File Browser for ZX-UNO

Post by bob_fossil »

v0.15
  • Symbol Shift + Z will uncache a cached folder.
  • Symbol Shift + R lets you rename 8.3 style filenames.
  • You can now press BREAK when in a text input field (Save Snapshot, Rename, Poke) to abort the operation.
  • Initial version of ROM plugin which uses the code in .ownrom to load a .ROM file from the browser. Your ROM must be 16384 bytes.
  • Caps Shift + V will now launch the Browser hex file viewer so you can peek inside your files. Browser Up and Down moves the hex view backwards and forwards. Browser Left moves to the start of the file and Browser Right moves to the end. BREAK exits the viewer.
  • Fixed reset crash when doing file information (Caps Shift + R) on a directory entry. Thanks to @desUBIKado for the bug report.
  • Symbol Shift + 0 will let you assign the selected file to a speed dial (Symbol Shift 1 - 9). You will be prompted to select a speed dial to assign it to. If the speed dial is already in use you will have to confirm the new speed dial by pressing Shift + Y to overwrite it.
  • Plugins can now access browser settings so they can use the correct keyboard and colour settings. All the plugins that implement file navigation have been updated to use this new functionality.
  • POK plugin was always applying off values. Changed the UI so that space now toggles between 'Not Set', 'On' and 'Off'. If a poke is 'Not Set' it is ignored. For 'On' and 'Off' the relevant value is poked from the POK file. If the 'Off' value in the POK file is 0, it won't be applied. Thanks to @tom-cat and @alchemist for the bug reports.
  • .brwscfg now uses the current browser colour settings. You can also restore default settings by pressing D.
  • Fixed intermittent issue with the file selection going out of bounds after navigating to a cached folder. Thanks to @tom-cat for the bug report.
  • Fixed reported crash with browse .dot command when exiting after navigating into a cached folder. Thanks to @tom-cat for the bug report.
  • Fixed an issue where the wrong files were being selected in the folder after you quit out of certain plugins.
  • Updated browser help files to include missing and newly added hotkeys.
Download here.
emuola
Drutt
Posts: 8
Joined: Fri Feb 19, 2021 11:31 am

Re: New File Browser for ZX-UNO

Post by emuola »

Works like a charm with ZX with 128k mod and DivMMC Enjoy Pro. Thank you for the LFN support, life's good :) I do have one wish though... Could the saved snapshot file (pressing "S") be created inside a folder named after the game in question? Currently they are indexed with number so they're pretty hard to distinguish from eachother. Or then just name it appending it with the game name somehow, now as the LFN support works :)
akeley
Dynamite Dan
Posts: 1025
Joined: Sat Feb 01, 2020 5:47 pm

Re: New File Browser for ZX-UNO

Post by akeley »

Hi, [mention]bob_fossil[/mention] , glad you are still working on this amazing browser :)

May I suggest, for the clarity, that you change the name of this thread to indicate that it actually works on all the esxDOS devices, not just Uno? Another thing, I think it'd be good idea to update your first post with its current feature set.

The reason I say that is because I try to recommend it to people outside this forum and I know a few were confused ("but it's only for Uno"...etc) or unaware of its full capabilities.
User avatar
bob_fossil
Manic Miner
Posts: 654
Joined: Mon Nov 13, 2017 6:09 pm

Re: New File Browser for ZX-UNO

Post by bob_fossil »

emuola wrote: Sat Feb 20, 2021 1:30 pm Works like a charm with ZX with 128k mod and DivMMC Enjoy Pro. Thank you for the LFN support, life's good :) I do have one wish though... Could the saved snapshot file (pressing "S") be created inside a folder named after the game in question? Currently they are indexed with number so they're pretty hard to distinguish from eachother. Or then just name it appending it with the game name somehow, now as the LFN support works :)
The browser asks you for the filename (8 characters max) when you save the snapshot, so it's up to you to give it a distinguishable name. :) Long filename support is read only. Any files created by the browser will be restricted to 8.3 filenames..
Post Reply