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: 637
Joined: Mon Nov 13, 2017 6:09 pm

Long Filename Browser for ZX-UNO / esxDOS

Post by bob_fossil »

As I now have a lot of free time on my hands, I've been spending some of it playing around with the ZX-UNO I purchased a while back. I wondered whether it was possible to do a nicer file browser than the current NMI (F5) implementation. After a couple of days of hacking around, I've knocked up a prototype browser.

For comparison, here's the standard NMI browser:

Image

And here's mine:

Image

It supports long filenames by reading the disk directly. It also sorts the folders and files alphabetically.

The latest version can be downloaded from here.

To install, unzip and copy the BROWSE file into the root SYS folder (where all the other command files live) on your disk. You should then be able to enter:

.browse

from BASIC to launch the browser.

Keyboard commands:
  • Cursor up / down - move selection
  • Space / Enter - select a folder or launch a supported file
  • Delete / P - navigate to parent folder
  • Break / X - exit browser
Issues (I'm aware of):
  • Currently supports FAT16 disks only.
  • Currently only reads from esxdos device 0.
  • Limit of browsing 256 files in a folder.
  • Only launches .tap files (no .sna / .trd support yet).
  • Doesn't start browsing from the current directory - always starts from the root folder.
  • Unsupported characters (> ASCII 127) are displayed as '~'.
  • Filenames (> 32 characters) are not clipped.
I've tried this on a ZX-UNO with a FAT16 formatted 512mb SD card and developed the code with z88dk using an a HDF image of the SD card with SpecEmu. I'd be interested to hear if anyone else can get it working with their ZXUNO. It shouldn't damage your SD card (famous last words) as it's not writing to the disk.
User avatar
bob_fossil
Manic Miner
Posts: 637
Joined: Mon Nov 13, 2017 6:09 pm

Re: New File Browser for ZX-UNO

Post by bob_fossil »

v0.02
  • Now supports FAT32.
  • Improved directory handling - some folders were being truncated or listing garbage entries.
  • When you launch the browser it now starts from the current esxdos path, rather than dropping you back at the root folder every time.
User avatar
bob_fossil
Manic Miner
Posts: 637
Joined: Mon Nov 13, 2017 6:09 pm

Re: New File Browser for ZX-UNO

Post by bob_fossil »

v0.03
  • Added 42 character display.
  • Long filenames that spill over the screen are now truncated to fit the screen width and are indicated with an ellipsis character.
  • You can now select and autostart .trd files.
Image
User avatar
emook
Drutt
Posts: 36
Joined: Mon Nov 13, 2017 1:04 pm
Location: Manchester, England
Contact:

Re: New File Browser for ZX-UNO

Post by emook »

Hi Bob - looks great and works well on the Next in classic esxdos mode.

Only issue I see is that its called the same as an existing dotcommand on the Next, .BROWSE on the Next initiates the build in browser.

Cheers

emk
User avatar
bob_fossil
Manic Miner
Posts: 637
Joined: Mon Nov 13, 2017 6:09 pm

Re: New File Browser for ZX-UNO

Post by bob_fossil »

emook wrote: Wed Apr 29, 2020 10:01 am
Only issue I see is that its called the same as an existing dotcommand on the Next, .BROWSE on the Next initiates the build in browser.
Thanks for the kind words. I wasn't aware of a clash as I don't have a Next. :) At the risk of it ending up being called .browseymcbrowseface, I'm open to new name suggestions.
XoRRoX
Manic Miner
Posts: 216
Joined: Wed Jul 11, 2018 6:34 am

Re: New File Browser for ZX-UNO

Post by XoRRoX »

Thanks a lot - nice work! :)

Do you have some sort of a feature roadmap so we can see what's still going to be implemented/improved? That way we'll not suggest things that are already planned.
nihirash
Drutt
Posts: 4
Joined: Sat Apr 25, 2020 1:23 pm

Re: New File Browser for ZX-UNO

Post by nihirash »

Thank you a lot!

Feel free to integrate my scl2trd converter inside it.
Or you may share sources and I'll do it by myself.

https://github.com/nihirash/esxdos-scl2trd
User avatar
Seven.FFF
Manic Miner
Posts: 690
Joined: Sat Nov 25, 2017 10:50 pm
Location: USA

Re: New File Browser for ZX-UNO

Post by Seven.FFF »

bob_fossil wrote: Wed Apr 29, 2020 10:15 am
emook wrote: Wed Apr 29, 2020 10:01 am
Only issue I see is that its called the same as an existing dotcommand on the Next, .BROWSE on the Next initiates the build in browser.
Thanks for the kind words. I wasn't aware of a clash as I don't have a Next. :) At the risk of it ending up being called .browseymcbrowseface, I'm open to new name suggestions.
It shouldn’t be a problem if you want to keep calling it .browse. NextZXOS keeps its dot commands in /dot/, and eaxDOS running on a Next in the other personalities still uses /bin/, so they won’t clash.

It was done that way deliberately, as NextZXOS provides enhanced versions of many of the standard esxDOS commands which wouldn’t work in esxDOS -.ls for example, is 24KB instead of 2KB and has lots of sorting and column choosing options, more like the *nix version.
Robin Verhagen-Guest
SevenFFF / Threetwosevensixseven / colonel32
NXtel NXTP ESP Update ESP Reset CSpect Plugins
lordoftime79
Drutt
Posts: 14
Joined: Mon Apr 13, 2020 3:10 pm

Re: New File Browser for ZX-UNO

Post by lordoftime79 »

Does this not work on actual spectrums? I have tried it but either it dosnt find the command if i extract it where you say to or if i put it where i know the commands live it works but its a empty list I cant see any of my tap files?
nihirash
Drutt
Posts: 4
Joined: Sat Apr 25, 2020 1:23 pm

Re: New File Browser for ZX-UNO

Post by nihirash »

lordoftime79 wrote: Wed Apr 29, 2020 12:55 pm Does this not work on actual spectrums? I have tried it but either it dosnt find the command if i extract it where you say to or if i put it where i know the commands live it works but its a empty list I cant see any of my tap files?
You should put it into /BIN folder.

esxDOS and divMMC(in zxuno) are the same as on usual speccy.

It should work as I understand.
Post Reply