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 »

New test version available here.

I've made some proof of concept changes to the SCR plugin. The plugin system now supports fetching the next or previous file from the browser. You can now use the 1 and 2 keys to move backwards and forwards between screens and SPACE to exit. I've also added an SCL plugin based on [mention]nihirash[/mention] 's scl2trd C source code. If you select a SCL file, the browser will try and convert it to a trimmed .TRD file and then autostart that file.
User avatar
Luzie
Manic Miner
Posts: 906
Joined: Fri May 01, 2020 2:07 pm

Re: New File Browser for ZX-UNO

Post by Luzie »

Dear Bob,

I discovered a bug which maybe introduced from Final Version v0.11 to Final Version v0.12 and later up to latest v0.13-Test2:

I load your "New File Browser for ZX-UNO" from within "Dr. Slumps NMI navigator v.0.0.17" http://board.esxdos.org/viewtopic.php?pid=1584#p1584 via Hotkey J

This works with \SYS\NMI.SYS from your "New File Browser for ZX-UNO" v0.11 Final (Size=444 Bytes) renamed and copied to \SYS\nmi\old088.sys

But it don´t work anymore with \SYS\NMI.SYS from your "New File Browser for ZX-UNO" v0.12 Final (Size=412 Bytes)
neither with \SYS\NMI.SYS from your "New File Browser for ZX-UNO" v0.13-Test2 Final (Size=411 Bytes)
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 »

Luzie wrote: Sun Nov 08, 2020 7:14 pm Dear Bob,

I discovered a bug which maybe introduced from Final Version v0.11 to Final Version v0.12 and later up to latest v0.13-Test2:

I load your "New File Browser for ZX-UNO" from within "Dr. Slumps NMI navigator v.0.0.17" http://board.esxdos.org/viewtopic.php?pid=1584#p1584 via Hotkey J

This works with \SYS\NMI.SYS from your "New File Browser for ZX-UNO" v0.11 Final (Size=444 Bytes) renamed and copied to \SYS\nmi\old088.sys

But it don´t work anymore with \SYS\NMI.SYS from your "New File Browser for ZX-UNO" v0.12 Final (Size=412 Bytes)
neither with \SYS\NMI.SYS from your "New File Browser for ZX-UNO" v0.13-Test2 Final (Size=411 Bytes)
The only change from v0.11 to v0.12 in the NMI.SYS was the usage of divMMC memory bank paging to avoid writing the contents of the RAM to the temp folder. Why this would cause issues with the other NMI browser, I've no idea. You could try using the files from the 'No_MMC_memory' folder and see if they work correctly with it to confirm if this is the cause of the problem. Or just use my browser as your default - the problem should go away then. :)
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 »

Luzie wrote: Sun Nov 08, 2020 7:14 pm Dear Bob,

I discovered a bug which maybe introduced from Final Version v0.11 to Final Version v0.12 and later up to latest v0.13-Test2:

I load your "New File Browser for ZX-UNO" from within "Dr. Slumps NMI navigator v.0.0.17" http://board.esxdos.org/viewtopic.php?pid=1584#p1584 via Hotkey J

This works with \SYS\NMI.SYS from your "New File Browser for ZX-UNO" v0.11 Final (Size=444 Bytes) renamed and copied to \SYS\nmi\old088.sys

But it don´t work anymore with \SYS\NMI.SYS from your "New File Browser for ZX-UNO" v0.12 Final (Size=412 Bytes)
neither with \SYS\NMI.SYS from your "New File Browser for ZX-UNO" v0.13-Test2 Final (Size=411 Bytes)
Okay, so I created a new .hdf image with esxdos 0.8.8, the latest version of my NMI browser and v0.0.17 of Dr Slump's NMI browser. When I hit the NMI, I go into Dr Slump's NMI. I press J, the screen flips back to what it was before the NMI (with some extra code running in the screen) before my NMI browser appears. Seems to work fine here.

Code: Select all

/sys/nmi/old088.sys 441 bytes
pjrodriguez
Drutt
Posts: 23
Joined: Tue May 05, 2020 9:38 am

Re: New File Browser for ZX-UNO

Post by pjrodriguez »

Hi Bob,
Thank you for keeping on updating your file browser.
The .scl plugin is a very good idea and in my real Spectrum+3 it creates the .trd in only a few seconds. But the plugin fails to execute the .trd file after creating it (I get an error) and the .trd file has a 8.3 filename. Maybe the two issues are related. Not a big deal but maybe you can fix it.
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 »

pjrodriguez wrote: Mon Nov 09, 2020 6:15 pm Hi Bob,
Thank you for keeping on updating your file browser.
The .scl plugin is a very good idea and in my real Spectrum+3 it creates the .trd in only a few seconds. But the plugin fails to execute the .trd file after creating it (I get an error) and the .trd file has a 8.3 filename. Maybe the two issues are related. Not a big deal but maybe you can fix it.
Thanks! The SCL plugin will create the .trd filename from the 8.3 filename of the SCL file - I'm not adding long filename writing support. :) The .trd file should be slightly larger than the original .scl file if it worked correctly (you should see some lines in the border while it writes the file). Do you have a link or could you make the .scl file available that you tried to convert so I can investigate further? Thanks.
User avatar
Luzie
Manic Miner
Posts: 906
Joined: Fri May 01, 2020 2:07 pm

Re: New File Browser for ZX-UNO

Post by Luzie »

bob_fossil wrote: Mon Nov 09, 2020 6:15 pm Okay, so I created a new .hdf image with esxdos 0.8.8, the latest version of my NMI browser and v0.0.17 of Dr Slump's NMI browser. When I hit the NMI, I go into Dr Slump's NMI. I press J, the screen flips back to what it was before the NMI (with some extra code running in the screen) before my NMI browser appears. Seems to work fine here.

Code: Select all

/sys/nmi/old088.sys 441 bytes
Maybe I´ve done something wrong here. Which Emulator/Interface-Settings do you use for testing?
I´ve tried with SpecEmu (divMMC-Emulation only).
Maybe you could share your .HDF-File for comparison with my "compilation"? (Please send PM). Thank you!
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 »

Luzie wrote: Mon Nov 09, 2020 6:25 pm
bob_fossil wrote: Mon Nov 09, 2020 6:15 pm Okay, so I created a new .hdf image with esxdos 0.8.8, the latest version of my NMI browser and v0.0.17 of Dr Slump's NMI browser. When I hit the NMI, I go into Dr Slump's NMI. I press J, the screen flips back to what it was before the NMI (with some extra code running in the screen) before my NMI browser appears. Seems to work fine here.

Code: Select all

/sys/nmi/old088.sys 441 bytes
Maybe I´ve done something wrong here. Which Emulator/Interface-Settings do you use for testing?
I´ve tried with SpecEmu (divMMC-Emulation only).
Maybe you could share your .HDF-File for comparison with my "compilation"? (Please send PM). Thank you!
I've had to switch over to Fuse. During development of the new browser features in v12 and later I found that SpecEmu didn't seem to emulate the divMMC's 128k of memory correctly (only the 32k needed for esxdos to run) which I'm now using for saving the RAM contents and plugins.
User avatar
Luzie
Manic Miner
Posts: 906
Joined: Fri May 01, 2020 2:07 pm

Re: New File Browser for ZX-UNO

Post by Luzie »

bob_fossil wrote: Mon Nov 09, 2020 6:30 pm I've had to switch over to Fuse. During development of the new browser features in v12 and later I found that SpecEmu didn't seem to emulate the divMMC's 128k of memory correctly (only the 32k needed for esxdos to run) which I'm now using for saving the RAM contents and plugins.
OK. I not tried it with Fuse yet. This maybe the problem I discovered. Not yet tested "No_MMC_Memory"-Version. I´ll keep you informed.
pjrodriguez
Drutt
Posts: 23
Joined: Tue May 05, 2020 9:38 am

Re: New File Browser for ZX-UNO

Post by pjrodriguez »

The .trd file can't be executed when created after selecting the .scl file but it's always succesfully saved and can be executed later.
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 »

pjrodriguez wrote: Mon Nov 09, 2020 7:53 pm The .trd file can't be executed when created after selecting the .scl file but it's always succesfully saved and can be executed later.
Okay, I've fixed the silly bug in the SCL plugin that was stopping auto start working. It will be in the next test release. Thanks for your feedback!
tom-cat
Drutt
Posts: 43
Joined: Sat Oct 03, 2020 7:39 am

Re: New File Browser for ZX-UNO

Post by tom-cat »

Thank you for the great .SCR viewer. Browsing with 1 and 2 is exactly what was needed... perfect for a nice slideshow of your favorite loading screen$ :D
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: Tue Nov 10, 2020 5:35 pm Thank you for the great .SCR viewer. Browsing with 1 and 2 is exactly what was needed... perfect for a nice slideshow of your favorite loading screen$ :D
Glad you like it. You can thank [mention]velesoft[/mention] as he suggested the idea. It wasn't that difficult to add and now all the plugins can access the previous and next files if they need to.
tom-cat
Drutt
Posts: 43
Joined: Sat Oct 03, 2020 7:39 am

Re: New File Browser for ZX-UNO

Post by tom-cat »

Which assembler do you use for the plugins ? Anything that would work on the commandline of windows 10 ? :)
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: Wed Nov 11, 2020 6:49 pm Which assembler do you use for the plugins ? Anything that would work on the commandline of windows 10 ? :)
The browser is developed with z88dk so it's the assembler that comes with that - z80asm. I'm using Ubuntu but you can get z88dk for Windows. I also have a copy of Pasmo on my machine and that will compile a plugin but you'll need to change the DEFC lines as Pasmo doesn't like them. So where you have something like plugin.asm:

Code: Select all

DEFC PLUGIN_ORG=$8000

DEFC PLUGIN_OK=1
DEFC PLUGIN_RESTORE_SCREEN=2
DEFC PLUGIN_RESTORE_BUFFERS=4
DEFC PLUGIN_NAVIGATE=8
DEFC PLUGIN_ERROR=128

DEFC PLUGIN_NAVIGATE_NEXT=1
DEFC PLUGIN_NAVIGATE_PREVIOUS=2

It needs to be changed to:

Code: Select all

PLUGIN_ORG equ $8000

PLUGIN_OK equ 1
PLUGIN_RESTORE_SCREEN equ 2
PLUGIN_RESTORE_BUFFERS equ 4
PLUGIN_NAVIGATE equ 8
PLUGIN_ERROR equ 128

PLUGIN_NAVIGATE_NEXT equ 1
PLUGIN_NAVIGATE_PREVIOUS equ 
to assemble in Pasmo. You can just replace 'DEFC' with blank and '=' with ' equ '. The following command line seemed to build the same binary file as the z88dk assembler.

Code: Select all

pasmo sna.asm SNA
tom-cat
Drutt
Posts: 43
Joined: Sat Oct 03, 2020 7:39 am

Re: New File Browser for ZX-UNO

Post by tom-cat »

Thank you. Got it working with the z88dk :)
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 a bug in the browser when going through Screenshots with 1 and 2 and you go past the page of the selection (lets say you start on page 1 and then with 2 you go into page 2 or even furhter) when you go back out of the screenshot viewer with SPACE (or with 2 if you are on the last entry) the first page is displayed with no selection and it bugs from then on when you move around. You have to go back up one dir to make it ok again.
azesmbog
Manic Miner
Posts: 306
Joined: Sat May 16, 2020 8:43 am

Re: New File Browser for ZX-UNO

Post by azesmbog »

DEFC SCR_SIZE=6912
if a screenshot has a size of 6144, it doesn't stop being a screenshot because of this. Or since it is black and white, does it mean segregation? BLM?)
Well, it doesn't show - well, okay.

I found a .SNA file that works very strangely in the EXP27 version in ZXUno - there is sound, and there is a border, but there is no image :)
Is it just me so broken? :))
https://drive.google.com/file/d/15o9Fd9 ... sp=sharing
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: Thu Nov 12, 2020 5:35 pm There is a bug in the browser when going through Screenshots with 1 and 2 and you go past the page of the selection (lets say you start on page 1 and then with 2 you go into page 2 or even furhter) when you go back out of the screenshot viewer with SPACE (or with 2 if you are on the last entry) the first page is displayed with no selection and it bugs from then on when you move around. You have to go back up one dir to make it ok again.
Thanks for the report. I think I've fixed it. Took me longer to find and download enough .scr files to replicate the issue than it did to fix. :) It will be in the next test build.
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 »

azesmbog wrote: Thu Nov 12, 2020 8:32 pm DEFC SCR_SIZE=6912
if a screenshot has a size of 6144, it doesn't stop being a screenshot because of this. Or since it is black and white, does it mean segregation? BLM?)
Well, it doesn't show - well, okay.

I found a .SNA file that works very strangely in the EXP27 version in ZXUno - there is sound, and there is a border, but there is no image :)
Is it just me so broken? :))
https://drive.google.com/file/d/15o9Fd9 ... sp=sharing
All the .scr files I had previously encountered were all 6912 bytes so this seemed a sensible sanity check. What attribute value is typically used - INK 0 : PAPER 7 or PAPER 7 : INK 0 if the file doesn't specify colours?

Does .snapload load your snapshot correctly? I'm just executing that dot command with the snapshot filename.
azesmbog
Manic Miner
Posts: 306
Joined: Sat May 16, 2020 8:43 am

Re: New File Browser for ZX-UNO

Post by azesmbog »

bob_fossil wrote: Thu Nov 12, 2020 10:16 pm What attribute value is typically used - INK 0 : PAPER 7 or PAPER 7 : INK 0 if the file doesn't specify colours?
The correct question.
The Z80Stealth emulator loads such screenshots, but does not change the attributes, it would be reasonable to clear and set the standard attributes.
The very good BMP2SCR program loads such files without problems and does not reflect on the size of 6144.
Even in your program there are 2 such files, with hints :) Also, the bitmap font file is usually the same size, there information about the color is not important.
As far as I remember, other programs and emulators can save a file with a size of 6144. So this format has existed for a long time, but whether to support it or not is a master's business :)
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.

Plugin system now supports navigating to the first and last files in a folder. You can also return a status message from a plugin to tell the user information. Hopefully fixed the reported SCL plugin bug and navigation issues in the browser. Please check:

Code: Select all

plugins/plugins_info.txt
for the latest set of features and changes to the plugins as some of the keys have changed.

Oh and in other news - 30,000+ view for this topic. :)
tom-cat
Drutt
Posts: 43
Joined: Sat Oct 03, 2020 7:39 am

Re: New File Browser for ZX-UNO

Post by tom-cat »

Thank you. The bug with the navigation in the browser is fixed. I have modified the plugin a bit so it doesn't need CAPS SHIFT pressed for navigation, since I use it on a plain rubber 48k. Also added a crude way of automatically navigating to the next SCR file if nothing is pressed for a period of time, making an automatic slideshow :) Would be nice to be able to save some sort of configuration byte for a plugin so one could turn the automatic slideshow on/off with a key or something, but that is a tough one I think.
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: Sun Nov 15, 2020 5:48 pm Thank you. The bug with the navigation in the browser is fixed. I have modified the plugin a bit so it doesn't need CAPS SHIFT pressed for navigation, since I use it on a plain rubber 48k. Also added a crude way of automatically navigating to the next SCR file if nothing is pressed for a period of time, making an automatic slideshow :) Would be nice to be able to save some sort of configuration byte for a plugin so one could turn the automatic slideshow on/off with a key or something, but that is a tough one I think.
You can still access the esxdos api from the plugin so there's nothing stopping you writing a byte or bytes from the plugin on exit and saving them to the /BIN/BPLUGINS folder and then loading them back on next startup.
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: Sun Nov 15, 2020 5:57 pm You can still access the esxdos api from the plugin so there's nothing stopping you writing a byte or bytes from the plugin on exit and saving them to the /BIN/BPLUGINS folder and then loading them back on next startup.
Good idea.

btw. would be nice to have common navigation handling in the plugins as it is in the browser. Maybe a way to include the code that reads the configuration for the keys and a routine that scans them and returns if one of the navigation keys were pressed ? Possibly too much hassle, but if it is simple to do would be nice.
Post Reply