Game Launcher for ZX Spectrum Next (https://kounch.github.io/knloader/)
Do you have a ZX Spectrum Next, but have trouble remembering which is the best option to launch your programs? knloader to the rescue!
This a set of NextBASIC programs which you can configure to remember, and then use, your preferred way to launch other programs (Next/+3e Mode, 128K mode, USR 0, etc.). As a bonus, you can put some images (like game covers or loading screens).
These programs aren't a replacement for the incorporated Browser, nor offer any other function than to launch other programs.
Official web page: https://kounch.github.io/knloader/
A ZIP file with the latest version is available following this link
- NextZXOS (version 1.3.2). Docs, downloads, etc. here
-
Create
knloader.bdt
file using the text editor of your choice or the included utility script. See the included manual (PDF) for instructions. Optionally, create cache file(s) with the included utility. -
Copy together
knloader.bas
,knlauncher
,knzml
, from one of the distribution language folders (en
for english,es
for spanish, etc.), and the newknloader.bdt
or the cache file(s) to any place in your SD card.
Use the browser or command line to navigate to the folder where knloader.bas
, knlauncher
, knzml
and knloader.bdt
are. Load knloader.bas
.
On first run, if they don't exist, cache files will be created from the data inside database file knloader.bdt
.
The main interface shows a list of the programs found in the database file.
You can use the cursor keys or a joystick (Kempston or MD) to move and select the program that you want to load. Then, press ENTER
, 0
or the joystick button to launch.
- How many loading modes are there?
At the moment, the loading mode can be one of these (TZX, PZX and Pi audio modes require an accelerated Next to function properly):
0 - 3DOS (Next)
1 - TAP
2 - TZX (fast)
3 - DSK (AUTOBOOT)
4 - TAP (USR 0)
5 - TZX (USR0 - Fast)
6 - TAP (Next)
7 - TZX (Next - Fast)
8 - DSK (Custom Boot)
9 - TAP (PI Audio)
10 - TZX
11 - TAP (USR 0 - PI Audio)
12 - TZX (USR 0)
13 - TAP (PI Audio - Next)
14 - TZX (Next)
15 - NEX
16 - Snapshot (Z80, SNX, SNA, etc.)
17 - Z-Machine Program
18 - 3DOS
19 - TAP (48K)
20 - TZX (48K - Fast)
21 - TAP (48K - Pi Audio)
22 - TZX (48K)
23 - TAP (LOAD "" CODE)
24 - TZX (LOAD "" CODE - Fast)
25 - TAP (LOAD "" CODE - USR 0)
26 - TZX (LOAD "" CODE - USR0 - Fast)
27 - TAP (LOAD "" CODE - USR 0 - PI Audio)
28 - TZX (LOAD "" CODE - USR 0)
29 - TAP (LOAD "" CODE - 48K)
30 - TZX (LOAD "" CODE - 48K - Fast)
31 - TAP (LOAD "" CODE - PI Audio - 48K)
32 - TZX (LOAD "" CODE - 48K)
33 - PZX (fast)
34 - PZX (USR0 - Fast)
35 - PZX (Next - Fast)
36 - PZX
37 - PZX (USR 0)
38 - PZX (Next)
39 - PZX (48K - Fast)
40 - PZX (48K)
41 - PZX (LOAD "" CODE - Fast)
42 - PZX (LOAD "" CODE - USR0 - Fast)
43 - PZX (LOAD "" CODE - USR 0)
44 - PZX (LOAD "" CODE - 48K - Fast)
45 - PZX (LOAD "" CODE - 48K)
- What do i need to load PZX files?
In order to load PZX files you need two things; an accelerated Next, and running pzxinstall.bas
. This program will copy pzx2wav
(part of PZX Tools) to your accelerated Raspberry Pi. See the manual for more extended instructions.
- What formats are supported for the image files?
The file must be a full ZX Spectrum Next screen image file. It can be in SCR, SLR, SHC, SL2 or BMP format.
- Does this software write anything to the SD card?
The programs create a preferences file named opts.tmp
inside the same folder where knloader.bas
is installed.
They also create a variable number of cache files inside /tmp/knloader
. This is necessary to speed up the program execution and overcome RAM limitations for large database files. However, if the database file is not changed, these will become read only on all subsequent executions.
For all other operations, temporary files are created in the RAM disk.
Página web oficial: https://kounch.github.io/knloader/
Se puede obtener un fichero ZIP con la última versión siguiendo este enlace.
- NextZXOS (versión 1.3.2). Documentos, descargas, etc. aquí.
-
Crear un archivo
knloader.bdt
con un programa editor de texto con el script incluído. Veáse el manual (PDF) para más instrucciones. Opcionalmente, crear archivo(s) de cache usando el script correspondiente. -
Copiar, juntos,
knloader.bas
,knlauncher
,knzml
, desde una de las carpetas de idioma de la distribución (en
en inglés,es
para castellano, etc.), y el nuevo archivoknloader.bdt
o los datos de cache al lugar que se desee de la tarjeta SD.
Acceder usando el programa Browser, o con otro método, hasta la carpeta donde están knloader.bas
, knlauncher
, knzml
y knloader.bdt
. Cargar knloader.bas
.
En la primera ejecución, si no existiesen, se crearán archivos de caché desde la información del archivo de datos knloader.bdt
.
La interfaz principal muestra una lista de los programas encontrados en el archivo de datos.
Se pueden utilizar las teclas de cursor o un joystick compatible (modo Kempston o MD) para moverse y elegir el programa a cargar. Entonces, pulsar ENTER
, 0
o el botón del joystick para ejecutarlo.
- ¿Cuántos modos de carga hay?
En este momento, el modo de carga puede ser uno de los siguientes (los modos TZX, PZX y Pi Audio requieren un ZX Spectrum Next Accelerated para funcionar correctamente):
0 - 3DOS (Next)
1 - TAP
2 - TZX (rápido)
3 - DSK (auto arranque)
4 - TAP (USR 0)
5 - TZX (USR0 - rápido)
6 - TAP (Next)
7 - TZX (Next - rápido)
8 - DSK (arranque personalizado)
9 - TAP (PI Audio)
10 - TZX
11 - TAP (USR 0 - PI Audio)
12 - TZX (USR 0)
13 - TAP (PI Audio - Next)
14 - TZX (Next)
15 - NEX (Next)
16 - Snapshot
17 - Programa de Z-Machine (Next)
18 - 3DOS
19 - TAP (48K)
20 - TZX (48K - rápido)
21 - TAP (48K - Pi Audio)
22 - TZX (48K)
23 - TAP (LOAD "" CODE)
24 - TZX (LOAD "" CODE - rápido)
25 - TAP (LOAD "" CODE - USR 0)
26 - TZX (LOAD "" CODE - USR0 - rápido)
27 - TAP (LOAD "" CODE - USR 0 - PI Audio)
28 - TZX (LOAD "" CODE - USR 0)
29 - TAP (LOAD "" CODE - 48K)
30 - TZX (LOAD "" CODE - 48K - rápido)
31 - TAP (LOAD "" CODE - PI Audio - 48K)
32 - TZX (LOAD "" CODE - 48K)
33 - PZX (rápido)
34 - PZX (USR0 - rápido)
35 - PZX (Next - rápido)
36 - PZX
37 - PZX (USR 0)
38 - PZX (Next)
39 - PZX (48K - rápido)
40 - PZX (48K)
41 - PZX (LOAD "" CODE - rápido)
42 - PZX (LOAD "" CODE - USR0 - rápido)
43 - PZX (LOAD "" CODE - USR 0)
44 - PZX (LOAD "" CODE - 48K - rápido)
45 - PZX (LOAD "" CODE - 48K)
- ¿Qué se necesita para poder cargar archivos PZX?
Para poder cargar ficheros PZX se necesitan dos cosas; un Next Accelerated, y ejecutar una vez pzxinstall.bas
. Este programar copiará a la Raspberry Pi pzx2wav
(que forma parte de PZX Tools). Vea el manual para instrucciones más detalladas.
- ¿Qué formatos pueden tener las imágenes?
Debe ser un archivo de imagen de pantalla completa. Puede ser en el formato SCR, SLR, SHC, SL2 o BMP.
- ¿Se modifican o crean datos en la tarjeta SD?
Los programas crean un archivo de preferencias llamado opts.tmp
en la misma carpeta donde se encuentre knloader.bas
.
También crean un número variable de archivos de caché en /tmp/knloader
. Esto es algo necesario para que la ejecución del programa sea a una velocidad adecuada, así como para superar limitaciones de RAM para archivos de datos grandes. Sin embargo, si no se modifica el archivo de datos, estos nuevos ficheros serán de sólo lectura en todas las ejecuciones posteriores.
Para las demás operaciones, se crean ficheros temporales en el disco RAM.
Copyright (c) 2020-2022 kounch
PZX->WAV convertor Copyright (C) 2007 Patrik Rak
Some of the code used to launch programs has been adapted from the official NextZXOS distribution (especifically from browser.cfg
, tapload.bas
and tzxload.bas
).
Spectrum Next and System/Next are © SpecNext Ltd.
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE