Possible new ZXp features
Possible new ZXp features
I've been working at making ZXpand auto-boot a program. After working with Wilf's autobasic code I now have some system which seems reliable.
Does anyone think that it would be good to have a system which could perform tricks on reset?
Some options - off the top of my head - are:
* always load & run 'menu.p' on reset
* load and run a configurable program on reset
* reset normally but load something if shift pressed
* disable the overlay if shift pressed
Bear in mind that I only have ~20 bytes to play with until I manage to remove some more ROM code...
Does anyone think that it would be good to have a system which could perform tricks on reset?
Some options - off the top of my head - are:
* always load & run 'menu.p' on reset
* load and run a configurable program on reset
* reset normally but load something if shift pressed
* disable the overlay if shift pressed
Bear in mind that I only have ~20 bytes to play with until I manage to remove some more ROM code...
Re: Possible new ZXp features
How about having a Reset without deleting anything in Memory?
To break a Program or recover a crashed program.
Autorunning menu.p would be great![Cool 8-)](./images/smilies/icon_cool.gif)
To break a Program or recover a crashed program.
Autorunning menu.p would be great
![Cool 8-)](./images/smilies/icon_cool.gif)
In theory, there is no difference between theory and practice. But, in practice, there is.
Re: Possible new ZXp features
I would second being able to autorun a program (unless a specific key was held down).
Menu.p or maybe "Boot.p" would make more sense?
This would then allow someone to write a boot program which presents a list of all the P files on the SD memory card to make it easier to select and load the one you want!
Menu.p or maybe "Boot.p" would make more sense?
This would then allow someone to write a boot program which presents a list of all the P files on the SD memory card to make it easier to select and load the one you want!
Rich Mellor
RWAP Software
RWAP Adventures
SellMyRetro
Retro-Printer Module
Also Involved in:
Icephorm
RWAP Software
RWAP Adventures
SellMyRetro
Retro-Printer Module
Also Involved in:
Icephorm
Re: Possible new ZXp features
I'd go along with Rich, either auot load menu.p or boot.p, any other options you want can be written into the boot program....
Andy
Andy
what's that Smell.... smells like fresh flux and solder fumes...
Re: Possible new ZXp features
If an autorun ("AUTOEXEC.P"RWAP wrote:I would second being able to autorun a program (unless a specific key was held down).
![Wink ;-)](./images/smilies/icon_e_wink.gif)
Siggi
My ZX81 web-server: online since 2007, running since dec. 2020 using ZeddyNet hardware
http://zx81.ddns.net/ZxTeaM
http://zx81.ddns.net/ZxTeaM
Re: Possible new ZXp features
I've been experimenting with Wilf's AUTOBASIC code. I can't get it to work cleanly though ![Sad :(](./images/smilies/icon_e_sad.gif)
Has anyone had success with it?
![Sad :(](./images/smilies/icon_e_sad.gif)
Has anyone had success with it?
Re: Possible new ZXp features
Yes, it works not perfectly, but good enough to autostart my web-server: it executes a LOAD "a" to load an autostart program to initialize the serial port of the server, load a filesystem into high ram and to start the server program.
But my rom code does not initialize all BASIC system variables (not enough space in rom!)! So the first key press (after the server has been shut down) results in an invalid command.
But on the next command everything works normally
Siggi
But my rom code does not initialize all BASIC system variables (not enough space in rom!)! So the first key press (after the server has been shut down) results in an invalid command.
![Surprised :o](./images/smilies/icon_e_surprised.gif)
But on the next command everything works normally
![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
Siggi
My ZX81 web-server: online since 2007, running since dec. 2020 using ZeddyNet hardware
http://zx81.ddns.net/ZxTeaM
http://zx81.ddns.net/ZxTeaM
Re: Possible new ZXp features
Yes, that's exactly the behaviour I was seeing.. Hmm, a little more work required ![Wink ;)](./images/smilies/icon_e_wink.gif)
C
![Wink ;)](./images/smilies/icon_e_wink.gif)
C
Re: Possible new ZXp features
Hi Charlie
here are some features (commands and options) of MEFISDOS. Maybe you want to add some of them to ZXPAND.
MEFISDOS supports also that commands:
"F" (Flag): set/reset file attribrutes to make files READONLY, HIDDEN or AUTOSTART (m/c programs)
"K" and "V" to make or delete directories
"D" (directory) shows only normal files, but not hidden files. "A" shows all files
"R" (Rename) a file
"C" (Copy) a file to another directory or another MMC (if you have 2 or more MMC slots).
Copy supports also a "single drive copy", where you can copy a file from MMC1 to MMC2 by using only one MMC slot (you have to insert the correct card several times)
"M" (Move) moves a file to another directory or another MMC (if you have 2 or more slots). Similar to COPY (incl. single drive MOVE)
Options for "S" (SAVE)
-B (Screen (BILD)) saves a screen to MMC. LOAD overwrites the current screen with the saved screen
-V (Variables). Saves the variables to MMC. LOAD merges existing variables with saved variables
-L (Lines) saves a block o BASIC lines to MMC. LOAD merges the lines into an existing program (so you can load saved BASIC "libraries")
-H (HIRES) saves a HIRES screen (at well known memory location and size) to MMC
MEFISDOS has also a BASIC-program interface (PRINT USR 8195;"command") where a BASIC program can call MEFISDOS. If an error occurs, the BASIC-program is NOT stopped, but can PEEK 16434 to get an error code (0: no erro) to do its own error handling.
A "D" during that mode does not show the directory on screen, but reads it to memory, where the BASIC-program can PEEK it to read file names, attributes and the length of file and process the file.
I wrote some BASIC programs, which use that Basic-interface: "TREECOPY" copies a directory and its files and subdirectories, "TREEDEL" deletes a directory and its files and subdirectories
MEFISDOS has also a m/c interface (commands are read from memory and RET is executed to return to m/c)
AND: MEFISDOS has a builtin "browser", where you can use the cursor keys to "browse" through the directories on MMC and use key "L" to load the file, where the cursor is located
Siggi
PS: The ZX-team has a "POKE-8" card in the ZX96: it listens to memory writes to address $0008 and stores the poked value. That latch is used for bank-switching to enable or disable MEFISDOS at address 8K-16K by a simple POKE without having a patched ROM ....
Edit:
Addendum: MEFISDOS uses its own file system and is compatible to itself. But "Billy the Gates"' file systems are not compatible to MEFISDOS ....
here are some features (commands and options) of MEFISDOS. Maybe you want to add some of them to ZXPAND.
MEFISDOS supports also that commands:
"F" (Flag): set/reset file attribrutes to make files READONLY, HIDDEN or AUTOSTART (m/c programs)
"K" and "V" to make or delete directories
"D" (directory) shows only normal files, but not hidden files. "A" shows all files
"R" (Rename) a file
"C" (Copy) a file to another directory or another MMC (if you have 2 or more MMC slots).
Copy supports also a "single drive copy", where you can copy a file from MMC1 to MMC2 by using only one MMC slot (you have to insert the correct card several times)
"M" (Move) moves a file to another directory or another MMC (if you have 2 or more slots). Similar to COPY (incl. single drive MOVE)
Options for "S" (SAVE)
-B (Screen (BILD)) saves a screen to MMC. LOAD overwrites the current screen with the saved screen
-V (Variables). Saves the variables to MMC. LOAD merges existing variables with saved variables
-L (Lines) saves a block o BASIC lines to MMC. LOAD merges the lines into an existing program (so you can load saved BASIC "libraries")
-H (HIRES) saves a HIRES screen (at well known memory location and size) to MMC
MEFISDOS has also a BASIC-program interface (PRINT USR 8195;"command") where a BASIC program can call MEFISDOS. If an error occurs, the BASIC-program is NOT stopped, but can PEEK 16434 to get an error code (0: no erro) to do its own error handling.
A "D" during that mode does not show the directory on screen, but reads it to memory, where the BASIC-program can PEEK it to read file names, attributes and the length of file and process the file.
I wrote some BASIC programs, which use that Basic-interface: "TREECOPY" copies a directory and its files and subdirectories, "TREEDEL" deletes a directory and its files and subdirectories
MEFISDOS has also a m/c interface (commands are read from memory and RET is executed to return to m/c)
AND: MEFISDOS has a builtin "browser", where you can use the cursor keys to "browse" through the directories on MMC and use key "L" to load the file, where the cursor is located
![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
Siggi
PS: The ZX-team has a "POKE-8" card in the ZX96: it listens to memory writes to address $0008 and stores the poked value. That latch is used for bank-switching to enable or disable MEFISDOS at address 8K-16K by a simple POKE without having a patched ROM ....
Edit:
Addendum: MEFISDOS uses its own file system and is compatible to itself. But "Billy the Gates"' file systems are not compatible to MEFISDOS ....
Last edited by siggi on Tue Sep 13, 2011 8:06 pm, edited 1 time in total.
My ZX81 web-server: online since 2007, running since dec. 2020 using ZeddyNet hardware
http://zx81.ddns.net/ZxTeaM
http://zx81.ddns.net/ZxTeaM
Re: Possible new ZXp features
It was my intention to have 16K ROM available, with optional bank switching. The lines are still on the board but I've never tried it...
Perhaps an 8K mefisdos extension would be possible..!
Perhaps an 8K mefisdos extension would be possible..!