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 »

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.
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 Does .snapload load your snapshot correctly?
I figured out the strange work of the snapshot and made it work correctly .. He also loaded earlier, and tried to work, but crooked.
I’m even at a loss to say whether this is version 0.27 or a browser problem :) I hope that no one else will come across this, and snapshots are rarely used. Let's refer this to random insignificant fluctuations :)
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 6:13 pm 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.
Maybe some sort of callback mechanism from the plugin into the browser so you could do input processing or other stuff like displaying messages in the browser from the plugin? That would require some code juggling as the input code uses the nice z88dk functions to do this and the area of memory they live in gets loaded over when the plugin is started. I'll have a think about it.

One way to hack around the issue would be to load the browser config file

Code: Select all

/bin/browse.cfg
into memory in your plugin and pull values from that. This has the following layout:

Code: Select all

struct settings
	{
	unsigned char attr_top_line;
	unsigned char attr_bottom_line;
	unsigned char attr_border;
	unsigned char attr_file;
	unsigned char attr_dir;
	unsigned char attr_selection;
	unsigned char device_number;
	unsigned char flags;
	unsigned char flags2;
	unsigned char key_up;
	unsigned char key_down;
	unsigned char key_left;
	unsigned char key_right;
	unsigned char key_select;
	};
key_up, key_down etc are the scancodes for the browser navigation keypresses. To see whether we're using Kempston joystick input, AND flags with 0x2. You'd then need to include your own keyboard / joystick handling code. :)
tom-cat
Drutt
Posts: 43
Joined: Sat Oct 03, 2020 7:39 am

Re: New File Browser for ZX-UNO

Post by tom-cat »

Thanx for the info. For now will leave it as it is... working nicely.
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.
Just for clarification: I discovered an error here: SpecEmu only support divIDE-Emulation and no divMMC-Emulation. I made a mistake here, when I write that I used SpecEmu with divMMC-Emulation.
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.

Added new plugins to support Pro Tracker 1.x modules (PT1) and multiArtist 8x4 images (MG4).

Is anyone still using the .browse dot command or can I get rid of it and assume everyone is now using the NMI version? :)
Post Reply