Browse Source

Add CP/NET Support for Duodyne

Co-Authored-By: Douglas Miller <16920069+durgadas311@users.noreply.github.com>
work
Wayne Warthen 2 years ago
parent
commit
3f102e0151
  1. 4
      Binary/CPNET/Clean.cmd
  2. 7
      Binary/CPNET/Makefile
  3. BIN
      Binary/CPNET/NetBoot/ccp.spr
  4. BIN
      Binary/CPNET/NetBoot/ndos.spr
  5. BIN
      Binary/CPNET/NetBoot/snios.spr
  6. 38
      Binary/CPNET/ReadMe.txt
  7. 1
      Binary/Clean.cmd
  8. 2
      Binary/Makefile
  9. BIN
      Binary/cpnos-wbw.sys
  10. 1
      Doc/ChangeLog.txt
  11. BIN
      Doc/RomWBW Applications.pdf
  12. BIN
      Doc/RomWBW Disk Catalog.pdf
  13. BIN
      Doc/RomWBW Errata.pdf
  14. BIN
      Doc/RomWBW ROM Applications.pdf
  15. BIN
      Doc/RomWBW System Guide.pdf
  16. BIN
      Doc/RomWBW User Guide.pdf
  17. 2
      ReadMe.md
  18. 2
      ReadMe.txt
  19. 1
      Source/BuildShared.cmd
  20. 29
      Source/CPNET/Build.cmd
  21. 4
      Source/CPNET/Clean.cmd
  22. 18
      Source/CPNET/Makefile
  23. 20
      Source/CPNET/ReadMe.txt
  24. BIN
      Source/CPNET/duo/cpnet12/ccp.spr
  25. BIN
      Source/CPNET/duo/cpnet12/cpm2net.hlp
  26. BIN
      Source/CPNET/duo/cpnet12/cpnet12.hlp
  27. BIN
      Source/CPNET/duo/cpnet12/ndos.spr
  28. BIN
      Source/CPNET/duo/cpnet12/snios.spr
  29. BIN
      Source/CPNET/duo/cpnet3/cpm3net.hlp
  30. BIN
      Source/CPNET/duo/cpnet3/cpnet3.hlp
  31. BIN
      Source/CPNET/mt011/cpnet12/ccp.spr
  32. BIN
      Source/CPNET/mt011/cpnet12/cpm2net.hlp
  33. BIN
      Source/CPNET/mt011/cpnet12/cpnet12.hlp
  34. BIN
      Source/CPNET/mt011/cpnet12/ndos.spr
  35. BIN
      Source/CPNET/mt011/cpnet12/snios.spr
  36. BIN
      Source/CPNET/mt011/cpnet3/cpm3net.hlp
  37. BIN
      Source/CPNET/mt011/cpnet3/cpnet3.hlp
  38. 1
      Source/Clean.cmd
  39. 182
      Source/Doc/UserGuide.md
  40. 3
      Source/Images/hd_cpm22.txt
  41. 3
      Source/Images/hd_cpm3.txt
  42. 1
      Source/Makefile
  43. 2
      Source/ver.inc
  44. 2
      Source/ver.lib

4
Binary/CPNET/Clean.cmd

@ -0,0 +1,4 @@
@echo off
setlocal
if exist *.lbr del *.lbr

7
Binary/CPNET/Makefile

@ -0,0 +1,7 @@
TOOLS = ../../Tools
MOREDIFF := $(shell $(TOOLS)/unix/casefn.sh *.lbr)
include $(TOOLS)/Makefile.inc
clean::
@rm -f *.lbr

BIN
Binary/CPNET/NetBoot/ccp.spr

Binary file not shown.

BIN
Binary/CPNET/NetBoot/ndos.spr

Binary file not shown.

BIN
Binary/CPNET/NetBoot/snios.spr

Binary file not shown.

38
Binary/CPNET/ReadMe.txt

@ -0,0 +1,38 @@
***********************************************************************
*** ***
*** R o m W B W ***
*** ***
*** Z80/Z180 System Software ***
*** ***
***********************************************************************
This directory contains the CP/NET client packages. Please refer to
the RomWBW User Guide for instructions on installing these packages.
Either the MT011 RCBus module or the Duodyne Disk I/O board is required.
All of these files come from Douglas Miller. Please refer to
https://github.com/durgadas311/cpnet-z80 for more information, complete
documentation and the latest source code. Refer to the RomWBW
User Guide for basic installation and usage instructions under RomWBW.
| File | CP/NET Version | OS | Hardware |
+--------------+----------------+----------+-----------------------+
| CPN12MT.LBR | CP/NET 1.2 | CP/M 2.2 | RCBus w/ MT011 |
| CPN3MT.LBR | CP/NET 3 | CP/M 3 | RCBus w/ MT011 |
| CPN12DUO.LBR | CP/NET 1.2 | CP/M 2.2 | Duodyne w/ Disk I/O |
| CPN3DUO.LBR | CP/NET 3 | CP/M 3 | Duodyne w/ Disk I/O |
In general, to use CP/NET on RomWBW, it is intended that you will
extract the appropriate set of files into your default directory in
user area 0. Refer to the RomWBW User Guide for more information.
The libraries include enhanced help files appropriate for the version
of CP/NET. Rename the desired topic collection to HELP.HLP on the
target system.
CPM2NET.HLP CP/M 2.2 basic system with CP/NET 1.2
CPNET12.HLP CP/NET 1.2 help only
CPM3NET.HLP CP/M 3 basic system with CP/NET 3
CPNET3.HLP CP/NET 3 help only
-- WBW 7:14 AM 2/11/2024

1
Binary/Clean.cmd

@ -14,3 +14,4 @@ if exist *.eeprom del *.eeprom
pushd Apps && call Clean || exit /b 1 & popd
pushd CPM3 && call Clean || exit /b 1 & popd
pushd ZPM3 && call Clean || exit /b 1 & popd
pushd CPNET && call Clean || exit /b 1 & popd

2
Binary/Makefile

@ -1,6 +1,6 @@
TOOLS = ../Tools
MOREDIFF := $(shell $(TOOLS)/unix/casefn.sh *.img *.rom *.com *.eeprom)
SUBDIRS = Apps CPM3 ZPM3
SUBDIRS = Apps CPM3 ZPM3 CPNET
include $(TOOLS)/Makefile.inc

BIN
Binary/cpnos-wbw.sys

Binary file not shown.

1
Doc/ChangeLog.txt

@ -10,6 +10,7 @@ Version 3.5
- L?N: Fixed Propeller font vertical line character to align properly
- L?S: EF9345 video display controller driver
- WBW: Added Cowgol disk image based on the work of Ladislau Szilagyi
- WBW: Added support for CP/NET on Duodyne Disk I/O
Version 3.4
-----------

BIN
Doc/RomWBW Applications.pdf

Binary file not shown.

BIN
Doc/RomWBW Disk Catalog.pdf

Binary file not shown.

BIN
Doc/RomWBW Errata.pdf

Binary file not shown.

BIN
Doc/RomWBW ROM Applications.pdf

Binary file not shown.

BIN
Doc/RomWBW System Guide.pdf

Binary file not shown.

BIN
Doc/RomWBW User Guide.pdf

Binary file not shown.

2
ReadMe.md

@ -3,7 +3,7 @@
**RomWBW ReadMe** \
Version 3.5 \
Wayne Warthen ([wwarthen@gmail.com](mailto:wwarthen@gmail.com)) \
10 Feb 2024
11 Feb 2024
# Overview

2
ReadMe.txt

@ -1,6 +1,6 @@
RomWBW ReadMe
Wayne Warthen (wwarthen@gmail.com)
10 Feb 2024
11 Feb 2024

1
Source/BuildShared.cmd

@ -10,6 +10,7 @@ pushd ZCPR-DJ && call Build || exit /b & popd
pushd ZSDOS && call Build || exit /b & popd
pushd CPM3 && call Build || exit /b & popd
pushd ZPM3 && call Build || exit /b & popd
pushd CPNET && call Build || exit /b & popd
pushd pSys && call Build || exit /b & popd
pushd Apps && call Build || exit /b & popd
pushd Forth && call Build || exit /b & popd

29
Source/CPNET/Build.cmd

@ -0,0 +1,29 @@
@echo off
setlocal
set TOOLS=%~dp0..\..\Tools
set PATH=%TOOLS%\zxcc;%PATH%
set CPMDIR80=%TOOLS%\cpm\
pushd duo\cpnet12
zxcc nulu --O -cpn12duo "-<30" --A -*.* --L --X || exit /b
move cpn12duo.lbr ..\.. || exit /b
popd
pushd duo\cpnet3
zxcc nulu --O -cpn3duo "-<30" --A -*.* --L --X || exit /b
move cpn3duo.lbr ..\.. || exit /b
popd
pushd mt011\cpnet12
zxcc nulu --O -cpn12mt "-<30" --A -*.* --L --X || exit /b
move cpn12mt.lbr ..\.. || exit /b
popd
pushd mt011\cpnet3
zxcc nulu --O -cpn3mt "-<30" --A -*.* --L --X || exit /b
move cpn3mt.lbr ..\.. || exit /b
popd
copy *.lbr ..\..\Binary\CPNET

4
Source/CPNET/Clean.cmd

@ -0,0 +1,4 @@
@echo off
setlocal
if exist *.lbr del *.lbr

18
Source/CPNET/Makefile

@ -0,0 +1,18 @@
OBJECTS = cpn12mt.lbr cpn3mt.lbr cpn12duo.lbr cpn3duo.lbr
DEST = ../../Binary/CPNET/
TOOLS = ../../Tools
include $(TOOLS)/Makefile.inc
ZXCC=$(TREEROOT)/Tools/$(UNAME)/zxcc
export CPMDIR80=$(TREEROOT)/Tools/cpm/
cpn12%.lbr: CPNETVER=cpnet12
cpn3%.lbr: CPNETVER=cpnet3
%mt.lbr: HWVER=mt011
%duo.lbr: HWVER=duo
%.lbr:
cd $(HWVER)/$(CPNETVER)
$(ZXCC) nulu --O -$(*F) -\<30 --A -*.* --L --X
mv $@ ../..

20
Source/CPNET/ReadMe.txt

@ -0,0 +1,20 @@
***********************************************************************
*** ***
*** R o m W B W ***
*** ***
*** Z80/Z180 System Software ***
*** ***
***********************************************************************
This directory contains the CP/M client components for CP/NET. These
components require either the MT011 RCBus module or the Duodyne
Disk I/O board.
All of these files come from Douglas Miller. Please refer to
https://github.com/durgadas311/cpnet-z80 for more information and
the latest source code.
The build process packages the client files into .lbr packages
appropriate for the hardware variations and CP/NET versions.
-- WBW 7:15 AM 2/11/2024

BIN
Source/CPNET/duo/cpnet12/ccp.spr

Binary file not shown.

BIN
Source/CPNET/duo/cpnet12/cpm2net.hlp

Binary file not shown.

BIN
Source/CPNET/duo/cpnet12/cpnet12.hlp

Binary file not shown.

BIN
Source/CPNET/duo/cpnet12/ndos.spr

Binary file not shown.

BIN
Source/CPNET/duo/cpnet12/snios.spr

Binary file not shown.

BIN
Source/CPNET/duo/cpnet3/cpm3net.hlp

Binary file not shown.

BIN
Source/CPNET/duo/cpnet3/cpnet3.hlp

Binary file not shown.

BIN
Source/CPNET/mt011/cpnet12/ccp.spr

Binary file not shown.

BIN
Source/CPNET/mt011/cpnet12/cpm2net.hlp

Binary file not shown.

BIN
Source/CPNET/mt011/cpnet12/cpnet12.hlp

Binary file not shown.

BIN
Source/CPNET/mt011/cpnet12/ndos.spr

Binary file not shown.

BIN
Source/CPNET/mt011/cpnet12/snios.spr

Binary file not shown.

BIN
Source/CPNET/mt011/cpnet3/cpm3net.hlp

Binary file not shown.

BIN
Source/CPNET/mt011/cpnet3/cpnet3.hlp

Binary file not shown.

1
Source/Clean.cmd

@ -11,6 +11,7 @@ pushd ZSDOS && call Clean.cmd & popd
pushd CBIOS && call Clean.cmd & popd
pushd CPM3 && call Clean.cmd & popd
pushd ZPM3 && call Clean.cmd & popd
pushd CPNET && call Clean.cmd & popd
pushd pSys && call Clean.cmd & popd
pushd Forth && call Clean.cmd & popd
pushd TastyBasic && call Clean & popd

182
Source/Doc/UserGuide.md

@ -3122,45 +3122,116 @@ Both CP/NET 1.2 and 3.0 clients are provided. Version 1.2 is for use
with CP/M 2.2 and compatible OSes. Version 3.0 is for use with CP/M 3
and compatible OSes.
The CP/NET client software provided with RomWBW is specifically for the
MT011 Module developed by Mark T for the RCBus. The client software
interacts directly with this hardware. In a future version of RomWBW, I
hope to add a generic networking API that will allow a greater range of
network hardware to be used.
The CP/NET client software provided with RomWBW requires a supported
ethernet interface module. At this time, the following are supported:
* RCBus MT011 w/ Ethernet Featherwing and (optionally) SPI FRAM
(e.g., Adafruit SPI Non-Volatile FRAM Breakout)
* Duodyne Disk I/O w/ Wiz850IO and (optionally) SPI NVRAM
(e.g., 25LC256)
The client software interacts directly with this hardware. In a future
version of RomWBW, I hope to add a generic networking API that will
allow a greater range of network hardware to be used.
To use CP/NET effectively, you will want to review the documentation
provided by Douglas on his
provided by Douglas on at his
[cpnet-z80 GitHub Project](https://github.com/durgadas311/cpnet-z80).
Additionally, you should consult the DRI documentation which is not
included with RomWBW, but is available on the
[cpnet-z80](https://github.com/durgadas311/cpnet-z80) site.
Below, I will provide the general steps involved in setting up a
network using MT011 with RomWBW. The examples are all based on
Z-System.
network using MT011 with RomWBW.
## CP/NET Client Setup
The CP/NET client files are included on the RomWBW disk images, but
they are found in user area 4. They are placed there to avoid
confusing anyone that is not specifically trying to run a network
client.
client. They are only found on the CPM 2.2 and CP/M 3 slices. Using
CP/NET on alternative OSes may work, but is not officially supported.
The CP/NET client files are packaged in `.LBR` library files. The
library files are found in user area 4.
| File | CP/NET Version | OS | Hardware |
|--------------|----------------|----------|-----------------------|
| CPN12MT.LBR | CP/NET 1.2 | CP/M 2.2 | RCBus w/ MT011 |
| CPN3MT.LBR | CP/NET 3 | CP/M 3 | RCBus w/ MT011 |
| CPN12DUO.LBR | CP/NET 1.2 | CP/M 2.2 | Duodyne w/ Disk I/O |
| CPN3DUO.LBR | CP/NET 3 | CP/M 3 | Duodyne w/ Disk I/O |
First, you need to merge the files from the correct library file
into user area 0. This is done by extracting the files using the
`NULU` library management utility application.
1. Start NULU specifying desired CP/NET library for \<filename\>:
`A>NULU 4:<filename>`
2. At the NULU prompt, extract the files using the `-E *.*` command:
`-READY A0:>-E *.*`
First, you need to merge the files from user area 4 into user area 0.
After booting into Z-System (disk boot), you can copy the files
using the following command:
3. Exit NULU using the `-X` command:
`COPY 4:*.* 0:`
`-Extract members A0:>-x`
Here is an example of extracting the CP/NET 1.2 client files for an
RCBus system w/ MT011. You should be in user area 0 when performing
this operation.
```
A>nulu 4:cpn12mt
NULU 1.52 (07/12/87)
Copyright (C) 1984, 1985 & 1987 by Martin Murray
Bug fixes in version 1.52 by Mick Waters
Library A4:CPN12MT.LBR open.
(Buffer size: 259 sectors)
Active entries: 27, Deleted: 0, Free: 5, Total: 32.
-READY A0:>-e *.*
Extracting...
CCP .SPR to A0:CCP .SPR
CPM2NET .HLP to A0:CPM2NET .HLP
CPNBOOT .COM to A0:CPNBOOT .COM
CPNET12 .HLP to A0:CPNET12 .HLP
CPNETLDR.COM to A0:CPNETLDR.COM
CPNETSTS.COM to A0:CPNETSTS.COM
DSKRESET.COM to A0:DSKRESET.COM
ENDLIST .COM to A0:ENDLIST .COM
LOCAL .COM to A0:LOCAL .COM
LOGIN .COM to A0:LOGIN .COM
LOGOFF .COM to A0:LOGOFF .COM
MAIL .COM to A0:MAIL .COM
NDOS .SPR to A0:NDOS .SPR
NETDOWN .COM to A0:NETDOWN .COM
NETSTAT .COM to A0:NETSTAT .COM
NETWORK .COM to A0:NETWORK .COM
NVRAM .COM to A0:NVRAM .COM
PIPNET .COM to A0:PIPNET .COM
RDATE .COM to A0:RDATE .COM
SNIOS .SPR to A0:SNIOS .SPR
SRVSTAT .COM to A0:SRVSTAT .COM
TR .COM to A0:TR .COM
WIZCFG .COM to A0:WIZCFG .COM
WIZDBG .COM to A0:WIZDBG .COM
WIZTEST .COM to A0:WIZTEST .COM
XSUBNET .COM to A0:XSUBNET .COM
-Extract members A0:>-x
Closing A4:CPN12MT.LBR...
```
You will be asked if you want to overwrite `README.TXT`. It doesn't
really matter, but I suggest you do not overwrite it.
The MT011 Module uses a WizNet network module. At this point, you will
need to configure it for your local network. The definitive guide to
the use of `WIZCFG` is on the
[cpnet-z80](https://github.com/durgadas311/cpnet-z80) site in the
document called "CPNET-WIZ850io.pdf". Here is an example of the commands
needed to configure the WizNet:
At this point, you will need to configure your ethernet adapter for your
local network using `WIZCFG`. The definitive guide to the use of
`WIZCFG` is on the [cpnet-z80](https://github.com/durgadas311/cpnet-z80)
site in the document called "CPNET-WIZ850io.pdf". Here is an example of
the commands needed to configure the WizNet:
| | |
|------------------------------------|----------------------------------------|
@ -3184,8 +3255,15 @@ MAC: 98:76:B6:11:00:C4
Socket 0: 00H 192.168.1.3 31100 0
```
You will need to reapply these commands every time you power cycle
your RomWBW computer, so I recommend putting them into a `SUBMIT` file.
These values can be persisted across power-cycles if your system has
NVRAM storage. To program the values into your NVRAM, you would use
the same commands as above, but omit the `w` parameter. The
"CPNET-WIZ850io.pdf" document is highly recommended to understand the
operation of `WIZCFG`.
If you do not utilize NVRAM to persist your configuration, you will need
to reapply these commands every time you power cycle your RomWBW
computer, so I recommend putting them into a `SUBMIT` file.
After applying these commands, you should be able ping the WizNet from
another computer on the local network. If this works, then the
@ -3193,10 +3271,11 @@ client-side is ready.
## CP/NET Sever Setup
These instructions will assume you are using Douglas' CpnetSocketServer
as the server on your network. The definitive guide to this software
is also on the [cpnet-z80](https://github.com/durgadas311/cpnet-z80)
site and is called "CpnetSocketServer.pdf".
These instructions will assume you are using Douglas Miller's
CpnetSocketServer to implement a CP/NOS server on your network. The
definitive guide to this software is also on the [cpnet-z80]
(https://github.com/durgadas311/cpnet-z80) site and is called
"CpnetSocketServer.pdf".
The software is a Java application, so it can generally run anywhere
there is a Java runtime environment available. I have normally used
@ -3240,10 +3319,11 @@ use CP/NET on your RomWBW system. CP/NET documentation is available
on the [cpnet-z80](https://github.com/durgadas311/cpnet-z80) site.
The document is called "dri-cpnet.pdf".
After booting your computer, you will always need to start CP/NET using
the `CPNETLDR` command. If that works, you can map network drives as
local drives using the `NETWORK` command. The `CPNETSTS` command is
useful for displaying the current status. Here is a sample session:
Under CP/M 2.2, you will start the networking client using the command
`CPNETLDR`. Under CP/M 3, you use the command `NDOS3`. If that works,
you can map network drives as local drives using the `NETWORK` command.
The `CPNETSTS` command is useful for displaying the current status.
Here is a sample session from CP/M 2.2:
```
A>cpnetldr
@ -3295,7 +3375,8 @@ Console Device = LOCAL
List Device = LOCAL
```
You will see some additional messages on your server when clients
If you are using CpSocketServer to provide the CP/NOS server, then
you will see some messages on your server console when clients
connect. Here are the messages issued by the server in the above
example:
@ -3305,14 +3386,17 @@ Remote 192.168.1.201 is f0
Creating HostFileBdos 00 device with root dir /home/wayne/cpnet/root
```
At this point CP/NET is ready for general use.
At this point CP/NET is ready for general use. You should be able
to access files on the network mapped drives just like files on your
local drives.
## Network Boot
It is possible to boot your MT011 equipped RomWBW system directly
from a network server. This means that the operating system will be
loaded directly from the network server and all of your drive letters
will be provided by the network server.
It is possible to boot your MT011 equipped RomWBW system directly from a
network server. This means that the operating system will be loaded
directly from the network server and all of your drive letters will be
provided by the network server. Duodyne is not yet supported in this
mode of operation.
It is important to understand that the operating system that is loaded
in this case is **not** a RomWBW enhanced operating system. Some
@ -3320,13 +3404,13 @@ commands (such as the `ASSIGN` command) will not be possible. Also,
you will only have access to drives provided by the network server --
no local disk drives will be available.
In order to do this, your MT011 Module must be enhanced with an NVRAM
SPI FRAM mini-board. The NVRAM is used to store your WizNet
In order to do this, your MT011 Module **must** be enhanced with an
NVRAM SPI FRAM mini-board. The NVRAM is used to store your WizNet
configuration values so they do not need to be re-entered every time you
cold boot your system.
power-cycle your system.
Using the same values from the previous example, you would
issue the WizNet commands:
issue the `WIZCFG` commands:
```
wizcfg n F0
@ -3345,15 +3429,20 @@ contains some files that will be sent to your RomWBW system when the
Network boot is performed. By default the directory will be
`~/NetBoot`. In this directory you need to place the following files:
* `cpnos-wbw.sys` found in the Binary directory of RomWBW
* `ndos.spr` found in the Source/Images/cpnet12 directory of RomWBW
* `snios.spr` found in the Source/Images/cpnet12 directory of RomWBW
* `cpnos-wbw.sys`
* `ndos.spr`
* `snios.spr`
All of these files are found in the Binary/CPNET/NetBoot directory of
the RomWBW distribution.
You also need to make sure CpnetSocketServer is configured with an 'A'
drive and that drive must contain (at an absolute minimum) the following
file:
* `ccp.spr` found in the Source/Images/cpnet12 directory of RomWBW
* `ccp.spr`
which is also found in the Binary/CPNET/NetBoot directory of RomWBW
Finally, you need to add the following line to your CpnetSocketServer
configuration file:
@ -3416,7 +3505,8 @@ List Device = LOCAL
```
At this point you can use CP/M and CP/NET normally, but all disk
access will be to/from the network drives.
access will be to/from the network drives. There is no access to
your local disk drives in this boot mode.
# Transferring Files

3
Source/Images/hd_cpm22.txt

@ -44,7 +44,8 @@ Test/*.* 2:
#
# Add CPNET client files
#
cpnet12/*.* 4:
../../Binary/CPNET/cpn12*.lbr 4:
../../Binary/CPNET/ReadMe.txt 4:
#
# Add OS image
#

3
Source/Images/hd_cpm3.txt

@ -60,7 +60,8 @@ Test/*.* 2:
#
# Add CPNET client files
#
cpnet3/*.* 4:
../../Binary/CPNET/cpn3*.lbr 4:
../../Binary/CPNET/ReadMe.txt 4:
#
# Add Common Applications
#

1
Source/Makefile

@ -25,6 +25,7 @@ shared:
$(MAKE) --directory ZSDOS $(ACTION)
$(MAKE) --directory CPM3 $(ACTION)
$(MAKE) --directory ZPM3 $(ACTION)
$(MAKE) --directory CPNET $(ACTION)
$(MAKE) --directory pSys $(ACTION)
$(MAKE) --directory Apps $(ACTION)
$(MAKE) --directory Forth $(ACTION)

2
Source/ver.inc

@ -2,7 +2,7 @@
#DEFINE RMN 5
#DEFINE RUP 0
#DEFINE RTP 0
#DEFINE BIOSVER "3.5.0-dev.11"
#DEFINE BIOSVER "3.5.0-dev.12"
#define rmj RMJ
#define rmn RMN
#define rup RUP

2
Source/ver.lib

@ -3,5 +3,5 @@ rmn equ 5
rup equ 0
rtp equ 0
biosver macro
db "3.5.0-dev.11"
db "3.5.0-dev.12"
endm

Loading…
Cancel
Save