Page 11 of 49

Re: New File Browser for ZX-UNO

Posted: Thu Jul 09, 2020 11:12 am
by bob_fossil
v0.11
  • Added fullscreen browser mode (toggle mode with Symbol Shift + F) which tries to show the loading screen from the currently selected .sna or .tap file.
  • Text is now displayed with proportional widths to show more characters in longer filenames.
Download here.

If you need to rollback to the previous version.

Re: New File Browser for ZX-UNO

Posted: Fri Jul 10, 2020 2:36 pm
by pjrodriguez
Thank you for the new version. Everything works great.

Re: New File Browser for ZX-UNO

Posted: Fri Jul 10, 2020 3:33 pm
by bob_fossil
pjrodriguez wrote: Fri Jul 10, 2020 2:36 pm Thank you for the new version. Everything works great.
You're welcome! Thanks for the feedback.

Re: New File Browser for ZX-UNO

Posted: Fri Jul 10, 2020 4:48 pm
by XoRRoX
Thanks, Bob :)

Been busy lately but will let you know when I tried it.

Re: New File Browser for ZX-UNO

Posted: Fri Jul 10, 2020 5:28 pm
by zxassembler
Absolutely fantastic!. All working perfectly. I can't live without this browser now in my ZXUno :)

Re: New File Browser for ZX-UNO

Posted: Mon Jul 13, 2020 6:46 pm
by keithshaw3
Great stuff, all good here :)

Re: New File Browser for ZX-UNO

Posted: Tue Jul 14, 2020 10:45 pm
by azesmbog
bob_fossil wrote: Thu Jul 09, 2020 11:12 am If you need to rollback to the previous version.
In recent versions, it is already impossible to delete the TMP directory to speed up loading?
What is the latest version, where I can still do it, because each time I wait for 17 seconds - this is very annoying: ((

Re: New File Browser for ZX-UNO

Posted: Wed Jul 15, 2020 5:54 pm
by bob_fossil
azesmbog wrote: Tue Jul 14, 2020 10:45 pm In recent versions, it is already impossible to delete the TMP directory to speed up loading?
What is the latest version, where I can still do it, because each time I wait for 17 seconds - this is very annoying: ((
From the manual:
Q: Why does it take 15-17 seconds to enter the browser when I press the NMI?

A: On first run, the browser checks for the /TMP folder and creates it if it isn't there. It then tries to open and writes the contents of the RAM (49152 bytes) to a file /TMP/BROWSE.NMI. Creating the /TMP folder and BROWSE.NMI file for the first time seems to take more time.

Q: It's still taking 15-17 seconds to enter the NMI browser after the first run.

A: If you're still getting a significant delay on subsequent NMI presses, the delay may be due to the write speed of the SD card / ESXDOS hardware. On 2 SanDisk cards I have, the delay is 1-2 seconds. On another Samsung Micro SD card inside an SD card adapter the delay increases to 15-17 seconds. So if possible, try another brand of SD card to see if you get better results. You can also run BRWSCFG and turn on the 'No NMI write (Slow SD Cards)' option. This will run the NMI without saving the RAM to a file on startup. This will still let you use the NMI as a fast file browser to autostart your .tap, .trd and snapshot files but snapshot saving and POKEs are disabled and will invariably reset or crash when you exit the NMI.
So to enable the option, run .brwscfg, select the 'Advanced' category and set 'No NMI Write (Slow SD Cards)' to 'On' and save your settings.

Re: New File Browser for ZX-UNO

Posted: Wed Jul 15, 2020 9:54 pm
by azesmbog
bob_fossil wrote: Wed Jul 15, 2020 5:54 pm
So to enable the option, run .brwscfg, select the 'Advanced' category and set 'No NMI Write (Slow SD Cards)' to 'On' and save your settings.
I am sorry that you had to paint me in such detail, but English is not my native language. Therefore, I do not always capture the essence, even in the description. I wanted to go to Help, but it didn’t work right away, so I asked.
Thank you, it all worked out. It is important for me only to quickly open files, for testing, that's all. I’m not interested in the recording now.
Someday I will test my set of files on other SD cards

Re: New File Browser for ZX-UNO

Posted: Wed Jul 15, 2020 10:12 pm
by bob_fossil
azesmbog wrote: Wed Jul 15, 2020 9:54 pm I am sorry that you had to paint me in such detail, but English is not my native language. Therefore, I do not always capture the essence, even in the description. I wanted to go to Help, but it didn’t work right away, so I asked.
Thank you, it all worked out. It is important for me only to quickly open files, for testing, that's all. I’m not interested in the recording now.
Someday I will test my set of files on other SD cards
No need to apologise. I suspected it might have been a language issue. I appreciate the effort it takes to learn another language and then try and communicate with others using it. Funnily enough, I added this option back in v0.08 specifically for people like you when I fixed the other problem where the TMP folder wasn't automatically being created when you launched the NMI. :)

Previous released versions are still hosted on my web space. You can travel back in time (and features) by changing 'latest' to a version number in the download URL. So to go back to version 0.04, you can do:

Code: Select all

http://www.thefossilrecord.co.uk/wp-content/uploads/zx/BROWSE_004.zip

Re: New File Browser for ZX-UNO

Posted: Mon Aug 31, 2020 6:22 pm
by bob_fossil
New test version available here. This just adds screen preview for v2/3 .z80 files in fullscreen browser mode (this only works from the NMI version of the browser) along with some small bug fixes.

Re: New File Browser for ZX-UNO

Posted: Fri Sep 11, 2020 8:40 pm
by zxassembler
Thanks for your effort. I will try the new version. I can't live without this browser in my ZX Uno ;)

Re: New File Browser for ZX-UNO

Posted: Sun Sep 27, 2020 12:00 am
by velesoft
Idea for speed-up start of NMI on DivMMC. Code may detect size of DivXXX ram memory and backup zx ram to this 8kB ram pages without any writing to slow SD card. Standard DivMMC contain 128kB or 512kB of external fast ram.

Re: New File Browser for ZX-UNO

Posted: Sun Sep 27, 2020 10:12 am
by bob_fossil
velesoft wrote: Sun Sep 27, 2020 12:00 am Idea for speed-up start of NMI on DivMMC. Code may detect size of DivXXX ram memory and backup zx ram to this 8kB ram pages without any writing to slow SD card. Standard DivMMC contain 128kB or 512kB of external fast ram.
Do you have any code or documentation for this - e.g. how do I page in the 8k ram page, what address is it paged to, what bank is currently paged in and how do I detect the size of RAM (if any) on the DivMMC? Thanks.

Re: New File Browser for ZX-UNO

Posted: Sun Sep 27, 2020 12:05 pm
by velesoft
bob_fossil wrote: Sun Sep 27, 2020 10:12 am
velesoft wrote: Sun Sep 27, 2020 12:00 am Idea for speed-up start of NMI on DivMMC. Code may detect size of DivXXX ram memory and backup zx ram to this 8kB ram pages without any writing to slow SD card. Standard DivMMC contain 128kB or 512kB of external fast ram.
Do you have any code or documentation for this - e.g. how do I page in the 8k ram page, what address is it paged to, what bank is currently paged in and how do I detect the size of RAM (if any) on the DivMMC? Thanks.
Yes. All is easy.
OUT 227, 128+page number (0-63) disconnect zx rom and connect from address 0 eeprom 8kB with system and from address 8192 connect 8kB divmmc ram pages.
OUT 227,0 disconnect divmmc memory (if is not automatically mapped before...)
Divmmc system esxdos use only first 40kB of external ram(pages 0-4) and all next pages(5-63) are free ram for your use. Divmmc exist in two memory versions : 128kB and 512kB. 128kB model use pages 0-15 and 88kB is free. 512kB model use pages 0-63 and 472kB is free. Detection is easy. Contact me for more details.

Re: New File Browser for ZX-UNO

Posted: Wed Sep 30, 2020 10:36 pm
by bob_fossil
For anyone feeling brave, I've written a test version of the browser NMI.SYS which uses DivMMC memory paging to reduce the amount of data written to the SD-Card when you activate the NMI. It's still writing a file to the card in the /TMP/ folder but only a fraction of what it did before.

On my ZX-Uno with a particularly slow SD card which took around 14 seconds to get to the NMI, the time is down to a more speedy 2-3 seconds. I'd advise backing up the current NMI.SYS on your card and then copying over the newer version in case you encounter issues and need to restore the old browser NMI.

Please note that this assumes your DivMMC device has 128k of pageable memory. I've tested it with Fuse and my ZX-Uno.

Thanks again to [mention]velesoft[/mention] for pointing me in the right direction and helping me get the code straight.

You can download it from here.

Re: New File Browser for ZX-UNO

Posted: Thu Oct 01, 2020 5:27 pm
by velesoft
And why need write to TMP if DivMMC memory is detected ? Standard NMI on Esxdos also use extra ram instead SD card for speed-up.

Big part of DivMMC ram memory is unused then we can use this 8kB ram pages for extended dot commands for example. None 8kB limits as before. But more easy is before dot command backup ZX ram to Divmmc pages and new long dot commands use as standard ZX program and command code may direct access to zx ram image in Divmmc 8kB pages. This enable new features.

Re: New File Browser for ZX-UNO

Posted: Thu Oct 01, 2020 5:41 pm
by bob_fossil
velesoft wrote: Thu Oct 01, 2020 5:27 pm And why need write to TMP if DivMMC memory is detected ? Standard NMI on Esxdos also use extra ram instead SD card for speed-up
If the extra DivMMC memory is paged into the same address space as the NMI (0x2000-0x3ffff) as soon as I try to page in the memory from the NMI, I page out my code in the NMI. To workaround this, I save 512 bytes of memory to disk and then relocate the code to copy the RAM to the DivMMC pages there. I then page the NMI back in and carry on the browser startup from there. When I quit the browser, I need to do the same again to restore the RAM from the DivMMC memory pages. I then restore the memory I overwrote for the relocater with the memory saved to disk.

The current esxDOS NMI writes the screen memory to the /TMP/ folder when you enter the NMI.

Re: New File Browser for ZX-UNO

Posted: Thu Oct 01, 2020 7:06 pm
by velesoft
bob_fossil wrote: Thu Oct 01, 2020 5:41 pm
velesoft wrote: Thu Oct 01, 2020 5:27 pm And why need write to TMP if DivMMC memory is detected ? Standard NMI on Esxdos also use extra ram instead SD card for speed-up
If the extra DivMMC memory is paged into the same address space as the NMI (0x2000-0x3ffff) as soon as I try to page in the memory from the NMI, I page out my code in the NMI. To workaround this, I save 512 bytes of memory to disk and then relocate the code to copy the RAM to the DivMMC pages there. I then page the NMI back in and carry on the browser startup from there. When I quit the browser, I need to do the same again to restore the RAM from the DivMMC memory pages. I then restore the memory I overwrote for the relocater with the memory saved to disk.

The current esxDOS NMI writes the screen memory to the /TMP/ folder when you enter the NMI.
My idea is:
- after jump to NMI you can copy small part of zx ram direct to divmmc ram nmi page and copy own "CODE 1" from NMI page to zx ram.
- jump to CODE 1 in ZX ram for full backup of zx ram to unused(free) divmmc ram pages (also small ram part from previous copy CODE 1) and load your NMI code (browser) direct to ZX ram. This way don't need any saving to SD card. NMI only save zx ram from 16384 to 49151 (32kB) to DIVMMC memory. Then DIVMMC model with 128kB external ram will use 32kB for esxdos and next 32kB for zx screen with zx memory backup. And second 64kB of DIVMMC ram is free...
Or after first start of NMI preload all NMI code to free DIVMMC ram pages and may work also without SD card.

Re: New File Browser for ZX-UNO

Posted: Thu Oct 01, 2020 10:17 pm
by bob_fossil
velesoft wrote: Thu Oct 01, 2020 7:06 pm
My idea is:
- after jump to NMI you can copy small part of zx ram direct to divmmc ram nmi page and copy own "CODE 1" from NMI page to zx ram.
- jump to CODE 1 in ZX ram for full backup of zx ram to unused(free) divmmc ram pages (also small ram part from previous copy CODE 1) and load your NMI code (browser) direct to ZX ram. This way don't need any saving to SD card. NMI only save zx ram from 16384 to 49151 (32kB) to DIVMMC memory. Then DIVMMC model with 128kB external ram will use 32kB for esxdos and next 32kB for zx screen with zx memory backup. And second 64kB of DIVMMC ram is free...
Or after first start of NMI preload all NMI code to free DIVMMC ram pages and may work also without SD card.
Thanks for explaining this. I get a bit confused with the overlapping memory areas and paging. First option was easy to do. Browser NMI.SYS no longer writes any file to the card when you enter the NMI. I've also tidied up the code so the screen is left untouched when you enter the NMI - I was using screen memory for the relocator routine.

Updated version here.

Re: New File Browser for ZX-UNO

Posted: Sat Oct 03, 2020 7:44 am
by tom-cat
Hello

Thank you so much for creating this. It is the only thing that was missing for us DivIDE/DivMMC users. Everything works great, the browsing is a breeze. There is only one "minor" think I would request, if/when time permits:
When browsing and the list starts to scroll it slows down a lot, because of font redraw. Would it be possible to add an option that instead of scrolling by one entry when you get to the end, it would jump to the beginning of the next page (or end of the previous page if you go up) ? It would speed up browsing a lot.

Re: New File Browser for ZX-UNO

Posted: Sat Oct 03, 2020 9:00 am
by arakar
Hello,
I noticed that with the latest NMI browser version, snapshot saving does not work. It produces error 005 and the .SNA file is 0 bytes long.
Old version which uses tempoprary file works.

Thank you for otherwise excellent file browser.

Re: New File Browser for ZX-UNO

Posted: Sat Oct 03, 2020 11:31 am
by bob_fossil
tom-cat wrote: Sat Oct 03, 2020 7:44 am Hello

Thank you so much for creating this. It is the only thing that was missing for us DivIDE/DivMMC users. Everything works great, the browsing is a breeze. There is only one "minor" think I would request, if/when time permits:
When browsing and the list starts to scroll it slows down a lot, because of font redraw. Would it be possible to add an option that instead of scrolling by one entry when you get to the end, it would jump to the beginning of the next page (or end of the previous page if you go up) ? It would speed up browsing a lot.
Thanks for the kind words. You can use cursor left and right to navigate by page.

Re: New File Browser for ZX-UNO

Posted: Sat Oct 03, 2020 12:44 pm
by tom-cat
bob_fossil wrote: Sat Oct 03, 2020 11:31 am Thanks for the kind words. You can use cursor left and right to navigate by page.
Thats true :) It is good enough... thanx.

Re: New File Browser for ZX-UNO

Posted: Sat Oct 03, 2020 2:26 pm
by tom-cat
Has anyone tested this on DivMMC FUTURE ? Can't get it to work... just black screen when starting with NMI or with the dot command .browser.
Works fine on DivIDE (first version).

https://www.thefuturewas8bit.com/shop/s ... uture.html