Browse Source

Reintegrate wbw -> trunk

patch
wayne 13 years ago
parent
commit
9e2bdf762b
  1. 4
      Build.cmd
  2. 160
      Doc/Build.txt
  3. 0
      RomDsk/cfg_n8vem_simh/HDIR.COM
  4. 0
      RomDsk/cfg_n8vem_simh/LDTIM.COM
  5. 0
      RomDsk/cfg_n8vem_simh/R.COM
  6. 0
      RomDsk/cfg_n8vem_simh/RSETSIMH.COM
  7. 0
      RomDsk/cfg_n8vem_simh/TIMER.COM
  8. 0
      RomDsk/cfg_n8vem_simh/URL.COM
  9. 0
      RomDsk/cfg_n8vem_simh/W.COM
  10. 0
      RomDsk/cfg_n8vem_std/1200.COM
  11. 0
      RomDsk/cfg_n8vem_std/38400.COM
  12. 0
      RomDsk/cfg_n8vem_std/9600.COM
  13. 0
      RomDsk/cfg_n8vem_std/FLASHZ.COM
  14. 0
      RomDsk/cfg_n8vem_std/LDTIM.COM
  15. 0
      RomDsk/cfg_n8vem_std/RTC.COM
  16. 0
      RomDsk/cfg_n8vem_std/T5.COM
  17. 0
      RomDsk/cfg_n8vem_std/VT3.COM
  18. 0
      RomDsk/cfg_n8vem_std/XM.COM
  19. 0
      RomDsk/cfg_n8vem_std/XM5.COM
  20. 0
      RomDsk/cfg_zeta_std/1200.COM
  21. 0
      RomDsk/cfg_zeta_std/38400.COM
  22. 0
      RomDsk/cfg_zeta_std/9600.COM
  23. 0
      RomDsk/cfg_zeta_std/FDTST.COM
  24. 0
      RomDsk/cfg_zeta_std/FLASHZ.COM
  25. 0
      RomDsk/cfg_zeta_std/LDTIM.COM
  26. 0
      RomDsk/cfg_zeta_std/PPIDETST.COM
  27. 0
      RomDsk/cfg_zeta_std/RTC.COM
  28. 0
      RomDsk/cfg_zeta_std/SURVEY.COM
  29. 0
      RomDsk/cfg_zeta_std/XM.COM
  30. 0
      RomDsk/cfg_zeta_std/XM5.COM
  31. 72
      RomList.txt
  32. 38
      Source/Build.ps1
  33. 2
      Source/config_n8_2312.asm
  34. 2
      Source/config_n8_2511.asm
  35. 2
      Source/config_n8vem_cvdu.asm
  36. 2
      Source/config_n8vem_dide.asm
  37. 2
      Source/config_n8vem_diskio.asm
  38. 2
      Source/config_n8vem_diskio3.asm
  39. 2
      Source/config_n8vem_ppide.asm
  40. 2
      Source/config_n8vem_ppisd.asm
  41. 2
      Source/config_n8vem_propio.asm
  42. 2
      Source/config_n8vem_simh.asm
  43. 2
      Source/config_n8vem_std.asm
  44. 2
      Source/config_n8vem_vdu.asm
  45. 83
      Source/config_s100_std.asm
  46. 2
      Source/config_zeta_ppp.asm
  47. 2
      Source/config_zeta_std.asm
  48. 61
      Source/makefile
  49. 10
      Source/std.asm

4
Build.cmd

@ -1,4 +1,4 @@
@echo off
pushd Source
setlocal
cd Source
PowerShell .\Build.ps1 %*
popd

160
Doc/Build.txt

@ -26,7 +26,7 @@ In summary, the process involves the 4 steps below:
4) Burn the resultant ROM image and try it.
The process is really very simple. In fact, you can
essentially skip steps 1 & 2 if yoiu want to try simply
essentially skip steps 1 & 2 if you want to try simply
building one of the existing configurations.
Each of the 4 steps above is described in more detail
@ -42,20 +42,20 @@ need to modify an existing configuration file or
create your own.
If you look in the Source directory, you will see
a series of files named config_xxxxxx.asm. Each of
a series of files named config_xxxx_yyyy.asm. Each of
them corresponds to one of the standard configurations
listed in the ROMList.txt file.
You have two choices. You can simply modify the existing
configuration file that is closest to your situation, or
you can copy it to a new config_xxxxx.asm file and modify
you can copy it to a new config_xxxx_yyyy.asm file and modify
that. I recommend that you copy one to your own name so
that you will always have the unmodified standard configuration
files left in place. So, for example, you could just
copy config_zeta.asm to config_wayne.asm. You MUST
name your config file as congig_xxxxxx.asm. The xxxx's
can be whatever you want, but the rest must be exactly
as indicated.
copy config_ZETA_std.asm to config_ZETA_wayne.asm. You MUST
name your config file as config_xxxx_yyyy.asm. The xxxx's
must match your platform (N8VEM, ZETA, N8, S2I, or S100).
The yyyy's can be whatever you want.
The config files are simply text files with various
settings. Open your target config file with your
@ -94,25 +94,19 @@ space available for the ROM drive.
Second, all files from the directory that corresponds to
your configuration file will be included. If you build
the "zeta" configuration, all files in cfg_zeta will
the "ZETA_std" configuration, all files in cfg_ZETA_std will
be added. Note that these files will be in addition
to the files from the std_XXXKB directory.
If you created your own config file (like config_wayne.asm
If you created your own config file (like config_ZETA_wayne.asm
described above), you MUST create a subdirectory within
the RomDsk directory and populate it with the files
you want added. Normally, you would include the
files from the original standard config. So, if
you created config_wayne.asm from config_zeta.asm,
you created config_ZETA_wayne.asm from config_ZETA_std.asm,
then you would create a subdirectory in RomDsk called
cfg_wayne and copy all the files from cfg_zeta to
cfg_wayne.
Finally, you will notice another subdirectory called
RomApps. This is directory is used to place a set of
RomWBW apps provided by Douglas Goodall. The driectory
will be populated automatically and the files will be
included automatically.
cfg_ZETA_wayne and copy all the files from cfg_ZETA_std to
cfg_ZETA_wayne.
3. Run the Build Process
------------------------
@ -137,7 +131,7 @@ in red text.
If you immediately receive the error "the execution of
scripts is disabled on this system", then you will need to
change the PowerShell Execution-Polcy to "Unrestricted".
change the PowerShell Execution-Polcy to "RemoteSigned".
To do this, you need to right-click on FixPowerShell.cmd and
choose "Run as Administrator" to make the change. If is
critical that you right-click and use "Run as Administrator"
@ -148,12 +142,17 @@ use "Run as Administrator".
The build script will prompt you for the following information
which you will need to provide (don't worry, it is simple):
Platform:
Respond with the name of the platform that you are targeting.
It must be one of N8VEM, ZETA, N8, S2I, or S100.
Configuration:
Respond with the name of the configuration you wish to build.
A list of all available configurations is displayed for your
convenience. For example, if you are buidling the provided
zeta configuration, just enter "zeta". If you have created a
convenience. For example, if you are building the provided
ZETA_std configuration, just enter "std". If you have created a
custom configuration as described above, you would enter
"wayne".
@ -165,12 +164,6 @@ It is important that you choose a ROM size that is no larger than
the szie of the ROM you will ultimately be burning. This is
dependant on your hardware.
CPU Type Z[80|180]:
Respond with "80" if the ROM is for Z80 hardware such as the
N8VEM Z80 SBC or for Zeta. Respond with "180" if the ROM is
for Z180 based hardware such as the N8.
System [CPM|ZSYS]:
Respond with the type of system you wish to create. If you are
@ -222,7 +215,7 @@ command, you can specify the options right on the command line.
For example:
Build zeta 512 80 CPM
Build ZETA std 512 CPM
In this case, you will not be prompted. This is useful if you
wish to automate your build process.
@ -230,102 +223,117 @@ wish to automate your build process.
Example Build Run
-----------------
C:\Users\WWarthen\N8VEM\Build\RomWBW>build
C:\Users\WWarthen\Projects\N8VEM\Build\RomWBW>Build.cmd
Platform [N8VEM|ZETA|N8|S2I|S100]: ZETA
Configurations available:
> n8
> n8vem
> n8vem_dide
> n8vem_diskio
> n8vem_diskio3
> n8vem_ppide
> n8vem_vdu
> n8vem_vdux
> simh
> zeta
Configuration: zeta
> ppp
> std
Configuration: std
ROM Size [512|1024]: 512
CPU Type Z[80|180]: 80
System [CPM|ZSYS]: CPM
Building zeta: 512KB ROM configuration zeta for Z80...
Building ZETA_std: 512KB ROM configuration std for Z80...
tasm -t80 -b -g3 -fFF ccpb03.asm cp.bin
tasm -t80 -g3 ccpb03.asm cp.bin
TASM Z80 Assembler. Version 3.2 September, 2001.
Copyright (C) 2001 Squak Valley Software
tasm: pass 1 complete.
tasm: pass 2 complete.
tasm: Number of errors = 0
tasm -t80 -g3 bdosb01.asm dos.bin
TASM Z80 Assembler. Version 3.2 September, 2001.
Copyright (C) 2001 Squak Valley Software
tasm: pass 1 complete.
tasm: pass 2 complete.
tasm: Number of errors = 0
tasm -t80 -g3 syscfg.asm syscfg.bin
TASM Z80 Assembler. Version 3.2 September, 2001.
Copyright (C) 2001 Squak Valley Software
tasm: pass 1 complete.
Configuration: ZETA Z80 SBC, FLOPPY (AUTOSIZE), PPIDE (STD)
tasm: pass 2 complete.
tasm: Number of errors = 0
tasm -t80 -g3 -dBLD_SYS=SYS_CPM cbios.asm cbios.bin
TASM Z80 Assembler. Version 3.2 September, 2001.
Copyright (C) 2001 Squak Valley Software
tasm: pass 1 complete.
Configuration: ZETA Z80 SBC, FLOPPY (AUTOSIZE), PPIDE (STD)
INFOLIST occupies 18 bytes.
UTIL occupies 484 bytes.
FD_DATA occupies 340 bytes.
PPIDE_DATA occupies 1116 bytes.
CBIOS space remaining: 2092 bytes.
tasm: pass 2 complete.
tasm: Number of errors = 0
tasm -t80 -g3 dbgmon.asm dbgmon.bin
TASM Z80 Assembler. Version 3.2 September, 2001.
Copyright (C) 2001 Squak Valley Software
tasm: pass 1 complete.
Configuration: ZETA Z80 SBC, FLOPPY (AUTOSIZE), PPIDE (STD)
DBGMON space remaining: 795 bytes.
tasm: pass 2 complete.
tasm: Number of errors = 0
tasm -t80 -b -g3 -fFF bdosb01.asm dos.bin
tasm -t80 -g3 prefix.asm prefix.bin
TASM Z80 Assembler. Version 3.2 September, 2001.
Copyright (C) 2001 Squak Valley Software
tasm: pass 1 complete.
Configuration: ZETA Z80 SBC, FLOPPY (AUTOSIZE), PPIDE (STD)
tasm: pass 2 complete.
tasm: Number of errors = 0
tasm -t80 -b -g3 -fFF -dBLD_SYS=SYS_CPM data.asm data.bin
tasm -t80 -g3 bootrom.asm bootrom.bin
TASM Z80 Assembler. Version 3.2 September, 2001.
Copyright (C) 2001 Squak Valley Software
tasm: pass 1 complete.
Configuration: ZETA Z80 SBC, FLOPPY (AUTOSIZE), PPIDE
UTIL_DATA occupies 16 bytes.
FD_DATA occupies 427 bytes.
PPIDE_DATA occupies 584 bytes.
DATA space remaining: 23 bytes.
Configuration: ZETA Z80 SBC, FLOPPY (AUTOSIZE), PPIDE (STD)
tasm: pass 2 complete.
tasm: Number of errors = 0
tasm -t80 -b -g3 -fFF -dBLD_SYS=SYS_CPM cbios.asm cbios.bin
tasm -t80 -g3 bootapp.asm bootapp.bin
TASM Z80 Assembler. Version 3.2 September, 2001.
Copyright (C) 2001 Squak Valley Software
tasm: pass 1 complete.
Configuration: ZETA Z80 SBC, FLOPPY (AUTOSIZE), PPIDE
CNFGDATA occupies 69 bytes.
DSKMAP occupies 6 bytes.
UART occupies 77 bytes.
FD occupies 1991 bytes.
PPIDE occupies 832 bytes.
UTIL occupies 381 bytes.
CBIOS space remaining: 165 bytes.
Configuration: ZETA Z80 SBC, FLOPPY (AUTOSIZE), PPIDE (STD)
tasm: pass 2 complete.
tasm: Number of errors = 0
tasm -t80 -b -g3 -fFF dbgmon.asm dbgmon.bin
tasm -t80 -g3 loader.asm loader.bin
TASM Z80 Assembler. Version 3.2 September, 2001.
Copyright (C) 2001 Squak Valley Software
tasm: pass 1 complete.
Configuration: ZETA Z80 SBC, FLOPPY (AUTOSIZE), PPIDE
DBGMON space remaining: 831 bytes.
Configuration: ZETA Z80 SBC, FLOPPY (AUTOSIZE), PPIDE (STD)
LOADER space remaining: 1205 bytes.
tasm: pass 2 complete.
tasm: Number of errors = 0
tasm -t80 -b -g3 -fFF bloader.asm bloader.bin
tasm -t80 -g3 pgzero.asm pgzero.bin
TASM Z80 Assembler. Version 3.2 September, 2001.
Copyright (C) 2001 Squak Valley Software
tasm: pass 1 complete.
Configuration: ZETA Z80 SBC, FLOPPY (AUTOSIZE), PPIDE
BOOT LOADER space remaining: 3522 bytes.
tasm: pass 2 complete.
tasm: Number of errors = 0
tasm -t80 -b -g3 -fFF romx.asm romx.bin
tasm -t80 -g3 hbios.asm hbios.bin
TASM Z80 Assembler. Version 3.2 September, 2001.
Copyright (C) 2001 Squak Valley Software
tasm: pass 1 complete.
Configuration: ZETA Z80 SBC, FLOPPY (AUTOSIZE), PPIDE
ROMX space remaining: 8191 bytes.
Configuration: ZETA Z80 SBC, FLOPPY (AUTOSIZE), PPIDE (STD)
UART occupies 146 bytes.
FD occupies 2071 bytes.
PPIDE occupies 809 bytes.
HBIOS space remaining: 24428 bytes.
STACK space remaining: 145 bytes.
tasm: pass 2 complete.
tasm: Number of errors = 0
tasm -t80 -b -g3 -fFF prefix.asm prefix.bin
tasm -t80 -g3 hbfill.asm hbfill.bin
TASM Z80 Assembler. Version 3.2 September, 2001.
Copyright (C) 2001 Squak Valley Software
tasm: pass 1 complete.
Configuration: ZETA Z80 SBC, FLOPPY (AUTOSIZE), PPIDE
Configuration: ZETA Z80 SBC, FLOPPY (AUTOSIZE), PPIDE (STD)
tasm: pass 2 complete.
tasm: Number of errors = 0
tasm -t80 -b -g3 -fFF loader.asm loader.bin
tasm -t80 -g3 romfill.asm romfill.bin
TASM Z80 Assembler. Version 3.2 September, 2001.
Copyright (C) 2001 Squak Valley Software
tasm: pass 1 complete.
Configuration: ZETA Z80 SBC, FLOPPY (AUTOSIZE), PPIDE
BOOT LOADER space remaining: 3522 bytes.
tasm: pass 2 complete.
tasm: Number of errors = 0
Building zeta output files...
Building 512KB zeta ROM disk data file...
Building ZETA_std output files...
Building 512KB ZETA_std ROM disk data file...
C:\Users\WWarthen\N8VEM\Build\RomWBW>
C:\Users\WWarthen\Projects\N8VEM\Build\RomWBW>

0
RomDsk/cfg_simh/HDIR.COM → RomDsk/cfg_n8vem_simh/HDIR.COM

0
RomDsk/cfg_simh/LDTIM.COM → RomDsk/cfg_n8vem_simh/LDTIM.COM

0
RomDsk/cfg_simh/R.COM → RomDsk/cfg_n8vem_simh/R.COM

0
RomDsk/cfg_simh/RSETSIMH.COM → RomDsk/cfg_n8vem_simh/RSETSIMH.COM

0
RomDsk/cfg_simh/TIMER.COM → RomDsk/cfg_n8vem_simh/TIMER.COM

0
RomDsk/cfg_simh/URL.COM → RomDsk/cfg_n8vem_simh/URL.COM

0
RomDsk/cfg_simh/W.COM → RomDsk/cfg_n8vem_simh/W.COM

0
RomDsk/cfg_n8vem/1200.COM → RomDsk/cfg_n8vem_std/1200.COM

0
RomDsk/cfg_n8vem/38400.COM → RomDsk/cfg_n8vem_std/38400.COM

0
RomDsk/cfg_n8vem/9600.COM → RomDsk/cfg_n8vem_std/9600.COM

0
RomDsk/cfg_n8vem/FLASHZ.COM → RomDsk/cfg_n8vem_std/FLASHZ.COM

0
RomDsk/cfg_n8vem/LDTIM.COM → RomDsk/cfg_n8vem_std/LDTIM.COM

0
RomDsk/cfg_n8vem/RTC.COM → RomDsk/cfg_n8vem_std/RTC.COM

0
RomDsk/cfg_n8vem/T5.COM → RomDsk/cfg_n8vem_std/T5.COM

0
RomDsk/cfg_n8vem/VT3.COM → RomDsk/cfg_n8vem_std/VT3.COM

0
RomDsk/cfg_n8vem/XM.COM → RomDsk/cfg_n8vem_std/XM.COM

0
RomDsk/cfg_n8vem/XM5.COM → RomDsk/cfg_n8vem_std/XM5.COM

0
RomDsk/cfg_zeta/1200.COM → RomDsk/cfg_zeta_std/1200.COM

0
RomDsk/cfg_zeta/38400.COM → RomDsk/cfg_zeta_std/38400.COM

0
RomDsk/cfg_zeta/9600.COM → RomDsk/cfg_zeta_std/9600.COM

0
RomDsk/cfg_zeta/FDTST.COM → RomDsk/cfg_zeta_std/FDTST.COM

0
RomDsk/cfg_zeta/FLASHZ.COM → RomDsk/cfg_zeta_std/FLASHZ.COM

0
RomDsk/cfg_zeta/LDTIM.COM → RomDsk/cfg_zeta_std/LDTIM.COM

0
RomDsk/cfg_zeta/PPIDETST.COM → RomDsk/cfg_zeta_std/PPIDETST.COM

0
RomDsk/cfg_zeta/RTC.COM → RomDsk/cfg_zeta_std/RTC.COM

0
RomDsk/cfg_zeta/SURVEY.COM → RomDsk/cfg_zeta_std/SURVEY.COM

0
RomDsk/cfg_zeta/XM.COM → RomDsk/cfg_zeta_std/XM.COM

0
RomDsk/cfg_zeta/XM5.COM → RomDsk/cfg_zeta_std/XM5.COM

72
RomList.txt

@ -22,13 +22,13 @@ custom build.
DRI CP/M (BDOS & CCP)
---------------------
n8vem.rom for N8VEM Z80 SBC V1/V2:
N8VEM_std.rom for N8VEM Z80 SBC V1/V2:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk (no floppy/IDE)
- Drives A:=ROM, B:=RAM
n8vem_diskio.rom for N8VEM Z80 SBC V1/V2 + DISKIO:
N8VEM_diskio.rom for N8VEM Z80 SBC V1/V2 + DISKIO:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk
@ -36,7 +36,7 @@ DRI CP/M (BDOS & CCP)
- IDE support via DISKIO
- Drives A:=ROM, B:=RAM, C:=FD0, D:=FD1, E:=IDE0-00, F:=IDE0-01, G:=IDE0-02, H:=IDE0-03
n8vem_dide.rom for N8VEM Z80 SBC V1/V2 + DUAL IDE:
N8VEM_dide.rom for N8VEM Z80 SBC V1/V2 + DUAL IDE:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk
@ -44,7 +44,7 @@ DRI CP/M (BDOS & CCP)
- IDE support via DISKIO
- Drives A:=ROM, B:=RAM, C:=FD0, D:=FD1, E:=IDE0-00, F:=IDE0-01, G:=IDE0-02, H:=IDE0-03
n8vem_diskio3.rom for N8VEM Z80 SBC V1/V2 + DISKIO3:
N8VEM_diskio3.rom for N8VEM Z80 SBC V1/V2 + DISKIO3:
- EXPERIMENTAL!
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
@ -53,21 +53,21 @@ DRI CP/M (BDOS & CCP)
- IDE support via DISKIO3
- Drives A:=ROM, B:=RAM, C:=FD0, D:=FD1, E:=IDE0-00, F:=IDE0-01, G:=IDE0-02, H:=IDE0-03
n8vem_ppide.rom for N8VEM Z80 SBC V1/V2 + PPIDE:
N8VEM_ppide.rom for N8VEM Z80 SBC V1/V2 + PPIDE:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk
- IDE support via DISKIO
- Drives A:=ROM, B:=RAM, C:=PPIDE0-00, D:=PPIDE0-01, E:=PPIDE0-02, F:=PPIDE0-03
n8vem_ppisd.rom for N8VEM Z80 SBC V1/V2 + PPISD:
N8VEM_ppisd.rom for N8VEM Z80 SBC V1/V2 + PPISD:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk
- PPISD support
- Drives A:=ROM, B:=RAM, C:=SD0-00, D:=SD0-01, E:=SD0-02, F:=SD0-03
n8vem_propio.rom for N8VEM Z80 SBC V1/V2 + PROPIO:
N8VEM_propio.rom for N8VEM Z80 SBC V1/V2 + PROPIO:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk
@ -80,14 +80,20 @@ DRI CP/M (BDOS & CCP)
- NOTE: Console defaults to VGA & PS/2 Keyboard. Short JP2
(one bit input port) to use the serial port as the console.
n8vem_vdu.rom for N8VEM Z80 SBC V1/V2:
N8VEM_simh.rom for N8VEM SIMH Simulator:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk (no floppy/IDE)
- Drives A:=ROM, B:=RAM, C:=HDSK0-00, D:=HDSK0-01, E:=HDSK0-02, F:=HDSK0-03
N8VEM_vdu.rom for N8VEM Z80 SBC V1/V2:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk
- VDU board support
- Drives A:=ROM, B:=RAM
zeta.rom for Zeta Z80 SBC:
ZETA_std.rom for Zeta Z80 SBC:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk
@ -95,7 +101,7 @@ DRI CP/M (BDOS & CCP)
- PPIDE support via built-in PPI
- Drives A:=ROM, B:=RAM, C:=FD0, D:=FD1, E:=PPIDE00-0, F:=PPIDE0-01, G:=PPIDE0-02, H:=PPIDE0-03
zeta_ppp.rom for Zeta Z80 SBC w/ ParPortProp:
ZETA_ppp.rom for Zeta Z80 SBC w/ ParPortProp:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk
@ -109,7 +115,7 @@ DRI CP/M (BDOS & CCP)
- NOTE: Console defaults to VGA & PS/2 Keyboard. Short JP1 (CONFIG)
to use the serial port as the console.
n8_2511.rom for N8 2511 Z180:
N8_2511.rom for N8 2511 Z180:
- Assumes oscillator frequency of 18.432MHz
- CPU clock at X1 (18.432MHz)
- 512KB ROM, 1MB RAM
@ -119,7 +125,7 @@ DRI CP/M (BDOS & CCP)
- SD card support via built-in SD card slot
- Drives A:=ROM, B:=RAM, C:=FD0, D:=FD1, E:=SD0-00, F:=SD0-01, G:=SD0-02, H:=SD0-03
n8_2312.rom for N8 2312 Z180:
N8_2312.rom for N8 2312 Z180:
- Assumes oscillator frequency of 18.432MHz
- CPU clock at X1 (18.432MHz)
- 512KB ROM, 1MB RAM
@ -129,22 +135,16 @@ DRI CP/M (BDOS & CCP)
- SD card support via built-in SD card slot
- Drives A:=ROM, B:=RAM, C:=FD0, D:=FD1, E:=SD0-00, F:=SD0-01, G:=SD0-02, H:=SD0-03
simh.rom for N8VEM SIMH Simulator:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk (no floppy/IDE)
- Drives A:=ROM, B:=RAM, C:=HDSK0-00, D:=HDSK0-01, E:=HDSK0-02, F:=HDSK0-03
ZSYSTEM (ZSDOS & ZCPR)
----------------------
n8vem_z.rom for N8VEM Z80 SBC V1/V2:
N8VEM_std_z.rom for N8VEM Z80 SBC V1/V2:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk (no floppy/IDE)
- Drives A:=RAM, B:=ROM
n8vem_diskio_z.rom for N8VEM Z80 SBC V1/V2 + DISKIO:
N8VEM_diskio_z.rom for N8VEM Z80 SBC V1/V2 + DISKIO:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk
@ -152,7 +152,7 @@ ZSYSTEM (ZSDOS & ZCPR)
- IDE support via DISKIO
- Drives A:=ROM, B:=RAM, C:=FD0, D:=FD1, E:=IDE0-00, F:=IDE0-01, G:=IDE0-02, H:=IDE0-03
n8vem_dide_z.rom for N8VEM Z80 SBC V1/V2 + DUAL IDE:
N8VEM_dide_z.rom for N8VEM Z80 SBC V1/V2 + DUAL IDE:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk
@ -160,7 +160,7 @@ ZSYSTEM (ZSDOS & ZCPR)
- IDE support via DISKIO
- Drives A:=ROM, B:=RAM, C:=FD0, D:=FD1, E:=IDE0-00, F:=IDE0-01, G:=IDE0-02, H:=IDE0-03
n8vem_diskio3_z.rom for N8VEM Z80 SBC V1/V2 + DISKIO3:
N8VEM_diskio3_z.rom for N8VEM Z80 SBC V1/V2 + DISKIO3:
- EXPERIMENTAL!
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
@ -169,21 +169,21 @@ ZSYSTEM (ZSDOS & ZCPR)
- IDE support via DISKIO3
- Drives A:=ROM, B:=RAM, C:=FD0, D:=FD1, E:=IDE0-00, F:=IDE0-01, G:=IDE0-02, H:=IDE0-03
n8vem_ppide_z.rom for N8VEM Z80 SBC V1/V2 + PPIDE:
N8VEM_ppide_z.rom for N8VEM Z80 SBC V1/V2 + PPIDE:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk
- IDE support via DISKIO
- Drives A:=ROM, B:=RAM, C:=PPIDE0-00, D:=PPIDE0-01, E:=PPIDE0-02, F:=PPIDE0-03
n8vem_ppisd_z.rom for N8VEM Z80 SBC V1/V2 + PPISD:
N8VEM_ppisd_z.rom for N8VEM Z80 SBC V1/V2 + PPISD:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk
- PPISD support
- Drives A:=ROM, B:=RAM, C:=SD0-00, D:=SD0-01, E:=SD0-02, F:=SD0-03
n8vem_propio_z.rom for N8VEM Z80 SBC V1/V2 + PROPIO:
N8VEM_propio_z.rom for N8VEM Z80 SBC V1/V2 + PROPIO:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk
@ -196,14 +196,20 @@ ZSYSTEM (ZSDOS & ZCPR)
- NOTE: Console defaults to VGA & PS/2 Keyboard. Short JP2
(one bit input port) to use the serial port as the console.
n8vem_vdu_z.rom for N8VEM Z80 SBC V1/V2:
N8VEM_vdu_z.rom for N8VEM Z80 SBC V1/V2:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk
- VDU board support
- Drives A:=ROM, B:=RAM
N8VEM_simh_Z.rom for N8VEM SIMH Simulator:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk (no floppy/IDE)
- Drives A:=ROM, B:=RAM, C:=HDSK0-00, D:=HDSK0-01, E:=HDSK0-02, F:=HDSK0-03
zeta_z.rom for Zeta Z80 SBC:
ZETA_std_z.rom for Zeta Z80 SBC:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk
@ -211,7 +217,7 @@ ZSYSTEM (ZSDOS & ZCPR)
- PPIDE support via built-in PPI
- Drives A:=ROM, B:=RAM, C:=FD0, D:=FD1, E:=PPIDE0-00, F:=PPIDE0-01, G:=PPIDE0-02, H:=PPIDE0-03
zeta_ppp_z.rom for Zeta Z80 SBC w/ ParPortProp:
ZETA_ppp_z.rom for Zeta Z80 SBC w/ ParPortProp:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk
@ -225,7 +231,7 @@ ZSYSTEM (ZSDOS & ZCPR)
- NOTE: Console defaults to VGA & PS/2 Keyboard. Short JP1 (CONFIG)
to use the serial port as the console.
n8_2511_z.rom for N8 2511 Z180:
N8_2511_z.rom for N8 2511 Z180:
- Assumes oscillator frequency of 18.432MHz
- CPU clock at X1 (18.432MHz)
- 512KB ROM, 1MB RAM
@ -235,7 +241,7 @@ ZSYSTEM (ZSDOS & ZCPR)
- SD card support via built-in SD card slot
- Drives A:=ROM, B:=RAM, C:=FD0, D:=FD1, E:=SD0-00, F:=SD0-01, G:=SD0-02, H:=SD0-03
n8_2312_z.rom for N8 2312 Z180:
N8_2312_z.rom for N8 2312 Z180:
- Assumes oscillator frequency of 18.432MHz
- CPU clock at X1 (18.432MHz)
- 512KB ROM, 1MB RAM
@ -244,9 +250,3 @@ ZSYSTEM (ZSDOS & ZCPR)
- Floppy support via built-in FDC
- SD card support via built-in SD card slot
- Drives A:=ROM, B:=RAM, C:=FD0, D:=FD1, E:=SD0-00, F:=SD0-01, G:=SD0-02, H:=SD0-03
simh_Z.rom for N8VEM SIMH Simulator:
- 512KB ROM, 512KB RAM
- 38.4KB serial console baud rate
- Basic ROM/RAM disk (no floppy/IDE)
- Drives A:=ROM, B:=RAM, C:=HDSK0-00, D:=HDSK0-01, E:=HDSK0-02, F:=HDSK0-03

38
Source/Build.ps1

@ -1,13 +1,20 @@
param([string]$Config = "", [string]$RomSize = "", [string]$CPUType = "", [string]$SYS = "", [string]$RomName = "")
param([string]$Platform = "", [string]$Config = "", [string]$RomSize = "", [string]$SYS = "", [string]$RomName = "")
$Platform = $Platform.ToUpper()
while ($true)
{
$ConfigFile = "config_${Config}.asm"
if (Test-Path $ConfigFile) {break}
if (($Platform -eq "N8VEM") -or ($Platform -eq "ZETA") -or ($Platform -eq "N8") -or ($Platform -eq "S2I") -or ($Platform -eq "S100")) {break}
$Platform = (Read-Host -prompt "Platform [N8VEM|ZETA|N8|S2I|S100]").Trim().ToUpper()
}
while ($true)
{
$ConfigFile = "config_${Platform}_${Config}.asm"
if (Test-Path $ConfigFile) {break}
if ($Config -ne "") {Write-Host "${ConfigFile} does not exist!"}
"Configurations available:"
Get-Item config_*.asm | foreach {Write-Host " >", $_.Name.Substring(7,$_.Name.Length - 11)}
Get-Item "config_${Platform}_*.asm" | foreach {Write-Host " >", $_.Name.Substring(8 + $Platform.Length, $_.Name.Length - 12 - $Platform.Length)}
$Config = (Read-Host -prompt "Configuration").Trim()
}
@ -17,11 +24,7 @@ while ($true)
$RomSize = (Read-Host -prompt "ROM Size [512|1024]").Trim()
}
while ($true)
{
if (($CPUType -eq "80") -or ($CPUType -eq "180")) {break}
$CPUType = (Read-Host -prompt "CPU Type Z[80|180]").Trim()
}
if ($Platform -eq "N8") {$CPUType = "180"} else {$CPUType = "80"}
$SYS = $SYS.ToUpper()
while ($true)
@ -30,7 +33,7 @@ while ($true)
$SYS = (Read-Host -prompt "System [CPM|ZSYS]").Trim().ToUpper()
}
if ($RomName -eq "") {$RomName = $Config}
if ($RomName -eq "") {$RomName = "${Platform}_${Config}"}
while ($RomName -eq "")
{
$CP = (Read-Host -prompt "ROM Name [${Config}]").Trim()
@ -48,7 +51,7 @@ $env:PATH = $TasmPath + ';' + $CpmToolsPath + ';' + $env:PATH
$OutDir = "../Output"
$RomFmt = "rom${RomSize}KB"
$BlankFile = "blank${RomSize}KB.dat"
$ConfigFile = "Config_${Config}.asm"
#$ConfigFile = "Config_${Config}.asm"
$RomDiskFile = "RomDisk.tmp"
$RomFile = "${OutDir}/${RomName}.rom"
$SysImgFile = "${OutDir}/${RomName}.sys"
@ -81,12 +84,21 @@ Function Concat($InputFileList, $OutputFile)
# Generate the build settings include file
@"
; RomWBW Configured for ${Config}, $(Get-Date)
; RomWBW Configured for ${Platform} ${Config}, $(Get-Date)
;
#DEFINE TIMESTAMP ${TimeStamp}
#DEFINE VARIANT ${Variant}
;
ROMSIZE .EQU ${ROMSize} ; SIZE OF ROM IN KB
PLATFORM .EQU PLT_${Platform} ; HARDWARE PLATFORM
;
; INCLUDE PLATFORM SPECIFIC DEVICE DEFINITIONS
;
#IF (PLATFORM == PLT_S100)
#INCLUDE "std-s100.inc"
#ELSE
#INCLUDE "std-n8vem.inc"
#ENDIF
;
#INCLUDE "${ConfigFile}"
;
@ -133,7 +145,7 @@ Concat 'bootapp.bin','syscfg.bin','loader.bin','hbios.bin','dbgmon.bin','os.bin'
Copy-Item $BlankFile $RomDiskFile
cpmcp -f $RomFmt $RomDiskFile ../RomDsk/${SYS}_${RomSize}KB/*.* 0:
cpmcp -f $RomFmt $RomDiskFile ../RomDsk/cfg_${Config}/*.* 0:
cpmcp -f $RomFmt $RomDiskFile ../RomDsk/cfg_${Platform}_${Config}/*.* 0:
cpmcp -f $RomFmt $RomDiskFile ../Apps/core/*.* 0:
cpmcp -f $RomFmt $RomDiskFile ../Output/${RomName}.sys 0:${SYS}.sys

2
Source/config_n8_2312.asm

@ -7,8 +7,6 @@
;
CPUFREQ .EQU 20 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
;
PLATFORM .EQU PLT_N8 ; PLT_N8VEM, PLT_ZETA, PLT_N8
;
DEFCON .EQU CIODEV_UART ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_VDU, DIODEV_PRPCON
ALTCON .EQU DEFCON ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
DEFVDA .EQU VDADEV_N8V ; DEFAULT VDA (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_7220, VDADEV_N8V)

2
Source/config_n8_2511.asm

@ -7,8 +7,6 @@
;
CPUFREQ .EQU 20 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
;
PLATFORM .EQU PLT_N8 ; PLT_N8VEM, PLT_ZETA, PLT_N8
;
DEFCON .EQU CIODEV_UART ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_VDU, DIODEV_PRPCON
ALTCON .EQU DEFCON ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
DEFVDA .EQU VDADEV_N8V ; DEFAULT VDA (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_7220, VDADEV_N8V)

2
Source/config_n8vem_cvdu.asm

@ -7,8 +7,6 @@
;
CPUFREQ .EQU 8 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
;
PLATFORM .EQU PLT_N8VEM ; PLT_N8VEM, PLT_ZETA, PLT_N8
;
DEFCON .EQU CIODEV_UART ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_VDU, DIODEV_PRPCON
ALTCON .EQU DEFCON ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
DEFVDA .EQU VDADEV_CVDU ; DEFAULT VDA (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_UPD7220, VDADEV_N8V)

2
Source/config_n8vem_dide.asm

@ -7,8 +7,6 @@
;
CPUFREQ .EQU 8 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
;
PLATFORM .EQU PLT_N8VEM ; PLT_N8VEM, PLT_ZETA, PLT_N8
;
DEFCON .EQU CIODEV_UART ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_VDU, DIODEV_PRPCON
ALTCON .EQU DEFCON ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
DEFVDA .EQU VDADEV_NONE ; DEFAULT VDA (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_UPD7220, VDADEV_N8V)

2
Source/config_n8vem_diskio.asm

@ -7,8 +7,6 @@
;
CPUFREQ .EQU 8 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
;
PLATFORM .EQU PLT_N8VEM ; PLT_N8VEM, PLT_ZETA, PLT_N8
;
DEFCON .EQU CIODEV_UART ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_VDU, DIODEV_PRPCON
ALTCON .EQU DEFCON ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
DEFVDA .EQU VDADEV_NONE ; DEFAULT VDA (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_UPD7220, VDADEV_N8V)

2
Source/config_n8vem_diskio3.asm

@ -7,8 +7,6 @@
;
CPUFREQ .EQU 8 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
;
PLATFORM .EQU PLT_N8VEM ; PLT_N8VEM, PLT_ZETA, PLT_N8
;
DEFCON .EQU CIODEV_UART ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_VDU, DIODEV_PRPCON
ALTCON .EQU DEFCON ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
DEFVDA .EQU VDADEV_NONE ; DEFAULT VDA (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_UPD7220, VDADEV_N8V)

2
Source/config_n8vem_ppide.asm

@ -7,8 +7,6 @@
;
CPUFREQ .EQU 8 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
;
PLATFORM .EQU PLT_N8VEM ; PLT_N8VEM, PLT_ZETA, PLT_N8
;
DEFCON .EQU CIODEV_UART ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_VDU, DIODEV_PRPCON
ALTCON .EQU DEFCON ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
DEFVDA .EQU VDADEV_NONE ; DEFAULT VDA (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_UPD7220, VDADEV_N8V)

2
Source/config_n8vem_ppisd.asm

@ -7,8 +7,6 @@
;
CPUFREQ .EQU 8 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
;
PLATFORM .EQU PLT_N8VEM ; PLT_N8VEM, PLT_ZETA, PLT_N8
;
DEFCON .EQU CIODEV_UART ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_VDU, DIODEV_PRPCON
ALTCON .EQU DEFCON ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
DEFVDA .EQU VDADEV_NONE ; DEFAULT VDA (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_UPD7220, VDADEV_N8V)

2
Source/config_n8vem_propio.asm

@ -7,8 +7,6 @@
;
CPUFREQ .EQU 8 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
;
PLATFORM .EQU PLT_N8VEM ; PLT_N8VEM, PLT_ZETA, PLT_N8
;
DEFCON .EQU CIODEV_PRPCON ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_VDU, DIODEV_PRPCON
ALTCON .EQU CIODEV_UART ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
DEFVDA .EQU VDADEV_NONE ; DEFAULT VDA (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_UPD7220, VDADEV_N8V)

2
Source/config_simh.asm → Source/config_n8vem_simh.asm

@ -7,8 +7,6 @@
;
CPUFREQ .EQU 8 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
;
PLATFORM .EQU PLT_N8VEM ; PLT_N8VEM, PLT_ZETA, PLT_N8
;
DEFCON .EQU CIODEV_UART ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_VDU, DIODEV_PRPCON
ALTCON .EQU DEFCON ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
DEFVDA .EQU VDADEV_NONE ; DEFAULT VDA (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_UPD7220, VDADEV_N8V)

2
Source/config_n8vem.asm → Source/config_n8vem_std.asm

@ -7,8 +7,6 @@
;
CPUFREQ .EQU 8 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
;
PLATFORM .EQU PLT_N8VEM ; PLT_N8VEM, PLT_ZETA, PLT_N8
;
DEFCON .EQU CIODEV_UART ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_VDU, DIODEV_PRPCON
ALTCON .EQU DEFCON ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
DEFVDA .EQU VDADEV_NONE ; DEFAULT VDA (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_UPD7220, VDADEV_N8V)

2
Source/config_n8vem_vdu.asm

@ -7,8 +7,6 @@
;
CPUFREQ .EQU 8 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
;
PLATFORM .EQU PLT_N8VEM ; PLT_N8VEM, PLT_ZETA, PLT_N8
;
DEFCON .EQU CIODEV_UART ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_VDU, DIODEV_PRPCON
ALTCON .EQU DEFCON ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
DEFVDA .EQU VDADEV_VDU ; DEFAULT VDA (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_UPD7220, VDADEV_N8V)

83
Source/config_s100.asm → Source/config_s100_std.asm

@ -1,84 +1,3 @@
; ~/RomWBW/branches/s100/Source/config_s100.asm 1/25/2013 dwg -
S100WBWENABLE .EQU TRUE ; TRUE IF TARGETING RomWBW
S100IOENABLE .EQU TRUE ; TRUE FOR S100COMPUTERS I/O BOARD
S100IOSCCAENABLE .EQU TRUE
S100IOSCCBENABLE .EQU TRUE
S100IO8255ENABLE .EQU TRUE
S100IOUSBENABLE .EQU FALSE ; TRUE IF USB MODULE PRESENT
S100IOVSENABLE .EQU FALSE ; TRUE IF VStamp CHIP IS PRESENT
S100DIDEENABLE .EQU TRUE ; TRUE IF Dual IDE IS PRESENT
S100MSDENABLE .EQU FALSE ; TRUE IF MSDOS BOARD PRESENT
S100ZFDCENABLE .EQU FALSE ; TRUE IF ZFDC BOARD PRESENT
S100VFIIENABLE .EQU FALSE ; TRUE IF VERSAFLOPPY II PRESENT
S100ISCPUENABLE .EQU FALSE ; TRUE IF INTERSYSTEMS CPU PRESENT
S100I3ENABLE .EQU FALSE ; TRUE FOR COMPUPRO INTERFACER 3
S100I3IOBASE .EQU 10H ; I/O base address of Interfacer 3
S100I4ENABLE .EQU FALSE ; TRUE FOR COMPUPRO INTERFACER 4
S100I4IOBASE .EQU 10H ; I/O base address of Interfacer 4
S100I4SCREAM .EQU FALSE ; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
; Mode 1
; 01-- ---- ; Async 1 Stop Bitable
; --00 ---- ; No Parity
; ---- 11-- ; 8 Bits
; ---- --10 ; Async 16x Rate
; 0100 1110
S100I4MODE1 .EQU 01001110b
; Mode 2
; ---- ---- ; notused
; --1- ---- ; Use internal transmitter clock
; ---1 ---- ; Use internal receiver clock
; ---- 1111 ; 19,200 BAUDRATE
;
S100I4MODE2 .EQU 00111111b
; Command (Enable Receiver, Enable Transmitter, No break, Force RTS & DTR LOW
; 00-- ---- Normal Operation
; --1------ RTS
; ---0 ---- Reset Error "normal"
; ---- 0--- Don't force BREAK
; ---- -1-- Enable Receiver
; ---- --1- DTR
; ---- ---1 Transmitter Enable
; 0010 0111 0x27
; Command (Enable Receiver, Enable Transmitter, No break, Force RTS & DTR HIGH
; 00-- ---- Normal Operation
; --0------ RTS
; ---0 ---- Reset Error "normal"
; ---- 0--- Don't force BREAK
; ---- -1-- Enable Receiver
; ---- --0- DTR
; ---- ---1 Transmitter Enable
; 0000 0101 0x05
;S100I4CMD .EQU 00000101b ; 0x05
;S100I4CMD .EQU 00100111b ; 0x05
S100I4CMD .EQU 11100111b ; 0xE7 ; enable remote loopback
S100SDSVIDENABLE .EQU FALSE
S1008086ENABLE .EQU FALSE
S10068KENABLE .EQU FALSE
;
;==================================================================================================
; ROMWBW 2.X CONFIGURATION FOR N8 5/8/2012
@ -89,8 +8,6 @@ S10068KENABLE .EQU FALSE
CPUFREQ .EQU 20 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
;
PLATFORM .EQU PLT_S100 ; PLT_N8VEM, PLT_ZETA, PLT_N8, PLT_S100
;
DEFCON .EQU CIODEV_UART ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_VDU, DIODEV_PRPCON
ALTCON .EQU DEFCON ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)

2
Source/config_zeta_ppp.asm

@ -7,8 +7,6 @@
;
CPUFREQ .EQU 20 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
;
PLATFORM .EQU PLT_ZETA ; PLT_N8VEM, PLT_ZETA, PLT_N8
;
DEFCON .EQU CIODEV_PPPCON ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_VDU, DIODEV_PRPCON
ALTCON .EQU CIODEV_UART ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
DEFVDA .EQU VDADEV_NONE ; DEFAULT VDA (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_UPD7220, VDADEV_N8V)

2
Source/config_zeta.asm → Source/config_zeta_std.asm

@ -7,8 +7,6 @@
;
CPUFREQ .EQU 20 ; IN MHZ, USED TO COMPUTE DELAY FACTORS
;
PLATFORM .EQU PLT_ZETA ; PLT_N8VEM, PLT_ZETA, PLT_N8
;
DEFCON .EQU CIODEV_UART ; DEFAULT CONSOLE DEVICE (LOADER AND MONITOR): CIODEV_UART, CIODEV_VDU, DIODEV_PRPCON
ALTCON .EQU DEFCON ; ALT CONSOLE DEVICE (USED WHEN CONFIG JUMPER SHORTED)
DEFVDA .EQU VDADEV_NONE ; DEFAULT VDA (VDADEV_NONE, VDADEV_VDU, VDADEV_CVDU, VDADEV_UPD7220, VDADEV_N8V)

61
Source/makefile

@ -1,6 +1,8 @@
#
# GCC based makefile
#
# 05/24/2012 2.3 wbw - changed to handle revised build parms
#
# 05/24/2012 2.0 wbw - changed to handle HBIOS
#
# 01/11/2011 1.4 wbw - added support for ZSDOS/ZDDOS/ZCPR
@ -18,23 +20,22 @@
#
# The operation of this makefile is entirely dependent on the setting
# of three variables: CONFIG, ROMSIZE, and CPU:
# of five variables: PLATFORM, CONFIG, ROMSIZE, SYS, and optionally ROMNAME:
#
# PLATFORM specifies the base hardware platform you are targeting
# and must be one of N8VEM, ZETA, N8, S2I, or S100
#
# CONFIG determines which configuration to build which means that
# it will determine the config_xxx.asm config settings file to
# it will determine the config_xxxx_yyyy.asm config settings file to
# include as well as the output file names. So, for example,
# if CONFIG is "n8vem", the config_n8vem.asm file will be used
# for BIOS configuration settings and the output files will be
# n8vem.rom, n8vem.sys, and n8vem.com.
# if PLATFORM is "n8vem" and CONFIG is "cvdu", the config_N8VEM_cvdu.asm
# file will be used for BIOS configuration settings and the output
# files will be N8VEM_cvdu.rom, N8VEM_cvdu.sys, and N8VEM_cvdu.com.
#
# ROMSIZE specifies the size of the ROM image to be produced and
# currently must be either "1024" for a 1MB ROM or "512" for a
# 512KB ROM.
#
# CPU specifies the instruction set to be used in assembly and
# must be either "80" for Z80 or "180" for Z180. Currently,
# you should use 180 for N8 ROMs and 80 for everything else.
#
# SYS specifies the system variant to build in. CPM will
# build traditional CP/M. ZSYS will build ZSystem which
# currently means ZSDOS 1.2 & ZCPR 1.0
@ -47,11 +48,11 @@
# line, hardcoded in this file, or set as environment variables
# in the OS. To use a command line, use the following format:
#
# make CONFIG=<config> ROMSIZE=<romsize> CPU=<cpu> SYS=<sys> ROMNAME=<romname>
# make PLATFORM=<platform> CONFIG=<config> ROMSIZE=<romsize> SYS=<sys>
#
# An example of this is:
#
# make CONFIG=n8vem ROMSIZE=512 CPU=80 SYS=CPM ROMNAME=n8vem
# make PLATFORM=N8VEM CONFIG=cvdu ROMSIZE=512 SYS=CPM
#
# Alternatively, you can specify the variables by hardcoding them
# in this file. To do so, uncomment the five lines after these
@ -63,9 +64,9 @@
# do this with commands like the following at an OS command
# prompt or in a batch file:
#
# SET CONFIG=n8vem
# SET PLATFORM=N8VEM
# SET CONFIG=cvdu
# SET ROMSIZE=512
# SET CPU=80
# SET SYS=CPM
# SET ROMNAME=n8vem
#
@ -74,7 +75,7 @@
# A good idea is to do a clean with every build and this can be
# accomplished on one command line doing something like this:
#
# make clean all CONFIG=n8vem ROMSIZE=512 CPU=80 SYS=CPM ROMNAME=n8vem
# make clean all PLATFORM=N8VEM CONFIG=std ROMSIZE=512 SYS=CPM
#
# or, if you are using hard coded variables above:
#
@ -82,20 +83,26 @@
#
# Uncomment and update values below to hardcode settings:
#
#CONFIG := n8vem
#PLATFORM := N8VEM
#CONFIG := std
#ROMSIZE := 512
#CPU := 80
#SYS := CPM
#ROMNAME := n8vem
ifeq "$(PLATFORM)" "N8"
CPU := 180
else
CPU := 80
endif
ifndef ROMNAME
ROMNAME := $(CONFIG)
ROMNAME := $(PLATFORM)_$(CONFIG)
endif
CPMTOOLSPATH := ../tools/cpmtools
CPMCP := $(CPMTOOLSPATH)/cpmcp.exe
ROMDSKFILES := ../RomDsk/$(SYS)_$(ROMSIZE)KB/*.* ../RomDsk/cfg_$(CONFIG)/*.* ../Apps/core/*.*
ROMDSKFILES := ../RomDsk/$(SYS)_$(ROMSIZE)KB/*.* ../RomDsk/cfg_$(PLATFORM)_$(CONFIG)/*.* ../Apps/core/*.*
ifeq "$(SYS)" "CPM"
DOSBIN := bdosb01.bin
@ -135,8 +142,8 @@ SPACE := ${NULL} ${NULL}
$(CC) $< -o $@
ifneq ($(MAKECMDGOALS),clean)
ifeq "$(and $(CONFIG), $(ROMSIZE), $(CPU), $(SYS), $(ROMNAME))" ""
$(error Usage: make CONFIG=<config> ROMSIZE=[512|1024] CPU=[80|180] SYS=[CPM|ZSYS] ROMNAME=<romname>)
ifeq "$(and $(PLATFORM) $(CONFIG), $(ROMSIZE), $(SYS), $(ROMNAME))" ""
$(error Usage: make PLATFORM=[N8VEM|ZETA|N8|S2I|S100] CONFIG=<config> ROMSIZE=[512|1024] SYS=[CPM|ZSYS] [ROMNAME=<romname>])
endif
endif
@ -144,14 +151,24 @@ all: $(OUTDIR)\$(ROMNAME).rom $(OUTDIR)\$(ROMNAME).sys $(OUTDIR)\$(ROMNAME).com
build.inc:
echo ; >$@
echo ; RomWBW Configured for $(CONFIG), %date% %time% >>$@
echo ; RomWBW Configured for $(PLATFORM) $(CONFIG), %date% %time% >>$@
echo ; >>$@
echo #DEFINE TIMESTAMP "%date:~-4,4%%date:~-10,2%%date:~-7,2%T%time:~0,2%%time:~3,2%" >>$@
echo #DEFINE VARIANT "WBW-%username%" >>$@
echo ; >>$@
echo ; >>$@
echo ; INCLUDE PLATFORM SPECIFIC DEVICE DEFINITIONS >>$@
echo ; >>$@
echo ROMSIZE .EQU $(ROMSIZE) >>$@
echo PLATFORM .EQU PLT_$(PLATFORM) >>$@
echo ; >>$@
echo #IF (PLATFORM == PLT_S100) >>$@
echo #INCLUDE "std-s100.inc" >>$@
echo #ELSE >>$@
echo #INCLUDE "std-n8vem.inc" >>$@
echo #ENDIF >>$@
echo ; >>$@
echo #INCLUDE "config_$(CONFIG).asm" >>$@
echo #INCLUDE "config_$(PLATFORM)_$(CONFIG).asm" >>$@
echo ; >>$@
bootrom.bin : bootrom.asm std.asm build.inc ver.inc

10
Source/std.asm

@ -144,16 +144,6 @@ CP .EQU CP_ZCPR
#DEFINE OSLBL "ZSDOS 1.1"
#ENDIF
;
; INCLUDE PLATFORM SPECIFIC DEVICE DEFINITIONS
;
#IF (PLATFORM != PLT_N8)
#INCLUDE "std-n8vem.inc"
#ENDIF
;
#IF (PLATFORM == PLT_S100)
#INCLUDE "std-s100.inc")
#ENDIF
;
; INCLUDE VERSION AND BUILD SETTINGS
;
#INCLUDE "ver.inc" ; ADD BIOSVER

Loading…
Cancel
Save