Compare commits
78 Commits
v3.5.0-dev
...
v3.5.0-dev
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6e8bdb141d | ||
|
|
d152cab8c8 | ||
|
|
3dd394e3c9 | ||
|
|
2fd65ab4b0 | ||
|
|
14dd7bf290 | ||
|
|
673f4358b2 | ||
|
|
34e472a553 | ||
|
|
e07c38dc1a | ||
|
|
9e6780a248 | ||
|
|
d80c44045f | ||
|
|
b7352da5c1 | ||
|
|
2b6fbe7c58 | ||
|
|
e3173ff802 | ||
|
|
8aebf93fdf | ||
|
|
51676238c7 | ||
|
|
983c0ff52b | ||
|
|
764abddb49 | ||
|
|
df0562bba8 | ||
|
|
eaf0431b20 | ||
|
|
6394605a20 | ||
|
|
17f1d1cb99 | ||
|
|
03e34a54d4 | ||
|
|
797ee4d1a4 | ||
|
|
f775a07365 | ||
|
|
e6117e9639 | ||
|
|
9df87738ad | ||
|
|
ebfb5b3fed | ||
|
|
f125efcca3 | ||
|
|
317ba99b37 | ||
|
|
add41fdb69 | ||
|
|
457aa44832 | ||
|
|
7e2b2b8f40 | ||
|
|
e68cbded97 | ||
|
|
cd70a62d67 | ||
|
|
307b8bb11b | ||
|
|
fd59d2e4f8 | ||
|
|
e021735876 | ||
|
|
91debe53c4 | ||
|
|
8e0af1720a | ||
|
|
83d26a4faf | ||
|
|
c2f7a75cdd | ||
|
|
888706149d | ||
|
|
a078820745 | ||
|
|
21df9d8797 | ||
|
|
cd23863226 | ||
|
|
3999039102 | ||
|
|
df2ab201a2 | ||
|
|
cdc2b3964d | ||
|
|
21b2eee7ab | ||
|
|
b80d395266 | ||
|
|
fff0959f96 | ||
|
|
b781f16add | ||
|
|
273e61bc94 | ||
|
|
e1e485501c | ||
|
|
48ab169c60 | ||
|
|
0f4d16400f | ||
|
|
329a0f4d7f | ||
|
|
058a67dd40 | ||
|
|
40f2a9f35a | ||
|
|
3eea703d02 | ||
|
|
74daa4d3c5 | ||
|
|
0539b25046 | ||
|
|
a7e767d0b7 | ||
|
|
78a765147e | ||
|
|
1cb5f0b3b4 | ||
|
|
a34afaa11e | ||
|
|
e8d79bdf0a | ||
|
|
e5232c6696 | ||
|
|
70fcb2cbee | ||
|
|
dab2408166 | ||
|
|
d02c734478 | ||
|
|
c4cc800040 | ||
|
|
f82b4c9bc7 | ||
|
|
1db620d2d7 | ||
|
|
3b2c5b57ad | ||
|
|
69ab236d53 | ||
|
|
e7ed6ed27c | ||
|
|
5ea5003d01 |
1
.gitignore
vendored
@@ -99,6 +99,7 @@ Tools/unix/zx/zx
|
||||
!Source/ZRC512/*.bin
|
||||
!Source/Z1RCC/*.bin
|
||||
!Source/ZZRCC/*.bin
|
||||
!Source/FZ80/*.bin
|
||||
!Tools/cpm/**
|
||||
!Tools/unix/zx/*
|
||||
!Tools/zx/*
|
||||
|
||||
@@ -8,5 +8,6 @@ if exist *.hlp del *.hlp
|
||||
if exist Tunes\*.pt? del Tunes\*.pt?
|
||||
if exist Tunes\*.mym del Tunes\*.mym
|
||||
if exist Tunes\*.vgm del Tunes\*.vgm
|
||||
if exist bbcbasic.txt del bbcbasic.txt
|
||||
|
||||
pushd Test && call Clean || exit /b 1 & popd
|
||||
|
||||
@@ -8,4 +8,4 @@ all::
|
||||
mkdir -p Tunes
|
||||
|
||||
clean::
|
||||
@rm -f *.bin *.com *.img *.rom *.pdf *.log *.eeprom *.ovr *.hlp *.doc *.COM *.BIN Tunes/*.mym Tunes/*.pt? Tunes/*.vgm
|
||||
@rm -f *.bin *.com *.img *.rom *.pdf *.log *.eeprom *.ovr *.hlp *.doc *.COM *.BIN Tunes/*.mym Tunes/*.pt? Tunes/*.vgm bbcbasic.txt
|
||||
|
||||
44
Binary/Apps/Test/inttest.doc
Normal file
@@ -0,0 +1,44 @@
|
||||
INTTEST
|
||||
=======
|
||||
|
||||
RomWBW includes an API allowing applications to "hook" interrupts.
|
||||
The `INTTEST` utility allows you to test this functionality.
|
||||
|
||||
|
||||
** Syntax **
|
||||
|
||||
`INTTEST`
|
||||
|
||||
|
||||
** Usage **
|
||||
|
||||
`INTTEST` is an interactive application. At startup, it will display
|
||||
a list of the interrupt vector slots in your system along with the
|
||||
current vector address for each of them.
|
||||
|
||||
It then prompts you to enter the slot number (in hex) of a vector to
|
||||
hook. After entering this, the application will watch the hooked
|
||||
vector and countdown from 0xFF to 0x00 as interrupts are noted.
|
||||
|
||||
When the counter reaches 0x00, the interrupt is unhooked and the
|
||||
application terminates. The application can also be terminated by
|
||||
pressing <esc>.
|
||||
|
||||
|
||||
** Notes **
|
||||
|
||||
If your system is running without interrupts active, the application
|
||||
will terminate immediately.
|
||||
|
||||
All slots have vectors even if the corresponding interrupt is not
|
||||
doing anything. In this case, the vector is pointing to the "bad
|
||||
interrupt" handler.
|
||||
|
||||
If you hook a vector that is not receiving any interrupts, the
|
||||
down-counter will not do anything.
|
||||
|
||||
|
||||
** Etymology* *
|
||||
|
||||
The `INTTEST` command is an original product and the source code is
|
||||
provided in the RomWBW distribution.
|
||||
67
Doc/CPM/ReadMe.txt
Normal file
@@ -0,0 +1,67 @@
|
||||
***********************************************************************
|
||||
*** ***
|
||||
*** R o m W B W ***
|
||||
*** ***
|
||||
*** Z80/Z180 System Software ***
|
||||
*** ***
|
||||
***********************************************************************
|
||||
|
||||
This directory ("Doc/CPM") is part of the RomWBW System Software
|
||||
distribution archive. It contains documentation for the CP/M and
|
||||
CP/M work-alike operating system components of the system.
|
||||
|
||||
|
||||
CPM Manual ("CPM Manual.pdf")
|
||||
-----------------------------
|
||||
|
||||
The original DRI CP/M 2.x Operating System Manual. This should be
|
||||
considered the primary reference for system operation. The section
|
||||
on CP/M 2 Alteration can be ignored since this work has already been
|
||||
completed as part of the RomWBW distribution.
|
||||
|
||||
|
||||
CPM3 Command Summary ("CPM3 Command Summary.pdf")
|
||||
CPM3 Programmer's Guide ("CPM3 Programmers Guide.pdf")
|
||||
CPM3 System Guide ("CPM3 System Guide.pdf")
|
||||
CPM3 User's Guide ("CPM3 Users Guide.pdf")
|
||||
------------------------------------------------------
|
||||
|
||||
The original DRI CP/M 3.0 Operating System Documentation Set. This
|
||||
should be considered the primary reference for CP/M 3 system operation.
|
||||
|
||||
|
||||
NZCOM User's Manual ("NZCOM Users Manual.pdf")
|
||||
----------------------------------------------
|
||||
|
||||
NZCOM operating system operation manual.
|
||||
|
||||
|
||||
QP/M 2.7 Installation Guide and Supplements ("qpm27.pdf")
|
||||
QP/M 2.7 Interface Guide ("qdos27.pdf")
|
||||
QP/M 2.7 Features and Facilities ("qcp27.pdf")
|
||||
--------------------------------------------
|
||||
|
||||
Official documentation set for QP/M 2.7 from original QP/M distribution.
|
||||
|
||||
|
||||
ZCPR Manual ("ZCPR Manual.pdf")
|
||||
-------------------------------
|
||||
|
||||
ZCPR is the command proccessor portion of Z-System. This is the
|
||||
manual for ZCPR 1.x as included in RomWBW. The installation
|
||||
instructions can be ignored since that work has already been
|
||||
completed as part of the RomWBW distribution.
|
||||
|
||||
ZCPR D&J Manual ("ZCPR-DJ.doc")
|
||||
-------------------------------
|
||||
|
||||
ZCPR D&J User Manual. This manual supplements the ZCPR Manual.
|
||||
|
||||
|
||||
ZSDOS Manual ("ZSDOS Manual.pdf")
|
||||
---------------------------------
|
||||
|
||||
ZSDOS is the DOS portion of Z-System. This is the manual for ZSDOS
|
||||
1.x as included in RomWBW. The installation instructions can be
|
||||
ignored since that work has already been completed as part of the
|
||||
RomWBW distribution.
|
||||
@@ -14,6 +14,26 @@ Version 3.5
|
||||
- DDW: Added support for Duodyne Media board
|
||||
- WBW: Auto restore TMS video on user reset (CP/M warm boot)
|
||||
- L?B: Added support for NABU w/ RomWBW Option Board
|
||||
- MAP: Reorganization of Doc directory introducing subfolders
|
||||
- WBW: Upgraded BBCBASIC to v5.00
|
||||
- W?S: Updated FLASH utility to v1.3.9
|
||||
- WBW: Support RCBus PS/2 Keyboard (EP/Sally)
|
||||
- M?R: Update Timer app to display output in decimal
|
||||
- WBW: Preliminary support for S100 FPGA Z80 platform
|
||||
- WBW: Added simple serial (SSER) driver
|
||||
- WBW: Added preliminary support for S100 FPGA Z80 SD Cards
|
||||
- M?R: Consolidated ROM Applications document into the Applications document
|
||||
- M?R: Reviewed and substantially improved the Applications document
|
||||
- WBW: Added support for DS1305 RTC on S100 FPGA Z80
|
||||
- WBW: Added support for Les Bird's RCBus Graphics/Sound/Joystick module
|
||||
- WBW: Added support for Les Bird's Dual 16C550 UART module
|
||||
- WBW: Refactor UART driver for more flexible configuration
|
||||
- M?R: Added hour/minute/second display to timer app
|
||||
- WBW: Substantial customization of NZ-COM disk image
|
||||
- WBW: Refactor build post-processing (ZRC, ZZRCC, etc.)
|
||||
- MAP: Improved section Real Time Clock in User Guide document
|
||||
- WBW: Support for Hitachi HD44780-based LCD display
|
||||
- DRJ: Added support for Genesis STD Bus Z180 platform
|
||||
|
||||
Version 3.4
|
||||
-----------
|
||||
@@ -682,4 +702,4 @@ interrupts disabled the BIOS will now start OK even if some vagrant
|
||||
hardware is asserting an interrupt (DISKIO). Seems like this is better
|
||||
anyway -- general idea is that we only enable interupts precisely
|
||||
when desired for very specific controled purposes since there is no
|
||||
concept of interrupt dispatching available.
|
||||
concept of interrupt dispatching available.
|
||||
|
||||
BIN
Doc/Contrib/AY-3-8910 Registers.xlsx
Normal file
@@ -4,7 +4,7 @@ ZSDOS Adaptation Notes for RomWBW
|
||||
Wayne Warthen
|
||||
wwarthen@gmail.com
|
||||
|
||||
This file is a log of the work done to adapt the ZSDOS distribution to the N8VEM platforms under RomWBW. I strongly recommend reviewing the zsdos.pdf file in the Doc directory.
|
||||
This file is a log of the work done to adapt the ZSDOS distribution to the N8VEM platforms under RomWBW. I strongly recommend reviewing the zsdos.pdf file in the Doc/CPM directory.
|
||||
|
||||
The starting point was the general public release of ZSDOS that is generally available. The first line of the README file is "ZSDOS-GP. General Public Release of the ZSDOS 1.x Operating System."
|
||||
|
||||
@@ -20,7 +20,7 @@ Beyond the construction and integration of the actual DOS itself, the majority o
|
||||
|
||||
The remainder of this document details the changes I made as I went along. In all cases, my goal was to keep the result as close to the original distribution as possible. I started by copying all of the files from the distribution (contained in zsdos2.zip) into Support\ZSDOS. From there I tested, modified, updated, and customized as documented below. Finally, I cherry picked files that made sense to include on the ZSystem ROM disks.
|
||||
|
||||
1. CLOCKS.DAT has been updated to include the RomWBW clock driver, HBCLK. I have also added the SIMHCLOK clock driver.
|
||||
1. CLOCKS.DAT has been updated to include the RomWBW clock driver, WBWCLK. I have also added the SIMHCLOK clock driver.
|
||||
|
||||
2. STAMPS.DAT has been replaced with an updated version. The update was called STAMPS11.DAT and was found on the Walnut Creek CP/M CDROM. The original version has a bug that prevents RSX (resident system extension) mode to load properly.
|
||||
|
||||
@@ -52,4 +52,4 @@ Usage Notes
|
||||
|
||||
6. After using PUTDS to initialize a directory for ZDS date stamping, I am finding that it is necessary to run RELOG before the stamping routines will actually start working.
|
||||
|
||||
7. Generic CP/M PIP and ZSDOS path searching do not play well together if you use PIP to copy to or from a directory in the ZSDOS search path. Best to use COPY from the ZSDOS distribution.
|
||||
7. Generic CP/M PIP and ZSDOS path searching do not play well together if you use PIP to copy to or from a directory in the ZSDOS search path. Best to use COPY from the ZSDOS distribution.
|
||||
|
||||
62
Doc/Language/ReadMe.txt
Normal file
@@ -0,0 +1,62 @@
|
||||
***********************************************************************
|
||||
*** ***
|
||||
*** R o m W B W ***
|
||||
*** ***
|
||||
*** Z80/Z180 System Software ***
|
||||
*** ***
|
||||
***********************************************************************
|
||||
|
||||
This directory ("Doc/Language") is part of the RomWBW System Software
|
||||
distribution archive. It contains documentation for Programming
|
||||
Languages provided with the system.
|
||||
|
||||
|
||||
Aztec C Compiler User Manual (Aztec_C_1.06_User_Manual_Mar84.pdf)
|
||||
-----------------------------------------------------------------
|
||||
|
||||
Official user manual for the Aztec C Compiler included in the aztecc disk image.
|
||||
|
||||
|
||||
Borland TurboPascal User Manual (Turbo_Pascal_Version_3.0_Reference_Manual_1986.pdf)
|
||||
------------------------------------------------------------------------------------
|
||||
|
||||
Official user manual Borland TurboPascal included in the pascal disk image.
|
||||
|
||||
|
||||
Cowgol Lanaguage (Cowgol Language.pdf)
|
||||
--------------------------------------
|
||||
|
||||
Documentation for Cowgol Language included in the cowgol disk image
|
||||
|
||||
|
||||
HI-TECH C Compiler User Manual (HI-TECH Z80 C Compiler Manual.txt)
|
||||
------------------------------------------------------------------
|
||||
|
||||
Official user manual for the HI-TECH C Compiler included in the
|
||||
hitechc disk image.
|
||||
|
||||
|
||||
Microsoft Basic-80 Reference Manual v5.0 (Microsoft Basic-80 Reference Manual v5.0.pdf)
|
||||
---------------------------------------------------------------------------------------
|
||||
|
||||
Official manual for Microsoft BASIC as included in RomWBW.
|
||||
|
||||
|
||||
Microsoft FORTRAN-80 User Manual (Microsoft_FORTRAN-80_Users_Manual_1977.pdf)
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Official user manual for Microsoft's FORTRAN-80 compiler included in the fortran
|
||||
disk image.
|
||||
|
||||
|
||||
Z80 Assembler User Manual (z80asm (SLR Systems).pdf)
|
||||
----------------------------------------------------
|
||||
|
||||
Official user manual for the Z80 Macro Assembler by SLR Systems
|
||||
included in the z80asm disk image.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
107
Doc/ReadMe.txt
@@ -10,6 +10,18 @@ This directory ("Doc") is part of the RomWBW System Software
|
||||
distribution archive. It contains documentation for components of
|
||||
the system.
|
||||
|
||||
CPM (Directory)
|
||||
---------------
|
||||
|
||||
Documentation specific to CP/M, including all versions and derivatives.
|
||||
|
||||
|
||||
Language (Directory)
|
||||
--------------------
|
||||
|
||||
Documentation specific to programming languages, provided with the system
|
||||
|
||||
|
||||
ChangeLog.txt
|
||||
-------------
|
||||
|
||||
@@ -31,25 +43,6 @@ and utilities are detailed in the Applications and
|
||||
ROM Applications documents.
|
||||
|
||||
|
||||
CPM Manual ("CPM Manual.pdf")
|
||||
-----------------------------
|
||||
|
||||
The original DRI CP/M 2.x Operating System Manual. This should be
|
||||
considered the primary reference for system operation. The section
|
||||
on CP/M 2 Alteration can be ignored since this work has already been
|
||||
completed as part of the RomWBW distribution.
|
||||
|
||||
|
||||
CPM3 Command Summary ("CPM3 Command Summary.pdf")
|
||||
CPM3 Programmer's Guide ("CPM3 Programmers Guide.pdf")
|
||||
CPM3 System Guide ("CPM3 System Guide.pdf")
|
||||
CPM3 User's Guide ("CPM3 Users Guide.pdf")
|
||||
------------------------------------------------------
|
||||
|
||||
The original DRI CP/M 3.0 Operating System Documentation Set. This
|
||||
should be considered the primary reference for CP/M 3 system operation.
|
||||
|
||||
|
||||
DDTZ Manual ("DDTZ.doc")
|
||||
------------------------
|
||||
|
||||
@@ -69,47 +62,6 @@ Hard Disk Anatomy ("Hard Disk Anatomy.pdf")
|
||||
Diagram of a CP/M & MS-DOS (FAT) hybrid hard disk layout.
|
||||
|
||||
|
||||
NZCOM User's Manual ("NZCOM Users Manual.pdf")
|
||||
----------------------------------------------
|
||||
|
||||
NZCOM operating system operation manual.
|
||||
|
||||
|
||||
ZCPR Manual ("ZCPR Manual.pdf")
|
||||
-------------------------------
|
||||
|
||||
ZCPR is the command proccessor portion of Z-System. This is the
|
||||
manual for ZCPR 1.x as included in RomWBW. The installation
|
||||
instructions can be ignored since that work has already been
|
||||
completed as part of the RomWBW distribution.
|
||||
|
||||
ZCPR D&J Manual ("ZCPR-DJ.doc")
|
||||
-------------------------------
|
||||
|
||||
ZCPR D&J User Manual. This manual supplements the ZCPR Manual.
|
||||
|
||||
|
||||
ZSDOS Manual ("ZSDOS Manual.pdf")
|
||||
---------------------------------
|
||||
|
||||
ZSDOS is the DOS portion of Z-System. This is the manual for ZSDOS
|
||||
1.x as included in RomWBW. The installation instructions can be
|
||||
ignored since that work has already been completed as part of the
|
||||
RomWBW distribution.
|
||||
|
||||
Microsoft Basic-80 Reference Manual v5.0 (Microsoft Basic-80 Reference Manual v5.0.pdf)
|
||||
---------------------------------------------------------------------------------------
|
||||
|
||||
Official manual for Microsoft BASIC as included in RomWBW.
|
||||
|
||||
|
||||
QP/M 2.7 Installation Guide and Supplements ("qpm27.pdf")
|
||||
QP/M 2.7 Interface Guide ("qdos27.pdf")
|
||||
QP/M 2.7 Features and Facilities ("qcp27.pdf")
|
||||
--------------------------------------------
|
||||
|
||||
Official documentation set for QP/M 2.7 from original QP/M distribution.
|
||||
|
||||
SIO+CTC Baud Rate Options (SIO+CTC Baud Rate Options.pdf)
|
||||
---------------------------------------------------------
|
||||
|
||||
@@ -132,37 +84,4 @@ UCSD p-System Users Manual ("UCSD p-System Users Manual.pdf")
|
||||
Official user manual for p-System operating system included with
|
||||
RomWBW.
|
||||
|
||||
|
||||
Z80 Assembler User Manual (z80asm (SLR Systems).pdf)
|
||||
----------------------------------------------------
|
||||
|
||||
Official user manual for the Z80 Macro Assembler by SLR Systems
|
||||
included in the z80asm disk image.
|
||||
|
||||
|
||||
HI-TECH C Compiler User Manual (HI-TECH Z80 C Compiler Manual.txt)
|
||||
------------------------------------------------------------------
|
||||
|
||||
Official user manual for the HI-TECH C Compiler included in the
|
||||
hitechc disk image.
|
||||
|
||||
|
||||
Borland TurboPascal User Manual (Turbo_Pascal_Version_3.0_Reference_Manual_1986.pdf)
|
||||
------------------------------------------------------------------------------------
|
||||
|
||||
Official user manual Borland TurboPascal included in the pascal disk image.
|
||||
|
||||
|
||||
Aztec C Compiler User Manual (Aztec_C_1.06_User_Manual_Mar84.pdf)
|
||||
-----------------------------------------------------------------
|
||||
|
||||
Official user manual for the Aztec C Compiler included in the aztecc disk image.
|
||||
|
||||
|
||||
FORTRAN-80 User Manual (Microsoft_FORTRAN-80_Users_Manual_1977.pdf)
|
||||
---------------------------------------------------------------
|
||||
|
||||
Official user manual for Microsoft's FORTRAN-80 compiler included in the fortran
|
||||
disk image.
|
||||
|
||||
--WBW 5:18 PM 6/14/2023
|
||||
--WBW 5:18 PM 6/14/2023
|
||||
|
||||
@@ -1,144 +0,0 @@
|
||||
SIMH (X)
|
||||
----
|
||||
- Test UART driver
|
||||
- Test HDSK driver
|
||||
|
||||
Zeta 1 (X)
|
||||
------
|
||||
- Test UART driver
|
||||
- Test PPP detection (startup w/ and w/o PPP)
|
||||
- Test boot to CRT
|
||||
- Test PPPSD driver
|
||||
- Test PPPCON driver (video & kbd)
|
||||
- Test FD driver
|
||||
- Test FDU app
|
||||
|
||||
Zeta 2 (X)
|
||||
------
|
||||
- Test UART driver
|
||||
- Test PPP detection (startup w/ and w/o PPP)
|
||||
- Test boot to CRT
|
||||
- Test PPPSD driver
|
||||
- Test PPPCON driver (video & kbd)
|
||||
- Test FD driver
|
||||
- Test FDU app
|
||||
|
||||
RCBus (X)
|
||||
------
|
||||
- Test SIO driver (Serial Module)
|
||||
- Test ACIA driver (Dual Serial Module)
|
||||
- Test IDE driver (Compact Flash Module)
|
||||
- Test PPIDE driver (IDE Module)
|
||||
- Test FD driver (SMC and WDC)
|
||||
- Test FDU app (SMC and WDC)
|
||||
|
||||
N8-2312 (X)
|
||||
-------
|
||||
- Test ASCI driver
|
||||
- Test SD driver (CSIO mode)
|
||||
- Test FD driver
|
||||
- Test FDU app
|
||||
- Test TMS driver (video & kbd)
|
||||
|
||||
N8-2511 (X)
|
||||
-------
|
||||
- Test ASCI driver
|
||||
- Test SD driver (Juha mode)
|
||||
- Test FD driver
|
||||
- Test FDU app
|
||||
- Test TMS driver (video & kbd)
|
||||
|
||||
SBC (X)
|
||||
---
|
||||
- Test UART driver
|
||||
- Test PPIDE driver
|
||||
- Test PPISD driver
|
||||
- Test PRP detection
|
||||
- Test boot to CRT console
|
||||
|
||||
MK4 (X)
|
||||
---
|
||||
- Test ASCI driver
|
||||
- Test IDE driver
|
||||
- Test SD driver
|
||||
- Test PRP detection
|
||||
|
||||
RAMF (X)
|
||||
----
|
||||
- Test RAMF driver
|
||||
|
||||
PRP (X)
|
||||
---
|
||||
- Test PRPSD driver
|
||||
- Test PRPCON driver (video & kbd)
|
||||
|
||||
SCG (X)
|
||||
---
|
||||
- Test TMS driver (video)
|
||||
|
||||
VDU (X)
|
||||
---
|
||||
- Test CVDU driver (video & kbd)
|
||||
|
||||
CVDU (X)
|
||||
----
|
||||
- Test CVDU driver (video & kbd)
|
||||
|
||||
VGA (X)
|
||||
---
|
||||
- Test VGA driver (video & kbd)
|
||||
|
||||
DIO (X)
|
||||
---
|
||||
- Test FD driver
|
||||
- Test FDU app
|
||||
- Test IDE driver
|
||||
|
||||
DIO3 (X)
|
||||
----
|
||||
- Test FD driver
|
||||
- Test FDU app
|
||||
- Test PPIDE driver
|
||||
|
||||
DIDE (X)
|
||||
----
|
||||
- Test FD driver
|
||||
- Test FDU app
|
||||
- Test IDE driver
|
||||
|
||||
DSD (X)
|
||||
---
|
||||
- Test SD driver
|
||||
|
||||
4UART (X)
|
||||
-----
|
||||
- Test UART driver
|
||||
|
||||
|
||||
UNA (X)
|
||||
---
|
||||
- General Startup
|
||||
- Boot from disk functionality
|
||||
- Image loading
|
||||
- Monitor
|
||||
- XM app
|
||||
- ASSIGN app
|
||||
- MODE app
|
||||
- SYSCOPY app
|
||||
- OSLDR app
|
||||
- FDU app
|
||||
- FDISK80 app
|
||||
|
||||
GENERAL (X)
|
||||
-------
|
||||
- Boot to ROM
|
||||
- Boot to Disk
|
||||
- Boot to Monitor
|
||||
- XM app
|
||||
- XM port auto-detect
|
||||
- ASSIGN app
|
||||
- MODE app
|
||||
- SYSCOPY app
|
||||
- FDU app
|
||||
- FDISK80 app
|
||||
- TUNE app
|
||||
14
ReadMe.md
@@ -3,7 +3,7 @@
|
||||
**RomWBW ReadMe** \
|
||||
Version 3.5 \
|
||||
Wayne Warthen ([wwarthen@gmail.com](mailto:wwarthen@gmail.com)) \
|
||||
03 May 2024
|
||||
04 Sep 2024
|
||||
|
||||
# Overview
|
||||
|
||||
@@ -112,22 +112,20 @@ functionality.
|
||||
|
||||
Complete instructions for installation and operation of RomWBW are found
|
||||
in the [RomWBW User
|
||||
Guide](https://github.com/wwarthen/RomWBW/raw/dev/Doc/RomWBW%20User%20Guide.pdf).
|
||||
Guide](https://github.com/wwarthen/RomWBW/raw/master/Doc/RomWBW%20User%20Guide.pdf).
|
||||
|
||||
## Documentation
|
||||
|
||||
Documentation for RomWBW includes:
|
||||
|
||||
- [RomWBW User
|
||||
Guide](https://github.com/wwarthen/RomWBW/raw/dev/Doc/RomWBW%20User%20Guide.pdf)
|
||||
Guide](https://github.com/wwarthen/RomWBW/raw/master/Doc/RomWBW%20User%20Guide.pdf)
|
||||
- [RomWBW System
|
||||
Guide](https://github.com/wwarthen/RomWBW/raw/dev/Doc/RomWBW%20System%20Guide.pdf)
|
||||
Guide](https://github.com/wwarthen/RomWBW/raw/master/Doc/RomWBW%20System%20Guide.pdf)
|
||||
- [RomWBW
|
||||
Applications](https://github.com/wwarthen/RomWBW/raw/dev/Doc/RomWBW%20Applications.pdf)
|
||||
- [RomWBW ROM
|
||||
Applications](https://github.com/wwarthen/RomWBW/raw/dev/Doc/RomWBW%20ROM%20Applications.pdf)
|
||||
Applications](https://github.com/wwarthen/RomWBW/raw/master/Doc/RomWBW%20Applications.pdf)
|
||||
- [RomWBW
|
||||
Errata](https://github.com/wwarthen/RomWBW/raw/dev/Doc/RomWBW%20Errata.pdf)
|
||||
Errata](https://github.com/wwarthen/RomWBW/raw/master/Doc/RomWBW%20Errata.pdf)
|
||||
|
||||
# Acknowledgments
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
RomWBW ReadMe
|
||||
Wayne Warthen (wwarthen@gmail.com)
|
||||
03 May 2024
|
||||
04 Sep 2024
|
||||
|
||||
|
||||
|
||||
@@ -122,7 +122,6 @@ Documentation for RomWBW includes:
|
||||
- RomWBW User Guide
|
||||
- RomWBW System Guide
|
||||
- RomWBW Applications
|
||||
- RomWBW ROM Applications
|
||||
- RomWBW Errata
|
||||
|
||||
|
||||
|
||||
23
Source/Apps/BBCBASIC/Build.cmd
Normal file
@@ -0,0 +1,23 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
set TOOLS=..\..\..\Tools
|
||||
|
||||
set PATH=%TOOLS%\zxcc;%PATH%
|
||||
|
||||
set CPMDIR80=%TOOLS%/cpm/
|
||||
|
||||
zxcc z80asm -dist/FM
|
||||
zxcc z80asm -main/FM
|
||||
zxcc z80asm -exec/FM
|
||||
zxcc z80asm -eval/FM
|
||||
zxcc z80asm -asmb/FM
|
||||
zxcc z80asm -cmos/FM
|
||||
zxcc z80asm -math/FM
|
||||
zxcc z80asm -hook/FM
|
||||
zxcc z80asm -data/FM
|
||||
|
||||
zxcc slrnk -/v,/a:0100,dist,main,exec,eval,asmb,math,hook,cmos,/p:4B00,data,bbcbasic/n,/e
|
||||
|
||||
copy /Y bbcbasic.com ..\..\..\Binary\Apps\ || exit /b
|
||||
copy /Y bbcbasic.txt ..\..\..\Binary\Apps\ || exit /b
|
||||
9
Source/Apps/BBCBASIC/Clean.cmd
Normal file
@@ -0,0 +1,9 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
if exist *.com del *.com
|
||||
if exist *.lst del *.lst
|
||||
if exist *.hex del *.hex
|
||||
if exist *.prn del *.prn
|
||||
if exist *.rel del *.rel
|
||||
if exist *.sym del *.sym
|
||||
11
Source/Apps/BBCBASIC/Makefile
Normal file
@@ -0,0 +1,11 @@
|
||||
OBJECTS = bbcbasic.com
|
||||
DOCS = bbcbasic.txt
|
||||
DEST = ../../../Binary/Apps
|
||||
DOCDEST = ../../../Binary/Apps
|
||||
TOOLS = ../../../Tools
|
||||
OTHERS = *.rel
|
||||
|
||||
include $(TOOLS)/Makefile.inc
|
||||
|
||||
bbcbasic.com: dist.rel main.rel exec.rel eval.rel asmb.rel cmos.rel math.rel hook.rel data.rel
|
||||
$(ZXCC) SLRNK -/V,/A:0100,DIST,MAIN,EXEC,EVAL,ASMB,MATH,HOOK,CMOS,/P:4B00,DATA,BBCBASIC/N,/E
|
||||
1010
Source/Apps/BBCBASIC/asmb.z80
Normal file
@@ -1,3 +1,20 @@
|
||||
This is a RomWBW HBIOS adaptation of BBCBASIC v5.00. The
|
||||
cursor and screen management assumes the use of an ANSI/VT-100 terminal
|
||||
which is generally correct for RomWBW. Support for a hardware system
|
||||
timer is also implemented. If your system does not have a hardware
|
||||
timer, the TIME function will always return 0 and the timeout
|
||||
parameter of the INKEY(n) function will not be observed (will never
|
||||
timeout).
|
||||
|
||||
What follows is some basic information on BBCBASIC from the
|
||||
distribution. Note that it starts with the v3.00 information and
|
||||
later on provides information on the changes in v5.00.
|
||||
|
||||
-- WBW 1:15 PM 5/30/2024
|
||||
|
||||
|
||||
|
||||
|
||||
BBC BASIC (Z80)
|
||||
|
||||
Generic CP/M Version 3.00
|
||||
@@ -366,4 +383,73 @@
|
||||
198 Disk full 254 Bad command
|
||||
200 Close error 255 CP/M error
|
||||
204 Bad name
|
||||
|
||||
|
||||
|
||||
New features in BBC BASIC (Z80) version 5.00, May 2024:
|
||||
|
||||
1. BASIC V statements
|
||||
|
||||
1.1 WHILE...ENDWHILE
|
||||
1.2 Multi-line IF...THEN...ELSE...ENDIF
|
||||
1.3 CASE...WHEN...OTHERWISE...ENDCASE
|
||||
1.4 LOCAL DATA / RESTORE DATA
|
||||
1.5 ON ERROR LOCAL / RESTORE ERROR
|
||||
1.6 DIM var LOCAL size
|
||||
1.7 ERROR err, message$
|
||||
1.8 RESTORE +n
|
||||
1.9 SWAP var1,var2
|
||||
1.10 BPUT #file,string$[;]
|
||||
1.11 QUIT
|
||||
|
||||
2. BASIC V functions
|
||||
|
||||
2.1 DIM(array()[,sub])
|
||||
2.2 END (pointer to free space)
|
||||
2.3 REPORT$
|
||||
2.4 Binary constants
|
||||
2.5 LEFT$ & RIGHT$ with last parameter omitted
|
||||
2.6 MOD(array)
|
||||
2.7 SUM(array)
|
||||
2.8 SUMLEN(array)
|
||||
2.9 GET$#file
|
||||
|
||||
3. BASIC V whole array operations
|
||||
|
||||
3.1 Pass a whole array to a FN/PROC
|
||||
3.2 Pass a whole array to CALL
|
||||
3.3 Whole array assignment
|
||||
3.4 Whole array arithmetic *
|
||||
3.5 Array dot-product operator
|
||||
3.6 Array initialisation lists
|
||||
3.7 Array compound assignment (+= etc.)
|
||||
3.8 Make a whole array LOCAL
|
||||
3.9 DIM a LOCAL array (on the stack) +
|
||||
|
||||
* String array expressions A$() = B$() + C$() are not currently supported.
|
||||
+ LOCAL string arrays should be initialised to their maximum needed length
|
||||
to eliminate the risk of a memory leak each time the PROC/FN is called:
|
||||
LOCAL a$() : DIM a$(size%) : a$() = STRING$(max%, "a") : a$() = ""
|
||||
|
||||
4. Miscellaneous BASIC V features
|
||||
|
||||
4.1 Bit-shifts <<, >>, >>>
|
||||
4.2 Floating-point indirection (|)
|
||||
4.3 RETURNed parameters from FN/PROC
|
||||
4.4 Compound assignment (+=, -=, *=, /= etc.)
|
||||
4.5 Assigning to a sub-string: LEFT$()=, MID$()= , RIGHT$()=
|
||||
4.6 Hooks for CIRCLE,ELLIPSE,FILL,LINE,MOUSE,ORIGIN,RECTANGLE,TINT,SYS,WAIT
|
||||
4.7 Hooks for WIDTH function, TINT function, MODE function
|
||||
|
||||
5. Extensions to Acorn's BASIC V, compatible with BB4W, BBCSDL and BBCTTY
|
||||
|
||||
5.1 EXIT REPEAT / WHILE / FOR [var]
|
||||
5.2 Address-of operator ^
|
||||
5.3 Byte variables and arrays (& suffix)
|
||||
5.4 'BY len' and 'TO term' qualifiers to GET$#file
|
||||
5.5 ELSE IF <condition> THEN; (trailing semicolon)
|
||||
5.6 == synonymous with = in comparisons
|
||||
5.7 DIM a global array inside a FN/PROC (use RETURN)
|
||||
|
||||
Note: The token for PUT has changed from &CE in version 3 to &0E in version 5.
|
||||
If this token is present in existing programs it will list as ENDWHILE rather
|
||||
than PUT, and the programs will need to be modified to restore functionality.
|
||||
1494
Source/Apps/BBCBASIC/cmos.z80
Normal file
69
Source/Apps/BBCBASIC/data.z80
Normal file
@@ -0,0 +1,69 @@
|
||||
TITLE BBC BASIC (C) R.T.RUSSELL 1981-2024
|
||||
NAME ('DATA')
|
||||
;
|
||||
;RAM MODULE FOR BBC BASIC INTERPRETER
|
||||
;FOR USE WITH VERSION 5.0 OF BBC BASIC
|
||||
;(C) COPYRIGHT R.T.RUSSELL 1981-2024
|
||||
;
|
||||
GLOBAL ACCS
|
||||
GLOBAL BUFFER
|
||||
GLOBAL ONERSP
|
||||
GLOBAL LIBASE
|
||||
GLOBAL PAGE
|
||||
GLOBAL LOMEM
|
||||
GLOBAL FREE
|
||||
GLOBAL HIMEM
|
||||
GLOBAL RANDOM
|
||||
GLOBAL COUNT
|
||||
GLOBAL WIDTH
|
||||
GLOBAL ERL
|
||||
GLOBAL ERR
|
||||
GLOBAL ERRTRP
|
||||
GLOBAL ERRTXT
|
||||
GLOBAL TRACEN
|
||||
GLOBAL AUTONO
|
||||
GLOBAL INCREM
|
||||
GLOBAL LISTON
|
||||
GLOBAL DATPTR
|
||||
GLOBAL FNPTR
|
||||
GLOBAL PROPTR
|
||||
GLOBAL STAVAR
|
||||
GLOBAL OC
|
||||
GLOBAL PC
|
||||
GLOBAL DYNVAR
|
||||
GLOBAL CURLIN
|
||||
GLOBAL USER
|
||||
;
|
||||
;n.b. ACCS, BUFFER & STAVAR must be on page boundaries.
|
||||
;
|
||||
ACCS: DEFS 256 ;STRING ACCUMULATOR
|
||||
BUFFER: DEFS 256 ;STRING INPUT BUFFER
|
||||
STAVAR: DEFS 27*4 ;STATIC VARIABLES
|
||||
OC EQU STAVAR+15*4 ;CODE ORIGIN (O%)
|
||||
PC EQU STAVAR+16*4 ;PROGRAM COUNTER (P%)
|
||||
DYNVAR: DEFS 54*2 ;DYN. VARIABLE POINTERS
|
||||
FNPTR: DEFS 2 ;DYN. FUNCTION POINTER
|
||||
PROPTR: DEFS 2 ;DYN. PROCEDURE POINTER
|
||||
;
|
||||
PAGE: DEFS 2 ;START OF USER PROGRAM
|
||||
LOMEM: DEFS 2 ;START OF DYN. STORAGE
|
||||
FREE: DEFS 2 ;FIRST FREE-SPACE BYTE
|
||||
HIMEM: DEFS 2 ;FIRST BYTE ABOVE STACK
|
||||
LIBASE: DEFS 2 ;START OF FIRST LIBRARY
|
||||
;
|
||||
TRACEN: DEFS 2 ;TRACE FLAG AND NUMBER
|
||||
AUTONO: DEFS 2 ;AUTO FLAG AND NUMBER
|
||||
ERRTRP: DEFS 2 ;ON ERROR STMT POINTER \
|
||||
ONERSP: DEFS 2 ;ON ERROR LOCAL STKPTR /
|
||||
ERRTXT: DEFS 2 ;ERROR MESSAGE POINTER
|
||||
DATPTR: DEFS 2 ;DATA POINTER
|
||||
ERL: DEFS 2 ;LINE NO OF LAST ERROR
|
||||
CURLIN: DEFS 2 ;POINTER TO CURRENT LINE
|
||||
RANDOM: DEFS 5 ;RANDOM NUMBER
|
||||
COUNT: DEFS 1 ;PRINT POSITION
|
||||
WIDTH: DEFS 1 ;PRINT WIDTH
|
||||
ERR: DEFS 1 ;ERROR NUMBER
|
||||
LISTON: DEFS 1 ;LISTO & OPT FLAG
|
||||
INCREM: DEFS 1 ;AUTO INCREMENT
|
||||
;
|
||||
USER: END
|
||||
@@ -1,7 +1,8 @@
|
||||
TITLE BBCDIST.Z80 (C) R.T.RUSSELL 1982
|
||||
TITLE BBCDIST.Z80 (C) R.T.RUSSELL 1982-2024
|
||||
NAME ('DIST3')
|
||||
;
|
||||
;BBC BASIC (Z80) - CP/M VERSION 2.30 & 3.00
|
||||
;(C) COPYRIGHT R.T.RUSSELL, 1982.
|
||||
;BBC BASIC (Z80) - CP/M VERSION 2.20 & 3.00
|
||||
;(C) COPYRIGHT R.T.RUSSELL, 1982-2024.
|
||||
;ALL RIGHTS RESERVED.
|
||||
;
|
||||
;THIS PROGRAM ALLOWS THE USER TO ADAPT BBC BASIC TO THE
|
||||
@@ -13,11 +14,14 @@
|
||||
;PLEASE NOTE THAT A Z80 PROCESSOR AND CP/M VERSION 2.2
|
||||
;OR LATER ARE REQUIRED.
|
||||
;
|
||||
;R.T.RUSSELL, 11-03-1984, 03-05-1989
|
||||
;ALTERNATE REGISTERS SAVED FOR BDOS CALL, 04-06-2000
|
||||
;R.T.RUSSELL, 11-03-1984, 03-05-1989, 12-05-2024
|
||||
;
|
||||
CPM EQU 5
|
||||
COLD EQU 200H
|
||||
;
|
||||
CR EQU 0DH
|
||||
LF EQU 0AH
|
||||
ESC EQU 1BH
|
||||
;
|
||||
GLOBAL CLRSCN
|
||||
GLOBAL PUTCSR
|
||||
@@ -26,14 +30,18 @@ COLD EQU 200H
|
||||
GLOBAL GETIME
|
||||
GLOBAL GETKEY
|
||||
GLOBAL BYE
|
||||
GLOBAL BEGIN
|
||||
; GLOBAL BDOS
|
||||
;
|
||||
ASEG
|
||||
ORG 100H
|
||||
; EXTRN PRTDEC16
|
||||
;
|
||||
;ASEG
|
||||
;ORG 100H
|
||||
;
|
||||
;JUMP TABLE - BASIC makes calls to hardware-dependent
|
||||
;features via this table:
|
||||
;
|
||||
JP INIT
|
||||
BEGIN: JP INIT
|
||||
CLRSCN: JP CLS ;CLEAR SCREEN
|
||||
PUTCSR: JP PCSR ;SET CURSOR POSN.
|
||||
GETCSR: JP GCSR ;READ CURSOR POSN.
|
||||
@@ -42,30 +50,33 @@ GETIME: JP GTIME ;READ ELAPSED TIME
|
||||
GETKEY: JP INKEY ;READ KEY (TIME LIMIT)
|
||||
BYE: JP REBOOT ;RETURN TO CP/M
|
||||
;
|
||||
;THE CODE WHICH FOLLOWS IS A SKELETON VERSION SUITABLE
|
||||
;FOR ANY CP/M SYSTEM. IT HAS BEEN CONFIGURED FOR A VT100 TO SOME DEGREE
|
||||
;BY PETER SCHORN.
|
||||
;BDOS - Save the IX and IY registers and before performing a
|
||||
; CP/M function call.
|
||||
;
|
||||
BDOS: PUSH IX
|
||||
PUSH IY
|
||||
CALL CPM
|
||||
POP IY
|
||||
POP IX
|
||||
RET
|
||||
;
|
||||
|
||||
PRSTR EQU 9
|
||||
|
||||
;INIT - Perform hardware initialisation (if any).
|
||||
;
|
||||
INIT: LD A,2
|
||||
INC A
|
||||
LD DE,NOTZ80
|
||||
JP PE,FAIL
|
||||
LD C,12
|
||||
CALL BDOS
|
||||
OR A
|
||||
LD DE,NOTV2
|
||||
JP NZ,COLD
|
||||
FAIL: LD C,PRSTR
|
||||
INIT: LD HL,40H ;CPM/HBIOS MARKER LOC
|
||||
LD A,'W'
|
||||
CP (HL)
|
||||
JR NZ,FAIL
|
||||
INC HL
|
||||
LD A,NOT 'W'
|
||||
CP (HL)
|
||||
JR NZ,FAIL
|
||||
JP COLD
|
||||
FAIL: LD DE,NOTHB
|
||||
LD C,9
|
||||
CALL BDOS
|
||||
RST 0
|
||||
;
|
||||
NOTZ80: DEFB 'Wrong processor$'
|
||||
NOTV2: DEFB 'Wrong CP/M version$'
|
||||
NOTHB: DEFB 'CP/M w/ HBIOS required$'
|
||||
;
|
||||
;REBOOT - Switch off interrupts and return to CP/M
|
||||
;
|
||||
@@ -75,31 +86,34 @@ REBOOT: RST 0
|
||||
; Outputs: DEHL = elapsed time (centiseconds)
|
||||
; Destroys: A,D,E,H,L,F
|
||||
;
|
||||
GTIME: LD DE,0
|
||||
LD HL,0
|
||||
RET
|
||||
GTIME: JR TICKS
|
||||
;
|
||||
;PTIME - Load elapsed-time clock.
|
||||
; Inputs: DEHL = time to load (centiseconds)
|
||||
; Destroys: A,D,E,H,L,F
|
||||
;
|
||||
PTIME: RET
|
||||
;
|
||||
;CLS - Clear screen for VT100.
|
||||
; Destroys: A,D,E,H,L,F
|
||||
;
|
||||
CLS: PUSH BC ; save BC
|
||||
LD C,PRSTR ; command for output string
|
||||
LD DE,CLSSTR ; start address of string
|
||||
CALL BDOS ; output to terminal
|
||||
POP BC ; restore BC
|
||||
PTIME:
|
||||
LD BC,0F9D0H
|
||||
SRL D
|
||||
RR E
|
||||
RR H
|
||||
RR L
|
||||
RST 08
|
||||
RET
|
||||
;
|
||||
; Get OS elapsed-time clock
|
||||
; Outputs: DEHL = time (centiseconds)
|
||||
; Destroys: A,B,C,D,E,H,L,F
|
||||
;
|
||||
TICKS: LD BC,0F8D0H
|
||||
RST 08
|
||||
SLA L
|
||||
RL H
|
||||
RL E
|
||||
RL D
|
||||
RET
|
||||
CLSSTR: DEFB 27,'[2J$' ; VT100 string for clear screen
|
||||
|
||||
;
|
||||
;INKEY - Sample keyboard with specified wait.
|
||||
; This version uses a simple software timing loop.
|
||||
; Modify to use hardware/interrupt timer if available.
|
||||
; Inputs: HL = Time to wait (centiseconds)
|
||||
; Outputs: Carry reset indicates time-out.
|
||||
; If carry set, A = character typed.
|
||||
@@ -107,52 +121,64 @@ CLSSTR: DEFB 27,'[2J$' ; VT100 string for clear screen
|
||||
;
|
||||
INKEY: PUSH BC
|
||||
PUSH HL
|
||||
CALL TICKS
|
||||
POP DE
|
||||
ADD HL,DE
|
||||
WAIT: PUSH HL
|
||||
LD C,6
|
||||
LD E,0FFH
|
||||
CALL BDOS ;CONSOLE INPUT
|
||||
CALL BDOS
|
||||
POP HL
|
||||
POP BC
|
||||
OR A
|
||||
SCF
|
||||
RET NZ ;KEY PRESSED
|
||||
OR H
|
||||
OR L
|
||||
RET Z ;TIME-OUT
|
||||
PUSH BC
|
||||
LD A,-1
|
||||
LD BC,1250 ;DELAY CONSTANT
|
||||
WAIT: DEC BC
|
||||
CP B
|
||||
JP NZ,WAIT ;WAIT FOR APPROX 10ms
|
||||
POP BC
|
||||
DEC HL
|
||||
JR INKEY
|
||||
JR NZ,INKEY1
|
||||
PUSH HL
|
||||
CALL TICKS
|
||||
POP DE
|
||||
SBC HL,DE
|
||||
EX DE,HL
|
||||
JR C,WAIT
|
||||
INKEY1: POP BC
|
||||
RET
|
||||
;
|
||||
;CLS - Clear screen.
|
||||
; (Customise to suit your VDU)
|
||||
; Destroys: A,D,E,H,L,F
|
||||
;
|
||||
CLS:
|
||||
LD DE,CLSSTR
|
||||
LD C,9
|
||||
JP BDOS
|
||||
;
|
||||
CLSSTR: DEFB ESC,'[H',ESC,'[2J$'
|
||||
;
|
||||
;PCSR - Move cursor to specified position.
|
||||
; Inputs: DE = horizontal position (LHS=0)
|
||||
; HL = vertical position (TOP=0)
|
||||
; called by TAB(column, row)
|
||||
; Destroys: A,D,E,H,L,F
|
||||
;
|
||||
PCSR: LD B,L ; vertical = line (row)
|
||||
CALL CONV ; normalized and convert to decimal
|
||||
LD (LIN),HL ; and store into string
|
||||
LD B,E ; horizontal = column
|
||||
CALL CONV ; normalized and convert to decimal
|
||||
LD (COL),HL ; and store into string
|
||||
LD C,PRSTR ; output string command
|
||||
LD C,9 ; output string command
|
||||
LD DE,CURS ; start of string
|
||||
JR BDOS ; output string to terminal
|
||||
|
||||
JP BDOS ; output string to terminal
|
||||
;
|
||||
; VT100 sequence for cursor positioning
|
||||
CURS: DEFB 27, '['
|
||||
LIN: DEFW 0 ; high byte, low byte for decimal line
|
||||
DEFB ';'
|
||||
COL: DEFW 0 ; high byte, low byte for decimal column
|
||||
DEFB 'H$'
|
||||
|
||||
;
|
||||
; convert binary B (0 <= B < 99, not checked) into B+1 in decimal.
|
||||
; L = upper byte, H = lower byte. ready for LD (...), HL
|
||||
; destroys A, B, L, H
|
||||
; optimized for space over time
|
||||
;
|
||||
CONV: INC B ; normalize, home in VT100 is (1,1)
|
||||
LD A,'0' ; A is counter for low byte of result
|
||||
LD L,A ; L is counter for high byte of result
|
||||
@@ -164,35 +190,7 @@ CONVLP: INC A ; now B times increment AL in decimal
|
||||
CONT: DJNZ CONVLP ; B times
|
||||
LD H,A ; put low byte into right place
|
||||
RET
|
||||
|
||||
|
||||
;BDOS - Save the IX and IY and alternate registers
|
||||
; before performing a CP/M function call.
|
||||
;
|
||||
BDOS: PUSH IX
|
||||
PUSH IY
|
||||
EXX
|
||||
PUSH BC
|
||||
PUSH DE
|
||||
PUSH HL
|
||||
EXX
|
||||
EX AF,AF'
|
||||
PUSH AF
|
||||
EX AF,AF'
|
||||
CALL CPM
|
||||
EX AF,AF'
|
||||
POP AF
|
||||
EX AF,AF'
|
||||
EXX
|
||||
POP HL
|
||||
POP DE
|
||||
POP BC
|
||||
EXX
|
||||
POP IY
|
||||
POP IX
|
||||
RET
|
||||
|
||||
|
||||
;GCSR - Return cursor coordinates.
|
||||
; Outputs: DE = X coordinate (POS)
|
||||
; HL = Y coordinate (VPOS)
|
||||
@@ -202,24 +200,42 @@ GCSR: LD DE,0
|
||||
LD HL,0
|
||||
RET
|
||||
;
|
||||
IF $ GT 1F4H
|
||||
;COUT - Output a character to the console
|
||||
; Inputs: A = character
|
||||
; Destroys: A,F
|
||||
;
|
||||
COUT: PUSH BC
|
||||
PUSH DE
|
||||
PUSH HL
|
||||
LD E,A
|
||||
LD C,2
|
||||
CALL BDOS
|
||||
POP HL
|
||||
POP DE
|
||||
POP BC
|
||||
RET
|
||||
;
|
||||
;IF $ GT 1F0H
|
||||
IF $-BEGIN GT 0F0H
|
||||
ERROR 'INSUFFICIENT SPACE'
|
||||
ENDIF
|
||||
;
|
||||
ORG 1F4H
|
||||
;ORG 1F0H
|
||||
DEFS 0F0H - ($ - BEGIN)
|
||||
;
|
||||
OFFLO: DEFW 0 ;TIME OFFSET LO
|
||||
OFFHI: DEFW 0 ;TIME OFFSET HI
|
||||
DEFB 80 ;WIDTH
|
||||
DEFB 'E' AND 1FH ;CURSOR UP
|
||||
DEFB 'X' AND 1FH ;CURSOR DOWN
|
||||
DEFB 'A' AND 1FH ;START OF LINE
|
||||
DEFB 'F' AND 1FH ;END OF LINE
|
||||
DEFB 'T' AND 1FH ;DELETE TO END OF LINE
|
||||
DEFB 'H' AND 1FH ;BACKSPACE
|
||||
DEFB 'U' AND 1FH ;CANCEL LINE
|
||||
DEFB 'S' AND 1FH ;CURSOR LEFT
|
||||
DEFB 'D' AND 1FH ;CURSOR RIGHT
|
||||
DEFB 'G' AND 1FH ;DELETE CHARACTER
|
||||
DEFB 'V' AND 1FH ;INSERT CHARACTER
|
||||
DEFB 'G' AND 1FH ;CURSOR UP
|
||||
DEFB 'O' AND 1FH ;CURSOR DOWN
|
||||
DEFB 'F' AND 1FH ;START OF LINE
|
||||
DEFB 'N' AND 1FH ;END OF LINE
|
||||
DEFB 'X' AND 1FH ;DELETE TO END OF LINE
|
||||
DEFB 08H ;BACKSPACE & DELETE
|
||||
DEFB 'U' AND 1FH ;DEL TO START OF LINE
|
||||
DEFB 'J' AND 1FH ;CURSOR LEFT
|
||||
DEFB 'L' AND 1FH ;CURSOR RIGHT
|
||||
DEFB 'R' AND 1FH ;DELETE CHARACTER
|
||||
DEFB 'Q' AND 1FH ;INS/OVR TOGGLE
|
||||
;
|
||||
FIN: END
|
||||
|
||||
2587
Source/Apps/BBCBASIC/eval.z80
Normal file
3274
Source/Apps/BBCBASIC/exec.z80
Normal file
64
Source/Apps/BBCBASIC/hook.z80
Normal file
@@ -0,0 +1,64 @@
|
||||
NAME ('HOOK')
|
||||
;
|
||||
GLOBAL CLG
|
||||
GLOBAL COLOUR
|
||||
GLOBAL DRAW
|
||||
GLOBAL ENVEL
|
||||
GLOBAL GCOL
|
||||
GLOBAL MODE
|
||||
GLOBAL MOVE
|
||||
GLOBAL PLOT
|
||||
GLOBAL SOUND
|
||||
GLOBAL PUTIMS
|
||||
GLOBAL CIRCLE
|
||||
GLOBAL ELLIPSE
|
||||
GLOBAL FILL
|
||||
GLOBAL MOUSE
|
||||
GLOBAL ORIGIN
|
||||
GLOBAL RECTAN
|
||||
GLOBAL LINE
|
||||
GLOBAL TINT
|
||||
GLOBAL WAIT
|
||||
GLOBAL SYS
|
||||
;
|
||||
GLOBAL ADVAL
|
||||
GLOBAL POINT
|
||||
GLOBAL GETIMS
|
||||
GLOBAL TINTFN
|
||||
GLOBAL MODEFN
|
||||
GLOBAL WIDFN
|
||||
;
|
||||
EXTRN EXTERR
|
||||
;
|
||||
CLG:
|
||||
COLOUR:
|
||||
DRAW:
|
||||
ENVEL:
|
||||
GCOL:
|
||||
MODE:
|
||||
MOVE:
|
||||
PLOT:
|
||||
SOUND:
|
||||
ADVAL:
|
||||
POINT:
|
||||
GETIMS:
|
||||
PUTIMS:
|
||||
CIRCLE:
|
||||
ELLIPSE:
|
||||
FILL:
|
||||
MOUSE:
|
||||
ORIGIN:
|
||||
RECTAN:
|
||||
LINE:
|
||||
TINT:
|
||||
TINTFN:
|
||||
MODEFN:
|
||||
WIDFN:
|
||||
WAIT:
|
||||
SYS:
|
||||
XOR A
|
||||
CALL EXTERR
|
||||
DEFM 'Sorry'
|
||||
DEFB 0
|
||||
;
|
||||
END
|
||||
2237
Source/Apps/BBCBASIC/main.z80
Normal file
2267
Source/Apps/BBCBASIC/math.z80
Normal file
@@ -30,6 +30,7 @@ pushd VGM && call Build || exit /b & popd
|
||||
pushd cpuspd && call Build || exit /b & popd
|
||||
pushd Survey && call Build || exit /b & popd
|
||||
pushd HTalk && call Build || exit /b & popd
|
||||
pushd BBCBASIC && call Build || exit /b & popd
|
||||
|
||||
copy *.com %APPBIN%\ || exit /b
|
||||
|
||||
|
||||
@@ -19,3 +19,4 @@ pushd VGM && call Clean || exit /b 1 & popd
|
||||
pushd cpuspd && call Clean || exit /b 1 & popd
|
||||
pushd Survey && call Clean || exit /b 1 & popd
|
||||
pushd HTalk && call Clean || exit /b 1 & popd
|
||||
pushd BBCBASIC && call Clean || exit /b 1 & popd
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
OBJECTS = sysgen.com syscopy.com assign.com format.com talk.com \
|
||||
mode.com rtc.com timer.com rtchb.com
|
||||
SUBDIRS = HTalk XM FDU FAT Tune Test ZMP ZMD Dev VGM cpuspd Survey
|
||||
SUBDIRS = HTalk XM FDU FAT Tune Test ZMP ZMD Dev VGM cpuspd Survey BBCBASIC
|
||||
DEST = ../../Binary/Apps
|
||||
TOOLS =../../Tools
|
||||
|
||||
|
||||
@@ -8,4 +8,5 @@ set TASMTABS=%TOOLS%\tasm32
|
||||
tasm -t180 -g3 -fFF inttest.asm inttest.com inttest.lst || exit /b
|
||||
|
||||
copy /Y inttest.com ..\..\..\..\Binary\Apps\Test\ || exit /b
|
||||
copy /Y inttest.doc ..\..\..\..\Binary\Apps\Test\ || exit /b
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
OBJECTS = inttest.com
|
||||
DOCS = inttest.doc
|
||||
DEST = ../../../../Binary/Apps/Test
|
||||
DOCDEST = ../../../../Binary/Apps/Test
|
||||
TOOLS =../../../../Tools
|
||||
|
||||
USETASM=1
|
||||
|
||||
@@ -176,6 +176,8 @@ estidx:
|
||||
jr z,hkim
|
||||
cp 2
|
||||
jr z,hkim
|
||||
cp 3
|
||||
jr z,hkim
|
||||
ret
|
||||
;
|
||||
; Setup interrupt handler
|
||||
@@ -545,8 +547,8 @@ stack .equ $ ; stack top
|
||||
;
|
||||
; Messages
|
||||
;
|
||||
msgban .db "INTTEST v1.2, 15-May-2019",13,10
|
||||
.db "Copyright (C) 2019, Wayne Warthen, GNU GPL v3",0
|
||||
msgban .db "INTTEST v1.3, 16-May-2024",13,10
|
||||
.db "Copyright (C) 2024, Wayne Warthen, GNU GPL v3",0
|
||||
msginfo .db "Interrupt information request...",0
|
||||
msgmode .db " Active interrupt mode: ",0
|
||||
msgcnt .db " Vector entries in use: ",0
|
||||
|
||||
44
Source/Apps/Test/inttest/inttest.doc
Normal file
@@ -0,0 +1,44 @@
|
||||
INTTEST
|
||||
=======
|
||||
|
||||
RomWBW includes an API allowing applications to "hook" interrupts.
|
||||
The `INTTEST` utility allows you to test this functionality.
|
||||
|
||||
|
||||
** Syntax **
|
||||
|
||||
`INTTEST`
|
||||
|
||||
|
||||
** Usage **
|
||||
|
||||
`INTTEST` is an interactive application. At startup, it will display
|
||||
a list of the interrupt vector slots in your system along with the
|
||||
current vector address for each of them.
|
||||
|
||||
It then prompts you to enter the slot number (in hex) of a vector to
|
||||
hook. After entering this, the application will watch the hooked
|
||||
vector and countdown from 0xFF to 0x00 as interrupts are noted.
|
||||
|
||||
When the counter reaches 0x00, the interrupt is unhooked and the
|
||||
application terminates. The application can also be terminated by
|
||||
pressing <esc>.
|
||||
|
||||
|
||||
** Notes **
|
||||
|
||||
If your system is running without interrupts active, the application
|
||||
will terminate immediately.
|
||||
|
||||
All slots have vectors even if the corresponding interrupt is not
|
||||
doing anything. In this case, the vector is pointing to the "bad
|
||||
interrupt" handler.
|
||||
|
||||
If you hook a vector that is not receiving any interrupts, the
|
||||
down-counter will not do anything.
|
||||
|
||||
|
||||
** Etymology* *
|
||||
|
||||
The `INTTEST` command is an original product and the source code is
|
||||
provided in the RomWBW distribution.
|
||||
@@ -11,6 +11,7 @@
|
||||
; WBW 2022-04-01: Add menu for test functions
|
||||
; WBW 2022-04-02: Fix prtchr register saving/recovery
|
||||
; WBW 2023-10-19: Add support for Duodyne
|
||||
; WBW 2024-06-10: Add support for RC2014
|
||||
;
|
||||
;=======================================================================
|
||||
;
|
||||
@@ -25,6 +26,10 @@ iodat_rph .equ $8C ; PS/2 controller data port address
|
||||
; Duodyne:
|
||||
iocmd_duo .equ $4D ; PS/2 controller command port address
|
||||
iodat_duo .equ $4C ; PS/2 controller data port address
|
||||
; RC2014 (EP/Sally)
|
||||
iocmd_rc .equ $64 ; PS/2 controller command port address
|
||||
iodat_rc .equ $60 ; PS/2 controller data port address
|
||||
|
||||
;
|
||||
cpumhz .equ 8 ; for time delay calculations (not critical)
|
||||
;
|
||||
@@ -87,6 +92,8 @@ setup1:
|
||||
jr z,setup_rph
|
||||
cp '3' ; Duodyne
|
||||
jr z,setup_duo
|
||||
cp '4' ; RC2014 EP/Sally
|
||||
jr z,setup_rc
|
||||
cp 'X'
|
||||
jr z,exit
|
||||
jr setup
|
||||
@@ -115,6 +122,14 @@ setup_duo:
|
||||
ld de,str_duo
|
||||
jr setup2
|
||||
;
|
||||
setup_rc:
|
||||
ld a,iocmd_rc
|
||||
ld (iocmd),a
|
||||
ld a,iodat_rc
|
||||
ld (iodat),a
|
||||
ld de,str_rc
|
||||
jr setup2
|
||||
;
|
||||
setup2:
|
||||
call prtstr
|
||||
call crlf2
|
||||
@@ -1437,16 +1452,18 @@ delay1:
|
||||
; Constants
|
||||
;=======================================================================
|
||||
;
|
||||
str_banner .db "PS/2 Keyboard/Mouse Information v0.8, 6-Nov-2023",0
|
||||
str_banner .db "PS/2 Keyboard/Mouse Information v0.9, 10-Jun-2024",0
|
||||
str_hwmenu .db "PS/2 Controller Port Options:\r\n\r\n"
|
||||
.db " 1 - Nhyodyne\r\n"
|
||||
.db " 2 - Rhyophyre\r\n"
|
||||
.db " 3 - Duodyne\r\n"
|
||||
.db " 4 - RC2014\r\n"
|
||||
.db " X - Exit Application\r\n"
|
||||
.db "\r\nSelection? ",0
|
||||
str_mbc .db "Nhyodyne",0
|
||||
str_rph .db "Rhyophyre",0
|
||||
str_duo .db "Duodyne",0
|
||||
str_rc .db "RC2014 (Saly)",0
|
||||
str_menu .db "PS/2 Testing Options:\r\n\r\n"
|
||||
.db " C - Test PS/2 Controller\r\n"
|
||||
.db " K - Test PS/2 Keyboard\r\n"
|
||||
|
||||
@@ -49,6 +49,8 @@
|
||||
; 2024-02-23 [WBW] Include ACR value in config table
|
||||
; 2024-04-16 [WBW] Add support for NABU AY-3-8910
|
||||
; 2024-05-10 [WBW] Hack to avoid corrupting bits 6&7 of PSG R7 for NABU!
|
||||
; 2024-07-08 [WBW] Add support for Les Bird's Graphics, Sound, Joystick
|
||||
; 2024-07-11 [WBW] Updated, Les Bird's module now uses same settings as EB6
|
||||
;_______________________________________________________________________________
|
||||
;
|
||||
; ToDo:
|
||||
@@ -572,8 +574,8 @@ CFGSIZ .EQU $ - CFGTBL
|
||||
.DB $07, $D8, $D0, $D8, $FF, $FF, $FF ; RCZ80 W/ RC SOUND MODULE (EB)
|
||||
.DW HWSTR_RCEB
|
||||
;
|
||||
.DB $07, $A0, $A1, $A2, $FF, $FF, $FF ; RCZ80 W/ RC SOUND MODULE (EB Rev 6)
|
||||
.DW HWSTR_RCEB6
|
||||
.DB $07, $A0, $A1, $A2, $FF, $FF, $FF ; RCZ80 W/ RC SOUND MODULE (MSX)
|
||||
.DW HWSTR_RCMSX
|
||||
;
|
||||
.DB $07, $D1, $D0, $D0, $FF, $FF, $FF ; RCZ80 W/ RC SOUND MODULE (MF)
|
||||
.DW HWSTR_RCMF
|
||||
@@ -584,8 +586,8 @@ CFGSIZ .EQU $ - CFGTBL
|
||||
.DB $08, $68, $60, $68, $C0, $FF, $FF ; RCZ180 W/ RC SOUND MODULE (EB)
|
||||
.DW HWSTR_RCEB
|
||||
;
|
||||
.DB $08, $A0, $A1, $A2, $C0, $FF, $FF ; RCZ180 W/ RC SOUND MODULE (EB Rev 6)
|
||||
.DW HWSTR_RCEB6
|
||||
.DB $08, $A0, $A1, $A2, $C0, $FF, $FF ; RCZ180 W/ RC SOUND MODULE (MSX)
|
||||
.DW HWSTR_RCMSX
|
||||
;
|
||||
.DB $08, $61, $60, $60, $C0, $FF, $FF ; RCZ180 W/ RC SOUND MODULE (MF)
|
||||
.DW HWSTR_RCMF
|
||||
@@ -596,8 +598,8 @@ CFGSIZ .EQU $ - CFGTBL
|
||||
.DB $09, $D8, $D0, $D8, $FF, $FF, $FF ; EZZ80 W/ RC SOUND MODULE (EB)
|
||||
.DW HWSTR_RCEB
|
||||
;
|
||||
.DB $09, $A0, $A1, $A2, $FF, $FF, $FF ; EZZ80 W/ RC SOUND MODULE (EB Rev 6)
|
||||
.DW HWSTR_RCEB6
|
||||
.DB $09, $A0, $A1, $A2, $FF, $FF, $FF ; EZZ80 W/ RC SOUND MODULE (MSX)
|
||||
.DW HWSTR_RCMSX
|
||||
;
|
||||
.DB $09, $D1, $D0, $D0, $FF, $FF, $FF ; EZZ80 W/ RC SOUND MODULE (MF)
|
||||
.DW HWSTR_RCMF
|
||||
@@ -608,8 +610,8 @@ CFGSIZ .EQU $ - CFGTBL
|
||||
.DB $0A, $68, $60, $68, $C0, $FF, $FF ; SCZ180 W/ RC SOUND MODULE (EB)
|
||||
.DW HWSTR_RCEB
|
||||
;
|
||||
.DB $0A, $A0, $A1, $A2, $C0, $FF, $FF ; SCZ180 W/ RC SOUND MODULE (EB Rev 6)
|
||||
.DW HWSTR_RCEB6
|
||||
.DB $0A, $A0, $A1, $A2, $C0, $FF, $FF ; SCZ180 W/ RC SOUND MODULE (MS6)
|
||||
.DW HWSTR_RCMSX
|
||||
;
|
||||
.DB $0A, $61, $60, $60, $C0, $FF, $FF ; SCZ180 W/ RC SOUND MODULE (MF)
|
||||
.DW HWSTR_RCMF
|
||||
@@ -620,8 +622,8 @@ CFGSIZ .EQU $ - CFGTBL
|
||||
.DB $0B, $D8, $D0, $D8, $FF, $FF, $FF ; RCZ280 W/ RC SOUND MODULE (EB)
|
||||
.DW HWSTR_RCEB
|
||||
;
|
||||
.DB $0B, $A0, $A1, $A2, $FF, $FF, $FF ; RCZ280 W/ RC SOUND MODULE (EB Rev 6)
|
||||
.DW HWSTR_RCEB6
|
||||
.DB $0B, $A0, $A1, $A2, $FF, $FF, $FF ; RCZ280 W/ RC SOUND MODULE (MSX)
|
||||
.DW HWSTR_RCMSX
|
||||
;
|
||||
.DB $0B, $D1, $D0, $D0, $FF, $FF, $FF ; RCZ280 W/ RC SOUND MODULE (MF)
|
||||
.DW HWSTR_RCMF
|
||||
@@ -666,7 +668,7 @@ TMP .DB 0 ; work around use of undocumented Z80
|
||||
HBIOSMD .DB 0 ; NON-ZERO IF USING HBIOS SOUND DRIVER, ZERO OTHERWISE
|
||||
OCTAVEADJ .DB 0 ; AMOUNT TO ADJUST OCTAVE UP OR DOWN
|
||||
|
||||
MSGBAN .DB "Tune Player for RomWBW v3.8, 10-May-2024",0
|
||||
MSGBAN .DB "Tune Player for RomWBW v3.10, 11-Jul-2024",0
|
||||
MSGUSE .DB "Copyright (C) 2024, Wayne Warthen, GNU GPL v3",13,10
|
||||
.DB "PTxPlayer Copyright (C) 2004-2007 S.V.Bulba",13,10
|
||||
.DB "MYMPlay by Marq/Lieves!Tuore",13,10,13,10
|
||||
@@ -687,7 +689,7 @@ MSGERR .DB "App Error", 0
|
||||
HWSTR_SCG .DB "SCG ECB Board",0
|
||||
HWSTR_N8 .DB "N8 Onboard Sound",0
|
||||
HWSTR_RCEB .DB "RCBus Sound Module (EB)",0
|
||||
HWSTR_RCEB6 .DB "RCBus Sound Module (EBv6)",0
|
||||
HWSTR_RCMSX .DB "RCBus Sound Module (MSX)",0
|
||||
HWSTR_RCMF .DB "RCBus Sound Module (MF)",0
|
||||
HWSTR_LINC .DB "Z50 LiNC Sound Module",0
|
||||
HWSTR_MBC .DB "NHYODYNE Sound Module",0
|
||||
|
||||
@@ -33,6 +33,8 @@
|
||||
;
|
||||
;[2023/07/07] v1.9 Support DUODYNE
|
||||
;
|
||||
;[2024/09/02] v1.10 Support Genesis STD Z180
|
||||
;
|
||||
; Constants
|
||||
;
|
||||
mask_data .EQU %10000000 ; RTC data line
|
||||
@@ -52,6 +54,7 @@ PORT_RCZ280 .EQU $C0 ; RTC port for RCZ280
|
||||
PORT_MBC .EQU $70 ; RTC port for MBC
|
||||
PORT_RPH .EQU $84 ; RTC port for RHYOPHYRE
|
||||
PORT_DUO .EQU $94 ; RTC port for DUODYNE
|
||||
PORT_STDZ180 .EQU $84 ; RTC Port for STD Bus Z180 board
|
||||
|
||||
|
||||
BDOS .EQU 5 ; BDOS invocation vector
|
||||
@@ -1143,7 +1146,13 @@ HINIT:
|
||||
CP 17 ; DUODYNE
|
||||
JP Z,RTC_INIT2
|
||||
;
|
||||
; Unknown platform
|
||||
LD C,PORT_STDZ180
|
||||
LD DE,PLT_STDZ180
|
||||
CP 21 ; STD Z180
|
||||
JP Z,RTC_INIT2
|
||||
;
|
||||
|
||||
; Unknown platform
|
||||
LD DE,PLTERR ; BIOS error message
|
||||
LD C,9 ; BDOS string display function
|
||||
CALL BDOS ; Do it
|
||||
@@ -1769,6 +1778,7 @@ PLT_RCZ280 .TEXT ", RCBus Z280 RTC Module Latch Port 0xC0\r\n$"
|
||||
PLT_MBC .TEXT ", MBC RTC Latch Port 0x70\r\n$"
|
||||
PLT_RPH .TEXT ", RHYOPHYRE RTC Latch Port 0x84\r\n$"
|
||||
PLT_DUO .TEXT ", DUODYNE RTC Latch Port 0x70\r\n$"
|
||||
PLT_STDZ180 .TEXT ", STD Z180 RTC Module latch port 0x84\r\n$"
|
||||
|
||||
;
|
||||
; Generic FOR-NEXT loop algorithm
|
||||
|
||||
@@ -11,6 +11,7 @@ call BuildZRC || exit /b
|
||||
call BuildZ1RCC || exit /b
|
||||
call BuildZZRCC || exit /b
|
||||
call BuildZRC512 || exit /b
|
||||
call BuildFZ80 || exit /b
|
||||
|
||||
if "%1" == "dist" (
|
||||
call Clean || exit /b
|
||||
|
||||
4
Source/BuildFZ80.cmd
Normal file
@@ -0,0 +1,4 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
pushd FZ80 && call Build || exit /b & popd
|
||||
@@ -2747,10 +2747,12 @@ CLRRAM2:
|
||||
#ENDIF
|
||||
LD A,(BNKUSER) ; SWITCH BACK TO USER BANK
|
||||
CALL HB_BNKSEL ; SELECT BANK
|
||||
EI ; INTERRUPTS OK AGAIN
|
||||
CALL NEWLINE2 ; FORMATTING
|
||||
LD DE,STR_INITRAMDISK ; RAM DISK INIT MESSAGE
|
||||
CALL WRITESTR ; DISPLAY IT
|
||||
LD A,(BNKRAMD) ; SWITCH BACK TO FIRST BANK
|
||||
DI ; DISABLE INTERRUPTS AGAIN
|
||||
LD A,(BNKRAMD) ; SWITCH BACK TO FIRST RAM BANK
|
||||
CALL HB_BNKSEL ; SELECT BANK
|
||||
LD HL,0 ; SOURCE ADR FOR FILL
|
||||
LD BC,$2000 ; LENGTH OF FILL IS 8K
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
$define{doc_ver}{Version 3.5}$
|
||||
$define{doc_product}{RomWBW}$
|
||||
$define{doc_root}{https://github.com/wwarthen/RomWBW/raw/dev/Doc}$
|
||||
$define{file_root}{https://github.com/wwarthen/RomWBW/raw/master}$
|
||||
$define{doc_root}{$file_root$/Doc}$
|
||||
$ifndef{doc_title}$ $define{doc_title}{Document Title}$ $endif$
|
||||
$ifndef{doc_author}$ $define{doc_author}{Wayne Warthen}$ $endif$
|
||||
$define{doc_date}{$date{%d %b %Y}$}$
|
||||
@@ -10,7 +11,6 @@ $define{doc_orgurl}{www.retrobrewcomputers.org}$
|
||||
$define{doc_user}{[RomWBW User Guide]($doc_root$/RomWBW User Guide.pdf)}$
|
||||
$define{doc_sys}{[RomWBW System Guide]($doc_root$/RomWBW System Guide.pdf)}$
|
||||
$define{doc_apps}{[RomWBW Applications]($doc_root$/RomWBW Applications.pdf)}$
|
||||
$define{doc_romapps}{[RomWBW ROM Applications]($doc_root$/RomWBW ROM Applications.pdf)}$
|
||||
$define{doc_catalog}{[RomWBW Disk Catalog]($doc_root$/RomWBW Disk Catalog.pdf)}$
|
||||
$define{doc_errata}{[RomWBW Errata]($doc_root$/RomWBW Errata.pdf)}$
|
||||
|
||||
|
||||
@@ -11,20 +11,18 @@ set PATH=%TOOLS%\gpp;%PATH%
|
||||
|
||||
if not "%1"=="" (call :GenDoc %1 & goto :eof)
|
||||
|
||||
call :GenDoc ReadMe
|
||||
call :GenDoc UserGuide
|
||||
call :GenDoc SystemGuide
|
||||
call :GenDoc Applications
|
||||
call :GenDoc ROM_Applications
|
||||
call :GenDoc Catalog
|
||||
call :GenDoc Errata
|
||||
call :GenDoc ReadMe || exit /b
|
||||
call :GenDoc UserGuide || exit /b
|
||||
call :GenDoc SystemGuide || exit /b
|
||||
call :GenDoc Applications || exit /b
|
||||
call :GenDoc Catalog || exit /b
|
||||
call :GenDoc Errata || exit /b
|
||||
|
||||
if exist ReadMe.gfm copy Readme.gfm ..\..\ReadMe.md || exit /b
|
||||
if exist ReadMe.txt copy ReadMe.txt ..\..\ReadMe.txt || exit /b
|
||||
if exist UserGuide.pdf copy UserGuide.pdf "..\..\Doc\RomWBW User Guide.pdf" || exit /b
|
||||
if exist SystemGuide.pdf copy SystemGuide.pdf "..\..\Doc\RomWBW System Guide.pdf" || exit /b
|
||||
if exist Applications.pdf copy Applications.pdf "..\..\Doc\RomWBW Applications.pdf" || exit /b
|
||||
if exist ROM_Applications.pdf copy ROM_Applications.pdf "..\..\Doc\RomWBW ROM Applications.pdf" || exit /b
|
||||
if exist Catalog.pdf copy Catalog.pdf "..\..\Doc\RomWBW Disk Catalog.pdf" || exit /b
|
||||
if exist Errata.pdf copy Errata.pdf "..\..\Doc\RomWBW Errata.pdf" || exit /b
|
||||
|
||||
|
||||
@@ -217,9 +217,9 @@ on using the applications and files listed.
|
||||
| `INITDIR.COM` | ZSDOS | ZSDOS Prepare disks for P2DOS Stamps |
|
||||
| `KERMIT.COM` | -- | Generic CP/M 2.2 Kermit communication application |
|
||||
| `LBREXT.COM` | -- | Extract library files |
|
||||
| `LDDS.COM` | ZSDOS | Clock driver |
|
||||
| `LDNZT.COM` | ZSDOS | Clock driver |
|
||||
| `LDP2D.COM` | ZSDOS | Clock driver |
|
||||
| `LDDS.COM` | ZSDOS | Load DateStamper date/time stamping resident extension |
|
||||
| `LDNZT.COM` | ZSDOS | Load NZT date/time stamping resident extension |
|
||||
| `LDP2D.COM` | ZSDOS | Load P2DOS date/time stamping resident extension |
|
||||
| `LIB.COM` | -- | DRI Library manager |
|
||||
| `LINK.COM` | -- | DRI CPM relocatable linker |
|
||||
| `LOAD.COM` | -- | DRI hex file loader into memory |
|
||||
@@ -229,7 +229,7 @@ on using the applications and files listed.
|
||||
| `PMARC.COM` | -- | LHA file compressor |
|
||||
| `PMEXT.COM` | -- | Extractor for PMARC archives |
|
||||
| `PUTBG.COM` | ZSDOS | ZSDOS Prepare disk for backgrounder |
|
||||
| `PUTDS.COM` | ZSDOS | ZSDOS Prepare disk for datestamper |
|
||||
| `PUTDS.COM` | ZSDOS | ZSDOS Prepare disk for datestamper date/time stamping|
|
||||
| `RELOG.COM` | ZSDOS | ZSDOS relog disks after program that bypasses BDOS |
|
||||
| `RMAC.COM` | -- | DRI Relocatable Macro Assembler |
|
||||
| `SETTERM.COM` | ZSDOS | ZSDOS Installs terminal control codes into DateSamper utilities |
|
||||
|
||||
|
Before Width: | Height: | Size: 63 KiB After Width: | Height: | Size: 59 KiB |
366
Source/Doc/Graphics/BankSwitchedMemory.svg
Normal file
@@ -0,0 +1,366 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by Microsoft Visio, SVG Export BankSwitchedMemory.svg Page-1 -->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events"
|
||||
width="6.51042in" height="5.73361in" viewBox="0 0 468.75 412.82" xml:space="preserve" color-interpolation-filters="sRGB"
|
||||
class="st22">
|
||||
<style type="text/css">
|
||||
<![CDATA[
|
||||
.st1 {fill:#c0c0c0;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.24}
|
||||
.st2 {fill:#ffffff;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.24}
|
||||
.st3 {stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.24}
|
||||
.st4 {fill:#ffffff;stroke:none;stroke-linecap:butt;stroke-width:7.2}
|
||||
.st5 {fill:#000000;font-family:Calibri;font-size:0.75em}
|
||||
.st6 {fill:#ffffff;stroke:none;stroke-linecap:butt}
|
||||
.st7 {fill:#000000;font-family:Calibri;font-size:1.00001em}
|
||||
.st8 {fill:none;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st9 {fill:#000000;font-family:Calibri;font-size:0.833336em}
|
||||
.st10 {font-size:1em}
|
||||
.st11 {stroke:#000000;stroke-dasharray:7,5;stroke-linecap:round;stroke-linejoin:round;stroke-width:1}
|
||||
.st12 {fill:#ffffff;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}
|
||||
.st13 {stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}
|
||||
.st14 {marker-end:url(#mrkr4-136);stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}
|
||||
.st15 {fill:#000000;fill-opacity:1;stroke:#000000;stroke-opacity:1;stroke-width:0.37313432835821}
|
||||
.st16 {fill:#000000;font-family:Calibri;font-size:0.666664em}
|
||||
.st17 {stroke:#000000;stroke-dasharray:1.5,3;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}
|
||||
.st18 {marker-end:url(#mrkr4-165);marker-start:url(#mrkr10-163);stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.24}
|
||||
.st19 {fill:#000000;fill-opacity:1;stroke:#000000;stroke-opacity:1;stroke-width:0.08695652173913}
|
||||
.st20 {marker-end:url(#mrkr4-136);marker-start:url(#mrkr10-193);stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}
|
||||
.st21 {fill:#ffffff;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:1}
|
||||
.st22 {fill:none;fill-rule:evenodd;font-size:12px;overflow:visible;stroke-linecap:square;stroke-miterlimit:3}
|
||||
]]>
|
||||
</style>
|
||||
|
||||
<defs id="Markers">
|
||||
<g id="lend4">
|
||||
<path d="M 2 1 L 0 0 L 2 -1 L 2 1 " style="stroke:none"/>
|
||||
</g>
|
||||
<marker id="mrkr4-136" class="st15" refX="-5.36" orient="auto" markerUnits="strokeWidth" overflow="visible">
|
||||
<use xlink:href="#lend4" transform="scale(-2.68,-2.68) "/>
|
||||
</marker>
|
||||
<g id="lend10">
|
||||
<path
|
||||
d="M 0 0.75 C -0.414214 0.75 -0.75 0.414214 -0.75 0 -0.75 -0.414214 -0.414214 -0.75 0 -0.75 0.414214 -0.75 0.75 -0.414214 0.75 0 0.75 0.414214 0.414214 0.75 0 0.75 Z "
|
||||
style="stroke:none"/>
|
||||
</g>
|
||||
<marker id="mrkr10-163" class="st19" refX="7.125" orient="auto" markerUnits="strokeWidth" overflow="visible">
|
||||
<use xlink:href="#lend10" transform="scale(11.5) "/>
|
||||
</marker>
|
||||
<marker id="mrkr4-165" class="st19" refX="-23" orient="auto" markerUnits="strokeWidth" overflow="visible">
|
||||
<use xlink:href="#lend4" transform="scale(-11.5,-11.5) "/>
|
||||
</marker>
|
||||
<marker id="mrkr10-193" class="st15" refX="1.77" orient="auto" markerUnits="strokeWidth" overflow="visible">
|
||||
<use xlink:href="#lend10" transform="scale(2.68) "/>
|
||||
</marker>
|
||||
</defs>
|
||||
<g>
|
||||
<title>Page-1</title>
|
||||
<g id="group13-1" transform="translate(216.75,-109.92)">
|
||||
<title>Data block.13</title>
|
||||
<g id="shape14-2" transform="translate(157.745,0)">
|
||||
<title>Sheet.14</title>
|
||||
<path d="M0 412.82 L11.41 401.41 L11.41 228.61 L0 240.02 L0 412.82 Z" class="st1"/>
|
||||
</g>
|
||||
<g id="shape15-4" transform="translate(0,-172.8)">
|
||||
<title>Sheet.15</title>
|
||||
<path d="M0 412.82 L157.75 412.82 L169.15 401.41 L11.41 401.41 L0 412.82 Z" class="st1"/>
|
||||
</g>
|
||||
<g id="shape16-6">
|
||||
<title>Sheet.16</title>
|
||||
<rect x="0" y="240.02" width="157.745" height="172.8" class="st2"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="group9-8" transform="translate(216.75,-282.72)">
|
||||
<title>Data block.9</title>
|
||||
<g id="shape10-9" transform="translate(157.745,0)">
|
||||
<title>Sheet.10</title>
|
||||
<path d="M0 412.82 L11.41 401.41 L11.41 343.81 L0 355.22 L0 412.82 Z" class="st1"/>
|
||||
</g>
|
||||
<g id="shape11-11" transform="translate(0,-57.6)">
|
||||
<title>Sheet.11</title>
|
||||
<path d="M0 412.82 L157.75 412.82 L169.15 401.41 L11.41 401.41 L0 412.82 Z" class="st1"/>
|
||||
</g>
|
||||
<g id="shape12-13">
|
||||
<title>Sheet.12</title>
|
||||
<rect x="0" y="355.22" width="157.745" height="57.6" class="st2"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="group5-15" transform="translate(216.75,-340.32)">
|
||||
<title>Data block</title>
|
||||
<g id="shape6-16" transform="translate(157.745,0)">
|
||||
<title>Sheet.6</title>
|
||||
<path d="M0 412.82 L11.41 401.41 L11.41 379.81 L0 391.22 L0 412.82 Z" class="st1"/>
|
||||
</g>
|
||||
<g id="shape7-18" transform="translate(0,-21.6)">
|
||||
<title>Sheet.7</title>
|
||||
<path d="M0 412.82 L157.75 412.82 L169.15 401.41 L11.41 401.41 L0 412.82 Z" class="st1"/>
|
||||
</g>
|
||||
<g id="shape8-20">
|
||||
<title>Sheet.8</title>
|
||||
<rect x="0" y="391.22" width="157.745" height="21.6" class="st2"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="shape2-22" transform="translate(65.55,486.457) rotate(180)">
|
||||
<title>Sheet.2</title>
|
||||
<desc>$FE00</desc>
|
||||
<path d="M0 412.82 L36 412.82" class="st3"/>
|
||||
<rect x="-29.1072" y="-418.22" width="22.2144" height="10.7998" transform="rotate(180)" class="st4"/>
|
||||
<text x="-29.11" y="-410.12" transform="rotate(180)" class="st5">$FE00</text> </g>
|
||||
<g id="shape3-27" transform="translate(65.55,542.541) rotate(180)">
|
||||
<title>Sheet.3</title>
|
||||
<desc>$D000</desc>
|
||||
<path d="M0 412.82 L36 412.82" class="st3"/>
|
||||
<rect x="-29.8916" y="-418.22" width="23.7832" height="10.7998" transform="rotate(180)" class="st6"/>
|
||||
<text x="-29.89" y="-410.12" transform="rotate(180)" class="st5">$D000</text> </g>
|
||||
<g id="shape17-32" transform="translate(433.37,106.7) rotate(90)">
|
||||
<title>Sheet.17</title>
|
||||
<desc>$8000</desc>
|
||||
<path d="M0 412.82 L46.25 412.82" class="st3"/>
|
||||
<rect x="-38.3323" y="-420.02" width="30.4102" height="14.4001" transform="rotate(180)" class="st6"/>
|
||||
<text x="-38.33" y="-409.22" transform="rotate(180)" class="st7">$8000</text> </g>
|
||||
<g id="group18-37" transform="translate(297.405,-282.72)">
|
||||
<title>3D stack middle</title>
|
||||
<g id="shape19-38" transform="translate(77.0909,0)">
|
||||
<title>Sheet.19</title>
|
||||
<path d="M0 412.82 L7.2 405.62 L7.2 387.58 L0 394.78 L0 412.82 Z" class="st1"/>
|
||||
</g>
|
||||
<g id="shape20-40">
|
||||
<title>Sheet.20</title>
|
||||
<rect x="0" y="394.784" width="77.0909" height="18.0364" class="st2"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="group21-42" transform="translate(297.405,-297.12)">
|
||||
<title>3D stack middle.21</title>
|
||||
<g id="shape22-43" transform="translate(77.0909,0)">
|
||||
<title>Sheet.22</title>
|
||||
<path d="M0 412.82 L7.2 405.62 L7.2 384.02 L0 391.22 L0 412.82 Z" class="st1"/>
|
||||
</g>
|
||||
<g id="shape23-45">
|
||||
<title>Sheet.23</title>
|
||||
<rect x="0" y="391.22" width="77.0909" height="21.6" class="st2"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="group24-47" transform="translate(297.405,-318.72)">
|
||||
<title>3D stack middle.24</title>
|
||||
<g id="shape25-48" transform="translate(77.0909,0)">
|
||||
<title>Sheet.25</title>
|
||||
<path d="M0 412.82 L7.2 405.62 L7.2 384.02 L0 391.22 L0 412.82 Z" class="st1"/>
|
||||
</g>
|
||||
<g id="shape26-50">
|
||||
<title>Sheet.26</title>
|
||||
<rect x="0" y="391.22" width="77.0909" height="21.6" class="st2"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="shape27-52" transform="translate(220.314,-340.32)">
|
||||
<title>Sheet.27</title>
|
||||
<desc>HBIOS Proxy (RST 08)</desc>
|
||||
<rect x="0" y="391.22" width="154.182" height="21.6" class="st8"/>
|
||||
<text x="34.06" y="405.02" class="st9">HBIOS Proxy (RST 08)</text> </g>
|
||||
<g id="shape28-55" transform="translate(220.314,-109.92)">
|
||||
<title>Sheet.28</title>
|
||||
<desc>Application Area (TPA)</desc>
|
||||
<rect x="0" y="237.402" width="154.836" height="175.418" class="st8"/>
|
||||
<text x="22.5" y="328.71" class="st7">Application Area (TPA)</text> </g>
|
||||
<g id="shape29-58" transform="translate(220.314,-282.72)">
|
||||
<title>Sheet.29</title>
|
||||
<desc>Operating System CP/M or ZSYS</desc>
|
||||
<rect x="0" y="355.22" width="77.0909" height="57.6" class="st8"/>
|
||||
<text x="2.38" y="375.02" class="st9">Operating System <tspan x="11.08" dy="2.4em" class="st10">CP/M or ZSYS</tspan></text> </g>
|
||||
<g id="shape30-62" transform="translate(297.405,-318.72)">
|
||||
<title>Sheet.30</title>
|
||||
<desc>CBIOS</desc>
|
||||
<rect x="0" y="391.22" width="77.0909" height="21.6" class="st8"/>
|
||||
<text x="26.29" y="405.02" class="st9">CBIOS</text> </g>
|
||||
<g id="shape31-65" transform="translate(297.405,-297.12)">
|
||||
<title>Sheet.31</title>
|
||||
<desc>BDOS</desc>
|
||||
<rect x="0" y="391.22" width="77.0909" height="21.6" class="st8"/>
|
||||
<text x="27.14" y="405.02" class="st9">BDOS</text> </g>
|
||||
<g id="shape32-68" transform="translate(297.405,-282.72)">
|
||||
<title>Sheet.32</title>
|
||||
<desc>CCP</desc>
|
||||
<rect x="0" y="398.42" width="77.0909" height="14.4" class="st8"/>
|
||||
<text x="30.63" y="408.62" class="st9">CCP</text> </g>
|
||||
<g id="group33-71" transform="translate(72.75,-109.92)">
|
||||
<title>Data block.33</title>
|
||||
<g id="shape34-72" transform="translate(108,0)">
|
||||
<title>Sheet.34</title>
|
||||
<path d="M0 412.82 L11.41 401.41 L11.41 286.21 L0 297.62 L0 412.82 Z" class="st1"/>
|
||||
</g>
|
||||
<g id="shape35-74" transform="translate(0,-115.2)">
|
||||
<title>Sheet.35</title>
|
||||
<path d="M0 412.82 L108 412.82 L119.41 401.41 L11.41 401.41 L0 412.82 Z" class="st1"/>
|
||||
</g>
|
||||
<g id="shape36-76">
|
||||
<title>Sheet.36</title>
|
||||
<rect x="0" y="297.62" width="108" height="115.2" class="st2"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="shape37-78" transform="translate(22.35,-225.12)">
|
||||
<title>Sheet.37</title>
|
||||
<path d="M0 412.82 L360 412.82" class="st11"/>
|
||||
</g>
|
||||
<g id="shape38-81" transform="translate(72.75,-109.92)">
|
||||
<title>Sheet.38</title>
|
||||
<desc>HBIOS (Hardware Drivers)</desc>
|
||||
<rect x="0" y="297.62" width="108" height="115.2" class="st8"/>
|
||||
<text x="38.76" y="351.62" class="st7">HBIOS <tspan x="7.61" dy="1.2em" class="st10">(Hardware Drivers)</tspan></text> </g>
|
||||
<g id="shape39-85" transform="translate(22.35,-109.92)">
|
||||
<title>Sheet.39</title>
|
||||
<path d="M0 412.82 L338.4 412.82" class="st11"/>
|
||||
</g>
|
||||
<g id="shape40-88" transform="translate(22.35,-361.92)">
|
||||
<title>Sheet.40</title>
|
||||
<path d="M0 412.82 L360 412.82" class="st11"/>
|
||||
</g>
|
||||
<g id="shape43-91" transform="translate(-397.67,302.9) rotate(-90)">
|
||||
<title>Sheet.43</title>
|
||||
<desc>Z80 CPU Address Space</desc>
|
||||
<rect x="0" y="398.42" width="252" height="14.4" class="st12"/>
|
||||
<text x="69.04" y="409.22" class="st7">Z80 CPU Address Space</text> </g>
|
||||
<g id="shape41-94" transform="translate(-383.27,302.9) rotate(-90)">
|
||||
<title>Sheet.41</title>
|
||||
<desc>Banked Lower 32K</desc>
|
||||
<rect x="0" y="398.42" width="115.2" height="14.4" class="st12"/>
|
||||
<text x="12.48" y="409.22" class="st7">Banked Lower 32K</text> </g>
|
||||
<g id="shape42-97" transform="translate(-383.27,187.7) rotate(-90)">
|
||||
<title>Sheet.42</title>
|
||||
<desc>Fixed Upper 32K</desc>
|
||||
<rect x="0" y="398.42" width="136.8" height="14.4" class="st12"/>
|
||||
<text x="28.39" y="409.22" class="st7">Fixed Upper 32K</text> </g>
|
||||
<g id="shape1-100" transform="translate(65.55,463.72) rotate(180)">
|
||||
<title>Sheet.1</title>
|
||||
<desc>$10000</desc>
|
||||
<path d="M0 412.82 L36 412.82" class="st3"/>
|
||||
<rect x="-31.6846" y="-418.22" width="27.3691" height="10.7998" transform="rotate(180)" class="st6"/>
|
||||
<text x="-31.68" y="-410.12" transform="rotate(180)" class="st5">$10000</text> </g>
|
||||
<g id="shape4-105" transform="translate(65.55,715.72) rotate(180)">
|
||||
<title>Sheet.4</title>
|
||||
<desc>$0000</desc>
|
||||
<path d="M0 412.82 L36 412.82" class="st3"/>
|
||||
<rect x="-29.4038" y="-418.22" width="22.8076" height="10.7998" transform="rotate(180)" class="st4"/>
|
||||
<text x="-29.4" y="-410.12" transform="rotate(180)" class="st5">$0000</text> </g>
|
||||
<g id="shape44-110" transform="translate(798.77,50.9) rotate(90)">
|
||||
<title>Bracket</title>
|
||||
<path d="M0 412.82 A6.11239 6.11239 0 0 1 5.4 407.42 L64.22 407.42 A6.11239 6.11239 -180 0 0 69.62 402.02 A6.11239 6.11239
|
||||
-180 0 0 75.02 407.42 L131.4 407.42 A6.11239 6.11239 0 0 1 136.8 412.82" class="st13"/>
|
||||
</g>
|
||||
<g id="shape45-113" transform="translate(0.750002,-52.32)">
|
||||
<title>Sheet.45</title>
|
||||
<desc>Bank 0</desc>
|
||||
<rect x="0" y="398.42" width="36" height="14.4" class="st12"/>
|
||||
<text x="5.69" y="408.32" class="st5">Bank 0</text> </g>
|
||||
<g id="shape47-116" transform="translate(252.75,-52.32)">
|
||||
<title>Sheet.47</title>
|
||||
<desc>App/OS Banks</desc>
|
||||
<rect x="0" y="398.42" width="108" height="14.4" class="st12"/>
|
||||
<text x="28.09" y="408.32" class="st5">App/OS Banks</text> </g>
|
||||
<g id="shape48-119" transform="translate(360.75,-52.32)">
|
||||
<title>Sheet.48</title>
|
||||
<desc>Bank N-1</desc>
|
||||
<rect x="0" y="398.42" width="36" height="14.4" class="st12"/>
|
||||
<text x="1.41" y="408.32" class="st5">Bank N-1</text> </g>
|
||||
<g id="shape49-122" transform="translate(396.75,-52.32)">
|
||||
<title>Sheet.49</title>
|
||||
<desc>Bank N</desc>
|
||||
<rect x="0" y="398.42" width="36" height="14.4" class="st12"/>
|
||||
<text x="5.06" y="408.32" class="st5">Bank N</text> </g>
|
||||
<g id="shape50-125" transform="translate(36.75,-52.32)">
|
||||
<title>Sheet.50</title>
|
||||
<desc>• • •</desc>
|
||||
<rect x="0" y="398.42" width="216" height="14.4" class="st12"/>
|
||||
<text x="91.49" y="408.62" class="st9">• • •</text> </g>
|
||||
<g id="shape51-128" transform="translate(375.15,715.72) rotate(180)">
|
||||
<title>Bracket.51</title>
|
||||
<path d="M0 412.82 A8.14985 8.14985 0 0 1 7.2 405.62 L36 405.62 A8.14985 8.14985 -180 0 0 43.2 398.42 A8.14985 8.14985
|
||||
-180 0 0 50.4 405.62 L151.2 405.62 A8.14985 8.14985 0 0 1 158.4 412.82" class="st13"/>
|
||||
</g>
|
||||
<g id="shape55-131" transform="translate(396.75,-66.72)">
|
||||
<title>Sheet.55</title>
|
||||
<path d="M0 187.31 L9 187.31 A9 9 0 0 1 18 196.31 L18 404.78" class="st14"/>
|
||||
</g>
|
||||
<g id="shape56-137" transform="translate(0.750002,-37.92)">
|
||||
<title>Sheet.56</title>
|
||||
<desc>Physical RAM (32K per bank)</desc>
|
||||
<rect x="0" y="398.42" width="432" height="14.4" class="st12"/>
|
||||
<text x="157.88" y="408.62" class="st9">Physical RAM (32K per bank)</text> </g>
|
||||
<g id="shape57-140" transform="translate(180.75,715.72) rotate(180)">
|
||||
<title>Bracket.57</title>
|
||||
<desc>`</desc>
|
||||
<path d="M0 412.82 A8.14984 8.14984 0 0 1 7.2 405.62 L46.8 405.62 A8.14984 8.14984 -180 0 0 54 398.42 A8.14984 8.14984
|
||||
-180 0 0 61.2 405.62 L100.8 405.62 A8.14984 8.14984 0 0 1 108 412.82" class="st13"/>
|
||||
<rect x="393.092" y="-58.7999" width="2.328" height="9.59985" transform="rotate(90)" class="st4"/>
|
||||
<text x="393.09" y="-51.6" transform="rotate(90)" class="st16">`</text> </g>
|
||||
<g id="shape58-145" transform="translate(449.57,360.5) rotate(90)">
|
||||
<title>Sheet.58</title>
|
||||
<path d="M0 412.82 L34.16 412.82" class="st17"/>
|
||||
</g>
|
||||
<g id="group60-148" transform="translate(36.75,-0.12)">
|
||||
<title>3D stack top</title>
|
||||
<desc>RAM Disk</desc>
|
||||
<g id="shape61-149" transform="translate(208.8,0)">
|
||||
<title>Sheet.61</title>
|
||||
<path d="M0 412.82 L7.09 405.73 L7.09 387.73 L0 394.82 L0 412.82 Z" class="st1"/>
|
||||
</g>
|
||||
<g id="shape62-151" transform="translate(0,-18)">
|
||||
<title>Sheet.62</title>
|
||||
<path d="M0 412.82 L208.8 412.82 L215.89 405.73 L7.09 405.73 L0 412.82 Z" class="st1"/>
|
||||
</g>
|
||||
<g id="shape63-153">
|
||||
<title>Sheet.63</title>
|
||||
<rect x="0" y="394.82" width="208.8" height="18" class="st2"/>
|
||||
</g>
|
||||
<g id="shape60-155">
|
||||
<text x="88.83" y="406.22" class="st16">RAM Disk</text> </g>
|
||||
</g>
|
||||
<g id="shape64-157" transform="translate(-59.27,84.02) rotate(-90)">
|
||||
<title>Pointer (1-D)</title>
|
||||
<path d="M1.71 412.82 L2.07 412.82 L16.08 412.82" class="st18"/>
|
||||
</g>
|
||||
<g id="shape65-166" transform="translate(-95.27,108.5) rotate(-90)">
|
||||
<title>Pointer (1-D).65</title>
|
||||
<path d="M1.71 412.82 L2.07 412.82 L18.96 412.82" class="st18"/>
|
||||
</g>
|
||||
<g id="shape66-173" transform="translate(-52.07,122.9) rotate(-90)">
|
||||
<title>Pointer (1-D).66</title>
|
||||
<path d="M1.71 412.82 L2.07 412.82 L11.76 412.82" class="st18"/>
|
||||
</g>
|
||||
<g id="shape67-180" transform="translate(-105.35,137.3) rotate(-90)">
|
||||
<title>Pointer (1-D).67</title>
|
||||
<path d="M1.71 412.82 L2.07 412.82 L26.16 412.82" class="st18"/>
|
||||
</g>
|
||||
<g id="shape70-187" transform="translate(228.935,-227.945) scale(-1,1)">
|
||||
<title>Sheet.70</title>
|
||||
<path d="M2.65 293.24 L3.01 293.24 L76.08 293.24 A22.5 22.5 0 0 1 98.58 315.74 L98.58 404.78" class="st20"/>
|
||||
</g>
|
||||
<g id="shape68-195" transform="translate(87.15,-289.92)">
|
||||
<title>Sheet.68</title>
|
||||
<desc>HBIOS Function Call w/ Bank Switch</desc>
|
||||
<rect x="0" y="384.02" width="86.4" height="28.8" class="st2"/>
|
||||
<text x="7.14" y="395.72" class="st5">HBIOS Function Call <tspan x="15.11" dy="1.2em" class="st10">w/ Bank Switch</tspan></text> </g>
|
||||
<g id="shape69-199" transform="translate(0.75,-390.72)">
|
||||
<title>Sheet.69</title>
|
||||
<desc>RomWBW Bank Switched Memory Layout</desc>
|
||||
<rect x="0" y="391.22" width="432" height="21.6" class="st21"/>
|
||||
<text x="113.82" y="405.62" class="st7">RomWBW Bank Switched Memory Layout</text> </g>
|
||||
<g id="shape59-202" transform="translate(665.566,362.226) rotate(90.2396)">
|
||||
<title>Sheet.59</title>
|
||||
<path d="M0 412.82 L27.11 412.82" class="st17"/>
|
||||
</g>
|
||||
<g id="shape52-205" transform="translate(16.33,324.5) rotate(-90)">
|
||||
<title>Sheet.52</title>
|
||||
<desc>Fixed Mapping of Upper 32K to Last Bank</desc>
|
||||
<rect x="0" y="398.42" width="172.8" height="14.4" class="st8"/>
|
||||
<text x="11.1" y="408.32" class="st5">Fixed Mapping of Upper 32K to Last Bank</text> </g>
|
||||
<g id="shape72-208" transform="translate(331.95,-66.72)">
|
||||
<title>Sheet.72</title>
|
||||
<path d="M0 384.02 L0 387.62 A3.59999 3.59999 -180 0 0 3.6 391.22 L45.4 391.22 A5 5 0 0 1 50.4 396.22 L50.4 404.78"
|
||||
class="st14"/>
|
||||
</g>
|
||||
<g id="shape74-213" transform="translate(126.75,-66.72) scale(-1,1)">
|
||||
<title>Sheet.74</title>
|
||||
<path d="M0 384.02 L0 387.62 A3.59999 3.59999 -180 0 0 3.6 391.22 L103 391.22 A5 5 0 0 1 108 396.22 L108 404.78"
|
||||
class="st14"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 58 KiB After Width: | Height: | Size: 51 KiB |
830
Source/Doc/Graphics/CharacterEmulationVideoServices.svg
Normal file
@@ -0,0 +1,830 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by Microsoft Visio, SVG Export CharacterEmulationVideoServices.svg Page-1 -->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events"
|
||||
width="6.01042in" height="5.76042in" viewBox="0 0 432.75 414.75" xml:space="preserve" color-interpolation-filters="sRGB"
|
||||
class="st16">
|
||||
<style type="text/css">
|
||||
<![CDATA[
|
||||
.st1 {fill:#ffffff;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st2 {fill:#000000;font-family:Calibri;font-size:0.833336em;font-weight:bold}
|
||||
.st3 {font-size:1em}
|
||||
.st4 {marker-end:url(#mrkr13-15);stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st5 {fill:#000000;fill-opacity:1;stroke:#000000;stroke-opacity:1;stroke-width:0.22935779816514}
|
||||
.st6 {fill:#a5a5a5;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st7 {fill:#000000;font-family:Calibri;font-size:0.666664em;font-weight:bold}
|
||||
.st8 {fill:#ffffff;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.24}
|
||||
.st9 {fill:#00ff00;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st10 {fill:#e6e6e6;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st11 {fill:#b3b3b3;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st12 {fill:none;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st13 {fill:#ffffff;stroke:#000000;stroke-dasharray:0.75,1.5;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st14 {fill:#000000;font-family:Calibri;font-size:0.499992em;font-weight:bold}
|
||||
.st15 {fill:#000000;font-family:Calibri;font-size:1.16666em;font-weight:bold}
|
||||
.st16 {fill:none;fill-rule:evenodd;font-size:12px;overflow:visible;stroke-linecap:square;stroke-miterlimit:3}
|
||||
]]>
|
||||
</style>
|
||||
|
||||
<defs id="Markers">
|
||||
<g id="lend13">
|
||||
<path d="M 3 1 L 0 0 L 3 -1 L 3 1 " style="stroke:none"/>
|
||||
</g>
|
||||
<marker id="mrkr13-15" class="st5" refX="-13.08" orient="auto" markerUnits="strokeWidth" overflow="visible">
|
||||
<use xlink:href="#lend13" transform="scale(-4.36,-4.36) "/>
|
||||
</marker>
|
||||
</defs>
|
||||
<g>
|
||||
<title>Page-1</title>
|
||||
<g id="shape81-1" transform="translate(17.625,414.375) rotate(-90)">
|
||||
<title>Sheet.81</title>
|
||||
<rect x="0" y="279.75" width="360" height="135" class="st1"/>
|
||||
</g>
|
||||
<g id="shape80-3" transform="translate(-135.375,414.375) rotate(-90)">
|
||||
<title>Sheet.80</title>
|
||||
<rect x="0" y="189.75" width="360" height="225" class="st1"/>
|
||||
</g>
|
||||
<g id="shape1-5" transform="translate(108.539,-315.375)">
|
||||
<title>Sheet.1</title>
|
||||
<desc>Character I/O Services</desc>
|
||||
<rect x="0" y="378.75" width="53.8364" height="36" class="st1"/>
|
||||
<text x="6.75" y="387.75" class="st2">Character <tspan x="20.06" dy="1.2em" class="st3">I/O </tspan><tspan x="10.06"
|
||||
dy="1.2em" class="st3">Services</tspan></text> </g>
|
||||
<g id="shape2-10" transform="translate(36.375,-333.375)">
|
||||
<title>Sheet.2</title>
|
||||
<path d="M0 414.75 L62.35 414.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape8-16" transform="translate(550.125,153.375) rotate(90)">
|
||||
<title>Sheet.8</title>
|
||||
<path d="M0 414.75 L17.19 414.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape9-21" transform="translate(108.375,-189.375)">
|
||||
<title>Sheet.9</title>
|
||||
<desc>Emulation Services</desc>
|
||||
<rect x="0" y="369.75" width="54" height="45" class="st1"/>
|
||||
<text x="5.78" y="389.25" class="st2">Emulation <tspan x="10.14" dy="1.2em" class="st3">Services</tspan></text> </g>
|
||||
<g id="shape10-25" transform="translate(108.375,-171.375)">
|
||||
<title>Sheet.10</title>
|
||||
<desc>TTY</desc>
|
||||
<rect x="0" y="396.75" width="54" height="18" class="st1"/>
|
||||
<text x="19.45" y="408.75" class="st2">TTY</text> </g>
|
||||
<g id="shape11-28" transform="translate(108.375,-153.375)">
|
||||
<title>Sheet.11</title>
|
||||
<desc>ANSI</desc>
|
||||
<rect x="0" y="396.75" width="54" height="18" class="st1"/>
|
||||
<text x="16.98" y="408.75" class="st2">ANSI</text> </g>
|
||||
<g id="shape12-31" transform="translate(162.211,-180.375)">
|
||||
<title>Sheet.12</title>
|
||||
<path d="M0 414.75 L17.35 414.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape13-36" transform="translate(162.211,-162.375)">
|
||||
<title>Sheet.13</title>
|
||||
<path d="M0 414.75 L17.35 414.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape14-41" transform="translate(189.375,-99.375)">
|
||||
<title>Sheet.14</title>
|
||||
<desc>Video Display Adapter Services</desc>
|
||||
<rect x="0" y="324.75" width="54" height="90" class="st1"/>
|
||||
<text x="14.93" y="354.75" class="st2">Video <tspan x="11.88" dy="1.2em" class="st3">Display </tspan><tspan x="10.11"
|
||||
dy="1.2em" class="st3">Adapter </tspan><tspan x="10.14" dy="1.2em" class="st3">Services</tspan></text> </g>
|
||||
<g id="shape18-47" transform="translate(243.375,-36.375)">
|
||||
<title>Sheet.18</title>
|
||||
<path d="M0 414.75 L62.19 414.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape27-52" transform="translate(315.375,-315.375)">
|
||||
<title>Sheet.27</title>
|
||||
<desc>UART</desc>
|
||||
<rect x="0" y="396.75" width="44.9182" height="18" class="st6"/>
|
||||
<text x="13.19" y="408.15" class="st7">UART</text> </g>
|
||||
<g id="shape34-55" transform="translate(314.311,-261.375)">
|
||||
<title>Sheet.34</title>
|
||||
<desc>ASCI</desc>
|
||||
<rect x="0" y="396.75" width="44.9182" height="18" class="st6"/>
|
||||
<text x="14.96" y="408.15" class="st7">ASCI</text> </g>
|
||||
<g id="group20-58" transform="translate(396.375,-94.875)">
|
||||
<title>Terminal.20</title>
|
||||
<g id="shape36-59" transform="translate(-391.186,414.75) rotate(-90)">
|
||||
<title>Sheet.36</title>
|
||||
<path d="M0 414.75 L27 414.75 L27 409.08 L0 409.08 L0 414.75 ZM26.25 403.93 L23.44 399.37 L3.53 399.37 L0.75 403.93
|
||||
L26.25 403.93 ZM23.44 399.37 L23.44 391.19 L3.53 391.19 L3.53 399.37 L23.44 399.37 ZM26.25 407.7 L26.25
|
||||
403.93 L0.75 403.93 L0.75 407.7 L26.25 407.7 ZM24.83 407.7 A1223.48 394.162 90 0 1 2.17 407.7 L24.83
|
||||
407.7 Z" class="st8"/>
|
||||
</g>
|
||||
<g id="shape37-61" transform="translate(-395.768,392.25) rotate(-90)">
|
||||
<title>Sheet.37</title>
|
||||
<rect x="0" y="414.641" width="0.75" height="0.109091" class="st9"/>
|
||||
</g>
|
||||
<g id="shape38-63" transform="translate(-391.623,414.188) rotate(-90)">
|
||||
<title>Sheet.38</title>
|
||||
<path d="M1.69 410.93 L2.63 410.93 L2.63 410.39 L1.69 410.39 L1.69 410.93 ZM2.81 410.93 L3.75 410.93 L3.75 410.39
|
||||
L2.81 410.39 L2.81 410.93 ZM3.94 410.93 L4.87 410.93 L4.87 410.39 L3.94 410.39 L3.94 410.93 ZM5.06 410.93
|
||||
L6 410.93 L6 410.39 L5.06 410.39 L5.06 410.93 ZM12.28 410.93 L13.22 410.93 L13.22 410.39 L12.28 410.39
|
||||
L12.28 410.93 ZM13.41 410.93 L14.34 410.93 L14.34 410.39 L13.41 410.39 L13.41 410.93 ZM14.53 410.93
|
||||
L15.47 410.93 L15.47 410.39 L14.53 410.39 L14.53 410.93 ZM15.66 410.93 L16.59 410.93 L16.59 410.39 L15.66
|
||||
410.39 L15.66 410.93 ZM0 412.02 L1.5 412.02 L1.5 411.48 L0 411.48 L0 412.02 ZM1.69 412.02 L2.63 412.02
|
||||
L2.63 411.48 L1.69 411.48 L1.69 412.02 ZM2.81 412.02 L3.75 412.02 L3.75 411.48 L2.81 411.48 L2.81 412.02
|
||||
ZM3.94 412.02 L4.87 412.02 L4.87 411.48 L3.94 411.48 L3.94 412.02 ZM5.06 412.02 L6 412.02 L6 411.48
|
||||
L5.06 411.48 L5.06 412.02 ZM6.19 412.02 L7.12 412.02 L7.12 411.48 L6.19 411.48 L6.19 412.02 ZM7.31 412.02
|
||||
L8.25 412.02 L8.25 411.48 L7.31 411.48 L7.31 412.02 ZM8.44 412.02 L9.37 412.02 L9.37 411.48 L8.44 411.48
|
||||
L8.44 412.02 ZM9.56 412.02 L10.5 412.02 L10.5 411.48 L9.56 411.48 L9.56 412.02 ZM10.69 412.02 L11.62
|
||||
412.02 L11.62 411.48 L10.69 411.48 L10.69 412.02 ZM11.81 412.02 L12.75 412.02 L12.75 411.48 L11.81 411.48
|
||||
L11.81 412.02 ZM12.94 412.02 L13.87 412.02 L13.87 411.48 L12.94 411.48 L12.94 412.02 ZM14.06 412.02
|
||||
L15 412.02 L15 411.48 L14.06 411.48 L14.06 412.02 ZM1.69 412.7 L2.63 412.7 L2.63 412.16 L1.69 412.16
|
||||
L1.69 412.7 ZM2.81 412.7 L3.75 412.7 L3.75 412.16 L2.81 412.16 L2.81 412.7 ZM3.94 412.7 L4.87 412.7
|
||||
L4.87 412.16 L3.94 412.16 L3.94 412.7 ZM5.06 412.7 L6 412.7 L6 412.16 L5.06 412.16 L5.06 412.7 ZM6.19
|
||||
412.7 L7.12 412.7 L7.12 412.16 L6.19 412.16 L6.19 412.7 ZM7.31 412.7 L8.25 412.7 L8.25 412.16 L7.31
|
||||
412.16 L7.31 412.7 ZM8.44 412.7 L9.37 412.7 L9.37 412.16 L8.44 412.16 L8.44 412.7 ZM9.56 412.7 L10.5
|
||||
412.7 L10.5 412.16 L9.56 412.16 L9.56 412.7 ZM10.69 412.7 L11.62 412.7 L11.62 412.16 L10.69 412.16 L10.69
|
||||
412.7 ZM11.81 412.7 L12.75 412.7 L12.75 412.16 L11.81 412.16 L11.81 412.7 ZM12.94 412.7 L13.87 412.7
|
||||
L13.87 412.16 L12.94 412.16 L12.94 412.7 ZM14.06 412.7 L15 412.7 L15 412.16 L14.06 412.16 L14.06 412.7
|
||||
ZM1.69 413.39 L2.63 413.39 L2.63 412.84 L1.69 412.84 L1.69 413.39 ZM2.81 413.39 L3.75 413.39 L3.75 412.84
|
||||
L2.81 412.84 L2.81 413.39 ZM3.94 413.39 L4.87 413.39 L4.87 412.84 L3.94 412.84 L3.94 413.39 ZM5.06 413.39
|
||||
L6 413.39 L6 412.84 L5.06 412.84 L5.06 413.39 ZM6.19 413.39 L7.12 413.39 L7.12 412.84 L6.19 412.84 L6.19
|
||||
413.39 ZM7.31 413.39 L8.25 413.39 L8.25 412.84 L7.31 412.84 L7.31 413.39 ZM8.44 413.39 L9.37 413.39
|
||||
L9.37 412.84 L8.44 412.84 L8.44 413.39 ZM9.56 413.39 L10.5 413.39 L10.5 412.84 L9.56 412.84 L9.56 413.39
|
||||
ZM10.69 413.39 L11.62 413.39 L11.62 412.84 L10.69 412.84 L10.69 413.39 ZM11.81 413.39 L12.75 413.39
|
||||
L12.75 412.84 L11.81 412.84 L11.81 413.39 ZM12.94 413.39 L13.87 413.39 L13.87 412.84 L12.94 412.84 L12.94
|
||||
413.39 ZM14.06 413.39 L15 413.39 L15 412.84 L14.06 412.84 L14.06 413.39 ZM1.69 414.07 L2.63 414.07 L2.63
|
||||
413.52 L1.69 413.52 L1.69 414.07 ZM2.81 414.07 L3.75 414.07 L3.75 413.52 L2.81 413.52 L2.81 414.07 ZM3.94
|
||||
414.07 L4.87 414.07 L4.87 413.52 L3.94 413.52 L3.94 414.07 ZM5.06 414.07 L6 414.07 L6 413.52 L5.06 413.52
|
||||
L5.06 414.07 ZM6.19 414.07 L7.12 414.07 L7.12 413.52 L6.19 413.52 L6.19 414.07 ZM7.31 414.07 L8.25 414.07
|
||||
L8.25 413.52 L7.31 413.52 L7.31 414.07 ZM8.44 414.07 L9.37 414.07 L9.37 413.52 L8.44 413.52 L8.44 414.07
|
||||
ZM9.56 414.07 L10.5 414.07 L10.5 413.52 L9.56 413.52 L9.56 414.07 ZM10.69 414.07 L11.62 414.07 L11.62
|
||||
413.52 L10.69 413.52 L10.69 414.07 ZM11.81 414.07 L12.75 414.07 L12.75 413.52 L11.81 413.52 L11.81 414.07
|
||||
ZM12.94 414.07 L13.87 414.07 L13.87 413.52 L12.94 413.52 L12.94 414.07 ZM3.94 414.75 L11.62 414.75 L11.62
|
||||
414.2 L3.94 414.2 L3.94 414.75 ZM21 414.75 L23.25 414.75 L23.25 414.2 L21 414.2 L21 414.75 ZM23.44 414.75
|
||||
L24.37 414.75 L24.37 414.2 L23.44 414.2 L23.44 414.75 ZM23.44 414.07 L24.37 414.07 L24.37 413.52 L23.44
|
||||
413.52 L23.44 414.07 ZM22.22 414.07 L23.16 414.07 L23.16 413.52 L22.22 413.52 L22.22 414.07 ZM21 414.07
|
||||
L21.94 414.07 L21.94 413.52 L21 413.52 L21 414.07 ZM21 413.39 L21.94 413.39 L21.94 412.84 L21 412.84
|
||||
L21 413.39 ZM21 412.7 L21.94 412.7 L21.94 412.16 L21 412.16 L21 412.7 ZM22.22 412.7 L23.16 412.7 L23.16
|
||||
412.16 L22.22 412.16 L22.22 412.7 ZM23.44 412.7 L24.37 412.7 L24.37 412.16 L23.44 412.16 L23.44 412.7
|
||||
ZM23.44 413.39 L24.37 413.39 L24.37 412.84 L23.44 412.84 L23.44 413.39 ZM22.22 413.39 L23.16 413.39
|
||||
L23.16 412.84 L22.22 412.84 L22.22 413.39 Z" class="st10"/>
|
||||
</g>
|
||||
<g id="shape39-65" transform="translate(-391.623,414.188) rotate(-90)">
|
||||
<title>Sheet.39</title>
|
||||
<path d="M0 410.93 L0.94 410.93 L0.94 410.39 L0 410.39 L0 410.93 ZM0 412.7 L1.5 412.7 L1.5 412.16 L0 412.16 L0 412.7
|
||||
ZM0 413.39 L1.5 413.39 L1.5 412.84 L0 412.84 L0 413.39 ZM0 414.07 L1.5 414.07 L1.5 413.52 L0 413.52
|
||||
L0 414.07 ZM0 414.75 L1.5 414.75 L1.5 414.2 L0 414.2 L0 414.75 ZM1.69 414.75 L2.63 414.75 L2.63 414.2
|
||||
L1.69 414.2 L1.69 414.75 ZM2.81 414.75 L3.75 414.75 L3.75 414.2 L2.81 414.2 L2.81 414.75 ZM11.81 414.75
|
||||
L12.75 414.75 L12.75 414.2 L11.81 414.2 L11.81 414.75 ZM12.94 414.75 L13.87 414.75 L13.87 414.2 L12.94
|
||||
414.2 L12.94 414.75 ZM14.06 414.75 L15 414.75 L15 414.2 L14.06 414.2 L14.06 414.75 ZM15.19 414.75 L16.69
|
||||
414.75 L16.69 414.2 L15.19 414.2 L15.19 414.75 ZM17.25 414.75 L18.19 414.75 L18.19 414.2 L17.25 414.2
|
||||
L17.25 414.75 ZM18.37 414.75 L19.31 414.75 L19.31 414.2 L18.37 414.2 L18.37 414.75 ZM19.5 414.75 L20.44
|
||||
414.75 L20.44 414.2 L19.5 414.2 L19.5 414.75 ZM24.66 414.75 L25.59 414.75 L25.59 413.55 L24.66 413.55
|
||||
L24.66 414.75 ZM24.66 413.44 L25.59 413.44 L25.59 412.16 L24.66 412.16 L24.66 413.44 ZM24.66 412.02
|
||||
L25.59 412.02 L25.59 411.48 L24.66 411.48 L24.66 412.02 ZM23.44 412.02 L24.37 412.02 L24.37 411.48 L23.44
|
||||
411.48 L23.44 412.02 ZM22.22 412.02 L23.16 412.02 L23.16 411.48 L22.22 411.48 L22.22 412.02 ZM21 412.02
|
||||
L21.94 412.02 L21.94 411.48 L21 411.48 L21 412.02 ZM19.5 412.02 L20.44 412.02 L20.44 411.48 L19.5 411.48
|
||||
L19.5 412.02 ZM19.5 412.7 L20.44 412.7 L20.44 412.16 L19.5 412.16 L19.5 412.7 ZM18.37 414.07 L19.31
|
||||
414.07 L19.31 413.52 L18.37 413.52 L18.37 414.07 ZM14.06 414.06 L16.69 414.06 L16.69 413.51 L14.06 413.51
|
||||
L14.06 414.06 ZM15.19 413.37 L16.69 413.37 L16.69 412.17 L15.19 412.17 L15.19 413.37 ZM17.25 412.7 L18.19
|
||||
412.7 L18.19 412.16 L17.25 412.16 L17.25 412.7 ZM18.37 412.7 L19.31 412.7 L19.31 412.16 L18.37 412.16
|
||||
L18.37 412.7 ZM18.37 412.02 L19.31 412.02 L19.31 411.48 L18.37 411.48 L18.37 412.02 ZM15.19 412.02 L16.69
|
||||
412.02 L16.69 411.48 L15.19 411.48 L15.19 412.02 ZM24.19 410.6 L24.94 410.6 L24.94 410.5 L24.19 410.5
|
||||
L24.19 410.6 ZM23.06 410.6 L23.81 410.6 L23.81 410.5 L23.06 410.5 L23.06 410.6 ZM19.5 410.93 L20.44
|
||||
410.93 L20.44 410.39 L19.5 410.39 L19.5 410.93 ZM18.37 410.93 L19.31 410.93 L19.31 410.39 L18.37 410.39
|
||||
L18.37 410.93 ZM17.25 410.93 L18.19 410.93 L18.19 410.39 L17.25 410.39 L17.25 410.93 ZM10.31 410.93
|
||||
L11.25 410.93 L11.25 410.39 L10.31 410.39 L10.31 410.93 ZM9.19 410.93 L10.12 410.93 L10.12 410.39 L9.19
|
||||
410.39 L9.19 410.93 ZM8.06 410.93 L9 410.93 L9 410.39 L8.06 410.39 L8.06 410.93 ZM6.94 410.93 L7.87
|
||||
410.93 L7.87 410.39 L6.94 410.39 L6.94 410.93 ZM17.25 412.02 L18.19 412.02 L18.19 411.48 L17.25 411.48
|
||||
L17.25 412.02 Z" class="st11"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="shape40-67" transform="translate(315.375,-99.375)">
|
||||
<title>Sheet.40</title>
|
||||
<desc>CVDU</desc>
|
||||
<rect x="0" y="396.75" width="44.9182" height="18" class="st6"/>
|
||||
<text x="12.84" y="408.15" class="st7">CVDU</text> </g>
|
||||
<g id="shape41-70" transform="translate(360.293,-108.375)">
|
||||
<title>Sheet.41</title>
|
||||
<path d="M0 414.75 L26.27 414.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape47-75" transform="translate(315.375,-63.375)">
|
||||
<title>Sheet.47</title>
|
||||
<desc>UPD7220</desc>
|
||||
<rect x="0" y="396.75" width="44.9182" height="18" class="st6"/>
|
||||
<text x="7.09" y="408.15" class="st7">UPD7220</text> </g>
|
||||
<g id="shape54-78" transform="translate(315.375,-27.375)">
|
||||
<title>Sheet.54</title>
|
||||
<desc>N8</desc>
|
||||
<rect x="0" y="396.75" width="44.9182" height="18" class="st6"/>
|
||||
<text x="17.8" y="408.15" class="st7">N8</text> </g>
|
||||
<g id="shape56-81" transform="translate(54.375,-333.375)">
|
||||
<title>Sheet.56</title>
|
||||
<desc>CIOXXX</desc>
|
||||
<rect x="0" y="401.25" width="45" height="13.5" class="st12"/>
|
||||
<text x="10" y="410.4" class="st7">CIOXXX</text> </g>
|
||||
<g id="shape57-84" transform="translate(54.375,-117.375)">
|
||||
<title>Sheet.57</title>
|
||||
<desc>VDAXXX</desc>
|
||||
<rect x="0" y="401.25" width="45" height="13.5" class="st12"/>
|
||||
<text x="8.58" y="410.4" class="st7">VDAXXX</text> </g>
|
||||
<g id="shape58-87" transform="translate(-378.375,414.375) rotate(-90)">
|
||||
<title>Sheet.58</title>
|
||||
<desc>Operating System / Utilities</desc>
|
||||
<rect x="0" y="378.75" width="360" height="36" class="st1"/>
|
||||
<text x="122.42" y="399.75" class="st2">Operating System / Utilities</text> </g>
|
||||
<g id="shape59-90" transform="translate(108.375,-135.375)">
|
||||
<title>Sheet.59</title>
|
||||
<desc>Others...</desc>
|
||||
<path d="M0 414.75 L54 414.75 L54 396.75 L0 396.75 L0 414.75 Z" class="st13"/>
|
||||
<text x="8.91" y="408.75" class="st2">Others...</text> </g>
|
||||
<g id="shape60-93" transform="translate(162.211,-144.375)">
|
||||
<title>Sheet.60</title>
|
||||
<path d="M0 414.75 L17.35 414.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape61-98" transform="translate(36.375,-211.875)">
|
||||
<title>Sheet.61</title>
|
||||
<path d="M0 414.75 L62.19 414.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape62-103" transform="translate(54.375,-211.875)">
|
||||
<title>Sheet.62</title>
|
||||
<desc>EMUXXX</desc>
|
||||
<rect x="0" y="401.25" width="45" height="13.5" class="st12"/>
|
||||
<text x="7.83" y="410.4" class="st7">EMUXXX</text> </g>
|
||||
<g id="shape15-106" transform="translate(36.375,-117.375)">
|
||||
<title>Sheet.15</title>
|
||||
<path d="M0 414.75 L143.19 414.75" class="st4"/>
|
||||
</g>
|
||||
<g id="group16-111" transform="translate(396.375,-58.875)">
|
||||
<title>Terminal.16</title>
|
||||
<g id="shape42-112" transform="translate(-391.186,414.75) rotate(-90)">
|
||||
<title>Sheet.42</title>
|
||||
<path d="M0 414.75 L27 414.75 L27 409.08 L0 409.08 L0 414.75 ZM26.25 403.93 L23.44 399.37 L3.53 399.37 L0.75 403.93
|
||||
L26.25 403.93 ZM23.44 399.37 L23.44 391.19 L3.53 391.19 L3.53 399.37 L23.44 399.37 ZM26.25 407.7 L26.25
|
||||
403.93 L0.75 403.93 L0.75 407.7 L26.25 407.7 ZM24.83 407.7 A1223.48 394.162 90 0 1 2.17 407.7 L24.83
|
||||
407.7 Z" class="st8"/>
|
||||
</g>
|
||||
<g id="shape43-114" transform="translate(-395.768,392.25) rotate(-90)">
|
||||
<title>Sheet.43</title>
|
||||
<rect x="0" y="414.641" width="0.75" height="0.109091" class="st9"/>
|
||||
</g>
|
||||
<g id="shape44-116" transform="translate(-391.623,414.188) rotate(-90)">
|
||||
<title>Sheet.44</title>
|
||||
<path d="M1.69 410.93 L2.63 410.93 L2.63 410.39 L1.69 410.39 L1.69 410.93 ZM2.81 410.93 L3.75 410.93 L3.75 410.39
|
||||
L2.81 410.39 L2.81 410.93 ZM3.94 410.93 L4.87 410.93 L4.87 410.39 L3.94 410.39 L3.94 410.93 ZM5.06 410.93
|
||||
L6 410.93 L6 410.39 L5.06 410.39 L5.06 410.93 ZM12.28 410.93 L13.22 410.93 L13.22 410.39 L12.28 410.39
|
||||
L12.28 410.93 ZM13.41 410.93 L14.34 410.93 L14.34 410.39 L13.41 410.39 L13.41 410.93 ZM14.53 410.93
|
||||
L15.47 410.93 L15.47 410.39 L14.53 410.39 L14.53 410.93 ZM15.66 410.93 L16.59 410.93 L16.59 410.39 L15.66
|
||||
410.39 L15.66 410.93 ZM0 412.02 L1.5 412.02 L1.5 411.48 L0 411.48 L0 412.02 ZM1.69 412.02 L2.63 412.02
|
||||
L2.63 411.48 L1.69 411.48 L1.69 412.02 ZM2.81 412.02 L3.75 412.02 L3.75 411.48 L2.81 411.48 L2.81 412.02
|
||||
ZM3.94 412.02 L4.87 412.02 L4.87 411.48 L3.94 411.48 L3.94 412.02 ZM5.06 412.02 L6 412.02 L6 411.48
|
||||
L5.06 411.48 L5.06 412.02 ZM6.19 412.02 L7.12 412.02 L7.12 411.48 L6.19 411.48 L6.19 412.02 ZM7.31 412.02
|
||||
L8.25 412.02 L8.25 411.48 L7.31 411.48 L7.31 412.02 ZM8.44 412.02 L9.37 412.02 L9.37 411.48 L8.44 411.48
|
||||
L8.44 412.02 ZM9.56 412.02 L10.5 412.02 L10.5 411.48 L9.56 411.48 L9.56 412.02 ZM10.69 412.02 L11.62
|
||||
412.02 L11.62 411.48 L10.69 411.48 L10.69 412.02 ZM11.81 412.02 L12.75 412.02 L12.75 411.48 L11.81 411.48
|
||||
L11.81 412.02 ZM12.94 412.02 L13.87 412.02 L13.87 411.48 L12.94 411.48 L12.94 412.02 ZM14.06 412.02
|
||||
L15 412.02 L15 411.48 L14.06 411.48 L14.06 412.02 ZM1.69 412.7 L2.63 412.7 L2.63 412.16 L1.69 412.16
|
||||
L1.69 412.7 ZM2.81 412.7 L3.75 412.7 L3.75 412.16 L2.81 412.16 L2.81 412.7 ZM3.94 412.7 L4.87 412.7
|
||||
L4.87 412.16 L3.94 412.16 L3.94 412.7 ZM5.06 412.7 L6 412.7 L6 412.16 L5.06 412.16 L5.06 412.7 ZM6.19
|
||||
412.7 L7.12 412.7 L7.12 412.16 L6.19 412.16 L6.19 412.7 ZM7.31 412.7 L8.25 412.7 L8.25 412.16 L7.31
|
||||
412.16 L7.31 412.7 ZM8.44 412.7 L9.37 412.7 L9.37 412.16 L8.44 412.16 L8.44 412.7 ZM9.56 412.7 L10.5
|
||||
412.7 L10.5 412.16 L9.56 412.16 L9.56 412.7 ZM10.69 412.7 L11.62 412.7 L11.62 412.16 L10.69 412.16 L10.69
|
||||
412.7 ZM11.81 412.7 L12.75 412.7 L12.75 412.16 L11.81 412.16 L11.81 412.7 ZM12.94 412.7 L13.87 412.7
|
||||
L13.87 412.16 L12.94 412.16 L12.94 412.7 ZM14.06 412.7 L15 412.7 L15 412.16 L14.06 412.16 L14.06 412.7
|
||||
ZM1.69 413.39 L2.63 413.39 L2.63 412.84 L1.69 412.84 L1.69 413.39 ZM2.81 413.39 L3.75 413.39 L3.75 412.84
|
||||
L2.81 412.84 L2.81 413.39 ZM3.94 413.39 L4.87 413.39 L4.87 412.84 L3.94 412.84 L3.94 413.39 ZM5.06 413.39
|
||||
L6 413.39 L6 412.84 L5.06 412.84 L5.06 413.39 ZM6.19 413.39 L7.12 413.39 L7.12 412.84 L6.19 412.84 L6.19
|
||||
413.39 ZM7.31 413.39 L8.25 413.39 L8.25 412.84 L7.31 412.84 L7.31 413.39 ZM8.44 413.39 L9.37 413.39
|
||||
L9.37 412.84 L8.44 412.84 L8.44 413.39 ZM9.56 413.39 L10.5 413.39 L10.5 412.84 L9.56 412.84 L9.56 413.39
|
||||
ZM10.69 413.39 L11.62 413.39 L11.62 412.84 L10.69 412.84 L10.69 413.39 ZM11.81 413.39 L12.75 413.39
|
||||
L12.75 412.84 L11.81 412.84 L11.81 413.39 ZM12.94 413.39 L13.87 413.39 L13.87 412.84 L12.94 412.84 L12.94
|
||||
413.39 ZM14.06 413.39 L15 413.39 L15 412.84 L14.06 412.84 L14.06 413.39 ZM1.69 414.07 L2.63 414.07 L2.63
|
||||
413.52 L1.69 413.52 L1.69 414.07 ZM2.81 414.07 L3.75 414.07 L3.75 413.52 L2.81 413.52 L2.81 414.07 ZM3.94
|
||||
414.07 L4.87 414.07 L4.87 413.52 L3.94 413.52 L3.94 414.07 ZM5.06 414.07 L6 414.07 L6 413.52 L5.06 413.52
|
||||
L5.06 414.07 ZM6.19 414.07 L7.12 414.07 L7.12 413.52 L6.19 413.52 L6.19 414.07 ZM7.31 414.07 L8.25 414.07
|
||||
L8.25 413.52 L7.31 413.52 L7.31 414.07 ZM8.44 414.07 L9.37 414.07 L9.37 413.52 L8.44 413.52 L8.44 414.07
|
||||
ZM9.56 414.07 L10.5 414.07 L10.5 413.52 L9.56 413.52 L9.56 414.07 ZM10.69 414.07 L11.62 414.07 L11.62
|
||||
413.52 L10.69 413.52 L10.69 414.07 ZM11.81 414.07 L12.75 414.07 L12.75 413.52 L11.81 413.52 L11.81 414.07
|
||||
ZM12.94 414.07 L13.87 414.07 L13.87 413.52 L12.94 413.52 L12.94 414.07 ZM3.94 414.75 L11.62 414.75 L11.62
|
||||
414.2 L3.94 414.2 L3.94 414.75 ZM21 414.75 L23.25 414.75 L23.25 414.2 L21 414.2 L21 414.75 ZM23.44 414.75
|
||||
L24.37 414.75 L24.37 414.2 L23.44 414.2 L23.44 414.75 ZM23.44 414.07 L24.37 414.07 L24.37 413.52 L23.44
|
||||
413.52 L23.44 414.07 ZM22.22 414.07 L23.16 414.07 L23.16 413.52 L22.22 413.52 L22.22 414.07 ZM21 414.07
|
||||
L21.94 414.07 L21.94 413.52 L21 413.52 L21 414.07 ZM21 413.39 L21.94 413.39 L21.94 412.84 L21 412.84
|
||||
L21 413.39 ZM21 412.7 L21.94 412.7 L21.94 412.16 L21 412.16 L21 412.7 ZM22.22 412.7 L23.16 412.7 L23.16
|
||||
412.16 L22.22 412.16 L22.22 412.7 ZM23.44 412.7 L24.37 412.7 L24.37 412.16 L23.44 412.16 L23.44 412.7
|
||||
ZM23.44 413.39 L24.37 413.39 L24.37 412.84 L23.44 412.84 L23.44 413.39 ZM22.22 413.39 L23.16 413.39
|
||||
L23.16 412.84 L22.22 412.84 L22.22 413.39 Z" class="st10"/>
|
||||
</g>
|
||||
<g id="shape45-118" transform="translate(-391.623,414.188) rotate(-90)">
|
||||
<title>Sheet.45</title>
|
||||
<path d="M0 410.93 L0.94 410.93 L0.94 410.39 L0 410.39 L0 410.93 ZM0 412.7 L1.5 412.7 L1.5 412.16 L0 412.16 L0 412.7
|
||||
ZM0 413.39 L1.5 413.39 L1.5 412.84 L0 412.84 L0 413.39 ZM0 414.07 L1.5 414.07 L1.5 413.52 L0 413.52
|
||||
L0 414.07 ZM0 414.75 L1.5 414.75 L1.5 414.2 L0 414.2 L0 414.75 ZM1.69 414.75 L2.63 414.75 L2.63 414.2
|
||||
L1.69 414.2 L1.69 414.75 ZM2.81 414.75 L3.75 414.75 L3.75 414.2 L2.81 414.2 L2.81 414.75 ZM11.81 414.75
|
||||
L12.75 414.75 L12.75 414.2 L11.81 414.2 L11.81 414.75 ZM12.94 414.75 L13.87 414.75 L13.87 414.2 L12.94
|
||||
414.2 L12.94 414.75 ZM14.06 414.75 L15 414.75 L15 414.2 L14.06 414.2 L14.06 414.75 ZM15.19 414.75 L16.69
|
||||
414.75 L16.69 414.2 L15.19 414.2 L15.19 414.75 ZM17.25 414.75 L18.19 414.75 L18.19 414.2 L17.25 414.2
|
||||
L17.25 414.75 ZM18.37 414.75 L19.31 414.75 L19.31 414.2 L18.37 414.2 L18.37 414.75 ZM19.5 414.75 L20.44
|
||||
414.75 L20.44 414.2 L19.5 414.2 L19.5 414.75 ZM24.66 414.75 L25.59 414.75 L25.59 413.55 L24.66 413.55
|
||||
L24.66 414.75 ZM24.66 413.44 L25.59 413.44 L25.59 412.16 L24.66 412.16 L24.66 413.44 ZM24.66 412.02
|
||||
L25.59 412.02 L25.59 411.48 L24.66 411.48 L24.66 412.02 ZM23.44 412.02 L24.37 412.02 L24.37 411.48 L23.44
|
||||
411.48 L23.44 412.02 ZM22.22 412.02 L23.16 412.02 L23.16 411.48 L22.22 411.48 L22.22 412.02 ZM21 412.02
|
||||
L21.94 412.02 L21.94 411.48 L21 411.48 L21 412.02 ZM19.5 412.02 L20.44 412.02 L20.44 411.48 L19.5 411.48
|
||||
L19.5 412.02 ZM19.5 412.7 L20.44 412.7 L20.44 412.16 L19.5 412.16 L19.5 412.7 ZM18.37 414.07 L19.31
|
||||
414.07 L19.31 413.52 L18.37 413.52 L18.37 414.07 ZM14.06 414.06 L16.69 414.06 L16.69 413.51 L14.06 413.51
|
||||
L14.06 414.06 ZM15.19 413.37 L16.69 413.37 L16.69 412.17 L15.19 412.17 L15.19 413.37 ZM17.25 412.7 L18.19
|
||||
412.7 L18.19 412.16 L17.25 412.16 L17.25 412.7 ZM18.37 412.7 L19.31 412.7 L19.31 412.16 L18.37 412.16
|
||||
L18.37 412.7 ZM18.37 412.02 L19.31 412.02 L19.31 411.48 L18.37 411.48 L18.37 412.02 ZM15.19 412.02 L16.69
|
||||
412.02 L16.69 411.48 L15.19 411.48 L15.19 412.02 ZM24.19 410.6 L24.94 410.6 L24.94 410.5 L24.19 410.5
|
||||
L24.19 410.6 ZM23.06 410.6 L23.81 410.6 L23.81 410.5 L23.06 410.5 L23.06 410.6 ZM19.5 410.93 L20.44
|
||||
410.93 L20.44 410.39 L19.5 410.39 L19.5 410.93 ZM18.37 410.93 L19.31 410.93 L19.31 410.39 L18.37 410.39
|
||||
L18.37 410.93 ZM17.25 410.93 L18.19 410.93 L18.19 410.39 L17.25 410.39 L17.25 410.93 ZM10.31 410.93
|
||||
L11.25 410.93 L11.25 410.39 L10.31 410.39 L10.31 410.93 ZM9.19 410.93 L10.12 410.93 L10.12 410.39 L9.19
|
||||
410.39 L9.19 410.93 ZM8.06 410.93 L9 410.93 L9 410.39 L8.06 410.39 L8.06 410.93 ZM6.94 410.93 L7.87
|
||||
410.93 L7.87 410.39 L6.94 410.39 L6.94 410.93 ZM17.25 412.02 L18.19 412.02 L18.19 411.48 L17.25 411.48
|
||||
L17.25 412.02 Z" class="st11"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="shape46-120" transform="translate(360.375,-72.375)">
|
||||
<title>Sheet.46</title>
|
||||
<path d="M0 414.75 L26.19 414.75" class="st4"/>
|
||||
</g>
|
||||
<g id="group48-125" transform="translate(396.436,-22.875)">
|
||||
<title>Terminal.48</title>
|
||||
<g id="shape49-126" transform="translate(-391.186,414.75) rotate(-90)">
|
||||
<title>Sheet.49</title>
|
||||
<path d="M0 414.75 L27 414.75 L27 409.08 L0 409.08 L0 414.75 ZM26.25 403.93 L23.44 399.37 L3.53 399.37 L0.75 403.93
|
||||
L26.25 403.93 ZM23.44 399.37 L23.44 391.19 L3.53 391.19 L3.53 399.37 L23.44 399.37 ZM26.25 407.7 L26.25
|
||||
403.93 L0.75 403.93 L0.75 407.7 L26.25 407.7 ZM24.83 407.7 A1223.48 394.162 90 0 1 2.17 407.7 L24.83
|
||||
407.7 Z" class="st8"/>
|
||||
</g>
|
||||
<g id="shape50-128" transform="translate(-395.768,392.25) rotate(-90)">
|
||||
<title>Sheet.50</title>
|
||||
<rect x="0" y="414.641" width="0.75" height="0.109091" class="st9"/>
|
||||
</g>
|
||||
<g id="shape51-130" transform="translate(-391.623,414.188) rotate(-90)">
|
||||
<title>Sheet.51</title>
|
||||
<path d="M1.69 410.93 L2.63 410.93 L2.63 410.39 L1.69 410.39 L1.69 410.93 ZM2.81 410.93 L3.75 410.93 L3.75 410.39
|
||||
L2.81 410.39 L2.81 410.93 ZM3.94 410.93 L4.87 410.93 L4.87 410.39 L3.94 410.39 L3.94 410.93 ZM5.06 410.93
|
||||
L6 410.93 L6 410.39 L5.06 410.39 L5.06 410.93 ZM12.28 410.93 L13.22 410.93 L13.22 410.39 L12.28 410.39
|
||||
L12.28 410.93 ZM13.41 410.93 L14.34 410.93 L14.34 410.39 L13.41 410.39 L13.41 410.93 ZM14.53 410.93
|
||||
L15.47 410.93 L15.47 410.39 L14.53 410.39 L14.53 410.93 ZM15.66 410.93 L16.59 410.93 L16.59 410.39 L15.66
|
||||
410.39 L15.66 410.93 ZM0 412.02 L1.5 412.02 L1.5 411.48 L0 411.48 L0 412.02 ZM1.69 412.02 L2.63 412.02
|
||||
L2.63 411.48 L1.69 411.48 L1.69 412.02 ZM2.81 412.02 L3.75 412.02 L3.75 411.48 L2.81 411.48 L2.81 412.02
|
||||
ZM3.94 412.02 L4.87 412.02 L4.87 411.48 L3.94 411.48 L3.94 412.02 ZM5.06 412.02 L6 412.02 L6 411.48
|
||||
L5.06 411.48 L5.06 412.02 ZM6.19 412.02 L7.12 412.02 L7.12 411.48 L6.19 411.48 L6.19 412.02 ZM7.31 412.02
|
||||
L8.25 412.02 L8.25 411.48 L7.31 411.48 L7.31 412.02 ZM8.44 412.02 L9.37 412.02 L9.37 411.48 L8.44 411.48
|
||||
L8.44 412.02 ZM9.56 412.02 L10.5 412.02 L10.5 411.48 L9.56 411.48 L9.56 412.02 ZM10.69 412.02 L11.62
|
||||
412.02 L11.62 411.48 L10.69 411.48 L10.69 412.02 ZM11.81 412.02 L12.75 412.02 L12.75 411.48 L11.81 411.48
|
||||
L11.81 412.02 ZM12.94 412.02 L13.87 412.02 L13.87 411.48 L12.94 411.48 L12.94 412.02 ZM14.06 412.02
|
||||
L15 412.02 L15 411.48 L14.06 411.48 L14.06 412.02 ZM1.69 412.7 L2.63 412.7 L2.63 412.16 L1.69 412.16
|
||||
L1.69 412.7 ZM2.81 412.7 L3.75 412.7 L3.75 412.16 L2.81 412.16 L2.81 412.7 ZM3.94 412.7 L4.87 412.7
|
||||
L4.87 412.16 L3.94 412.16 L3.94 412.7 ZM5.06 412.7 L6 412.7 L6 412.16 L5.06 412.16 L5.06 412.7 ZM6.19
|
||||
412.7 L7.12 412.7 L7.12 412.16 L6.19 412.16 L6.19 412.7 ZM7.31 412.7 L8.25 412.7 L8.25 412.16 L7.31
|
||||
412.16 L7.31 412.7 ZM8.44 412.7 L9.37 412.7 L9.37 412.16 L8.44 412.16 L8.44 412.7 ZM9.56 412.7 L10.5
|
||||
412.7 L10.5 412.16 L9.56 412.16 L9.56 412.7 ZM10.69 412.7 L11.62 412.7 L11.62 412.16 L10.69 412.16 L10.69
|
||||
412.7 ZM11.81 412.7 L12.75 412.7 L12.75 412.16 L11.81 412.16 L11.81 412.7 ZM12.94 412.7 L13.87 412.7
|
||||
L13.87 412.16 L12.94 412.16 L12.94 412.7 ZM14.06 412.7 L15 412.7 L15 412.16 L14.06 412.16 L14.06 412.7
|
||||
ZM1.69 413.39 L2.63 413.39 L2.63 412.84 L1.69 412.84 L1.69 413.39 ZM2.81 413.39 L3.75 413.39 L3.75 412.84
|
||||
L2.81 412.84 L2.81 413.39 ZM3.94 413.39 L4.87 413.39 L4.87 412.84 L3.94 412.84 L3.94 413.39 ZM5.06 413.39
|
||||
L6 413.39 L6 412.84 L5.06 412.84 L5.06 413.39 ZM6.19 413.39 L7.12 413.39 L7.12 412.84 L6.19 412.84 L6.19
|
||||
413.39 ZM7.31 413.39 L8.25 413.39 L8.25 412.84 L7.31 412.84 L7.31 413.39 ZM8.44 413.39 L9.37 413.39
|
||||
L9.37 412.84 L8.44 412.84 L8.44 413.39 ZM9.56 413.39 L10.5 413.39 L10.5 412.84 L9.56 412.84 L9.56 413.39
|
||||
ZM10.69 413.39 L11.62 413.39 L11.62 412.84 L10.69 412.84 L10.69 413.39 ZM11.81 413.39 L12.75 413.39
|
||||
L12.75 412.84 L11.81 412.84 L11.81 413.39 ZM12.94 413.39 L13.87 413.39 L13.87 412.84 L12.94 412.84 L12.94
|
||||
413.39 ZM14.06 413.39 L15 413.39 L15 412.84 L14.06 412.84 L14.06 413.39 ZM1.69 414.07 L2.63 414.07 L2.63
|
||||
413.52 L1.69 413.52 L1.69 414.07 ZM2.81 414.07 L3.75 414.07 L3.75 413.52 L2.81 413.52 L2.81 414.07 ZM3.94
|
||||
414.07 L4.87 414.07 L4.87 413.52 L3.94 413.52 L3.94 414.07 ZM5.06 414.07 L6 414.07 L6 413.52 L5.06 413.52
|
||||
L5.06 414.07 ZM6.19 414.07 L7.12 414.07 L7.12 413.52 L6.19 413.52 L6.19 414.07 ZM7.31 414.07 L8.25 414.07
|
||||
L8.25 413.52 L7.31 413.52 L7.31 414.07 ZM8.44 414.07 L9.37 414.07 L9.37 413.52 L8.44 413.52 L8.44 414.07
|
||||
ZM9.56 414.07 L10.5 414.07 L10.5 413.52 L9.56 413.52 L9.56 414.07 ZM10.69 414.07 L11.62 414.07 L11.62
|
||||
413.52 L10.69 413.52 L10.69 414.07 ZM11.81 414.07 L12.75 414.07 L12.75 413.52 L11.81 413.52 L11.81 414.07
|
||||
ZM12.94 414.07 L13.87 414.07 L13.87 413.52 L12.94 413.52 L12.94 414.07 ZM3.94 414.75 L11.62 414.75 L11.62
|
||||
414.2 L3.94 414.2 L3.94 414.75 ZM21 414.75 L23.25 414.75 L23.25 414.2 L21 414.2 L21 414.75 ZM23.44 414.75
|
||||
L24.37 414.75 L24.37 414.2 L23.44 414.2 L23.44 414.75 ZM23.44 414.07 L24.37 414.07 L24.37 413.52 L23.44
|
||||
413.52 L23.44 414.07 ZM22.22 414.07 L23.16 414.07 L23.16 413.52 L22.22 413.52 L22.22 414.07 ZM21 414.07
|
||||
L21.94 414.07 L21.94 413.52 L21 413.52 L21 414.07 ZM21 413.39 L21.94 413.39 L21.94 412.84 L21 412.84
|
||||
L21 413.39 ZM21 412.7 L21.94 412.7 L21.94 412.16 L21 412.16 L21 412.7 ZM22.22 412.7 L23.16 412.7 L23.16
|
||||
412.16 L22.22 412.16 L22.22 412.7 ZM23.44 412.7 L24.37 412.7 L24.37 412.16 L23.44 412.16 L23.44 412.7
|
||||
ZM23.44 413.39 L24.37 413.39 L24.37 412.84 L23.44 412.84 L23.44 413.39 ZM22.22 413.39 L23.16 413.39
|
||||
L23.16 412.84 L22.22 412.84 L22.22 413.39 Z" class="st10"/>
|
||||
</g>
|
||||
<g id="shape52-132" transform="translate(-391.623,414.188) rotate(-90)">
|
||||
<title>Sheet.52</title>
|
||||
<path d="M0 410.93 L0.94 410.93 L0.94 410.39 L0 410.39 L0 410.93 ZM0 412.7 L1.5 412.7 L1.5 412.16 L0 412.16 L0 412.7
|
||||
ZM0 413.39 L1.5 413.39 L1.5 412.84 L0 412.84 L0 413.39 ZM0 414.07 L1.5 414.07 L1.5 413.52 L0 413.52
|
||||
L0 414.07 ZM0 414.75 L1.5 414.75 L1.5 414.2 L0 414.2 L0 414.75 ZM1.69 414.75 L2.63 414.75 L2.63 414.2
|
||||
L1.69 414.2 L1.69 414.75 ZM2.81 414.75 L3.75 414.75 L3.75 414.2 L2.81 414.2 L2.81 414.75 ZM11.81 414.75
|
||||
L12.75 414.75 L12.75 414.2 L11.81 414.2 L11.81 414.75 ZM12.94 414.75 L13.87 414.75 L13.87 414.2 L12.94
|
||||
414.2 L12.94 414.75 ZM14.06 414.75 L15 414.75 L15 414.2 L14.06 414.2 L14.06 414.75 ZM15.19 414.75 L16.69
|
||||
414.75 L16.69 414.2 L15.19 414.2 L15.19 414.75 ZM17.25 414.75 L18.19 414.75 L18.19 414.2 L17.25 414.2
|
||||
L17.25 414.75 ZM18.37 414.75 L19.31 414.75 L19.31 414.2 L18.37 414.2 L18.37 414.75 ZM19.5 414.75 L20.44
|
||||
414.75 L20.44 414.2 L19.5 414.2 L19.5 414.75 ZM24.66 414.75 L25.59 414.75 L25.59 413.55 L24.66 413.55
|
||||
L24.66 414.75 ZM24.66 413.44 L25.59 413.44 L25.59 412.16 L24.66 412.16 L24.66 413.44 ZM24.66 412.02
|
||||
L25.59 412.02 L25.59 411.48 L24.66 411.48 L24.66 412.02 ZM23.44 412.02 L24.37 412.02 L24.37 411.48 L23.44
|
||||
411.48 L23.44 412.02 ZM22.22 412.02 L23.16 412.02 L23.16 411.48 L22.22 411.48 L22.22 412.02 ZM21 412.02
|
||||
L21.94 412.02 L21.94 411.48 L21 411.48 L21 412.02 ZM19.5 412.02 L20.44 412.02 L20.44 411.48 L19.5 411.48
|
||||
L19.5 412.02 ZM19.5 412.7 L20.44 412.7 L20.44 412.16 L19.5 412.16 L19.5 412.7 ZM18.37 414.07 L19.31
|
||||
414.07 L19.31 413.52 L18.37 413.52 L18.37 414.07 ZM14.06 414.06 L16.69 414.06 L16.69 413.51 L14.06 413.51
|
||||
L14.06 414.06 ZM15.19 413.37 L16.69 413.37 L16.69 412.17 L15.19 412.17 L15.19 413.37 ZM17.25 412.7 L18.19
|
||||
412.7 L18.19 412.16 L17.25 412.16 L17.25 412.7 ZM18.37 412.7 L19.31 412.7 L19.31 412.16 L18.37 412.16
|
||||
L18.37 412.7 ZM18.37 412.02 L19.31 412.02 L19.31 411.48 L18.37 411.48 L18.37 412.02 ZM15.19 412.02 L16.69
|
||||
412.02 L16.69 411.48 L15.19 411.48 L15.19 412.02 ZM24.19 410.6 L24.94 410.6 L24.94 410.5 L24.19 410.5
|
||||
L24.19 410.6 ZM23.06 410.6 L23.81 410.6 L23.81 410.5 L23.06 410.5 L23.06 410.6 ZM19.5 410.93 L20.44
|
||||
410.93 L20.44 410.39 L19.5 410.39 L19.5 410.93 ZM18.37 410.93 L19.31 410.93 L19.31 410.39 L18.37 410.39
|
||||
L18.37 410.93 ZM17.25 410.93 L18.19 410.93 L18.19 410.39 L17.25 410.39 L17.25 410.93 ZM10.31 410.93
|
||||
L11.25 410.93 L11.25 410.39 L10.31 410.39 L10.31 410.93 ZM9.19 410.93 L10.12 410.93 L10.12 410.39 L9.19
|
||||
410.39 L9.19 410.93 ZM8.06 410.93 L9 410.93 L9 410.39 L8.06 410.39 L8.06 410.93 ZM6.94 410.93 L7.87
|
||||
410.93 L7.87 410.39 L6.94 410.39 L6.94 410.93 ZM17.25 412.02 L18.19 412.02 L18.19 411.48 L17.25 411.48
|
||||
L17.25 412.02 Z" class="st11"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="shape53-134" transform="translate(360.293,-36.375)">
|
||||
<title>Sheet.53</title>
|
||||
<path d="M0 414.75 L26.27 414.75" class="st4"/>
|
||||
</g>
|
||||
<g id="group22-139" transform="translate(396.375,-310.875)">
|
||||
<title>Terminal.22</title>
|
||||
<g id="shape23-140" transform="translate(-391.186,414.75) rotate(-90)">
|
||||
<title>Sheet.23</title>
|
||||
<path d="M0 414.75 L27 414.75 L27 409.08 L0 409.08 L0 414.75 ZM26.25 403.93 L23.44 399.37 L3.53 399.37 L0.75 403.93
|
||||
L26.25 403.93 ZM23.44 399.37 L23.44 391.19 L3.53 391.19 L3.53 399.37 L23.44 399.37 ZM26.25 407.7 L26.25
|
||||
403.93 L0.75 403.93 L0.75 407.7 L26.25 407.7 ZM24.83 407.7 A1223.48 394.162 90 0 1 2.17 407.7 L24.83
|
||||
407.7 Z" class="st8"/>
|
||||
</g>
|
||||
<g id="shape24-142" transform="translate(-395.768,392.25) rotate(-90)">
|
||||
<title>Sheet.24</title>
|
||||
<rect x="0" y="414.641" width="0.75" height="0.109091" class="st9"/>
|
||||
</g>
|
||||
<g id="shape25-144" transform="translate(-391.623,414.188) rotate(-90)">
|
||||
<title>Sheet.25</title>
|
||||
<path d="M1.69 410.93 L2.63 410.93 L2.63 410.39 L1.69 410.39 L1.69 410.93 ZM2.81 410.93 L3.75 410.93 L3.75 410.39
|
||||
L2.81 410.39 L2.81 410.93 ZM3.94 410.93 L4.87 410.93 L4.87 410.39 L3.94 410.39 L3.94 410.93 ZM5.06 410.93
|
||||
L6 410.93 L6 410.39 L5.06 410.39 L5.06 410.93 ZM12.28 410.93 L13.22 410.93 L13.22 410.39 L12.28 410.39
|
||||
L12.28 410.93 ZM13.41 410.93 L14.34 410.93 L14.34 410.39 L13.41 410.39 L13.41 410.93 ZM14.53 410.93
|
||||
L15.47 410.93 L15.47 410.39 L14.53 410.39 L14.53 410.93 ZM15.66 410.93 L16.59 410.93 L16.59 410.39 L15.66
|
||||
410.39 L15.66 410.93 ZM0 412.02 L1.5 412.02 L1.5 411.48 L0 411.48 L0 412.02 ZM1.69 412.02 L2.63 412.02
|
||||
L2.63 411.48 L1.69 411.48 L1.69 412.02 ZM2.81 412.02 L3.75 412.02 L3.75 411.48 L2.81 411.48 L2.81 412.02
|
||||
ZM3.94 412.02 L4.87 412.02 L4.87 411.48 L3.94 411.48 L3.94 412.02 ZM5.06 412.02 L6 412.02 L6 411.48
|
||||
L5.06 411.48 L5.06 412.02 ZM6.19 412.02 L7.12 412.02 L7.12 411.48 L6.19 411.48 L6.19 412.02 ZM7.31 412.02
|
||||
L8.25 412.02 L8.25 411.48 L7.31 411.48 L7.31 412.02 ZM8.44 412.02 L9.37 412.02 L9.37 411.48 L8.44 411.48
|
||||
L8.44 412.02 ZM9.56 412.02 L10.5 412.02 L10.5 411.48 L9.56 411.48 L9.56 412.02 ZM10.69 412.02 L11.62
|
||||
412.02 L11.62 411.48 L10.69 411.48 L10.69 412.02 ZM11.81 412.02 L12.75 412.02 L12.75 411.48 L11.81 411.48
|
||||
L11.81 412.02 ZM12.94 412.02 L13.87 412.02 L13.87 411.48 L12.94 411.48 L12.94 412.02 ZM14.06 412.02
|
||||
L15 412.02 L15 411.48 L14.06 411.48 L14.06 412.02 ZM1.69 412.7 L2.63 412.7 L2.63 412.16 L1.69 412.16
|
||||
L1.69 412.7 ZM2.81 412.7 L3.75 412.7 L3.75 412.16 L2.81 412.16 L2.81 412.7 ZM3.94 412.7 L4.87 412.7
|
||||
L4.87 412.16 L3.94 412.16 L3.94 412.7 ZM5.06 412.7 L6 412.7 L6 412.16 L5.06 412.16 L5.06 412.7 ZM6.19
|
||||
412.7 L7.12 412.7 L7.12 412.16 L6.19 412.16 L6.19 412.7 ZM7.31 412.7 L8.25 412.7 L8.25 412.16 L7.31
|
||||
412.16 L7.31 412.7 ZM8.44 412.7 L9.37 412.7 L9.37 412.16 L8.44 412.16 L8.44 412.7 ZM9.56 412.7 L10.5
|
||||
412.7 L10.5 412.16 L9.56 412.16 L9.56 412.7 ZM10.69 412.7 L11.62 412.7 L11.62 412.16 L10.69 412.16 L10.69
|
||||
412.7 ZM11.81 412.7 L12.75 412.7 L12.75 412.16 L11.81 412.16 L11.81 412.7 ZM12.94 412.7 L13.87 412.7
|
||||
L13.87 412.16 L12.94 412.16 L12.94 412.7 ZM14.06 412.7 L15 412.7 L15 412.16 L14.06 412.16 L14.06 412.7
|
||||
ZM1.69 413.39 L2.63 413.39 L2.63 412.84 L1.69 412.84 L1.69 413.39 ZM2.81 413.39 L3.75 413.39 L3.75 412.84
|
||||
L2.81 412.84 L2.81 413.39 ZM3.94 413.39 L4.87 413.39 L4.87 412.84 L3.94 412.84 L3.94 413.39 ZM5.06 413.39
|
||||
L6 413.39 L6 412.84 L5.06 412.84 L5.06 413.39 ZM6.19 413.39 L7.12 413.39 L7.12 412.84 L6.19 412.84 L6.19
|
||||
413.39 ZM7.31 413.39 L8.25 413.39 L8.25 412.84 L7.31 412.84 L7.31 413.39 ZM8.44 413.39 L9.37 413.39
|
||||
L9.37 412.84 L8.44 412.84 L8.44 413.39 ZM9.56 413.39 L10.5 413.39 L10.5 412.84 L9.56 412.84 L9.56 413.39
|
||||
ZM10.69 413.39 L11.62 413.39 L11.62 412.84 L10.69 412.84 L10.69 413.39 ZM11.81 413.39 L12.75 413.39
|
||||
L12.75 412.84 L11.81 412.84 L11.81 413.39 ZM12.94 413.39 L13.87 413.39 L13.87 412.84 L12.94 412.84 L12.94
|
||||
413.39 ZM14.06 413.39 L15 413.39 L15 412.84 L14.06 412.84 L14.06 413.39 ZM1.69 414.07 L2.63 414.07 L2.63
|
||||
413.52 L1.69 413.52 L1.69 414.07 ZM2.81 414.07 L3.75 414.07 L3.75 413.52 L2.81 413.52 L2.81 414.07 ZM3.94
|
||||
414.07 L4.87 414.07 L4.87 413.52 L3.94 413.52 L3.94 414.07 ZM5.06 414.07 L6 414.07 L6 413.52 L5.06 413.52
|
||||
L5.06 414.07 ZM6.19 414.07 L7.12 414.07 L7.12 413.52 L6.19 413.52 L6.19 414.07 ZM7.31 414.07 L8.25 414.07
|
||||
L8.25 413.52 L7.31 413.52 L7.31 414.07 ZM8.44 414.07 L9.37 414.07 L9.37 413.52 L8.44 413.52 L8.44 414.07
|
||||
ZM9.56 414.07 L10.5 414.07 L10.5 413.52 L9.56 413.52 L9.56 414.07 ZM10.69 414.07 L11.62 414.07 L11.62
|
||||
413.52 L10.69 413.52 L10.69 414.07 ZM11.81 414.07 L12.75 414.07 L12.75 413.52 L11.81 413.52 L11.81 414.07
|
||||
ZM12.94 414.07 L13.87 414.07 L13.87 413.52 L12.94 413.52 L12.94 414.07 ZM3.94 414.75 L11.62 414.75 L11.62
|
||||
414.2 L3.94 414.2 L3.94 414.75 ZM21 414.75 L23.25 414.75 L23.25 414.2 L21 414.2 L21 414.75 ZM23.44 414.75
|
||||
L24.37 414.75 L24.37 414.2 L23.44 414.2 L23.44 414.75 ZM23.44 414.07 L24.37 414.07 L24.37 413.52 L23.44
|
||||
413.52 L23.44 414.07 ZM22.22 414.07 L23.16 414.07 L23.16 413.52 L22.22 413.52 L22.22 414.07 ZM21 414.07
|
||||
L21.94 414.07 L21.94 413.52 L21 413.52 L21 414.07 ZM21 413.39 L21.94 413.39 L21.94 412.84 L21 412.84
|
||||
L21 413.39 ZM21 412.7 L21.94 412.7 L21.94 412.16 L21 412.16 L21 412.7 ZM22.22 412.7 L23.16 412.7 L23.16
|
||||
412.16 L22.22 412.16 L22.22 412.7 ZM23.44 412.7 L24.37 412.7 L24.37 412.16 L23.44 412.16 L23.44 412.7
|
||||
ZM23.44 413.39 L24.37 413.39 L24.37 412.84 L23.44 412.84 L23.44 413.39 ZM22.22 413.39 L23.16 413.39
|
||||
L23.16 412.84 L22.22 412.84 L22.22 413.39 Z" class="st10"/>
|
||||
</g>
|
||||
<g id="shape26-146" transform="translate(-391.623,414.188) rotate(-90)">
|
||||
<title>Sheet.26</title>
|
||||
<path d="M0 410.93 L0.94 410.93 L0.94 410.39 L0 410.39 L0 410.93 ZM0 412.7 L1.5 412.7 L1.5 412.16 L0 412.16 L0 412.7
|
||||
ZM0 413.39 L1.5 413.39 L1.5 412.84 L0 412.84 L0 413.39 ZM0 414.07 L1.5 414.07 L1.5 413.52 L0 413.52
|
||||
L0 414.07 ZM0 414.75 L1.5 414.75 L1.5 414.2 L0 414.2 L0 414.75 ZM1.69 414.75 L2.63 414.75 L2.63 414.2
|
||||
L1.69 414.2 L1.69 414.75 ZM2.81 414.75 L3.75 414.75 L3.75 414.2 L2.81 414.2 L2.81 414.75 ZM11.81 414.75
|
||||
L12.75 414.75 L12.75 414.2 L11.81 414.2 L11.81 414.75 ZM12.94 414.75 L13.87 414.75 L13.87 414.2 L12.94
|
||||
414.2 L12.94 414.75 ZM14.06 414.75 L15 414.75 L15 414.2 L14.06 414.2 L14.06 414.75 ZM15.19 414.75 L16.69
|
||||
414.75 L16.69 414.2 L15.19 414.2 L15.19 414.75 ZM17.25 414.75 L18.19 414.75 L18.19 414.2 L17.25 414.2
|
||||
L17.25 414.75 ZM18.37 414.75 L19.31 414.75 L19.31 414.2 L18.37 414.2 L18.37 414.75 ZM19.5 414.75 L20.44
|
||||
414.75 L20.44 414.2 L19.5 414.2 L19.5 414.75 ZM24.66 414.75 L25.59 414.75 L25.59 413.55 L24.66 413.55
|
||||
L24.66 414.75 ZM24.66 413.44 L25.59 413.44 L25.59 412.16 L24.66 412.16 L24.66 413.44 ZM24.66 412.02
|
||||
L25.59 412.02 L25.59 411.48 L24.66 411.48 L24.66 412.02 ZM23.44 412.02 L24.37 412.02 L24.37 411.48 L23.44
|
||||
411.48 L23.44 412.02 ZM22.22 412.02 L23.16 412.02 L23.16 411.48 L22.22 411.48 L22.22 412.02 ZM21 412.02
|
||||
L21.94 412.02 L21.94 411.48 L21 411.48 L21 412.02 ZM19.5 412.02 L20.44 412.02 L20.44 411.48 L19.5 411.48
|
||||
L19.5 412.02 ZM19.5 412.7 L20.44 412.7 L20.44 412.16 L19.5 412.16 L19.5 412.7 ZM18.37 414.07 L19.31
|
||||
414.07 L19.31 413.52 L18.37 413.52 L18.37 414.07 ZM14.06 414.06 L16.69 414.06 L16.69 413.51 L14.06 413.51
|
||||
L14.06 414.06 ZM15.19 413.37 L16.69 413.37 L16.69 412.17 L15.19 412.17 L15.19 413.37 ZM17.25 412.7 L18.19
|
||||
412.7 L18.19 412.16 L17.25 412.16 L17.25 412.7 ZM18.37 412.7 L19.31 412.7 L19.31 412.16 L18.37 412.16
|
||||
L18.37 412.7 ZM18.37 412.02 L19.31 412.02 L19.31 411.48 L18.37 411.48 L18.37 412.02 ZM15.19 412.02 L16.69
|
||||
412.02 L16.69 411.48 L15.19 411.48 L15.19 412.02 ZM24.19 410.6 L24.94 410.6 L24.94 410.5 L24.19 410.5
|
||||
L24.19 410.6 ZM23.06 410.6 L23.81 410.6 L23.81 410.5 L23.06 410.5 L23.06 410.6 ZM19.5 410.93 L20.44
|
||||
410.93 L20.44 410.39 L19.5 410.39 L19.5 410.93 ZM18.37 410.93 L19.31 410.93 L19.31 410.39 L18.37 410.39
|
||||
L18.37 410.93 ZM17.25 410.93 L18.19 410.93 L18.19 410.39 L17.25 410.39 L17.25 410.93 ZM10.31 410.93
|
||||
L11.25 410.93 L11.25 410.39 L10.31 410.39 L10.31 410.93 ZM9.19 410.93 L10.12 410.93 L10.12 410.39 L9.19
|
||||
410.39 L9.19 410.93 ZM8.06 410.93 L9 410.93 L9 410.39 L8.06 410.39 L8.06 410.93 ZM6.94 410.93 L7.87
|
||||
410.93 L7.87 410.39 L6.94 410.39 L6.94 410.93 ZM17.25 412.02 L18.19 412.02 L18.19 411.48 L17.25 411.48
|
||||
L17.25 412.02 Z" class="st11"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="shape28-148" transform="translate(360.293,-324.375)">
|
||||
<title>Sheet.28</title>
|
||||
<path d="M0 414.75 L26.27 414.75" class="st4"/>
|
||||
</g>
|
||||
<g id="group29-153" transform="translate(396.375,-256.875)">
|
||||
<title>Terminal.29</title>
|
||||
<g id="shape30-154" transform="translate(-391.186,414.75) rotate(-90)">
|
||||
<title>Sheet.30</title>
|
||||
<path d="M0 414.75 L27 414.75 L27 409.08 L0 409.08 L0 414.75 ZM26.25 403.93 L23.44 399.37 L3.53 399.37 L0.75 403.93
|
||||
L26.25 403.93 ZM23.44 399.37 L23.44 391.19 L3.53 391.19 L3.53 399.37 L23.44 399.37 ZM26.25 407.7 L26.25
|
||||
403.93 L0.75 403.93 L0.75 407.7 L26.25 407.7 ZM24.83 407.7 A1223.48 394.162 90 0 1 2.17 407.7 L24.83
|
||||
407.7 Z" class="st8"/>
|
||||
</g>
|
||||
<g id="shape31-156" transform="translate(-395.768,392.25) rotate(-90)">
|
||||
<title>Sheet.31</title>
|
||||
<rect x="0" y="414.641" width="0.75" height="0.109091" class="st9"/>
|
||||
</g>
|
||||
<g id="shape32-158" transform="translate(-391.623,414.188) rotate(-90)">
|
||||
<title>Sheet.32</title>
|
||||
<path d="M1.69 410.93 L2.63 410.93 L2.63 410.39 L1.69 410.39 L1.69 410.93 ZM2.81 410.93 L3.75 410.93 L3.75 410.39
|
||||
L2.81 410.39 L2.81 410.93 ZM3.94 410.93 L4.87 410.93 L4.87 410.39 L3.94 410.39 L3.94 410.93 ZM5.06 410.93
|
||||
L6 410.93 L6 410.39 L5.06 410.39 L5.06 410.93 ZM12.28 410.93 L13.22 410.93 L13.22 410.39 L12.28 410.39
|
||||
L12.28 410.93 ZM13.41 410.93 L14.34 410.93 L14.34 410.39 L13.41 410.39 L13.41 410.93 ZM14.53 410.93
|
||||
L15.47 410.93 L15.47 410.39 L14.53 410.39 L14.53 410.93 ZM15.66 410.93 L16.59 410.93 L16.59 410.39 L15.66
|
||||
410.39 L15.66 410.93 ZM0 412.02 L1.5 412.02 L1.5 411.48 L0 411.48 L0 412.02 ZM1.69 412.02 L2.63 412.02
|
||||
L2.63 411.48 L1.69 411.48 L1.69 412.02 ZM2.81 412.02 L3.75 412.02 L3.75 411.48 L2.81 411.48 L2.81 412.02
|
||||
ZM3.94 412.02 L4.87 412.02 L4.87 411.48 L3.94 411.48 L3.94 412.02 ZM5.06 412.02 L6 412.02 L6 411.48
|
||||
L5.06 411.48 L5.06 412.02 ZM6.19 412.02 L7.12 412.02 L7.12 411.48 L6.19 411.48 L6.19 412.02 ZM7.31 412.02
|
||||
L8.25 412.02 L8.25 411.48 L7.31 411.48 L7.31 412.02 ZM8.44 412.02 L9.37 412.02 L9.37 411.48 L8.44 411.48
|
||||
L8.44 412.02 ZM9.56 412.02 L10.5 412.02 L10.5 411.48 L9.56 411.48 L9.56 412.02 ZM10.69 412.02 L11.62
|
||||
412.02 L11.62 411.48 L10.69 411.48 L10.69 412.02 ZM11.81 412.02 L12.75 412.02 L12.75 411.48 L11.81 411.48
|
||||
L11.81 412.02 ZM12.94 412.02 L13.87 412.02 L13.87 411.48 L12.94 411.48 L12.94 412.02 ZM14.06 412.02
|
||||
L15 412.02 L15 411.48 L14.06 411.48 L14.06 412.02 ZM1.69 412.7 L2.63 412.7 L2.63 412.16 L1.69 412.16
|
||||
L1.69 412.7 ZM2.81 412.7 L3.75 412.7 L3.75 412.16 L2.81 412.16 L2.81 412.7 ZM3.94 412.7 L4.87 412.7
|
||||
L4.87 412.16 L3.94 412.16 L3.94 412.7 ZM5.06 412.7 L6 412.7 L6 412.16 L5.06 412.16 L5.06 412.7 ZM6.19
|
||||
412.7 L7.12 412.7 L7.12 412.16 L6.19 412.16 L6.19 412.7 ZM7.31 412.7 L8.25 412.7 L8.25 412.16 L7.31
|
||||
412.16 L7.31 412.7 ZM8.44 412.7 L9.37 412.7 L9.37 412.16 L8.44 412.16 L8.44 412.7 ZM9.56 412.7 L10.5
|
||||
412.7 L10.5 412.16 L9.56 412.16 L9.56 412.7 ZM10.69 412.7 L11.62 412.7 L11.62 412.16 L10.69 412.16 L10.69
|
||||
412.7 ZM11.81 412.7 L12.75 412.7 L12.75 412.16 L11.81 412.16 L11.81 412.7 ZM12.94 412.7 L13.87 412.7
|
||||
L13.87 412.16 L12.94 412.16 L12.94 412.7 ZM14.06 412.7 L15 412.7 L15 412.16 L14.06 412.16 L14.06 412.7
|
||||
ZM1.69 413.39 L2.63 413.39 L2.63 412.84 L1.69 412.84 L1.69 413.39 ZM2.81 413.39 L3.75 413.39 L3.75 412.84
|
||||
L2.81 412.84 L2.81 413.39 ZM3.94 413.39 L4.87 413.39 L4.87 412.84 L3.94 412.84 L3.94 413.39 ZM5.06 413.39
|
||||
L6 413.39 L6 412.84 L5.06 412.84 L5.06 413.39 ZM6.19 413.39 L7.12 413.39 L7.12 412.84 L6.19 412.84 L6.19
|
||||
413.39 ZM7.31 413.39 L8.25 413.39 L8.25 412.84 L7.31 412.84 L7.31 413.39 ZM8.44 413.39 L9.37 413.39
|
||||
L9.37 412.84 L8.44 412.84 L8.44 413.39 ZM9.56 413.39 L10.5 413.39 L10.5 412.84 L9.56 412.84 L9.56 413.39
|
||||
ZM10.69 413.39 L11.62 413.39 L11.62 412.84 L10.69 412.84 L10.69 413.39 ZM11.81 413.39 L12.75 413.39
|
||||
L12.75 412.84 L11.81 412.84 L11.81 413.39 ZM12.94 413.39 L13.87 413.39 L13.87 412.84 L12.94 412.84 L12.94
|
||||
413.39 ZM14.06 413.39 L15 413.39 L15 412.84 L14.06 412.84 L14.06 413.39 ZM1.69 414.07 L2.63 414.07 L2.63
|
||||
413.52 L1.69 413.52 L1.69 414.07 ZM2.81 414.07 L3.75 414.07 L3.75 413.52 L2.81 413.52 L2.81 414.07 ZM3.94
|
||||
414.07 L4.87 414.07 L4.87 413.52 L3.94 413.52 L3.94 414.07 ZM5.06 414.07 L6 414.07 L6 413.52 L5.06 413.52
|
||||
L5.06 414.07 ZM6.19 414.07 L7.12 414.07 L7.12 413.52 L6.19 413.52 L6.19 414.07 ZM7.31 414.07 L8.25 414.07
|
||||
L8.25 413.52 L7.31 413.52 L7.31 414.07 ZM8.44 414.07 L9.37 414.07 L9.37 413.52 L8.44 413.52 L8.44 414.07
|
||||
ZM9.56 414.07 L10.5 414.07 L10.5 413.52 L9.56 413.52 L9.56 414.07 ZM10.69 414.07 L11.62 414.07 L11.62
|
||||
413.52 L10.69 413.52 L10.69 414.07 ZM11.81 414.07 L12.75 414.07 L12.75 413.52 L11.81 413.52 L11.81 414.07
|
||||
ZM12.94 414.07 L13.87 414.07 L13.87 413.52 L12.94 413.52 L12.94 414.07 ZM3.94 414.75 L11.62 414.75 L11.62
|
||||
414.2 L3.94 414.2 L3.94 414.75 ZM21 414.75 L23.25 414.75 L23.25 414.2 L21 414.2 L21 414.75 ZM23.44 414.75
|
||||
L24.37 414.75 L24.37 414.2 L23.44 414.2 L23.44 414.75 ZM23.44 414.07 L24.37 414.07 L24.37 413.52 L23.44
|
||||
413.52 L23.44 414.07 ZM22.22 414.07 L23.16 414.07 L23.16 413.52 L22.22 413.52 L22.22 414.07 ZM21 414.07
|
||||
L21.94 414.07 L21.94 413.52 L21 413.52 L21 414.07 ZM21 413.39 L21.94 413.39 L21.94 412.84 L21 412.84
|
||||
L21 413.39 ZM21 412.7 L21.94 412.7 L21.94 412.16 L21 412.16 L21 412.7 ZM22.22 412.7 L23.16 412.7 L23.16
|
||||
412.16 L22.22 412.16 L22.22 412.7 ZM23.44 412.7 L24.37 412.7 L24.37 412.16 L23.44 412.16 L23.44 412.7
|
||||
ZM23.44 413.39 L24.37 413.39 L24.37 412.84 L23.44 412.84 L23.44 413.39 ZM22.22 413.39 L23.16 413.39
|
||||
L23.16 412.84 L22.22 412.84 L22.22 413.39 Z" class="st10"/>
|
||||
</g>
|
||||
<g id="shape33-160" transform="translate(-391.623,414.188) rotate(-90)">
|
||||
<title>Sheet.33</title>
|
||||
<path d="M0 410.93 L0.94 410.93 L0.94 410.39 L0 410.39 L0 410.93 ZM0 412.7 L1.5 412.7 L1.5 412.16 L0 412.16 L0 412.7
|
||||
ZM0 413.39 L1.5 413.39 L1.5 412.84 L0 412.84 L0 413.39 ZM0 414.07 L1.5 414.07 L1.5 413.52 L0 413.52
|
||||
L0 414.07 ZM0 414.75 L1.5 414.75 L1.5 414.2 L0 414.2 L0 414.75 ZM1.69 414.75 L2.63 414.75 L2.63 414.2
|
||||
L1.69 414.2 L1.69 414.75 ZM2.81 414.75 L3.75 414.75 L3.75 414.2 L2.81 414.2 L2.81 414.75 ZM11.81 414.75
|
||||
L12.75 414.75 L12.75 414.2 L11.81 414.2 L11.81 414.75 ZM12.94 414.75 L13.87 414.75 L13.87 414.2 L12.94
|
||||
414.2 L12.94 414.75 ZM14.06 414.75 L15 414.75 L15 414.2 L14.06 414.2 L14.06 414.75 ZM15.19 414.75 L16.69
|
||||
414.75 L16.69 414.2 L15.19 414.2 L15.19 414.75 ZM17.25 414.75 L18.19 414.75 L18.19 414.2 L17.25 414.2
|
||||
L17.25 414.75 ZM18.37 414.75 L19.31 414.75 L19.31 414.2 L18.37 414.2 L18.37 414.75 ZM19.5 414.75 L20.44
|
||||
414.75 L20.44 414.2 L19.5 414.2 L19.5 414.75 ZM24.66 414.75 L25.59 414.75 L25.59 413.55 L24.66 413.55
|
||||
L24.66 414.75 ZM24.66 413.44 L25.59 413.44 L25.59 412.16 L24.66 412.16 L24.66 413.44 ZM24.66 412.02
|
||||
L25.59 412.02 L25.59 411.48 L24.66 411.48 L24.66 412.02 ZM23.44 412.02 L24.37 412.02 L24.37 411.48 L23.44
|
||||
411.48 L23.44 412.02 ZM22.22 412.02 L23.16 412.02 L23.16 411.48 L22.22 411.48 L22.22 412.02 ZM21 412.02
|
||||
L21.94 412.02 L21.94 411.48 L21 411.48 L21 412.02 ZM19.5 412.02 L20.44 412.02 L20.44 411.48 L19.5 411.48
|
||||
L19.5 412.02 ZM19.5 412.7 L20.44 412.7 L20.44 412.16 L19.5 412.16 L19.5 412.7 ZM18.37 414.07 L19.31
|
||||
414.07 L19.31 413.52 L18.37 413.52 L18.37 414.07 ZM14.06 414.06 L16.69 414.06 L16.69 413.51 L14.06 413.51
|
||||
L14.06 414.06 ZM15.19 413.37 L16.69 413.37 L16.69 412.17 L15.19 412.17 L15.19 413.37 ZM17.25 412.7 L18.19
|
||||
412.7 L18.19 412.16 L17.25 412.16 L17.25 412.7 ZM18.37 412.7 L19.31 412.7 L19.31 412.16 L18.37 412.16
|
||||
L18.37 412.7 ZM18.37 412.02 L19.31 412.02 L19.31 411.48 L18.37 411.48 L18.37 412.02 ZM15.19 412.02 L16.69
|
||||
412.02 L16.69 411.48 L15.19 411.48 L15.19 412.02 ZM24.19 410.6 L24.94 410.6 L24.94 410.5 L24.19 410.5
|
||||
L24.19 410.6 ZM23.06 410.6 L23.81 410.6 L23.81 410.5 L23.06 410.5 L23.06 410.6 ZM19.5 410.93 L20.44
|
||||
410.93 L20.44 410.39 L19.5 410.39 L19.5 410.93 ZM18.37 410.93 L19.31 410.93 L19.31 410.39 L18.37 410.39
|
||||
L18.37 410.93 ZM17.25 410.93 L18.19 410.93 L18.19 410.39 L17.25 410.39 L17.25 410.93 ZM10.31 410.93
|
||||
L11.25 410.93 L11.25 410.39 L10.31 410.39 L10.31 410.93 ZM9.19 410.93 L10.12 410.93 L10.12 410.39 L9.19
|
||||
410.39 L9.19 410.93 ZM8.06 410.93 L9 410.93 L9 410.39 L8.06 410.39 L8.06 410.93 ZM6.94 410.93 L7.87
|
||||
410.93 L7.87 410.39 L6.94 410.39 L6.94 410.93 ZM17.25 412.02 L18.19 412.02 L18.19 411.48 L17.25 411.48
|
||||
L17.25 412.02 Z" class="st11"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="shape35-162" transform="translate(359.23,-270.375)">
|
||||
<title>Sheet.35</title>
|
||||
<path d="M0 414.75 L27.34 414.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape55-167" transform="translate(360.375,-324.375)">
|
||||
<title>Sheet.55</title>
|
||||
<desc>RS-232</desc>
|
||||
<rect x="0" y="405.75" width="27" height="9" class="st12"/>
|
||||
<text x="4.91" y="412.05" class="st14">RS-232</text> </g>
|
||||
<g id="shape63-170" transform="translate(359.311,-270.375)">
|
||||
<title>Sheet.63</title>
|
||||
<desc>RS-232</desc>
|
||||
<rect x="0" y="405.75" width="27" height="9" class="st12"/>
|
||||
<text x="4.91" y="412.05" class="st14">RS-232</text> </g>
|
||||
<g id="shape64-173" transform="translate(360.375,-108.375)">
|
||||
<title>Sheet.64</title>
|
||||
<desc>VGA</desc>
|
||||
<rect x="0" y="405.75" width="27" height="9" class="st12"/>
|
||||
<text x="8" y="412.05" class="st14">VGA</text> </g>
|
||||
<g id="shape65-176" transform="translate(360.375,-72.375)">
|
||||
<title>Sheet.65</title>
|
||||
<desc>VGA</desc>
|
||||
<rect x="0" y="405.75" width="27" height="9" class="st12"/>
|
||||
<text x="8" y="412.05" class="st14">VGA</text> </g>
|
||||
<g id="shape66-179" transform="translate(360.375,-36.375)">
|
||||
<title>Sheet.66</title>
|
||||
<desc>NTSC</desc>
|
||||
<rect x="0" y="405.75" width="27" height="9" class="st12"/>
|
||||
<text x="7.03" y="412.05" class="st14">NTSC</text> </g>
|
||||
<g id="shape67-182" transform="translate(108.375,-297.375)">
|
||||
<title>Sheet.67</title>
|
||||
<desc>UART</desc>
|
||||
<rect x="0" y="396.75" width="54" height="18" class="st1"/>
|
||||
<text x="15.42" y="408.75" class="st2">UART</text> </g>
|
||||
<g id="shape68-185" transform="translate(108.375,-279.375)">
|
||||
<title>Sheet.68</title>
|
||||
<desc>ASCI</desc>
|
||||
<rect x="0" y="396.75" width="54" height="18" class="st1"/>
|
||||
<text x="17.63" y="408.75" class="st2">ASCI</text> </g>
|
||||
<g id="shape69-188" transform="translate(108.375,-261.375)">
|
||||
<title>Sheet.69</title>
|
||||
<desc>VDU</desc>
|
||||
<rect x="0" y="396.75" width="54" height="18" class="st1"/>
|
||||
<text x="17.63" y="408.75" class="st2">VDU</text> </g>
|
||||
<g id="shape74-191" transform="translate(189.375,-81.375)">
|
||||
<title>Sheet.74</title>
|
||||
<desc>SY6545</desc>
|
||||
<rect x="0" y="396.75" width="54" height="18" class="st1"/>
|
||||
<text x="11.9" y="408.75" class="st2">SY6545</text> </g>
|
||||
<g id="shape75-194" transform="translate(189.375,-63.375)">
|
||||
<title>Sheet.75</title>
|
||||
<desc>MC8563</desc>
|
||||
<rect x="0" y="396.75" width="54" height="18" class="st1"/>
|
||||
<text x="9.85" y="408.75" class="st2">MC8563</text> </g>
|
||||
<g id="shape76-197" transform="translate(189.375,-45.375)">
|
||||
<title>Sheet.76</title>
|
||||
<desc>uPD7220</desc>
|
||||
<rect x="0" y="396.75" width="54" height="18" class="st1"/>
|
||||
<text x="8.37" y="408.75" class="st2">uPD7220</text> </g>
|
||||
<g id="shape79-200" transform="translate(0.375,-396.375)">
|
||||
<title>Sheet.79</title>
|
||||
<desc>Character / Emulation / Video Services</desc>
|
||||
<rect x="0" y="396.75" width="432" height="18" class="st1"/>
|
||||
<text x="103.64" y="409.95" class="st15">Character / Emulation / Video Services</text> </g>
|
||||
<g id="shape82-203" transform="translate(54.375,-360.375)">
|
||||
<title>Sheet.82</title>
|
||||
<desc>HBIOS</desc>
|
||||
<rect x="0" y="396.75" width="225" height="18" class="st12"/>
|
||||
<text x="99.47" y="408.75" class="st2">HBIOS</text> </g>
|
||||
<g id="shape83-206" transform="translate(297.375,-360.375)">
|
||||
<title>Sheet.83</title>
|
||||
<desc>HARDWARE</desc>
|
||||
<rect x="0" y="396.75" width="135" height="18" class="st12"/>
|
||||
<text x="42.53" y="408.75" class="st2">HARDWARE</text> </g>
|
||||
<g id="shape84-209" transform="translate(189.375,-27.375)">
|
||||
<title>Sheet.84</title>
|
||||
<desc>TMS9918</desc>
|
||||
<rect x="0" y="396.75" width="54" height="18" class="st1"/>
|
||||
<text x="7.65" y="408.75" class="st2">TMS9918</text> </g>
|
||||
<g id="group87-212" transform="translate(395.311,-130.875)">
|
||||
<title>Terminal.87</title>
|
||||
<g id="shape88-213" transform="translate(-391.186,414.75) rotate(-90)">
|
||||
<title>Sheet.88</title>
|
||||
<path d="M0 414.75 L27 414.75 L27 409.08 L0 409.08 L0 414.75 ZM26.25 403.93 L23.44 399.37 L3.53 399.37 L0.75 403.93
|
||||
L26.25 403.93 ZM23.44 399.37 L23.44 391.19 L3.53 391.19 L3.53 399.37 L23.44 399.37 ZM26.25 407.7 L26.25
|
||||
403.93 L0.75 403.93 L0.75 407.7 L26.25 407.7 ZM24.83 407.7 A1223.48 394.162 90 0 1 2.17 407.7 L24.83
|
||||
407.7 Z" class="st8"/>
|
||||
</g>
|
||||
<g id="shape89-215" transform="translate(-395.768,392.25) rotate(-90)">
|
||||
<title>Sheet.89</title>
|
||||
<rect x="0" y="414.641" width="0.75" height="0.109091" class="st9"/>
|
||||
</g>
|
||||
<g id="shape90-217" transform="translate(-391.623,414.188) rotate(-90)">
|
||||
<title>Sheet.90</title>
|
||||
<path d="M1.69 410.93 L2.63 410.93 L2.63 410.39 L1.69 410.39 L1.69 410.93 ZM2.81 410.93 L3.75 410.93 L3.75 410.39
|
||||
L2.81 410.39 L2.81 410.93 ZM3.94 410.93 L4.87 410.93 L4.87 410.39 L3.94 410.39 L3.94 410.93 ZM5.06 410.93
|
||||
L6 410.93 L6 410.39 L5.06 410.39 L5.06 410.93 ZM12.28 410.93 L13.22 410.93 L13.22 410.39 L12.28 410.39
|
||||
L12.28 410.93 ZM13.41 410.93 L14.34 410.93 L14.34 410.39 L13.41 410.39 L13.41 410.93 ZM14.53 410.93
|
||||
L15.47 410.93 L15.47 410.39 L14.53 410.39 L14.53 410.93 ZM15.66 410.93 L16.59 410.93 L16.59 410.39 L15.66
|
||||
410.39 L15.66 410.93 ZM0 412.02 L1.5 412.02 L1.5 411.48 L0 411.48 L0 412.02 ZM1.69 412.02 L2.63 412.02
|
||||
L2.63 411.48 L1.69 411.48 L1.69 412.02 ZM2.81 412.02 L3.75 412.02 L3.75 411.48 L2.81 411.48 L2.81 412.02
|
||||
ZM3.94 412.02 L4.87 412.02 L4.87 411.48 L3.94 411.48 L3.94 412.02 ZM5.06 412.02 L6 412.02 L6 411.48
|
||||
L5.06 411.48 L5.06 412.02 ZM6.19 412.02 L7.12 412.02 L7.12 411.48 L6.19 411.48 L6.19 412.02 ZM7.31 412.02
|
||||
L8.25 412.02 L8.25 411.48 L7.31 411.48 L7.31 412.02 ZM8.44 412.02 L9.37 412.02 L9.37 411.48 L8.44 411.48
|
||||
L8.44 412.02 ZM9.56 412.02 L10.5 412.02 L10.5 411.48 L9.56 411.48 L9.56 412.02 ZM10.69 412.02 L11.62
|
||||
412.02 L11.62 411.48 L10.69 411.48 L10.69 412.02 ZM11.81 412.02 L12.75 412.02 L12.75 411.48 L11.81 411.48
|
||||
L11.81 412.02 ZM12.94 412.02 L13.87 412.02 L13.87 411.48 L12.94 411.48 L12.94 412.02 ZM14.06 412.02
|
||||
L15 412.02 L15 411.48 L14.06 411.48 L14.06 412.02 ZM1.69 412.7 L2.63 412.7 L2.63 412.16 L1.69 412.16
|
||||
L1.69 412.7 ZM2.81 412.7 L3.75 412.7 L3.75 412.16 L2.81 412.16 L2.81 412.7 ZM3.94 412.7 L4.87 412.7
|
||||
L4.87 412.16 L3.94 412.16 L3.94 412.7 ZM5.06 412.7 L6 412.7 L6 412.16 L5.06 412.16 L5.06 412.7 ZM6.19
|
||||
412.7 L7.12 412.7 L7.12 412.16 L6.19 412.16 L6.19 412.7 ZM7.31 412.7 L8.25 412.7 L8.25 412.16 L7.31
|
||||
412.16 L7.31 412.7 ZM8.44 412.7 L9.37 412.7 L9.37 412.16 L8.44 412.16 L8.44 412.7 ZM9.56 412.7 L10.5
|
||||
412.7 L10.5 412.16 L9.56 412.16 L9.56 412.7 ZM10.69 412.7 L11.62 412.7 L11.62 412.16 L10.69 412.16 L10.69
|
||||
412.7 ZM11.81 412.7 L12.75 412.7 L12.75 412.16 L11.81 412.16 L11.81 412.7 ZM12.94 412.7 L13.87 412.7
|
||||
L13.87 412.16 L12.94 412.16 L12.94 412.7 ZM14.06 412.7 L15 412.7 L15 412.16 L14.06 412.16 L14.06 412.7
|
||||
ZM1.69 413.39 L2.63 413.39 L2.63 412.84 L1.69 412.84 L1.69 413.39 ZM2.81 413.39 L3.75 413.39 L3.75 412.84
|
||||
L2.81 412.84 L2.81 413.39 ZM3.94 413.39 L4.87 413.39 L4.87 412.84 L3.94 412.84 L3.94 413.39 ZM5.06 413.39
|
||||
L6 413.39 L6 412.84 L5.06 412.84 L5.06 413.39 ZM6.19 413.39 L7.12 413.39 L7.12 412.84 L6.19 412.84 L6.19
|
||||
413.39 ZM7.31 413.39 L8.25 413.39 L8.25 412.84 L7.31 412.84 L7.31 413.39 ZM8.44 413.39 L9.37 413.39
|
||||
L9.37 412.84 L8.44 412.84 L8.44 413.39 ZM9.56 413.39 L10.5 413.39 L10.5 412.84 L9.56 412.84 L9.56 413.39
|
||||
ZM10.69 413.39 L11.62 413.39 L11.62 412.84 L10.69 412.84 L10.69 413.39 ZM11.81 413.39 L12.75 413.39
|
||||
L12.75 412.84 L11.81 412.84 L11.81 413.39 ZM12.94 413.39 L13.87 413.39 L13.87 412.84 L12.94 412.84 L12.94
|
||||
413.39 ZM14.06 413.39 L15 413.39 L15 412.84 L14.06 412.84 L14.06 413.39 ZM1.69 414.07 L2.63 414.07 L2.63
|
||||
413.52 L1.69 413.52 L1.69 414.07 ZM2.81 414.07 L3.75 414.07 L3.75 413.52 L2.81 413.52 L2.81 414.07 ZM3.94
|
||||
414.07 L4.87 414.07 L4.87 413.52 L3.94 413.52 L3.94 414.07 ZM5.06 414.07 L6 414.07 L6 413.52 L5.06 413.52
|
||||
L5.06 414.07 ZM6.19 414.07 L7.12 414.07 L7.12 413.52 L6.19 413.52 L6.19 414.07 ZM7.31 414.07 L8.25 414.07
|
||||
L8.25 413.52 L7.31 413.52 L7.31 414.07 ZM8.44 414.07 L9.37 414.07 L9.37 413.52 L8.44 413.52 L8.44 414.07
|
||||
ZM9.56 414.07 L10.5 414.07 L10.5 413.52 L9.56 413.52 L9.56 414.07 ZM10.69 414.07 L11.62 414.07 L11.62
|
||||
413.52 L10.69 413.52 L10.69 414.07 ZM11.81 414.07 L12.75 414.07 L12.75 413.52 L11.81 413.52 L11.81 414.07
|
||||
ZM12.94 414.07 L13.87 414.07 L13.87 413.52 L12.94 413.52 L12.94 414.07 ZM3.94 414.75 L11.62 414.75 L11.62
|
||||
414.2 L3.94 414.2 L3.94 414.75 ZM21 414.75 L23.25 414.75 L23.25 414.2 L21 414.2 L21 414.75 ZM23.44 414.75
|
||||
L24.37 414.75 L24.37 414.2 L23.44 414.2 L23.44 414.75 ZM23.44 414.07 L24.37 414.07 L24.37 413.52 L23.44
|
||||
413.52 L23.44 414.07 ZM22.22 414.07 L23.16 414.07 L23.16 413.52 L22.22 413.52 L22.22 414.07 ZM21 414.07
|
||||
L21.94 414.07 L21.94 413.52 L21 413.52 L21 414.07 ZM21 413.39 L21.94 413.39 L21.94 412.84 L21 412.84
|
||||
L21 413.39 ZM21 412.7 L21.94 412.7 L21.94 412.16 L21 412.16 L21 412.7 ZM22.22 412.7 L23.16 412.7 L23.16
|
||||
412.16 L22.22 412.16 L22.22 412.7 ZM23.44 412.7 L24.37 412.7 L24.37 412.16 L23.44 412.16 L23.44 412.7
|
||||
ZM23.44 413.39 L24.37 413.39 L24.37 412.84 L23.44 412.84 L23.44 413.39 ZM22.22 413.39 L23.16 413.39
|
||||
L23.16 412.84 L22.22 412.84 L22.22 413.39 Z" class="st10"/>
|
||||
</g>
|
||||
<g id="shape91-219" transform="translate(-391.623,414.188) rotate(-90)">
|
||||
<title>Sheet.91</title>
|
||||
<path d="M0 410.93 L0.94 410.93 L0.94 410.39 L0 410.39 L0 410.93 ZM0 412.7 L1.5 412.7 L1.5 412.16 L0 412.16 L0 412.7
|
||||
ZM0 413.39 L1.5 413.39 L1.5 412.84 L0 412.84 L0 413.39 ZM0 414.07 L1.5 414.07 L1.5 413.52 L0 413.52
|
||||
L0 414.07 ZM0 414.75 L1.5 414.75 L1.5 414.2 L0 414.2 L0 414.75 ZM1.69 414.75 L2.63 414.75 L2.63 414.2
|
||||
L1.69 414.2 L1.69 414.75 ZM2.81 414.75 L3.75 414.75 L3.75 414.2 L2.81 414.2 L2.81 414.75 ZM11.81 414.75
|
||||
L12.75 414.75 L12.75 414.2 L11.81 414.2 L11.81 414.75 ZM12.94 414.75 L13.87 414.75 L13.87 414.2 L12.94
|
||||
414.2 L12.94 414.75 ZM14.06 414.75 L15 414.75 L15 414.2 L14.06 414.2 L14.06 414.75 ZM15.19 414.75 L16.69
|
||||
414.75 L16.69 414.2 L15.19 414.2 L15.19 414.75 ZM17.25 414.75 L18.19 414.75 L18.19 414.2 L17.25 414.2
|
||||
L17.25 414.75 ZM18.37 414.75 L19.31 414.75 L19.31 414.2 L18.37 414.2 L18.37 414.75 ZM19.5 414.75 L20.44
|
||||
414.75 L20.44 414.2 L19.5 414.2 L19.5 414.75 ZM24.66 414.75 L25.59 414.75 L25.59 413.55 L24.66 413.55
|
||||
L24.66 414.75 ZM24.66 413.44 L25.59 413.44 L25.59 412.16 L24.66 412.16 L24.66 413.44 ZM24.66 412.02
|
||||
L25.59 412.02 L25.59 411.48 L24.66 411.48 L24.66 412.02 ZM23.44 412.02 L24.37 412.02 L24.37 411.48 L23.44
|
||||
411.48 L23.44 412.02 ZM22.22 412.02 L23.16 412.02 L23.16 411.48 L22.22 411.48 L22.22 412.02 ZM21 412.02
|
||||
L21.94 412.02 L21.94 411.48 L21 411.48 L21 412.02 ZM19.5 412.02 L20.44 412.02 L20.44 411.48 L19.5 411.48
|
||||
L19.5 412.02 ZM19.5 412.7 L20.44 412.7 L20.44 412.16 L19.5 412.16 L19.5 412.7 ZM18.37 414.07 L19.31
|
||||
414.07 L19.31 413.52 L18.37 413.52 L18.37 414.07 ZM14.06 414.06 L16.69 414.06 L16.69 413.51 L14.06 413.51
|
||||
L14.06 414.06 ZM15.19 413.37 L16.69 413.37 L16.69 412.17 L15.19 412.17 L15.19 413.37 ZM17.25 412.7 L18.19
|
||||
412.7 L18.19 412.16 L17.25 412.16 L17.25 412.7 ZM18.37 412.7 L19.31 412.7 L19.31 412.16 L18.37 412.16
|
||||
L18.37 412.7 ZM18.37 412.02 L19.31 412.02 L19.31 411.48 L18.37 411.48 L18.37 412.02 ZM15.19 412.02 L16.69
|
||||
412.02 L16.69 411.48 L15.19 411.48 L15.19 412.02 ZM24.19 410.6 L24.94 410.6 L24.94 410.5 L24.19 410.5
|
||||
L24.19 410.6 ZM23.06 410.6 L23.81 410.6 L23.81 410.5 L23.06 410.5 L23.06 410.6 ZM19.5 410.93 L20.44
|
||||
410.93 L20.44 410.39 L19.5 410.39 L19.5 410.93 ZM18.37 410.93 L19.31 410.93 L19.31 410.39 L18.37 410.39
|
||||
L18.37 410.93 ZM17.25 410.93 L18.19 410.93 L18.19 410.39 L17.25 410.39 L17.25 410.93 ZM10.31 410.93
|
||||
L11.25 410.93 L11.25 410.39 L10.31 410.39 L10.31 410.93 ZM9.19 410.93 L10.12 410.93 L10.12 410.39 L9.19
|
||||
410.39 L9.19 410.93 ZM8.06 410.93 L9 410.93 L9 410.39 L8.06 410.39 L8.06 410.93 ZM6.94 410.93 L7.87
|
||||
410.93 L7.87 410.39 L6.94 410.39 L6.94 410.93 ZM17.25 412.02 L18.19 412.02 L18.19 411.48 L17.25 411.48
|
||||
L17.25 412.02 Z" class="st11"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="shape92-221" transform="translate(314.311,-135.375)">
|
||||
<title>Sheet.92</title>
|
||||
<desc>VDU</desc>
|
||||
<rect x="0" y="396.75" width="44.9182" height="18" class="st6"/>
|
||||
<text x="14.96" y="408.15" class="st7">VDU</text> </g>
|
||||
<g id="shape93-224" transform="translate(359.23,-144.375)">
|
||||
<title>Sheet.93</title>
|
||||
<path d="M0 414.75 L26.27 414.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape94-229" transform="translate(359.311,-144.375)">
|
||||
<title>Sheet.94</title>
|
||||
<desc>NTSC</desc>
|
||||
<rect x="0" y="405.75" width="27" height="9" class="st12"/>
|
||||
<text x="7.03" y="412.05" class="st14">NTSC</text> </g>
|
||||
<g id="shape96-232" transform="translate(243.375,-90.375)">
|
||||
<title>Sheet.96</title>
|
||||
<path d="M0 414.75 L4.05 414.75 A4.05 4.05 -180 0 0 8.1 410.7 L8.1 365.25 A4.5 4.5 0 0 1 12.6 360.75 L61.13 360.75"
|
||||
class="st4"/>
|
||||
</g>
|
||||
<g id="shape7-237" transform="translate(243.375,-72.375)">
|
||||
<title>Sheet.7</title>
|
||||
<path d="M0 414.75 L13.5 414.75 A4.5 4.5 -180 0 0 18 410.25 L18 383.25 A4.5 4.5 0 0 1 22.5 378.75 L62.19 378.75"
|
||||
class="st4"/>
|
||||
</g>
|
||||
<g id="shape17-242" transform="translate(243.375,-54.375)">
|
||||
<title>Sheet.17</title>
|
||||
<path d="M0 414.75 L22.5 414.75 A4.5 4.5 -180 0 0 27 410.25 L27 401.25 A4.5 4.5 0 0 1 31.5 396.75 L62.19 396.75"
|
||||
class="st4"/>
|
||||
</g>
|
||||
<g id="shape3-247" transform="translate(162.375,-306.375)">
|
||||
<title>Sheet.3</title>
|
||||
<path d="M0 414.75 L31.5 414.75 A4.5 4.5 -180 0 0 36 410.25 L36 401.25 A4.5 4.5 0 0 1 40.5 396.75 L143.19 396.75"
|
||||
class="st4"/>
|
||||
</g>
|
||||
<g id="shape4-252" transform="translate(162.375,-270.375)">
|
||||
<title>Sheet.4</title>
|
||||
<path d="M0 396.75 L31.5 396.75 A4.5 4.5 0 0 1 36 401.25 L36 410.25 A4.5 4.5 -180 0 0 40.5 414.75 L142.13 414.75"
|
||||
class="st4"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 65 KiB |
|
Before Width: | Height: | Size: 4.5 KiB After Width: | Height: | Size: 4.0 KiB |
@@ -1,15 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by Microsoft Visio, SVG Export WBW.svg Page-1 -->
|
||||
<!-- Generated by Microsoft Visio, SVG Export Logo.svg Page-1 -->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events"
|
||||
xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="8.5in" height="11in" viewBox="0 0 612 792"
|
||||
xml:space="preserve" color-interpolation-filters="sRGB" class="st3">
|
||||
<v:documentProperties v:langID="1033" v:viewMarkup="false">
|
||||
<v:userDefs>
|
||||
<v:ud v:nameU="msvNoAutoConnect" v:val="VT0(1):26"/>
|
||||
</v:userDefs>
|
||||
</v:documentProperties>
|
||||
|
||||
width="3.76042in" height="1.26042in" viewBox="0 0 270.75 90.75" xml:space="preserve" color-interpolation-filters="sRGB"
|
||||
class="st3">
|
||||
<style type="text/css">
|
||||
<![CDATA[
|
||||
.st1 {fill:#4bacc6;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0;stroke-width:0.75}
|
||||
@@ -18,52 +12,51 @@
|
||||
]]>
|
||||
</style>
|
||||
|
||||
<g v:mID="0" v:index="1" v:groupContext="foregroundPage">
|
||||
<g>
|
||||
<title>Page-1</title>
|
||||
<v:pageProperties v:drawingScale="1" v:pageScale="1" v:drawingUnits="19" v:shadowOffsetX="9" v:shadowOffsetY="-9"/>
|
||||
<g id="shape34-1" v:mID="34" v:groupContext="shape" transform="translate(18,-684)">
|
||||
<g id="shape34-1" transform="translate(0.375,-0.375)">
|
||||
<title>Sheet.34</title>
|
||||
<rect x="0" y="702" width="18" height="90" rx="9" ry="9" class="st1"/>
|
||||
<rect x="0" y="0.75" width="18" height="90" rx="9" ry="9" class="st1"/>
|
||||
</g>
|
||||
<g id="shape35-3" v:mID="35" v:groupContext="shape" transform="translate(54,-684)">
|
||||
<g id="shape35-3" transform="translate(36.375,-0.375)">
|
||||
<title>Sheet.35</title>
|
||||
<rect x="0" y="738" width="18" height="54" rx="9" ry="9" class="st1"/>
|
||||
<rect x="0" y="36.75" width="18" height="54" rx="9" ry="9" class="st1"/>
|
||||
</g>
|
||||
<g id="shape36-5" v:mID="36" v:groupContext="shape" transform="translate(90,-684)">
|
||||
<g id="shape36-5" transform="translate(72.375,-0.375)">
|
||||
<title>Sheet.36</title>
|
||||
<rect x="0" y="702" width="18" height="90" rx="9" ry="9" class="st1"/>
|
||||
<rect x="0" y="0.75" width="18" height="90" rx="9" ry="9" class="st1"/>
|
||||
</g>
|
||||
<g id="shape38-7" v:mID="38" v:groupContext="shape" transform="translate(234,-684)">
|
||||
<g id="shape38-7" transform="translate(216.375,-0.375)">
|
||||
<title>Sheet.38</title>
|
||||
<rect x="0" y="738" width="18" height="54" rx="9" ry="9" class="st1"/>
|
||||
<rect x="0" y="36.75" width="18" height="54" rx="9" ry="9" class="st1"/>
|
||||
</g>
|
||||
<g id="shape39-9" v:mID="39" v:groupContext="shape" transform="translate(270,-684)">
|
||||
<g id="shape39-9" transform="translate(252.375,-0.375)">
|
||||
<title>Sheet.39</title>
|
||||
<rect x="0" y="702" width="18" height="90" rx="9" ry="9" class="st1"/>
|
||||
<rect x="0" y="0.75" width="18" height="90" rx="9" ry="9" class="st1"/>
|
||||
</g>
|
||||
<g id="shape44-11" v:mID="44" v:groupContext="shape" transform="translate(198,-684)">
|
||||
<g id="shape44-11" transform="translate(180.375,-0.375)">
|
||||
<title>Sheet.44</title>
|
||||
<rect x="0" y="702" width="18" height="90" rx="9" ry="9" class="st1"/>
|
||||
<rect x="0" y="0.75" width="18" height="90" rx="9" ry="9" class="st1"/>
|
||||
</g>
|
||||
<g id="shape48-13" v:mID="48" v:groupContext="shape" transform="translate(126,-756)">
|
||||
<g id="shape48-13" transform="translate(108.375,-72.375)">
|
||||
<title>Sheet.48</title>
|
||||
<rect x="0" y="774" width="36" height="18" rx="9" ry="9" class="st1"/>
|
||||
<rect x="0" y="72.75" width="36" height="18" rx="9" ry="9" class="st1"/>
|
||||
</g>
|
||||
<g id="shape49-15" v:mID="49" v:groupContext="shape" transform="translate(126,-720)">
|
||||
<g id="shape49-15" transform="translate(108.375,-36.375)">
|
||||
<title>Sheet.49</title>
|
||||
<rect x="0" y="774" width="36" height="18" rx="9" ry="9" class="st1"/>
|
||||
<rect x="0" y="72.75" width="36" height="18" rx="9" ry="9" class="st1"/>
|
||||
</g>
|
||||
<g id="shape50-17" v:mID="50" v:groupContext="shape" transform="translate(126,-684)">
|
||||
<g id="shape50-17" transform="translate(108.375,-0.375)">
|
||||
<title>Sheet.50</title>
|
||||
<rect x="0" y="774" width="36" height="18" rx="9" ry="9" class="st1"/>
|
||||
<rect x="0" y="72.75" width="36" height="18" rx="9" ry="9" class="st1"/>
|
||||
</g>
|
||||
<g id="shape52-19" v:mID="52" v:groupContext="shape" transform="translate(153,-729)">
|
||||
<g id="shape52-19" transform="translate(135.375,-45.375)">
|
||||
<title>Sheet.52</title>
|
||||
<path d="M-0 756 A18 18 0 0 1 18 774 A18 18 0 0 1 -0 792" class="st2"/>
|
||||
<path d="M-0 54.75 A18 18 0 0 1 18 72.75 A18 18 0 0 1 -0 90.75" class="st2"/>
|
||||
</g>
|
||||
<g id="shape53-22" v:mID="53" v:groupContext="shape" transform="translate(153,-693)">
|
||||
<g id="shape53-22" transform="translate(135.375,-9.375)">
|
||||
<title>Sheet.53</title>
|
||||
<path d="M-0 756 A18 18 0 0 1 18 774 A18 18 0 0 1 -0 792" class="st2"/>
|
||||
<path d="M-0 54.75 A18 18 0 0 1 18 72.75 A18 18 0 0 1 -0 90.75" class="st2"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 14 KiB |
369
Source/Doc/Graphics/Panel.svg
Normal file
@@ -0,0 +1,369 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by Microsoft Visio, SVG Export Panel.svg Page-1 -->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events"
|
||||
width="4.51042in" height="2.51042in" viewBox="0 0 324.75 180.75" xml:space="preserve" color-interpolation-filters="sRGB"
|
||||
class="st11">
|
||||
<style type="text/css">
|
||||
<![CDATA[
|
||||
.st1 {fill:#ff0000;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st2 {fill:#7f7f7f;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st3 {fill:#000000;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st4 {stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}
|
||||
.st5 {fill:none;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st6 {fill:#000000;font-family:Calibri;font-size:1.00001em}
|
||||
.st7 {stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st8 {fill:#000000;font-family:Calibri;font-size:0.666664em}
|
||||
.st9 {fill:#000000;font-family:Calibri;font-size:0.499992em}
|
||||
.st10 {fill:none;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st11 {fill:none;fill-rule:evenodd;font-size:12px;overflow:visible;stroke-linecap:square;stroke-miterlimit:3}
|
||||
]]>
|
||||
</style>
|
||||
|
||||
<g>
|
||||
<title>Page-1</title>
|
||||
<g id="shape1-1" transform="translate(27.375,-117.375)">
|
||||
<title>Sheet.1</title>
|
||||
<ellipse cx="9" cy="171.75" rx="9" ry="9.00001" class="st1"/>
|
||||
</g>
|
||||
<g id="shape2-3" transform="translate(99.375,-27.375)">
|
||||
<title>Sheet.2</title>
|
||||
<ellipse cx="9" cy="171.75" rx="9" ry="9.00001" class="st2"/>
|
||||
</g>
|
||||
<g id="shape3-5" transform="translate(106.125,-18.375)">
|
||||
<title>Sheet.3</title>
|
||||
<rect x="0" y="160.5" width="4.5" height="20.25" rx="2.25" ry="2.25" class="st3"/>
|
||||
</g>
|
||||
<g id="shape8-7" transform="translate(63.375,-117.375)">
|
||||
<title>Sheet.8</title>
|
||||
<ellipse cx="9" cy="171.75" rx="9" ry="9.00001" class="st1"/>
|
||||
</g>
|
||||
<g id="shape9-9" transform="translate(99.375,-117.375)">
|
||||
<title>Sheet.9</title>
|
||||
<ellipse cx="9" cy="171.75" rx="9" ry="9.00001" class="st1"/>
|
||||
</g>
|
||||
<g id="shape10-11" transform="translate(135.375,-117.375)">
|
||||
<title>Sheet.10</title>
|
||||
<ellipse cx="9" cy="171.75" rx="9" ry="9.00001" class="st1"/>
|
||||
</g>
|
||||
<g id="shape11-13" transform="translate(171.375,-117.375)">
|
||||
<title>Sheet.11</title>
|
||||
<ellipse cx="9" cy="171.75" rx="9" ry="9.00001" class="st1"/>
|
||||
</g>
|
||||
<g id="shape12-15" transform="translate(207.375,-117.375)">
|
||||
<title>Sheet.12</title>
|
||||
<ellipse cx="9" cy="171.75" rx="9" ry="9.00001" class="st1"/>
|
||||
</g>
|
||||
<g id="shape13-17" transform="translate(243.375,-117.375)">
|
||||
<title>Sheet.13</title>
|
||||
<ellipse cx="9" cy="171.75" rx="9" ry="9.00001" class="st1"/>
|
||||
</g>
|
||||
<g id="shape14-19" transform="translate(279.375,-117.375)">
|
||||
<title>Sheet.14</title>
|
||||
<ellipse cx="9" cy="171.75" rx="9" ry="9.00001" class="st1"/>
|
||||
</g>
|
||||
<g id="shape18-21" transform="translate(27.375,-27.375)">
|
||||
<title>Sheet.18</title>
|
||||
<ellipse cx="9" cy="171.75" rx="9" ry="9.00001" class="st2"/>
|
||||
</g>
|
||||
<g id="shape19-23" transform="translate(34.125,-18.375)">
|
||||
<title>Sheet.19</title>
|
||||
<rect x="0" y="160.5" width="4.5" height="20.25" rx="2.25" ry="2.25" class="st3"/>
|
||||
</g>
|
||||
<g id="shape20-25" transform="translate(63.375,-27.375)">
|
||||
<title>Sheet.20</title>
|
||||
<ellipse cx="9" cy="171.75" rx="9" ry="9.00001" class="st2"/>
|
||||
</g>
|
||||
<g id="shape21-27" transform="translate(70.125,-18.375)">
|
||||
<title>Sheet.21</title>
|
||||
<rect x="0" y="160.5" width="4.5" height="20.25" rx="2.25" ry="2.25" class="st3"/>
|
||||
</g>
|
||||
<g id="shape22-29" transform="translate(135.375,-27.375)">
|
||||
<title>Sheet.22</title>
|
||||
<ellipse cx="9" cy="171.75" rx="9" ry="9.00001" class="st2"/>
|
||||
</g>
|
||||
<g id="shape23-31" transform="translate(142.125,-18.375)">
|
||||
<title>Sheet.23</title>
|
||||
<rect x="0" y="160.5" width="4.5" height="20.25" rx="2.25" ry="2.25" class="st3"/>
|
||||
</g>
|
||||
<g id="shape24-33" transform="translate(171.375,-27.375)">
|
||||
<title>Sheet.24</title>
|
||||
<ellipse cx="9" cy="171.75" rx="9" ry="9.00001" class="st2"/>
|
||||
</g>
|
||||
<g id="shape25-35" transform="translate(178.125,-18.375)">
|
||||
<title>Sheet.25</title>
|
||||
<rect x="0" y="160.5" width="4.5" height="20.25" rx="2.25" ry="2.25" class="st3"/>
|
||||
</g>
|
||||
<g id="shape26-37" transform="translate(207.375,-27.375)">
|
||||
<title>Sheet.26</title>
|
||||
<ellipse cx="9" cy="171.75" rx="9" ry="9.00001" class="st2"/>
|
||||
</g>
|
||||
<g id="shape27-39" transform="translate(214.125,-18.375)">
|
||||
<title>Sheet.27</title>
|
||||
<rect x="0" y="160.5" width="4.5" height="20.25" rx="2.25" ry="2.25" class="st3"/>
|
||||
</g>
|
||||
<g id="shape28-41" transform="translate(243.375,-27.375)">
|
||||
<title>Sheet.28</title>
|
||||
<ellipse cx="9" cy="171.75" rx="9" ry="9.00001" class="st2"/>
|
||||
</g>
|
||||
<g id="shape29-43" transform="translate(250.125,-18.375)">
|
||||
<title>Sheet.29</title>
|
||||
<rect x="0" y="160.5" width="4.5" height="20.25" rx="2.25" ry="2.25" class="st3"/>
|
||||
</g>
|
||||
<g id="shape30-45" transform="translate(279.375,-27.375)">
|
||||
<title>Sheet.30</title>
|
||||
<ellipse cx="9" cy="171.75" rx="9" ry="9.00001" class="st2"/>
|
||||
</g>
|
||||
<g id="shape31-47" transform="translate(286.125,-18.375)">
|
||||
<title>Sheet.31</title>
|
||||
<rect x="0" y="160.5" width="4.5" height="20.25" rx="2.25" ry="2.25" class="st3"/>
|
||||
</g>
|
||||
<g id="shape32-49" transform="translate(18.375,-153.375)">
|
||||
<title>Sheet.32</title>
|
||||
<path d="M0 180.75 L144 180.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape33-52" transform="translate(199.125,18.375) rotate(90)">
|
||||
<title>Sheet.33</title>
|
||||
<path d="M0 180.75 L18 180.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape34-55" transform="translate(343.125,18.375) rotate(90)">
|
||||
<title>Sheet.34</title>
|
||||
<path d="M0 180.75 L18 180.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape35-58" transform="translate(27.375,-135.375)">
|
||||
<title>Sheet.35</title>
|
||||
<desc>8</desc>
|
||||
<rect x="0" y="162.75" width="18" height="18" class="st5"/>
|
||||
<text x="5.96" y="175.35" class="st6">8</text> </g>
|
||||
<g id="shape36-61" transform="translate(63.375,-135.375)">
|
||||
<title>Sheet.36</title>
|
||||
<desc>4</desc>
|
||||
<rect x="0" y="162.75" width="18" height="18" class="st5"/>
|
||||
<text x="5.96" y="175.35" class="st6">4</text> </g>
|
||||
<g id="shape37-64" transform="translate(99.375,-135.375)">
|
||||
<title>Sheet.37</title>
|
||||
<desc>2</desc>
|
||||
<rect x="0" y="162.75" width="18" height="18" class="st5"/>
|
||||
<text x="5.96" y="175.35" class="st6">2</text> </g>
|
||||
<g id="shape38-67" transform="translate(135.375,-135.375)">
|
||||
<title>Sheet.38</title>
|
||||
<desc>1</desc>
|
||||
<rect x="0" y="162.75" width="18" height="18" class="st5"/>
|
||||
<text x="5.96" y="175.35" class="st6">1</text> </g>
|
||||
<g id="shape39-70" transform="translate(18.375,-153.375)">
|
||||
<title>Sheet.39</title>
|
||||
<desc>High</desc>
|
||||
<rect x="0" y="162.75" width="144" height="18" class="st5"/>
|
||||
<text x="60.91" y="175.35" class="st6">High</text> </g>
|
||||
<g id="shape40-73" transform="translate(162.375,-153.375)">
|
||||
<title>Sheet.40</title>
|
||||
<path d="M0 180.75 L144 180.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape41-76" transform="translate(343.125,18.375) rotate(90)">
|
||||
<title>Sheet.41</title>
|
||||
<path d="M0 180.75 L18 180.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape42-79" transform="translate(487.125,18.375) rotate(90)">
|
||||
<title>Sheet.42</title>
|
||||
<path d="M0 180.75 L18 180.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape43-82" transform="translate(171.375,-135.375)">
|
||||
<title>Sheet.43</title>
|
||||
<desc>8</desc>
|
||||
<rect x="0" y="162.75" width="18" height="18" class="st5"/>
|
||||
<text x="5.96" y="175.35" class="st6">8</text> </g>
|
||||
<g id="shape44-85" transform="translate(207.375,-135.375)">
|
||||
<title>Sheet.44</title>
|
||||
<desc>4</desc>
|
||||
<rect x="0" y="162.75" width="18" height="18" class="st5"/>
|
||||
<text x="5.96" y="175.35" class="st6">4</text> </g>
|
||||
<g id="shape45-88" transform="translate(243.375,-135.375)">
|
||||
<title>Sheet.45</title>
|
||||
<desc>2</desc>
|
||||
<rect x="0" y="162.75" width="18" height="18" class="st5"/>
|
||||
<text x="5.96" y="175.35" class="st6">2</text> </g>
|
||||
<g id="shape46-91" transform="translate(279.375,-135.375)">
|
||||
<title>Sheet.46</title>
|
||||
<desc>1</desc>
|
||||
<rect x="0" y="162.75" width="18" height="18" class="st5"/>
|
||||
<text x="5.96" y="175.35" class="st6">1</text> </g>
|
||||
<g id="shape47-94" transform="translate(162.375,-153.375)">
|
||||
<title>Sheet.47</title>
|
||||
<desc>Low</desc>
|
||||
<rect x="0" y="162.75" width="144" height="18" class="st5"/>
|
||||
<text x="62.02" y="175.35" class="st6">Low</text> </g>
|
||||
<g id="shape48-97" transform="translate(27.375,-99.3749)">
|
||||
<title>Sheet.48</title>
|
||||
<desc>7</desc>
|
||||
<rect x="0" y="162.75" width="18" height="18" class="st5"/>
|
||||
<text x="5.96" y="175.35" class="st6">7</text> </g>
|
||||
<g id="shape49-100" transform="translate(63.375,-99.3749)">
|
||||
<title>Sheet.49</title>
|
||||
<desc>6</desc>
|
||||
<rect x="0" y="162.75" width="18" height="18" class="st5"/>
|
||||
<text x="5.96" y="175.35" class="st6">6</text> </g>
|
||||
<g id="shape50-103" transform="translate(99.375,-99.375)">
|
||||
<title>Sheet.50</title>
|
||||
<desc>5</desc>
|
||||
<rect x="0" y="162.75" width="18" height="18" class="st5"/>
|
||||
<text x="5.96" y="175.35" class="st6">5</text> </g>
|
||||
<g id="shape52-106" transform="translate(135.375,-99.375)">
|
||||
<title>Sheet.52</title>
|
||||
<desc>4</desc>
|
||||
<rect x="0" y="162.75" width="18" height="18" class="st5"/>
|
||||
<text x="5.96" y="175.35" class="st6">4</text> </g>
|
||||
<g id="shape53-109" transform="translate(171.375,-99.375)">
|
||||
<title>Sheet.53</title>
|
||||
<desc>3</desc>
|
||||
<rect x="0" y="162.75" width="18" height="18" class="st5"/>
|
||||
<text x="5.96" y="175.35" class="st6">3</text> </g>
|
||||
<g id="shape54-112" transform="translate(207.375,-99.375)">
|
||||
<title>Sheet.54</title>
|
||||
<desc>2</desc>
|
||||
<rect x="0" y="162.75" width="18" height="18" class="st5"/>
|
||||
<text x="5.96" y="175.35" class="st6">2</text> </g>
|
||||
<g id="shape55-115" transform="translate(243.375,-99.375)">
|
||||
<title>Sheet.55</title>
|
||||
<desc>1</desc>
|
||||
<rect x="0" y="162.75" width="18" height="18" class="st5"/>
|
||||
<text x="5.96" y="175.35" class="st6">1</text> </g>
|
||||
<g id="shape56-118" transform="translate(279.375,-99.375)">
|
||||
<title>Sheet.56</title>
|
||||
<desc>0</desc>
|
||||
<rect x="0" y="162.75" width="18" height="18" class="st5"/>
|
||||
<text x="5.96" y="175.35" class="st6">0</text> </g>
|
||||
<g id="shape57-121" transform="translate(94.875,-58.875)">
|
||||
<title>Sheet.57</title>
|
||||
<path d="M0 180.75 L27 180.75" class="st7"/>
|
||||
</g>
|
||||
<g id="shape58-124" transform="translate(90.375,-58.875)">
|
||||
<title>Sheet.58</title>
|
||||
<desc>Auto</desc>
|
||||
<rect x="0" y="171.75" width="36" height="9.00001" class="st5"/>
|
||||
<text x="10.13" y="178.65" class="st8">Auto</text> </g>
|
||||
<g id="shape59-127" transform="translate(90.375,-49.875)">
|
||||
<title>Sheet.59</title>
|
||||
<desc>Menu</desc>
|
||||
<rect x="0" y="171.75" width="36" height="9.00001" class="st5"/>
|
||||
<text x="8.39" y="178.65" class="st8">Menu</text> </g>
|
||||
<g id="shape61-130" transform="translate(22.875,-58.875)">
|
||||
<title>Sheet.61</title>
|
||||
<path d="M0 180.75 L27 180.75" class="st7"/>
|
||||
</g>
|
||||
<g id="shape62-133" transform="translate(18.375,-58.875)">
|
||||
<title>Sheet.62</title>
|
||||
<desc>CRT</desc>
|
||||
<rect x="0" y="171.75" width="36" height="9.00001" class="st5"/>
|
||||
<text x="11.75" y="178.65" class="st8">CRT</text> </g>
|
||||
<g id="shape63-136" transform="translate(18.375,-49.875)">
|
||||
<title>Sheet.63</title>
|
||||
<desc>Serial</desc>
|
||||
<rect x="0" y="171.75" width="36" height="9.00001" class="st5"/>
|
||||
<text x="9.03" y="178.65" class="st8">Serial</text> </g>
|
||||
<g id="shape64-139" transform="translate(58.875,-58.875)">
|
||||
<title>Sheet.64</title>
|
||||
<path d="M0 180.75 L27 180.75" class="st7"/>
|
||||
</g>
|
||||
<g id="shape65-142" transform="translate(54.375,-58.875)">
|
||||
<title>Sheet.65</title>
|
||||
<desc>Sec</desc>
|
||||
<rect x="0" y="171.75" width="36" height="9.00001" class="st5"/>
|
||||
<text x="12.48" y="178.65" class="st8">Sec</text> </g>
|
||||
<g id="shape66-145" transform="translate(54.375,-49.875)">
|
||||
<title>Sheet.66</title>
|
||||
<desc>Pri</desc>
|
||||
<rect x="0" y="171.75" width="36" height="9.00001" class="st5"/>
|
||||
<text x="13.62" y="178.65" class="st8">Pri</text> </g>
|
||||
<g id="shape67-148" transform="translate(130.875,-58.875)">
|
||||
<title>Sheet.67</title>
|
||||
<path d="M0 180.75 L27 180.75" class="st7"/>
|
||||
</g>
|
||||
<g id="shape68-151" transform="translate(126.375,-58.875)">
|
||||
<title>Sheet.68</title>
|
||||
<desc>Disk</desc>
|
||||
<rect x="0" y="171.75" width="36" height="9.00001" class="st5"/>
|
||||
<text x="11.24" y="178.65" class="st8">Disk</text> </g>
|
||||
<g id="shape69-154" transform="translate(126.375,-49.875)">
|
||||
<title>Sheet.69</title>
|
||||
<desc>ROM</desc>
|
||||
<rect x="0" y="171.75" width="36" height="9.00001" class="st5"/>
|
||||
<text x="9.76" y="178.65" class="st8">ROM</text> </g>
|
||||
<g id="shape70-157" transform="translate(166.875,-58.875)">
|
||||
<title>Sheet.70</title>
|
||||
<path d="M0 180.75 L27 180.75" class="st7"/>
|
||||
</g>
|
||||
<g id="shape71-160" transform="translate(162.375,-58.875)">
|
||||
<title>Sheet.71</title>
|
||||
<desc>Floppy</desc>
|
||||
<rect x="0" y="171.75" width="36" height="9.00001" class="st5"/>
|
||||
<text x="7.12" y="178.65" class="st8">Floppy</text> </g>
|
||||
<g id="shape72-163" transform="translate(162.375,-49.875)">
|
||||
<title>Sheet.72</title>
|
||||
<desc>Hard</desc>
|
||||
<rect x="0" y="171.75" width="36" height="9.00001" class="st5"/>
|
||||
<text x="10.1" y="178.65" class="st8">Hard</text> </g>
|
||||
<g id="shape73-166" transform="translate(202.875,-58.875)">
|
||||
<title>Sheet.73</title>
|
||||
<path d="M0 180.75 L99 180.75" class="st7"/>
|
||||
</g>
|
||||
<g id="shape74-169" transform="translate(198.375,-49.875)">
|
||||
<title>Sheet.74</title>
|
||||
<desc>4</desc>
|
||||
<rect x="0" y="171.75" width="36" height="9.00001" class="st5"/>
|
||||
<text x="15.97" y="178.65" class="st8">4</text> </g>
|
||||
<g id="shape75-172" transform="translate(234.375,-49.875)">
|
||||
<title>Sheet.75</title>
|
||||
<desc>2</desc>
|
||||
<rect x="0" y="171.75" width="36" height="9.00001" class="st5"/>
|
||||
<text x="15.97" y="178.65" class="st8">2</text> </g>
|
||||
<g id="shape76-175" transform="translate(270.375,-49.875)">
|
||||
<title>Sheet.76</title>
|
||||
<desc>1</desc>
|
||||
<rect x="0" y="171.75" width="36" height="9.00001" class="st5"/>
|
||||
<text x="15.97" y="178.65" class="st8">1</text> </g>
|
||||
<g id="shape78-178" transform="translate(198.375,-58.875)">
|
||||
<title>Sheet.78</title>
|
||||
<desc>ROM App / Boot Slice</desc>
|
||||
<rect x="0" y="171.75" width="108" height="9.00001" class="st5"/>
|
||||
<text x="18.99" y="178.65" class="st8">ROM App / Boot Slice</text> </g>
|
||||
<g id="shape79-181" transform="translate(18.375,-0.375)">
|
||||
<title>Sheet.79</title>
|
||||
<desc>ROM Apps: 0=Monitor 1=BASIC 2=Forth 3=Game 4=CP/M 2.2 5=Z-Sys...</desc>
|
||||
<rect x="0" y="171.75" width="288" height="9" class="st5"/>
|
||||
<text x="19.9" y="178.05" class="st9">ROM Apps: 0=Monitor 1=BASIC 2=Forth 3=Game 4=CP/M 2.2 5=Z-System 6=Net Boot 7=User</text> </g>
|
||||
<g id="shape80-184" transform="translate(0.375,-0.375)">
|
||||
<title>Sheet.80</title>
|
||||
<rect x="0" y="0.750005" width="324" height="180" class="st10"/>
|
||||
</g>
|
||||
<g id="shape81-186" transform="translate(18.375,-72.375)">
|
||||
<title>Sheet.81</title>
|
||||
<path d="M0 180.75 L144 180.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape82-189" transform="translate(199.125,99.375) rotate(90)">
|
||||
<title>Sheet.82</title>
|
||||
<path d="M0 180.75 L18 180.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape84-192" transform="translate(18.375,-72.375)">
|
||||
<title>Sheet.84</title>
|
||||
<desc>Console</desc>
|
||||
<rect x="0" y="162.75" width="72" height="18" class="st5"/>
|
||||
<text x="16.61" y="175.35" class="st6">Console</text> </g>
|
||||
<g id="shape85-195" transform="translate(162.375,-72.375)">
|
||||
<title>Sheet.85</title>
|
||||
<path d="M0 180.75 L144 180.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape86-198" transform="translate(271.125,99.375) rotate(90)">
|
||||
<title>Sheet.86</title>
|
||||
<path d="M0 180.75 L18 180.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape87-201" transform="translate(487.125,99.375) rotate(90)">
|
||||
<title>Sheet.87</title>
|
||||
<path d="M0 180.75 L18 180.75" class="st4"/>
|
||||
</g>
|
||||
<g id="shape88-204" transform="translate(90.375,-72.375)">
|
||||
<title>Sheet.88</title>
|
||||
<desc>Boot</desc>
|
||||
<rect x="0" y="162.75" width="216" height="18" class="st5"/>
|
||||
<text x="96.4" y="175.35" class="st6">Boot</text> </g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 16 KiB |
BIN
Source/Doc/Graphics/hd1k.pdf
Normal file
BIN
Source/Doc/Graphics/hd1k.png
Normal file
|
After Width: | Height: | Size: 34 KiB |
1088
Source/Doc/Graphics/hd1k.svg
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
Source/Doc/Graphics/hd512.pdf
Normal file
BIN
Source/Doc/Graphics/hd512.png
Normal file
|
After Width: | Height: | Size: 31 KiB |
236
Source/Doc/Graphics/hd512.svg
Normal file
@@ -0,0 +1,236 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by Microsoft Visio, SVG Export hd512.svg Page-1 -->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events"
|
||||
width="6.51389in" height="3.90694in" viewBox="0 0 469 281.3" xml:space="preserve" color-interpolation-filters="sRGB"
|
||||
class="st16">
|
||||
<style type="text/css">
|
||||
<![CDATA[
|
||||
.st1 {fill:#ffffff;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:1}
|
||||
.st2 {fill:#000000;font-family:Calibri;font-size:1.5em}
|
||||
.st3 {fill:#ffffff;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.24}
|
||||
.st4 {fill:#000000;font-family:Calibri;font-size:0.666664em}
|
||||
.st5 {fill:none;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:1}
|
||||
.st6 {fill:#d8d8d8;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:1}
|
||||
.st7 {fill:none;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st8 {marker-start:url(#mrkr4-40);stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.24}
|
||||
.st9 {fill:#000000;fill-opacity:1;stroke:#000000;stroke-opacity:1;stroke-width:0.08695652173913}
|
||||
.st10 {fill:#000000;font-family:Calibri;font-size:0.499992em}
|
||||
.st11 {marker-end:url(#mrkr4-58);stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.24}
|
||||
.st12 {stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
|
||||
.st13 {marker-end:url(#mrkr9-69);marker-start:url(#mrkr4-40);stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.24}
|
||||
.st14 {marker-end:url(#mrkr4-114);stroke:#000000;stroke-dasharray:1.75,1.25;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.25}
|
||||
.st15 {fill:#000000;fill-opacity:1;stroke:#000000;stroke-opacity:1;stroke-width:0.090252707581227}
|
||||
.st16 {fill:none;fill-rule:evenodd;font-size:12px;overflow:visible;stroke-linecap:square;stroke-miterlimit:3}
|
||||
]]>
|
||||
</style>
|
||||
|
||||
<defs id="Markers">
|
||||
<g id="lend4">
|
||||
<path d="M 2 1 L 0 0 L 2 -1 L 2 1 " style="stroke:none"/>
|
||||
</g>
|
||||
<marker id="mrkr4-40" class="st9" refX="21.5" orient="auto" markerUnits="strokeWidth" overflow="visible">
|
||||
<use xlink:href="#lend4" transform="scale(11.5) "/>
|
||||
</marker>
|
||||
<marker id="mrkr4-58" class="st9" refX="-23" orient="auto" markerUnits="strokeWidth" overflow="visible">
|
||||
<use xlink:href="#lend4" transform="scale(-11.5,-11.5) "/>
|
||||
</marker>
|
||||
<g id="lend9">
|
||||
<path d="M 1 -1 L -1 1 " style="stroke-linecap:round;stroke-linejoin:round;fill:none"/>
|
||||
</g>
|
||||
<marker id="mrkr9-69" class="st9" orient="auto" markerUnits="strokeWidth" overflow="visible">
|
||||
<use xlink:href="#lend9" transform="scale(-11.5,-11.5) "/>
|
||||
</marker>
|
||||
<marker id="mrkr4-114" class="st15" refX="-22.16" orient="auto" markerUnits="strokeWidth" overflow="visible">
|
||||
<use xlink:href="#lend4" transform="scale(-11.08,-11.08) "/>
|
||||
</marker>
|
||||
</defs>
|
||||
<g>
|
||||
<title>Page-1</title>
|
||||
<g id="shape69-1" transform="translate(0.5,-252)">
|
||||
<title>Sheet.69</title>
|
||||
<desc>RomWBW Hard Disk Anatomy (Classic / hd512)</desc>
|
||||
<rect x="0" y="252.5" width="468" height="28.8" class="st1"/>
|
||||
<text x="61.63" y="272.3" class="st2">RomWBW Hard Disk Anatomy (Classic / hd512)</text> </g>
|
||||
<g id="shape259-4" transform="translate(50.9,-151.2)">
|
||||
<title>Sheet.259</title>
|
||||
<desc>0</desc>
|
||||
<rect x="0" y="266.9" width="14.4" height="14.4" class="st3"/>
|
||||
<text x="5.17" y="276.5" class="st4">0</text> </g>
|
||||
<g id="shape260-7" transform="translate(65.3,-151.2)">
|
||||
<title>Sheet.260</title>
|
||||
<desc>1</desc>
|
||||
<rect x="0" y="266.9" width="14.4" height="14.4" class="st3"/>
|
||||
<text x="5.17" y="276.5" class="st4">1</text> </g>
|
||||
<g id="shape261-10" transform="translate(79.7,-151.2)">
|
||||
<title>Sheet.261</title>
|
||||
<desc>2</desc>
|
||||
<rect x="0" y="266.9" width="14.4" height="14.4" class="st3"/>
|
||||
<text x="5.17" y="276.5" class="st4">2</text> </g>
|
||||
<g id="shape262-13" transform="translate(94.1,-151.2)">
|
||||
<title>Sheet.262</title>
|
||||
<desc>3</desc>
|
||||
<rect x="0" y="266.9" width="14.4" height="14.4" class="st3"/>
|
||||
<text x="5.17" y="276.5" class="st4">3</text> </g>
|
||||
<g id="shape263-16" transform="translate(108.5,-151.2)">
|
||||
<title>Sheet.263</title>
|
||||
<desc>. . .</desc>
|
||||
<rect x="0" y="266.9" width="72" height="14.4" class="st3"/>
|
||||
<text x="27.54" y="276.5" class="st4">. . .</text> </g>
|
||||
<g id="shape264-19" transform="translate(180.5,-151.2)">
|
||||
<title>Sheet.264</title>
|
||||
<desc>N</desc>
|
||||
<rect x="0" y="266.9" width="14.4" height="14.4" class="st3"/>
|
||||
<text x="4.62" y="276.5" class="st4">N</text> </g>
|
||||
<g id="shape265-22" transform="translate(50.9,-151.2)">
|
||||
<title>Sheet.265</title>
|
||||
<rect x="0" y="266.9" width="144" height="14.4" class="st5"/>
|
||||
</g>
|
||||
<g id="shape266-24" transform="translate(50.9,-122.4)">
|
||||
<title>Sheet.266</title>
|
||||
<desc>RomWBW Hard Disk (IDE/ATA/ATAPI/CF/SD/USB)</desc>
|
||||
<rect x="0" y="266.9" width="360" height="14.4" class="st6"/>
|
||||
<text x="99.2" y="276.5" class="st4">RomWBW Hard Disk (IDE/ATA/ATAPI/CF/SD/USB)</text> </g>
|
||||
<g id="shape267-27" transform="translate(230.9,-136.8)">
|
||||
<title>Sheet.267</title>
|
||||
<desc>FAT Partition</desc>
|
||||
<rect x="0" y="266.9" width="165.6" height="14.4" class="st1"/>
|
||||
<text x="61.69" y="276.5" class="st4">FAT Partition</text> </g>
|
||||
<g id="shape268-30" transform="translate(101.3,-43.2)">
|
||||
<title>Sheet.268</title>
|
||||
<desc>Sector 0</desc>
|
||||
<rect x="0" y="266.9" width="72" height="14.4" class="st7"/>
|
||||
<text x="22.71" y="276.5" class="st4">Sector 0</text> </g>
|
||||
<g id="shape269-33" transform="translate(158.9,-57.6)">
|
||||
<title>Sheet.269</title>
|
||||
<rect x="0" y="266.9" width="14.4" height="14.4" class="st3"/>
|
||||
</g>
|
||||
<g id="shape270-35" transform="translate(50.9,-64.8)">
|
||||
<title>Sheet.270</title>
|
||||
<path d="M0 228.86 L0 229.22 L0 276.8 A4.5 4.5 -180 0 0 4.5 281.3 L46.08 281.3" class="st8"/>
|
||||
</g>
|
||||
<g id="shape271-41" transform="translate(209.3,-43.2)">
|
||||
<title>Sheet.271</title>
|
||||
<desc>Type 06</desc>
|
||||
<rect x="0" y="274.1" width="43.2" height="7.2" class="st3"/>
|
||||
<text x="11.99" y="279.5" class="st10">Type 06</text> </g>
|
||||
<g id="shape272-44" transform="translate(209.3,-36)">
|
||||
<title>Sheet.272</title>
|
||||
<rect x="0" y="274.1" width="43.2" height="7.2" class="st3"/>
|
||||
</g>
|
||||
<g id="shape273-46" transform="translate(209.3,-28.8)">
|
||||
<title>Sheet.273</title>
|
||||
<rect x="0" y="274.1" width="43.2" height="7.2" class="st3"/>
|
||||
</g>
|
||||
<g id="shape274-48" transform="translate(209.3,-21.6)">
|
||||
<title>Sheet.274</title>
|
||||
<rect x="0" y="274.1" width="43.2" height="7.2" class="st3"/>
|
||||
</g>
|
||||
<g id="shape275-50" transform="translate(202.1,-7.19997)">
|
||||
<title>Sheet.275</title>
|
||||
<desc>Partition Table</desc>
|
||||
<rect x="0" y="266.9" width="57.6" height="14.4" class="st7"/>
|
||||
<text x="4.92" y="276.5" class="st4">Partition Table</text> </g>
|
||||
<g id="shape276-53" transform="translate(339.4,65.2999) rotate(90)">
|
||||
<title>Sheet.276</title>
|
||||
<path d="M0 98.42 L0 258.8 A22.5 22.5 -180 0 0 22.5 281.3 L44.88 281.3" class="st11"/>
|
||||
</g>
|
||||
<g id="shape277-59" transform="translate(-71.9999,259.7) rotate(-90)">
|
||||
<title>Bracket.132</title>
|
||||
<path d="M0 281.3 A5.43323 5.43323 0 0 1 4.8 276.5 L9.6 276.5 A5.43323 5.43323 -180 0 0 14.4 271.7 A5.43323 5.43323 -180
|
||||
0 0 19.2 276.5 L24 276.5 A5.43323 5.43323 0 0 1 28.8 281.3" class="st12"/>
|
||||
</g>
|
||||
<g id="shape278-62" transform="translate(252.5,-180)">
|
||||
<title>Sheet.278</title>
|
||||
<path d="M0 272.06 L0 272.42 L0 274.1 A7.19998 7.19998 -180 0 0 7.2 281.3 L28.8 281.3" class="st13"/>
|
||||
</g>
|
||||
<g id="shape279-70" transform="translate(284.9,-172.8)">
|
||||
<title>Sheet.279</title>
|
||||
<desc>CP/M System Area (128 KB)</desc>
|
||||
<rect x="0" y="266.9" width="111.6" height="14.4" class="st7"/>
|
||||
<text x="1" y="276.5" class="st4">CP/M System Area (128 KB)</text> </g>
|
||||
<g id="shape280-73" transform="translate(353.8,65.2999) rotate(90)">
|
||||
<title>Sheet.280</title>
|
||||
<path d="M0 112.82 L0 258.8 A22.5 22.5 -180 0 0 22.5 281.3 L44.88 281.3" class="st11"/>
|
||||
</g>
|
||||
<g id="shape281-78" transform="translate(368.2,65.2999) rotate(90)">
|
||||
<title>Sheet.281</title>
|
||||
<path d="M0 127.22 L0 258.8 A22.5 22.5 -180 0 0 22.5 281.3 L44.88 281.3" class="st11"/>
|
||||
</g>
|
||||
<g id="shape282-83" transform="translate(382.6,65.2999) rotate(90)">
|
||||
<title>Sheet.282</title>
|
||||
<path d="M0 141.62 L0 258.8 A22.5 22.5 -180 0 0 22.5 281.3 L44.88 281.3" class="st11"/>
|
||||
</g>
|
||||
<g id="shape283-88" transform="translate(469,65.2999) rotate(90)">
|
||||
<title>Sheet.283</title>
|
||||
<path d="M0 228.02 L0 258.8 A22.5 22.5 -180 0 0 22.5 281.3 L44.88 281.3" class="st11"/>
|
||||
</g>
|
||||
<g id="shape284-93" transform="translate(158.9,-68.3999)">
|
||||
<title>Sheet.284</title>
|
||||
<rect x="0" y="277.7" width="14.4" height="3.6" class="st3"/>
|
||||
</g>
|
||||
<g id="shape285-95" transform="translate(158.9,-64.7999)">
|
||||
<title>Sheet.285</title>
|
||||
<rect x="0" y="277.7" width="14.4" height="3.6" class="st3"/>
|
||||
</g>
|
||||
<g id="shape286-97" transform="translate(158.9,-61.1999)">
|
||||
<title>Sheet.286</title>
|
||||
<rect x="0" y="277.7" width="14.4" height="3.6" class="st3"/>
|
||||
</g>
|
||||
<g id="shape287-99" transform="translate(158.9,-57.5999)">
|
||||
<title>Sheet.287</title>
|
||||
<rect x="0" y="277.7" width="14.4" height="3.6" class="st3"/>
|
||||
</g>
|
||||
<g id="shape288-101" transform="translate(166.1,-57.6)">
|
||||
<title>Stack pointer.179</title>
|
||||
<path d="M33.6 302.9 L5.4 302.9 A5.39999 5.39999 0 0 1 0 297.5 L0 292.1 L0 286.82" class="st11"/>
|
||||
</g>
|
||||
<g id="shape289-106" transform="translate(50.9,-136.8)">
|
||||
<title>Sheet.289</title>
|
||||
<desc>RomWBW Data (8,320 KB * N)</desc>
|
||||
<rect x="0" y="266.9" width="144" height="14.4" class="st1"/>
|
||||
<text x="22.71" y="276.5" class="st4">RomWBW Data (8,320 KB * N)</text> </g>
|
||||
<g id="shape293-109" transform="translate(252.5,-46.8)">
|
||||
<title>Dynamic connector.207</title>
|
||||
<path d="M0 281.3 L17.1 281.3 A4.5 4.5 -180 0 0 21.6 276.8 L21.6 231.8 A4.5 4.5 -180 0 0 17.1 227.3 L-17.1 227.3 A4.5
|
||||
4.5 0 0 1 -21.6 222.8 L-21.6 211.24" class="st14"/>
|
||||
</g>
|
||||
<g id="shape294-115" transform="translate(101.3,-57.6)">
|
||||
<title>Sheet.294</title>
|
||||
<desc>MBR</desc>
|
||||
<rect x="0" y="266.9" width="72" height="14.4" class="st5"/>
|
||||
<text x="28.23" y="276.5" class="st4">MBR</text> </g>
|
||||
<g id="shape295-118" transform="translate(209.156,-21.5999)">
|
||||
<title>Sheet.295</title>
|
||||
<rect x="0" y="252.5" width="43.344" height="28.8" class="st5"/>
|
||||
</g>
|
||||
<g id="shape296-120" transform="translate(245.3,-208.8)">
|
||||
<title>Sheet.296</title>
|
||||
<desc>Slice (8,320 KB)</desc>
|
||||
<rect x="0" y="266.9" width="151.2" height="14.4" class="st5"/>
|
||||
<text x="50.65" y="276.5" class="st4">Slice (8,320 KB)</text> </g>
|
||||
<g id="shape298-123" transform="translate(245.3,-194.4)">
|
||||
<title>Sheet.298</title>
|
||||
<rect x="0" y="266.9" width="14.4" height="14.4" class="st3"/>
|
||||
</g>
|
||||
<g id="shape299-125" transform="translate(245.3,-194.4)">
|
||||
<title>Sheet.299</title>
|
||||
<desc>CP/M File System (8 MB)</desc>
|
||||
<rect x="0" y="266.9" width="151.2" height="14.4" class="st7"/>
|
||||
<text x="35.37" y="276.5" class="st4">CP/M File System (8 MB)</text> </g>
|
||||
<g id="shape300-128" transform="translate(245.3,-194.4)">
|
||||
<title>Sheet.300</title>
|
||||
<rect x="0" y="266.9" width="151.2" height="14.4" class="st5"/>
|
||||
</g>
|
||||
<g id="shape301-130" transform="translate(-180,223.7) rotate(-90)">
|
||||
<title>Bracket.301</title>
|
||||
<path d="M-0 281.3 A2.41217 2.41217 0 0 1 2.13 279.17 L5.07 279.17 A2.41217 2.41217 -180 0 0 7.2 277.04 A2.41217 2.41217
|
||||
-180 0 0 9.33 279.17 L12.27 279.17 A2.41217 2.41217 0 0 1 14.4 281.3" class="st12"/>
|
||||
</g>
|
||||
<g id="shape302-133" transform="translate(-35.9999,72.5) rotate(-90)">
|
||||
<title>Bracket.302</title>
|
||||
<path d="M-0 281.3 A2.41217 2.41217 0 0 1 2.13 279.17 L5.07 279.17 A2.41217 2.41217 -180 0 0 7.2 277.04 A2.41217 2.41217
|
||||
-180 0 0 9.33 279.17 L12.27 279.17 A2.41217 2.41217 0 0 1 14.4 281.3" class="st12"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 12 KiB |
@@ -3,7 +3,7 @@
|
||||
# and available on commandline for this build to work!!!
|
||||
# Typically "sudo apt install gpp pandoc texlive-latex-extra texlive-luatex texlive-fonts-extra fonts-roboto"
|
||||
#
|
||||
OBJECTS = ReadMe.gfm ReadMe.txt UserGuide.pdf SystemGuide.pdf Applications.pdf ROM_Applications.pdf Catalog.pdf Errata.pdf
|
||||
OBJECTS = ReadMe.gfm ReadMe.txt UserGuide.pdf SystemGuide.pdf Applications.pdf Catalog.pdf Errata.pdf
|
||||
# DEST = ../../Doc
|
||||
TOOLS = ../../Tools
|
||||
OTHERS = *.tmp
|
||||
@@ -36,6 +36,5 @@ deploy :
|
||||
cp UserGuide.pdf "../../Doc/RomWBW User Guide.pdf"
|
||||
cp SystemGuide.pdf "../../Doc/RomWBW System Guide.pdf"
|
||||
cp Applications.pdf "../../Doc/RomWBW Applications.pdf"
|
||||
cp ROM_Applications.pdf "../../Doc/RomWBW ROM Applications.pdf"
|
||||
cp Catalog.pdf "../../Doc/RomWBW Disk Catalog.pdf"
|
||||
cp Errata.pdf "../../Doc/RomWBW Errata.pdf"
|
||||
|
||||
@@ -1,635 +0,0 @@
|
||||
$define{doc_title}{ROM Applications}$
|
||||
$define{doc_author}{Phillip Summers}$
|
||||
$define{doc_authmail}{}$
|
||||
$include{"Book.h"}$
|
||||
|
||||
# Summary
|
||||
|
||||
RomWBW includes a small selection of built in utilities and
|
||||
programming languages.
|
||||
|
||||
`\clearpage`{=latex}
|
||||
|
||||
# RomWBW Monitor
|
||||
|
||||
The Monitor program is a low level utility that can be used
|
||||
for testing and programming. It allows programs to be entered,
|
||||
memory to be examined, and input/output devices to be read or
|
||||
written to.
|
||||
|
||||
It's key advantage is that is available at boot up.
|
||||
|
||||
Its key disadvantages are that code cannot be entered in assembly
|
||||
language and there is no ability to save to memory devices.
|
||||
|
||||
The available memory area for programming is `0200-EDFFh`.
|
||||
The following areas are reserved:
|
||||
|
||||
Memory Area | Function
|
||||
------------|-----------------------------------
|
||||
`0000-00FFh`| Jump and restart (RST) vectors
|
||||
`0100-01FFh`| HBIOS configuration block
|
||||
`EE00-FDFFh`| MONITOR
|
||||
`FE00-FFFFh`| HBIOS proxy
|
||||
|
||||
Commands can be entered at the command prompt `>`
|
||||
Automatic case conversion takes place on command entry and all
|
||||
arguments are expected to be in hex format.
|
||||
|
||||
The current memory bank in low memory is displayed before the prompt i.e.:
|
||||
|
||||
`8E>`
|
||||
|
||||
The Monitor allows access to all memory locations but ROM and
|
||||
Flash memory cannot be written to. Memory outside the normal
|
||||
address range can be accessed using the B command. The first
|
||||
256 bytes `0000-01FF` is critical for the HBIOS operation.
|
||||
Changing banks may make this information inaccessible.
|
||||
|
||||
Refer to the RomWBW Architecture manual for details memory banking.
|
||||
|
||||
A quick guide to using the Monitor program follows:
|
||||
|
||||
## ? - Displays a summary of available commands.
|
||||
|
||||
```
|
||||
Monitor Commands (all values in hex):
|
||||
B - Boot system
|
||||
D xxxx [yyyy] - Dump memory from xxxx to yyyy
|
||||
F xxxx yyyy zz - Fill memory from xxxx to yyyy with zz
|
||||
H - Halt system
|
||||
I xxxx - Input from port xxxx
|
||||
K - Keyboard echo
|
||||
L - Load Intel hex data
|
||||
M xxxx yyyy zzzz - Move memory block xxxx-yyyy to zzzz
|
||||
O xxxx yy - Output value yy to port xxxx
|
||||
P xxxx - Program RAM at address xxxx
|
||||
R xxxx [[yy] [zzzz]] - Run code at address xxxx
|
||||
Pass yy and zzzz to register A and BC
|
||||
T xxxx - X-modem transfer to memory location xxxx
|
||||
S xx - Set bank to xx
|
||||
X - Exit monitor
|
||||
```
|
||||
|
||||
## Cold Boot
|
||||
|
||||
B - Performs a cold boot of the ROMWBW system. A complete
|
||||
re-initialization of the system is performed and the system
|
||||
returns to the Boot Loader prompt.
|
||||
|
||||
## Dump Memory
|
||||
|
||||
D xxxx [yyyy] - Dump memory from hex location xxxx to yyyy
|
||||
on the screen as lines of 16 hexadecimal bytes with their
|
||||
ASCII equivalents (if within a set range, else a '.' is
|
||||
printed). If the end address is omitted then 256 bytes is
|
||||
displayed.
|
||||
|
||||
A good tool to see where code is located, check
|
||||
for version id, obtain details for chip configurations and
|
||||
execution paths.
|
||||
|
||||
Examples: `D 100 1FF`
|
||||
|
||||
```
|
||||
0100: 10 0B 01 5A 33 45 4E 56 01 00 00 2A 06 00 F9 11 ...Z3ENV...*..ù.
|
||||
0110: DE 38 37 ED 52 4D 44 0B 6B 62 13 36 00 ED B0 21 Þ87íRMD.kb.6.í°!
|
||||
0120: 7D 32 E5 21 80 00 4E 23 06 00 09 36 00 21 81 00 }2å!..N#...6.!..
|
||||
0130: E5 CD 6C 1F C1 C1 E5 2A C9 8C E5 CD 45 05 E5 CD åÍl.ÁÁå*É.åÍE.åÍ
|
||||
0140: 59 1F C3 00 00 C3 AE 01 C3 51 04 C3 4C 02 C3 57 Y.Ã..î.ÃQ.ÃL.ÃW
|
||||
0150: 02 C3 64 02 C3 75 02 C3 88 02 C3 B2 03 C3 0D 04 .Ãd.Ãu.Ã..ò.Ã..
|
||||
0160: C3 19 04 C3 22 04 C3 2A 04 C3 35 04 C3 40 04 C3 Ã..Ã".Ã*.Ã5.Ã@.Ã
|
||||
0170: 48 04 C3 50 04 C3 50 04 C3 50 04 C3 8F 02 C3 93 H.ÃP.ÃP.ÃP.Ã..Ã.
|
||||
0180: 02 C3 94 02 C3 95 02 C3 85 04 C3 C7 04 C3 D1 01 .Ã..Ã..Ã..ÃÇ.ÃÑ.
|
||||
0190: C3 48 02 C3 E7 04 C3 56 03 C3 D0 01 C3 D0 01 C3 ÃH.Ãç.ÃV.ÃÐ.ÃÐ.Ã
|
||||
01A0: D0 01 C3 D0 01 C3 D0 01 C3 D0 01 01 02 01 CD 6B Ð.ÃÐ.ÃÐ.ÃÐ....Ík
|
||||
01B0: 04 54 68 69 73 20 66 75 6E 63 74 69 6F 6E 20 6E .This function n
|
||||
01C0: 6F 74 20 73 75 70 70 6F 72 74 65 64 2E 0D 0A 00 ot supported....
|
||||
01D0: C9 3E FF 32 3C 00 3A 5D 00 FE 20 28 14 D6 30 32 É>ÿ2<.:].þ (.Ö02
|
||||
01E0: AB 01 32 AD 01 3A 5E 00 FE 20 28 05 D6 30 32 AC «.2.:^.þ (.Ö02¬
|
||||
01F0: 01 C5 01 F0 F8 CF E5 26 00 0E 0A CD 39 02 7D 3C .Å.ðøÏå&...Í9.}<
|
||||
```
|
||||
|
||||
## Fill Memory
|
||||
|
||||
F xxxx yyyy zz - Fill memory from hex xxxx to yyyy with
|
||||
a single value of zz over the full range. The Dump command
|
||||
can be used to confirm that the fill completed as expected. A
|
||||
good way to zero out memory areas before writing machine data
|
||||
for debug purposes.
|
||||
|
||||
## Halt System
|
||||
|
||||
H - Halt system. A Z80 HALT instruction is executed. The
|
||||
system remains in the halt state until the system is
|
||||
physically rebooted. Interrupts will not restart the
|
||||
system. On systems that support a HALT status LED, the
|
||||
LED will be illuminated.
|
||||
|
||||
## Input from port
|
||||
|
||||
I xxxx - Input data from port xxxx and display to the screen.
|
||||
This command is used to read values from hardware I/O ports
|
||||
and display the contents in hexadecimal.
|
||||
|
||||
## Keyboard Echo
|
||||
|
||||
K - Echo any key-presses from the terminal. Press 'ESC' key
|
||||
to quit. This facility provides that any key stroke sent to
|
||||
the computer will be echoed back to the terminal. File down
|
||||
loads will be echoed as well while this facility is ‘on’.
|
||||
|
||||
## Load Hex format file into memory
|
||||
|
||||
L - Load a Intel Hex format file via the terminal program.
|
||||
The load address is defined in the hex file of the
|
||||
assembled code.
|
||||
|
||||
The terminal emulator program should be configured to
|
||||
give a delay at the end of each line to allow the monitor
|
||||
enough time to parse the line and move the data to memory.
|
||||
|
||||
Keep in mind that this will be a transient unless the
|
||||
system support battery backed memory. Saving to memory drive
|
||||
is not supported.
|
||||
|
||||
## Move memory
|
||||
|
||||
M xxxx yyyy zzzz - Move hex memory block xxxx to yyyy to
|
||||
memory starting at hex location zzzz. Care should be taken
|
||||
to insure that there is enough memory at the destination so
|
||||
that code does not get over-written or memory wrapped around.
|
||||
|
||||
## Output to port
|
||||
|
||||
O xxxx yy - Output data byte xx to port xxxx. This command is
|
||||
used to send hexadecimal values to hardware I/O ports to
|
||||
verify their operation and is the companion to the I operation.
|
||||
Use clip leaded LEDs to confirm the data written.
|
||||
|
||||
## Program memory location
|
||||
|
||||
P xxxx - Program memory location xxxx. This routine will
|
||||
allow you to program a hexadecimal value 'into memory starting
|
||||
at location xxxx. Press 'Enter' on a blank line to
|
||||
return to the Monitor prompt.
|
||||
|
||||
The limitation around programming memory is that it must be
|
||||
entered in hexadecimal. An alternative is to use the L command
|
||||
to load a program that has been assembled to a hex file on the
|
||||
remote computer.
|
||||
|
||||
An excellent online resource for looking up opcodes for entry
|
||||
can be found here: [https://clrhome.org/table](https://clrhome.org/table)
|
||||
|
||||
## Run program
|
||||
|
||||
R xxxx [[yy] [zzzz]] - Run program at location xxxx. If optional
|
||||
arguments yy and zzzz are entered they are loaded into the
|
||||
A and BC register respectively. The return address of the
|
||||
Monitor is saved on the stack so the program can return
|
||||
to the monitor. On return to the monitor, the contents of
|
||||
the A, HL, DE and BC registers are displayed.
|
||||
|
||||
## Set bank
|
||||
|
||||
S xx - Change the bank in memory to xx. Memory addresses
|
||||
0000-7FFF (i.e. bottom 32k) are affected. Because the
|
||||
interrupt vectors are stored in the bottom page of this
|
||||
range, this function is disable when interrupt mode 1 is
|
||||
being used (IM1). Interrupt mode 2 is not affected as the
|
||||
associated jump vectors are stored in high memory.
|
||||
|
||||
Changing the bank also impacts the restart vectors (RST),
|
||||
so executing code that call the HBIOS using the RST 08
|
||||
assembly code will not work.
|
||||
|
||||
The monitor stack resides in high memory and is not affected
|
||||
but any code that changes the stack to low memory will be
|
||||
affected.
|
||||
|
||||
### Bank codes and descriptions
|
||||
|
||||
TYPE | DESCRIPTION |BANK| DETAILS
|
||||
-----|--------------------|----|---------------------
|
||||
RAM | COMMON BANK | 9F | 1024K RAM SYSTEM
|
||||
RAM | USER BANK | 9E | 1024K RAM SYSTEM
|
||||
RAM | BIOS BANK | 9D | 1024K RAM SYSTEM
|
||||
RAM | AUX BANK | 9C | 1024K RAM SYSTEM
|
||||
RAM | OS BUFFERS END | 9B | 1024K RAM SYSTEM
|
||||
RAM | OS BUFFERS START | 98 | 1024K RAM SYSTEM
|
||||
RAM | RAM DRIVE END | 97 | 1024K RAM SYSTEM
|
||||
RAM | COMMON BANK | 8F | 512K RAM SYSTEM
|
||||
RAM | USER BANK | 8E | 512K RAM SYSTEM
|
||||
RAM | BIOS BANK | 8D | 512K RAM SYSTEM
|
||||
RAM | AUX BANK | 8C | 512K RAM SYSTEM
|
||||
RAM | OS BUFFERS | 8B | 512K RAM SYSTEM
|
||||
RAM | OS BUFFERS | 8A | 512K RAM SYSTEM
|
||||
RAM | OS BUFFERS | 89 | 512K RAM SYSTEM
|
||||
RAM | OS BUFFERS | 88 | 512K RAM SYSTEM
|
||||
RAM | RAM DRIVE END | 87 | 512K RAM SYSTEM
|
||||
RAM | RAM DRIVE START | 80 |
|
||||
ROM | BOOT BANK | 00 | COLD START & HBIOS
|
||||
ROM | LOADER & IMAGES | 01 | MONITOR, FORTH
|
||||
ROM | ROM IMAGES CONTD. | 02 | BASIC, ETC
|
||||
ROM | FAT FILESYSTEM | 03 | UNA ONLY, ELSE UNUSED
|
||||
ROM | ROM DRIVE START | 04 |
|
||||
ROM | ROM DRIVE END | 0F | 512K ROM SYSTEM
|
||||
ROM | ROM DRIVE END | 1F | 1024K ROM SYSTEM
|
||||
|
||||
## X-modem transfer
|
||||
|
||||
T xxxx - Receive an X-modem file transfer and load it into
|
||||
memory starting at location xxxx.
|
||||
|
||||
128 byte blocks and checksum mode is the only supported
|
||||
protocol.
|
||||
|
||||
If the monitor is assembled with the DSKY functionality,
|
||||
this feature will be exclude due to space limitations.
|
||||
|
||||
|
||||
## NOTES:
|
||||
|
||||
The RTC utility on the CP/M ROM disk provides facilities
|
||||
to manipulate the Real Time Clock non-volatile Memory.
|
||||
Use the C or Z option from the Boot Loader to load CP/M
|
||||
and then run RTC to see the options list.
|
||||
|
||||
# FORTH
|
||||
|
||||
CamelForth is the version of Forth included as part of the boot
|
||||
ROM in ROMWBW. It has been converted from the Z80 CP/M version
|
||||
published here [www.camelforth.com/page.php?5](www.camelforth.com/page.php?5). The author is Brad
|
||||
Rodriguez who is a prolific Forth enthusiast, whose work can be
|
||||
found here: [www.bradrodriguez/papers/index.html](www.bradrodriguez/papers/index.html)
|
||||
|
||||
For those are who are not familiar with Forth, I recommend the
|
||||
wikipedia article [en.wikipedia.org/wiki/Forth_(programming_language](en.wikipedia.org/wiki/Forth_(programming_language))
|
||||
and the Forth Interest Group website [www.forth.org](www.forth.org)
|
||||
|
||||
## Important things to know
|
||||
|
||||
Forth is case sensitive.
|
||||
|
||||
To exit back to the boot loader type ***bye***
|
||||
|
||||
To get a list of available words type ***WORDS***
|
||||
|
||||
To reset Forth to its initial state type ***COLD***
|
||||
|
||||
Most of the code you find on the internet will not run unless modified or additional Forth
|
||||
words are added to the dictionary.
|
||||
|
||||
This implementation does not support loading or saving of programs. All programs
|
||||
need to be typed in. Additionally, screen editing and code blocks are not supported.
|
||||
|
||||
## Structure of Forth source files
|
||||
|
||||
File | Description
|
||||
--------------|-----------------------------
|
||||
camel80.azm | Code Primitives
|
||||
camel80d.azm | CPU Dependencies
|
||||
camel80h.azm | High Level words
|
||||
camel80r.azm | ROMWBW additions
|
||||
glosshi.txt | Glossary of high level words
|
||||
glosslo.txt | Glossary of low level words
|
||||
glossr.txt | Glossary of ROMWBW additions
|
||||
|
||||
## ROMWBW Additions
|
||||
|
||||
Extensions and changes to this implementation compared to the original distribution are:
|
||||
|
||||
The source code has been converted from Z80mr assembler to Hector Peraza's zsm.
|
||||
|
||||
An additional file camel80r.azm has been added for including additional words to
|
||||
the dictionary at build time. However, as currently configured there is very little space
|
||||
allocated for addition words. Exceeding the allocated ROM space will generate an error
|
||||
message when building.
|
||||
|
||||
James Bowman's double precision words have been added from his RC2014 version:
|
||||
[https://github.com/jamesbowman/camelforth-z80](https://github.com/jamesbowman/camelforth-z80)
|
||||
|
||||
Word | Syntax | Description
|
||||
--------|----------------------------|---------------------------------
|
||||
D+ | d1 d2 -- d1+d2 | Add double numbers
|
||||
2>R | d -- | 2 to R
|
||||
2R> | d -- | fetch 2 from R
|
||||
M*/ | d1 n2 u3 -- d=(d1*n2)/u3 | double precision mult. div
|
||||
SVC | hl de bc n -- hl de bc af | Execute a ROMWBW function
|
||||
P! | n p -- | Write a byte to a I/O port
|
||||
P@ | p -- n | Read a byte from and I/O port
|
||||
|
||||
# BASIC
|
||||
|
||||
For those who are not familiar with BASIC, it stands for Beginners All purpose Symbolic
|
||||
Instruction Code.
|
||||
|
||||
ROMWBW contains two versions of ROM BASIC, a full implementation and a "tiny" BASIC.
|
||||
|
||||
The full implementation is a version of Microsoft BASIC from the NASCOM Computer.
|
||||
|
||||
A comprehensive instruction manual is available in the Doc\\Contrib directory.
|
||||
|
||||
## ROMWBW specific features
|
||||
|
||||
- Sound
|
||||
- Graphics
|
||||
- Terminal Support
|
||||
|
||||
## ROMWBW unsupported features
|
||||
|
||||
- This ROM-hosted implementation does not support cassette or disk
|
||||
access for loading and saving programs.
|
||||
|
||||
# TastyBASIC
|
||||
|
||||
TastyBASIC offers a minimal implementation of BASIC that is only 2304 bytes in size.
|
||||
It originates from Li-Chen Wang's Palo Alto Tiny BASIC from around 1976. It's small size suited the tiny memory capacities of the time. This implementation is by Dimitri Theulings and his
|
||||
original source can be found here [https://github.com/dimitrit/tastybasic](https://github.com/dimitrit/tastybasic)
|
||||
|
||||
## Features / Limitations
|
||||
|
||||
- This ROM-hosted implementation does not support disk access for
|
||||
loading and saving programs.
|
||||
- Integer arithmetic, numbers -32767 to 32767
|
||||
- Singles letter variables A-Z
|
||||
- 1-dimensional array support
|
||||
- Strings are not supported
|
||||
|
||||
## Direct Commands
|
||||
|
||||
- `LIST`,`RUN`, `NEW`, `CLEAR`, `BYE`
|
||||
|
||||
## Statements
|
||||
|
||||
- `LET`, `IF`, `GOTO`, `GOSUB RETURN`, `REM`, `FOR TO NEXT STEP`, `INPUT`, `PRINT`, `POKE`, `END`
|
||||
|
||||
## Functions
|
||||
|
||||
- `PEEK`, `RND`, `ABS`, `USR`, `SIZE`
|
||||
|
||||
## Operators
|
||||
|
||||
- `>=`, `#`, `>`, `=`, `<=`, `<`
|
||||
|
||||
- Operator precedence is supported.
|
||||
|
||||
Type ***BYE*** to return to the monitor.
|
||||
|
||||
# Play a Game
|
||||
|
||||
## 2048
|
||||
|
||||
2048 is a puzzle game that can be both mindless and challenging. It
|
||||
appears deceptively simple but failure can creep up on you suddenly.
|
||||
|
||||
It requires an ANSI/VT-100 compatible colour terminal to play.
|
||||
|
||||
2048 is like a sliding puzzle game except the puzzle tiles are
|
||||
numbers instead of pictures. Instead of moving a single tile all
|
||||
tiles are moved simultaneously in the same direction. Where two
|
||||
tiles of the same number collide, they are reduced to one tile with
|
||||
the combined value. After every move a new tile is added with
|
||||
a starting value of 2.
|
||||
|
||||
The goal is to create a tile of 2048 before all tile locations are
|
||||
occupied. Reaching the highest points score, which is the sum of all
|
||||
the tiles is a secondary goal. The game will automatically end when
|
||||
there are no more possible moves.
|
||||
|
||||
Play consists of entering a direction to move. Directions can be entered
|
||||
using any of three different keyboard direction sets.
|
||||
|
||||
```
|
||||
Direction | Keys
|
||||
----------|----------
|
||||
Up | w ^E 8
|
||||
Down | s ^X 2
|
||||
Left | a ^S 4
|
||||
Right | d ^D 6
|
||||
```
|
||||
The puzzle board is a 4x4 grid. At start, the grid will be populated
|
||||
with two 2 tiles. An example game sequence is shown below with new
|
||||
tiles to the game shown in brackets.
|
||||
|
||||
```
|
||||
Start Move 1 - Up Move 2 - Left Move 3 - Left
|
||||
+---+---+---+---+ +---+---+---+---+ +---+---+---+---+ +---+---+---+---+
|
||||
| | | |(2)| | | | | 4 | | 4 | | | | | 4 | | | |
|
||||
+---+---+---+---+ +---+---+---+---+ +---+---+---+---+ +---+---+---+---+
|
||||
| | | | | | | | | | | | | |(4)| | 4 | | | |
|
||||
+---+---+---+---+ +---+---+---+---+ +---+---+---+---+ +---+---+---+---+
|
||||
| | | |(2)| | | | | | | | | | | | | | | |
|
||||
+---+---+---+---+ +---+---+---+---+ +---+---+---+---+ +---+---+---+---+
|
||||
| | | | | | | |(2)| | | 2 | | | | | 2 | |(2)| |
|
||||
+---+---+---+---+ +---+---+---+---+ +---+---+---+---+ +---+---+---+---+
|
||||
|
||||
Move 4 - Left Move 5 - Up Move 6 - Right Move 7 - Up
|
||||
+---+---+---+---+ +---+---+---+---+ +---+---+---+---+ +---+---+---+---+
|
||||
| 4 | | | | | 8 | | | 4 | | | | 8 | 4 | | | | 8 | 8 |
|
||||
+---+---+---+---+ +---+---+---+---+ +---+---+---+---+ +---+---+---+---+
|
||||
| 4 | | |(4)| | 4 | | | | | | | | 4 | | | | | 2 |
|
||||
+---+---+---+---+ +---+---+---+---+ +---+---+---+---+ +---+---+---+---+
|
||||
| | | | | | | | | | | | | | | | | | | |
|
||||
+---+---+---+---+ +---+---+---+---+ +---+---+---+---+ +---+---+---+---+
|
||||
| 4 | | | | |(2)| | | | |(2)| | | 2 | |(2)| | | |
|
||||
+---+---+---+---+ +---+---+---+---+ +---+---+---+---+ +---+---+---+---+
|
||||
```
|
||||
This is how I lost this game:
|
||||
```
|
||||
+---+---+---+---+
|
||||
| 4 | 2 | 16| 4 |
|
||||
+---+---+---+---+
|
||||
| 32| 64| 8 | 2 |
|
||||
+---+---+---+---+
|
||||
| 4 | 8 |128| 32|
|
||||
+---+---+---+---+
|
||||
|(2)| 16| 8 | 4 |
|
||||
+---+---+---+---+
|
||||
```
|
||||
Press Q at any time to bring up the option to Quit or Restart the game.
|
||||
|
||||
# Network Boot
|
||||
|
||||
# Xmodem Flash Updater
|
||||
|
||||
The ROMWBW Xmodem flash updater provides the capability to update ROMWBW from the boot loader using an x-modem file transfer. It offers similar capabilities to Will Sowerbutts FLASH4 utility except that the flashing process occurs during the file transfer.
|
||||
|
||||
These are the key differences between the two methods are:
|
||||
|
||||
Xmodem Flash Updater | FLASH4
|
||||
--------------------------------|-----------------
|
||||
Available from the boot loader | Well proven and tested
|
||||
Xmodem transfer is integrated | Wider range of supported chips and hardware
|
||||
Integrated checksum utilities | Wider range of supported platforms
|
||||
Capability to copy a ROM image | Only reprograms sectors that have changed
|
||||
More convenient one step process | Ability save and verify ROM images
|
||||
No intermediate storage required | Progress display while flashing
|
||||
. | Displays chip identification information
|
||||
. | Faster file transfer
|
||||
|
||||
The major disadvantages of the Updater is that it is new and relatively untested. There is the risk that a failed transfer will result in a partially flashed and unbootable ROM. There are some limitations on serial transfer speeds.
|
||||
|
||||
The updater utility was initially intended to support the Retrobrew SBC-V2-005 platform using Atmel 39SF040 flash chips but has now been extended to be more generic in operation.
|
||||
|
||||
Supported flash chips are
|
||||
39SF040, 29F040, AT49F040, AT29C040, M29F040 , MX29F040, A29010B, A29040B
|
||||
|
||||
The Atmel 39SF040 chip is recommended as it can erase and write 4Kb sectors. Other chips require the whole chip to be erased.
|
||||
|
||||
## Usage
|
||||
|
||||
In most cases, completing a ROM update is a simple as:
|
||||
|
||||
1. Booting to the boot loader prompt
|
||||
2. Selecting option X - Xmodem Flash Updater
|
||||
3. Selecting option U - Update
|
||||
4. Initiating an X-modem transfer of your ROM image on your console device
|
||||
5. Selecting option R - Reboot
|
||||
|
||||
If your console device is not able to transfer a ROM image i.e. your console is a VDU then you will have to use the console options to identify which character-input/output device is to be used as the serial device for transfer.
|
||||
|
||||
When your console is the serial device used for the transfer, no progress information is displayed as this would disrupt the x-modem file transfer. If you use an alternate character-input/output devices as the serial device for the transfer then progress information will be displayed on the console device.
|
||||
|
||||
Due to different platform processor speeds, serials speeds and flow control capabilities the default console or serial device speed may need to be reduced for a successful transfer and flash to occur. The **Set Console Interface/Baud code** option at the Boot Loader can be used to change the speed if required. Additionally, the Updater has options to set to and revert from a recommended speed.
|
||||
|
||||
See the ROMWBW Applications guide for additional information on performing upgrades.
|
||||
|
||||
## Console Options
|
||||
|
||||
Option ( C ) - Set Console Device
|
||||
|
||||
Option ( S ) - Set Serial Device
|
||||
|
||||
By default the updater assumes that the current console is a serial device and that the ROM file to be flashed will also be transferred across this device, so the Console and Serial device are both the same.
|
||||
|
||||
Either device can be can be change to another character-input/output device but the updater will always expect to receive the x-modem transfer on the **Serial Device**
|
||||
|
||||
The advantage of transferring on a different device to the console is that progress information can be displayed during the transfer.
|
||||
|
||||
Option ( > ) - Set Recommended Baud Rate
|
||||
|
||||
Option ( < ) - Revert to Original Baud Rate
|
||||
|
||||
## Programming options
|
||||
|
||||
Option ( U ) - Begin Update
|
||||
|
||||
The will begin the update process. The updater will expect to start receiving
|
||||
an x-modem file on the serial device unit.
|
||||
|
||||
X-modem sends the file in packets of 128 bytes. The updater will cache 32
|
||||
packets which is 1 flash sector and then write that sector to the
|
||||
flash device.
|
||||
|
||||
If using separate console, bank and sector progress information will shown
|
||||
|
||||
```
|
||||
BANK 00 s00 s01 s02 s03 s04 s05 s06 s06 s07
|
||||
BANK 01 s00 s01 s02 s03 s04 s05 s06 s06 s07
|
||||
BANK 02 s00 s01 s02 s03 s04 s05 s06 s06 s07 etc
|
||||
```
|
||||
|
||||
The x-modem file transfer protocol does not provide any filename or size
|
||||
information for the transfer so the updater does not perform any checks
|
||||
on the file suitability.
|
||||
|
||||
The updater expects the file size to be a multiple of 4 kilobytes and
|
||||
will write all data received to the flash device. A system update
|
||||
file (128kb .img) or complete ROM can be received and written (512kb or
|
||||
1024kb .rom)
|
||||
|
||||
If the update fails it is recommended that you retry before rebooting or
|
||||
exiting to the Boot loader as your machine may not be bootable.
|
||||
|
||||
Option ( D ) - Duplicate flash #1 to flash #2
|
||||
|
||||
This option will make a copy of flash #1 onto flash #2. The purpose of this is to enable
|
||||
making a backup copy of the current flash. Intended for systems using 2x512Kb Flash devices.
|
||||
|
||||
Option ( V ) - Toggle Write Verify
|
||||
|
||||
By default each flash sector will be verified after being written. Slight
|
||||
performance improvements can be gained if turned off and could be used if
|
||||
you are experiencing reliable transfers and flashing.
|
||||
|
||||
## Exit options
|
||||
|
||||
Option ( R ) - Reboot
|
||||
|
||||
Execute a cold reboot. This should be done after a successful update. If
|
||||
you perform a cold reboot after a failed update then it is likely that
|
||||
your system will be unusable and removing and reprogramming the flash
|
||||
will be required.
|
||||
|
||||
Option ( Q ) - Quit to boot loader.
|
||||
|
||||
The SBC Boot Loader is reloaded from ROM and
|
||||
executed. After a successful update a Reboot should be performed. However,
|
||||
in the case of a failed update this option could be used to attempt to
|
||||
load CP/M and perform the normal x-modem / flash process to recover.
|
||||
|
||||
## CRC Utility options
|
||||
|
||||
Option ( 1 ) and ( 2 ) - Calculate and display CRC32 of 1st or 2nd 512k ROM.
|
||||
Option ( 3 ) - Calculate and display CRC32 of a 1024k (2x512Kb) ROM.
|
||||
|
||||
Can be used to verify if a ROM image has been transferred and flashed correctly. Refer to the Teraterm section below for details on configuring the automatic display of a files CRC after it has been transferred.
|
||||
|
||||
In Windows, right clicking on a file should also give you a context menu option CRC SHA which will allow you to select a CRC32 calculation to be done on the selected file.
|
||||
|
||||
## Tera Term macro configuration
|
||||
|
||||
Macros are a useful tool for automatic common tasks. There are a number of instances where using macros to facilitate the update process could be worthwhile if you are:
|
||||
|
||||
* Following the ROMWBW development builds.
|
||||
* Doing lots of configuration changes.
|
||||
* Doing development on ROMWBW drivers
|
||||
|
||||
Macros can be used to automate sending ROM updates or images and for my own purposed I have set up a separate macro for transferring each of the standard build ROM, my own custom configuration ROM and update ROM.
|
||||
|
||||
An example macro file to send an *.upd file, using checksum mode and display the crc32 value of the transmitted file:
|
||||
|
||||
```
|
||||
Xmodem send, checksum, display crc32
|
||||
xmodemsend '\\desktop\users\phillip\documents\github\romwbw\binary\sbc_std_cust.upd' 1
|
||||
crc32file crc '\\desktop\users\phillip\documents\github\romwbw\binary\sbc_std_cust.rom'
|
||||
sprintf '0x%08x' crc
|
||||
messagebox inputstr 'crc32'
|
||||
```
|
||||
|
||||
## Serial speed guidelines
|
||||
|
||||
As identified in the introduction, there are limitations on serial speed depending on processor speed and flow control settings. Listed below are some of the results identified during testing.
|
||||
|
||||
Platform / Configuration | Processor Speed | Maximum Serial Speed
|
||||
-------------------------------|-----------------|---------------------
|
||||
SBC-V2 UART no flow control | 2mhz | 9600
|
||||
SBC-V2 UART no flow control | 4mhz | 19200
|
||||
SBC-V2 UART no flow control | 5mhz | 19200
|
||||
SBC-V2 UART no flow control | 8mhz | 38400
|
||||
SBC-V2 UART no flow control | 10mhz | 38400
|
||||
SBC-V2 USB-FIFO 2mhz+ | | n/a
|
||||
SBC-MK4 ASCI no flow control | 18.432mhz | 9600
|
||||
SBC-MK4 ASCI with flow control | 18.432mhz | 38400
|
||||
|
||||
The **Set Recommend Baud Rate** option in the Updater menu follows the following guidelines.
|
||||
|
||||
Processor Speed | Baud Rate
|
||||
----------------|----------
|
||||
1Mhz | 4800
|
||||
2-3Mhz | 9600
|
||||
4-7Mhz | 19200
|
||||
8-20Mhz | 38400
|
||||
|
||||
These can be customized in the updater.asm source code in the CLKTBL table if desired.
|
||||
Feedback to the ROMWBW developers on these guidelines would be appreciated.
|
||||
|
||||
## Notes:
|
||||
- All testing was done with Teraterm x-modem, Forcing checksum mode using macros was found to give the most reliable transfer.
|
||||
- Partial writes can be completed with 39SF040 chips. Other chips require entire flash to be erased before being written.
|
||||
- An SBC V2-005 MegaFlash or Z80 MBC required for 1mb flash support. The Updater assumes both chips are same type
|
||||
- Failure handling has not been tested.
|
||||
- Timing broadly calibrated on a Z80 SBC-v2
|
||||
- UNA BIOS not supported
|
||||
@@ -114,7 +114,6 @@ Documentation for $doc_product$ includes:
|
||||
* $doc_user$
|
||||
* $doc_sys$
|
||||
* $doc_apps$
|
||||
* $doc_romapps$
|
||||
* $doc_errata$
|
||||
|
||||
# Acknowledgments
|
||||
|
||||
BIN
Source/Doc/RomWBW Disk Layouts.xlsx
Normal file
@@ -126,6 +126,243 @@ execution.
|
||||
|
||||
{ width=100% }
|
||||
|
||||
|
||||
## Bank Id
|
||||
|
||||
RomWBW utilizes a specific assignment of memory banks for dedicated
|
||||
purposes. A numeric Bank Id is used to refer to the memory banks. The
|
||||
Bank Id is a single byte. In general, the Bank Id simply refers to each
|
||||
of the 32K banks in sequential order. In other words, Bank Id 0 is the
|
||||
first physical 32K, Bank Id 1 is the second, etc. However, the high
|
||||
order bit of the Bank Id has a special meaning. If it is 0, it indicates
|
||||
a ROM bank is being referred to. If it is 1, it indicates a RAM bank
|
||||
is being referred to.
|
||||
|
||||
For example, let's say we have a typical system with 512KB of ROM and
|
||||
512KB of RAM. The Bank Ids would look like this:
|
||||
|
||||
| Physical Memory | Type | Physical Bank | Bank Id |
|
||||
|-------------------|------|---------------|-----------|
|
||||
| 0x000000-0x007FFF | ROM | 0 | 0x00 |
|
||||
| 0x008000-0x00FFFF | ROM | 1 | 0x01 |
|
||||
| 0x010000-0x07FFFF | ROM | 2-15 | 0x02-0x0F |
|
||||
| 0x080000-0x087FFF | RAM | 16 | 0x80 |
|
||||
| 0x088000-0x08FFFF | RAM | 17 | 0x81 |
|
||||
| 0x090000-0x0FFFFF | RAM | 18-31 | 0x82-0x8F |
|
||||
|
||||
Note that Bank Id 0x00 is **always** the first bank of ROM and 0x80 is
|
||||
**always** the first bank of RAM. If there were more banks of physical ROM,
|
||||
they would be assigned Bank Ids starting with 0x10. Likewise, additional
|
||||
bank of physical RAM would be assigned Bank Ids starting with 0x90.
|
||||
|
||||
The Bank Id is used in all RomWBW API functions when referring to
|
||||
the mapping of banks to the lower 32K bank area of the processor. In
|
||||
this way, all RomWBW functions can refer to a generic Bank Id without
|
||||
needing to understand how a specific hardware platform accesses the
|
||||
physical memory areas. A single routine within the HBIOS is implemented
|
||||
for each memory manager that maps Bank Ids to physical memory.
|
||||
|
||||
## Bank Assignments
|
||||
|
||||
RomWBW requires dedicated banks of memory for specific purposes. It
|
||||
uses Bank Ids via an algorithm to make these assignments. The following
|
||||
table describes the way the banks are assigned. The Typical column
|
||||
shows the specific values that would be assigned for a common system
|
||||
with 512KB of ROM and 512KB of RAM (nROM=16, nRAM=16).
|
||||
|
||||
| Bank Id | Identity | Typical | Purpose |
|
||||
|-------------------|-----------|---------|------------------------------------------|
|
||||
| 0x00 |BID_BOOT | 0x00 | Boot Bank (HBIOS image) |
|
||||
| 0x01 |BID_IMG0 | 0x01 | Boot Loader, Monitor, ROM OSes, ROM Apps |
|
||||
| 0x02 |BID_IMG1 | 0x02 | ROM Apps |
|
||||
| 0x03 |BID_IMG2 | 0x03 | \<Reserved\> |
|
||||
| 0x04 |BID_ROMD0 | 0x04 | First ROM Disk Bank |
|
||||
| nROM - 1 | | 0x0F | Last ROM Disk Bank |
|
||||
| 0x80 |BID_BIOS | 0x80 | HBIOS (working copy) |
|
||||
| 0x81 |BID_RAMD0 | 0x81 | First RAM Disk Bank |
|
||||
| 0x80 + nRAM - 8 | | 0x88 | Last RAM Disk Bank |
|
||||
| 0x80 + nRAM - 7 |BID_APP0 | 0x89 | First Application Bank |
|
||||
| 0x80 + nRAM - 5 | | 0x8B | Last Application Bank |
|
||||
| 0x80 + nRAM - 4 |BID_BUF | 0x8C | OS Disk Buffers |
|
||||
| 0x80 + nRAM - 3 |BID_AUX | 0x8D | OS Code Bank |
|
||||
| 0x80 + nRAM - 2 |BID_USR | 0x8E | User Bank (CP/M TPA) |
|
||||
| 0x80 + nRAM - 1 |BID_COM | 0x8F | Common Bank |
|
||||
|
||||
In this table, nROM and nRAM refer to the number of corresponding
|
||||
ROM and RAM banks in the the system.
|
||||
|
||||
The contents of the banks referred to above are described in more detail
|
||||
below:
|
||||
|
||||
Boot Bank:
|
||||
|
||||
: The Boot Bank receives control when a system is first powered
|
||||
on. It contains a ROM (read-only) copy of the HBIOS. At boot, it does
|
||||
minimal hardware initialization, then copies itself to the HBIOS bank
|
||||
in RAM, then resumes execution from the RAM bank.
|
||||
|
||||
Boot Loader:
|
||||
|
||||
: The application that handles loading of ROM or Disk based applications
|
||||
including operating systems. It copies itself to a RAM bank at the
|
||||
start of it's execution.
|
||||
|
||||
Monitor:
|
||||
|
||||
: The application that implements the basic system monitor functions.
|
||||
It copies itself to a RAM bank at the start of it's execution.
|
||||
|
||||
ROM OSes:
|
||||
|
||||
: Code images of CP/M 2.2 and Z-System which are copied to RAM and
|
||||
executed when a ROM-based operating system is selected in the Boot
|
||||
Loader.
|
||||
|
||||
ROM Applications:
|
||||
|
||||
: Various ROM-based application images such as BASIC, FORTH, etc. They
|
||||
can be selected in the Boot Loader. The Boot Loader will copy the
|
||||
application image to a RAM bank, then transfer control to it.
|
||||
|
||||
ROM Disk:
|
||||
|
||||
: A sequential series of banks assigned to provide the system ROM Disk
|
||||
contents.
|
||||
|
||||
HBIOS:
|
||||
|
||||
: This bank hosts the running copy of the RomWBW HBIOS.
|
||||
|
||||
RAM Disk:
|
||||
|
||||
: A sequential series of banks assigned to provide the system RAM Disk.
|
||||
|
||||
Application Bank:
|
||||
|
||||
: A sequential series of banks that are available for use by applications
|
||||
that wish to utilize banked memory.
|
||||
|
||||
OS Disk Buffers:
|
||||
|
||||
: This bank is used by CP/M 3 and ZPM3 for disk buffer storage.
|
||||
|
||||
OS Code Bank:
|
||||
|
||||
: This bank is used by CP/M 3 and ZPM3 as an alternate bank for code.
|
||||
This allows these operating systems to make additional TPA space
|
||||
available for applications.
|
||||
|
||||
User Bank:
|
||||
|
||||
: This is the default bank for applications to use. This includes the
|
||||
traditional TPA space for CP/M.
|
||||
|
||||
Common Bank:
|
||||
|
||||
: This bank is mapped to the upper 32K of the processors memory space.
|
||||
It is a fixed mapping that is never changed in normal RomWBW operation
|
||||
hence the name "Common".
|
||||
|
||||
# Disk Layout
|
||||
|
||||
RomWBW supports two hard disk layouts: the Classic layout used by
|
||||
RomWBW with 512 directory entries per slice and a Modern layout with
|
||||
1024 directory entries per slice. These layouts are referred to as
|
||||
hd512 and hd1k respectively.
|
||||
|
||||
WARNING: You **can not** mix the two hard disk layouts on one hard
|
||||
disk device. You can use different layouts on different hard disk
|
||||
devices in a single system though.
|
||||
|
||||
RomWBW determines which of the hard disk layouts to use for a given
|
||||
hard disk device based on whether there is a RomWBW hard disk
|
||||
partition on the disk containing the slices. If there is no RomWBW
|
||||
partition, then RomWBW will assume the 512 directory entry format for
|
||||
all slices and will assume the slices start at the first sector of
|
||||
the hard disk. If there is a RomWBW partition on the hard disk
|
||||
device, then RomWBW will assume the 1024 directory entry format for
|
||||
all slices and will assume the slices are located in the defined
|
||||
partition.
|
||||
|
||||
RomWBW supports up to 256 CP/M slices (0-255). Under hd512, the slices
|
||||
begin at the start of the hard disk. Under hd1k, the slices reside
|
||||
within partition type 0x2E.
|
||||
|
||||
RomWBW accesses all hard disks using Logical Block Addressing (pure
|
||||
sector offset). When necessary, RomWBW simulates the following disk
|
||||
geometry for operating systems:
|
||||
|
||||
- Sector = 512 Bytes
|
||||
- Track = 16 Sectors (8KB per Track)
|
||||
- Cylinder = 16 Tracks (256 Sectors per Cylinder, 128KB per Cylinder)
|
||||
|
||||
If one is used, the FAT Partition must not overlap the CP/M slices.
|
||||
The FAT partition does not need to start immediately after the CP/M
|
||||
slices nor does it need to extend to the end of the hard disk. Its
|
||||
location and size are entirely determined by its corresponding
|
||||
partition table entry.
|
||||
|
||||
Drive letters in CP/M are ASSIGNed to the numbered slices as desired.
|
||||
At boot, RomWBW automatically assigns up to 8 slices to drive letters
|
||||
starting with the first available drive letter (typically C:).
|
||||
|
||||
Microsoft Windows will assign a single drive letter to the FAT partition
|
||||
when the CF/SD Card is inserted. The drive letter assigned has no
|
||||
relationship to the CP/M drive letters assigned to CP/M slices.
|
||||
|
||||
In general, Windows, MacOS, or Linux know nothing about the CP/M slices
|
||||
and CP/M knows nothing about the FAT partition. However, the FAT
|
||||
application can be run under CP/M to access the FAT partition
|
||||
programmatically.
|
||||
|
||||
A CP/M slice is (re)initialized using the CP/M command CLRDIR. A CP/M
|
||||
slice can be made bootable by copying system image to the System Area
|
||||
using SYSCOPY.
|
||||
|
||||
The FAT partition can be created from CP/M using the FDISK80 application.
|
||||
|
||||
The FAT partition can be initialized using the FAT application from CP/M
|
||||
using the command `FAT FORMAT n:` where n is the RomWBW disk unit
|
||||
number containing the FAT partition to be formatted.
|
||||
|
||||
## Modern Disk Layout (hd1k)
|
||||
|
||||

|
||||
|
||||
The CP/M filesystem on a Modern disk will accommodate 1,024 directory
|
||||
entries.
|
||||
|
||||
The CP/M slices reside entirely within a hard disk partition of type
|
||||
0x2E. The number of slices is determined by the number of slices that
|
||||
fit within the partition spaces allocated up to the maximum of 256.
|
||||
|
||||
## Classic Disk Layout (hd512)
|
||||
|
||||

|
||||
|
||||
The CP/M filesystem on a Classic disk will accommodate 512 directory
|
||||
entries.
|
||||
|
||||
The CP/M slices reside on the hard disk starting at the first sector
|
||||
of the hard disk. The number of CP/M slices is not explicitly recorded
|
||||
anywhere on the hard disk. It is up to the system user to know how
|
||||
many slices are being used based on the size of the hard disk media
|
||||
and/or the start of a FAT partition.
|
||||
|
||||
A partition table may exist within the first sector of the first
|
||||
slice. For Classic disks, the partition table defines only the
|
||||
location and size of the FAT partition. The Partition Table does
|
||||
not control the location or number of CP/M slices in any way.
|
||||
|
||||
The Partition Table resides in a sector that is shared with the System
|
||||
Area of CP/M Slice 0. However, the RomWBW implementation of CP/M takes
|
||||
steps to avoid changing or corrupting the Partition Table area.
|
||||
|
||||
The FAT partition can be created from CP/M using the FDISK80
|
||||
application. The user is responsible for ensuring that the start of the
|
||||
FAT partition does not overlap with the area they intend to use for
|
||||
CP/M slices. FDISK80 has a Reserve option to assist with this.
|
||||
|
||||
# System Boot Process
|
||||
|
||||
A multi-phase boot strategy is employed. This is necessary because at
|
||||
@@ -610,12 +847,19 @@ more of the defined media types.
|
||||
| MID_FD111 | 9 | 8" 1.11M Floppy |
|
||||
| MID_HD1K | 10 | Hard Disk (LBA) w/ 1024 directory entries |
|
||||
|
||||
**NOTE**: HBIOS does not actually differentiate between MID_HD512 and
|
||||
MID_HD1K. The use of these two formats is determined by the use of a
|
||||
partition table on the media and is implemented by the operating
|
||||
system itself. HBIOS treats all hard disks as raw sectors. See
|
||||
[Function 0x18 -- Disk Media (DIOMEDIA)] for more information on the
|
||||
Media ID byte returned.
|
||||
|
||||
HBIOS supports both Cylinder/Head/Sector (CHS) and Logical Block
|
||||
Addresses (CHS) when locating a sector for I/O (see DIOSEEK function).
|
||||
For devices that are natively CHS (e.g., floppy disk), the HBIOS driver
|
||||
can convert LBA values to CHS values according to the geometry of the
|
||||
current media. For devices that are natively LBA (e.g., hard disk), the
|
||||
HBIOS driver simulates CHS using a fictitious geometry provided by the
|
||||
HBIOS driver simulates CHS using a fictitious geometry provided by the
|
||||
driver (typically 16 sectors per track and 16 heads per cylinder).
|
||||
|
||||
### Function 0x10 -- Disk Status (DIOSTATUS)
|
||||
@@ -828,6 +1072,12 @@ Report the Media ID (E) for the for media in the specified Disk Unit
|
||||
will be performed. The Status (A) is a standard HBIOS result code. If
|
||||
there is no media in device, function will return an error status.
|
||||
|
||||
**NOTE**: This function will always return MID_HD512 for hard disk
|
||||
devices. MID_HD1K is provided for use internally by operating systems
|
||||
that provide different filsystem formats depending on the partition
|
||||
table. This function cannot be used to determine if an HD1K formatted
|
||||
partition exists on the hard disk.
|
||||
|
||||
### Function 0x19 -- Disk Define Media (DIODEFMED)
|
||||
|
||||
| **Entry Parameters** | **Returned Values** |
|
||||
@@ -861,7 +1111,7 @@ DIOMEDIA function to force this if desired.
|
||||
| **Entry Parameters** | **Returned Values** |
|
||||
|----------------------------------------|----------------------------------------|
|
||||
| B: 0x1B | A: Status |
|
||||
| C: Disk Unit | D: Heads |
|
||||
| C: Disk Unit | D: Heads / LBA |
|
||||
| | E: Sectors |
|
||||
| | HL: Cylinder Count |
|
||||
| | BC: Block Size |
|
||||
@@ -871,7 +1121,11 @@ device uses LBA mode addressing natively, then the drivers simulated
|
||||
geometry will be returned. The Status (A) is a standard HBIOS result
|
||||
code. If the media is unknown, an error will be returned.
|
||||
|
||||
Heads (D) refers to the number of heads per cylinder. Sectors (E)
|
||||
LBA capability is indicated by D:7. When set, the device is capable
|
||||
of LBA addressing. Refer to [Function 0x12 -- Disk Seek (DIOSEEK)]
|
||||
for more information on specifying LBA vs. CHS addresses.
|
||||
|
||||
Heads (D:6-0) refers to the number of heads per cylinder. Sectors (E)
|
||||
refers to the number of sectors per track. Cylinder Count (HL) is the
|
||||
total number of cylinders addressable for the media. Block Size (BC)
|
||||
is the number of bytes in one sector.
|
||||
@@ -1879,7 +2133,7 @@ sound will play for the duration defined in HL and then return.
|
||||
| **Entry Parameters** | **Returned Values** |
|
||||
|----------------------------------------|----------------------------------------|
|
||||
| B: 0x57 | A: Status |
|
||||
| C: Disk Unit | C: Device Attributes |
|
||||
| C: Sound Unit | C: Device Attributes |
|
||||
| | D: Device Type |
|
||||
| | E: Device Number |
|
||||
| | H: Device Unit Mode |
|
||||
@@ -1902,6 +2156,17 @@ is servicing the specified unit. Both of these values are considered
|
||||
driver specific. Refer to the associated hardware driver for the values
|
||||
used.
|
||||
|
||||
### Function 0x58 -- Sound Beep (SNDBEEP)
|
||||
|
||||
| **Entry Parameters** | **Returned Values** |
|
||||
|----------------------------------------|----------------------------------------|
|
||||
| B: 0x58 | A: Status |
|
||||
| C: Sound Unit | |
|
||||
|
||||
Play a beep tone on the specified Sound Unit (C). The beep will
|
||||
normally be about 1/3 second in duration and the tone will be
|
||||
approximately B5.
|
||||
|
||||
`\clearpage`{=latex}
|
||||
|
||||
## System (SYS)
|
||||
@@ -2262,6 +2527,9 @@ a double-word binary value. The frequency of the system timer in Hertz
|
||||
is returned in Frequency (C). The returned Status (A) is a standard HBIOS
|
||||
result code.
|
||||
|
||||
The tick count is a 32 bit binary value. It will rollover to zero
|
||||
if the maximum value for a 32 bit number is reached.
|
||||
|
||||
Note that not all hardware configuration have a system timer. You
|
||||
can determine if a timer exists by calling this function repeatedly
|
||||
to see if it is incrementing.
|
||||
@@ -2272,14 +2540,19 @@ to see if it is incrementing.
|
||||
|----------------------------------------|----------------------------------------|
|
||||
| B: 0xF8 | A: Status |
|
||||
| C: 0xD1 | DEHL: Seconds Count |
|
||||
| | C: Ticks per Second |
|
||||
| | C: Remainder Ticks |
|
||||
|
||||
Return the a Seconds Count (DEHL) with the number of seconds that have
|
||||
Return the Seconds Count (DEHL) with the number of seconds that have
|
||||
elapsed since the system was started. This is a double-word binary
|
||||
value. Additionally, the number of Ticks per Second (C) is returned.
|
||||
The returned Status (A) is a standard HBIOS result code.
|
||||
value. Additionally, Remainder Ticks (C) is returned and contains the number
|
||||
of ticks that have elapsed within the current second.
|
||||
|
||||
This availability of the Seconds Count (DEHL) is dependent on having a
|
||||
Note that Remainder Ticks (C) will have a value from 0 to 49 since there are
|
||||
50 ticks per second. So, Remainder Ticks does not represent a fraction of the
|
||||
current second. Remainder Ticks (C) can be doubled to derive the hundredths of
|
||||
milliseconds elapsed within the current second.
|
||||
|
||||
The availability of the Seconds Count (DEHL) is dependent on having a
|
||||
system timer active. If the hardware configuration has no system timer,
|
||||
then Seconds Count (DEHL) will not increment.
|
||||
|
||||
|
||||
@@ -11,11 +11,8 @@ companion documents you should refer to as appropriate:
|
||||
of RomWBW. It includes a reference for the RomWBW HBIOS API
|
||||
functions.
|
||||
|
||||
* $doc_romapps$ is a reference for the ROM-hosted applications provided
|
||||
with RomWBW including the monitor, programming languages, etc.
|
||||
|
||||
* $doc_apps$ is a reference for the OS-hosted proprietary command
|
||||
line applications that were created to enhance RomWBW.
|
||||
* $doc_apps$ is a reference for the ROM-hosted and OS-hosted applications
|
||||
created or customized to enhance the operation of RomWBW.
|
||||
|
||||
* $doc_catalog$ is a reference for the contents of the disk images
|
||||
provided with RomWBW. It is somewhat out of date at this time.
|
||||
@@ -225,45 +222,47 @@ by RomWBW along with the standard pre-built ROM image(s). RomWBW does
|
||||
allow for the creation of ROM images with custom configurations. This
|
||||
is discussed in [Customizing RomWBW].
|
||||
|
||||
| **Description** | **Bus** | **ROM Image File** | **Baud Rate** |
|
||||
|----------------------------------------------------------------|---------|-----------------------|--------------:|
|
||||
| [RetroBrew Z80 SBC]^1^ | ECB | SBC_std.rom | 38400 |
|
||||
| [RetroBrew Z80 SimH]^1^ | - | SBC_simh.rom | 38400 |
|
||||
| [RetroBrew N8 Z180 SBC]^1^ (date code >= 2312) | ECB | N8_std.rom | 38400 |
|
||||
| [Zeta Z80 SBC]^2^, ParPortProp | - | ZETA_std.rom | 38400 |
|
||||
| [Zeta V2 Z80 SBC]^2^, ParPortProp | - | ZETA2_std.rom | 38400 |
|
||||
| [Mark IV Z180 SBC]^3^ | ECB | MK4_std.rom | 38400 |
|
||||
| [RCBus Z80 CPU Module]^4^, 512K RAM/ROM | RCBus | RCZ80_std.rom | 115200 |
|
||||
| [RCBus Z80 CPU Module]^4^, 512K RAM/ROM, KIO | RCBus | RCZ80_kio.rom | 115200 |
|
||||
| [RCBus Z180 CPU Module]^4^ w/ external banking | RCBus | RCZ180_ext.rom | 115200 |
|
||||
| [RCBus Z180 CPU Module]^4^ w/ native banking | RCBus | RCZ180_nat.rom | 115200 |
|
||||
| [RCBus Z280 CPU Module]^4^ w/ external banking | RCBus | RCZ180_ext.rom | 115200 |
|
||||
| [RCBus Z280 CPU Module]^4^ w/ native banking | RCBus | RCZ180_nat.rom | 115200 |
|
||||
| [Easy Z80 SBC]^2^ | RCBus | RCZ80_easy.rom | 115200 |
|
||||
| [Tiny Z80 SBC]^2^ | RCBus | RCZ80_tiny.rom | 115200 |
|
||||
| [Z80-512K CPU/RAM/ROM Module]^2^ | RCBus | RCZ80_skz.rom | 115200 |
|
||||
| [Small Computer SC126 Z180 SBC]^5^ | BP80 | SCZ180_sc126.rom | 115200 |
|
||||
| [Small Computer SC130 Z180 SBC]^5^ | RCBus | SCZ180_sc130.rom | 115200 |
|
||||
| [Small Computer SC131 Z180 Pocket Computer]^5^ | - | SCZ180_sc131.rom | 115200 |
|
||||
| [Small Computer SC140 Z180 CPU Module]^5^ | Z50 | SCZ180_sc140.rom | 115200 |
|
||||
| [Small Computer SC503 Z180 CPU Module]^5^ | Z50 | SCZ180_sc503.rom | 115200 |
|
||||
| [Small Computer SC700 Z180 CPU Module]^5^ | RCBus | SCZ180_sc700.rom | 115200 |
|
||||
| [Dyno Z180 SBC]^6^ | Dyno | DYNO_std.rom | 38400 |
|
||||
| [Nhyodyne Z80 MBC]^1^ | MBC | MBC_std.rom | 38400 |
|
||||
| [Rhyophyre Z180 SBC]^1^ | - | RPH_std.rom | 38400 |
|
||||
| [Z80 ZRC CPU Module]^7^ | RCBus | RCZ80_zrc.rom | 115200 |
|
||||
| [Z80 ZRC CPU Module]^7^ ROMless | RCBus | RCZ80_zrc_ram.rom | 115200 |
|
||||
| [Z80 ZRC512 CPU Module]^7^ | RCBus | RCZ80_zrc512.rom | 115200 |
|
||||
| [Z180 Z1RCC CPU Module]^7^ | RCBus | RCZ180_z1rcc.rom | 115200 |
|
||||
| [Z280 ZZRCC CPU Module]^7^ | RCBus | RCZ280_zzrcc.rom | 115200 |
|
||||
| [Z280 ZZRCC CPU Module]^7^ ROMless | RCBus | RCZ280_zzrcc_ram.rom | 115200 |
|
||||
| [Z280 ZZ80MB SBC]^7^ | RCBus | RCZ280_zz80mb.rom | 115200 |
|
||||
| [Z80-Retro SBC]^8^ | - | Z80RETRO_std.rom | 38400 |
|
||||
| [S100 Computers Z180]^9^ | S100 | S100_std.rom | 57600 |
|
||||
| [Duodyne Z80 System]^1^ | Duo | DUO_std.rom | 38400 |
|
||||
| [Heath H8 Z80 System]^10^ | H8 | HEATH_std.rom | 115200 |
|
||||
| [EP Mini-ITX Z180]^11^ | RCBus? | EPITX_std.rom | 115200 |
|
||||
| [NABU w/ RomWBW Option Board]^10^ | NABU | NABU_std.rom | 115200 |
|
||||
| **Description** | **Bus** | **ROM Image File** | **Baud Rate** |
|
||||
|-------------------------------------------------------------|---------|------------------------------|--------------:|
|
||||
| [RetroBrew Z80 SBC]^1^ | ECB | SBC_std.rom | 38400 |
|
||||
| [RetroBrew Z80 SimH]^1^ | - | SBC_simh.rom | 38400 |
|
||||
| [RetroBrew N8 Z180 SBC]^1^ (date >= 2312) | ECB | N8_std.rom | 38400 |
|
||||
| [Zeta Z80 SBC]^2^, ParPortProp | - | ZETA_std.rom | 38400 |
|
||||
| [Zeta V2 Z80 SBC]^2^, ParPortProp | - | ZETA2_std.rom | 38400 |
|
||||
| [Mark IV Z180 SBC]^3^ | ECB | MK4_std.rom | 38400 |
|
||||
| [RCBus Z80 CPU Module]^4^, 512K RAM/ROM | RCBus | RCZ80_std.rom | 115200 |
|
||||
| [RCBus Z80 CPU Module]^4^, 512K w/KIO | RCBus | RCZ80_kio_std.rom | 115200 |
|
||||
| [RCBus Z180 CPU Module]^4^ w/ ext banking | RCBus | RCZ180_ext_std.rom | 115200 |
|
||||
| [RCBus Z180 CPU Module]^4^ w/ native banking | RCBus | RCZ180_nat_std.rom | 115200 |
|
||||
| [RCBus Z280 CPU Module]^4^ w/ ext banking | RCBus | RCZ180_ext_std.rom | 115200 |
|
||||
| [RCBus Z280 CPU Module]^4^ w/ native banking | RCBus | RCZ180_nat_std.rom | 115200 |
|
||||
| [Easy Z80 SBC]^2^ | RCBus | RCZ80_easy_std.rom | 115200 |
|
||||
| [Tiny Z80 SBC]^2^ | RCBus | RCZ80_tiny_std.rom | 115200 |
|
||||
| [Z80-512K CPU/RAM/ROM Module]^2^ | RCBus | RCZ80_skz_std.rom | 115200 |
|
||||
| [Small Computer SC126 Z180 SBC]^5^ | BP80 | SCZ180_sc126_std.rom | 115200 |
|
||||
| [Small Computer SC130 Z180 SBC]^5^ | RCBus | SCZ180_sc130_std.rom | 115200 |
|
||||
| [Small Computer SC131 Z180 Pocket Comp]^5^ | - | SCZ180_sc131_std.rom | 115200 |
|
||||
| [Small Computer SC140 Z180 CPU Module]^5^ | Z50 | SCZ180_sc140_std.rom | 115200 |
|
||||
| [Small Computer SC503 Z180 CPU Module]^5^ | Z50 | SCZ180_sc503_std.rom | 115200 |
|
||||
| [Small Computer SC700 Z180 CPU Module]^5^ | RCBus | SCZ180_sc700_std.rom | 115200 |
|
||||
| [Dyno Z180 SBC]^6^ | Dyno | DYNO_std.rom | 38400 |
|
||||
| [Nhyodyne Z80 MBC]^1^ | MBC | MBC_std.rom | 38400 |
|
||||
| [Rhyophyre Z180 SBC]^1^ | - | RPH_std.rom | 38400 |
|
||||
| [Z80 ZRC CPU Module]^7^ | RCBus | RCZ80_zrc_std.rom | 115200 |
|
||||
| [Z80 ZRC CPU Module]^7^ ROMless | RCBus | RCZ80_zrc_ram_std.rom | 115200 |
|
||||
| [Z80 ZRC512 CPU Module]^7^ | RCBus | RCZ80_zrc512_std.rom | 115200 |
|
||||
| [Z180 Z1RCC CPU Module]^7^ | RCBus | RCZ180_z1rcc_std.rom | 115200 |
|
||||
| [Z280 ZZRCC CPU Module]^7^ | RCBus | RCZ280_zzrcc_std.rom | 115200 |
|
||||
| [Z280 ZZRCC CPU Module]^7^ ROMless | RCBus | RCZ280_zzrcc_ram_std.rom | 115200 |
|
||||
| [Z280 ZZ80MB SBC]^7^ | RCBus | RCZ280_zz80mb_std.rom | 115200 |
|
||||
| [Z80-Retro SBC]^8^ | - | Z80RETRO_std.rom | 38400 |
|
||||
| [S100 Computers Z180]^9^ | S100 | S100_std.rom | 57600 |
|
||||
| [Duodyne Z80 System]^1^ | Duo | DUO_std.rom | 38400 |
|
||||
| [Heath H8 Z80 System]^10^ | H8 | HEATH_std.rom | 115200 |
|
||||
| [EP Mini-ITX Z180]^11^ | RCBus? | EPITX_std.rom | 115200 |
|
||||
| [NABU w/ RomWBW Option Board]^10^ | NABU | NABU_std.rom | 115200 |
|
||||
| [S100 FPGA Z80]^9^ | S100 | FZ80_std.rom | 9600 |
|
||||
| [Genesis STD Z180]^12^ | STD | GMZ180_std.rom | 115200 |
|
||||
|
||||
| ^1^Designed by Andrew Lynch
|
||||
| ^2^Designed by Sergey Kiselev
|
||||
@@ -276,6 +275,7 @@ is discussed in [Customizing RomWBW].
|
||||
| ^9^Designed by John Monahan
|
||||
| ^10^Designed by Les Bird
|
||||
| ^11^Designed by Alan Cox
|
||||
| ^12^Designed by Doug Jackson
|
||||
|
||||
RCBus refers to Spencer Owen's RC2014 bus specification and derivatives
|
||||
including RC26, RC40, RC80, and BP80.
|
||||
@@ -390,7 +390,7 @@ At the Boot Loader prompt, you can type `H <enter>` for help. You
|
||||
can type `L <enter>` to list the available built-in ROM applications.
|
||||
If your terminal supports ANSI escape sequences, you can try the
|
||||
'P' command to play a simple on-screen game. Instructions for the
|
||||
game are found in $doc_romapps$.
|
||||
game are found in $doc_apps$.
|
||||
|
||||
If all of this seems fine, your ROM has been successfully programmed.
|
||||
See the [Boot Loader Operation] section of this document for further
|
||||
@@ -644,7 +644,7 @@ return to the Boot Loader menu. If you are interested in creating a
|
||||
custom application to run here, review the "usrrom.asm" file in the
|
||||
Source/HBIOS folder of the distribution.
|
||||
|
||||
Each of the ROM Applications is documented in $doc_romapps$. Some
|
||||
Each of the ROM Applications is documented in $doc_apps$. Some
|
||||
of the applications (such as BASIC) also have their own independent
|
||||
manual in the Doc directory of the distribution. The OSes included
|
||||
in the ROM (CP/M 2.2 & Z-System) are described in the Operating Systems
|
||||
@@ -785,23 +785,62 @@ the [Disk Images] section of this document.
|
||||
|
||||
### Auto-Submit Batch Files
|
||||
|
||||
All of the operating systems supplied with RomWBW have the ability to
|
||||
execute a "batch" of commands by creating a batch submission file
|
||||
containing the commands to be executed. The specifics of using
|
||||
batch files in a specific operating system is covered in its specific
|
||||
documentation.
|
||||
All of the operating systems supplied with RomWBW have the ability to
|
||||
execute a "batch" of commands by creating a batch submission file
|
||||
containing the commands to be executed. The mechanism for running
|
||||
commands automatically at startup varies by operating system. In some
|
||||
cases, it was built into the original operating system. In other cases,
|
||||
I have added this capability in the RomWBW BIOS of the operating
|
||||
system.
|
||||
|
||||
At boot, the operating system will look for a specific batch file
|
||||
(`PROFILE.SUB` for CP/M 2.2 and 3) on the boot drive and execute that
|
||||
batch file automatically. This allows you to automatically customize
|
||||
your operating system with any commands desired at boot. CP/M 2.2 did
|
||||
not originally have the ability to automatically excute a batch file at
|
||||
boot, but the CBIOS in RomWBW has added this capability.
|
||||
In all cases, the file containing the commands to run at startup must
|
||||
be on the boot drive (A:). RomWBW automatically assigns A: to the
|
||||
disk slice you choose to boot. Adding a startup command file to the
|
||||
ROM Disk is not recommended because it would require customizing and
|
||||
building a new ROM. Use of bootable disk slices is preferred since
|
||||
the startup command files can be added/edited without any special
|
||||
system customization.
|
||||
|
||||
Here is an overview for each operating system:
|
||||
|
||||
- **CP/M 2.2** - Will run PROFILE.SUB as a SUBMIT file if it exists in
|
||||
A: at startup. Note that original CP/M 2.2 itself did not have this
|
||||
ability -- it was added to the RomWBW CP/M 2.2 BIOS. The use of SUBMIT
|
||||
files is documented in Section 1.6.7 SUBMIT Command of the CPM Manual
|
||||
included in the Doc/CPM folder of the RomWBW distribution.
|
||||
|
||||
- **Z-System (ZSDOS 1.1)** - Will run run PROFILE.SUB as a SUBMIT file
|
||||
if it exists in A: at startup. Works exactly the same as CP/M 2.2.
|
||||
The original Z-System ZSDOS 1.1 did not have this ability -- it was
|
||||
added to the RomWBW Z-System BIOS. The Z-System documentation does
|
||||
not cover the use of SUBMIT files -- please refer to the CP/M 2.2
|
||||
documentation.
|
||||
|
||||
- **NZCOM** - Will run the command STARTZCM at startup. This is
|
||||
normally an alias file. You use SALIAS to edit such files. Please see
|
||||
Section 3.1 Creating an Alias of the NZCOM Users Manual included in the
|
||||
Doc/CPM folder of the RomWBW distribution. Note that the NZCOM
|
||||
distribution includes a PROFILE.SUB file. NZCOM itself is launched from
|
||||
ZSDOS. The included PROFILE.SUB accomplishes this. Do not modify this
|
||||
file unless you fully understand the NZCOM boot process.
|
||||
|
||||
- **CP/M 3** - Will run PROFILE.SUB as a SUBMIT file if it exists in A:
|
||||
at startup. This mechanism is built into the CP/M 3 operating system.
|
||||
Please see Section 4.5 Executing Multiple Commands and Section 5.2.74
|
||||
Executing the SUBMIT Command of the CPM3 Users Guide included in the
|
||||
Doc/CPM folder of the RomWBW distribution.
|
||||
|
||||
- **ZPM3** - Will run the command STARTZPM at startup. This is normally
|
||||
an alias file. You use SALIAS to edit such files. ZPM3 has no real
|
||||
documentation. The NZCOM documentation of STARTZCM is generally correct
|
||||
for ZPM3.
|
||||
|
||||
Since RomWBW can utilize many disk slices, it is very easy to create
|
||||
slices for specific workflows (editing, software development, games,
|
||||
etc.). You can then just boot to the slice that is optimized for the
|
||||
task you want to perform.
|
||||
task you want to perform. Each such slice may have its own startup
|
||||
command batch file that customizes the environment for the specific
|
||||
workflow desired.
|
||||
|
||||
## System Management
|
||||
|
||||
@@ -1948,13 +1987,38 @@ new combo disk image.
|
||||
|
||||
#### Custom Hard Disk Image
|
||||
|
||||
If you want to use specific slices in a specific order, you can easily
|
||||
generate a custom hard disk image file.
|
||||
|
||||
For hard disks, each .img file represents a single slice (CP/M
|
||||
filesystem). Since a hard disk can contain many slices, you can just
|
||||
concatenate the slices (.img files) together to create your desired hard
|
||||
disk image. For example, if you want to create a hard disk image that
|
||||
disk image.
|
||||
|
||||
If you look in the Binary directory of the distribution, you will see
|
||||
that there are more disk (slice) images than the 6 that are included
|
||||
in the "combo" disk images. These images are identified by looking
|
||||
for the files that start with hd1k_ or hd512_.
|
||||
|
||||
You can add slices to the combo disk images simply by tacking
|
||||
slices onto the end. For example, if you want to add a slice
|
||||
containing the MSX ROMs to the end of the combo image, you could
|
||||
use one of the following command lines depending on your operating
|
||||
system:
|
||||
|
||||
Windows:
|
||||
|
||||
`COPY /B hd1k_combo.img + hd1k_msxroms.img my_hd.img`
|
||||
|
||||
Linus/MaxOS:
|
||||
|
||||
`cat hd1k_combo.img hd1k_msxroms.img >my_hd.img`
|
||||
|
||||
Note that you **must** be sure to use either the hd1k_ or hd512_
|
||||
prefixed files together. You cannot mix them.
|
||||
|
||||
If you want to create a completely custom hard disk image that is not
|
||||
based on the existing combo image, you can generate a disk image entirely
|
||||
from scratch using whatever slices you want in whatever order you like.
|
||||
|
||||
For example, if you want to create a hard disk image that
|
||||
has slices for CP/M 2.2, CP/M 3, and WordStar in the hd512 format, you
|
||||
would use the command line of your modern computer to create the final
|
||||
image:
|
||||
@@ -2241,7 +2305,7 @@ less likely to encounter compatibility issues.
|
||||
|
||||
#### Documentation
|
||||
|
||||
* [CPM Manual]($doc_root$/CPM Manual.pdf)
|
||||
* [CPM Manual]($doc_root$/CPM/CPM Manual.pdf)
|
||||
|
||||
#### Boot Disk
|
||||
|
||||
@@ -2287,9 +2351,9 @@ via the NZ-COM adaptation (see below).
|
||||
|
||||
#### Documentation
|
||||
|
||||
* [ZCPR Manual]($doc_root$/ZCPR Manual.pdf)
|
||||
* [ZCPR-DJ]($doc_root$/ZCPR-DJ.doc)
|
||||
* [ZSDOS Manual]($doc_root$/ZSDOS Manual.pdf)
|
||||
* [ZCPR Manual]($doc_root$/CPM/ZCPR Manual.pdf)
|
||||
* [ZCPR-DJ]($doc_root$/CPM/ZCPR-DJ.doc)
|
||||
* [ZSDOS Manual]($doc_root$/CPM/ZSDOS Manual.pdf)
|
||||
|
||||
#### Boot Disk
|
||||
|
||||
@@ -2316,28 +2380,12 @@ call "ZSYS.SYS". For example:
|
||||
or MAP, you may need to run “RELOG” to get the drive properly
|
||||
recognized by ZSDOS.
|
||||
|
||||
* RomWBW fully supports both DateStamper and P2DOS file date/time
|
||||
stamping. You must load the desired stamping module (`LDDS` for
|
||||
DateStamper or `LDP2D` for P2DOS). This could be automated using
|
||||
a `PROFILE.SUB` file. Follow the ZSDOS documentation to initialize
|
||||
a disk for stamping.
|
||||
|
||||
* ZSVSTAMP expects to be running under the ZCPR 3.X command processor.
|
||||
By default, RomWBW uses ZCPR 1.0 (intentionally, to reduce space usage)
|
||||
and ZSVSTAMP will just abort in this case. It will work fine if you
|
||||
implement NZCOM. ZSVSTAMP is included solely to facilitate usage
|
||||
if/when you install NZCOM.
|
||||
|
||||
* FILEDATE only works with DateStamper style date stamping. If you run
|
||||
it on a drive that is not initialized for DateStamper, it will complain
|
||||
`FILEDATE, !!!TIME&.DAT missing`. This is normal and just means that
|
||||
you have not initialized that drive for DateStamper (using PUTDS).
|
||||
|
||||
* ZXD will handle either DateStamper or P2DOS type date stamping.
|
||||
However, it **must** be configured appropriately. As distributed, it will
|
||||
look for P2DOS date stamps. Use ZCNFG to reconfigure it for P2DOS if
|
||||
that is what you are using.
|
||||
|
||||
* Many of the tools can be configured (using either ZCNFG or DSCONFIG).
|
||||
The configuration process modifies the actual application file itself.
|
||||
This will fail if you try to modify one that is on the ROM disk because
|
||||
@@ -2348,10 +2396,6 @@ call "ZSYS.SYS". For example:
|
||||
SETTERM. So, run SETTERM on DSCONFIG before using DSCONFIG to configure
|
||||
DATSWEEP!
|
||||
|
||||
* After using PUTDS to initialize a directory for ZDS date stamping, I
|
||||
am finding that it is necessary to run RELOG before the stamping
|
||||
routines will actually start working.
|
||||
|
||||
* Generic CP/M PIP and ZSDOS path searching do not mix well if you use
|
||||
PIP to copy to or from a directory in the ZSDOS search path. Best to
|
||||
use COPY from the ZSDOS distribution.
|
||||
@@ -2376,7 +2420,7 @@ Manual.pdf" document in order to use this operating system effectively.
|
||||
|
||||
#### Documentation
|
||||
|
||||
* [NZCOM Users Manual]($doc_root$/NZCOM Users Manual.pdf)
|
||||
* [NZCOM Users Manual]($doc_root$/CPM/NZCOM Users Manual.pdf)
|
||||
|
||||
#### Boot Disk
|
||||
|
||||
@@ -2401,10 +2445,10 @@ has a new suite of support tools and help system.
|
||||
|
||||
#### Documentation
|
||||
|
||||
* [CPM3 Users Guide]($doc_root$/CPM3 Users Guide.pdf)
|
||||
* [CPM3 Command Summary]($doc_root$/CPM3 Command Summary.pdf)
|
||||
* [CPM3 Programmers Guide]($doc_root$/CPM3 Programmers Guide.pdf)
|
||||
* [CPM3 System Guide]($doc_root$/CPM3 System Guide.pdf)
|
||||
* [CPM3 Users Guide]($doc_root$/CPM/CPM3 Users Guide.pdf)
|
||||
* [CPM3 Command Summary]($doc_root$/CPM/CPM3 Command Summary.pdf)
|
||||
* [CPM3 Programmers Guide]($doc_root$/CPM/CPM3 Programmers Guide.pdf)
|
||||
* [CPM3 System Guide]($doc_root$/CPM/CPM3 System Guide.pdf)
|
||||
|
||||
#### Boot Disk
|
||||
|
||||
@@ -2553,9 +2597,9 @@ regarding the RomWBW adaptation and customizations.
|
||||
|
||||
#### Documentation
|
||||
|
||||
* [QP/M 2.7 Installation Guide and Supplements]($doc_root$/qpm27.pdf)
|
||||
* [QP/M 2.7 Interface Guide]($doc_root$/qdos27.pdf)
|
||||
* [QP/M 2.7 Features and Facilities]($doc_root$/qcp27.pdf)
|
||||
* [QP/M 2.7 Installation Guide and Supplements]($doc_root$/CPM/qpm27.pdf)
|
||||
* [QP/M 2.7 Interface Guide]($doc_root$/CPM/qdos27.pdf)
|
||||
* [QP/M 2.7 Features and Facilities]($doc_root$/CPM/qcp27.pdf)
|
||||
|
||||
#### Boot Disk
|
||||
|
||||
@@ -2628,7 +2672,19 @@ selecting slice 0 of the corresponding hard disk unit at
|
||||
the RomWBW Boot Loader prompt. Do not attempt to use
|
||||
CP/M slices on the same disk.
|
||||
|
||||
Refer to the ReadMe.txt file in Source/pSys for more details.
|
||||
Due to limitations in the p-System configuration mechanism, it does
|
||||
not recognize the arrow keys of an ANSI Terminal. To work around
|
||||
this, the following control keys have been defined:
|
||||
|
||||
| Function | Key |
|
||||
|------------|------------|
|
||||
| Up | ctrl+E |
|
||||
| Down | ctrl+X |
|
||||
| Left | ctrl+S |
|
||||
| Right | ctrl+D |
|
||||
|
||||
Refer to [Source/pSys/ReadMe.txt]($file_root$/Source/pSys/ReadMe.txt)
|
||||
for more details about the p-System adaptation.
|
||||
|
||||
#### Documentation
|
||||
|
||||
@@ -3038,8 +3094,11 @@ SAMPLE2.TXT ==> 4:/SAMPLE2.TXT ... [OK]
|
||||
RomWBW supports a variety of real time clock hardware. If your
|
||||
system has this hardware, then it will be able to maintain the
|
||||
current date and time even while your system is turned off.
|
||||
|
||||
Additionally, depending on the operating system being used, you may be
|
||||
able to utilize date/time stamping of files.
|
||||
To facilitate this a CP/M clock driver (WBWCLK) has been included
|
||||
inside `CLOCKS.DAT` that will read the clock via a RomWBW HBIOS call
|
||||
|
||||
You can determine if your system has a real time clock present (and
|
||||
functioning) by looking at the boot messages. Here is an example of
|
||||
@@ -3065,6 +3124,8 @@ RomwWBW includes two utilities for displaying or setting the date/time
|
||||
stored by the RTC. They are both a bit different and are briefly
|
||||
described below.
|
||||
|
||||
A third utility `TESTCLOK` is also included as part of ZSDOS
|
||||
|
||||
### WDATE Utility
|
||||
|
||||
The `WDATE` utility (contributed by Kevin Boone) is an application
|
||||
@@ -3144,6 +3205,57 @@ Do **not** enable charging unless you are sure that your system
|
||||
supports this. If your RTC is being powered by a normal battery, it
|
||||
would be dangerous to enable charging.
|
||||
|
||||
### TESTCLOK Utility
|
||||
|
||||
The `TESTCLOK` utility is used to test a selected CPM clock driver
|
||||
loaded from the CLOCKS.DAT file. After selecting the location of CLOCKS.DAT
|
||||
and the clock driver (45. WBWCLK) it displays the currently configured time
|
||||
until a key is pressed.
|
||||
|
||||
```
|
||||
A>testclok
|
||||
|
||||
TESTCLOK V1.0 Copyright (C) 1988 H.F. Bower / C.W. Cotrill
|
||||
|
||||
Extract Clock from Library ([Y]/N) : Y
|
||||
Location of CLOCKS.DAT [A0:] : <RETURN>
|
||||
|
||||
1. ACTRIX 2. ALSPA 3. AMPRO-LB
|
||||
4. ANLYTCL-PRD 5. AP2-CDZ180 6. AP2-THND/MT
|
||||
7. AP2-TIMASTR 8. AP2E+PCP-TM 9. AP2E+PCPI
|
||||
10. AP2E-THUNDR 11. AP2E-TMASTR 12. BIG-BD-II
|
||||
13. BP-BIOS 14. CCS-WALLCLK 15. CPUPRO-SSB1
|
||||
16. ELECTR-MFIO 17. EPSON-QX10 18. ETS180IO+
|
||||
19. H19-SUPER19 20. H19-ULTRA 21. H19-WATZMAN
|
||||
22. H89-BITZERO 23. H89-PC12 24. H89-WIDGET
|
||||
25. H89-WISE 26. H89UTI 27. HEATH-BIOS
|
||||
28. HOUSEMASTER 29. K83-HOLMES 30. KAYPRO-84
|
||||
31. KENMOR-ZTIM 32. KPRO-ADVENT 33. KPRO-LEGACY
|
||||
34. MD3-MACK 35. MTN100K-DAY 36. ONEAC-ON!
|
||||
37. OTRANA-ATCH 38. P&T-HEARTBT 39. QTSYS-S100
|
||||
40. RELATIVE 41. S100-5832 42. SB180-HRTBT
|
||||
43. SB180-XBIOS 44. SIMHCLOK 45. WBWCLK
|
||||
46. XEROX-820 47. ZSDOS-BIOS
|
||||
|
||||
Enter Clock Driver Selection : 45
|
||||
|
||||
..Loading : WBWCLK ...
|
||||
Linking Clock Module... OK
|
||||
RomWBW HBIOS Clock 1.1
|
||||
|
||||
RomWBW Series HBIOS Clock
|
||||
|
||||
Press any key to quit...
|
||||
|
||||
19 Oct 2023 14:24:34
|
||||
```
|
||||
|
||||
Since this runs at the CPM driver level it is useful as an end-to-end test
|
||||
to prove that date time stamping is able to read the correct time
|
||||
|
||||
The `TESTCLOK` utility is provided by ZSDOS, plese see the ZSDOS Manual
|
||||
for further information
|
||||
|
||||
## Date/Time File Stamping
|
||||
|
||||
If an RTC is available in your system, then most operating systems
|
||||
@@ -3152,10 +3264,16 @@ date/time of file creation, update, and or access in the directory.
|
||||
This capability is available in all of the RomWBW operating system
|
||||
except the original DRI CP/M 2.2.
|
||||
|
||||
In some cases (such as ZSDOS), you must load an RSX (memory resident
|
||||
utility) to enable date/time stamping of files. Additionally, you
|
||||
will need to initialize the directory. The procedure varies in each
|
||||
operation system, so you must review the associated documentation.
|
||||
Three types of date/time stamping are supported using realtime clock
|
||||
supported by RomWBW HBIOS. DateStamper, NZT and P2DOS.
|
||||
|
||||
In some cases (such as ZSDOS), you must load an RSX (memory resident
|
||||
utility) to enable date/time stamping of files. This could be automated
|
||||
using a `PROFILE.SUB` file.
|
||||
Preconfigured loaders are provided, bypassing the need to use SETUPZST.
|
||||
|
||||
Additionally, you will need to initialize the directory. The procedure varies
|
||||
depending on the date/time stamping mechanism, so you must review the associated documentation.
|
||||
|
||||
The date/time stamping mechanisms for each operating system are
|
||||
generally not compatible. If you initialize a directory for a type
|
||||
@@ -3166,6 +3284,71 @@ mechanism. Doing so may corrupt the directory.
|
||||
The RomWBW disk images do not have date/time stamping initialized. This
|
||||
is to avoid any chance of directory corruption.
|
||||
|
||||
### DateStamper
|
||||
|
||||
DateStamper datestamping follows the standard set by Plu*Perfect Systems.
|
||||
This method stores stamps in a disk file named `!!!TIME&.DAT`.
|
||||
Only DateStamper stamping stores full time and date stamps for
|
||||
file Creation, Last Modification, and Last Access,
|
||||
and may be used with any CP/M diskette format. In addition,
|
||||
the DateStamper protocol is supported by a mature set of compatible utilities.
|
||||
|
||||
Key Utilities
|
||||
|
||||
* LDDS.COM - Load DateStamper date/time stamping resident extension. (RomWBW Provided)
|
||||
* PUTDS.COM - Prepare disk for DateStamper date/time stamping.
|
||||
|
||||
After using PUTDS to initialize a directory for ZDS date stamping,
|
||||
it may be necessary to run RELOG before the stamping routines
|
||||
will actually start working.
|
||||
|
||||
### P2DOS (CP/M Plus compatible)
|
||||
|
||||
CP/M Plus-type datestamping is also widely used due to the popularity
|
||||
of CP/M Plus (also know as CP/M 3). CP/M Plus-type file datestamping uses
|
||||
directory sectors to store file datestamps which may be accessed more quickly
|
||||
by programs, but there is no Last File Access stamp. Finally, the range of
|
||||
utilities for this type of stamps is more limited than for the DateStamper protocol.
|
||||
|
||||
Key Utilities
|
||||
|
||||
* LDP2D.COM - Load P2DOS date/time stamping resident extension. (RomWBW Provided)
|
||||
* INITDIR.COM - Prepares disks for P2DOS-type file stamping.
|
||||
|
||||
### NZT
|
||||
|
||||
_The use of NZT needs to be further documented_
|
||||
|
||||
Key Utilities
|
||||
|
||||
* LDNZT.COM - Load NZT date/time stamping resident extension. (RomWBW Provided)
|
||||
|
||||
### Additional Notes
|
||||
|
||||
The following files have been provided, customised and tested for for use in RomWBW
|
||||
|
||||
* `CLOCKS.DAT` - Library of clock drivers, which has been updated to include
|
||||
the RomWBW clock driver WBWCLK, and also includes the SIMHCLOK clock driver.
|
||||
The file is just a standard LU type library and is easily updated using NULU.
|
||||
The members are the relocatable binaries, but with the .REL extension removed.
|
||||
* `STAMPS.DAT` - Library of available date/time stamping modules for SETUPZST.
|
||||
The file has been replaced with an updated version from the Walnut Creek CP/M CDROM.
|
||||
The original version has a bug that prevents RSX (resident system extension) mode
|
||||
to load properly.
|
||||
|
||||
Additional Notes
|
||||
|
||||
* `SETUPZST` (provided by ZSDOS) Should not normally be needed since the
|
||||
creation of the appropriate LDTIM loaders has already been performed.
|
||||
* `FILEDATE` only works with DateStamper style date stamping. If you run
|
||||
it on a drive that is not initialized for DateStamper, it will complain
|
||||
`FILEDATE, !!!TIME&.DAT missing`. This is normal and just means that
|
||||
you have not initialized that drive for DateStamper (using PUTDS).
|
||||
* `ZXD` will handle either DateStamper or P2DOS type date stamping.
|
||||
However, it **must** be configured appropriately. As distributed, it will
|
||||
look for P2DOS date stamps. Use ZCNFG to reconfigure it for P2DOS if
|
||||
that is what you are using.
|
||||
|
||||
## Timezone
|
||||
|
||||
None of the operating systems distributed with RomWBW have any concept
|
||||
@@ -4599,7 +4782,7 @@ the RomWBW HBIOS configuration.
|
||||
|
||||
`\clearpage`{=latex}
|
||||
|
||||
#### ROM Image File: RCZ80_kio.rom
|
||||
#### ROM Image File: RCZ80_kio_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -4642,7 +4825,7 @@ the RomWBW HBIOS configuration.
|
||||
|
||||
### RCBus Z180 CPU Module
|
||||
|
||||
#### ROM Image File: RCZ180_ext.rom
|
||||
#### ROM Image File: RCZ180_ext_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -4687,7 +4870,7 @@ the RomWBW HBIOS configuration.
|
||||
|
||||
`\clearpage`{=latex}
|
||||
|
||||
#### ROM Image File: RCZ180_nat.rom
|
||||
#### ROM Image File: RCZ180_nat_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -4734,7 +4917,7 @@ the RomWBW HBIOS configuration.
|
||||
|
||||
### RCBus Z280 CPU Module
|
||||
|
||||
#### ROM Image File: RCZ280_ext.rom
|
||||
#### ROM Image File: RCZ280_ext_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -4777,7 +4960,7 @@ the RomWBW HBIOS configuration.
|
||||
|
||||
`\clearpage`{=latex}
|
||||
|
||||
#### ROM Image File: RCZ280_nat.rom
|
||||
#### ROM Image File: RCZ280_nat_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -4821,7 +5004,7 @@ the RomWBW HBIOS configuration.
|
||||
|
||||
### Easy Z80 SBC
|
||||
|
||||
#### ROM Image File: RCZ80_easy.rom
|
||||
#### ROM Image File: RCZ80_easy_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -4866,7 +5049,7 @@ the RomWBW HBIOS configuration.
|
||||
|
||||
### Tiny Z80 SBC
|
||||
|
||||
#### ROM Image File: RCZ80_tiny.rom
|
||||
#### ROM Image File: RCZ80_tiny_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -4910,7 +5093,7 @@ the RomWBW HBIOS configuration.
|
||||
|
||||
### Z80-512K CPU/RAM/ROM Module
|
||||
|
||||
#### ROM Image File: RCZ80_skz.rom
|
||||
#### ROM Image File: RCZ80_skz_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -4955,7 +5138,7 @@ the RomWBW HBIOS configuration.
|
||||
|
||||
### Small Computer SC126 Z180 SBC
|
||||
|
||||
#### ROM Image File: SCZ180_sc126.rom
|
||||
#### ROM Image File: SCZ180_sc126_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -5003,7 +5186,7 @@ the RomWBW HBIOS configuration.
|
||||
|
||||
### Small Computer SC130 Z180 SBC
|
||||
|
||||
#### ROM Image File: SCZ180_sc130.rom
|
||||
#### ROM Image File: SCZ180_sc130_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -5049,9 +5232,9 @@ the RomWBW HBIOS configuration.
|
||||
|
||||
`\clearpage`{=latex}
|
||||
|
||||
### Small Computer SC131 Z180 Pocket Computer
|
||||
### Small Computer SC131 Z180 Pocket Comp
|
||||
|
||||
#### ROM Image File: SCZ180_sc131.rom
|
||||
#### ROM Image File: SCZ180_sc131_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -5078,7 +5261,7 @@ the RomWBW HBIOS configuration.
|
||||
|
||||
### Small Computer SC140 Z180 CPU Module
|
||||
|
||||
#### ROM Image File: SCZ180_sc140.rom
|
||||
#### ROM Image File: SCZ180_sc140_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -5125,7 +5308,7 @@ the RomWBW HBIOS configuration.
|
||||
|
||||
### Small Computer SC503 Z180 CPU Module
|
||||
|
||||
#### ROM Image File: SCZ180_sc503.rom
|
||||
#### ROM Image File: SCZ180_sc503_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -5172,7 +5355,7 @@ the RomWBW HBIOS configuration.
|
||||
|
||||
### Small Computer SC700 Z180 CPU Module
|
||||
|
||||
#### ROM Image File: SCZ180_sc700.rom
|
||||
#### ROM Image File: SCZ180_sc700_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -5201,7 +5384,7 @@ the RomWBW HBIOS configuration.
|
||||
- CH: IO=60
|
||||
- CHUSB: IO=62
|
||||
- CHUSB: IO=60
|
||||
S- MD: TYPE=RAM
|
||||
- MD: TYPE=RAM
|
||||
- MD: TYPE=ROM
|
||||
- FD: MODE=RCWDC, IO=80, DRIVE 0, TYPE=3.5" HD
|
||||
- FD: MODE=RCWDC, IO=80, DRIVE 1, TYPE=3.5" HD
|
||||
@@ -5332,7 +5515,7 @@ S- MD: TYPE=RAM
|
||||
|
||||
### Z80 ZRC CPU Module
|
||||
|
||||
#### ROM Image File: RCZ80_zrc.rom
|
||||
#### ROM Image File: RCZ80_zrc_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -5379,7 +5562,7 @@ S- MD: TYPE=RAM
|
||||
|
||||
`\clearpage`{=latex}
|
||||
|
||||
#### ROM Image File: RCZ80_zrc_ram.rom
|
||||
#### ROM Image File: RCZ80_zrc_ram_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -5426,7 +5609,7 @@ S- MD: TYPE=RAM
|
||||
|
||||
### Z80 ZRC512 CPU Module
|
||||
|
||||
#### ROM Image File: RCZ80_zrc512.rom
|
||||
#### ROM Image File: RCZ80_zrc512_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -5473,7 +5656,7 @@ S- MD: TYPE=RAM
|
||||
|
||||
### Z180 Z1RCC CPU Module
|
||||
|
||||
#### ROM Image File: RCZ180_z1rcc.rom
|
||||
#### ROM Image File: RCZ180_z1rcc_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -5519,7 +5702,7 @@ S- MD: TYPE=RAM
|
||||
|
||||
### Z280 ZZRCC CPU Module
|
||||
|
||||
#### ROM Image File: RCZ280_zzrcc.rom
|
||||
#### ROM Image File: RCZ280_zzrcc_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -5565,7 +5748,7 @@ S- MD: TYPE=RAM
|
||||
|
||||
`\clearpage`{=latex}
|
||||
|
||||
#### ROM Image File: RCZ280_zzrcc_ram.rom
|
||||
#### ROM Image File: RCZ280_zzrcc_ram_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -5611,7 +5794,7 @@ S- MD: TYPE=RAM
|
||||
|
||||
### Z280 ZZ80MB SBC
|
||||
|
||||
#### ROM Image File: RCZ280_zz80mb.rom
|
||||
#### ROM Image File: RCZ280_zz80mb_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
@@ -5879,6 +6062,73 @@ S- MD: TYPE=RAM
|
||||
|
||||
`\clearpage`{=latex}
|
||||
|
||||
### S100 FPGA Z80
|
||||
|
||||
#### ROM Image File: FZ80_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
| Default CPU Speed | 8.000 MHz |
|
||||
| Interrupts | None |
|
||||
| System Timer | None |
|
||||
| Serial Default | 9600 Baud |
|
||||
| Memory Manager | Z2 |
|
||||
| ROM Size | 0 KB |
|
||||
| RAM Size | 512 KB |
|
||||
|
||||
##### Supported Hardware (see [Appendix B - Device Summary]):
|
||||
|
||||
FP: LEDIO=255
|
||||
SSER: IO=52
|
||||
SCON: IO=0
|
||||
MD: TYPE=RAM
|
||||
PPIDE: IO=48, MASTER
|
||||
PPIDE: IO=48, SLAVE
|
||||
|
||||
|
||||
FP: LEDIO=255
|
||||
DS5RTC: RTCIO=104, IO=104
|
||||
SSER: IO=52
|
||||
SCON: IO=0
|
||||
MD: TYPE=RAM
|
||||
PPIDE: IO=48, MASTER
|
||||
PPIDE: IO=48, SLAVE
|
||||
SD: MODE=FZ80, IO=108, UNITS=2
|
||||
|
||||
##### Notes:
|
||||
|
||||
- Requires matching FPGA code
|
||||
|
||||
### Genesis STD Z180
|
||||
|
||||
#### ROM Image File: GMZ180_std.rom
|
||||
|
||||
| | |
|
||||
|-------------------|---------------|
|
||||
| Default CPU Speed | 18.432 MHz |
|
||||
| Interrupts | Mode 2 |
|
||||
| System Timer | Z180 |
|
||||
| Serial Default | 115200 Baud |
|
||||
| Memory Manager | Z180 |
|
||||
| ROM Size | 512 KB |
|
||||
| RAM Size | 512 KB |
|
||||
|
||||
##### Supported Hardware (see [Appendix B - Device Summary]):
|
||||
|
||||
DSRTC: MODE=STD, IO=132
|
||||
INTRTC: ENABLED
|
||||
ASCI: IO=192, INTERRUPTS ENABLED
|
||||
ASCI: IO=193, INTERRUPTS ENABLED
|
||||
MD: TYPE=RAM
|
||||
MD: TYPE=ROM
|
||||
IDE: MODE=GIDE, IO=32, MASTER
|
||||
IDE: MODE=GIDE, IO=32, SLAVE
|
||||
SD: MODE=GM, IO=132, UNITS=1
|
||||
|
||||
##### Notes:
|
||||
|
||||
- CPU speed will be dynamically measured at startup if DSRTC is present
|
||||
|
||||
## Appendix B - Device Summary
|
||||
|
||||
The table below briefly describes each of the possible devices that
|
||||
@@ -5896,7 +6146,8 @@ may be discovered by RomWBW in your system.
|
||||
| CTC | System | Zilog Clock/Timer |
|
||||
| CVDU | Video | MC8563-based Video Display Controller |
|
||||
| DMA | System | Zilog DMA Controller |
|
||||
| DS1307 | RTC | Maxim DS1307 PCF I2C Real-Time Clock w/ NVRAM |
|
||||
| DS5RTC | RTC | Maxim DS1305 SPI Real-Time Clock w/ NVRAM |
|
||||
| DS7RTC | RTC | Maxim DS1307 PCF I2C Real-Time Clock w/ NVRAM |
|
||||
| DS1501RTC | RTC | Maxim DS1501/DS1511 Watchdog Real-Time Clock |
|
||||
| DSRTC | RTC | Maxim DS1302 Real-Time Clock w/ NVRAM |
|
||||
| DUART | Char | SCC2681 or compatible Dual UART |
|
||||
@@ -5904,6 +6155,7 @@ may be discovered by RomWBW in your system.
|
||||
| EMM | Disk | Disk drive on Parallel Port emm interface (Zip Drive) |
|
||||
| FD | Disk | 8272 or compatible Floppy Disk Controller |
|
||||
| FP | System | Simple LED & Switch Front Panel |
|
||||
| FV | Video | S100 FPGA Z80 Onboard VGA/Keyboard |
|
||||
| GDC | Video | uPD7220 Video Display Controller |
|
||||
| HDSK | Disk | SIMH Simulator Hard Disk |
|
||||
| ICM | DsKy | ICM7218-based Display/Keypad on PPI |
|
||||
@@ -5912,6 +6164,7 @@ may be discovered by RomWBW in your system.
|
||||
| INTRTC | RTC | Interrupt-based Real Time Clock |
|
||||
| KBD | Keyboard | 8242 PS/2 Keyboard Controller |
|
||||
| KIO | System | Zilog Serial/ Parallel Counter/Timer |
|
||||
| LCD | System | Hitachi HD44780-based LCD Display |
|
||||
| LPT | Char | Parallel I/O Controller |
|
||||
| MD | Disk | ROM/RAM Disk |
|
||||
| MSXKYB | Keyboard | MSX Compliant Matrix Keyboard |
|
||||
@@ -5936,6 +6189,7 @@ may be discovered by RomWBW in your system.
|
||||
| SN76489 | Sound | SN76489 Programmable Sound Generator |
|
||||
| SPK | Sound | Bit-bang Speaker |
|
||||
| SYQ | Disk | Iomega SparQ Drive on PPI |
|
||||
| SSER | Char | Simple Serial Interface |
|
||||
| TMS | Video | TMS9918/38/58 Video Display Controller |
|
||||
| UART | Char | 16C550 Family Serial Interface |
|
||||
| USB-FIFO | Char | FT232H-based ECB USB FIFO |
|
||||
|
||||
18
Source/FZ80/Bank Layout.txt
Normal file
@@ -0,0 +1,18 @@
|
||||
FPGA Z80 has no real ROM. It has a single 512K RAM chip.
|
||||
|
||||
The ROMless startup mode treats the entire 512KB as RAM. 384KB of RAM
|
||||
must be preloaded by the FPGA Monitor CF Loader. There will be no ROM
|
||||
disk available under RomWBW. There will be a RAM Disk and it's initial
|
||||
contents will be seeded by the image loaded by the CF Loader.
|
||||
|
||||
Bank Contents Description
|
||||
-------- -------- -----------
|
||||
0x0 BIOS HBIOS Bank (operating)
|
||||
0x1 IMG0 ROM Loader, Monitor, ROM OSes
|
||||
0x2 IMG1 ROM Applications
|
||||
0x3 IMG2 Reserved
|
||||
0x4-0xB RAMD RAM Disk Banks
|
||||
0xC BUF OS Buffers (CP/M3)
|
||||
0xD AUX Aux Bank (CP/M 3, BPBIOS, etc.)
|
||||
0xE USR User Bank (CP/M TPA, etc.)
|
||||
0xF COM Common Bank, Upper 32KB
|
||||