Browse Source

MBC TMS updates

pull/289/head^2
Dan Werner 4 years ago
parent
commit
9b27118a3b
  1. BIN
      Binary/Apps/Tunes/filthy01.vgm
  2. BIN
      Binary/Apps/Tunes/itsgamov.vgm
  3. BIN
      Binary/Apps/Tunes/lemmin01.vgm
  4. BIN
      Binary/Apps/Tunes/pengui03.vgm
  5. BIN
      Binary/Apps/Tunes/pitfal02.vgm
  6. BIN
      Binary/Apps/Tunes/tiger02.vgm
  7. BIN
      Binary/Apps/Tunes/wonder01.vgm
  8. 535
      Binary/Apps/fdu.doc
  9. BIN
      Binary/Apps/zmconfig.ovr
  10. BIN
      Binary/Apps/zminit.ovr
  11. 389
      Binary/Apps/zmp.doc
  12. 20
      Binary/Apps/zmp.hlp
  13. BIN
      Binary/Apps/zmterm.ovr
  14. BIN
      Binary/Apps/zmxfer.ovr
  15. BIN
      Binary/CPM3/bdos3.spr
  16. BIN
      Binary/CPM3/bios3.spr
  17. BIN
      Binary/CPM3/bnkbdos3.spr
  18. BIN
      Binary/CPM3/bnkbios3.spr
  19. BIN
      Binary/CPM3/cpm3fix.pat
  20. 158
      Binary/CPM3/genbnk.dat
  21. 158
      Binary/CPM3/gencpm.dat
  22. 158
      Binary/CPM3/genres.dat
  23. 39
      Binary/CPM3/readme.1st
  24. BIN
      Binary/CPM3/resbdos3.spr
  25. BIN
      Binary/RPH_ddw.upd
  26. BIN
      Binary/ZPM3/bnkbdos3.spr
  27. BIN
      Binary/ZPM3/bnkbios3.spr
  28. 158
      Binary/ZPM3/gencpm.dat
  29. BIN
      Binary/ZPM3/resbdos3.spr
  30. BIN
      Binary/ZPM3/zinstal.zpm
  31. BIN
      Binary/hd1024_prefix.dat
  32. 160
      Source/Fonts/font8x11c.asm
  33. BIN
      Source/Fonts/font8x11c.bin
  34. 355
      Source/Fonts/font8x11u.asm
  35. 187
      Source/Fonts/font8x16c.asm
  36. BIN
      Source/Fonts/font8x16c.bin
  37. 515
      Source/Fonts/font8x16u.asm
  38. 133
      Source/Fonts/font8x8c.asm
  39. BIN
      Source/Fonts/font8x8c.bin
  40. 259
      Source/Fonts/font8x8u.asm
  41. 163
      Source/Fonts/fontcgac.asm
  42. BIN
      Source/Fonts/fontcgac.bin
  43. 515
      Source/Fonts/fontcgau.asm
  44. 59
      Source/HBIOS/Config/MBC_ddw.asm
  45. 39
      Source/HBIOS/Config/RPH_ddw.asm
  46. 2
      Source/HBIOS/Config/RPH_std.asm
  47. BIN
      Source/HBIOS/RPH_ddw.upd
  48. 2
      Source/HBIOS/cfg_mbc.asm
  49. 1
      Source/HBIOS/std.asm
  50. 25
      Source/HBIOS/tms.asm
  51. 1
      Source/Images/blank144
  52. 1
      Source/Images/blankhd1024
  53. 1
      Source/Images/blankhd512
  54. BIN
      Source/Images/fd144_cpm22.img
  55. BIN
      Source/Images/fd144_cpm3.img
  56. BIN
      Source/Images/fd144_nzcom.img
  57. 16559
      Source/Images/fd144_ws4.img
  58. BIN
      Source/Images/fd144_zpm3.img
  59. BIN
      Source/Images/fd144_zsdos.img
  60. BIN
      Source/Images/hd1024_combo.img
  61. BIN
      Source/Images/hd1024_cpm22.img
  62. BIN
      Source/Images/hd1024_cpm3.img
  63. BIN
      Source/Images/hd1024_nzcom.img
  64. 16559
      Source/Images/hd1024_ws4.img
  65. BIN
      Source/Images/hd1024_zpm3.img
  66. BIN
      Source/Images/hd1024_zsdos.img
  67. BIN
      Source/Images/hd512_combo.img
  68. BIN
      Source/Images/hd512_cpm22.img
  69. BIN
      Source/Images/hd512_cpm3.img
  70. BIN
      Source/Images/hd512_dos65.img
  71. BIN
      Source/Images/hd512_nzcom.img
  72. 16558
      Source/Images/hd512_ws4.img
  73. BIN
      Source/Images/hd512_zpm3.img
  74. BIN
      Source/Images/hd512_zsdos.img
  75. BIN
      Source/RomDsk/rom1024_una.dat
  76. BIN
      Source/RomDsk/rom1024_wbw.dat
  77. 0
      Source/RomDsk/rom128_una.dat
  78. 0
      Source/RomDsk/rom128_wbw.dat
  79. BIN
      Source/RomDsk/rom256_una.dat
  80. BIN
      Source/RomDsk/rom256_wbw.dat
  81. BIN
      Source/RomDsk/rom512_una.dat
  82. BIN
      Source/RomDsk/rom512_wbw.dat
  83. BIN
      Source/ZPM3/autotog.com
  84. BIN
      Source/ZPM3/clrhist.com
  85. BIN
      Source/ZPM3/cpmldr.com
  86. BIN
      Source/ZPM3/setz3.com
  87. 9
      Tools/unix/zxcc/config.h
  88. BIN
      Tools/unix/zxcc/zxcc

BIN
Binary/Apps/Tunes/filthy01.vgm

Binary file not shown.

BIN
Binary/Apps/Tunes/itsgamov.vgm

Binary file not shown.

BIN
Binary/Apps/Tunes/lemmin01.vgm

Binary file not shown.

BIN
Binary/Apps/Tunes/pengui03.vgm

Binary file not shown.

BIN
Binary/Apps/Tunes/pitfal02.vgm

Binary file not shown.

BIN
Binary/Apps/Tunes/tiger02.vgm

Binary file not shown.

BIN
Binary/Apps/Tunes/wonder01.vgm

Binary file not shown.

535
Binary/Apps/fdu.doc

@ -0,0 +1,535 @@
================================================================
Floppy Disk Utility (FDU) v5.3 for RetroBrew Computers
Disk IO / Zeta / Dual-IDE / N8 / RC2014 / SmallZ80 / Dyno
================================================================
Updated January 5, 2020
by Wayne Warthen (wwarthen@gmail.com)
Application to test the hardware functionality of the Floppy
Disk Controller (FDC) on the ECB DISK I/O, DISK I/O V3, ZETA
SBC, Dual IDE w/ Floppy, or N8 board.
The intent is to provide a testbed that allows direct testing
of all possible media types and modes of access. The
application supports read, write, and format by sector, track,
and disk as well as a random read/write test.
The application supports access modes of polling, interrupt,
INT/WAIT, and DRQ/WAIT. At present, it supports 3.5" media at
DD (720KB) and HD (1.44MB) capacities. It also now supports
5.25" media (720KB and 1.2MB) and 8" media (1.11MB) as well.
Additional media will be added when I have time and access to
required hardware. Not all modes are supported on all
platforms and some modes are experimental in all cases.
In many ways this application is merely reinventing the wheel
and performs functionality similar to existing applications,
but I have not seen any other applications for RetroBrew
Computers hardware that provide this range of functionality.
While the application is now almost entirely new code, I would
like to acknowledge that much was derived from the previous
work of Andrew Lynch and Dan Werner. I also want to credit
Sergio Gimenez with testing the 5.25" drive support and Jim
Harre with testing the 8" drive support. Support for Zeta 2
comes from Segey Kiselev. Thanks!
General Usage
-------------
In general, usage is self explanatory. At invocation, you
must select the floppy disk controller (FDC) that you are
using. Subsequently, the main menu allows you to set the
unit, media, and mode to test. These settings MUST match your
situation. Read, write, format, and verify functions are
provided. A sub-menu will allow you to choose sector, track,
disk, or random tests.
The verify function requires a little explanation. It will
take the contents of the current in-memory disk buffer, save
it, and compare it to the selected sectors. So, you must
ensure that the sectors to be verified already have been
written with the same pattern as the buffer contains. I
typically init the buffer to a pattern, write the pattern to
the entire disk, then verify the entire disk.
Another submenu is provided for FDC commands. This sub-menu
allows you to send low-level commands directly to FDC. You
*must* know what you are doing to use this sub-menu. For
example, in order to read a sector using this sub-menu, you
will need to perform specify, seek, sense int, and read
commands specifying correct values (nothing is value checked
in this menu).
Required Hardware/BIOS
----------------------
Of course, the starting point is to have a supported hardware
configuration. The following Z80 / Z180 based CPU boards are
supported:
- SBC V1/2
- Zeta
- Zeta 2
- N8
- Mark IV
- RC2014
- SmallZ80
- Dyno
- MBC
You must be using either a RomWBW or UBA based OS version.
You must have one of the following floppy disk controllers:
- Disk IO ECB Board FDC
- Disk IO 3 ECB Board FDC
- Dual-IDE ECB Board FDC
- Zeta SBC onboard FDC
- Zeta 2 SBC onboard FDC
- N8 SBC onboard FDC
- RC2014 Scott Baker SMC-based Floppy Module
- RC2014 Scott Baker WDC-based Floppy Module
- SmallZ80 FDC
- Dyno FDC
- MBC FDC
Finally, you will need a floppy drive connected via an
appropriate cable:
Disk IO - no twist in cable, drive unit 0/1 must be selected by jumper on drive
DISK IO 3, Zeta, Zeta 2, RC2014, Dyno - cable with twist, unit 0 after twist, unit 1 before twist
DIDE, N8, Mark IV, SmallZ80 - cable with twist, unit 0 before twist, unit 1 after twist
Note that FDU does not utilize your systems ROM or OS to
access the floppy system. FDU interacts directly with
hardware. Upon exit, you may need to reset your OS to get the
floppy system back into a state that is expected.
The Disk I/O should be jumpered as follows:
J1: depends on use of interrupt modes (see interrupt modes below)
J2: pins 1-2, & 3-4 jumpered
J3: hardware dependent timing for DMA mode (see DMA modes below)
J4: pins 2-3 jumpered
J5: off
J6: pins 2-3 jumpered
J7: pins 2-3 jumpered
J8: off
J9: off
J10: off
J11: off
J12: off
Note that J1 can be left on even when not using interrupt
modes. As long as the BIOS is OK with it, that is fine. Note
also that J3 is only relevant for DMA modes, but also can be
left in place when using other modes.
The Disk I/O 3 board should be jumpered at the default settings:
JP2: 3-4
JP3: 1-2 for int mode support, otherwise no jumper
JP4: 1-2, 3-4
JP5: 1-2
JP6: 1-2
JP7: 1-2, 3-4
Zeta & Zeta 2 do not have any relevant jumper settings. The
hardwired I/O ranges are assumed in the code.
The Dual-IDE board should be jumpered as follows:
K3 (DT/R or /RD): /RD
P5 (bd ID): 1-2, 3-4 (for $20-$3F port range)
There are no specific N8 jumper settings, but the default
I/O range starting at $80 is assumed in the published code.
The RC2014 Scott Baker SMC-based floppy module should be jumpered
for I/O base address 0x50 (SV1: 11-12), JP1 (TS) shorted,
JP2 (/FAULT) shorted, JP3 (MINI): 2-3, JP4 (/DC/RDY): 2-3.
The RC2014 Scott Baker WDC-based floppy module should be jumpered
for I/O base address 0x50 (SV1: 11-12), JP1 (/DACK): 1-2,
JP2 (TC): 2-3.
The RC2014 FDC by Alan Cox (Etched Pixels) needs to be strapped
for base I/O address 0x48.
SmallZ80 does not have any relevant jumper settings. The
hardwired I/O ranges are assumed in the code.
Dyno does not have any relevant jumper settings. The
hardwired I/O ranges are assumed in the code.
The MBC FDC is expected to be strapped to use neither INT nor NMI. It
is also not expected to use DMA.
Modes of Operation
------------------
You can select the following test modes. Please refer to the
chart that follows to determine which modes should work with
combinations of Z80 CPU speed and media format.
WARNING: In general, only the polling mode is considered fully
reliable. The other modes are basically experimental and
should only be used if you know exactly what you are doing.
Polling: Traditional polled input/output. Works well and very
reliable with robust timeouts and good error recovery. Also,
the slowest performance which precludes it from being used
with 1.44MB floppy on a 4MHz Z80. This is definitely the mode
you want to get working before any others. It does not require
J1 (interrupt enable) on DISK I/O and does not care about the
setting of J3.
Interrupt: Relies on FDC interrupts to determine when a byte
is ready to be read/written. It does *not* implement a
timeout during disk operations. For example, if there is no
disk in the drive, this mode will just hang until a disk is
inserted. This mode *requires* that the host has interrupts
active using interrupt mode 1 (IM1) and interrupts attached to
the FDC controller. The BIOS must be configured to handle
these interrupts safely.
Fast Interrupt: Same as above, but sacrifices additional
reliability for faster operation. This mode will allow a
1.44MB floppy to work with a 4MHz Z80 CPU. However, if any
errors occur (even a transient read error which is not
unusual), this mode will hang. The same FDC interrupt
requirements as above are required.
INT/WAIT: Same as Fast Interrupt, but uses CPU wait instead of
actual interrupt. This mode is exclusive to the original Disk
IO board. It is subject to all the same issues as Fast
Interrupt, but does not need J1 shorted. J3 is irrelevant.
DRQ/WAIT: Uses pseudo DMA to handle input/output. Does not
require that interrupts (J1) be enabled on the DISK I/O.
However, it is subject to all of the same reliability issues
as "Fast Interrupt". This mode is exclusive to the original
Disk IO board. At present, the mode is *not* implemented!
The chart below attempts to describe the combinations that
work for me. By far, the most reliable mode is Polling, but
it requires 8MHz CPU for HD disks.
DRQ/WAIT --------------------------------+
INT/WAIT -----------------------------+ |
Fast Interrupt --------------------+ | |
Interrupt ----------------------+ | | |
Polling ---------------------+ | | | |
| | | | |
CPU Speed --------------+ | | | | |
| | | | | |
| | | | | |
3.5" DD (720K) ------ 4MHz Y Y Y Y X
8MHz+ Y Y Y Y X
3.5" HD (1.44M) ----- 4MHz N N Y Y X
8MHz+ Y Y Y Y X
5.25" DD (360K) ----- 4MHz Y Y Y Y X
8MHz+ Y Y Y Y X
5.25" HD (1.2M) ----- 4MHz N N Y Y X
8MHz+ Y Y Y Y X
8" DD (1.11M) ------- 4MHz N N Y Y X
8MHz+ Y Y Y Y X
Y = Yes, works
N = No, does not work
X = Experimental, probably won't work
Tracing
-------
Command/result activity to/from the FDC will be written out if
the trace setting is changed from '00' to '01' in setup.
Additionally, if a command failure is detected on any command,
that specific comand and results are written regardless of the
trace setting.
The format of the line written is:
<OPERATION>: <COMMAND BYTES> --> <RESULT BYTES> [<RESULT>]
For example, this is the output of a normal read operation:
READ: 46 01 00 00 01 02 09 1B FF --> 01 00 00 00 00 02 02 [OK]
Please refer to the i8272 data sheet for information on the
command and result bytes.
Note that the sense interrupt command can return a non-OK
result. This is completely normal in some cases. It is
necessary to "poll" the drive for seek status using sense
interrupt. If there is nothing to report, then the result
will be INVALID COMMAND. Additionally, during a recalibrate
operation, it may be necessary to issue the command twice
because the command will only step the drive 77 times looking
for track 0, but the head may be up to 80 tracks away. In
this case, the first recalibrate fails, but the second should
succeed. Here is what this would look like if trace is turned
on:
RECALIBRATE: 07 01 --> <EMPTY> [OK]
SENSE INTERRUPT: 08 --> 80 [INVALID COMMAND]
...
...
...
SENSE INTERRUPT: 08 --> 80 [INVALID COMMAND]
SENSE INTERRUPT: 08 --> 71 00 [ABNORMAL TERMINATION]
RECALIBRATE: 07 01 --> <EMPTY> [OK]
SENSE INTERRUPT: 08 --> 21 00 [OK]
Another example is when the FDC has just been reset. In this
case, you will see up to 4 disk change errors. Again these
are not a real problem and to be expected.
When tracing is turned off, the application tries to be
intelligent about error reporting. The specific errors from
sense interrupt documented above will be suppressed because
they are not a real problem. All other errors will be
displayed.
Error Handling
--------------
There is no automated error retry logic. This is very
intentional since the point is to expose the controller and
drive activity. Any error detected will result in a prompt to
abort, retry, or continue. Note that some number of errors is
considered normal for this technology. An occasional error
would not necessarily be considered a problem.
CPU Speed
---------
Starting with v5.0, the application adjusts it's timing loops
to the actual system CPU speed by querying the BIOS for the
current CPU speed.
Interleave
----------
The format command now allows the specification of a sector
interleave. It is almost always the case that the optimal
interleave will be 2 (meaning 2:1).
360K Media
----------
The 360K media definition should work well for true 360K
drives. However, it will generally not work with 1.2M
drives. This is because these drives spin at 360RPM instead
of the 300RPM speed of true 360K drives. Additionally, 1.2M
drives are 80 tracks and 360K drives are 40 tracks and, so
far, there is no mechanism in FD to "double step" as a way to
use 40 track media in 80 track drives.
With this said, it is possible to configure some 1.2M 5.25"
drives to automatically spin down to 300RPM based on a density
select signal (DENSEL). This signal is asserted by FD for
360K media, so IF you have configured your drive to react to
this signal correctly, you will be able to use the 360K media
defintion. Most 1.2M 5.25" drives are NOT configured this way
by default. TEAC drives are generally easy to modify and have
been tested by the author and do work in this manner. Note
that this does not address the issue of double stepping above;
you will just be using the first 40 of 80 tracks.
Support
-------
I am happy to answer questions as fast and well as I am able.
Best contact is wwarthen@gmail.com or post something on the
RetroBrew Computers Forum
https://www.retrobrewcomputers.org/forum/.
Changes
-------
WW 8/12/2011
Removed call to pulse TC in the FDC initialization after
determining that it periodically caused the FDC to write bad
sectors. I am mystified by this, but definitely found it to
be true. Will revisit at some point -- probably a timing
issue between puslsing TC and whatever happens next.
Non-DMA mode was being set incorrectly for FAST-DMA mode. It
was set for non-DMA even though we were doing DMA. It is
interesting that it worked fine anyway. Fixed it anyway.
DIO_SETMEDIA was not clearing DCD_DSKRDY as it should. Fixed.
WW 8/26/2011: v1.1
Added support for Zeta. Note that INT/WAIT and DRQ/WAIT are
not available on Zeta. Note that Zeta provides the ability to
perform a reset of the FDC independent of a full CPU reset.
This is VERY useful and the FDC is reset anytime a drive reset
is required.
Added INT/WAIT support.
WW 8/28/2011: V1.2
All changes in this version are Zeta specific. Fixed FDC
reset logic and motor status display for Zeta (code from
Sergey).
Modified Zeta disk change display to include it in the command
output line. This makes more sense because a command must be
issued to select the desired drive first. You can use the
SENSE INT command id you want to check the disk change value
at any time. It will also be displayed with any other command
output display.
WW 9/1/2011: V1.3
Added CPUFREQ configuration setting to tune delays based on
cpu speed. The build app is set for 8MHz which also seems to
work well for 4MHz CPU's. Faster CPU speeds will probably
require tuning this setting.
WW 9/5/2011: V1.4
Changed the polling execution routines to utilize CPUFREQ
variable to optimize timeout counter. Most importantly, this
should allow the use of faster CPUs (like 20MHz).
WW 9/19/2011: V1.5
Zeta changes only. Added a call to FDC RESET after any
command failure. This solves an issue where the drive remains
selected if a command error occurs. Also added FDC RESET to
FDC CONTROL menu.
WW 10/7/2011: V2.0
Added support for DIDE. Only supports polling IO and it does
not appear any other modes are possible given the hardware
constraints.
WW 10/13/2011: V2.1
Modified to support N8. N8 is essentially identical to Dual
IDE. The only real change is the IO addresses. In theory, I
should be able to support true DMA on N8 and will work on that.
WW 10/20/2011: v2.2
I had some problems with the results being read were sometimes
missing a byte. Fixed this by taking a more strict approach
to watching the MSR for the exact bits that are expected.
WW 10/22/2011: V2.3
After spending a few days trying to track down an intermittent
data corruption issue with my Dual IDE board, I added a verify
function. This helped me isolate the problem very nicely
(turned out to be interference from the bus monitor).
WW 11/25/2011: V2.4
Preliminary support for DISKIO V3. Basically just assumed
that it operates just like the Zeta. Needs to be verified
with real hardware as soon as I can.
WW 1/9/2012: V2.5
Modified program termination to use CP/M reset call so that a
warm start is done and all drives are logged out. This is
important because media may have been formatted during the
program execution.
WW 2/6/2012: v2.6
Added support for 5.25" drives as tested by Sergio.
WW 4/5/2012: v2.7
Added support for 8" drives as tested by Jim Harre.
WW 4/6/2012: v2.7a
Fixed issue with media selection menu to remove duplicate
entries.
WW 4/8/2012: v2.7b
Corrected the handling of the density select signal.
WW 5/22/2012: v2.8
Added new media definitions (5.25", 320K).
WW 6/1/2012: v2.9
Added interleave capability on format.
WW 6/5/2012: v3.0
Documentation cleanup.
WW 7/1/2012: v3.1
Modified head load time (HLT) for 8" media based on YD-180
spec. Now set to 50ms.
WW 6/17/2013: v3.2
Cleaned up SRT, HLT, and HUT values.
SK 2/10/2015: v3.3
Added Zeta SBC v2 support (Sergey Kiselev)
WW 3/25/2015: v4.0
Renamed from FDTST --> FD
WW 9/2/2017: v5.0
Renamed from FD to FDU.
Added runtime selection of FDC hardware.
Added runtime timing adjustment.
WW 12/16/2017: v5.1
Improved polling version of read/write to fix occasional overrun errors.
WW 1/8/2018: v5.2
Added support for RC2014 hardware:
- Scott Baker SMC 9266 FDC module
- Scott Baker WDC 37C65 FDC module
WW 9/5/2018: v5.3
- Removed use of pulsing TC to end R/W operations after one sector and
instead set EOT = R (sector number) so that after desired sector is
read, R/W stops with end of cylinder error which is a documented
method for controling number of sectors R/W. This specific termination
condition is no longer considered an error, but a successful end of
operation.
- Added support for SmallZ80
WW 1/5/2020: v5.4
- Added support for Dyno (based on work by Steve Garcia)
WW 4/29/2020: v5.5
- Added support for Etched Pixels FDC
WW 12/12/2020: v5.6
- Updated SmallZ80 support for new I/O map
WW 3/24/2021: v5.7
- Added support for a few single-sided formats
WW 7/26/2021: v5.8
- Added support for MBC FDC

BIN
Binary/Apps/zmconfig.ovr

Binary file not shown.

BIN
Binary/Apps/zminit.ovr

Binary file not shown.

389
Binary/Apps/zmp.doc

@ -0,0 +1,389 @@
** ZMP Documentation **
1. Introduction.
ZMP is a communications/file transfer program for CP/M which
performs Xmodem, Xmodem-1k (often erroneously called Ymodem),
true Ymodem and Zmodem file transfer protocols. Although tested
with Z80DOS, ZRDOS and CP/M 2.2, there seems to be no reason why
it shouldn't work with CP/M 3 as well. The only requirements are
a Z80 processor (sorry about that!), a computer running CP/M in
one of its various guises, with at least 45k of TPA (but the more
the better!), and a modem.
When you try to pack this many features into one program,
you end up with a pretty large file. The big problem occurs when
file transfers are attempted: unless you have at least 4-8k of
buffer size, you might as well use xmodem protocol. The approach
taken in ZMP is to use overlays for various functions, accepting
the time taken to load these from disk. Thus performance will
vary depending on your disk setup: if you have a hard disk and a
fast processor you will likely not notice the difference. If, on
the other hand, you are running a Commodore 128 with CP/M on a
1571 drive, there is no physical reason why ZMP won't work, but
you might consider investing in a book to read while the overlays
load. (A suitable book to read might be a computer catalogue!).
The curious amongst you may notice that the beginning of the
ZMPX.COM file has the magic 'Z3ENV' string, but don't let this
fool you into thinking that you don't need to add terminal
characteristics into the overlay if you have a ZCPR3 system. It
has proved possible to persuade this particular C compiler to
access ZCPR3's environment descriptor, but not for ZMP. Yet.
Perhaps later. In the meantime, the startup code is there for it.
In order to produce a program which would work with most
CP/M systems, the Zmodem protocol performed by ZMP is fairly
simple. The transmit section uses 'Full Streaming with Reverse
Interrupt', as Chuck Forsberg calls it in his description of the
Zmodem protocol. The receive section uses 'Segmented Streaming'.
This means that, if your system can do serial I/O and disk I/O at
the same time, ZMP does not take advantage of the faster transfer
rate which this capability provides. Since, however, I can't
write and listen at the same time, and neither can my computer,
and neither can the vast majority of CP/M computers, it seemed
the best approach to take. Segmented Streaming means that the
receive program tells the transmit program how big its buffer is.
The transmit program then sends just that much data, then waits
for an acknowledge from the receiver. We have encountered some
Zmodem programs which send too much data in this case: errors
will appear if this happens, but the protocol should recover and
the file will be received intact (we hope!).
The string which ZMP passes to the receiving program to
interrupt in case of errors is likewise simple. Basically it
causes the receiving program to send a control-C character and
then wait for one second. The receiver will then send its ZRPOS
string, by which time ZMP, as the transmitter, should be ready to
receive it.
2. Customisation.
ZMP must be customised to suit your system. This involves
overlaying the un-installed copy of ZMP.COM (contained in this
library as ZMPX.COM) with a user-written installation overlay.
Some hints on writing this are given below; there is a blank
overlay file in this library, or you may be able to obtain one
for your computer from the same place you got this library.
This value is set at 0145 hex, and should stay there permanently.
See the notes in this document, and also the ZMP-OVL.UPD file,
for more details on how to set up your overlay.
Once the installation overlay is written, assemble it with
M80 (or SLR or whatever), use RELHEX to create a .HEX file, and
use MLOAD to overlay it over the ZMPX.COM file to produce your
very own ZMP.COM.
3. Operation.
The following files must be on the same disk and user area,
which must be specified in your customisation overlay:
ZMCONFIG.OVR -- the configuration overlay
ZMINIT.OVR -- the initialisation overlay
ZMTERM.OVR -- the terminal overlay
ZMXFER.OVR -- the file transfer overlay
ZMP.HLP -- the help file (recommended).
Start the program with ZMP. The screen should clear, then a
title message is printed, then ZMP enters terminal mode. You may
type escape-H for help at this point. When you first run the
program, the first thing you need to do is to enter the
configuration overlay (type escape-C) and set all the defaults
and others to suit your system as required. If you don't know
whether to change something or not, it's probably better to leave
it alone. When you exit the configuration program, answer 'Y' to
the 'Make changes permanent' question. ZMP.FON and ZMP.CFG will
be produced on your disk, in the same drive/user area as the
above files.
Operation of the program is controlled by escape sequences
entered in terminal mode. Escape-H gives you a list of options.
Most of these are self-explanatory, but they will be summarized
here.
B - Send Break to modem.
If your overlay has been set up to send a break command
to your UART, this command will perform this function. (Some
remote systems may require a break sent to them to interrupt
Zmodem transfers).
C - Configure system.
This function is designed to set system defaults, save
phone numbers etc. Changing baud rates etc. for a particular
call are better handled with the escape-L option. If you
answer Y or y to the 'make changes permanent?' question, the
new configuration will be saved in a ZMP.CFG file, and the
phone numbers in a ZMP.FON file for later use. The .CFG file
is read, if it exists, when ZMP is first started.
D - Get disk Directory.
Gets a directory of the current drive and user area.
Change to another with the escape-F command, described
below. The directory will be sorted and will include
filesizes unless you have so many files on the current
drive/user area that there is insufficient memory available
to sort them. In this case an unsorted directory, without
file sizes, will be printed.
F - Disk/File operations.
This command is used to change the current drive/user
area, to reset a disk in the current drive, and to view,
erase, print or rename files. There are also options to give
a directory of the current drive/user area, and to supply a
new filename for the capture file. This filename may specify
a different drive/user area than the current one. If capture
mode is on, the status line printed when terminal mode is
entered will state the capture file name.
H - Get Help.
Prints the ZMP.HLP file. You may then either type CR to
return to terminal mode, or enter the required function key.
I - Initiate phone call.
Reads the ZMP.FON file, if any, and prints it. You have
four seconds after typing ESC I, during which you may enter
the letter corresponding to the required number, in which
case ZMP will dial it without printing a list. Otherwise the
full phone list will be printed, and you will be asked which
number you want. Enter the identifying letter of the number
you wish to call. You can also enter numbers not in the
list. Multiple numbers can be called by entering them separ-
ated with commas. Dialling will then commence, and will
continue until one of the numbers answers, or until you
abort the process with the escape key. Note that the baud
rate used for the call is that in the .FON file for that
number, or the current one if a new number is entered. This
function works best if the strings in the .CFG file have
been set up for your modem, and the initialisation string
sent to the modem sets it into verbose mode for status
messages (ATV1).
K - Display Keyboard macros.
The configuration option allows up to ten macro keys to
be defined, and these are recalled by typing escape followed
by the numbers 0 to 9. This function prints the current
assignments.
L - Change Line settings.
This function allows temporary changes of baud rate,
stop bits, and data bits. There is also an option to operate
terminal mode in full duplex (locally typed characters are
sent but not displayed on the screen), half duplex (locally
typed characters are sent and also displayed on the screen),
or echo mode (as for half duplex, but received characters
are echoed to the remote system as well as being displayed).
Don't have two computers talking to each other in echo mode
unless you're bored. There are also options to allow/dis-
allow control characters above CR to be displayed in term-
inal mode, to strip the parity bit in terminal mode, and to
re-initialise the currently selected UART and modem at the
current baud rate.
Like IMP, ZMP uses location 003C hex to store a value
corresponding to the present baud rate. Then, if you leave
ZMP and later re-enter, it checks location 003C. If it
contains a legal value, then that baud rate is set for you,
otherwise it sets the default baud rate as selected in the
.CFG file.
M - Toggle capture mode in Memory.
Received characters will be saved in a buffer and saved
in a file named 'ZMP.LOG' when the buffer fills or when the
command is entered again. A control-S/control-Q sequence is
sent to the remote computer while the buffer is being saved
in an attempt to stop it sending more data.
P - Toggle Printer.
This is similar to the 'M' command, except incoming
characters are sent to the printer. This functions best if
your system performs the BIOS 'List Status' function
correctly.
Q - Quit the program.
Obvious. You will be asked if this is really what you
want. Any entry other than N or n will exit to CP/M.
R - Receive a file.
You will be asked which protocol you wish to use. The
default is ZMODEM. The <X>modem option will allow either
128-byte blocks (standard XMODEM) or 1k blocks (XMODEM-1k),
since this is decided by the transmit end. If an attempt is
made to receive a file which has the same name as a file on
the current drive/user area, the current one will be renamed
to .BAK and the new one will then be received normally.
(However, see below for the transfer resumption feature in
ZMP v1.5 and above).
Note that the byte count on the screen is not kept up-
to-date on Zmodem receive. This is because the data arrives
non-stop and there is simply no time available with non-
interrupt driven computers to update the screen. An update
is performed if errors occur, and when the computer pauses
to write to the disk.
Starting with version 1.4, Zmodem file receive will
commence automatically upon receipt of the sender's ZRQINIT
string. Thus all you need to do is have the sender initiate
the transfer, select the drive and user area you wish
the file(s) to be received on, and wait..
ZMP v1.5 adds the ability to resume an interrupted
Zmodem transfer. If a Zmodem receive attempt fails (either
because of manual cancellation or massive errors), you will
be asked if you wish to save the portion of the file already
received. If not, it will be erased. If so, and a subsequent
Zmodem receive attempt would result in a file of the same
name, you are asked if you wish to resume the transfer. If
you do, transfer will start at the end of the file.
Otherwise the old file will be renamed to .BAK as before.
Since this feature is a function of the receiver, it should
work with any Zmodem implementation which conforms
reasonably closely to Chuck Forsberg's standard. It has been
tested with ZMP and RZMP, and I would like to hear of any
programs with which it doesn't work. No attempt is made to
determine if the files are the same up to the commencement
point: the Zmodem protocol provides two ways in which this
may be determined (file date and CRC), but neither has yet
been implemented in ZMP.
S - Send a file.
Operation is similar to the receive function.
Additional options available are ASCII send and the
capability of distinguishing between normal Xmodem and
Xmodem-1k. In Ymodem and Zmodem modes, wildcard filenames
and multiple filenames are allowed. Multiple filenames
should be entered separated by spaces. In all cases, files
on different drives/user areas may be specified by supplying
a zcpr3-style du: prefix (e.g. C7:NEATPROG.WOW).
Byte count information is displayed in Zmodem mode on
transmit. This causes noticeable breaks between packets, but
it is felt that this is outweighed by the usefulness of the
information. ZMP's Zmodem mode is capable of CRC-32 opera-
tion, although CRC-16 mode is used if the receiver is incap-
able of CRC-32. Some other terminal programs, however, do
strange things when faced with a receiving program which
claims it can do CRC-32 (we have encountered one for the
Amiga which exhibits this problem). If this happens, the
esc-L menu and the configuration overlay have an option to
disable CRC-32.
X - Hangup.
This function causes the modem to disconnect from the
phone line, by momentarily dropping DTR.
Y - Print screen.
Allows the current screen to be dumped to printer. Note
that this must be supported in the overlay: most terminals
are incapable of this function. The standard overlay prints
'This function not supported.'. If you can make it work on
your system, good luck!
Z - Clear screen.
Allows the screen to be cleared. Useful if it fills
with rubbish.
4. Other information.
a) ZMP at higher baud rates.
When I first produced ZMP, I was more interested in
producing a universal Zmodem program than anything else.
Originally (several C compilers ago!) I had difficulty get-
ting it to work even at 300 baud, and so little thought was
given to accommodate higher transmission speeds. In partic-
ular, there is a "designed-in" bug/feature which would prob-
ably preclude ZMP working at much over 4800 baud. The prob-
lem is in the user overlay, in the mrd: routine. The requ-
irement here is to have a routine which returns either when
a character is available at the modem (in which case we
return TRUE), or 100 mS has elapsed (in which case we return
FALSE). The catch is that I used 100 x 1 mS waits, between
which we test for a character. A little calculation will
show that a 9600 baud character will take a little over 1 mS
to transfer, and 19200 baud characters take half this time.
Thus we are practically guaranteed to miss characters at
19200 baud, and even 9600 baud characters leave little
processing timeto spare. Two possible ways to overcome this
are:
i) Make the wait time shorter. Thus we could wait 1000 x
100 uS periods instead. This, however, makes the actual
wait time more unpredictable, since subroutine
call/return times are comparable to the wait time. It
also just puts off the evil day.
ii) Use a hardware timer to determine whether 100 mS has
elapsed. This is the preferred approach. Thus the mrd:
routine would loop continuously, exiting when either
there was a character at the modem or when the hardware
timer expired. An embryo CP/M-68K version of ZMP using
this approach has proved capable of reliable transfers
at 19,200 baud (although one must admit that it IS
running a 68010 at 10 MHz!).
I would like to hear from anyone who has had any
success with either of these two approaches.
5. Acknowledgements.
ZMP was developed from Hal Maney's Heath-specific HMODEM II.
I would like to thank Hal for writing HMODEM: CP/M users have
been without ZMODEM capability for far too long. As requested in
the source file, acknowledgement is given to him therein.
Appreciations also go to the authors of the Hi-Tech C compiler,
which proved to be capable of producing fast and compact code for
Z80 machines.
ZMP in its various incarnations is refined by suggestions
from you, the user. In particular, I would like to thank Mike
Allen, Richard Kopplin and Fred Haines for their invaluable
suggestions. I may sometimes be a little slow at implementation,
but I usually get there eventually! Fred Haines has also kindly
offered to be the U.S. collection point for bug reports,
suggestions etc. His address appears at the bottom of this
document, and he'll forward them to me via what he calls 'U.S.
Snail'. I will try and respond using what I call 'Australia
Pest'.
I would also like to thank Lindsay Allen, sysop of Z-Node
62. His name was removed from the original zmp11 title screen at
his own request, since I had done most of the work in modifying
Hmodem to work on other machines. Without Lindsay's encouragement
at difficult times, suggestions as to how to go about
recalcitrant procedures, and experience in file transfers, ZMP
would not have been produced. Thank you.
6. Finally...
The files contained in this library are placed in the public
domain. Just don't sell it, claim you wrote it, or do anything
similar that might annoy me. Above all, don't bother trying to
sue me if it doesn't work, or you tripped over the disk, or
anything similar. I haven't distributed the source files partly
due to the size of them, partly due to the fact that compilation
is messy (several modifications were needed to "standard" library
functions!), and partly due to the fact that there's still work
to do on them. Besides, I feel a certain fatherly feeling towards
ZMP, having spent most of my spare time for the last four months
working on it. So here's the deal: I will continue to support ZMP
(and RZMP) until I get sick of it. This could take an unknown
amount of time! At that point, I will release the sources into
the RCP/M community, and you may make of them what you will.
ZMP has a remote system relative, called RZMP. This allows
Zmodem transfers to and from remote systems. It should be
available from the same place from which you obtained ZMP.
I have also produced an extremely cut-down version of ZMP
which runs under CP/M-68K, currently running quite well as a
single .68K file (no overlays!) on a system with 128k bytes of
memory. If there is enough interest from CP/M-68k users (are
there any??), I could be persuaded to upgrade this version to the
point where it could be released.
Comments and suggestions are welcome. Bug reports are not so
welcome, but we'd like them anyway! Send either to:
Z-Node 62
Perth, Western Australia
(061+) 09-450-0200
(Soon to be on FidoNet)
U.S. users may send reports/comments to:
Fred Haines,
733 North King's Road, Apt. 356
Los Angeles, California 90069
-- Ron Murray
26th March, 1989
te systems. It should be
available from the same place fr

20
Binary/Apps/zmp.hlp

@ -0,0 +1,20 @@
Commands: Precede with ESC:
B Send break to modem
C Configure system
D Get disk directory
F File operations, change/reset disk
H Get instructions
I Initiate phone call (dial)
K Display keyboard macros
L Change line parameters (baud rate, full/half duplex/echo, UART settings)
M Toggle memory capture mode
P Toggle printer
Q Quit
R Receive a file
S Send a file
X Hangup
Y Print screen
Z Clear local screen


BIN
Binary/Apps/zmterm.ovr

Binary file not shown.

BIN
Binary/Apps/zmxfer.ovr

Binary file not shown.

BIN
Binary/CPM3/bdos3.spr

Binary file not shown.

BIN
Binary/CPM3/bios3.spr

Binary file not shown.

BIN
Binary/CPM3/bnkbdos3.spr

Binary file not shown.

BIN
Binary/CPM3/bnkbios3.spr

Binary file not shown.

BIN
Binary/CPM3/cpm3fix.pat

Binary file not shown.

158
Binary/CPM3/genbnk.dat

@ -0,0 +1,158 @@
PRTMSG = Y
PAGWID = 4F
PAGLEN = 17
BACKSPC = N
RUBOUT = N
BOOTDRV = A
MEMTOP = FD
BNKSWT = Y
COMBAS = 80
LERROR = Y
NUMSEGS = 04
MEMSEG00 = 01,43,00
MEMSEG01 = 0E,72,02
MEMSEG02 = 01,7F,03
MEMSEG03 = 01,7F,04
MEMSEG04 = 01,7F,05
MEMSEG05 = 00,C0,06
MEMSEG06 = 00,C0,07
MEMSEG07 = 00,C0,08
MEMSEG08 = 00,C0,09
MEMSEG09 = 00,C0,0A
MEMSEG0A = 00,C0,0B
MEMSEG0B = 00,C0,0C
MEMSEG0C = 00,C0,0D
MEMSEG0D = 00,C0,0E
MEMSEG0E = 00,C0,0F
MEMSEG0F = 00,C0,10
HASHDRVA = Y
HASHDRVB = Y
HASHDRVC = Y
HASHDRVD = Y
HASHDRVE = Y
HASHDRVF = Y
HASHDRVG = Y
HASHDRVH = Y
HASHDRVI = Y
HASHDRVJ = Y
HASHDRVK = Y
HASHDRVL = Y
HASHDRVM = Y
HASHDRVN = Y
HASHDRVO = Y
HASHDRVP = Y
ALTBNKSA = Y
ALTBNKSB = Y
ALTBNKSC = Y
ALTBNKSD = Y
ALTBNKSE = Y
ALTBNKSF = Y
ALTBNKSG = Y
ALTBNKSH = Y
ALTBNKSI = Y
ALTBNKSJ = Y
ALTBNKSK = Y
ALTBNKSL = Y
ALTBNKSM = Y
ALTBNKSN = Y
ALTBNKSO = Y
ALTBNKSP = Y
NDIRRECA = 08
NDIRRECB = 00
NDIRRECC = 00
NDIRRECD = 00
NDIRRECE = 00
NDIRRECF = 00
NDIRRECG = 00
NDIRRECH = 00
NDIRRECI = 00
NDIRRECJ = 00
NDIRRECK = 00
NDIRRECL = 00
NDIRRECM = 00
NDIRRECN = 00
NDIRRECO = 00
NDIRRECP = 00
NDTARECA = 10
NDTARECB = 00
NDTARECC = 00
NDTARECD = 00
NDTARECE = 00
NDTARECF = 00
NDTARECG = 00
NDTARECH = 00
NDTARECI = 00
NDTARECJ = 00
NDTARECK = 00
NDTARECL = 00
NDTARECM = 00
NDTARECN = 00
NDTARECO = 00
NDTARECP = 00
ODIRDRVA = A
ODIRDRVB = A
ODIRDRVC = A
ODIRDRVD = A
ODIRDRVE = A
ODIRDRVF = A
ODIRDRVG = A
ODIRDRVH = A
ODIRDRVI = A
ODIRDRVJ = A
ODIRDRVK = A
ODIRDRVL = A
ODIRDRVM = A
ODIRDRVN = A
ODIRDRVO = A
ODIRDRVP = A
ODTADRVA = A
ODTADRVB = A
ODTADRVC = A
ODTADRVD = A
ODTADRVE = A
ODTADRVF = A
ODTADRVG = A
ODTADRVH = A
ODTADRVI = A
ODTADRVJ = A
ODTADRVK = A
ODTADRVL = A
ODTADRVM = A
ODTADRVN = A
ODTADRVO = A
ODTADRVP = A
OVLYDIRA = Y
OVLYDIRB = Y
OVLYDIRC = Y
OVLYDIRD = Y
OVLYDIRE = Y
OVLYDIRF = Y
OVLYDIRG = Y
OVLYDIRH = Y
OVLYDIRI = Y
OVLYDIRJ = Y
OVLYDIRK = Y
OVLYDIRL = Y
OVLYDIRM = Y
OVLYDIRN = Y
OVLYDIRO = Y
OVLYDIRP = Y
OVLYDTAA = Y
OVLYDTAB = Y
OVLYDTAC = Y
OVLYDTAD = Y
OVLYDTAE = Y
OVLYDTAF = Y
OVLYDTAG = Y
OVLYDTAH = Y
OVLYDTAI = Y
OVLYDTAJ = Y
OVLYDTAK = Y
OVLYDTAL = Y
OVLYDTAM = Y
OVLYDTAN = Y
OVLYDTAO = Y
OVLYDTAP = Y
CRDATAF = N
DBLALV = Y


158
Binary/CPM3/gencpm.dat

@ -0,0 +1,158 @@
PRTMSG = Y
PAGWID = 4F
PAGLEN = 17
BACKSPC = N
RUBOUT = N
BOOTDRV = A
MEMTOP = FD
BNKSWT = Y
COMBAS = 80
LERROR = Y
NUMSEGS = 04
MEMSEG00 = 01,43,00
MEMSEG01 = 0E,72,02
MEMSEG02 = 01,7F,03
MEMSEG03 = 01,7F,04
MEMSEG04 = 01,7F,05
MEMSEG05 = 00,C0,06
MEMSEG06 = 00,C0,07
MEMSEG07 = 00,C0,08
MEMSEG08 = 00,C0,09
MEMSEG09 = 00,C0,0A
MEMSEG0A = 00,C0,0B
MEMSEG0B = 00,C0,0C
MEMSEG0C = 00,C0,0D
MEMSEG0D = 00,C0,0E
MEMSEG0E = 00,C0,0F
MEMSEG0F = 00,C0,10
HASHDRVA = Y
HASHDRVB = Y
HASHDRVC = Y
HASHDRVD = Y
HASHDRVE = Y
HASHDRVF = Y
HASHDRVG = Y
HASHDRVH = Y
HASHDRVI = Y
HASHDRVJ = Y
HASHDRVK = Y
HASHDRVL = Y
HASHDRVM = Y
HASHDRVN = Y
HASHDRVO = Y
HASHDRVP = Y
ALTBNKSA = Y
ALTBNKSB = Y
ALTBNKSC = Y
ALTBNKSD = Y
ALTBNKSE = Y
ALTBNKSF = Y
ALTBNKSG = Y
ALTBNKSH = Y
ALTBNKSI = Y
ALTBNKSJ = Y
ALTBNKSK = Y
ALTBNKSL = Y
ALTBNKSM = Y
ALTBNKSN = Y
ALTBNKSO = Y
ALTBNKSP = Y
NDIRRECA = 08
NDIRRECB = 00
NDIRRECC = 00
NDIRRECD = 00
NDIRRECE = 00
NDIRRECF = 00
NDIRRECG = 00
NDIRRECH = 00
NDIRRECI = 00
NDIRRECJ = 00
NDIRRECK = 00
NDIRRECL = 00
NDIRRECM = 00
NDIRRECN = 00
NDIRRECO = 00
NDIRRECP = 00
NDTARECA = 10
NDTARECB = 00
NDTARECC = 00
NDTARECD = 00
NDTARECE = 00
NDTARECF = 00
NDTARECG = 00
NDTARECH = 00
NDTARECI = 00
NDTARECJ = 00
NDTARECK = 00
NDTARECL = 00
NDTARECM = 00
NDTARECN = 00
NDTARECO = 00
NDTARECP = 00
ODIRDRVA = A
ODIRDRVB = A
ODIRDRVC = A
ODIRDRVD = A
ODIRDRVE = A
ODIRDRVF = A
ODIRDRVG = A
ODIRDRVH = A
ODIRDRVI = A
ODIRDRVJ = A
ODIRDRVK = A
ODIRDRVL = A
ODIRDRVM = A
ODIRDRVN = A
ODIRDRVO = A
ODIRDRVP = A
ODTADRVA = A
ODTADRVB = A
ODTADRVC = A
ODTADRVD = A
ODTADRVE = A
ODTADRVF = A
ODTADRVG = A
ODTADRVH = A
ODTADRVI = A
ODTADRVJ = A
ODTADRVK = A
ODTADRVL = A
ODTADRVM = A
ODTADRVN = A
ODTADRVO = A
ODTADRVP = A
OVLYDIRA = Y
OVLYDIRB = Y
OVLYDIRC = Y
OVLYDIRD = Y
OVLYDIRE = Y
OVLYDIRF = Y
OVLYDIRG = Y
OVLYDIRH = Y
OVLYDIRI = Y
OVLYDIRJ = Y
OVLYDIRK = Y
OVLYDIRL = Y
OVLYDIRM = Y
OVLYDIRN = Y
OVLYDIRO = Y
OVLYDIRP = Y
OVLYDTAA = Y
OVLYDTAB = Y
OVLYDTAC = Y
OVLYDTAD = Y
OVLYDTAE = Y
OVLYDTAF = Y
OVLYDTAG = Y
OVLYDTAH = Y
OVLYDTAI = Y
OVLYDTAJ = Y
OVLYDTAK = Y
OVLYDTAL = Y
OVLYDTAM = Y
OVLYDTAN = Y
OVLYDTAO = Y
OVLYDTAP = Y
CRDATAF = N
DBLALV = Y


158
Binary/CPM3/genres.dat

@ -0,0 +1,158 @@
PRTMSG = Y
PAGWID = 4F
PAGLEN = 17
BACKSPC = N
RUBOUT = N
BOOTDRV = A
MEMTOP = FD
BNKSWT = N
COMBAS = 00
LERROR = Y
NUMSEGS = 03
MEMSEG00 = 00,80,00
MEMSEG01 = 00,C0,02
MEMSEG02 = 00,C0,03
MEMSEG03 = 00,C0,04
MEMSEG04 = 00,C0,05
MEMSEG05 = 00,C0,06
MEMSEG06 = 00,C0,07
MEMSEG07 = 00,C0,08
MEMSEG08 = 00,C0,09
MEMSEG09 = 00,C0,0A
MEMSEG0A = 00,C0,0B
MEMSEG0B = 00,C0,0C
MEMSEG0C = 00,C0,0D
MEMSEG0D = 00,C0,0E
MEMSEG0E = 00,C0,0F
MEMSEG0F = 00,C0,10
HASHDRVA = N
HASHDRVB = N
HASHDRVC = N
HASHDRVD = N
HASHDRVE = N
HASHDRVF = N
HASHDRVG = N
HASHDRVH = N
HASHDRVI = N
HASHDRVJ = N
HASHDRVK = N
HASHDRVL = N
HASHDRVM = N
HASHDRVN = N
HASHDRVO = N
HASHDRVP = N
ALTBNKSA = N
ALTBNKSB = N
ALTBNKSC = N
ALTBNKSD = N
ALTBNKSE = N
ALTBNKSF = N
ALTBNKSG = N
ALTBNKSH = N
ALTBNKSI = N
ALTBNKSJ = N
ALTBNKSK = N
ALTBNKSL = N
ALTBNKSM = N
ALTBNKSN = N
ALTBNKSO = N
ALTBNKSP = N
NDIRRECA = 01
NDIRRECB = 00
NDIRRECC = 00
NDIRRECD = 00
NDIRRECE = 00
NDIRRECF = 00
NDIRRECG = 00
NDIRRECH = 00
NDIRRECI = 00
NDIRRECJ = 00
NDIRRECK = 00
NDIRRECL = 00
NDIRRECM = 00
NDIRRECN = 00
NDIRRECO = 00
NDIRRECP = 00
NDTARECA = 01
NDTARECB = 00
NDTARECC = 00
NDTARECD = 00
NDTARECE = 00
NDTARECF = 00
NDTARECG = 00
NDTARECH = 00
NDTARECI = 00
NDTARECJ = 00
NDTARECK = 00
NDTARECL = 00
NDTARECM = 00
NDTARECN = 00
NDTARECO = 00
NDTARECP = 00
ODIRDRVA = A
ODIRDRVB = A
ODIRDRVC = A
ODIRDRVD = A
ODIRDRVE = A
ODIRDRVF = A
ODIRDRVG = A
ODIRDRVH = A
ODIRDRVI = A
ODIRDRVJ = A
ODIRDRVK = A
ODIRDRVL = A
ODIRDRVM = A
ODIRDRVN = A
ODIRDRVO = A
ODIRDRVP = A
ODTADRVA = A
ODTADRVB = A
ODTADRVC = A
ODTADRVD = A
ODTADRVE = A
ODTADRVF = A
ODTADRVG = A
ODTADRVH = A
ODTADRVI = A
ODTADRVJ = A
ODTADRVK = A
ODTADRVL = A
ODTADRVM = A
ODTADRVN = A
ODTADRVO = A
ODTADRVP = A
OVLYDIRA = Y
OVLYDIRB = Y
OVLYDIRC = Y
OVLYDIRD = Y
OVLYDIRE = Y
OVLYDIRF = Y
OVLYDIRG = Y
OVLYDIRH = Y
OVLYDIRI = Y
OVLYDIRJ = Y
OVLYDIRK = Y
OVLYDIRL = Y
OVLYDIRM = Y
OVLYDIRN = Y
OVLYDIRO = Y
OVLYDIRP = Y
OVLYDTAA = Y
OVLYDTAB = Y
OVLYDTAC = Y
OVLYDTAD = Y
OVLYDTAE = Y
OVLYDTAF = Y
OVLYDTAG = Y
OVLYDTAH = Y
OVLYDTAI = Y
OVLYDTAJ = Y
OVLYDTAK = Y
OVLYDTAL = Y
OVLYDTAM = Y
OVLYDTAN = Y
OVLYDTAO = Y
OVLYDTAP = Y
CRDATAF = N
DBLALV = N


39
Binary/CPM3/readme.1st

@ -0,0 +1,39 @@
CP/M 3
======
This archive contains an almost complete build of CP/M 3.
If you have the source distribution, the file MAKING.DOC explains how to
set up the build environment on your computer.
Differences from Digital Research CP/M 3
========================================
All the CP/M 3 patches described in the document CPM3FIX.PAT have been
applied to the source code, except those to INITDIR. Patches 1-18 (except
nos. 5 and 9) were applied.
CP/M 3 is now fully Year 2000 compliant. This affects the programs
DATE.COM, DIR.COM and SHOW.COM.
Dates can be displayed in US, UK or Year-Month-Day format. This is set by
SETDEF:
SETDEF [US]
SETDEF [UK]
SETDEF [YMD] respectively.
The CCP has a further bug fix: A command sequence such as:
C1
:C2
:C3
will now not execute the command C3 if the command C1 failed.
What's missing?
===============
INITDIR.COM - because it is written in PL/I and I can't make the
PL/I compiler at <http://cdl.uta.edu/cpm> compile it.
Apparently a more recent version of the compiler is
required.

BIN
Binary/CPM3/resbdos3.spr

Binary file not shown.

BIN
Binary/RPH_ddw.upd

Binary file not shown.

BIN
Binary/ZPM3/bnkbdos3.spr

Binary file not shown.

BIN
Binary/ZPM3/bnkbios3.spr

Binary file not shown.

158
Binary/ZPM3/gencpm.dat

@ -0,0 +1,158 @@
PRTMSG = Y
PAGWID = 4F
PAGLEN = 17
BACKSPC = N
RUBOUT = N
BOOTDRV = A
MEMTOP = FD
BNKSWT = Y
COMBAS = 80
LERROR = Y
NUMSEGS = 04
MEMSEG00 = 01,43,00
MEMSEG01 = 0E,72,02
MEMSEG02 = 01,7F,03
MEMSEG03 = 01,7F,04
MEMSEG04 = 01,7F,05
MEMSEG05 = 00,C0,06
MEMSEG06 = 00,C0,07
MEMSEG07 = 00,C0,08
MEMSEG08 = 00,C0,09
MEMSEG09 = 00,C0,0A
MEMSEG0A = 00,C0,0B
MEMSEG0B = 00,C0,0C
MEMSEG0C = 00,C0,0D
MEMSEG0D = 00,C0,0E
MEMSEG0E = 00,C0,0F
MEMSEG0F = 00,C0,10
HASHDRVA = Y
HASHDRVB = Y
HASHDRVC = Y
HASHDRVD = Y
HASHDRVE = Y
HASHDRVF = Y
HASHDRVG = Y
HASHDRVH = Y
HASHDRVI = Y
HASHDRVJ = Y
HASHDRVK = Y
HASHDRVL = Y
HASHDRVM = Y
HASHDRVN = Y
HASHDRVO = Y
HASHDRVP = Y
ALTBNKSA = Y
ALTBNKSB = Y
ALTBNKSC = Y
ALTBNKSD = Y
ALTBNKSE = Y
ALTBNKSF = Y
ALTBNKSG = Y
ALTBNKSH = Y
ALTBNKSI = Y
ALTBNKSJ = Y
ALTBNKSK = Y
ALTBNKSL = Y
ALTBNKSM = Y
ALTBNKSN = Y
ALTBNKSO = Y
ALTBNKSP = Y
NDIRRECA = 08
NDIRRECB = 00
NDIRRECC = 00
NDIRRECD = 00
NDIRRECE = 00
NDIRRECF = 00
NDIRRECG = 00
NDIRRECH = 00
NDIRRECI = 00
NDIRRECJ = 00
NDIRRECK = 00
NDIRRECL = 00
NDIRRECM = 00
NDIRRECN = 00
NDIRRECO = 00
NDIRRECP = 00
NDTARECA = 10
NDTARECB = 00
NDTARECC = 00
NDTARECD = 00
NDTARECE = 00
NDTARECF = 00
NDTARECG = 00
NDTARECH = 00
NDTARECI = 00
NDTARECJ = 00
NDTARECK = 00
NDTARECL = 00
NDTARECM = 00
NDTARECN = 00
NDTARECO = 00
NDTARECP = 00
ODIRDRVA = A
ODIRDRVB = A
ODIRDRVC = A
ODIRDRVD = A
ODIRDRVE = A
ODIRDRVF = A
ODIRDRVG = A
ODIRDRVH = A
ODIRDRVI = A
ODIRDRVJ = A
ODIRDRVK = A
ODIRDRVL = A
ODIRDRVM = A
ODIRDRVN = A
ODIRDRVO = A
ODIRDRVP = A
ODTADRVA = A
ODTADRVB = A
ODTADRVC = A
ODTADRVD = A
ODTADRVE = A
ODTADRVF = A
ODTADRVG = A
ODTADRVH = A
ODTADRVI = A
ODTADRVJ = A
ODTADRVK = A
ODTADRVL = A
ODTADRVM = A
ODTADRVN = A
ODTADRVO = A
ODTADRVP = A
OVLYDIRA = Y
OVLYDIRB = Y
OVLYDIRC = Y
OVLYDIRD = Y
OVLYDIRE = Y
OVLYDIRF = Y
OVLYDIRG = Y
OVLYDIRH = Y
OVLYDIRI = Y
OVLYDIRJ = Y
OVLYDIRK = Y
OVLYDIRL = Y
OVLYDIRM = Y
OVLYDIRN = Y
OVLYDIRO = Y
OVLYDIRP = Y
OVLYDTAA = Y
OVLYDTAB = Y
OVLYDTAC = Y
OVLYDTAD = Y
OVLYDTAE = Y
OVLYDTAF = Y
OVLYDTAG = Y
OVLYDTAH = Y
OVLYDTAI = Y
OVLYDTAJ = Y
OVLYDTAK = Y
OVLYDTAL = Y
OVLYDTAM = Y
OVLYDTAN = Y
OVLYDTAO = Y
OVLYDTAP = Y
CRDATAF = N
DBLALV = Y


BIN
Binary/ZPM3/resbdos3.spr

Binary file not shown.

BIN
Binary/ZPM3/zinstal.zpm

Binary file not shown.

BIN
Binary/hd1024_prefix.dat

Binary file not shown.

160
Source/Fonts/font8x11c.asm

@ -0,0 +1,160 @@
font8x11c:
.byte 0x1A, 0x6F, 0x7E, 0xC3, 0x99, 0xF3, 0xE7, 0xFF
.byte 0xE7, 0x7E, 0x00, 0x1A, 0x2B, 0x7F, 0xE6, 0x66
.byte 0x66, 0xC3, 0x1A, 0x4A, 0x0C, 0x18, 0xFC, 0x30
.byte 0xFC, 0x60, 0xC0, 0xFA, 0x4B, 0x18, 0x30, 0x60
.byte 0x30, 0x18, 0x00, 0x7C, 0x00, 0x01, 0x90, 0x1B
.byte 0x00, 0xF8, 0x00, 0xFB, 0xE9, 0x3C, 0x23, 0x1A
.byte 0x4A, 0x10, 0x38, 0x7C, 0xFE, 0x7C, 0x38, 0x10
.byte 0xFD, 0x61, 0xC3, 0xC6, 0xCC, 0xD8, 0x36, 0x6E
.byte 0xD6, 0xBF, 0x06, 0x58, 0x6B, 0xC6, 0x8C, 0x0F
.byte 0xB3, 0xF9, 0x6F, 0xE1, 0x33, 0x66, 0x34, 0xEA
.byte 0x36, 0x6A, 0xDF, 0x82, 0x01, 0x04, 0xD0, 0x1F
.byte 0x00, 0x6C, 0x00, 0xF6, 0x11, 0x0C, 0x78, 0xA5
.byte 0xF9, 0x0E, 0x1B, 0x18, 0x3C, 0x18, 0x18, 0xD8
.byte 0x70, 0x40, 0xD6, 0xEB, 0x7E, 0x05, 0xA1, 0xEC
.byte 0x7E, 0x48, 0x00, 0x9E, 0x40, 0x7C, 0xF2, 0xDB
.byte 0x9B, 0x5F, 0xF1, 0x5B, 0x55, 0x51, 0xBB, 0x36
.byte 0x54, 0xDB, 0xDB, 0xB8, 0x48, 0x18, 0x59, 0x0C
.byte 0x0C, 0x00, 0xB9, 0x01, 0x44, 0xCA, 0x56, 0xCC
.byte 0x66, 0xD8, 0xFB, 0x08, 0x66, 0x66, 0xCC, 0x27
.byte 0x57, 0x47, 0xDA, 0x4B, 0x18, 0xBC, 0x1B, 0x5A
.byte 0xC6, 0x7C, 0x7E, 0xC0, 0xCE, 0xC6, 0x7E, 0x00
.byte 0x5A, 0x2F, 0x00, 0x76, 0xCC, 0x7C, 0x0C, 0x02
.byte 0x40, 0xAD, 0x10, 0x78, 0x30, 0x4C, 0x78, 0x8A
.byte 0x0E, 0x70, 0xA4, 0x3B, 0x78, 0xC4, 0x70, 0x38
.byte 0x8C, 0x78, 0x0C, 0xAB, 0x10, 0x7C, 0xC0, 0x0B
.byte 0xF8, 0xAF, 0x06, 0x42, 0xC9, 0xE9, 0x78, 0x20
.byte 0xD5, 0x02, 0xFA, 0x0A, 0x6C, 0x6C, 0x28, 0x04
.byte 0x29, 0xFE, 0xF2, 0x6B, 0x6C, 0xB6, 0xFB, 0x7C
.byte 0xD0, 0x7C, 0x16, 0x7C, 0xE8, 0x00, 0x40, 0x39
.byte 0x52, 0x66, 0xC6, 0x6B, 0xFB, 0x43, 0x38, 0x6C
.byte 0x38, 0x76, 0xDC, 0xCC, 0x76, 0x44, 0x32, 0x65
.byte 0x69, 0x69, 0x60, 0x67, 0x65, 0x69, 0x01, 0x4C
.byte 0x60, 0xB2, 0x50, 0x38, 0xFE, 0xD0, 0x45, 0x91
.byte 0xF1, 0x30, 0xFC, 0x03, 0xF4, 0x47, 0xC4, 0x4F
.byte 0xFC, 0x6C, 0x45, 0x03, 0x51, 0x06, 0x0C, 0xB1
.byte 0x53, 0xC0, 0x80, 0x46, 0x18, 0x0E, 0xC6, 0xC6
.byte 0xD6, 0x2B, 0x7C, 0x22, 0x42, 0x25, 0x53, 0x30
.byte 0xFC, 0x24, 0x1F, 0xCC, 0x0C, 0x38, 0x60, 0xCC
.byte 0xA0, 0x53, 0x0C, 0xCC, 0x03, 0x5B, 0x45, 0x1C
.byte 0x3C, 0x6C, 0xCC, 0xFE, 0x0C, 0x1E, 0xAB, 0x48
.byte 0xC0, 0x11, 0x25, 0x30, 0x38, 0x60, 0xAA, 0x0C
.byte 0xCC, 0x51, 0xFC, 0xCC, 0xA7, 0x44, 0x7B, 0x08
.byte 0x78, 0x6E, 0x02, 0x05, 0xA4, 0x28, 0x7C, 0x4D
.byte 0x70, 0x80, 0x22, 0xEA, 0x07, 0x27, 0x4C, 0x60
.byte 0x24, 0xE9, 0xC0, 0x45, 0x51, 0x46, 0x4F, 0x21
.byte 0x42, 0x59, 0x45, 0x71, 0x6D, 0x18, 0xB6, 0x7C
.byte 0x4E, 0x7C, 0xC6, 0xDE, 0xDE, 0xDC, 0xC0, 0x78
.byte 0xD7, 0x40, 0x44, 0xE8, 0xFE, 0x62, 0x1B, 0xE8
.byte 0xFC, 0x08, 0x7C, 0x43, 0x45, 0xFA, 0x46, 0x3C
.byte 0x66, 0xC0, 0xC0, 0xC0, 0x66, 0x3C, 0x30, 0xF8
.byte 0x6C, 0x93, 0x66, 0x6C, 0xF4, 0x40, 0x1F, 0xFE
.byte 0x62, 0x68, 0x78, 0x68, 0x62, 0xFE, 0xA0, 0x55
.byte 0x60, 0xF0, 0xD4, 0x60, 0x11, 0xF3, 0x66, 0x3E
.byte 0x42, 0xB4, 0x43, 0xB3, 0x62, 0x13, 0x66, 0x11
.byte 0x10, 0x1E, 0x0C, 0xF4, 0x45, 0x24, 0xFA, 0xE6
.byte 0x66, 0x6C, 0x78, 0x6C, 0x66, 0xE6, 0x69, 0xF0
.byte 0x75, 0x53, 0x62, 0x66, 0xB3, 0x79, 0x1A, 0xC6
.byte 0xEE, 0xFE, 0xFE, 0xC0, 0x03, 0xF8, 0x15, 0xE6
.byte 0xF6, 0xDE, 0xCE, 0x65, 0xAB, 0xE9, 0xC6, 0x46
.byte 0x66, 0x49, 0x60, 0x92, 0x26, 0xFD, 0x02, 0xCE
.byte 0x7C, 0x0E, 0x45, 0xB3, 0x7D, 0x78, 0xCC, 0xE0
.byte 0x78, 0x1C, 0xC1, 0x4F, 0xB4, 0x87, 0x0A, 0x4D
.byte 0xC6, 0xBE, 0x06, 0xF5, 0x6C, 0x38, 0xFC, 0x1F
.byte 0xD6, 0xD6, 0xFE, 0x6C, 0x4A, 0x6C, 0x00, 0x62
.byte 0x95, 0xE9, 0xCC, 0x85, 0x61, 0xFB, 0x4F, 0xFE
.byte 0xCC, 0x98, 0x30, 0x62, 0xC6, 0xFE, 0x0A, 0x60
.byte 0x23, 0x55, 0x6A, 0xC0, 0xB5, 0x33, 0x06, 0x02
.byte 0x0A, 0x18, 0xF5, 0x23, 0x69, 0x10, 0xC0, 0xA7
.byte 0xF5, 0x6C, 0x6A, 0xFE, 0x6A, 0x66, 0x78, 0x43
.byte 0xD2, 0x94, 0x0C, 0x7C, 0xF5, 0x77, 0x48, 0xE0
.byte 0x3D, 0x61, 0xA0, 0x2D, 0xDC, 0x95, 0xCC, 0xC0
.byte 0xF0, 0xF0, 0x29, 0x0C, 0x36, 0xCC, 0x76, 0x5F
.byte 0x6E, 0xFC, 0x69, 0x53, 0x60, 0xF0, 0x0E, 0x62
.byte 0x04, 0xEA, 0x76, 0x4B, 0xF8, 0xBE, 0xF0, 0x6C
.byte 0x76, 0x6B, 0xE6, 0x07, 0xA7, 0xBC, 0x1F, 0x48
.byte 0x0C, 0xBC, 0x66, 0x9F, 0xF2, 0xE0, 0x60, 0x43
.byte 0xDF, 0x6D, 0x70, 0x7F, 0x03, 0xF8, 0x0A, 0xEC
.byte 0xFE, 0xD6, 0x04, 0x11, 0xDC, 0x66, 0xF5, 0x46
.byte 0x7C, 0xE9, 0xCC, 0x26, 0x4A, 0x7C, 0x91, 0x46
.byte 0x92, 0x2C, 0x1E, 0x5F, 0x4C, 0x76, 0x7C, 0xA6
.byte 0x63, 0x43, 0x0E, 0xA2, 0xFF, 0xDE, 0xB6, 0x36
.byte 0x1C, 0x04, 0x47, 0x45, 0x0A, 0x63, 0xA0, 0x04
.byte 0x63, 0xA0, 0x24, 0x5F, 0x63, 0x9F, 0x45, 0xD4
.byte 0x45, 0x3A, 0x62, 0x46, 0x60, 0x9F, 0x53, 0x64
.byte 0xFC, 0x03, 0x40, 0x5B, 0xE8, 0xE0, 0x43, 0xB3
.byte 0x0D, 0x18, 0x01, 0xA6, 0x01, 0x02, 0x3E, 0x43
.byte 0x05, 0x63, 0xD1, 0x86, 0xA1, 0x10, 0x3C, 0x3C
.byte 0x02, 0x64, 0x74, 0x5A, 0x1C, 0x36, 0x63, 0x7F
.byte 0x63, 0x9F, 0xF1, 0x03, 0x06, 0x53, 0xFE, 0xC6
.byte 0x66, 0x48, 0x28, 0x5A, 0x05, 0xA0, 0xF7, 0x76
.byte 0xDC, 0x56, 0x6C, 0x00, 0xDF, 0x01, 0xBA, 0x07
.byte 0x04, 0x9E, 0x3F, 0x6D, 0xCC, 0xFF, 0xCC, 0xCD
.byte 0xCF, 0xF1, 0x14, 0xBB, 0x66, 0x3C, 0x06, 0x3C
.byte 0xE2, 0x54, 0xBC, 0xFE, 0x62, 0x78, 0x62, 0xFE
.byte 0xEA, 0x33, 0x07, 0x0A, 0xF3, 0x10, 0x28, 0x44
.byte 0xB3, 0x04, 0x43, 0xD4, 0x8E, 0x00, 0xFA, 0xCF
.byte 0x0F, 0x18, 0x10, 0xF7, 0x20, 0x50, 0x8C, 0xCC
.byte 0xEF, 0x0F, 0xA5, 0xBC, 0xE9, 0xF6, 0x45, 0x66
.byte 0x82, 0xFE, 0x1D, 0x45, 0xBE, 0x8D, 0x7C, 0xCA
.byte 0x14, 0x0C, 0x18, 0xAA, 0x46, 0x3A, 0xF5, 0xC6
.byte 0x7C, 0x06, 0x29, 0x6C, 0x05, 0x23, 0x03, 0x9E
.byte 0x86, 0x52, 0x5D, 0x41, 0x3D, 0x67, 0x6E, 0x7E
.byte 0x76, 0xE6, 0xBC, 0xB3, 0xEF, 0xC6, 0xEF, 0xC6
.byte 0x10, 0x4F, 0xC6, 0xBE, 0xEE, 0xC6, 0x92, 0x18
.byte 0x30, 0xFF, 0x13, 0xAC, 0x78, 0x7A, 0x6A, 0x7C
.byte 0x07, 0x85, 0xF1, 0xF2, 0xFA, 0xD8, 0xCC, 0xC6
.byte 0xCC, 0x35, 0xAA, 0x55, 0xFF, 0x82, 0x98, 0xAA
.byte 0x30, 0xEE, 0x7D, 0xAC, 0x00, 0x95, 0xF8, 0x0F
.byte 0xD6, 0xD0, 0xD6, 0x83, 0x61, 0xE8, 0x64, 0x84
.byte 0xE4, 0xD5, 0xFA, 0x1E, 0x31, 0xFC, 0x60, 0xF8
.byte 0x33, 0x1E, 0x41, 0xAA, 0xA1, 0xDF, 0xFE, 0x43
.byte 0xD4, 0xE8, 0x28, 0x86, 0xCF, 0x70, 0x3E, 0x61
.byte 0x9E, 0x60, 0xA0, 0x37, 0x86, 0x7C, 0x55, 0x1A
.byte 0x5A, 0x3C, 0x42, 0x99, 0xA1, 0xA1, 0x99, 0x42
.byte 0x3C, 0x9C, 0x2D, 0x6C, 0x6C, 0x3E, 0x00, 0x7E
.byte 0x98, 0xE8, 0x33, 0xF6, 0x66, 0x33, 0x95, 0xFC
.byte 0x0C, 0xD1, 0x6D, 0x4A, 0x66, 0xBE, 0x4C, 0x66
.byte 0xC9, 0xFB, 0xB9, 0xA5, 0xB9, 0xA5, 0x65, 0xF3
.byte 0x64, 0x27, 0x85, 0xFE, 0x85, 0xA6, 0x3F, 0x2C
.byte 0xFC, 0x5D, 0x75, 0x18, 0x30, 0xCE, 0x80, 0xA7
.byte 0xEE, 0x38, 0x94, 0x50, 0x20, 0xFF, 0x82, 0x03
.byte 0xE9, 0x66, 0xB1, 0x7B, 0xC0, 0xDF, 0xF8, 0xE8
.byte 0x7F, 0x10, 0x7B, 0x1B, 0x47, 0xBB, 0x08, 0x47
.byte 0xD4, 0x5F, 0x21, 0x18, 0x38, 0x18, 0x18, 0x3C
.byte 0x92, 0x46, 0x82, 0x41, 0x52, 0xA5, 0xD4, 0xF6
.byte 0xFC, 0x7F, 0xCD, 0xCC, 0xCF, 0xCC, 0xCD, 0x7F
.byte 0x9C, 0x2F, 0x7E, 0xDB, 0xDE, 0xD8, 0x7E, 0xFB
.byte 0x65, 0x95, 0x63, 0xB6, 0xAD, 0x60, 0xFF, 0x0C
.byte 0x82, 0x2C, 0xED, 0xFF, 0x06, 0xF5, 0x24, 0x0F
.byte 0x1F, 0xA1, 0xEC, 0xF8, 0x02, 0x1A, 0xEA, 0x1F
.byte 0x04, 0xEF, 0xF8, 0x15, 0x43, 0xD4, 0x25, 0x47
.byte 0xC9, 0x11, 0xEF, 0xFF, 0x47, 0x9D, 0x25, 0x25
.byte 0x35, 0x88, 0x22, 0xFF, 0x43, 0x80, 0x26, 0x07
.byte 0x96, 0x27, 0x2C, 0x2D, 0xFF, 0xCF, 0x0E, 0x36
.byte 0x23, 0x50, 0x1E, 0x3F, 0x30, 0x37, 0xA0, 0xFB
.byte 0xFE, 0x06, 0xF6, 0x01, 0xD0, 0x5E, 0x37, 0x30
.byte 0x3F, 0xD4, 0x1E, 0x0A, 0xF6, 0x06, 0xFE, 0x4B
.byte 0x37, 0xD4, 0x24, 0x55, 0x43, 0xD4, 0x45, 0xA8
.byte 0x2E, 0xF7, 0x4F, 0xF7, 0x9D, 0x15, 0x2D, 0xF7
.byte 0x0E, 0xFF, 0xFC, 0x81, 0x26, 0xEF, 0x3C, 0x2C
.byte 0xE8, 0x18, 0xE8, 0x3C, 0xA4, 0x96, 0xE9, 0x7F
.byte 0x04, 0xA0, 0xFC, 0x0C, 0xFE, 0x0C, 0xB7, 0x60
.byte 0x30, 0xE0, 0x8B, 0x0F, 0x18, 0xA1, 0xF7, 0x10
.byte 0x28, 0x00, 0xF7, 0x76, 0xDC, 0xF3, 0x6C, 0x00
.byte 0x85, 0xC5, 0xCB, 0x22, 0x65, 0x3D, 0xBF, 0x1E
.byte 0x1B, 0x7E, 0xD8, 0x6E, 0x55, 0x1E, 0x54, 0x0C
.byte 0x78, 0xA8, 0xA6, 0x5F, 0x0C, 0x18, 0xA5, 0x45
.byte 0xA8, 0x26, 0xF3, 0x6C, 0x00, 0x85, 0xE1, 0xE0
.byte 0xEF, 0x70, 0xEF, 0x70, 0x1A, 0x06, 0x28, 0xD8
.byte 0xBD, 0xA6, 0xDE, 0xFD, 0x1E, 0x34, 0x18, 0x2C
.byte 0x7C, 0xB3, 0x76, 0xDC, 0x5E, 0x87, 0xEF, 0xE0
.byte 0x15, 0x44, 0x39, 0x26, 0x5F, 0x82, 0x01, 0x86
.byte 0xC2, 0xE1, 0x9E, 0x3D, 0x66, 0x6E, 0x76, 0x66
.byte 0xEE, 0xE0, 0xA6, 0x54, 0x0C, 0x18, 0xAA, 0x45
.byte 0x71, 0x06, 0x2A, 0xCC, 0xBD, 0x66, 0xCC, 0x8F
.byte 0xCC, 0x8E, 0x1D, 0x8B, 0x7C, 0xE6, 0x44, 0xDF
.byte 0x26, 0x5F, 0xE7, 0xE8

BIN
Source/Fonts/font8x11c.bin

Binary file not shown.

355
Source/Fonts/font8x11u.asm

@ -0,0 +1,355 @@
font8x11u:
.byte 0x7E, 0xC3, 0x99, 0xF3, 0xE7, 0xFF, 0xE7, 0x7E
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xE6, 0x66
.byte 0x66, 0xC3, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x18
.byte 0xFC, 0x30, 0xFC, 0x60, 0xC0, 0x00, 0x00, 0x00
.byte 0x00, 0x18, 0x30, 0x60, 0x30, 0x18, 0x00, 0x7C
.byte 0x00, 0x00, 0x00, 0x00, 0x60, 0x30, 0x18, 0x30
.byte 0x60, 0x00, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x3C, 0x3C, 0x3C, 0x3C, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x10, 0x38, 0x7C, 0xFE, 0x7C, 0x38
.byte 0x10, 0x00, 0x00, 0x00, 0x00, 0xC3, 0xC6, 0xCC
.byte 0xD8, 0x36, 0x6E, 0xD6, 0xBF, 0x06, 0x00, 0x00
.byte 0xC3, 0xC6, 0xCC, 0xD8, 0x36, 0x6B, 0xC6, 0x8C
.byte 0x0F, 0x00, 0x00, 0xE1, 0x33, 0x66, 0x34, 0xEA
.byte 0x36, 0x6A, 0xDF, 0x82, 0x00, 0x00, 0x18, 0x18
.byte 0x18, 0x18, 0x00, 0x18, 0x18, 0x18, 0x18, 0x00
.byte 0x00, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x0C, 0x78, 0x00, 0x00, 0x00, 0x0E
.byte 0x1B, 0x18, 0x3C, 0x18, 0x18, 0xD8, 0x70, 0x00
.byte 0x00, 0x00, 0x18, 0x18, 0x7E, 0x18, 0x18, 0x18
.byte 0x18, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x7E
.byte 0x18, 0x7E, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0xCC, 0xD8, 0x30, 0x60, 0xDB, 0x9B, 0x00
.byte 0x00, 0x00, 0x00, 0xF1, 0x5B, 0x55, 0x51, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0xDB, 0xDB, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x0C, 0x18, 0x30, 0x18, 0x0C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x18, 0x0C
.byte 0x18, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0xCC
.byte 0xCC, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x66, 0x66, 0xCC, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x66, 0x66, 0xCC, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xCC, 0xCC, 0x66
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x18, 0x0C, 0x00, 0x00, 0x00, 0xC6, 0x7C
.byte 0x7E, 0xC0, 0xCE, 0xC6, 0x7E, 0x00, 0x00, 0x00
.byte 0x00, 0xC6, 0x7C, 0x00, 0x76, 0xCC, 0x7C, 0x0C
.byte 0xF8, 0x00, 0x00, 0x00, 0x30, 0x00, 0x78, 0x30
.byte 0x30, 0x30, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x70, 0x30, 0x30, 0x30, 0x78, 0x00, 0x00
.byte 0x00, 0x00, 0x78, 0xC4, 0x70, 0x38, 0x8C, 0x78
.byte 0x0C, 0x78, 0x00, 0x00, 0x00, 0x00, 0x7C, 0xC0
.byte 0x78, 0x0C, 0xF8, 0x0C, 0x78, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x30, 0x78, 0x78, 0x30, 0x30
.byte 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x6C, 0x6C
.byte 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x6C, 0x6C, 0xFE, 0x6C, 0xFE, 0x6C, 0x6C
.byte 0x00, 0x00, 0x00, 0x00, 0x10, 0x7C, 0xD0, 0x7C
.byte 0x16, 0x7C, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC6, 0xCC, 0x18, 0x30, 0x66, 0xC6, 0x00, 0x00
.byte 0x00, 0x00, 0x38, 0x6C, 0x38, 0x76, 0xDC, 0xCC
.byte 0x76, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x30, 0x60, 0x60, 0x60, 0x30, 0x18, 0x00
.byte 0x00, 0x00, 0x00, 0x60, 0x30, 0x18, 0x18, 0x18
.byte 0x30, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6C
.byte 0x38, 0xFE, 0x38, 0x6C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x30, 0x30, 0xFC, 0x30, 0x30, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x18, 0x18, 0x30, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30
.byte 0x30, 0x00, 0x00, 0x00, 0x00, 0x06, 0x0C, 0x18
.byte 0x30, 0x60, 0xC0, 0x80, 0x00, 0x00, 0x00, 0x00
.byte 0x7C, 0xC6, 0xC6, 0xD6, 0xC6, 0xC6, 0x7C, 0x00
.byte 0x00, 0x00, 0x00, 0x30, 0x70, 0x30, 0x30, 0x30
.byte 0x30, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x78, 0xCC
.byte 0x0C, 0x38, 0x60, 0xCC, 0xFC, 0x00, 0x00, 0x00
.byte 0x00, 0x78, 0xCC, 0x0C, 0x38, 0x0C, 0xCC, 0x78
.byte 0x00, 0x00, 0x00, 0x00, 0x1C, 0x3C, 0x6C, 0xCC
.byte 0xFE, 0x0C, 0x1E, 0x00, 0x00, 0x00, 0x00, 0xFC
.byte 0xC0, 0xF8, 0x0C, 0x0C, 0xCC, 0x78, 0x00, 0x00
.byte 0x00, 0x00, 0x38, 0x60, 0xC0, 0xF8, 0xCC, 0xCC
.byte 0x78, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xCC, 0x0C
.byte 0x18, 0x30, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00
.byte 0x78, 0xCC, 0xCC, 0x78, 0xCC, 0xCC, 0x78, 0x00
.byte 0x00, 0x00, 0x00, 0x78, 0xCC, 0xCC, 0x7C, 0x0C
.byte 0x18, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30
.byte 0x30, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x30, 0x30
.byte 0x60, 0x00, 0x00, 0x00, 0x18, 0x30, 0x60, 0xC0
.byte 0x60, 0x30, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0xFC, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x60, 0x30, 0x18, 0x0C, 0x18, 0x30
.byte 0x60, 0x00, 0x00, 0x00, 0x00, 0x78, 0xCC, 0x0C
.byte 0x18, 0x30, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00
.byte 0x7C, 0xC6, 0xDE, 0xDE, 0xDC, 0xC0, 0x78, 0x00
.byte 0x00, 0x00, 0x00, 0x38, 0x6C, 0xC6, 0xC6, 0xFE
.byte 0xC6, 0xC6, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x66
.byte 0x66, 0x7C, 0x66, 0x66, 0xFC, 0x00, 0x00, 0x00
.byte 0x00, 0x3C, 0x66, 0xC0, 0xC0, 0xC0, 0x66, 0x3C
.byte 0x00, 0x00, 0x00, 0x00, 0xF8, 0x6C, 0x66, 0x66
.byte 0x66, 0x6C, 0xF8, 0x00, 0x00, 0x00, 0x00, 0xFE
.byte 0x62, 0x68, 0x78, 0x68, 0x62, 0xFE, 0x00, 0x00
.byte 0x00, 0x00, 0xFE, 0x62, 0x68, 0x78, 0x68, 0x60
.byte 0xF0, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x66, 0xC0
.byte 0xC0, 0xCE, 0x66, 0x3E, 0x00, 0x00, 0x00, 0x00
.byte 0xC6, 0xC6, 0xC6, 0xFE, 0xC6, 0xC6, 0xC6, 0x00
.byte 0x00, 0x00, 0x00, 0x78, 0x30, 0x30, 0x30, 0x30
.byte 0x30, 0x78, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x0C
.byte 0x0C, 0x0C, 0xCC, 0xCC, 0x78, 0x00, 0x00, 0x00
.byte 0x00, 0xE6, 0x66, 0x6C, 0x78, 0x6C, 0x66, 0xE6
.byte 0x00, 0x00, 0x00, 0x00, 0xF0, 0x60, 0x60, 0x60
.byte 0x62, 0x66, 0xFE, 0x00, 0x00, 0x00, 0x00, 0xC6
.byte 0xEE, 0xFE, 0xFE, 0xD6, 0xC6, 0xC6, 0x00, 0x00
.byte 0x00, 0x00, 0xC6, 0xE6, 0xF6, 0xDE, 0xCE, 0xC6
.byte 0xC6, 0x00, 0x00, 0x00, 0x00, 0x7C, 0xC6, 0xC6
.byte 0xC6, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0xFC, 0x66, 0x66, 0x7C, 0x60, 0x60, 0xF0, 0x00
.byte 0x00, 0x00, 0x00, 0x7C, 0xC6, 0xC6, 0xC6, 0xC6
.byte 0xCE, 0x7C, 0x0E, 0x00, 0x00, 0x00, 0xFC, 0x66
.byte 0x66, 0x7C, 0x6C, 0x66, 0xE6, 0x00, 0x00, 0x00
.byte 0x00, 0x78, 0xCC, 0xE0, 0x78, 0x1C, 0xCC, 0x78
.byte 0x00, 0x00, 0x00, 0x00, 0xFC, 0xB4, 0x30, 0x30
.byte 0x30, 0x30, 0x78, 0x00, 0x00, 0x00, 0x00, 0xC6
.byte 0xC6, 0xC6, 0xC6, 0xC6, 0xC6, 0x7C, 0x00, 0x00
.byte 0x00, 0x00, 0xC6, 0xC6, 0xC6, 0xC6, 0xC6, 0x6C
.byte 0x38, 0x00, 0x00, 0x00, 0x00, 0xC6, 0xC6, 0xC6
.byte 0xD6, 0xD6, 0xFE, 0x6C, 0x00, 0x00, 0x00, 0x00
.byte 0xC6, 0xC6, 0x6C, 0x38, 0x6C, 0xC6, 0xC6, 0x00
.byte 0x00, 0x00, 0x00, 0xCC, 0xCC, 0xCC, 0x78, 0x30
.byte 0x30, 0x78, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xCC
.byte 0x98, 0x30, 0x62, 0xC6, 0xFE, 0x00, 0x00, 0x00
.byte 0x00, 0x78, 0x60, 0x60, 0x60, 0x60, 0x60, 0x78
.byte 0x00, 0x00, 0x00, 0x00, 0xC0, 0x60, 0x30, 0x18
.byte 0x0C, 0x06, 0x02, 0x00, 0x00, 0x00, 0x00, 0x78
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x78, 0x00, 0x00
.byte 0x00, 0x00, 0x10, 0x38, 0x6C, 0xC6, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00
.byte 0x30, 0x30, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x0C, 0x7C
.byte 0xCC, 0x76, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x60
.byte 0x60, 0x7C, 0x66, 0x66, 0xDC, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x78, 0xCC, 0xC0, 0xCC, 0x78
.byte 0x00, 0x00, 0x00, 0x00, 0x1C, 0x0C, 0x0C, 0x7C
.byte 0xCC, 0xCC, 0x76, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x78, 0xCC, 0xFC, 0xC0, 0x78, 0x00, 0x00
.byte 0x00, 0x00, 0x38, 0x6C, 0x60, 0xF0, 0x60, 0x60
.byte 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x76
.byte 0xCC, 0xCC, 0x7C, 0x0C, 0xF8, 0x00, 0x00, 0x00
.byte 0xE0, 0x60, 0x6C, 0x76, 0x66, 0x66, 0xE6, 0x00
.byte 0x00, 0x00, 0x00, 0x30, 0x00, 0x70, 0x30, 0x30
.byte 0x30, 0x78, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00
.byte 0x1C, 0x0C, 0x0C, 0xCC, 0xCC, 0x78, 0x00, 0x00
.byte 0x00, 0xE0, 0x60, 0x66, 0x6C, 0x78, 0x6C, 0xE6
.byte 0x00, 0x00, 0x00, 0x00, 0x70, 0x30, 0x30, 0x30
.byte 0x30, 0x30, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0xEC, 0xFE, 0xD6, 0xD6, 0xD6, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0xDC, 0x66, 0x66, 0x66
.byte 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78
.byte 0xCC, 0xCC, 0xCC, 0x78, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xDC, 0x66, 0x66, 0x7C, 0x60, 0xF0
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xCC, 0xCC
.byte 0x7C, 0x0C, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xDC, 0x76, 0x60, 0x60, 0xF0, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x7C, 0xC0, 0x78, 0x0C, 0xF8
.byte 0x00, 0x00, 0x00, 0x00, 0x10, 0x30, 0xFC, 0x30
.byte 0x30, 0x36, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0xCC, 0xCC, 0xCC, 0xCC, 0x76, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0xC6, 0xC6, 0xC6, 0x6C
.byte 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6
.byte 0xD6, 0xD6, 0xFE, 0x6C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xC6, 0x6C, 0x38, 0x6C, 0xC6, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xCC, 0xCC, 0xCC
.byte 0x7C, 0x0C, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFC, 0x98, 0x30, 0x64, 0xFC, 0x00, 0x00, 0x00
.byte 0x00, 0x1C, 0x30, 0x30, 0xE0, 0x30, 0x30, 0x1C
.byte 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0xE0
.byte 0x30, 0x30, 0x1C, 0x30, 0x30, 0xE0, 0x00, 0x00
.byte 0x00, 0x00, 0x76, 0xDC, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18
.byte 0x3C, 0x3C, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC0, 0x60, 0x1C, 0x36, 0x63, 0x7F, 0x63, 0x00
.byte 0x00, 0x00, 0x00, 0x03, 0x06, 0x38, 0x6C, 0xC6
.byte 0xFE, 0xC6, 0x00, 0x00, 0x00, 0x00, 0x10, 0x28
.byte 0x00, 0x7C, 0xC6, 0xFE, 0xC6, 0x00, 0x00, 0x00
.byte 0x00, 0x76, 0xDC, 0x00, 0x7C, 0xC6, 0xFE, 0xC6
.byte 0x00, 0x00, 0x00, 0x00, 0x6C, 0x00, 0x38, 0x6C
.byte 0xC6, 0xFE, 0xC6, 0x00, 0x00, 0x00, 0x00, 0x38
.byte 0x6C, 0x38, 0x6C, 0xC6, 0xFE, 0xC6, 0x00, 0x00
.byte 0x00, 0x00, 0x3F, 0x6D, 0xCC, 0xFF, 0xCC, 0xCD
.byte 0xCF, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x66, 0xC0
.byte 0xC0, 0x66, 0x3C, 0x06, 0x3C, 0x00, 0x00, 0x00
.byte 0x60, 0x30, 0xFE, 0x62, 0x78, 0x62, 0xFE, 0x00
.byte 0x00, 0x00, 0x00, 0x0C, 0x18, 0xFE, 0x62, 0x78
.byte 0x62, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x10, 0x28
.byte 0xFE, 0x62, 0x78, 0x62, 0xFE, 0x00, 0x00, 0x00
.byte 0x00, 0x6C, 0x00, 0xFE, 0x62, 0x78, 0x62, 0xFE
.byte 0x00, 0x00, 0x00, 0x00, 0x60, 0x30, 0x00, 0x78
.byte 0x30, 0x30, 0x78, 0x00, 0x00, 0x00, 0x00, 0x18
.byte 0x30, 0x00, 0x78, 0x30, 0x30, 0x78, 0x00, 0x00
.byte 0x00, 0x00, 0x20, 0x50, 0x00, 0x78, 0x30, 0x30
.byte 0x78, 0x00, 0x00, 0x00, 0x00, 0xCC, 0x00, 0x78
.byte 0x30, 0x30, 0x30, 0x78, 0x00, 0x00, 0x00, 0x00
.byte 0xF8, 0x6C, 0x66, 0xF6, 0x66, 0x6C, 0xF8, 0x00
.byte 0x00, 0x00, 0x00, 0x76, 0xDC, 0x00, 0xE6, 0xF6
.byte 0xDE, 0xCE, 0x00, 0x00, 0x00, 0x00, 0x60, 0x30
.byte 0x00, 0x7C, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00
.byte 0x00, 0x0C, 0x18, 0x00, 0x7C, 0xC6, 0xC6, 0x7C
.byte 0x00, 0x00, 0x00, 0x00, 0x10, 0x28, 0x00, 0x7C
.byte 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00, 0x76
.byte 0xDC, 0x00, 0x7C, 0xC6, 0xC6, 0x7C, 0x00, 0x00
.byte 0x00, 0x00, 0x6C, 0x00, 0x7C, 0xC6, 0xC6, 0xC6
.byte 0x7C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6C
.byte 0x38, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3D, 0x67, 0x6E, 0x7E, 0x76, 0xE6, 0xBC, 0x00
.byte 0x00, 0x00, 0x00, 0x60, 0x30, 0x00, 0xC6, 0xC6
.byte 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x18
.byte 0x00, 0xC6, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00
.byte 0x00, 0x10, 0x28, 0x00, 0xC6, 0xC6, 0xC6, 0x7C
.byte 0x00, 0x00, 0x00, 0x00, 0x6C, 0x00, 0xC6, 0xC6
.byte 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00, 0x18
.byte 0x30, 0xCC, 0xCC, 0x78, 0x30, 0x78, 0x00, 0x00
.byte 0x00, 0x00, 0xF0, 0x60, 0x7C, 0x66, 0x7C, 0x60
.byte 0xF0, 0x00, 0x00, 0x00, 0x00, 0x78, 0xCC, 0xCC
.byte 0xD8, 0xCC, 0xC6, 0xCC, 0x00, 0x00, 0x00, 0x00
.byte 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55
.byte 0xAA, 0x00, 0x00, 0x30, 0x00, 0x30, 0x30, 0x78
.byte 0x78, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10
.byte 0x7C, 0xD6, 0xD0, 0xD6, 0x7C, 0x10, 0x00, 0x00
.byte 0x00, 0x38, 0x6C, 0x64, 0xF0, 0x60, 0x66, 0xFC
.byte 0x00, 0x00, 0x00, 0x00, 0x1E, 0x31, 0xFC, 0x60
.byte 0xF8, 0x33, 0x1E, 0x00, 0x00, 0x00, 0x00, 0xCC
.byte 0xCC, 0x78, 0xFC, 0x30, 0xFC, 0x30, 0x00, 0x00
.byte 0x00, 0x00, 0x28, 0x10, 0x7C, 0xC0, 0x78, 0x0C
.byte 0xF8, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x61, 0x3C
.byte 0x66, 0x66, 0x3C, 0x86, 0x7C, 0x00, 0x00, 0x00
.byte 0x28, 0x10, 0x7C, 0xC0, 0x78, 0x0C, 0xF8, 0x00
.byte 0x00, 0x00, 0x00, 0x3C, 0x42, 0x99, 0xA1, 0xA1
.byte 0x99, 0x42, 0x3C, 0x00, 0x00, 0x00, 0x3C, 0x6C
.byte 0x6C, 0x3E, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x33, 0x66, 0xCC, 0x66, 0x33, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC
.byte 0x0C, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x66, 0x3C, 0x66, 0x66, 0x3C, 0x66, 0x00, 0x00
.byte 0x00, 0x00, 0x3C, 0x42, 0xB9, 0xA5, 0xB9, 0xA5
.byte 0x42, 0x3C, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x38, 0x6C, 0x6C, 0x38, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x30, 0x30, 0xFC, 0x30, 0x30
.byte 0x00, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x38, 0x6C
.byte 0x18, 0x30, 0x7C, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x78, 0x0C, 0x38, 0x0C, 0x78, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x50, 0x20, 0xFC, 0x98
.byte 0x30, 0x64, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x66, 0x66, 0x66, 0x66, 0x7B, 0xC0, 0x00
.byte 0x00, 0x00, 0x7F, 0xDB, 0xDB, 0x7B, 0x1B, 0x1B
.byte 0x1B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x50, 0x20, 0xFC, 0x98, 0x30, 0x64, 0xFC, 0x00
.byte 0x00, 0x00, 0x00, 0x18, 0x38, 0x18, 0x18, 0x3C
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x6C
.byte 0x6C, 0x38, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xCC, 0x66, 0x33, 0x66, 0xCC, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x7F, 0xCD, 0xCC, 0xCF
.byte 0xCC, 0xCD, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x7E, 0xDB, 0xDE, 0xD8, 0x7E, 0x00, 0x00
.byte 0x00, 0x00, 0xCC, 0x00, 0xCC, 0xCC, 0x78, 0x30
.byte 0x78, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x30
.byte 0x60, 0xC0, 0xCC, 0x78, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x1F, 0x18, 0x18, 0x18, 0x18, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x18, 0x18
.byte 0x18, 0x18, 0x00, 0x00, 0x18, 0x18, 0x18, 0x18
.byte 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18
.byte 0x18, 0x18, 0x18, 0xF8, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0x1F, 0x18
.byte 0x18, 0x18, 0x18, 0x00, 0x00, 0x18, 0x18, 0x18
.byte 0x18, 0xF8, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0xFF, 0x18, 0x18, 0x18
.byte 0x18, 0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18
.byte 0x18, 0x18, 0xFF, 0x18, 0x18, 0x18, 0x18, 0x00
.byte 0x00, 0x88, 0x22, 0x88, 0x22, 0x88, 0x22, 0x88
.byte 0x22, 0x88, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x36, 0x36, 0x36, 0x36, 0x36
.byte 0x36, 0x36, 0x36, 0x36, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x3F, 0x30, 0x37, 0x36, 0x36, 0x36, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0xFE, 0x06, 0xF6, 0x36
.byte 0x36, 0x36, 0x00, 0x00, 0x36, 0x36, 0x36, 0x37
.byte 0x30, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36
.byte 0x36, 0x36, 0xF6, 0x06, 0xFE, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x36, 0x36, 0x36, 0x37, 0x30, 0x37
.byte 0x36, 0x36, 0x36, 0x00, 0x00, 0x36, 0x36, 0x36
.byte 0xF6, 0x06, 0xF6, 0x36, 0x36, 0x36, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0xFF, 0x00, 0xF7, 0x36, 0x36
.byte 0x36, 0x00, 0x00, 0x36, 0x36, 0x36, 0xF7, 0x00
.byte 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0x36
.byte 0x36, 0xF7, 0x00, 0xF7, 0x36, 0x36, 0x36, 0x00
.byte 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0xFF, 0xFF, 0x00, 0x00, 0x18, 0x3C, 0x7E, 0x18
.byte 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x18
.byte 0x18, 0x18, 0x18, 0x7E, 0x3C, 0x18, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x18, 0x30, 0x7F, 0x30, 0x18
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x0C
.byte 0xFE, 0x0C, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x60, 0x30, 0x78, 0x0C, 0x7C, 0xCC, 0x76, 0x00
.byte 0x00, 0x00, 0x00, 0x18, 0x30, 0x78, 0x0C, 0x7C
.byte 0xCC, 0x76, 0x00, 0x00, 0x00, 0x00, 0x10, 0x28
.byte 0x78, 0x0C, 0x7C, 0xCC, 0x76, 0x00, 0x00, 0x00
.byte 0x00, 0x76, 0xDC, 0x78, 0x0C, 0x7C, 0xCC, 0x76
.byte 0x00, 0x00, 0x00, 0x00, 0x6C, 0x00, 0x78, 0x0C
.byte 0x7C, 0xCC, 0x76, 0x00, 0x00, 0x00, 0x00, 0x38
.byte 0x6C, 0x38, 0x0C, 0x7C, 0xCC, 0x76, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x7E, 0x1B, 0x7E, 0xD8
.byte 0x6E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xCC
.byte 0xC0, 0xCC, 0x78, 0x0C, 0x78, 0x00, 0x00, 0x00
.byte 0x60, 0x30, 0x78, 0xCC, 0xFC, 0xC0, 0x78, 0x00
.byte 0x00, 0x00, 0x00, 0x18, 0x30, 0x78, 0xCC, 0xFC
.byte 0xC0, 0x78, 0x00, 0x00, 0x00, 0x00, 0x10, 0x28
.byte 0x78, 0xCC, 0xFC, 0xC0, 0x78, 0x00, 0x00, 0x00
.byte 0x00, 0x6C, 0x00, 0x78, 0xCC, 0xFC, 0xC0, 0x78
.byte 0x00, 0x00, 0x00, 0x00, 0x60, 0x30, 0x00, 0x70
.byte 0x30, 0x30, 0x78, 0x00, 0x00, 0x00, 0x00, 0x18
.byte 0x30, 0x00, 0x70, 0x30, 0x30, 0x78, 0x00, 0x00
.byte 0x00, 0x00, 0x20, 0x50, 0x00, 0x70, 0x30, 0x30
.byte 0x78, 0x00, 0x00, 0x00, 0x00, 0xD8, 0x00, 0x70
.byte 0x30, 0x30, 0x30, 0x78, 0x00, 0x00, 0x00, 0x00
.byte 0x34, 0x18, 0x2C, 0x7C, 0xCC, 0xCC, 0x78, 0x00
.byte 0x00, 0x00, 0x00, 0x76, 0xDC, 0x00, 0xDC, 0x66
.byte 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x60, 0x30
.byte 0x00, 0x7C, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00
.byte 0x00, 0x0C, 0x18, 0x00, 0x7C, 0xC6, 0xC6, 0x7C
.byte 0x00, 0x00, 0x00, 0x00, 0x10, 0x28, 0x00, 0x7C
.byte 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00, 0x76
.byte 0xDC, 0x00, 0x7C, 0xC6, 0xC6, 0x7C, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x6C, 0x00, 0x7C, 0xC6, 0xC6
.byte 0x7C, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x00
.byte 0xFC, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x3D, 0x66, 0x6E, 0x76, 0x66, 0xBC, 0x00
.byte 0x00, 0x00, 0x00, 0x60, 0x30, 0x00, 0xCC, 0xCC
.byte 0xCC, 0x76, 0x00, 0x00, 0x00, 0x00, 0x18, 0x30
.byte 0x00, 0xCC, 0xCC, 0xCC, 0x76, 0x00, 0x00, 0x00
.byte 0x00, 0x20, 0x50, 0x00, 0xCC, 0xCC, 0xCC, 0x76
.byte 0x00, 0x00, 0x00, 0x00, 0xCC, 0x00, 0xCC, 0xCC
.byte 0xCC, 0xCC, 0x76, 0x00, 0x00, 0x00, 0x00, 0x18
.byte 0x30, 0xCC, 0xCC, 0xCC, 0x7C, 0x0C, 0xF8, 0x00
.byte 0x00, 0x00, 0xE0, 0x60, 0x7C, 0x66, 0x66, 0x7C
.byte 0x60, 0xF0, 0x00, 0x00, 0x00, 0xCC, 0x00, 0xCC
.byte 0xCC, 0xCC, 0x7C, 0x0C, 0xF8, 0x00, 0x00, 0x00

187
Source/Fonts/font8x16c.asm

@ -0,0 +1,187 @@
font8x16c:
.byte 0x0F, 0x00, 0xF8, 0x38, 0x4E, 0x7E, 0x81, 0xA5
.byte 0x81, 0x81, 0xBD, 0x99, 0x2C, 0x7E, 0x87, 0xFC
.byte 0x7C, 0xFE, 0xFE, 0xD6, 0xFE, 0xFE, 0xBA, 0xC6
.byte 0xFE, 0x7C, 0xF8, 0x19, 0x00, 0x6C, 0xEE, 0xFE
.byte 0x20, 0x35, 0x38, 0x10, 0x80, 0x3D, 0x10, 0x38
.byte 0x7C, 0x98, 0x26, 0x00, 0x2C, 0x40, 0xDC, 0x08
.byte 0x6C, 0x07, 0x00, 0x49, 0x7C, 0xCF, 0x22, 0x8F
.byte 0x06, 0xF0, 0x18, 0x3C, 0x0C, 0x18, 0xAF, 0x0A
.byte 0xFF, 0xF0, 0xE7, 0xC3, 0xF3, 0xE7, 0xFF, 0x04
.byte 0x0F, 0x08, 0x66, 0x45, 0xDF, 0x04, 0x0F, 0x08
.byte 0x99, 0x35, 0xC3, 0xE7, 0x03, 0x19, 0x1E, 0x0E
.byte 0x1E, 0x36, 0x78, 0xCC, 0xFF, 0x4C, 0x78, 0x44
.byte 0x44, 0xD3, 0x10, 0x7E, 0x18, 0xEB, 0x00, 0xF9
.byte 0x10, 0x1E, 0x1A, 0x1E, 0x18, 0x3C, 0x78, 0xF8
.byte 0x70, 0x0F, 0x30, 0x3E, 0x36, 0x5C, 0x41, 0x36
.byte 0x76, 0xF6, 0x66, 0x0E, 0x1E, 0x0C, 0x83, 0x51
.byte 0xDB, 0x7E, 0xA0, 0x5D, 0x3C, 0x7E, 0xDB, 0x18
.byte 0x30, 0xFD, 0x66, 0x80, 0xE0, 0xF0, 0xFC, 0xFE
.byte 0xFC, 0xF0, 0xE0, 0x80, 0x5E, 0x02, 0x0E, 0x3E
.byte 0x7E, 0xFE, 0x7E, 0x3E, 0x0E, 0x02, 0x53, 0x4A
.byte 0x7E, 0xB0, 0x4E, 0x7E, 0x4E, 0x0C, 0x66, 0xFC
.byte 0x21, 0x24, 0x8F, 0x11, 0x7F, 0xDB, 0xF1, 0x7B
.byte 0x1B, 0x65, 0xD0, 0x38, 0x5C, 0xC6, 0xC6, 0x60
.byte 0x7C, 0xF6, 0xDE, 0x7C, 0x0C, 0x6F, 0x7C, 0xAA
.byte 0x13, 0x62, 0xCD, 0x47, 0xB0, 0x49, 0x7E, 0x4D
.byte 0x47, 0xA0, 0x40, 0x47, 0x40, 0x01, 0x9F, 0x46
.byte 0x90, 0x06, 0xFF, 0x31, 0x0C, 0x0E, 0xFF, 0x0E
.byte 0x0C, 0x00, 0xFF, 0x32, 0x30, 0x70, 0xFE, 0x70
.byte 0x30, 0x00, 0xE8, 0xC0, 0x2F, 0xFE, 0x02, 0x7F
.byte 0x23, 0x24, 0x66, 0xFF, 0x66, 0x24, 0x70, 0x63
.byte 0x7D, 0x47, 0x75, 0x1F, 0x08, 0x7C, 0x61, 0x5C
.byte 0x67, 0x05, 0x54, 0x67, 0x63, 0x69, 0x3C, 0xB3
.byte 0x65, 0xB0, 0x09, 0x36, 0xF0, 0x2F, 0x14, 0x3F
.byte 0x08, 0x6C, 0x0B, 0xFE, 0xE7, 0x4E, 0x6C, 0x50
.byte 0xFD, 0x7C, 0xC6, 0xC0, 0x78, 0x3C, 0x06, 0xC6
.byte 0x7C, 0x18, 0x18, 0xFC, 0x43, 0x62, 0x66, 0x0C
.byte 0x18, 0x30, 0x66, 0xC6, 0x79, 0x38, 0x6C, 0x38
.byte 0x30, 0x76, 0x7E, 0x50, 0x4C, 0x76, 0x34, 0x28
.byte 0x0C, 0x24, 0x47, 0x8F, 0x41, 0xD5, 0x03, 0xFB
.byte 0x4D, 0x18, 0x1E, 0x01, 0x02, 0xF4, 0x01, 0x47
.byte 0x8D, 0x13, 0x50, 0x38, 0xFE, 0xBA, 0x47, 0x5D
.byte 0x62, 0x11, 0x27, 0x81, 0x47, 0xA8, 0xAA, 0x4F
.byte 0xFE, 0x28, 0x07, 0x00, 0x51, 0x02, 0x06, 0x61
.byte 0x7F, 0x00, 0x60, 0xC0, 0x80, 0x50, 0x7F, 0x10
.byte 0xCE, 0xDE, 0xF6, 0xE6, 0x52, 0x76, 0x18, 0x78
.byte 0x7E, 0x27, 0x00, 0x43, 0xD0, 0xF6, 0xC6, 0xFE
.byte 0xFE, 0x37, 0x06, 0x06, 0x3C, 0x06, 0x06, 0x06
.byte 0x7D, 0x0C, 0x1C, 0x3C, 0x6C, 0xCC, 0xCC, 0xFE
.byte 0x0C, 0x0C, 0x1E, 0x16, 0x61, 0x73, 0x2B, 0xFC
.byte 0x08, 0x46, 0xA0, 0x21, 0x08, 0xC6, 0xF8, 0x26
.byte 0x4B, 0xFE, 0xB1, 0x02, 0xF0, 0x25, 0x02, 0x20
.byte 0x27, 0x2A, 0x23, 0x4D, 0x7E, 0xA0, 0x46, 0x24
.byte 0x23, 0xE8, 0x27, 0x63, 0x66, 0xB8, 0x43, 0x33
.byte 0x6C, 0x60, 0xC0, 0x46, 0x01, 0x67, 0xFF, 0x02
.byte 0x20, 0x43, 0x0E, 0x47, 0x30, 0x00, 0x9F, 0x65
.byte 0x20, 0x46, 0x90, 0x08, 0xDE, 0x7E, 0x0F, 0xDC
.byte 0xC0, 0x7E, 0x50, 0x41, 0x6F, 0xEA, 0xFE, 0x84
.byte 0x10, 0xE9, 0xFC, 0x8A, 0x7C, 0xFF, 0x0B, 0xAE
.byte 0xFC, 0x90, 0x11, 0xC2, 0xC0, 0xF0, 0x3C, 0xC2
.byte 0x66, 0x3C, 0x0F, 0xB4, 0xF8, 0x6C, 0xEE, 0x75
.byte 0x6C, 0xF8, 0x85, 0x3F, 0x68, 0x66, 0x60, 0x64
.byte 0x7C, 0x64, 0x60, 0x60, 0x66, 0xFE, 0x50, 0x57
.byte 0x60, 0xF0, 0x90, 0x61, 0xDE, 0x6F, 0xCE, 0xF0
.byte 0x0F, 0x4D, 0xC6, 0x91, 0x46, 0x90, 0x15, 0x3C
.byte 0x18, 0x2F, 0x3C, 0x84, 0x5E, 0x03, 0xD8, 0xD8
.byte 0x70, 0xD0, 0xFE, 0xCC, 0xD8, 0xF0, 0xF0, 0xD8
.byte 0xCC, 0x13, 0xF0, 0x60, 0xF0, 0x48, 0x62, 0x90
.byte 0x26, 0xFE, 0x3F, 0xEE, 0xEE, 0xFE, 0xD6, 0xD6
.byte 0xD6, 0xA0, 0x71, 0xF0, 0xE6, 0xE6, 0x49, 0xCE
.byte 0x8F, 0x67, 0xA0, 0x20, 0x65, 0x90, 0x46, 0x20
.byte 0x52, 0x66, 0x7C, 0x60, 0x27, 0x41, 0x40, 0xBE
.byte 0x57, 0x7C, 0x06, 0x00, 0x49, 0x78, 0x1B, 0x6F
.byte 0xE6, 0x30, 0x11, 0x77, 0x70, 0x1C, 0x20, 0x57
.byte 0x7E, 0x5A, 0x50, 0x55, 0x4F, 0xC6, 0xA0, 0x26
.byte 0x8E, 0xAE, 0x6C, 0xD0, 0x43, 0xA4, 0x5E, 0x02
.byte 0xD6, 0xFE, 0xEE, 0x60, 0x23, 0x63, 0x8B, 0x87
.byte 0xE2, 0xA0, 0x4A, 0x3C, 0x00, 0x86, 0xFF, 0xD0
.byte 0xE9, 0x86, 0x97, 0x60, 0xC2, 0x80, 0x0F, 0x0D
.byte 0x60, 0x6E, 0x7C, 0x1D, 0xF3, 0x80, 0xC0, 0x2D
.byte 0x02, 0x0F, 0x0D, 0x0C, 0x24, 0x0F, 0x69, 0x10
.byte 0x30, 0x0F, 0x00, 0xEE, 0x8C, 0xFF, 0x91, 0x2F
.byte 0x0C, 0x47, 0x48, 0x78, 0xC4, 0xA0, 0xF1, 0x50
.byte 0xEC, 0xDC, 0x51, 0x00, 0xE0, 0x96, 0x6E, 0x66
.byte 0x00, 0x67, 0xFD, 0x4E, 0xC0, 0x20, 0x51, 0x1C
.byte 0x0C, 0xD2, 0x02, 0xF0, 0x2F, 0x7E, 0x21, 0xF7
.byte 0xC6, 0xFE, 0xA8, 0x36, 0xF0, 0x20, 0xE9, 0xFC
.byte 0x37, 0x30, 0x78, 0x04, 0x69, 0x76, 0x02, 0x71
.byte 0xCE, 0x76, 0xBE, 0x47, 0xA0, 0xAF, 0xE6, 0xF0
.byte 0x58, 0x6D, 0x38, 0x00, 0x86, 0xFE, 0x03, 0x4B
.byte 0x1C, 0x30, 0xA1, 0x0E, 0x45, 0x70, 0x60, 0x6F
.byte 0xE9, 0x6C, 0x46, 0xD0, 0x06, 0xFE, 0x8F, 0x1C
.byte 0x5D, 0x1E, 0x61, 0x00, 0xEB, 0xC6, 0xA4, 0x4D
.byte 0xEC, 0xDC, 0x47, 0x60, 0x10, 0x66, 0x00, 0x26
.byte 0x85, 0xF0, 0xFD, 0x4E, 0xF0, 0x60, 0x42, 0x30
.byte 0x61, 0xB8, 0x2F, 0x1E, 0x02, 0x20, 0x25, 0x11
.byte 0x46, 0x00, 0xF6, 0x7C, 0x06, 0x4D, 0x30, 0x21
.byte 0x4F, 0x36, 0x80, 0x6B, 0xCC, 0xF0, 0xEF, 0x76
.byte 0x08, 0x66, 0x00, 0x26, 0x84, 0xF0, 0xFE, 0x2F
.byte 0x6C, 0x2F, 0xAA, 0x6C, 0x8A, 0x27, 0x02, 0x65
.byte 0xE0, 0x86, 0xEF, 0x32, 0x82, 0xFE, 0x54, 0x62
.byte 0xFE, 0x10, 0xE9, 0x0E, 0xEA, 0x70, 0x4F, 0x0E
.byte 0x00, 0x10, 0x64, 0xFB, 0x24, 0xE9, 0x70, 0xEA
.byte 0x0E, 0x6C, 0x70, 0x09, 0xF6, 0x76, 0xDC, 0xA7
.byte 0xD3, 0x5E, 0xA1, 0xEF, 0x3B, 0x65, 0x33, 0xF2
.byte 0x3C, 0x66, 0x81, 0x8E, 0x60, 0x9F, 0x4B, 0x38
.byte 0x53, 0x01, 0xEE, 0x44, 0x7F, 0xA6, 0x61, 0x67
.byte 0x30, 0x4F, 0x60, 0x39, 0x8F, 0xCC, 0xE0, 0x58
.byte 0x00, 0x26, 0x8E, 0x86, 0x92, 0x26, 0x8E, 0xA6
.byte 0x01, 0x26, 0x0F, 0x87, 0xC1, 0x3D, 0x81, 0xD2
.byte 0x28, 0x0C, 0x38, 0x44, 0xB0, 0x46, 0xA0, 0x46
.byte 0xB0, 0x26, 0x86, 0xD0, 0xF1, 0x27, 0x5F, 0xE8
.byte 0x66, 0x86, 0xE0, 0x85, 0xC8, 0xD3, 0x26, 0x46
.byte 0xD0, 0x27, 0x04, 0x8F, 0xC6, 0xE1, 0x2F, 0x45
.byte 0x71, 0x01, 0x78, 0x24, 0x46, 0x21, 0xA8, 0xFE
.byte 0xF4, 0xB0, 0xE9, 0x7C, 0x6E, 0xFE, 0x40, 0xFD
.byte 0x66, 0xDB, 0x1B, 0x7F, 0xD8, 0xD8, 0xDF, 0x11
.byte 0x7E, 0xD8, 0xFD, 0x09, 0xFE, 0x4E, 0xDE, 0x00
.byte 0x87, 0xF5, 0xC0, 0x36, 0xC6, 0x00, 0x88, 0x46
.byte 0x50, 0x26, 0x46, 0xD0, 0x66, 0xB0, 0x66, 0xE0
.byte 0x27, 0x84, 0x8A, 0x18, 0xE4, 0x0F, 0x47, 0x50
.byte 0x8E, 0x7C, 0xE8, 0x60, 0x25, 0xEE, 0xC6, 0x66
.byte 0x10, 0x65, 0xC0, 0x6D, 0x18, 0xA0, 0x40, 0x42
.byte 0xE9, 0xF0, 0x7C, 0x0C, 0x66, 0xF6, 0x6C, 0xE1
.byte 0xA5, 0xF1, 0xAE, 0x3C, 0xC8, 0xF0, 0xF8, 0x3E
.byte 0x63, 0x63, 0x30, 0x1C, 0x06, 0x63, 0x63, 0x3E
.byte 0x00, 0x1C, 0x06, 0x68, 0x32, 0x38, 0x0E, 0x66
.byte 0x20, 0x66, 0x60, 0x25, 0x88, 0x66, 0xA0, 0x26
.byte 0x47, 0x20, 0x4D, 0x81, 0xB8, 0x84, 0xFF, 0x20
.byte 0xED, 0xDC, 0xB6, 0x76, 0xDC, 0xA0, 0x06, 0x8E
.byte 0xB2, 0xC6, 0xC6, 0x8F, 0xA5, 0xE2, 0x60, 0xF8
.byte 0x21, 0x1E, 0x00, 0x1E, 0x33, 0xFB, 0x1D, 0x67
.byte 0x63, 0x33, 0x1D, 0x48, 0x42, 0xA9, 0x49, 0x3B
.byte 0xD3, 0x96, 0x3E, 0x06, 0xC0, 0xB2, 0x30, 0x30
.byte 0xFB, 0xBD, 0x6E, 0x60, 0xB0, 0x65, 0x8B, 0x41
.byte 0x2E, 0x87, 0x6B, 0x4D, 0xA1, 0x8F, 0x04, 0xAE
.byte 0xA2, 0x16, 0x49, 0x6C, 0x7B, 0x50, 0xDC, 0x36
.byte 0x66, 0x2F, 0x3E, 0x80, 0x5C, 0x2F, 0x36, 0x6E
.byte 0xDE, 0x36, 0x7E, 0xDD, 0xA3, 0xF2, 0x8E, 0x3C
.byte 0xBC, 0x9E, 0x84, 0x3C, 0xFF, 0x12, 0x6C, 0xD8
.byte 0x6C, 0x36, 0x21, 0x9F, 0xF4, 0x6C, 0xD8, 0x37
.byte 0x11, 0x44, 0x55, 0xF7, 0xAA, 0x55, 0xF7, 0xDD
.byte 0x77, 0x5F, 0x0F, 0x18, 0xD9, 0x2F, 0xF8, 0x58
.byte 0x27, 0x1F, 0x0C, 0x36, 0xF5, 0xF6, 0x36, 0x86
.byte 0xC8, 0x60, 0x27, 0x47, 0x47, 0xD0, 0xF0, 0xF6
.byte 0x06, 0x07, 0xFE, 0x44, 0xC2, 0x27, 0x06, 0xB7
.byte 0xF6, 0x06, 0xC0, 0x23, 0x25, 0x68, 0x27, 0x0B
.byte 0x46, 0x70, 0xA7, 0x1B, 0x66, 0x4F, 0xF8, 0x38
.byte 0x2E, 0x1F, 0x38, 0x25, 0x4F, 0xFF, 0xD0, 0x67
.byte 0xEF, 0xFF, 0x06, 0xB0, 0x26, 0x47, 0xC0, 0x76
.byte 0x47, 0xD2, 0x6F, 0x1F, 0xF0, 0x69, 0xEC, 0x37
.byte 0x26, 0x57, 0x30, 0x3F, 0x62, 0x40, 0x37, 0x3F
.byte 0x30, 0x50, 0x4E, 0xF7, 0xA0, 0x47, 0x92, 0x4F
.byte 0xF7, 0xC0, 0x51, 0x47, 0xD0, 0x25, 0x04, 0x6F
.byte 0xFF, 0xF0, 0x4F, 0xF7, 0xD0, 0x16, 0x45, 0x22
.byte 0x6F, 0xFF, 0xD0, 0x47, 0xA0, 0x77, 0x4F, 0xFF
.byte 0x20, 0x67, 0x70, 0x60, 0x47, 0x50, 0x46, 0x20
.byte 0x67, 0xA1, 0x48, 0x6F, 0x1F, 0xE0, 0x6F, 0x3F
.byte 0x30, 0x66, 0xEE, 0xFF, 0x65, 0xD2, 0x67, 0xA0
.byte 0x67, 0x50, 0x8F, 0xEE, 0x1F, 0x0F, 0xFF, 0x64
.byte 0x46, 0x4D, 0x26, 0x0F, 0xF0, 0xF6, 0xEF, 0x0F
.byte 0x65, 0x47, 0xC8, 0x86, 0xDE, 0xDE, 0x82, 0x1D
.byte 0xA6, 0xEA, 0x30, 0xA1, 0xA4, 0x8B, 0xD8, 0xBC
.byte 0x50, 0xED, 0xCC, 0x95, 0x66, 0x62, 0x8E, 0x87
.byte 0xA1, 0x33, 0x0B, 0x6C, 0xFC, 0x86, 0x60, 0xFB
.byte 0x3E, 0x62, 0x30, 0x18, 0x18, 0x30, 0x62, 0xA6
.byte 0xCD, 0x49, 0xCC, 0xBB, 0xAE, 0x70, 0xD1, 0xA1
.byte 0xEC, 0x66, 0x57, 0xC0, 0x80, 0x8F, 0x67, 0xE4
.byte 0x2C, 0x89, 0xFE, 0x03, 0xA3, 0xCE, 0xFD, 0x45
.byte 0xC0, 0xA4, 0x61, 0x22, 0x78, 0x07, 0x19, 0x21
.byte 0x00, 0xFE, 0x8D, 0xEE, 0x30, 0x40, 0x77, 0x52
.byte 0x3C, 0x66, 0x61, 0x4F, 0x78, 0x90, 0x1A, 0xA1
.byte 0x7D, 0xAF, 0x7E, 0xB1, 0x22, 0xA9, 0x7C, 0xB7
.byte 0x30, 0x49, 0xF6, 0x90, 0x25, 0xB3, 0x1C, 0x30
.byte 0xEC, 0x20, 0xB7, 0x30, 0x1C, 0x00, 0x60, 0x4F
.byte 0xC6, 0x31, 0x04, 0xEA, 0x87, 0xA1, 0x7B, 0xEC
.byte 0x7E, 0xA5, 0xC2, 0x23, 0x8B, 0xA6, 0x91, 0x21
.byte 0x60, 0x23, 0x25, 0x7E, 0x97, 0x1E, 0x1A, 0xED
.byte 0xA0, 0x9F, 0x58, 0x78, 0x30, 0xA1, 0x86, 0x09
.byte 0x7E, 0xD4, 0x67, 0x8E, 0x02, 0xE0, 0x67, 0x90
.byte 0x8F, 0x78, 0xAA, 0x53, 0x07, 0x77, 0x87, 0xF6
.byte 0xF5, 0x60, 0x50, 0x34, 0x78, 0x38, 0x61, 0x6F
.byte 0xD8, 0x74, 0x43, 0x5F, 0xF1, 0x70, 0xD8, 0xAF
.byte 0xF8, 0x95, 0x2D, 0x03, 0xFB, 0xEF, 0x00, 0xE7
.byte 0xF0, 0xE8

BIN
Source/Fonts/font8x16c.bin

Binary file not shown.

515
Source/Fonts/font8x16u.asm

@ -0,0 +1,515 @@
font8x16u:
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7E, 0x81, 0xA5, 0x81, 0x81, 0xBD
.byte 0x99, 0x81, 0x81, 0x7E, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0xFE, 0xFE, 0xD6, 0xFE, 0xFE
.byte 0xBA, 0xC6, 0xFE, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x6C, 0xEE, 0xFE, 0xFE, 0xFE
.byte 0xFE, 0x7C, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x10, 0x38, 0x7C, 0xFE, 0x7C
.byte 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x10, 0x38, 0x38, 0x10, 0x6C
.byte 0xEE, 0x6C, 0x10, 0x38, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x10, 0x38, 0x7C, 0x7C, 0xFE, 0xFE
.byte 0xFE, 0x6C, 0x10, 0x38, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x3C, 0x3C
.byte 0x3C, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xC3, 0xC3
.byte 0xC3, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x18, 0x3C, 0x66, 0x66
.byte 0x66, 0x3C, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xC3, 0x99, 0x99
.byte 0x99, 0xC3, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x1E, 0x0E, 0x1E, 0x36, 0x78, 0xCC
.byte 0xCC, 0xCC, 0xCC, 0x78, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x3C, 0x66, 0x66, 0x66, 0x3C, 0x18
.byte 0x7E, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x1E, 0x1A, 0x1E, 0x18, 0x18, 0x18
.byte 0x18, 0x78, 0xF8, 0x70, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x3E, 0x36, 0x3E, 0x36, 0x36, 0x76
.byte 0xF6, 0x66, 0x0E, 0x1E, 0x0C, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0xDB, 0x7E, 0x3C, 0x66, 0x66
.byte 0x3C, 0x7E, 0xDB, 0x18, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x80, 0xE0, 0xF0, 0xFC, 0xFE
.byte 0xFC, 0xF0, 0xE0, 0x80, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x02, 0x0E, 0x3E, 0x7E, 0xFE
.byte 0x7E, 0x3E, 0x0E, 0x02, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0x3C, 0x7E, 0x18, 0x18, 0x18
.byte 0x18, 0x7E, 0x3C, 0x18, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66
.byte 0x66, 0x00, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7F, 0xDB, 0xDB, 0xDB, 0xDB, 0x7B
.byte 0x1B, 0x1B, 0x1B, 0x1B, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0xC6, 0xC6, 0x60, 0x7C, 0xF6
.byte 0xDE, 0x7C, 0x0C, 0xC6, 0xC6, 0x7C, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFE, 0xFE, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0x3C, 0x7E, 0x18, 0x18, 0x18
.byte 0x7E, 0x3C, 0x18, 0x7E, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0x3C, 0x7E, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x7E, 0x3C, 0x18, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x0E, 0xFF
.byte 0x0E, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x70, 0xFE
.byte 0x70, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xC0
.byte 0xC0, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x66, 0xFF
.byte 0x66, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x10, 0x38, 0x38, 0x38, 0x7C
.byte 0x7C, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0xFE, 0xFE, 0x7C, 0x7C, 0x7C
.byte 0x38, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0x3C, 0x3C, 0x3C, 0x3C, 0x18
.byte 0x18, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x36, 0x36, 0x36, 0x36, 0x14, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x6C, 0x6C, 0x6C, 0xFE, 0x6C, 0x6C
.byte 0xFE, 0x6C, 0x6C, 0x6C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0x18, 0x7C, 0xC6, 0xC0, 0x78
.byte 0x3C, 0x06, 0xC6, 0x7C, 0x18, 0x18, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x66, 0x0C
.byte 0x18, 0x30, 0x66, 0xC6, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x38, 0x6C, 0x38, 0x30, 0x76, 0x7E
.byte 0xCC, 0xCC, 0xCC, 0x76, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x0C, 0x0C, 0x0C, 0x18, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x0C, 0x18, 0x30, 0x30, 0x30, 0x30
.byte 0x30, 0x30, 0x18, 0x0C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x30, 0x18, 0x0C, 0x0C, 0x0C, 0x0C
.byte 0x0C, 0x0C, 0x18, 0x30, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x6C, 0x38, 0xFE
.byte 0x38, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x7E
.byte 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x0C, 0x0C, 0x0C, 0x18, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x06, 0x0C, 0x18
.byte 0x30, 0x60, 0xC0, 0x80, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0xC6, 0xC6, 0xCE, 0xDE, 0xF6
.byte 0xE6, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0x78, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x7E, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0xC6, 0xC6, 0x06, 0x0C, 0x18
.byte 0x30, 0x60, 0xC6, 0xFE, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0xC6, 0x06, 0x06, 0x3C, 0x06
.byte 0x06, 0x06, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x0C, 0x1C, 0x3C, 0x6C, 0xCC, 0xCC
.byte 0xFE, 0x0C, 0x0C, 0x1E, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xFE, 0xC0, 0xC0, 0xC0, 0xFC, 0x06
.byte 0x06, 0x06, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0xC6, 0xC0, 0xC0, 0xFC, 0xC6
.byte 0xC6, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xFE, 0xC6, 0x06, 0x0C, 0x18, 0x30
.byte 0x30, 0x30, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0xC6, 0xC6, 0xC6, 0x7C, 0xC6
.byte 0xC6, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0xC6, 0xC6, 0xC6, 0xC6, 0x7E
.byte 0x06, 0x06, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x0C, 0x00
.byte 0x00, 0x0C, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x0C, 0x00
.byte 0x00, 0x0C, 0x0C, 0x0C, 0x18, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x0C, 0x18, 0x30, 0x60, 0xC0
.byte 0x60, 0x30, 0x18, 0x0C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x00
.byte 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x60, 0x30, 0x18, 0x0C, 0x06
.byte 0x0C, 0x18, 0x30, 0x60, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0xC6, 0xC6, 0x0C, 0x18, 0x18
.byte 0x18, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0xC6, 0xC6, 0xC6, 0xDE, 0xDE
.byte 0xDE, 0xDC, 0xC0, 0x7E, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x38, 0x6C, 0xC6, 0xC6, 0xC6, 0xFE
.byte 0xC6, 0xC6, 0xC6, 0xC6, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xFC, 0x66, 0x66, 0x66, 0x7C, 0x66
.byte 0x66, 0x66, 0x66, 0xFC, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x3C, 0x66, 0xC2, 0xC0, 0xC0, 0xC0
.byte 0xC0, 0xC2, 0x66, 0x3C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xF8, 0x6C, 0x66, 0x66, 0x66, 0x66
.byte 0x66, 0x66, 0x6C, 0xF8, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xFE, 0x66, 0x60, 0x64, 0x7C, 0x64
.byte 0x60, 0x60, 0x66, 0xFE, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xFE, 0x66, 0x60, 0x64, 0x7C, 0x64
.byte 0x60, 0x60, 0x60, 0xF0, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0xC6, 0xC6, 0xC0, 0xC0, 0xC0
.byte 0xCE, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xC6, 0xC6, 0xC6, 0xC6, 0xFE, 0xC6
.byte 0xC6, 0xC6, 0xC6, 0xC6, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x3C, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x3C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x3C, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0xD8, 0xD8, 0x70, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xC6, 0xC6, 0xCC, 0xD8, 0xF0, 0xF0
.byte 0xD8, 0xCC, 0xC6, 0xC6, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xF0, 0x60, 0x60, 0x60, 0x60, 0x60
.byte 0x60, 0x62, 0x66, 0xFE, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xC6, 0xC6, 0xEE, 0xEE, 0xFE, 0xD6
.byte 0xD6, 0xD6, 0xC6, 0xC6, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xC6, 0xC6, 0xE6, 0xE6, 0xF6, 0xDE
.byte 0xCE, 0xCE, 0xC6, 0xC6, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0xC6, 0xC6, 0xC6, 0xC6, 0xC6
.byte 0xC6, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xFC, 0x66, 0x66, 0x66, 0x66, 0x7C
.byte 0x60, 0x60, 0x60, 0xF0, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0xC6, 0xC6, 0xC6, 0xC6, 0xC6
.byte 0xC6, 0xD6, 0xD6, 0x7C, 0x06, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xFC, 0x66, 0x66, 0x66, 0x7C, 0x78
.byte 0x6C, 0x66, 0x66, 0xE6, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0xC6, 0xC0, 0xC0, 0x70, 0x1C
.byte 0x06, 0x06, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7E, 0x5A, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x3C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xC6, 0xC6, 0xC6, 0xC6, 0xC6, 0xC6
.byte 0xC6, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xC6, 0xC6, 0xC6, 0xC6, 0xC6, 0xC6
.byte 0xC6, 0x6C, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xC6, 0xC6, 0xC6, 0xD6, 0xD6, 0xD6
.byte 0xFE, 0xEE, 0xC6, 0xC6, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xC6, 0xC6, 0xC6, 0x6C, 0x38, 0x38
.byte 0x6C, 0xC6, 0xC6, 0xC6, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3C
.byte 0x18, 0x18, 0x18, 0x3C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xFE, 0xC6, 0x86, 0x0C, 0x18, 0x30
.byte 0x60, 0xC2, 0xC6, 0xFE, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0x60, 0x60, 0x60, 0x60, 0x60
.byte 0x60, 0x60, 0x60, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x80, 0xC0, 0x60, 0x30
.byte 0x18, 0x0C, 0x06, 0x02, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C
.byte 0x0C, 0x0C, 0x0C, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x10, 0x38, 0x6C, 0xC6, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00
.byte 0x00, 0x18, 0x18, 0x18, 0x0C, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x0C, 0x7C
.byte 0xCC, 0xCC, 0xDC, 0x76, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xE0, 0x60, 0x60, 0x7C, 0x66, 0x66
.byte 0x66, 0x66, 0x66, 0xFC, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x7C, 0xC6, 0xC0
.byte 0xC0, 0xC0, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x1C, 0x0C, 0x0C, 0x7C, 0xCC, 0xCC
.byte 0xCC, 0xCC, 0xCC, 0x7E, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x7C, 0xC6, 0xC6
.byte 0xFE, 0xC0, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x1C, 0x36, 0x30, 0x30, 0xFC, 0x30
.byte 0x30, 0x30, 0x30, 0x78, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xCE, 0xC6
.byte 0xC6, 0xCE, 0x76, 0x06, 0xC6, 0x7C, 0x00, 0x00
.byte 0x00, 0x00, 0xE0, 0x60, 0x60, 0x7C, 0x66, 0x66
.byte 0x66, 0x66, 0x66, 0xE6, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0x18, 0x00, 0x38, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x3C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x0C, 0x0C, 0x00, 0x1C, 0x0C, 0x0C
.byte 0x0C, 0x0C, 0x0C, 0xCC, 0xCC, 0x78, 0x00, 0x00
.byte 0x00, 0x00, 0xE0, 0x60, 0x60, 0x66, 0x66, 0x6C
.byte 0x78, 0x6C, 0x66, 0xE6, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x1C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x6C, 0xFE, 0xD6
.byte 0xD6, 0xC6, 0xC6, 0xC6, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xDC, 0x66, 0x66
.byte 0x66, 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x7C, 0xC6, 0xC6
.byte 0xC6, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xDC, 0x66, 0x66
.byte 0x66, 0x66, 0x7C, 0x60, 0x60, 0xF0, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xCC, 0xCC
.byte 0xCC, 0xCC, 0x7C, 0x0C, 0x0C, 0x1E, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xDC, 0x66, 0x60
.byte 0x60, 0x60, 0x60, 0xF0, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x7C, 0xC6, 0xC0
.byte 0x7C, 0x06, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x30, 0x30, 0x30, 0xFC, 0x30, 0x30
.byte 0x30, 0x30, 0x36, 0x1C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xCC, 0xCC, 0xCC
.byte 0xCC, 0xCC, 0xCC, 0x76, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6, 0xC6, 0xC6
.byte 0xC6, 0x6C, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6, 0xC6, 0xD6
.byte 0xD6, 0xD6, 0xFE, 0x6C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6, 0xC6, 0x6C
.byte 0x38, 0x6C, 0xC6, 0xC6, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6, 0xC6, 0xC6
.byte 0xC6, 0xCE, 0x76, 0x06, 0xC6, 0x7C, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x86, 0x0C
.byte 0x18, 0x30, 0x62, 0xFE, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x0E, 0x18, 0x18, 0x18, 0x70, 0x18
.byte 0x18, 0x18, 0x18, 0x0E, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0x00, 0x18
.byte 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x70, 0x18, 0x18, 0x18, 0x0E, 0x18
.byte 0x18, 0x18, 0x18, 0x70, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x76, 0xDC, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x38, 0x38
.byte 0x6C, 0x6C, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x3C, 0x66, 0xC0, 0xC0, 0xC0, 0xC6
.byte 0x66, 0x3C, 0x18, 0x0C, 0xCC, 0x38, 0x00, 0x00
.byte 0x00, 0x00, 0xC6, 0x00, 0x00, 0xC6, 0xC6, 0xC6
.byte 0xC6, 0xC6, 0xCE, 0x76, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x0C, 0x18, 0x30, 0x00, 0x7C, 0xC6, 0xC6
.byte 0xFE, 0xC0, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x30, 0x78, 0xCC, 0x00, 0x78, 0x0C, 0x7C
.byte 0xCC, 0xCC, 0xDC, 0x76, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xCC, 0x00, 0x00, 0x78, 0x0C, 0x7C
.byte 0xCC, 0xCC, 0xDC, 0x76, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x60, 0x30, 0x18, 0x00, 0x78, 0x0C, 0x7C
.byte 0xCC, 0xCC, 0xDC, 0x76, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x38, 0x6C, 0x38, 0x00, 0x78, 0x0C, 0x7C
.byte 0xCC, 0xCC, 0xDC, 0x76, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x7C, 0xC6, 0xC0, 0xC0
.byte 0xC6, 0x7C, 0x18, 0x0C, 0x6C, 0x38, 0x00, 0x00
.byte 0x00, 0x30, 0x78, 0xCC, 0x00, 0x7C, 0xC6, 0xC6
.byte 0xFE, 0xC0, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xCC, 0x00, 0x00, 0x7C, 0xC6, 0xC6
.byte 0xFE, 0xC0, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x30, 0x18, 0x0C, 0x00, 0x7C, 0xC6, 0xC6
.byte 0xFE, 0xC0, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x66, 0x00, 0x00, 0x38, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x3C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x18, 0x3C, 0x66, 0x00, 0x38, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x3C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x30, 0x18, 0x0C, 0x00, 0x38, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x3C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0xC6, 0x00, 0x38, 0x6C, 0xC6, 0xC6, 0xC6
.byte 0xFE, 0xC6, 0xC6, 0xC6, 0x00, 0x00, 0x00, 0x00
.byte 0x38, 0x6C, 0x38, 0x00, 0x38, 0x6C, 0xC6, 0xC6
.byte 0xFE, 0xC6, 0xC6, 0xC6, 0x00, 0x00, 0x00, 0x00
.byte 0x0C, 0x18, 0x30, 0x00, 0xFE, 0x60, 0x60, 0x7C
.byte 0x60, 0x60, 0x60, 0xFE, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x66, 0xDB, 0x1B, 0x7F
.byte 0xD8, 0xD8, 0xDF, 0x76, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7E, 0xD8, 0xD8, 0xD8, 0xD8, 0xFE
.byte 0xD8, 0xD8, 0xD8, 0xDE, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x30, 0x78, 0xCC, 0x00, 0x7C, 0xC6, 0xC6
.byte 0xC6, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xC6, 0x00, 0x00, 0x7C, 0xC6, 0xC6
.byte 0xC6, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x30, 0x18, 0x0C, 0x00, 0x7C, 0xC6, 0xC6
.byte 0xC6, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x30, 0x78, 0xCC, 0x00, 0xC6, 0xC6, 0xC6
.byte 0xC6, 0xC6, 0xCE, 0x76, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x60, 0x30, 0x18, 0x00, 0xC6, 0xC6, 0xC6
.byte 0xC6, 0xC6, 0xCE, 0x76, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x18, 0x00, 0x3C, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x3C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0xC6, 0x00, 0x7C, 0xC6, 0xC6, 0xC6, 0xC6
.byte 0xC6, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0xC6, 0x00, 0xC6, 0xC6, 0xC6, 0xC6, 0xC6
.byte 0xC6, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0x18, 0x7C, 0xC6, 0xC0, 0xC0
.byte 0xC6, 0x7C, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x38, 0x6C, 0x60, 0x60, 0xF0, 0x60, 0x60
.byte 0x60, 0x66, 0xF6, 0x6C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x18, 0x7E
.byte 0x18, 0x3C, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x3E, 0x63, 0x63, 0x30, 0x1C, 0x06
.byte 0x63, 0x63, 0x3E, 0x00, 0x1C, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x63, 0x38
.byte 0x0E, 0x63, 0x3E, 0x00, 0x1C, 0x00, 0x00, 0x00
.byte 0x00, 0x0C, 0x18, 0x30, 0x00, 0x78, 0x0C, 0x7C
.byte 0xCC, 0xCC, 0xDC, 0x76, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x0C, 0x18, 0x30, 0x00, 0x38, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x3C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x0C, 0x18, 0x30, 0x00, 0x7C, 0xC6, 0xC6
.byte 0xC6, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x18, 0x30, 0x60, 0x00, 0xCC, 0xCC, 0xCC
.byte 0xCC, 0xCC, 0xDC, 0x76, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x76, 0xDC, 0x00, 0xDC, 0x66, 0x66
.byte 0x66, 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x76, 0xDC, 0x00, 0xC6, 0xC6, 0xE6, 0xF6
.byte 0xDE, 0xCE, 0xC6, 0xC6, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x21, 0x1E, 0x00, 0x1E, 0x33, 0x60, 0x60
.byte 0x67, 0x63, 0x33, 0x1D, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x42, 0x3C, 0x00, 0x3B, 0x66, 0x66, 0x66
.byte 0x3E, 0x06, 0x66, 0x3C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x30, 0x30, 0x00, 0x30, 0x30, 0x30
.byte 0x60, 0xC6, 0xC6, 0x7C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7E
.byte 0x60, 0x60, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7E
.byte 0x06, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x60, 0x60, 0x62, 0x66, 0x6C, 0x18, 0x30
.byte 0x60, 0xDC, 0x36, 0x0C, 0x18, 0x3E, 0x00, 0x00
.byte 0x00, 0x60, 0x60, 0x62, 0x66, 0x6C, 0x18, 0x36
.byte 0x6E, 0xDE, 0x36, 0x7E, 0x06, 0x06, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0x18, 0x00, 0x18, 0x18, 0x3C
.byte 0x3C, 0x3C, 0x3C, 0x18, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0x6C, 0xD8
.byte 0x6C, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xD8, 0x6C, 0x36
.byte 0x6C, 0xD8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x11, 0x44, 0x11, 0x44, 0x11, 0x44, 0x11, 0x44
.byte 0x11, 0x44, 0x11, 0x44, 0x11, 0x44, 0x11, 0x44
.byte 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55
.byte 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55
.byte 0xDD, 0x77, 0xDD, 0x77, 0xDD, 0x77, 0xDD, 0x77
.byte 0xDD, 0x77, 0xDD, 0x77, 0xDD, 0x77, 0xDD, 0x77
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xF8
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0xF8, 0x18, 0xF8
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xF6
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x18, 0xF8
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0xF6, 0x06, 0xF6
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x06, 0xF6
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0xF6, 0x06, 0xFE
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xFE
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0xF8, 0x18, 0xF8
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1F
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1F
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xFF
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x1F, 0x18, 0x1F
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x37
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x37, 0x30, 0x3F
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x30, 0x37
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0xF7, 0x00, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0xF7
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x37, 0x30, 0x37
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0xF7, 0x00, 0xF7
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0xFF, 0x00, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0xFF
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x3F
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x1F, 0x18, 0x1F
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x18, 0x1F
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xFF
.byte 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0xFF, 0x18, 0xFF
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xF8
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0
.byte 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0
.byte 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F
.byte 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x76, 0xDC, 0xD8, 0xD8
.byte 0xD8, 0xD8, 0xDC, 0x76, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x78, 0xCC, 0xCC, 0xD8, 0xFC, 0xC6
.byte 0xC6, 0xC6, 0xC6, 0xCC, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xFE, 0x66, 0x62, 0x60, 0x60, 0x60
.byte 0x60, 0x60, 0x60, 0x60, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x6C, 0x6C
.byte 0x6C, 0x6C, 0x6C, 0x6C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xFE, 0xC6, 0x62, 0x30, 0x18, 0x18
.byte 0x30, 0x62, 0xC6, 0xFE, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x7E, 0xD8, 0xCC
.byte 0xCC, 0xCC, 0xD8, 0x70, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66
.byte 0x66, 0x7C, 0x60, 0xC0, 0x80, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xDC, 0x18
.byte 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xFE, 0x38, 0x38, 0x6C, 0xC6, 0xC6
.byte 0x6C, 0x38, 0x38, 0xFE, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x38, 0x6C, 0xC6, 0xC6, 0xFE
.byte 0xC6, 0xC6, 0x6C, 0x38, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x38, 0x6C, 0xC6, 0xC6, 0xC6, 0xC6
.byte 0x6C, 0x6C, 0x6C, 0xEE, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x3E, 0x60, 0x60, 0x3C, 0x66, 0xC6
.byte 0xC6, 0xC6, 0xCC, 0x78, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x7E, 0xDB, 0xDB
.byte 0xDB, 0x7E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x02, 0x06, 0x7C, 0xCE, 0xDE, 0xF6
.byte 0xF6, 0x7C, 0x60, 0xC0, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x1C, 0x30, 0x60, 0x60, 0x7C
.byte 0x60, 0x60, 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0xC6, 0xC6, 0xC6, 0xC6, 0xC6
.byte 0xC6, 0xC6, 0xC6, 0xC6, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE
.byte 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x7E, 0x18
.byte 0x18, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x30, 0x18, 0x0C, 0x06, 0x0C, 0x18
.byte 0x30, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x0C, 0x18, 0x30, 0x60, 0x30, 0x18
.byte 0x0C, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x0C, 0x1E, 0x1A, 0x18
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x58, 0x78, 0x30, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x7E
.byte 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xDC
.byte 0x00, 0x76, 0xDC, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x78, 0xCC, 0xCC, 0x78, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18
.byte 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x1F, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0xD8, 0xD8, 0x78, 0x38, 0x18, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xD8, 0x6C, 0x6C, 0x6C, 0x6C, 0x6C
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x70, 0xD8, 0x18, 0x30, 0x60, 0xF8
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x7E, 0x7E, 0x7E
.byte 0x7E, 0x7E, 0x7E, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00

133
Source/Fonts/font8x8c.asm

@ -0,0 +1,133 @@
font8x8c:
.byte 0x0F, 0x00, 0xF1, 0xF8, 0x0C, 0x3C, 0x3C, 0x30
.byte 0x21, 0xF0, 0xF0, 0xF0, 0x22, 0xF8, 0x20, 0x01
.byte 0x5C, 0x21, 0xF2, 0xF0, 0xF0, 0x05, 0xF2, 0x41
.byte 0xD2, 0xF2, 0xFF, 0xFF, 0xF8, 0x20, 0x70, 0xF8
.byte 0x70, 0x20, 0x1F, 0x5F, 0xF8, 0xD8, 0x88, 0x00
.byte 0x88, 0xD8, 0xF8, 0x00, 0x73, 0x59, 0x18, 0x18
.byte 0x20, 0x60, 0x90, 0x60, 0xD9, 0x59, 0x00, 0x50
.byte 0x20, 0x20, 0xD8, 0x27, 0x81, 0x18, 0xA8, 0x50
.byte 0x50, 0xD8, 0xE2, 0x4A, 0xA8, 0xA8, 0xF1, 0xFC
.byte 0xFC, 0x38, 0x10, 0x30, 0x70, 0xF0, 0x70, 0xDF
.byte 0x49, 0x00, 0xD3, 0x43, 0xCF, 0x09, 0x50, 0x00
.byte 0xD4, 0x40, 0xD8, 0xFC, 0x78, 0xA8, 0xA8, 0x68
.byte 0x28, 0x28, 0x00, 0x44, 0x53, 0x20, 0xCF, 0x44
.byte 0x60, 0x43, 0x58, 0x41, 0xD0, 0x03, 0x43, 0x50
.byte 0x42, 0x60, 0xFA, 0x20, 0x10, 0x18, 0xFC, 0x18
.byte 0x10, 0xF8, 0x60, 0xFC, 0x60, 0x07, 0xFF, 0x11
.byte 0x18, 0x1D, 0x30, 0x78, 0x78, 0x30, 0x20, 0x80
.byte 0xFB, 0xD8, 0xD8, 0x50, 0x1B, 0x0E, 0x48, 0x48
.byte 0xFC, 0x59, 0x32, 0x20, 0x78, 0xA0, 0x78, 0x24
.byte 0xF8, 0x17, 0x59, 0xC8, 0xD0, 0x20, 0x58, 0x98
.byte 0xD8, 0x00, 0x6F, 0x48, 0x50, 0x27, 0x69, 0x78
.byte 0xE8, 0x6B, 0x40, 0xC5, 0x4B, 0x10, 0x81, 0x41
.byte 0x48, 0x0A, 0x10, 0x28, 0x20, 0xC0, 0x69, 0xA8
.byte 0xE8, 0x51, 0xA8, 0x20, 0x80, 0xFD, 0x20, 0xF8
.byte 0x20, 0x45, 0xD3, 0x4F, 0x70, 0x93, 0x05, 0x61
.byte 0x99, 0x50, 0x04, 0x08, 0xC6, 0x11, 0x40, 0x80
.byte 0x10, 0x98, 0xA8, 0xF8, 0x51, 0xC8, 0x70, 0x51
.byte 0x42, 0xB7, 0x28, 0xF8, 0x08, 0x88, 0x3C, 0x33
.byte 0x60, 0x80, 0x59, 0x62, 0x70, 0x08, 0x88, 0x70
.byte 0x00, 0x30, 0x50, 0x90, 0xF8, 0xA5, 0x3A, 0x00
.byte 0xF8, 0x80, 0x80, 0xF0, 0x8C, 0x30, 0x38, 0x40
.byte 0xE9, 0x88, 0x53, 0xF8, 0x08, 0x86, 0x41, 0xD0
.byte 0x0A, 0x88, 0xEC, 0x22, 0x29, 0x78, 0x0E, 0x42
.byte 0xA4, 0x02, 0x25, 0xCA, 0x52, 0x60, 0x00, 0x9A
.byte 0x72, 0x40, 0x20, 0xEF, 0x72, 0xFC, 0x00, 0xC0
.byte 0x21, 0x42, 0x86, 0x42, 0x98, 0x49, 0x30, 0x52
.byte 0x21, 0xC0, 0x50, 0xB8, 0xB0, 0xA5, 0x69, 0x70
.byte 0x58, 0x18, 0x88, 0xF8, 0x88, 0xF0, 0x50, 0x00
.byte 0xF0, 0x07, 0xE8, 0x70, 0x29, 0xF0, 0x08, 0x80
.byte 0x48, 0x32, 0x88, 0x70, 0xEA, 0x48, 0xE8, 0xF8
.byte 0xE8, 0xE0, 0x2A, 0xF8, 0xC3, 0x29, 0xF0, 0x22
.byte 0x0E, 0x4A, 0xB8, 0x88, 0x20, 0x44, 0xC8, 0x54
.byte 0xF8, 0x20, 0x40, 0x11, 0x1C, 0x08, 0xF4, 0x22
.byte 0xF8, 0x2F, 0x90, 0xA0, 0xC0, 0xA0, 0x90, 0x09
.byte 0x80, 0x42, 0xC8, 0x5A, 0x18, 0x88, 0xD8, 0xA8
.byte 0x88, 0xA0, 0x51, 0x88, 0xC8, 0x10, 0x52, 0x98
.byte 0x88, 0x48, 0xEA, 0x88, 0x41, 0x33, 0x42, 0xB0
.byte 0x23, 0x20, 0x48, 0x32, 0x78, 0x04, 0x32, 0xA0
.byte 0x90, 0x0F, 0x41, 0x56, 0x42, 0x18, 0xF3, 0x20
.byte 0x20, 0x42, 0xD1, 0x45, 0x90, 0x81, 0xE5, 0x23
.byte 0x8C, 0x41, 0xB7, 0x29, 0x50, 0x00, 0x9C, 0xE8
.byte 0x50, 0x23, 0x01, 0xFF, 0x41, 0x58, 0x61, 0xA8
.byte 0x41, 0x90, 0x12, 0x78, 0x40, 0x48, 0x78, 0x0E
.byte 0xEA, 0x80, 0x81, 0xFF, 0xB8, 0x0A, 0x08, 0x4A
.byte 0x78, 0x18, 0x66, 0x0A, 0x63, 0xEC, 0x3D, 0x08
.byte 0x60, 0x60, 0x10, 0x28, 0xF0, 0x10, 0x52, 0x88
.byte 0x70, 0x50, 0x42, 0x6D, 0x02, 0x6A, 0x70, 0xE8
.byte 0x42, 0xCB, 0x61, 0xA5, 0x02, 0x88, 0x30, 0x88
.byte 0xF8, 0x82, 0xF2, 0xFF, 0x49, 0xE0, 0xA5, 0x41
.byte 0xCF, 0xFA, 0x38, 0x48, 0x48, 0x38, 0x08, 0xF0
.byte 0xB0, 0xC8, 0x41, 0xB4, 0xE8, 0x20, 0x29, 0x20
.byte 0x01, 0x40, 0x94, 0x68, 0x18, 0xFF, 0xFB, 0x48
.byte 0x30, 0x80, 0x80, 0x20, 0x5F, 0x04, 0x42, 0x90
.byte 0x48, 0x50, 0x07, 0x43, 0x84, 0x45, 0xD0, 0x63
.byte 0x45, 0x02, 0xC0, 0x61, 0x8E, 0x41, 0xAF, 0x4B
.byte 0x60, 0xB0, 0x2B, 0x08, 0xF1, 0x80, 0x80, 0x50
.byte 0x60, 0x80, 0x65, 0x6A, 0x60, 0x4E, 0x41, 0x90
.byte 0x43, 0xC0, 0x08, 0x90, 0xFC, 0x29, 0x68, 0x43
.byte 0x0D, 0x23, 0xCF, 0x41, 0x00, 0x82, 0xA1, 0xE8
.byte 0x48, 0xE9, 0x48, 0x21, 0x5F, 0x4A, 0x40, 0xC8
.byte 0x69, 0xF8, 0xFF, 0x8A, 0xF8, 0x68, 0xEB, 0x40
.byte 0x00, 0xFE, 0x23, 0x01, 0x96, 0x02, 0x50, 0x00
.byte 0x6C, 0x6D, 0x03, 0xF5, 0xF2, 0x70, 0x50, 0xF8
.byte 0x70, 0x00, 0xFC, 0x80, 0xBC, 0xA0, 0xAC, 0xA8
.byte 0x8D, 0xFC, 0xF3, 0xE0, 0x1F, 0xFC, 0x04, 0xF4
.byte 0x14, 0xD4, 0x54, 0xF4, 0x1A, 0x12, 0xD4, 0x14
.byte 0xF4, 0x04, 0x2A, 0xFF, 0xF3, 0x41, 0xD5, 0x1F
.byte 0xAC, 0xA0, 0xBC, 0x80, 0xFC, 0xA8, 0xF0, 0x4B
.byte 0xAC, 0xC0, 0x41, 0xD9, 0x43, 0xC8, 0x4E, 0x00
.byte 0xB8, 0x0C, 0x80, 0xFF, 0x6E, 0xFC, 0x96, 0x0F
.byte 0x04, 0xC0, 0x06, 0x46, 0xD1, 0x23, 0xCA, 0x27
.byte 0x3F, 0x41, 0xDC, 0x43, 0xC5, 0x63, 0x53, 0x07
.byte 0xFC, 0x3B, 0x74, 0x20, 0x40, 0x08, 0x6A, 0x10
.byte 0x41, 0x6A, 0x20, 0xC8, 0x63, 0x68, 0x22, 0xE8
.byte 0x88, 0xE9, 0x74, 0x63, 0x50, 0x22, 0x0F, 0x8D
.byte 0xC8, 0x48, 0x48, 0x7C, 0x76, 0x64, 0x43, 0x22
.byte 0xCA, 0x62, 0xA2, 0x09, 0x40, 0x46, 0x3B, 0x46
.byte 0x14, 0x70, 0x88, 0x90, 0xED, 0x30, 0x88, 0x1C
.byte 0xAC, 0x21, 0x71, 0x58, 0xB8, 0x2A, 0x8C, 0x30
.byte 0xE6, 0x9E, 0x19, 0x00, 0x14, 0x28, 0x50, 0xA0
.byte 0x50, 0x28, 0x14, 0x00, 0xDA, 0x02, 0x3C, 0x0F
.byte 0x00, 0x54, 0xAA, 0x0D, 0xAA, 0xB0, 0x1B, 0xB6
.byte 0x6C, 0xDA, 0xEF, 0x0F, 0x18, 0x2C, 0x0D, 0xF8
.byte 0x02, 0xBF, 0x09, 0x6C, 0x29, 0xEC, 0xEC, 0x63
.byte 0xCB, 0x24, 0x08, 0xFC, 0x75, 0x23, 0x0A, 0x0C
.byte 0xCE, 0x06, 0x01, 0x44, 0xF0, 0x0E, 0xEE, 0x23
.byte 0x62, 0xC7, 0x74, 0x64, 0x64, 0xC1, 0xA1, 0xEE
.byte 0x31, 0x01, 0x44, 0x04, 0xA5, 0xE0, 0x18, 0xED
.byte 0x30, 0x6F, 0x30, 0x54, 0x26, 0x4E, 0x21, 0x23
.byte 0x80, 0x26, 0x24, 0x54, 0x23, 0x1D, 0x1F, 0xD8
.byte 0xD8, 0xDC, 0xD8, 0x54, 0xDC, 0xC0, 0xA5, 0x3D
.byte 0x08, 0xFC, 0xC0, 0xDC, 0x66, 0x55, 0x21, 0xC0
.byte 0x22, 0x22, 0x4E, 0x85, 0x7F, 0x23, 0x80, 0xE9
.byte 0x00, 0x42, 0x91, 0x25, 0xA6, 0xEA, 0x29, 0x43
.byte 0x87, 0x04, 0x00, 0x54, 0x26, 0x44, 0x79, 0xEA
.byte 0x3C, 0x3F, 0x00, 0x3E, 0x30, 0x3E, 0x3D, 0x44
.byte 0x7E, 0x44, 0xB9, 0x84, 0xF0, 0x86, 0xDF, 0x38
.byte 0x43, 0x54, 0x05, 0x21, 0x8D, 0x21, 0x0F, 0xC0
.byte 0xF0, 0xEF, 0x0C, 0x20, 0x04, 0xB1, 0x00, 0x68
.byte 0xFE, 0xA8, 0x82, 0x70, 0xE8, 0xB0, 0xFA, 0x3D
.byte 0xF0, 0x40, 0xF0, 0x90, 0x80, 0x80, 0x8A, 0xF8
.byte 0x7F, 0x91, 0x48, 0x00, 0xEF, 0xB0, 0xEA, 0x40
.byte 0xA2, 0x50, 0xEC, 0x7C, 0x8A, 0x00, 0xE2, 0x48
.byte 0x61, 0x18, 0x58, 0x74, 0x98, 0x10, 0x10, 0x1C
.byte 0x55, 0xF8, 0x2C, 0x10, 0x38, 0x44, 0x38, 0x10
.byte 0x58, 0x30, 0xCC, 0xCC, 0xFC, 0xCC, 0xCC, 0x38
.byte 0x00, 0x78, 0x84, 0x84, 0x84, 0x48, 0x48, 0x84
.byte 0x7B, 0x28, 0x40, 0x43, 0x28, 0x44, 0x61, 0x5A
.byte 0xF9, 0x0E, 0x6C, 0x92, 0x92, 0x82, 0xCF, 0xB3
.byte 0x58, 0x68, 0xE2, 0x40, 0x30, 0xF8, 0x80, 0x42
.byte 0x26, 0x09, 0xCC, 0xFE, 0x41, 0x0A, 0x04, 0x40
.byte 0xB4, 0xA9, 0x7C, 0xEE, 0x1A, 0xB3, 0xFE, 0x00
.byte 0x61, 0x21, 0xCF, 0xA9, 0x10, 0x41, 0x22, 0x8E
.byte 0x73, 0x18, 0x34, 0x5B, 0x65, 0x6E, 0xF1, 0xB0
.byte 0x70, 0xAB, 0xFC, 0x1F, 0x12, 0x64, 0x98, 0xEB
.byte 0x54, 0x00, 0x38, 0x9B, 0x01, 0x4D, 0x38, 0x01
.byte 0x24, 0xCE, 0x89, 0x0E, 0x7B, 0x9B, 0x0E, 0x28
.byte 0x18, 0x08, 0x90, 0xA1, 0xE0, 0x3D, 0x62, 0x12
.byte 0x49, 0x3C, 0x85, 0x6F, 0x00, 0xE8, 0x05, 0xFF
.byte 0xE7, 0xE8

BIN
Source/Fonts/font8x8c.bin

Binary file not shown.

259
Source/Fonts/font8x8u.asm

@ -0,0 +1,259 @@
font8x8u:
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x3C, 0x3C, 0x30, 0x30, 0x30
.byte 0x00, 0x00, 0x00, 0xF0, 0xF0, 0x30, 0x30, 0x30
.byte 0x30, 0x30, 0x30, 0x3C, 0x3C, 0x00, 0x00, 0x00
.byte 0x30, 0x30, 0x30, 0xF0, 0xF0, 0x00, 0x00, 0x00
.byte 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30
.byte 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00
.byte 0x00, 0x20, 0x70, 0xF8, 0x70, 0x20, 0x00, 0x00
.byte 0xF8, 0xD8, 0x88, 0x00, 0x88, 0xD8, 0xF8, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x18, 0x20, 0x60, 0x90, 0x60, 0x00, 0x00
.byte 0x20, 0x50, 0x20, 0x20, 0x70, 0x20, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xA8, 0x50, 0x50, 0xD8, 0x50, 0x50, 0xA8, 0x00
.byte 0x30, 0x30, 0x30, 0xFC, 0xFC, 0x30, 0x30, 0x30
.byte 0x10, 0x30, 0x70, 0xF0, 0x70, 0x30, 0x10, 0x00
.byte 0x20, 0x70, 0x20, 0x20, 0x20, 0x70, 0x20, 0x00
.byte 0x50, 0x50, 0x50, 0x50, 0x00, 0x50, 0x00, 0x00
.byte 0x78, 0xA8, 0xA8, 0x68, 0x28, 0x28, 0x00, 0x00
.byte 0x30, 0x30, 0x30, 0xFC, 0xFC, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0xFC, 0xFC, 0x30, 0x30, 0x30
.byte 0x30, 0x30, 0x30, 0xF0, 0xF0, 0x30, 0x30, 0x30
.byte 0x20, 0x70, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20
.byte 0x30, 0x30, 0x30, 0x3C, 0x3C, 0x30, 0x30, 0x30
.byte 0x00, 0x10, 0x18, 0xFC, 0x18, 0x10, 0x00, 0x00
.byte 0x00, 0x20, 0x60, 0xFC, 0x60, 0x20, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x30, 0x78, 0x78, 0x30, 0x00, 0x30, 0x00, 0x00
.byte 0xD8, 0xD8, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x48, 0x48, 0xFC, 0x48, 0x48, 0xFC, 0x48, 0x48
.byte 0x20, 0x78, 0xA0, 0x78, 0x24, 0xF8, 0x20, 0x00
.byte 0x00, 0xC8, 0xD0, 0x20, 0x58, 0x98, 0x00, 0x00
.byte 0x30, 0x48, 0x48, 0x50, 0x60, 0x90, 0x78, 0x00
.byte 0x30, 0x30, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x10, 0x20, 0x20, 0x20, 0x20, 0x20, 0x10, 0x00
.byte 0x20, 0x10, 0x10, 0x10, 0x10, 0x10, 0x20, 0x00
.byte 0x20, 0xA8, 0x70, 0xF8, 0x70, 0xA8, 0x20, 0x00
.byte 0x00, 0x20, 0x20, 0xF8, 0x20, 0x20, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x40
.byte 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x00
.byte 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x00, 0x00
.byte 0x70, 0x98, 0xA8, 0xA8, 0xA8, 0xC8, 0x70, 0x00
.byte 0x20, 0x60, 0x20, 0x20, 0x20, 0x20, 0xF8, 0x00
.byte 0x70, 0x88, 0x08, 0x10, 0x60, 0x80, 0xF8, 0x00
.byte 0x70, 0x88, 0x08, 0x70, 0x08, 0x88, 0x70, 0x00
.byte 0x30, 0x50, 0x90, 0xF8, 0x10, 0x10, 0x10, 0x00
.byte 0xF8, 0x80, 0x80, 0xF0, 0x08, 0x88, 0x70, 0x00
.byte 0x38, 0x40, 0x80, 0xF0, 0x88, 0x88, 0x70, 0x00
.byte 0xF8, 0x08, 0x10, 0x20, 0x20, 0x20, 0x20, 0x00
.byte 0x70, 0x88, 0x88, 0x70, 0x88, 0x88, 0x70, 0x00
.byte 0x70, 0x88, 0x88, 0x78, 0x08, 0x88, 0x70, 0x00
.byte 0x00, 0x30, 0x30, 0x00, 0x30, 0x30, 0x00, 0x00
.byte 0x00, 0x30, 0x30, 0x00, 0x30, 0x30, 0x60, 0x00
.byte 0x10, 0x20, 0x40, 0x80, 0x40, 0x20, 0x10, 0x00
.byte 0x00, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0x00, 0x00
.byte 0x40, 0x20, 0x10, 0x08, 0x10, 0x20, 0x40, 0x00
.byte 0x70, 0x88, 0x08, 0x30, 0x20, 0x00, 0x20, 0x00
.byte 0x70, 0x88, 0xB8, 0xB0, 0x80, 0x80, 0x70, 0x00
.byte 0x20, 0x50, 0x88, 0xF8, 0x88, 0x88, 0x88, 0x00
.byte 0xF0, 0x48, 0x48, 0x70, 0x48, 0x48, 0xF0, 0x00
.byte 0x70, 0x88, 0x80, 0x80, 0x80, 0x88, 0x70, 0x00
.byte 0xF0, 0x48, 0x48, 0x48, 0x48, 0x48, 0xF0, 0x00
.byte 0xF8, 0x88, 0x80, 0xE0, 0x80, 0x88, 0xF8, 0x00
.byte 0xF8, 0x88, 0x80, 0xF0, 0x80, 0x80, 0x80, 0x00
.byte 0x70, 0x88, 0x80, 0xB8, 0x88, 0x88, 0x70, 0x00
.byte 0x88, 0x88, 0x88, 0xF8, 0x88, 0x88, 0x88, 0x00
.byte 0xF8, 0x20, 0x20, 0x20, 0x20, 0x20, 0xF8, 0x00
.byte 0x1C, 0x08, 0x08, 0x08, 0x08, 0x88, 0x70, 0x00
.byte 0x88, 0x90, 0xA0, 0xC0, 0xA0, 0x90, 0x88, 0x00
.byte 0x80, 0x80, 0x80, 0x80, 0x80, 0x88, 0xF8, 0x00
.byte 0x88, 0xD8, 0xA8, 0x88, 0x88, 0x88, 0x88, 0x00
.byte 0x88, 0xC8, 0xA8, 0xA8, 0xA8, 0x98, 0x88, 0x00
.byte 0x70, 0x88, 0x88, 0x88, 0x88, 0x88, 0x70, 0x00
.byte 0xF0, 0x88, 0x88, 0xF0, 0x80, 0x80, 0x80, 0x00
.byte 0x70, 0x88, 0x88, 0x88, 0xA8, 0x98, 0x78, 0x04
.byte 0xF0, 0x88, 0x88, 0xF0, 0xA0, 0x90, 0x88, 0x00
.byte 0x70, 0x88, 0x40, 0x20, 0x10, 0x88, 0x70, 0x00
.byte 0xF8, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00
.byte 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x70, 0x00
.byte 0x88, 0x88, 0x88, 0x50, 0x50, 0x50, 0x20, 0x00
.byte 0x88, 0x88, 0x88, 0xA8, 0xA8, 0xA8, 0x50, 0x00
.byte 0x88, 0x88, 0x50, 0x20, 0x50, 0x88, 0x88, 0x00
.byte 0x88, 0x88, 0x50, 0x20, 0x20, 0x20, 0x20, 0x00
.byte 0xF8, 0x88, 0x10, 0x20, 0x40, 0x88, 0xF8, 0x00
.byte 0x78, 0x40, 0x40, 0x40, 0x40, 0x40, 0x78, 0x00
.byte 0x00, 0x80, 0x40, 0x20, 0x10, 0x08, 0x00, 0x00
.byte 0x78, 0x08, 0x08, 0x08, 0x08, 0x08, 0x78, 0x00
.byte 0x20, 0x50, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x00
.byte 0x60, 0x60, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xF0, 0x08, 0x78, 0x88, 0x70, 0x00
.byte 0x80, 0x80, 0x80, 0xF0, 0x88, 0x88, 0xF0, 0x00
.byte 0x00, 0x00, 0x00, 0x70, 0x80, 0x80, 0x70, 0x00
.byte 0x08, 0x08, 0x08, 0x78, 0x88, 0x88, 0x78, 0x00
.byte 0x00, 0x00, 0x70, 0x88, 0xF8, 0x80, 0x70, 0x00
.byte 0x00, 0x30, 0x48, 0xE0, 0x40, 0x40, 0x40, 0x00
.byte 0x00, 0x00, 0x38, 0x48, 0x48, 0x38, 0x08, 0x70
.byte 0x00, 0x80, 0x80, 0xB0, 0xC8, 0x88, 0x88, 0x00
.byte 0x00, 0x00, 0x20, 0x00, 0x60, 0x20, 0x70, 0x00
.byte 0x00, 0x08, 0x00, 0x18, 0x08, 0x08, 0x48, 0x30
.byte 0x80, 0x80, 0x90, 0xA0, 0xC0, 0xA0, 0x90, 0x00
.byte 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00
.byte 0x00, 0x00, 0x00, 0x50, 0xA8, 0xA8, 0x88, 0x00
.byte 0x00, 0x00, 0x00, 0xB0, 0xC8, 0x88, 0x88, 0x00
.byte 0x00, 0x00, 0x00, 0x70, 0x88, 0x88, 0x70, 0x00
.byte 0x00, 0x00, 0x70, 0x48, 0x48, 0x70, 0x40, 0x40
.byte 0x00, 0x60, 0x38, 0x48, 0x48, 0x38, 0x08, 0x08
.byte 0x00, 0x00, 0x00, 0xB0, 0xC8, 0x80, 0x80, 0x00
.byte 0x00, 0x00, 0x60, 0x80, 0x60, 0x10, 0x60, 0x00
.byte 0x00, 0x00, 0x40, 0xE0, 0x40, 0x40, 0x20, 0x00
.byte 0x00, 0x00, 0x00, 0x90, 0x90, 0x90, 0x68, 0x00
.byte 0x00, 0x00, 0x00, 0x88, 0x88, 0x50, 0x20, 0x00
.byte 0x00, 0x00, 0x00, 0x88, 0xA8, 0xA8, 0x50, 0x00
.byte 0x00, 0x00, 0x00, 0x48, 0x30, 0x30, 0x48, 0x00
.byte 0x00, 0x00, 0x88, 0x50, 0x20, 0x40, 0x80, 0x00
.byte 0x00, 0x00, 0xF8, 0x10, 0x20, 0x40, 0xF8, 0x00
.byte 0x10, 0x20, 0x20, 0x40, 0x20, 0x20, 0x10, 0x00
.byte 0x20, 0x20, 0x20, 0x00, 0x20, 0x20, 0x20, 0x00
.byte 0x40, 0x20, 0x20, 0x10, 0x20, 0x20, 0x40, 0x00
.byte 0x6C, 0x90, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x70, 0x50, 0x50, 0x50, 0x50, 0x50, 0x70, 0x00
.byte 0xFC, 0x80, 0xBC, 0xA0, 0xAC, 0xA8, 0xA8, 0xA8
.byte 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0x00, 0x00
.byte 0xFC, 0x04, 0xF4, 0x14, 0xD4, 0x54, 0x54, 0x54
.byte 0x54, 0x54, 0x54, 0x54, 0x54, 0x54, 0x54, 0x54
.byte 0x54, 0x54, 0x54, 0xD4, 0x14, 0xF4, 0x04, 0xFC
.byte 0x00, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF
.byte 0xA8, 0xA8, 0xA8, 0xAC, 0xA0, 0xBC, 0x80, 0xFC
.byte 0xA8, 0xA8, 0xA8, 0xA8, 0xA8, 0xA8, 0xA8, 0xA8
.byte 0xA8, 0xA8, 0xAC, 0xA0, 0xAC, 0xA8, 0xA8, 0xA8
.byte 0x54, 0x54, 0xD4, 0x14, 0xD4, 0x54, 0x54, 0x54
.byte 0x00, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0x00, 0x00
.byte 0xFC, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80
.byte 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFC, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04
.byte 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04
.byte 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0xFC
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC
.byte 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xFC
.byte 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80
.byte 0x80, 0x80, 0x80, 0xFC, 0x80, 0x80, 0x80, 0x80
.byte 0x04, 0x04, 0x04, 0xFC, 0x04, 0x04, 0x04, 0x04
.byte 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x20, 0x40, 0xF0, 0x08, 0x78, 0x88, 0x70, 0x00
.byte 0x10, 0x20, 0x00, 0x60, 0x20, 0x20, 0xF8, 0x00
.byte 0x10, 0x20, 0x00, 0x70, 0x88, 0x88, 0x70, 0x00
.byte 0x10, 0x20, 0x00, 0x88, 0x88, 0x88, 0x74, 0x00
.byte 0x10, 0x20, 0x00, 0xB0, 0xC8, 0x88, 0x88, 0x00
.byte 0x10, 0x20, 0x00, 0xC8, 0xA8, 0x98, 0x88, 0x00
.byte 0x70, 0x88, 0x88, 0x7C, 0x00, 0xFC, 0x00, 0x00
.byte 0x70, 0x88, 0x88, 0x70, 0x00, 0xFC, 0x00, 0x00
.byte 0x20, 0x00, 0x20, 0x20, 0x40, 0x88, 0x70, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0xFC, 0x80, 0x80, 0x80
.byte 0x00, 0x00, 0x00, 0x00, 0xFC, 0x04, 0x04, 0x04
.byte 0x88, 0x90, 0xA8, 0x54, 0x88, 0x1C, 0x00, 0x00
.byte 0x88, 0x90, 0xA8, 0x58, 0xB8, 0x08, 0x00, 0x00
.byte 0x30, 0x00, 0x30, 0x78, 0x78, 0x30, 0x00, 0x00
.byte 0x14, 0x28, 0x50, 0xA0, 0x50, 0x28, 0x14, 0x00
.byte 0xA0, 0x50, 0x28, 0x14, 0x28, 0x50, 0xA0, 0x00
.byte 0x54, 0xAA, 0x54, 0xAA, 0x54, 0xAA, 0x54, 0xAA
.byte 0xAA, 0x54, 0xAA, 0x54, 0xAA, 0x54, 0xAA, 0x54
.byte 0xB6, 0x6C, 0xDA, 0xB6, 0x6C, 0xDA, 0xB6, 0x6C
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0x18, 0xF8, 0x18, 0x18, 0x18
.byte 0x18, 0x18, 0x18, 0xF8, 0x18, 0xF8, 0x18, 0x18
.byte 0x6C, 0x6C, 0x6C, 0x6C, 0xEC, 0x6C, 0x6C, 0x6C
.byte 0x00, 0x00, 0x00, 0x00, 0xFC, 0x6C, 0x6C, 0x6C
.byte 0x00, 0x00, 0x00, 0xFC, 0x6C, 0xEC, 0x6C, 0x6C
.byte 0x6C, 0x6C, 0xEC, 0x0C, 0xEC, 0x6C, 0x6C, 0x6C
.byte 0x6C, 0x6C, 0x6C, 0x6C, 0x6C, 0x6C, 0x6C, 0x6C
.byte 0x00, 0x00, 0xFC, 0x0E, 0xEE, 0x6C, 0x6C, 0x6C
.byte 0x6C, 0x6C, 0xEC, 0x0C, 0xFC, 0x00, 0x00, 0x00
.byte 0x64, 0x64, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x30, 0x30, 0xF0, 0x30, 0x30, 0xF0, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0xF0, 0x30, 0x30, 0x30
.byte 0x30, 0x30, 0x30, 0x30, 0x3C, 0x00, 0x00, 0x00
.byte 0x30, 0x30, 0x30, 0x30, 0xFC, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0xFC, 0x30, 0x30, 0x30
.byte 0x30, 0x30, 0x30, 0x30, 0x3C, 0x30, 0x30, 0x30
.byte 0x00, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00
.byte 0x30, 0x30, 0x30, 0x30, 0xFC, 0x30, 0x30, 0x30
.byte 0x30, 0x30, 0x3C, 0x30, 0x3C, 0x30, 0x30, 0x30
.byte 0xD8, 0xD8, 0xDC, 0xD8, 0xD8, 0xD8, 0xD8, 0xD8
.byte 0xD8, 0xD8, 0xD8, 0xDC, 0xC0, 0xFC, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0xFC, 0xC0, 0xDC, 0xD8, 0xD8
.byte 0xD8, 0xD8, 0xD8, 0xDC, 0xC0, 0x00, 0xFC, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x00
.byte 0xD8, 0xD8, 0xD8, 0xDC, 0xC0, 0xDC, 0xD8, 0xD8
.byte 0x00, 0x00, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0x00
.byte 0xD8, 0xD8, 0xD8, 0xDC, 0x00, 0xDC, 0xD8, 0xD8
.byte 0x30, 0x30, 0x30, 0xFC, 0x00, 0x00, 0xFC, 0x00
.byte 0xD8, 0xD8, 0xD8, 0xFC, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x30, 0x30
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xD8, 0xD8
.byte 0xD8, 0xD8, 0xD8, 0xFC, 0x00, 0x00, 0x00, 0x00
.byte 0x30, 0x30, 0x30, 0x3C, 0x30, 0x30, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x3E, 0x30, 0x3E, 0x30, 0x30
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xD8, 0xD8
.byte 0xD8, 0xD8, 0xD8, 0xD8, 0xDC, 0xD8, 0xD8, 0xD8
.byte 0x30, 0x30, 0xFC, 0x00, 0x00, 0xFC, 0x30, 0x30
.byte 0x30, 0x30, 0x30, 0xF0, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x3C, 0x30, 0x30, 0x30, 0x30
.byte 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC
.byte 0x00, 0x00, 0x00, 0xFC, 0xFC, 0xFC, 0xC0, 0xC0
.byte 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0
.byte 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C
.byte 0x0C, 0x0C, 0x0C, 0x0C, 0xFC, 0xFC, 0xFC, 0x00
.byte 0x00, 0x00, 0x00, 0x68, 0x90, 0x90, 0x68, 0x00
.byte 0x70, 0x88, 0x88, 0xB0, 0x88, 0x88, 0xF0, 0x40
.byte 0xF0, 0x90, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00
.byte 0xF8, 0x50, 0x50, 0x50, 0x50, 0x48, 0x00, 0x00
.byte 0xF8, 0x88, 0x40, 0x20, 0x40, 0x88, 0xF8, 0x00
.byte 0x00, 0x00, 0x00, 0x7C, 0x88, 0x88, 0x70, 0x00
.byte 0x00, 0x00, 0x00, 0x88, 0x88, 0x88, 0x70, 0x80
.byte 0x00, 0x00, 0x74, 0x98, 0x10, 0x10, 0x1C, 0x00
.byte 0xFC, 0x10, 0x38, 0x44, 0x38, 0x10, 0xFC, 0x00
.byte 0x30, 0xCC, 0xCC, 0xFC, 0xCC, 0xCC, 0x38, 0x00
.byte 0x78, 0x84, 0x84, 0x84, 0x48, 0x48, 0x84, 0x00
.byte 0x3C, 0x40, 0x38, 0x44, 0x44, 0x44, 0x38, 0x00
.byte 0x00, 0x00, 0x6C, 0x92, 0x92, 0x6C, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x38, 0x58, 0x68, 0x70, 0x00
.byte 0x38, 0x40, 0x80, 0xF8, 0x80, 0x40, 0x38, 0x00
.byte 0x00, 0x00, 0x30, 0xCC, 0xCC, 0xCC, 0xCC, 0x00
.byte 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00
.byte 0x10, 0x10, 0x7C, 0x10, 0x10, 0x00, 0xFE, 0x00
.byte 0x20, 0x10, 0x08, 0x10, 0x20, 0x00, 0xFE, 0x00
.byte 0x10, 0x20, 0x40, 0x20, 0x10, 0x00, 0xFE, 0x00
.byte 0x18, 0x34, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30
.byte 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0xB0, 0x70
.byte 0x30, 0x30, 0x00, 0xFC, 0x00, 0x30, 0x30, 0x00
.byte 0x00, 0x64, 0x98, 0x00, 0x64, 0x98, 0x00, 0x00
.byte 0x38, 0x44, 0x44, 0x38, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x38, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x0E, 0x08, 0x08, 0x48, 0x28, 0x18, 0x08, 0x00
.byte 0x00, 0x00, 0x00, 0xB0, 0x48, 0x48, 0x48, 0x00
.byte 0x00, 0x00, 0xF0, 0x3C, 0x40, 0x80, 0xF8, 0x00
.byte 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00

163
Source/Fonts/fontcgac.asm

@ -0,0 +1,163 @@
fontcgac:
.byte 0x08, 0x18, 0xFD, 0x11, 0xFF, 0xFF, 0x0D, 0x00
.byte 0xF1, 0x3A, 0xC0, 0xC0, 0x30, 0x30, 0xE8, 0x26
.byte 0x0D, 0x18, 0xF8, 0x26, 0x3A, 0x1E, 0x33, 0x33
.byte 0xCC, 0xCC, 0x27, 0x80, 0x3A, 0x0E, 0x99, 0xCC
.byte 0x66, 0x0F, 0x00, 0xFE, 0xED, 0xF0, 0x27, 0x63
.byte 0x09, 0xFF, 0xFA, 0x27, 0x05, 0x47, 0xC9, 0x07
.byte 0x48, 0x0D, 0xC0, 0xF8, 0x26, 0x42, 0x82, 0x22
.byte 0xE0, 0x26, 0x0D, 0x03, 0xF3, 0x47, 0x8C, 0x27
.byte 0x03, 0x3A, 0x1E, 0xCC, 0x99, 0x33, 0x66, 0x47
.byte 0xD0, 0xAF, 0x46, 0x20, 0xF5, 0x1F, 0x1F, 0x06
.byte 0xE9, 0x0F, 0x27, 0x04, 0x47, 0x64, 0x55, 0x53
.byte 0xF8, 0xF8, 0xD0, 0x47, 0x2E, 0x27, 0x92, 0x47
.byte 0xB0, 0x47, 0x63, 0xA0, 0x47, 0xD3, 0x27, 0x05
.byte 0x44, 0xB0, 0x47, 0x10, 0xEF, 0x0D, 0xE0, 0x26
.byte 0x0F, 0x0D, 0x07, 0x26, 0x08, 0x47, 0xA3, 0x06
.byte 0x75, 0x07, 0xE4, 0xF8, 0x01, 0x03, 0x06, 0x6C
.byte 0x78, 0x70, 0x60, 0x27, 0xFE, 0x64, 0x14, 0x67
.byte 0xF1, 0x18, 0x76, 0x66, 0x66, 0x25, 0x26, 0x29
.byte 0xFF, 0xF1, 0x4F, 0x66, 0xD0, 0xFF, 0x21, 0x3E
.byte 0x60, 0x3C, 0x06, 0x7C, 0xFF, 0x40, 0x62, 0x66
.byte 0x0C, 0x18, 0x30, 0x66, 0x46, 0xFF, 0x40, 0x3C
.byte 0x66, 0x3C, 0x38, 0x67, 0x66, 0x3F, 0x77, 0x06
.byte 0x0C, 0xC5, 0x5F, 0x41, 0xD2, 0x00, 0x17, 0x18
.byte 0x0C, 0x60, 0x21, 0xA6, 0x29, 0x0C, 0x47, 0x8F
.byte 0x24, 0x50, 0x3C, 0xFF, 0xBC, 0x47, 0x5F, 0x08
.byte 0x7E, 0xE8, 0x47, 0x4B, 0x2F, 0x30, 0x92, 0x4F
.byte 0x7E, 0x2B, 0xA1, 0x47, 0x8D, 0xF1, 0x03, 0x06
.byte 0x4F, 0x60, 0x60, 0x22, 0x50, 0x6E, 0x76, 0x1C
.byte 0x4F, 0x3C, 0xB5, 0x51, 0x38, 0x18, 0x9D, 0x27
.byte 0x02, 0x50, 0x06, 0x0C, 0xD1, 0x27, 0x84, 0x57
.byte 0x1C, 0x06, 0xD0, 0x24, 0x5F, 0x06, 0x0E, 0x1E
.byte 0x66, 0x7F, 0x06, 0x06, 0x83, 0x10, 0x3C, 0x60
.byte 0x7C, 0x06, 0x03, 0x46, 0xA0, 0xF7, 0x60, 0x7C
.byte 0x69, 0x7E, 0xE0, 0x01, 0xF0, 0x27, 0x2E, 0x0A
.byte 0x66, 0x27, 0x83, 0x4F, 0x3E, 0xA0, 0x34, 0x63
.byte 0x74, 0x47, 0x10, 0xEF, 0x18, 0x43, 0x49, 0x0E
.byte 0x33, 0x60, 0xC0, 0x4F, 0x0E, 0x01, 0x67, 0xFF
.byte 0x44, 0x68, 0x70, 0xA4, 0x41, 0x0F, 0x4F, 0x70
.byte 0x30, 0x6C, 0x18, 0x20, 0x46, 0x00, 0xFF, 0x02
.byte 0x6E, 0x60, 0x62, 0x00, 0x73, 0x6F, 0x7E, 0x0C
.byte 0x41, 0x43, 0x02, 0xE3, 0x47, 0x30, 0xF7, 0x60
.byte 0x60, 0x22, 0x51, 0x78, 0x6C, 0xD2, 0x57, 0x6C
.byte 0x78, 0x00, 0x10, 0x60, 0x78, 0xE8, 0x2F, 0x7E
.byte 0x63, 0x6F, 0x60, 0xF0, 0xEF, 0x6E, 0x3A, 0x20
.byte 0x47, 0x90, 0x5E, 0x8B, 0x3C, 0x8F, 0x27, 0x01
.byte 0x11, 0x1E, 0x0C, 0xF1, 0x57, 0x6C, 0x38, 0xD0
.byte 0x81, 0xF0, 0x42, 0x41, 0x8C, 0x27, 0x0F, 0x09
.byte 0x60, 0x47, 0x90, 0x32, 0x18, 0x63, 0x77, 0x7F
.byte 0x6B, 0x63, 0xF1, 0x47, 0xA0, 0xFC, 0x14, 0x76
.byte 0x7E, 0x7E, 0x6E, 0x66, 0x90, 0xEE, 0x66, 0x46
.byte 0x20, 0x47, 0x60, 0x03, 0x00, 0x2F, 0x0E, 0x43
.byte 0x45, 0x90, 0x66, 0x30, 0xF7, 0x3C, 0x06, 0xF7
.byte 0x18, 0x18, 0x46, 0x4F, 0x66, 0xA0, 0x04, 0x80
.byte 0x27, 0x10, 0x41, 0x64, 0x5F, 0x6B, 0x7F, 0x77
.byte 0x60, 0x11, 0x02, 0x6F, 0x3C, 0x90, 0x23, 0x42
.byte 0xD2, 0x47, 0xB0, 0x69, 0x7E, 0x42, 0x87, 0xF4
.byte 0x80, 0x0A, 0x30, 0xF1, 0x67, 0xE0, 0x68, 0x40
.byte 0x02, 0x61, 0x1E, 0x2F, 0x02, 0x01, 0x0A, 0x0C
.byte 0xF0, 0x22, 0x66, 0x2F, 0xBF, 0x0E, 0x24, 0x42
.byte 0x42, 0xA0, 0xEF, 0xA6, 0x8F, 0x2F, 0x04, 0x24
.byte 0xFA, 0x20, 0x3C, 0x06, 0x3E, 0x66, 0x3E, 0x66
.byte 0x9F, 0x66, 0x00, 0x26, 0x61, 0x31, 0x47, 0xA0
.byte 0x20, 0x49, 0x06, 0xD1, 0x45, 0xD0, 0x66, 0x9E
.byte 0x2C, 0x7E, 0x86, 0xFE, 0x5F, 0xAF, 0x3E, 0xA1
.byte 0x55, 0x42, 0xD1, 0x57, 0x06, 0x7C, 0xA0, 0x8F
.byte 0x66, 0xF3, 0x21, 0xE8, 0x38, 0x47, 0xA0, 0x3F
.byte 0x20, 0x01, 0xF2, 0x4F, 0x3C, 0x70, 0x6F, 0x6C
.byte 0x70, 0x3F, 0x42, 0xD2, 0x45, 0xD0, 0x66, 0xBE
.byte 0x89, 0x7F, 0xFE, 0x23, 0x0E, 0x66, 0x3E, 0x87
.byte 0x3C, 0x5F, 0x6C, 0x3C, 0x60, 0x87, 0xFE, 0x66
.byte 0x47, 0x60, 0x2F, 0x06, 0x03, 0x0F, 0x60, 0x03
.byte 0x8B, 0x00, 0xE2, 0x0F, 0x47, 0x50, 0x82, 0xFE
.byte 0xFE, 0xAF, 0x0E, 0xDE, 0x45, 0x67, 0xF0, 0x66
.byte 0x00, 0x26, 0x8E, 0x61, 0x00, 0xF3, 0x3E, 0x36
.byte 0x86, 0x1F, 0xEF, 0x18, 0x4E, 0x42, 0xC1, 0x97
.byte 0x0C, 0x78, 0x31, 0x2E, 0xA1, 0xAF, 0xAF, 0x7E
.byte 0xE2, 0xCF, 0xFE, 0x2D, 0x10, 0x10, 0x20, 0x10
.byte 0x10, 0xA6, 0x5F, 0x67, 0x10, 0x20, 0x18, 0x04
.byte 0x04, 0x02, 0xE7, 0x05, 0x64, 0x07, 0xF7, 0x32
.byte 0x4C, 0x2F, 0x0B, 0x81, 0xAF, 0xFF, 0xD3, 0x60
.byte 0x87, 0xD3, 0x10, 0x3E, 0x58, 0xC3, 0x99, 0x91
.byte 0x91, 0x9F, 0x99, 0xC3, 0xFF, 0xFF, 0x41, 0xFF
.byte 0xFF, 0xC3, 0xF9, 0xC1, 0x99, 0xC1, 0x3F, 0x30
.byte 0x9F, 0x9F, 0x83, 0x99, 0x99, 0x83, 0x3F, 0x08
.byte 0x9F, 0x47, 0xD0, 0x20, 0x49, 0xF9, 0xD1, 0x44
.byte 0xD0, 0x26, 0xF7, 0x99, 0x81, 0x33, 0xFF, 0xF1
.byte 0xE7, 0xC1, 0xE7, 0xE7, 0xE7, 0x25, 0x42, 0xD1
.byte 0x57, 0xF9, 0x83, 0xA0, 0xEF, 0x99, 0x12, 0xFF
.byte 0xE7, 0xFF, 0xC7, 0xE7, 0xE7, 0x3F, 0x20, 0x01
.byte 0xF2, 0x4F, 0xC3, 0xD0, 0xFF, 0x01, 0x93, 0x87
.byte 0x93, 0x42, 0xD2, 0x47, 0xD0, 0x43, 0x3F, 0xFF
.byte 0x99, 0x80, 0x80, 0x94, 0x9C, 0x82, 0x42, 0xA1
.byte 0x4F, 0x99, 0x60, 0x44, 0x4F, 0x99, 0x10, 0x42
.byte 0x21, 0x57, 0x9F, 0x9F, 0x60, 0x60, 0x2F, 0xF9
.byte 0x33, 0x41, 0x0F, 0x47, 0x40, 0x50, 0x9F, 0xC3
.byte 0x41, 0x47, 0x80, 0x13, 0xF1, 0xE7, 0x81, 0xEF
.byte 0xF1, 0x01, 0xF8, 0x2F, 0xC1, 0x52, 0xF7, 0xC3
.byte 0xE7, 0xFF, 0x22, 0x9C, 0x94, 0x80, 0xC1, 0xC9
.byte 0x21, 0x15, 0x57, 0xC3, 0x99, 0xD0, 0xFF, 0x01
.byte 0xC1, 0xF3, 0x87, 0x7F, 0x11, 0x81, 0xF3, 0xE7
.byte 0xCF, 0x40, 0x12, 0xC3, 0xCF, 0xF1, 0x67, 0x50
.byte 0x3F, 0x40, 0xF3, 0xED, 0xCF, 0x83, 0xCF, 0x9D
.byte 0x03, 0x1F, 0x0A, 0xF3, 0x4F, 0xC3, 0x60, 0x20
.byte 0x72, 0xC3, 0x81, 0xDE, 0x67, 0xE0, 0xF0, 0xEF
.byte 0xCF, 0xF7, 0xCF, 0xEF, 0x1F, 0x05, 0x26, 0x88
.byte 0x62, 0xB2, 0x00, 0x67, 0x50, 0x10, 0x61, 0x64
.byte 0x25, 0x26, 0x86, 0x00, 0x01, 0x51, 0x47, 0xD0
.byte 0x63, 0xF1, 0x47, 0xD0, 0x11, 0x51, 0x9D, 0x99
.byte 0x51, 0x57, 0x99, 0xB9, 0x50, 0xFF, 0x30, 0x99
.byte 0xC3, 0xC7, 0x98, 0x99, 0xC0, 0x08, 0xF9, 0x04
.byte 0x47, 0x90, 0x00, 0x80, 0x41, 0x30, 0xF7, 0xE7
.byte 0xF3, 0x21, 0xA6, 0x29, 0xF3, 0x27, 0x00, 0x61
.byte 0xE1, 0xE9, 0x00, 0x67, 0x90, 0x24, 0x62, 0x8F
.byte 0x4F, 0xFF, 0x40, 0x21, 0x62, 0x4F, 0xCF, 0x30
.byte 0xE8, 0x81, 0x27, 0x08, 0x27, 0x81, 0x51, 0xFC
.byte 0xF9, 0x5F, 0x63, 0x30, 0x86, 0xFF, 0x00, 0xF3
.byte 0x89, 0x99, 0x46, 0x00, 0x82, 0xAF, 0x2F, 0x81
.byte 0x02, 0x50, 0xF9, 0xF3, 0xD1, 0x27, 0x84, 0x57
.byte 0xE3, 0xF9, 0xD0, 0x24, 0x3F, 0xF9, 0xF1, 0xE1
.byte 0x99, 0x80, 0xF9, 0xF9, 0x00, 0xFC, 0x13, 0x81
.byte 0x9F, 0x83, 0xF9, 0x46, 0xA0, 0xF7, 0x9F, 0x83
.byte 0x69, 0x81, 0xE0, 0x01, 0xF0, 0x27, 0x2E, 0x0A
.byte 0x99, 0x27, 0x83, 0xB7, 0xC1, 0xF9, 0xF4, 0x70
.byte 0x63, 0x71, 0x27, 0x83, 0x47, 0x10, 0x4F, 0x49
.byte 0xF1, 0x33, 0x8F, 0xCF, 0x80, 0x44, 0x6B, 0x81
.byte 0xFF, 0x66, 0xB0, 0xE8, 0x8F, 0x61, 0x8D, 0x4F
.byte 0x8F, 0x30, 0x6E, 0xE7, 0x20, 0x86, 0xB3, 0xC0
.byte 0x67, 0x00, 0xA1, 0xFF, 0x41, 0xA7, 0x70, 0x3E
.byte 0x41, 0x43, 0x02, 0x47, 0x30, 0x32, 0xF7, 0x9F
.byte 0x9F, 0x51, 0x87, 0x93, 0xD2, 0x57, 0x93, 0x87
.byte 0x00, 0x2E, 0x10, 0x9F, 0x87, 0x2F, 0x81, 0x86
.byte 0x6F, 0x9F, 0xF0, 0x33, 0xEF, 0x91, 0x20, 0xA5
.byte 0x47, 0x90, 0xB7, 0xC3, 0xE7, 0xF5, 0x30, 0x8A
.byte 0xE1, 0xF0, 0x30, 0xF7, 0x93, 0xC7, 0x41, 0x94
.byte 0xAF, 0x8F, 0xF3, 0x00, 0x09, 0x9F, 0xF3, 0x47
.byte 0x90, 0xB1, 0x9C, 0x88, 0xFF, 0x02, 0x00, 0x47
.byte 0xA0, 0x11, 0xFC, 0x89, 0x81, 0x81, 0x91, 0x66
.byte 0x90, 0xEE, 0x99, 0x46, 0x20, 0x47, 0x60, 0x40
.byte 0x03, 0x2F, 0xF1, 0x04, 0x45, 0x90, 0x66, 0x30
.byte 0xF7, 0xC3, 0xF9, 0x34, 0xF7, 0xE7, 0xE7, 0x42
.byte 0xA1, 0x47, 0x20, 0x5F, 0xA7, 0x00, 0x52, 0xF1
.byte 0x9C, 0x9C, 0x4F, 0x88, 0x60, 0xA3, 0xF3, 0x01
.byte 0x4F, 0x99, 0xD0, 0x62, 0xFD, 0x47, 0xA0, 0x1F
.byte 0x83, 0x51, 0xAF, 0x81, 0xF3, 0x60, 0x03, 0xDE
.byte 0x86, 0xF0, 0xF0, 0x3F, 0x3F, 0x22, 0xE0, 0x27
.byte 0x0F, 0x05, 0xA7, 0xAF, 0xC0, 0x00, 0xA2, 0xAE
.byte 0x42, 0x22, 0xA7, 0xFF, 0x00, 0x00, 0x0D, 0x0F
.byte 0xFA, 0xA7, 0x44, 0x86, 0x47, 0xCF, 0x07, 0x8E
.byte 0x15, 0x00, 0x3F, 0xF9, 0x87, 0xC0, 0xFF, 0x00
.byte 0x0D, 0xFC, 0x47, 0xC0, 0x30, 0x27, 0x3A, 0xA2
.byte 0x42, 0x22, 0xEA, 0x47, 0xD0, 0x46, 0x00, 0xF5
.byte 0xE0, 0xE0, 0x46, 0x80, 0x82, 0x90, 0x90, 0x27
.byte 0x45, 0x47, 0x60, 0x57, 0x07, 0x07, 0xD0, 0x51
.byte 0x26, 0x26, 0x84, 0x47, 0xB0, 0x03, 0xA0, 0x47
.byte 0xC0, 0x05, 0xA0, 0x27, 0x5E, 0x44, 0xB0, 0x47
.byte 0x10, 0x0D, 0x1F, 0xF0, 0x26, 0x0D, 0xF8, 0xF7
.byte 0x67, 0xBF, 0x67, 0xAE, 0x79, 0x07, 0x7E, 0x86
.byte 0x50, 0xE8, 0xFE, 0x81, 0xF0, 0x0E, 0x2F, 0x9F
.byte 0x49, 0x66, 0x60, 0xA6, 0x90, 0x22, 0x64, 0x47
.byte 0x60, 0x67, 0x30, 0x60, 0x27, 0x3F, 0xE7, 0xE8

BIN
Source/Fonts/fontcgac.bin

Binary file not shown.

515
Source/Fonts/fontcgau.asm

@ -0,0 +1,515 @@
fontcgau:
.byte 0x18, 0x18, 0x18, 0xFF, 0xFF, 0x18, 0x18, 0x18
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC0, 0xC0, 0x30, 0x30, 0xC0, 0xC0, 0x30, 0x30
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x33, 0x33, 0xCC, 0xCC, 0x33, 0x33, 0xCC, 0xCC
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x33, 0x99, 0xCC, 0x66, 0x33, 0x99, 0xCC, 0x66
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xCC, 0xCC, 0x33, 0x33, 0xCC, 0xCC, 0x33, 0x33
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0xCC, 0xCC, 0x33, 0x33
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xCC, 0x99, 0x33, 0x66, 0xCC, 0x99, 0x33, 0x66
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x18, 0x18, 0x1F, 0x1F, 0x18, 0x18, 0x18
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x0F, 0x0F
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x18, 0x18, 0x1F, 0x1F, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0xF8, 0xF8, 0x18, 0x18, 0x18
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x1F, 0x1F, 0x18, 0x18, 0x18
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x18, 0x18, 0xFF, 0xFF, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x18, 0x18, 0x18
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x18, 0x18, 0xF8, 0xF8, 0x18, 0x18, 0x18
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x01, 0x03, 0x06, 0x6C, 0x78, 0x70, 0x60, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x18, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x66, 0x66, 0xFF, 0x66, 0xFF, 0x66, 0x66, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x3E, 0x60, 0x3C, 0x06, 0x7C, 0x18, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x62, 0x66, 0x0C, 0x18, 0x30, 0x66, 0x46, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x66, 0x3C, 0x38, 0x67, 0x66, 0x3F, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x06, 0x0C, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x0C, 0x18, 0x30, 0x30, 0x30, 0x18, 0x0C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x30, 0x18, 0x0C, 0x0C, 0x0C, 0x18, 0x30, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x66, 0x3C, 0xFF, 0x3C, 0x66, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x18, 0x18, 0x7E, 0x18, 0x18, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x03, 0x06, 0x0C, 0x18, 0x30, 0x60, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x66, 0x6E, 0x76, 0x66, 0x66, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x18, 0x38, 0x18, 0x18, 0x18, 0x7E, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x66, 0x06, 0x0C, 0x30, 0x60, 0x7E, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x66, 0x06, 0x1C, 0x06, 0x66, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x06, 0x0E, 0x1E, 0x66, 0x7F, 0x06, 0x06, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x7E, 0x60, 0x7C, 0x06, 0x06, 0x66, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x66, 0x60, 0x7C, 0x66, 0x66, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x7E, 0x66, 0x0C, 0x18, 0x18, 0x18, 0x18, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x66, 0x66, 0x3C, 0x66, 0x66, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x66, 0x66, 0x3E, 0x06, 0x66, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x18, 0x30
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x0E, 0x18, 0x30, 0x60, 0x30, 0x18, 0x0E, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7E, 0x00, 0x7E, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x70, 0x18, 0x0C, 0x06, 0x0C, 0x18, 0x70, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x66, 0x06, 0x0C, 0x18, 0x00, 0x18, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x66, 0x6E, 0x6E, 0x60, 0x62, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x18, 0x3C, 0x66, 0x7E, 0x66, 0x66, 0x66, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x7C, 0x66, 0x66, 0x7C, 0x66, 0x66, 0x7C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x66, 0x60, 0x60, 0x60, 0x66, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x78, 0x6C, 0x66, 0x66, 0x66, 0x6C, 0x78, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x7E, 0x60, 0x60, 0x78, 0x60, 0x60, 0x7E, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x7E, 0x60, 0x60, 0x78, 0x60, 0x60, 0x60, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x66, 0x60, 0x6E, 0x66, 0x66, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x66, 0x66, 0x66, 0x7E, 0x66, 0x66, 0x66, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x1E, 0x0C, 0x0C, 0x0C, 0x0C, 0x6C, 0x38, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x66, 0x6C, 0x78, 0x70, 0x78, 0x6C, 0x66, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x7E, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x63, 0x77, 0x7F, 0x6B, 0x63, 0x63, 0x63, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x66, 0x76, 0x7E, 0x7E, 0x6E, 0x66, 0x66, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x7C, 0x66, 0x66, 0x7C, 0x60, 0x60, 0x60, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x0E, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x7C, 0x66, 0x66, 0x7C, 0x78, 0x6C, 0x66, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x66, 0x60, 0x3C, 0x06, 0x66, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x7E, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x66, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x18, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x63, 0x63, 0x63, 0x6B, 0x7F, 0x77, 0x63, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x66, 0x66, 0x3C, 0x18, 0x3C, 0x66, 0x66, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x66, 0x66, 0x66, 0x3C, 0x18, 0x18, 0x18, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x7E, 0x06, 0x0C, 0x18, 0x30, 0x60, 0x7E, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x40, 0x60, 0x30, 0x18, 0x0C, 0x06, 0x02, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x18, 0x24, 0x42, 0x42, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x30, 0x18, 0x0C, 0x04, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x3C, 0x06, 0x3E, 0x66, 0x3E, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x60, 0x60, 0x7C, 0x66, 0x66, 0x7C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x3C, 0x60, 0x60, 0x60, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x06, 0x06, 0x3E, 0x66, 0x66, 0x3E, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x3C, 0x66, 0x7E, 0x60, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x0E, 0x18, 0x3E, 0x18, 0x18, 0x18, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x3E, 0x66, 0x66, 0x3E, 0x06, 0x7C
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x60, 0x60, 0x7C, 0x66, 0x66, 0x66, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x18, 0x00, 0x38, 0x18, 0x18, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x3C
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x60, 0x60, 0x6C, 0x78, 0x6C, 0x66, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x66, 0x7F, 0x7F, 0x6B, 0x63, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0x66, 0x66, 0x66, 0x66, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x3C, 0x66, 0x66, 0x66, 0x3C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0x66, 0x66, 0x7C, 0x60, 0x60
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x3E, 0x66, 0x66, 0x3E, 0x06, 0x06
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7C, 0x66, 0x60, 0x60, 0x60, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x3E, 0x60, 0x3C, 0x06, 0x7C, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x18, 0x7E, 0x18, 0x18, 0x18, 0x0E, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3E, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x66, 0x66, 0x66, 0x3C, 0x18, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x63, 0x6B, 0x7F, 0x3E, 0x36, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x66, 0x3C, 0x18, 0x3C, 0x66, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x66, 0x66, 0x66, 0x3E, 0x0C, 0x78
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x7E, 0x0C, 0x18, 0x30, 0x7E, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x0C, 0x10, 0x10, 0x20, 0x10, 0x10, 0x0C
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x18, 0x04, 0x04, 0x02, 0x04, 0x04, 0x18
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x32, 0x4C, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xF0, 0xF0, 0xF0, 0xF0, 0x0F, 0x0F, 0x0F, 0x0F
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0x99, 0x91, 0x91, 0x9F, 0x99, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xC3, 0xF9, 0xC1, 0x99, 0xC1, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0x9F, 0x9F, 0x83, 0x99, 0x99, 0x83, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xC3, 0x9F, 0x9F, 0x9F, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xF9, 0xF9, 0xC1, 0x99, 0x99, 0xC1, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xC3, 0x99, 0x81, 0x9F, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xF1, 0xE7, 0xC1, 0xE7, 0xE7, 0xE7, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xC1, 0x99, 0x99, 0xC1, 0xF9, 0x83
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0x9F, 0x9F, 0x83, 0x99, 0x99, 0x99, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xE7, 0xFF, 0xC7, 0xE7, 0xE7, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xF9, 0xFF, 0xF9, 0xF9, 0xF9, 0xF9, 0xC3
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0x9F, 0x9F, 0x93, 0x87, 0x93, 0x99, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xC7, 0xE7, 0xE7, 0xE7, 0xE7, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0x99, 0x80, 0x80, 0x94, 0x9C, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0x83, 0x99, 0x99, 0x99, 0x99, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xC3, 0x99, 0x99, 0x99, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0x83, 0x99, 0x99, 0x83, 0x9F, 0x9F
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xC1, 0x99, 0x99, 0xC1, 0xF9, 0xF9
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0x83, 0x99, 0x9F, 0x9F, 0x9F, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xC1, 0x9F, 0xC3, 0xF9, 0x83, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xE7, 0x81, 0xE7, 0xE7, 0xE7, 0xF1, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0x99, 0x99, 0x99, 0x99, 0xC1, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0x99, 0x99, 0x99, 0xC3, 0xE7, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0x9C, 0x94, 0x80, 0xC1, 0xC9, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0x99, 0xC3, 0xE7, 0xC3, 0x99, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0x99, 0x99, 0x99, 0xC1, 0xF3, 0x87
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0x81, 0xF3, 0xE7, 0xCF, 0x81, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0xCF, 0xCF, 0xCF, 0xCF, 0xCF, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xF3, 0xED, 0xCF, 0x83, 0xCF, 0x9D, 0x03, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xE7, 0xC3, 0x81, 0xE7, 0xE7, 0xE7, 0xE7
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xEF, 0xCF, 0x80, 0x80, 0xCF, 0xEF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xE7, 0xE7, 0xE7, 0xE7, 0xFF, 0xFF, 0xE7, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x99, 0x99, 0x99, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x99, 0x99, 0x00, 0x99, 0x00, 0x99, 0x99, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xE7, 0xC1, 0x9F, 0xC3, 0xF9, 0x83, 0xE7, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x9D, 0x99, 0xF3, 0xE7, 0xCF, 0x99, 0xB9, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0x99, 0xC3, 0xC7, 0x98, 0x99, 0xC0, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xF9, 0xF3, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xF3, 0xE7, 0xCF, 0xCF, 0xCF, 0xE7, 0xF3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xCF, 0xE7, 0xF3, 0xF3, 0xF3, 0xE7, 0xCF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0x99, 0xC3, 0x00, 0xC3, 0x99, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xE7, 0xE7, 0x81, 0xE7, 0xE7, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xE7, 0xCF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xE7, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFC, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0x99, 0x91, 0x89, 0x99, 0x99, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xE7, 0xE7, 0xC7, 0xE7, 0xE7, 0xE7, 0x81, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0x99, 0xF9, 0xF3, 0xCF, 0x9F, 0x81, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0x99, 0xF9, 0xE3, 0xF9, 0x99, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xF9, 0xF1, 0xE1, 0x99, 0x80, 0xF9, 0xF9, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x81, 0x9F, 0x83, 0xF9, 0xF9, 0x99, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0x99, 0x9F, 0x83, 0x99, 0x99, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x81, 0x99, 0xF3, 0xE7, 0xE7, 0xE7, 0xE7, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0x99, 0x99, 0xC3, 0x99, 0x99, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0x99, 0x99, 0xC1, 0xF9, 0x99, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xE7, 0xE7, 0xCF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xF1, 0xE7, 0xCF, 0x9F, 0xCF, 0xE7, 0xF1, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0x81, 0xFF, 0x81, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x8F, 0xE7, 0xF3, 0xF9, 0xF3, 0xE7, 0x8F, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0x99, 0xF9, 0xF3, 0xE7, 0xFF, 0xE7, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xE7, 0xC3, 0x99, 0x81, 0x99, 0x99, 0x99, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x83, 0x99, 0x99, 0x83, 0x99, 0x99, 0x83, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0x99, 0x9F, 0x9F, 0x9F, 0x99, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x87, 0x93, 0x99, 0x99, 0x99, 0x93, 0x87, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x81, 0x9F, 0x9F, 0x87, 0x9F, 0x9F, 0x81, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x81, 0x9F, 0x9F, 0x87, 0x9F, 0x9F, 0x9F, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0x99, 0x9F, 0x91, 0x99, 0x99, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x99, 0x99, 0x99, 0x81, 0x99, 0x99, 0x99, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xE1, 0xF3, 0xF3, 0xF3, 0xF3, 0x93, 0xC7, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x99, 0x93, 0x87, 0x8F, 0x87, 0x93, 0x99, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x9F, 0x9F, 0x9F, 0x9F, 0x9F, 0x9F, 0x81, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x9C, 0x88, 0x80, 0x94, 0x9C, 0x9C, 0x9C, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x99, 0x89, 0x81, 0x81, 0x91, 0x99, 0x99, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0x99, 0x99, 0x99, 0x99, 0x99, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x83, 0x99, 0x99, 0x83, 0x9F, 0x9F, 0x9F, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0x99, 0x99, 0x99, 0x99, 0xC3, 0xF1, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x83, 0x99, 0x99, 0x83, 0x87, 0x93, 0x99, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xC3, 0x99, 0x9F, 0xC3, 0xF9, 0x99, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x81, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0xC3, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x99, 0x99, 0x99, 0x99, 0x99, 0xC3, 0xE7, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x9C, 0x9C, 0x9C, 0x94, 0x80, 0x88, 0x9C, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x99, 0x99, 0xC3, 0xE7, 0xC3, 0x99, 0x99, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x99, 0x99, 0x99, 0xC3, 0xE7, 0xE7, 0xE7, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x81, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x81, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xE7, 0xE7, 0xE7, 0x00, 0x00, 0xE7, 0xE7, 0xE7
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3F, 0x3F, 0xCF, 0xCF, 0x3F, 0x3F, 0xCF, 0xCF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xCC, 0xCC, 0x33, 0x33, 0xCC, 0xCC, 0x33, 0x33
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xCC, 0x66, 0x33, 0x99, 0xCC, 0x66, 0x33, 0x99
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x33, 0x33, 0xCC, 0xCC, 0x33, 0x33, 0xCC, 0xCC
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0x33, 0x33, 0xCC, 0xCC
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x33, 0x66, 0xCC, 0x99, 0x33, 0x66, 0xCC, 0x99
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xE7, 0xE7, 0xE7, 0xE0, 0xE0, 0xE7, 0xE7, 0xE7
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0xF0, 0xF0
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xE7, 0xE7, 0xE7, 0xE0, 0xE0, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0x07, 0x07, 0xE7, 0xE7, 0xE7
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0xE0, 0xE0, 0xE7, 0xE7, 0xE7
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xE7, 0xE7, 0xE7, 0x00, 0x00, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xE7, 0xE7, 0xE7
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xE7, 0xE7, 0xE7, 0x07, 0x07, 0xE7, 0xE7, 0xE7
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFE, 0xFC, 0xF9, 0x93, 0x87, 0x8F, 0x9F, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xF0, 0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0xE7, 0xE7, 0xE7, 0x07, 0x07, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x0F, 0x0F, 0x0F, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00

59
Source/HBIOS/Config/MBC_ddw.asm

@ -0,0 +1,59 @@
;
;==================================================================================================
; MBC CONFIGURATION
;==================================================================================================
;
; THE COMPLETE SET OF DEFAULT CONFIGURATION SETTINGS FOR THIS PLATFORM ARE FOUND IN THE
; CFG_<PLT>.ASM INCLUDED FILE WHICH IS FOUND IN THE PARENT DIRECTORY. THIS FILE CONTAINS
; COMMON CONFIGURATION SETTINGS THAT OVERRIDE THE DEFAULTS. IT IS INTENDED THAT YOU MAKE
; YOUR CUSTOMIZATIONS IN THIS FILE AND JUST INHERIT ALL OTHER SETTINGS FROM THE DEFAULTS.
; EVEN BETTER, YOU CAN MAKE A COPY OF THIS FILE WITH A NAME LIKE <PLT>_XXX.ASM AND SPECIFY
; YOUR FILE IN THE BUILD PROCESS.
;
; THE SETTINGS BELOW ARE THE SETTINGS THAT ARE MOST COMMONLY MODIFIED FOR THIS PLATFORM.
; MANY OF THEM ARE EQUAL TO THE SETTINGS IN THE INCLUDED FILE, SO THEY DON'T REALLY DO
; ANYTHING AS IS. THEY ARE LISTED HERE TO MAKE IT EASY FOR YOU TO ADJUST THE MOST COMMON
; SETTINGS.
;
; N.B., SINCE THE SETTINGS BELOW ARE REDEFINING VALUES ALREADY SET IN THE INCLUDED FILE,
; TASM INSISTS THAT YOU USE THE .SET OPERATOR AND NOT THE .EQU OPERATOR BELOW. ATTEMPTING
; TO REDEFINE A VALUE WITH .EQU BELOW WILL CAUSE TASM ERRORS!
;
; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO
; DIRECTORIES ABOVE THIS ONE).
;
#DEFINE PLATFORM_NAME "Multi Board Computer"
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
;
#include "cfg_mbc.asm"
;
CPUOSC .EQU 4000000 ; CPU OSC FREQ IN MHZ
;
BATCOND .SET FALSE
;
PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM)
;
DSKYENABLE .SET TRUE ; ENABLES DSKY
DSKYMODE .SET DSKYMODE_NG ; DSKY VERTSION: DSKYMODE_[V1|NG]
DSKYOSC .SET 1000000
;
FDENABLE .EQU TRUE ; FD: ENABLE FLOPPY DISK DRIVER (FD.ASM)
;DIAGLVL .EQU DL_VERBOSE
DMAENABLE .EQU TRUE ; DMA: ENABLE DMA DRIVER (DMA.ASM)
DMABASE .EQU $E0 ; DMA: DMA BASE ADDRESS
DMAMODE .EQU DMAMODE_MBC ; DMA: DMA MODE (NONE|ECB|Z180|Z280|RC|MBC)
CVDUMODE .EQU CVDUMODE_MBC ; CVDU: CVDU MODE: CVDUMODE_[NONE|ECB|MBC]
CVDUMON .EQU CVDUMON_CGA ; CVDU: CVDU MONITOR SETUP: CVDUMON_[NONE|CGA|EGA]
INTMODE .SET 2
CTCENABLE .SET TRUE ; ENABLE ZILOG CTC SUPPORT
AY38910ENABLE .EQU TRUE ; AY: AY-3-8910 / YM2149 SOUND DRIVER
AY_CLK .EQU CPUOSC / 2 ; DEFAULT TO CPUOSC / 4
AYMODE .EQU AYMODE_MBC ; AY: DRIVER MODE: AYMODE_[SCG|N8|RCZ80|RCZ180|MSX|LINC]
TMSENABLE .EQU TRUE ; TMS: ENABLE TMS9918 VIDEO/KBD DRIVER (TMS.ASM)
TMSMODE .EQU TMSMODE_MBC ; TMS: DRIVER MODE: TMSMODE_[SCG|MBC|N8|RC|RCV9958|RCKBD]

39
Source/HBIOS/Config/RPH_ddw.asm

@ -0,0 +1,39 @@
;
;==================================================================================================
; RPH STANDARD CONFIGURATION
;==================================================================================================
;
; THE COMPLETE SET OF DEFAULT CONFIGURATION SETTINGS FOR THIS PLATFORM ARE FOUND IN THE
; CFG_<PLT>.ASM INCLUDED FILE WHICH IS FOUND IN THE PARENT DIRECTORY. THIS FILE CONTAINS
; COMMON CONFIGURATION SETTINGS THAT OVERRIDE THE DEFAULTS. IT IS INTENDED THAT YOU MAKE
; YOUR CUSTOMIZATIONS IN THIS FILE AND JUST INHERIT ALL OTHER SETTINGS FROM THE DEFAULTS.
; EVEN BETTER, YOU CAN MAKE A COPY OF THIS FILE WITH A NAME LIKE <PLT>_XXX.ASM AND SPECIFY
; YOUR FILE IN THE BUILD PROCESS.
;
; THE SETTINGS BELOW ARE THE SETTINGS THAT ARE MOST COMMONLY MODIFIED FOR THIS PLATFORM.
; MANY OF THEM ARE EQUAL TO THE SETTINGS IN THE INCLUDED FILE, SO THEY DON'T REALLY DO
; ANYTHING AS IS. THEY ARE LISTED HERE TO MAKE IT EASY FOR YOU TO ADJUST THE MOST COMMON
; SETTINGS.
;
; N.B., SINCE THE SETTINGS BELOW ARE REDEFINING VALUES ALREADY SET IN THE INCLUDED FILE,
; TASM INSISTS THAT YOU USE THE .SET OPERATOR AND NOT THE .EQU OPERATOR BELOW. ATTEMPTING
; TO REDEFINE A VALUE WITH .EQU BELOW WILL CAUSE TASM ERRORS!
;
; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO
; DIRECTORIES ABOVE THIS ONE).
;
#DEFINE BOOT_DEFAULT "H" ; DEFAULT BOOT LOADER CMD ON <CR> OR AUTO BOOT
;
#include "cfg_rph.asm"
;
CPUOSC .SET 18432000 ; CPU OSC FREQ IN MHZ
;
INTMODE .SET 0 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2, 3=MODE 3 (Z280)
;
Z180_CLKDIV .SET 1 ; Z180: CHK DIV: 0=OSC/2, 1=OSC, 2=OSC*2
Z180_MEMWAIT .SET 0 ; Z180: MEMORY WAIT STATES (0-3)
Z180_IOWAIT .SET 1 ; Z180: I/O WAIT STATES TO ADD ABOVE 1 W/S BUILT-IN (0-3)
;
CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP
;
PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM)

2
Source/HBIOS/Config/RPH_std.asm

@ -36,4 +36,4 @@ Z180_IOWAIT .SET 1 ; Z180: I/O WAIT STATES TO ADD ABOVE 1 W/S BUILT-IN (0-3)
;
CRTACT .SET FALSE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP
;
PPIDEENABLE .SET FALSE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM)
PPIDEENABLE .SET TRUE ; PPIDE: ENABLE PARALLEL PORT IDE DISK DRIVER (PPIDE.ASM)

BIN
Source/HBIOS/RPH_ddw.upd

Binary file not shown.

2
Source/HBIOS/cfg_mbc.asm

@ -143,7 +143,7 @@ CVDUMODE .EQU CVDUMODE_MBC ; CVDU: CVDU MODE: CVDUMODE_[NONE|ECB|MBC]
CVDUMON .EQU CVDUMON_CGA ; CVDU: CVDU MONITOR SETUP: CVDUMON_[NONE|CGA|EGA]
NECENABLE .EQU FALSE ; NEC: ENABLE NEC UPD7220 VIDEO/KBD DRIVER (NEC.ASM)
TMSENABLE .EQU FALSE ; TMS: ENABLE TMS9918 VIDEO/KBD DRIVER (TMS.ASM)
TMSMODE .EQU TMSMODE_SCG ; TMS: DRIVER MODE: TMSMODE_[SCG|N8|RC|RCV9958|RCKBD]
TMSMODE .EQU TMSMODE_SCG ; TMS: DRIVER MODE: TMSMODE_[SCG|N8|MBC|RC|RCV9958|RCKBD]
TMSTIMENABLE .EQU FALSE ; TMS: ENABLE TIMER INTERRUPTS (REQUIRES IM1)
VGAENABLE .EQU FALSE ; VGA: ENABLE VGA VIDEO/KBD DRIVER (VGA.ASM)
VGASIZ .EQU V80X25 ; VGA: DISPLAY FORMAT [V80X25|V80X30|V80X43]

1
Source/HBIOS/std.asm

@ -212,6 +212,7 @@ TMSMODE_N8 .EQU 2 ; N8 BUILT-IN VIDEO
TMSMODE_RC .EQU 3 ; RC2014 TMS9918 VIDEO BOARD
TMSMODE_RCV9958 .EQU 4 ; RC2014 V9958 VIDEO BOARD
TMSMODE_RCKBD .EQU 5 ; RC2014 TMS9918 + PS2 KEYBOARD
TMSMODE_MBC .EQU 6 ; MBC V9938/58 VIDEO BOARD
;
; CVDU VIDEO MODE SELECTIONS
;

25
Source/HBIOS/tms.asm

@ -63,9 +63,21 @@ TMS_PPIX .EQU 0 ; PPI CONTROL PORT
#ENDIF
;
#IF (TMSMODE == TMSMODE_MBC)
TMS_DATREG .EQU $98 ; READ/WRITE DATA
TMS_CMDREG .EQU $99 ; READ STATUS / WRITE REG SEL
TMS_ACR .EQU $9C ; AUX CONTROL REGISTER
TMS_PPIA .EQU 0 ; PPI PORT A
TMS_PPIB .EQU 0 ; PPI PORT B
TMS_PPIC .EQU 0 ; PPI PORT C
TMS_PPIX .EQU 0 ; PPI CONTROL PORT
#ENDIF
TMS_ROWS .EQU 24
#IF (TMSMODE == TMSMODE_RCV9958)
#IF ((TMSMODE == TMSMODE_RCV9958) | (TMSMODE == TMSMODE_MBC))
TMS_FNTVADDR .EQU $1000 ; VRAM ADDRESS OF FONT DATA
TMS_COLS .EQU 80
#ELSE
@ -86,7 +98,7 @@ TERMENABLE .SET TRUE ; INCLUDE TERMINAL PSEUDODEVICE DRIVER
#DEFINE TMS_IODELAY EX (SP),HL \ EX (SP),HL ; 38 W/S
#ELSE
; BELOW WAS TUNED FOR SBC AT 8MHZ
#IF (TMSMODE == TMSMODE_RCV9958)
#IF ((TMSMODE == TMSMODE_RCV9958) | (TMSMODE == TMSMODE_MBC))
#DEFINE TMS_IODELAY NOP \ NOP \ NOP \ NOP \ NOP \ NOP \ NOP ; V9958 NEEDS AT WORST CASE, APPROX 4us (28T) DELAY BETWEEN I/O (WHEN IN TEXT MODE)
#ELSE
#DEFINE TMS_IODELAY NOP \ NOP ; 8 W/S
@ -110,7 +122,7 @@ TMS_INIT:
CALL TMS_Z180IO
#ENDIF
;
#IF (TMSMODE == TMSMODE_SCG)
#IF ((TMSMODE == TMSMODE_SCG) | (TMSMODE == TMSMODE_MBC))
LD A,$FF
OUT (TMS_ACR),A ; INIT AUX CONTROL REG
#ENDIF
@ -122,6 +134,9 @@ TMS_INIT:
#IF (TMSMODE == TMSMODE_SCG)
PRTS("SCG$")
#ENDIF
#IF (TMSMODE == TMSMODE_MBC)
PRTS("MBC$")
#ENDIF
#IF (TMSMODE == TMSMODE_N8)
PRTS("N8$")
#ENDIF
@ -412,7 +427,7 @@ TMS_SET:
;----------------------------------------------------------------------
;
TMS_WR:
#IF (TMSMODE == TMSMODE_RCV9958)
#IF ((TMSMODE == TMSMODE_RCV9958) | (TMSMODE == TMSMODE_MBC))
; CLEAR R#14 FOR V9958
XOR A
OUT (TMS_CMDREG), A
@ -954,7 +969,7 @@ TMS_PORTS:
; 5S Fifth sprite (not displayed) detected. Value in FS* is valid.
; INT Set at each screen update, used for interrupts.
;
#IF (TMSMODE == TMSMODE_RCV9958)
#IF ((TMSMODE == TMSMODE_RCV9958) | (TMSMODE == TMSMODE_MBC))
TMS_INITVDU:
.DB $04 ; REG 0 - NO EXTERNAL VID, SET M4 = 1
TMS_INITVDU_REG_1:

1
Source/Images/blank144

File diff suppressed because one or more lines are too long

1
Source/Images/blankhd1024

File diff suppressed because one or more lines are too long

1
Source/Images/blankhd512

File diff suppressed because one or more lines are too long

BIN
Source/Images/fd144_cpm22.img

Binary file not shown.

BIN
Source/Images/fd144_cpm3.img

Binary file not shown.

BIN
Source/Images/fd144_nzcom.img

Binary file not shown.

16559
Source/Images/fd144_ws4.img

File diff suppressed because one or more lines are too long

BIN
Source/Images/fd144_zpm3.img

Binary file not shown.

BIN
Source/Images/fd144_zsdos.img

Binary file not shown.

BIN
Source/Images/hd1024_combo.img

Binary file not shown.

BIN
Source/Images/hd1024_cpm22.img

Binary file not shown.

BIN
Source/Images/hd1024_cpm3.img

Binary file not shown.

BIN
Source/Images/hd1024_nzcom.img

Binary file not shown.

16559
Source/Images/hd1024_ws4.img

File diff suppressed because one or more lines are too long

BIN
Source/Images/hd1024_zpm3.img

Binary file not shown.

BIN
Source/Images/hd1024_zsdos.img

Binary file not shown.

BIN
Source/Images/hd512_combo.img

Binary file not shown.

BIN
Source/Images/hd512_cpm22.img

Binary file not shown.

BIN
Source/Images/hd512_cpm3.img

Binary file not shown.

BIN
Source/Images/hd512_dos65.img

Binary file not shown.

BIN
Source/Images/hd512_nzcom.img

Binary file not shown.

16558
Source/Images/hd512_ws4.img

File diff suppressed because one or more lines are too long

BIN
Source/Images/hd512_zpm3.img

Binary file not shown.

BIN
Source/Images/hd512_zsdos.img

Binary file not shown.

BIN
Source/RomDsk/rom1024_una.dat

Binary file not shown.

BIN
Source/RomDsk/rom1024_wbw.dat

Binary file not shown.

0
Source/RomDsk/rom128_una.dat

0
Source/RomDsk/rom128_wbw.dat

BIN
Source/RomDsk/rom256_una.dat

Binary file not shown.

BIN
Source/RomDsk/rom256_wbw.dat

Binary file not shown.

BIN
Source/RomDsk/rom512_una.dat

Binary file not shown.

BIN
Source/RomDsk/rom512_wbw.dat

Binary file not shown.

BIN
Source/ZPM3/autotog.com

Binary file not shown.

BIN
Source/ZPM3/clrhist.com

Binary file not shown.

BIN
Source/ZPM3/cpmldr.com

Binary file not shown.

BIN
Source/ZPM3/setz3.com

Binary file not shown.

9
Tools/unix/zxcc/config.h

@ -0,0 +1,9 @@
#define HAVE_DIRENT_H
#define HAVE_UTIME_H
#define HAVE_FCNTL_H
#define HAVE_SYS_VFS_H
#define HAVE_UNISTD_H
#define HAVE_STRING_H
#define HAVE_STDLIB_H
#define LINUX
//#define FILETRACKER 1

BIN
Tools/unix/zxcc/zxcc

Binary file not shown.
Loading…
Cancel
Save