mirror of
https://github.com/MiSTer-devel/MultiComp_MiSTer.git
synced 2026-04-19 03:04:38 +00:00
- work on basic/interpreter option for for Z80/CPM
- add warm/cold reset option for the 6809 - add tools and docs to build 6809 interpreter - revert the basMon files
This commit is contained in:
@@ -1,325 +1,345 @@
|
||||
-- This file is copyright by Grant Searle 2014
|
||||
-- You are free to use this file in your own projects but must never charge for it nor use it without
|
||||
-- acknowledgement.
|
||||
-- Please ask permission from Grant Searle before republishing elsewhere.
|
||||
-- If you use this file or any part of it, please add an acknowledgement to myself and
|
||||
-- a link back to my main web site http://searle.hostei.com/grant/
|
||||
-- and to the "multicomp" page at http://searle.hostei.com/grant/Multicomp/index.html
|
||||
--
|
||||
-- Please check on the above web pages to see if there are any updates before using this file.
|
||||
-- If for some reason the page is no longer available, please search for "Grant Searle"
|
||||
-- on the internet to see if I have moved to another web hosting service.
|
||||
--
|
||||
-- Grant Searle
|
||||
-- eMail address available on my main web page link above.
|
||||
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all;
|
||||
use IEEE.STD_LOGIC_ARITH.all;
|
||||
use IEEE.STD_LOGIC_UNSIGNED.all;
|
||||
|
||||
entity Microcomputer6502Basic is
|
||||
port(
|
||||
N_RESET : in std_logic;
|
||||
clk : in std_logic;
|
||||
baud_increment : in std_logic_vector(15 downto 0);
|
||||
|
||||
sramData : inout std_logic_vector(7 downto 0);
|
||||
sramAddress : out std_logic_vector(15 downto 0);
|
||||
n_sRamWE : out std_logic;
|
||||
n_sRamCS : out std_logic;
|
||||
n_sRamOE : out std_logic;
|
||||
n_sRamLB : out std_logic;
|
||||
n_sRamUB : out std_logic;
|
||||
|
||||
rxd1 : in std_logic;
|
||||
txd1 : out std_logic;
|
||||
rts1 : out std_logic;
|
||||
cts1 : in std_logic; -- Added CTS input
|
||||
|
||||
rxd2 : in std_logic;
|
||||
txd2 : out std_logic;
|
||||
rts2 : out std_logic;
|
||||
|
||||
videoSync : out std_logic;
|
||||
video : out std_logic;
|
||||
|
||||
R : out std_logic_vector(1 downto 0);
|
||||
G : out std_logic_vector(1 downto 0);
|
||||
B : out std_logic_vector(1 downto 0);
|
||||
HS : out std_logic;
|
||||
VS : out std_logic;
|
||||
hBlank : out std_logic;
|
||||
vBlank : out std_logic;
|
||||
cepix : out std_logic;
|
||||
|
||||
ps2Clk : in std_logic;
|
||||
ps2Data : in std_logic;
|
||||
|
||||
sdCS : out std_logic;
|
||||
sdMOSI : out std_logic;
|
||||
sdMISO : in std_logic;
|
||||
sdSCLK : out std_logic;
|
||||
sd_ctrl_sel : in std_logic;
|
||||
driveLED : out std_logic :='1'
|
||||
);
|
||||
end Microcomputer6502Basic;
|
||||
|
||||
architecture struct of Microcomputer6502Basic is
|
||||
|
||||
signal n_WR : std_logic;
|
||||
signal n_RD : std_logic;
|
||||
signal cpuAddress : std_logic_vector(15 downto 0);
|
||||
signal cpuDataOut : std_logic_vector(7 downto 0);
|
||||
signal cpuDataIn : std_logic_vector(7 downto 0);
|
||||
|
||||
signal basRomData : std_logic_vector(7 downto 0);
|
||||
signal internalRam1DataOut : std_logic_vector(7 downto 0);
|
||||
signal internalRam2DataOut : std_logic_vector(7 downto 0);
|
||||
signal interface1DataOut : std_logic_vector(7 downto 0);
|
||||
signal interface2DataOut : std_logic_vector(7 downto 0);
|
||||
signal sdCardDataOut : std_logic_vector(7 downto 0);
|
||||
|
||||
signal n_memWR : std_logic :='1';
|
||||
signal n_memRD : std_logic :='1';
|
||||
|
||||
signal n_ioWR : std_logic :='1';
|
||||
signal n_ioRD : std_logic :='1';
|
||||
|
||||
signal n_MREQ : std_logic :='1';
|
||||
signal n_IORQ : std_logic :='1';
|
||||
|
||||
signal n_int1 : std_logic :='1';
|
||||
signal n_int2 : std_logic :='1';
|
||||
|
||||
signal n_externalRamCS : std_logic :='1';
|
||||
signal n_internalRam1CS : std_logic :='1';
|
||||
signal n_internalRam2CS : std_logic :='1';
|
||||
signal n_basRomCS : std_logic :='1';
|
||||
signal n_interface1CS : std_logic :='1';
|
||||
signal n_interface2CS : std_logic :='1';
|
||||
signal n_sdCardCS : std_logic :='1';
|
||||
|
||||
signal sdCardDataOut_sd : std_logic_vector(7 downto 0);
|
||||
signal sdCardDataOut_img : std_logic_vector(7 downto 0);
|
||||
signal driveLED_sd, driveLED_img : std_logic;
|
||||
signal sdMISO_int : std_logic; -- Add this signal declaration
|
||||
|
||||
signal serialClkCount : unsigned(15 downto 0);
|
||||
signal cpuClkCount : std_logic_vector(5 downto 0);
|
||||
signal sdClkCount : std_logic_vector(5 downto 0);
|
||||
signal cpuClock : std_logic;
|
||||
signal serialClock : std_logic;
|
||||
signal sdClock : std_logic;
|
||||
|
||||
begin
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- CPU CHOICE GOES HERE
|
||||
|
||||
cpu1 : entity work.T65
|
||||
port map(
|
||||
Enable => '1',
|
||||
Mode => "00",
|
||||
Res_n => N_RESET,
|
||||
Clk => cpuClock,
|
||||
Rdy => '1',
|
||||
Abort_n => '1',
|
||||
IRQ_n => '1',
|
||||
NMI_n => '1',
|
||||
SO_n => '1',
|
||||
R_W_n => n_WR,
|
||||
A(15 downto 0) => cpuAddress,
|
||||
DI => cpuDataIn,
|
||||
DO => cpuDataOut
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- ROM GOES HERE
|
||||
|
||||
rom1 : entity work.M6502_BASIC_ROM -- 8KB BASIC
|
||||
port map(
|
||||
address => cpuAddress(12 downto 0),
|
||||
clock => clk,
|
||||
q => basRomData
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- RAM GOES HERE
|
||||
|
||||
ram1: entity work.InternalRam64K
|
||||
port map
|
||||
(
|
||||
address => cpuAddress(15 downto 0),
|
||||
clock => clk,
|
||||
data => cpuDataOut,
|
||||
wren => not(n_memWR or n_internalRam1CS),
|
||||
q => internalRam1DataOut
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- INPUT/OUTPUT DEVICES GO HERE
|
||||
|
||||
io1 : entity work.SBCTextDisplayRGB
|
||||
port map (
|
||||
n_reset => N_RESET,
|
||||
clk => clk,
|
||||
|
||||
-- RGB video signals
|
||||
hSync => HS,
|
||||
vSync => VS,
|
||||
videoR0 => R(1),
|
||||
videoR1 => R(0),
|
||||
videoG0 => G(1),
|
||||
videoG1 => G(0),
|
||||
videoB0 => B(1),
|
||||
videoB1 => B(0),
|
||||
hBlank => hBlank,
|
||||
vBlank => vBlank,
|
||||
cepix => cepix,
|
||||
|
||||
-- Monochrome video signals (when using TV timings only)
|
||||
sync => videoSync,
|
||||
video => video,
|
||||
|
||||
n_wr => n_interface1CS or cpuClock or n_WR,
|
||||
n_rd => n_interface1CS or cpuClock or (not n_WR),
|
||||
n_int => n_int1,
|
||||
regSel => cpuAddress(0),
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => interface1DataOut,
|
||||
ps2Clk => ps2Clk,
|
||||
ps2Data => ps2Data
|
||||
);
|
||||
|
||||
io2 : entity work.bufferedUART
|
||||
port map(
|
||||
clk => clk,
|
||||
n_wr => n_interface2CS or cpuClock or n_WR,
|
||||
n_rd => n_interface2CS or cpuClock or (not n_WR),
|
||||
n_int => n_int2,
|
||||
regSel => cpuAddress(0),
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => interface2DataOut,
|
||||
rxClock => serialClock,
|
||||
txClock => serialClock,
|
||||
rxd => rxd1,
|
||||
txd => txd1,
|
||||
n_cts => cts1, -- Connect CTS signal
|
||||
n_dcd => '0',
|
||||
n_rts => rts1
|
||||
);
|
||||
|
||||
sd1 : entity work.sd_controller
|
||||
port map(
|
||||
sdCS => sdCS,
|
||||
sdMOSI => sdMOSI,
|
||||
sdMISO => sdMISO_int,
|
||||
sdSCLK => sdSCLK,
|
||||
n_wr => n_sdCardCS or cpuClock or n_WR,
|
||||
n_rd => n_sdCardCS or cpuClock or (not n_WR),
|
||||
n_reset => n_reset,
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => sdCardDataOut_sd,
|
||||
regAddr => cpuAddress(2 downto 0),
|
||||
driveLED => driveLED_sd,
|
||||
clk => sdClock -- twice the spi clk
|
||||
);
|
||||
|
||||
-- Add signal assignment outside port map:
|
||||
sdMISO_int <= sdMISO when sd_ctrl_sel = '0' else '1';
|
||||
|
||||
-- New image controller
|
||||
img1 : entity work.image_controller
|
||||
port map(
|
||||
clk => clk,
|
||||
n_reset => N_RESET,
|
||||
n_rd => n_sdCardCS or n_ioRD,
|
||||
n_wr => n_sdCardCS or n_ioWR,
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => sdCardDataOut_img,
|
||||
regAddr => cpuAddress(2 downto 0),
|
||||
driveLED => driveLED_img
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- MEMORY READ/WRITE LOGIC GOES HERE
|
||||
|
||||
n_memRD <= not(cpuClock) nand n_WR;
|
||||
n_memWR <= not(cpuClock) nand (not n_WR);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- CHIP SELECTS GO HERE
|
||||
|
||||
n_basRomCS <= '0' when cpuAddress(15 downto 13) = "111" else '1'; --8K at top of memory
|
||||
n_interface1CS <= '0' when cpuAddress(15 downto 1) = "111111111101000" else '1'; -- 2 bytes FFD0-FFD1
|
||||
n_interface2CS <= '0' when cpuAddress(15 downto 1) = "111111111101001" else '1'; -- 2 bytes FFD2-FFD3
|
||||
n_sdCardCS <= '0' when cpuAddress(15 downto 3) = "1111111111011" else '1'; -- 8 bytes FFD8-FFDF
|
||||
n_internalRam1CS <= not n_basRomCS; -- Full Internal RAM - 64 K
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- BUS ISOLATION GOES HERE
|
||||
-- Mux controller outputs based on selection
|
||||
sdCardDataOut <= sdCardDataOut_img when sd_ctrl_sel = '1' else
|
||||
sdCardDataOut_sd;
|
||||
|
||||
driveLED <= driveLED_img when sd_ctrl_sel = '1' else
|
||||
driveLED_sd;
|
||||
|
||||
|
||||
cpuDataIn <=
|
||||
interface1DataOut when n_interface1CS = '0' else
|
||||
interface2DataOut when n_interface2CS = '0' else
|
||||
sdCardDataOut when n_sdCardCS = '0' else
|
||||
basRomData when n_basRomCS = '0' else
|
||||
internalRam1DataOut when n_internalRam1CS= '0' else
|
||||
sramData when n_externalRamCS= '0' else
|
||||
x"FF";
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- SYSTEM CLOCKS GO HERE
|
||||
|
||||
-- SUB-CIRCUIT CLOCK SIGNALS
|
||||
|
||||
serialClock <= serialClkCount(15);
|
||||
process (clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
|
||||
if cpuClkCount < 4 then -- 4 = 10MHz, 3 = 12.5MHz, 2=16.6MHz, 1=25MHz
|
||||
cpuClkCount <= cpuClkCount + 1;
|
||||
else
|
||||
cpuClkCount <= (others=>'0');
|
||||
end if;
|
||||
if cpuClkCount < 2 then -- 2 when 10MHz, 2 when 12.5MHz, 2 when 16.6MHz, 1 when 25MHz
|
||||
cpuClock <= '0';
|
||||
else
|
||||
cpuClock <= '1';
|
||||
end if;
|
||||
|
||||
if sdClkCount < 49 then -- 1MHz
|
||||
sdClkCount <= sdClkCount + 1;
|
||||
else
|
||||
sdClkCount <= (others=>'0');
|
||||
end if;
|
||||
|
||||
if sdClkCount < 25 then
|
||||
sdClock <= '0';
|
||||
else
|
||||
sdClock <= '1';
|
||||
end if;
|
||||
|
||||
-- Serial clock DDS
|
||||
-- 50MHz master input clock:
|
||||
-- Baud Increment
|
||||
-- 115200 2416
|
||||
-- 38400 805
|
||||
-- 19200 403
|
||||
-- 9600 201
|
||||
-- 4800 101
|
||||
-- 2400 50
|
||||
serialClkCount <= serialClkCount + unsigned(baud_increment);
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-- This file is copyright by Grant Searle 2014
|
||||
-- You are free to use this file in your own projects but must never charge for it nor use it without
|
||||
-- acknowledgement.
|
||||
-- Please ask permission from Grant Searle before republishing elsewhere.
|
||||
-- If you use this file or any part of it, please add an acknowledgement to myself and
|
||||
-- a link back to my main web site http://searle.hostei.com/grant/
|
||||
-- and to the "multicomp" page at http://searle.hostei.com/grant/Multicomp/index.html
|
||||
--
|
||||
-- Please check on the above web pages to see if there are any updates before using this file.
|
||||
-- If for some reason the page is no longer available, please search for "Grant Searle"
|
||||
-- on the internet to see if I have moved to another web hosting service.
|
||||
--
|
||||
-- Grant Searle
|
||||
-- eMail address available on my main web page link above.
|
||||
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all;
|
||||
use IEEE.STD_LOGIC_ARITH.all;
|
||||
use IEEE.STD_LOGIC_UNSIGNED.all;
|
||||
|
||||
entity Microcomputer6502Basic is
|
||||
port(
|
||||
N_RESET : in std_logic;
|
||||
clk : in std_logic;
|
||||
baud_increment : in std_logic_vector(15 downto 0);
|
||||
|
||||
sramData : inout std_logic_vector(7 downto 0);
|
||||
sramAddress : out std_logic_vector(15 downto 0);
|
||||
n_sRamWE : out std_logic;
|
||||
n_sRamCS : out std_logic;
|
||||
n_sRamOE : out std_logic;
|
||||
n_sRamLB : out std_logic;
|
||||
n_sRamUB : out std_logic;
|
||||
|
||||
rxd1 : in std_logic;
|
||||
txd1 : out std_logic;
|
||||
rts1 : out std_logic;
|
||||
cts1 : in std_logic; -- Added CTS input
|
||||
|
||||
rxd2 : in std_logic;
|
||||
txd2 : out std_logic;
|
||||
rts2 : out std_logic;
|
||||
|
||||
videoSync : out std_logic;
|
||||
video : out std_logic;
|
||||
|
||||
R : out std_logic_vector(1 downto 0);
|
||||
G : out std_logic_vector(1 downto 0);
|
||||
B : out std_logic_vector(1 downto 0);
|
||||
HS : out std_logic;
|
||||
VS : out std_logic;
|
||||
hBlank : out std_logic;
|
||||
vBlank : out std_logic;
|
||||
cepix : out std_logic;
|
||||
|
||||
ps2Clk : in std_logic;
|
||||
ps2Data : in std_logic;
|
||||
|
||||
sdCS : out std_logic;
|
||||
sdMOSI : out std_logic;
|
||||
sdMISO : in std_logic;
|
||||
sdSCLK : out std_logic;
|
||||
sd_ctrl_sel : in std_logic;
|
||||
driveLED : out std_logic :='1'
|
||||
);
|
||||
end Microcomputer6502Basic;
|
||||
|
||||
architecture struct of Microcomputer6502Basic is
|
||||
|
||||
signal reset_counter : unsigned(15 downto 0) := (others => '0');
|
||||
signal reset_n_internal : std_logic := '0'; -- Active low internal reset
|
||||
|
||||
signal n_WR : std_logic;
|
||||
signal n_RD : std_logic;
|
||||
signal cpuAddress : std_logic_vector(15 downto 0);
|
||||
signal cpuDataOut : std_logic_vector(7 downto 0);
|
||||
signal cpuDataIn : std_logic_vector(7 downto 0);
|
||||
|
||||
signal basRomData : std_logic_vector(7 downto 0);
|
||||
signal internalRam1DataOut : std_logic_vector(7 downto 0);
|
||||
signal internalRam2DataOut : std_logic_vector(7 downto 0);
|
||||
signal interface1DataOut : std_logic_vector(7 downto 0);
|
||||
signal interface2DataOut : std_logic_vector(7 downto 0);
|
||||
signal sdCardDataOut : std_logic_vector(7 downto 0);
|
||||
|
||||
signal n_memWR : std_logic :='1';
|
||||
signal n_memRD : std_logic :='1';
|
||||
|
||||
signal n_ioWR : std_logic :='1';
|
||||
signal n_ioRD : std_logic :='1';
|
||||
|
||||
signal n_MREQ : std_logic :='1';
|
||||
signal n_IORQ : std_logic :='1';
|
||||
|
||||
signal n_int1 : std_logic :='1';
|
||||
signal n_int2 : std_logic :='1';
|
||||
|
||||
signal n_externalRamCS : std_logic :='1';
|
||||
signal n_internalRam1CS : std_logic :='1';
|
||||
signal n_internalRam2CS : std_logic :='1';
|
||||
signal n_basRomCS : std_logic :='1';
|
||||
signal n_interface1CS : std_logic :='1';
|
||||
signal n_interface2CS : std_logic :='1';
|
||||
signal n_sdCardCS : std_logic :='1';
|
||||
|
||||
signal sdCardDataOut_sd : std_logic_vector(7 downto 0);
|
||||
signal sdCardDataOut_img : std_logic_vector(7 downto 0);
|
||||
signal driveLED_sd, driveLED_img : std_logic;
|
||||
signal sdMISO_int : std_logic; -- Add this signal declaration
|
||||
|
||||
signal serialClkCount : unsigned(15 downto 0);
|
||||
signal cpuClkCount : std_logic_vector(5 downto 0);
|
||||
signal sdClkCount : std_logic_vector(5 downto 0);
|
||||
signal cpuClock : std_logic;
|
||||
signal serialClock : std_logic;
|
||||
signal sdClock : std_logic;
|
||||
|
||||
begin
|
||||
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
if N_RESET = '0' then
|
||||
reset_counter <= (others => '0');
|
||||
reset_n_internal <= '0';
|
||||
else
|
||||
if reset_counter /= unsigned'(X"FFFF") then
|
||||
reset_counter <= reset_counter + 1;
|
||||
reset_n_internal <= '0';
|
||||
else
|
||||
reset_n_internal <= '1';
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- CPU CHOICE GOES HERE
|
||||
|
||||
cpu1 : entity work.T65
|
||||
port map(
|
||||
Enable => '1',
|
||||
Mode => "00",
|
||||
Res_n => reset_n_internal,
|
||||
Clk => cpuClock,
|
||||
Rdy => '1',
|
||||
Abort_n => '1',
|
||||
IRQ_n => '1',
|
||||
NMI_n => '1',
|
||||
SO_n => '1',
|
||||
R_W_n => n_WR,
|
||||
A(15 downto 0) => cpuAddress,
|
||||
DI => cpuDataIn,
|
||||
DO => cpuDataOut
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- ROM GOES HERE
|
||||
|
||||
rom1 : entity work.M6502_BASIC_ROM -- 8KB BASIC
|
||||
port map(
|
||||
address => cpuAddress(12 downto 0),
|
||||
clock => clk,
|
||||
q => basRomData
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- RAM GOES HERE
|
||||
|
||||
ram1: entity work.InternalRam64K
|
||||
port map
|
||||
(
|
||||
address => cpuAddress(15 downto 0),
|
||||
clock => clk,
|
||||
data => cpuDataOut,
|
||||
wren => not(n_memWR or n_internalRam1CS),
|
||||
q => internalRam1DataOut
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- INPUT/OUTPUT DEVICES GO HERE
|
||||
|
||||
io1 : entity work.SBCTextDisplayRGB
|
||||
port map (
|
||||
n_reset => N_RESET,
|
||||
clk => clk,
|
||||
|
||||
-- RGB video signals
|
||||
hSync => HS,
|
||||
vSync => VS,
|
||||
videoR0 => R(1),
|
||||
videoR1 => R(0),
|
||||
videoG0 => G(1),
|
||||
videoG1 => G(0),
|
||||
videoB0 => B(1),
|
||||
videoB1 => B(0),
|
||||
hBlank => hBlank,
|
||||
vBlank => vBlank,
|
||||
cepix => cepix,
|
||||
|
||||
-- Monochrome video signals (when using TV timings only)
|
||||
sync => videoSync,
|
||||
video => video,
|
||||
|
||||
n_wr => n_interface1CS or cpuClock or n_WR,
|
||||
n_rd => n_interface1CS or cpuClock or (not n_WR),
|
||||
n_int => n_int1,
|
||||
regSel => cpuAddress(0),
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => interface1DataOut,
|
||||
ps2Clk => ps2Clk,
|
||||
ps2Data => ps2Data
|
||||
);
|
||||
|
||||
io2 : entity work.bufferedUART
|
||||
port map(
|
||||
clk => clk,
|
||||
n_wr => n_interface2CS or cpuClock or n_WR,
|
||||
n_rd => n_interface2CS or cpuClock or (not n_WR),
|
||||
n_int => n_int2,
|
||||
regSel => cpuAddress(0),
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => interface2DataOut,
|
||||
rxClock => serialClock,
|
||||
txClock => serialClock,
|
||||
rxd => rxd1,
|
||||
txd => txd1,
|
||||
n_cts => cts1, -- Connect CTS signal
|
||||
n_dcd => '0',
|
||||
n_rts => rts1
|
||||
);
|
||||
|
||||
sd1 : entity work.sd_controller
|
||||
port map(
|
||||
sdCS => sdCS,
|
||||
sdMOSI => sdMOSI,
|
||||
sdMISO => sdMISO_int,
|
||||
sdSCLK => sdSCLK,
|
||||
n_wr => n_sdCardCS or cpuClock or n_WR,
|
||||
n_rd => n_sdCardCS or cpuClock or (not n_WR),
|
||||
n_reset => N_RESET,
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => sdCardDataOut_sd,
|
||||
regAddr => cpuAddress(2 downto 0),
|
||||
driveLED => driveLED_sd,
|
||||
clk => sdClock -- twice the spi clk
|
||||
);
|
||||
|
||||
-- Add signal assignment outside port map:
|
||||
sdMISO_int <= sdMISO when sd_ctrl_sel = '0' else '1';
|
||||
|
||||
-- New image controller
|
||||
img1 : entity work.image_controller
|
||||
port map(
|
||||
clk => clk,
|
||||
n_reset => N_RESET,
|
||||
n_rd => n_sdCardCS or n_ioRD,
|
||||
n_wr => n_sdCardCS or n_ioWR,
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => sdCardDataOut_img,
|
||||
regAddr => cpuAddress(2 downto 0),
|
||||
driveLED => driveLED_img
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- MEMORY READ/WRITE LOGIC GOES HERE
|
||||
|
||||
n_memRD <= not(cpuClock) nand n_WR;
|
||||
n_memWR <= not(cpuClock) nand (not n_WR);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- CHIP SELECTS GO HERE
|
||||
|
||||
n_basRomCS <= '0' when cpuAddress(15 downto 13) = "111" else '1'; --8K at top of memory
|
||||
n_interface1CS <= '0' when cpuAddress(15 downto 1) = "111111111101000" else '1'; -- 2 bytes FFD0-FFD1
|
||||
n_interface2CS <= '0' when cpuAddress(15 downto 1) = "111111111101001" else '1'; -- 2 bytes FFD2-FFD3
|
||||
n_sdCardCS <= '0' when cpuAddress(15 downto 3) = "1111111111011" else '1'; -- 8 bytes FFD8-FFDF
|
||||
n_internalRam1CS <= not n_basRomCS; -- Full Internal RAM - 64 K
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- BUS ISOLATION GOES HERE
|
||||
-- Mux controller outputs based on selection
|
||||
sdCardDataOut <= sdCardDataOut_img when sd_ctrl_sel = '1' else
|
||||
sdCardDataOut_sd;
|
||||
|
||||
driveLED <= driveLED_img when sd_ctrl_sel = '1' else
|
||||
driveLED_sd;
|
||||
|
||||
|
||||
cpuDataIn <=
|
||||
interface1DataOut when n_interface1CS = '0' else
|
||||
interface2DataOut when n_interface2CS = '0' else
|
||||
sdCardDataOut when n_sdCardCS = '0' else
|
||||
basRomData when n_basRomCS = '0' else
|
||||
internalRam1DataOut when n_internalRam1CS= '0' else
|
||||
sramData when n_externalRamCS= '0' else
|
||||
x"FF";
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- SYSTEM CLOCKS GO HERE
|
||||
|
||||
-- SUB-CIRCUIT CLOCK SIGNALS
|
||||
|
||||
serialClock <= serialClkCount(15);
|
||||
process (clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
|
||||
if cpuClkCount < 4 then -- 4 = 10MHz, 3 = 12.5MHz, 2=16.6MHz, 1=25MHz
|
||||
cpuClkCount <= cpuClkCount + 1;
|
||||
else
|
||||
cpuClkCount <= (others=>'0');
|
||||
end if;
|
||||
if cpuClkCount < 2 then -- 2 when 10MHz, 2 when 12.5MHz, 2 when 16.6MHz, 1 when 25MHz
|
||||
cpuClock <= '0';
|
||||
else
|
||||
cpuClock <= '1';
|
||||
end if;
|
||||
|
||||
if sdClkCount < 49 then -- 1MHz
|
||||
sdClkCount <= sdClkCount + 1;
|
||||
else
|
||||
sdClkCount <= (others=>'0');
|
||||
end if;
|
||||
|
||||
if sdClkCount < 25 then
|
||||
sdClock <= '0';
|
||||
else
|
||||
sdClock <= '1';
|
||||
end if;
|
||||
|
||||
-- Serial clock DDS
|
||||
-- 50MHz master input clock:
|
||||
-- Baud Increment
|
||||
-- 115200 2416
|
||||
-- 38400 805
|
||||
-- 19200 403
|
||||
-- 9600 201
|
||||
-- 4800 101
|
||||
-- 2400 50
|
||||
serialClkCount <= serialClkCount + unsigned(baud_increment);
|
||||
end if;
|
||||
end process;
|
||||
|
||||
end;
|
||||
@@ -1,323 +1,343 @@
|
||||
-- This file is copyright by Grant Searle 2014
|
||||
-- You are free to use this file in your own projects but must never charge for it nor use it without
|
||||
-- acknowledgement.
|
||||
-- Please ask permission from Grant Searle before republishing elsewhere.
|
||||
-- If you use this file or any part of it, please add an acknowledgement to myself and
|
||||
-- a link back to my main web site http://searle.hostei.com/grant/
|
||||
-- and to the "multicomp" page at http://searle.hostei.com/grant/Multicomp/index.html
|
||||
--
|
||||
-- Please check on the above web pages to see if there are any updates before using this file.
|
||||
-- If for some reason the page is no longer available, please search for "Grant Searle"
|
||||
-- on the internet to see if I have moved to another web hosting service.
|
||||
--
|
||||
-- Grant Searle
|
||||
-- eMail address available on my main web page link above.
|
||||
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all;
|
||||
use IEEE.STD_LOGIC_ARITH.all;
|
||||
use IEEE.STD_LOGIC_UNSIGNED.all;
|
||||
|
||||
entity Microcomputer6809Basic is
|
||||
port(
|
||||
N_RESET : in std_logic;
|
||||
clk : in std_logic;
|
||||
baud_increment : in std_logic_vector(15 downto 0);
|
||||
|
||||
sramData : inout std_logic_vector(7 downto 0);
|
||||
sramAddress : out std_logic_vector(15 downto 0);
|
||||
n_sRamWE : out std_logic;
|
||||
n_sRamCS : out std_logic;
|
||||
n_sRamOE : out std_logic;
|
||||
n_sRamLB : out std_logic;
|
||||
n_sRamUB : out std_logic;
|
||||
|
||||
rxd1 : in std_logic;
|
||||
txd1 : out std_logic;
|
||||
rts1 : out std_logic;
|
||||
cts1 : in std_logic; -- Added CTS input
|
||||
|
||||
rxd2 : in std_logic;
|
||||
txd2 : out std_logic;
|
||||
rts2 : out std_logic;
|
||||
|
||||
videoSync : out std_logic;
|
||||
video : out std_logic;
|
||||
|
||||
R : out std_logic_vector(1 downto 0);
|
||||
G : out std_logic_vector(1 downto 0);
|
||||
B : out std_logic_vector(1 downto 0);
|
||||
HS : out std_logic;
|
||||
VS : out std_logic;
|
||||
hBlank : out std_logic;
|
||||
vBlank : out std_logic;
|
||||
cepix : out std_logic;
|
||||
|
||||
ps2Clk : in std_logic;
|
||||
ps2Data : in std_logic;
|
||||
|
||||
sdCS : out std_logic;
|
||||
sdMOSI : out std_logic;
|
||||
sdMISO : in std_logic;
|
||||
sdSCLK : out std_logic;
|
||||
sd_ctrl_sel : in std_logic;
|
||||
driveLED : out std_logic :='1'
|
||||
);
|
||||
end Microcomputer6809Basic;
|
||||
|
||||
architecture struct of Microcomputer6809Basic is
|
||||
|
||||
signal n_WR : std_logic;
|
||||
signal n_RD : std_logic;
|
||||
signal cpuAddress : std_logic_vector(15 downto 0);
|
||||
signal cpuDataOut : std_logic_vector(7 downto 0);
|
||||
signal cpuDataIn : std_logic_vector(7 downto 0);
|
||||
|
||||
signal basRomData : std_logic_vector(7 downto 0);
|
||||
signal internalRam1DataOut : std_logic_vector(7 downto 0);
|
||||
signal internalRam2DataOut : std_logic_vector(7 downto 0);
|
||||
signal interface1DataOut : std_logic_vector(7 downto 0);
|
||||
signal interface2DataOut : std_logic_vector(7 downto 0);
|
||||
signal sdCardDataOut : std_logic_vector(7 downto 0);
|
||||
|
||||
signal n_memWR : std_logic :='1';
|
||||
signal n_memRD : std_logic :='1';
|
||||
|
||||
signal n_ioWR : std_logic :='1';
|
||||
signal n_ioRD : std_logic :='1';
|
||||
|
||||
signal n_MREQ : std_logic :='1';
|
||||
signal n_IORQ : std_logic :='1';
|
||||
|
||||
signal n_int1 : std_logic :='1';
|
||||
signal n_int2 : std_logic :='1';
|
||||
|
||||
signal n_externalRamCS : std_logic :='1';
|
||||
signal n_internalRam1CS : std_logic :='1';
|
||||
signal n_internalRam2CS : std_logic :='1';
|
||||
signal n_basRomCS : std_logic :='1';
|
||||
signal n_interface1CS : std_logic :='1';
|
||||
signal n_interface2CS : std_logic :='1';
|
||||
signal n_sdCardCS : std_logic :='1';
|
||||
|
||||
signal sdCardDataOut_sd : std_logic_vector(7 downto 0);
|
||||
signal sdCardDataOut_img : std_logic_vector(7 downto 0);
|
||||
signal driveLED_sd, driveLED_img : std_logic;
|
||||
signal sdMISO_int : std_logic; -- Add this signal declaration
|
||||
|
||||
signal serialClkCount : unsigned(15 downto 0);
|
||||
signal cpuClkCount : std_logic_vector(5 downto 0);
|
||||
signal sdClkCount : std_logic_vector(5 downto 0);
|
||||
signal cpuClock : std_logic;
|
||||
signal serialClock : std_logic;
|
||||
signal sdClock : std_logic;
|
||||
|
||||
begin
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- CPU CHOICE GOES HERE
|
||||
|
||||
cpu1 : entity work.cpu09
|
||||
port map(
|
||||
clk => not(cpuClock),
|
||||
rst => not N_RESET,
|
||||
rw => n_WR,
|
||||
addr => cpuAddress,
|
||||
data_in => cpuDataIn,
|
||||
data_out => cpuDataOut,
|
||||
halt => '0',
|
||||
hold => '0',
|
||||
irq => '0',
|
||||
firq => '0',
|
||||
nmi => '0'
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- ROM GOES HERE
|
||||
|
||||
rom1 : entity work.M6809_EXT_BASIC_ROM -- 8KB BASIC
|
||||
port map(
|
||||
address => cpuAddress(12 downto 0),
|
||||
clock => clk,
|
||||
q => basRomData
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- RAM GOES HERE
|
||||
|
||||
ram1: entity work.InternalRam64K
|
||||
port map
|
||||
(
|
||||
address => cpuAddress(15 downto 0),
|
||||
clock => clk,
|
||||
data => cpuDataOut,
|
||||
wren => not(n_memWR or n_internalRam1CS),
|
||||
q => internalRam1DataOut
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- INPUT/OUTPUT DEVICES GO HERE
|
||||
|
||||
io1 : entity work.SBCTextDisplayRGB
|
||||
port map (
|
||||
n_reset => N_RESET,
|
||||
clk => clk,
|
||||
|
||||
-- RGB video signals
|
||||
hSync => HS,
|
||||
vSync => VS,
|
||||
videoR0 => R(1),
|
||||
videoR1 => R(0),
|
||||
videoG0 => G(1),
|
||||
videoG1 => G(0),
|
||||
videoB0 => B(1),
|
||||
videoB1 => B(0),
|
||||
hBlank => hBlank,
|
||||
vBlank => vBlank,
|
||||
cepix => cepix,
|
||||
|
||||
-- Monochrome video signals (when using TV timings only)
|
||||
sync => videoSync,
|
||||
video => video,
|
||||
|
||||
n_wr => n_interface1CS or cpuClock or n_WR,
|
||||
n_rd => n_interface1CS or cpuClock or (not n_WR),
|
||||
n_int => n_int1,
|
||||
regSel => cpuAddress(0),
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => interface1DataOut,
|
||||
ps2Clk => ps2Clk,
|
||||
ps2Data => ps2Data
|
||||
);
|
||||
|
||||
io2 : entity work.bufferedUART
|
||||
port map(
|
||||
clk => clk,
|
||||
n_wr => n_interface2CS or cpuClock or n_WR,
|
||||
n_rd => n_interface2CS or cpuClock or (not n_WR),
|
||||
n_int => n_int2,
|
||||
regSel => cpuAddress(0),
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => interface2DataOut,
|
||||
rxClock => serialClock,
|
||||
txClock => serialClock,
|
||||
rxd => rxd1,
|
||||
txd => txd1,
|
||||
n_cts => cts1, -- Connect CTS signal
|
||||
n_dcd => '0',
|
||||
n_rts => rts1
|
||||
);
|
||||
|
||||
sd1 : entity work.sd_controller
|
||||
port map(
|
||||
sdCS => sdCS,
|
||||
sdMOSI => sdMOSI,
|
||||
sdMISO => sdMISO_int,
|
||||
sdSCLK => sdSCLK,
|
||||
n_wr => n_sdCardCS or cpuClock or n_WR,
|
||||
n_rd => n_sdCardCS or cpuClock or (not n_WR),
|
||||
n_reset => n_reset,
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => sdCardDataOut_sd,
|
||||
regAddr => cpuAddress(2 downto 0),
|
||||
driveLED => driveLED_sd,
|
||||
clk => sdClock -- twice the spi clk
|
||||
);
|
||||
|
||||
-- Add signal assignment outside port map:
|
||||
sdMISO_int <= sdMISO when sd_ctrl_sel = '0' else '1';
|
||||
|
||||
-- New image controller
|
||||
img1 : entity work.image_controller
|
||||
port map(
|
||||
clk => clk,
|
||||
n_reset => N_RESET,
|
||||
n_rd => n_sdCardCS or n_ioRD,
|
||||
n_wr => n_sdCardCS or n_ioWR,
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => sdCardDataOut_img,
|
||||
regAddr => cpuAddress(2 downto 0),
|
||||
driveLED => driveLED_img
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- MEMORY READ/WRITE LOGIC GOES HERE
|
||||
|
||||
n_memRD <= not(cpuClock) nand n_WR;
|
||||
n_memWR <= not(cpuClock) nand (not n_WR);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- CHIP SELECTS GO HERE
|
||||
|
||||
n_basRomCS <= '0' when cpuAddress(15 downto 13) = "111" else '1'; --8K at top of memory
|
||||
n_interface1CS <= '0' when cpuAddress(15 downto 1) = "111111111101000" else '1'; -- 2 bytes FFD0-FFD1
|
||||
n_interface2CS <= '0' when cpuAddress(15 downto 1) = "111111111101001" else '1'; -- 2 bytes FFD2-FFD3
|
||||
n_sdCardCS <= '0' when cpuAddress(15 downto 3) = "1111111111011" else '1'; -- 8 bytes FFD8-FFDF
|
||||
n_internalRam1CS <= not n_basRomCS; -- Full Internal RAM - 64 K
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- BUS ISOLATION GOES HERE
|
||||
-- Mux controller outputs based on selection
|
||||
sdCardDataOut <= sdCardDataOut_img when sd_ctrl_sel = '1' else
|
||||
sdCardDataOut_sd;
|
||||
|
||||
driveLED <= driveLED_img when sd_ctrl_sel = '1' else
|
||||
driveLED_sd;
|
||||
|
||||
|
||||
cpuDataIn <=
|
||||
interface1DataOut when n_interface1CS = '0' else
|
||||
interface2DataOut when n_interface2CS = '0' else
|
||||
sdCardDataOut when n_sdCardCS = '0' else
|
||||
basRomData when n_basRomCS = '0' else
|
||||
internalRam1DataOut when n_internalRam1CS= '0' else
|
||||
sramData when n_externalRamCS= '0' else
|
||||
x"FF";
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- SYSTEM CLOCKS GO HERE
|
||||
|
||||
-- SUB-CIRCUIT CLOCK SIGNALS
|
||||
|
||||
serialClock <= serialClkCount(15);
|
||||
process (clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
|
||||
if cpuClkCount < 4 then -- 4 = 10MHz, 3 = 12.5MHz, 2=16.6MHz, 1=25MHz
|
||||
cpuClkCount <= cpuClkCount + 1;
|
||||
else
|
||||
cpuClkCount <= (others=>'0');
|
||||
end if;
|
||||
if cpuClkCount < 2 then -- 2 when 10MHz, 2 when 12.5MHz, 2 when 16.6MHz, 1 when 25MHz
|
||||
cpuClock <= '0';
|
||||
else
|
||||
cpuClock <= '1';
|
||||
end if;
|
||||
|
||||
if sdClkCount < 49 then -- 1MHz
|
||||
sdClkCount <= sdClkCount + 1;
|
||||
else
|
||||
sdClkCount <= (others=>'0');
|
||||
end if;
|
||||
|
||||
if sdClkCount < 25 then
|
||||
sdClock <= '0';
|
||||
else
|
||||
sdClock <= '1';
|
||||
end if;
|
||||
|
||||
-- Serial clock DDS
|
||||
-- 50MHz master input clock:
|
||||
-- Baud Increment
|
||||
-- 115200 2416
|
||||
-- 38400 805
|
||||
-- 19200 403
|
||||
-- 9600 201
|
||||
-- 4800 101
|
||||
-- 2400 50
|
||||
serialClkCount <= serialClkCount + unsigned(baud_increment);
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-- This file is copyright by Grant Searle 2014
|
||||
-- You are free to use this file in your own projects but must never charge for it nor use it without
|
||||
-- acknowledgement.
|
||||
-- Please ask permission from Grant Searle before republishing elsewhere.
|
||||
-- If you use this file or any part of it, please add an acknowledgement to myself and
|
||||
-- a link back to my main web site http://searle.hostei.com/grant/
|
||||
-- and to the "multicomp" page at http://searle.hostei.com/grant/Multicomp/index.html
|
||||
--
|
||||
-- Please check on the above web pages to see if there are any updates before using this file.
|
||||
-- If for some reason the page is no longer available, please search for "Grant Searle"
|
||||
-- on the internet to see if I have moved to another web hosting service.
|
||||
--
|
||||
-- Grant Searle
|
||||
-- eMail address available on my main web page link above.
|
||||
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all;
|
||||
use IEEE.STD_LOGIC_ARITH.all;
|
||||
use IEEE.STD_LOGIC_UNSIGNED.all;
|
||||
|
||||
entity Microcomputer6809Basic is
|
||||
port(
|
||||
N_RESET : in std_logic;
|
||||
clk : in std_logic;
|
||||
baud_increment : in std_logic_vector(15 downto 0);
|
||||
|
||||
sramData : inout std_logic_vector(7 downto 0);
|
||||
sramAddress : out std_logic_vector(15 downto 0);
|
||||
n_sRamWE : out std_logic;
|
||||
n_sRamCS : out std_logic;
|
||||
n_sRamOE : out std_logic;
|
||||
n_sRamLB : out std_logic;
|
||||
n_sRamUB : out std_logic;
|
||||
|
||||
rxd1 : in std_logic;
|
||||
txd1 : out std_logic;
|
||||
rts1 : out std_logic;
|
||||
cts1 : in std_logic; -- Added CTS input
|
||||
|
||||
rxd2 : in std_logic;
|
||||
txd2 : out std_logic;
|
||||
rts2 : out std_logic;
|
||||
|
||||
videoSync : out std_logic;
|
||||
video : out std_logic;
|
||||
|
||||
R : out std_logic_vector(1 downto 0);
|
||||
G : out std_logic_vector(1 downto 0);
|
||||
B : out std_logic_vector(1 downto 0);
|
||||
HS : out std_logic;
|
||||
VS : out std_logic;
|
||||
hBlank : out std_logic;
|
||||
vBlank : out std_logic;
|
||||
cepix : out std_logic;
|
||||
|
||||
ps2Clk : in std_logic;
|
||||
ps2Data : in std_logic;
|
||||
|
||||
sdCS : out std_logic;
|
||||
sdMOSI : out std_logic;
|
||||
sdMISO : in std_logic;
|
||||
sdSCLK : out std_logic;
|
||||
sd_ctrl_sel : in std_logic;
|
||||
driveLED : out std_logic :='1'
|
||||
);
|
||||
end Microcomputer6809Basic;
|
||||
|
||||
architecture struct of Microcomputer6809Basic is
|
||||
|
||||
signal reset_counter : unsigned(15 downto 0) := (others => '0');
|
||||
signal reset_n_internal : std_logic := '0'; -- Active low internal reset
|
||||
|
||||
signal n_WR : std_logic;
|
||||
signal n_RD : std_logic;
|
||||
signal cpuAddress : std_logic_vector(15 downto 0);
|
||||
signal cpuDataOut : std_logic_vector(7 downto 0);
|
||||
signal cpuDataIn : std_logic_vector(7 downto 0);
|
||||
|
||||
signal basRomData : std_logic_vector(7 downto 0);
|
||||
signal internalRam1DataOut : std_logic_vector(7 downto 0);
|
||||
signal internalRam2DataOut : std_logic_vector(7 downto 0);
|
||||
signal interface1DataOut : std_logic_vector(7 downto 0);
|
||||
signal interface2DataOut : std_logic_vector(7 downto 0);
|
||||
signal sdCardDataOut : std_logic_vector(7 downto 0);
|
||||
|
||||
signal n_memWR : std_logic :='1';
|
||||
signal n_memRD : std_logic :='1';
|
||||
|
||||
signal n_ioWR : std_logic :='1';
|
||||
signal n_ioRD : std_logic :='1';
|
||||
|
||||
signal n_MREQ : std_logic :='1';
|
||||
signal n_IORQ : std_logic :='1';
|
||||
|
||||
signal n_int1 : std_logic :='1';
|
||||
signal n_int2 : std_logic :='1';
|
||||
|
||||
signal n_externalRamCS : std_logic :='1';
|
||||
signal n_internalRam1CS : std_logic :='1';
|
||||
signal n_internalRam2CS : std_logic :='1';
|
||||
signal n_basRomCS : std_logic :='1';
|
||||
signal n_interface1CS : std_logic :='1';
|
||||
signal n_interface2CS : std_logic :='1';
|
||||
signal n_sdCardCS : std_logic :='1';
|
||||
|
||||
signal sdCardDataOut_sd : std_logic_vector(7 downto 0);
|
||||
signal sdCardDataOut_img : std_logic_vector(7 downto 0);
|
||||
signal driveLED_sd, driveLED_img : std_logic;
|
||||
signal sdMISO_int : std_logic; -- Add this signal declaration
|
||||
|
||||
signal serialClkCount : unsigned(15 downto 0);
|
||||
signal cpuClkCount : std_logic_vector(5 downto 0);
|
||||
signal sdClkCount : std_logic_vector(5 downto 0);
|
||||
signal cpuClock : std_logic;
|
||||
signal serialClock : std_logic;
|
||||
signal sdClock : std_logic;
|
||||
|
||||
begin
|
||||
|
||||
process(cpuClock) -- Use cpuClock instead of clk
|
||||
begin
|
||||
if falling_edge(cpuClock) then -- Match CPU's falling edge trigger
|
||||
if N_RESET = '0' then
|
||||
reset_counter <= (others => '0');
|
||||
reset_n_internal <= '0';
|
||||
else
|
||||
if reset_counter /= unsigned'(X"FFFF") then
|
||||
reset_counter <= reset_counter + 1;
|
||||
reset_n_internal <= '0';
|
||||
else
|
||||
reset_n_internal <= '1';
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- CPU CHOICE GOES HERE
|
||||
|
||||
cpu1 : entity work.cpu09
|
||||
port map(
|
||||
clk => not(cpuClock),
|
||||
rst => not(reset_n_internal),
|
||||
rw => n_WR,
|
||||
addr => cpuAddress,
|
||||
data_in => cpuDataIn,
|
||||
data_out => cpuDataOut,
|
||||
halt => '0',
|
||||
hold => '0',
|
||||
irq => '0',
|
||||
firq => '0',
|
||||
nmi => '0'
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- ROM GOES HERE
|
||||
|
||||
rom1 : entity work.M6809_EXT_BASIC_ROM -- 8KB BASIC
|
||||
port map(
|
||||
address => cpuAddress(12 downto 0),
|
||||
clock => clk,
|
||||
q => basRomData
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- RAM GOES HERE
|
||||
|
||||
ram1: entity work.InternalRam64K
|
||||
port map
|
||||
(
|
||||
address => cpuAddress(15 downto 0),
|
||||
clock => clk,
|
||||
data => cpuDataOut,
|
||||
wren => not(n_memWR or n_internalRam1CS),
|
||||
q => internalRam1DataOut
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- INPUT/OUTPUT DEVICES GO HERE
|
||||
|
||||
io1 : entity work.SBCTextDisplayRGB
|
||||
port map (
|
||||
n_reset => reset_n_internal,
|
||||
clk => clk,
|
||||
|
||||
-- RGB video signals
|
||||
hSync => HS,
|
||||
vSync => VS,
|
||||
videoR0 => R(1),
|
||||
videoR1 => R(0),
|
||||
videoG0 => G(1),
|
||||
videoG1 => G(0),
|
||||
videoB0 => B(1),
|
||||
videoB1 => B(0),
|
||||
hBlank => hBlank,
|
||||
vBlank => vBlank,
|
||||
cepix => cepix,
|
||||
|
||||
-- Monochrome video signals (when using TV timings only)
|
||||
sync => videoSync,
|
||||
video => video,
|
||||
|
||||
n_wr => n_interface1CS or cpuClock or n_WR,
|
||||
n_rd => n_interface1CS or cpuClock or (not n_WR),
|
||||
n_int => n_int1,
|
||||
regSel => cpuAddress(0),
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => interface1DataOut,
|
||||
ps2Clk => ps2Clk,
|
||||
ps2Data => ps2Data
|
||||
);
|
||||
|
||||
io2 : entity work.bufferedUART
|
||||
port map(
|
||||
clk => clk,
|
||||
n_wr => n_interface2CS or cpuClock or n_WR,
|
||||
n_rd => n_interface2CS or cpuClock or (not n_WR),
|
||||
n_int => n_int2,
|
||||
regSel => cpuAddress(0),
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => interface2DataOut,
|
||||
rxClock => serialClock,
|
||||
txClock => serialClock,
|
||||
rxd => rxd1,
|
||||
txd => txd1,
|
||||
n_cts => cts1, -- Connect CTS signal
|
||||
n_dcd => '0',
|
||||
n_rts => rts1
|
||||
);
|
||||
|
||||
sd1 : entity work.sd_controller
|
||||
port map(
|
||||
sdCS => sdCS,
|
||||
sdMOSI => sdMOSI,
|
||||
sdMISO => sdMISO_int,
|
||||
sdSCLK => sdSCLK,
|
||||
n_wr => n_sdCardCS or cpuClock or n_WR,
|
||||
n_rd => n_sdCardCS or cpuClock or (not n_WR),
|
||||
n_reset => reset_n_internal,
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => sdCardDataOut_sd,
|
||||
regAddr => cpuAddress(2 downto 0),
|
||||
driveLED => driveLED_sd,
|
||||
clk => sdClock -- twice the spi clk
|
||||
);
|
||||
|
||||
-- Add signal assignment outside port map:
|
||||
sdMISO_int <= sdMISO when sd_ctrl_sel = '0' else '1';
|
||||
|
||||
-- New image controller
|
||||
img1 : entity work.image_controller
|
||||
port map(
|
||||
clk => clk,
|
||||
n_reset => reset_n_internal,
|
||||
n_rd => n_sdCardCS or n_ioRD,
|
||||
n_wr => n_sdCardCS or n_ioWR,
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => sdCardDataOut_img,
|
||||
regAddr => cpuAddress(2 downto 0),
|
||||
driveLED => driveLED_img
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- MEMORY READ/WRITE LOGIC GOES HERE
|
||||
|
||||
n_memRD <= not(cpuClock) nand n_WR;
|
||||
n_memWR <= not(cpuClock) nand (not n_WR);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- CHIP SELECTS GO HERE
|
||||
|
||||
n_basRomCS <= '0' when cpuAddress(15 downto 13) = "111" else '1'; --8K at top of memory
|
||||
n_interface1CS <= '0' when cpuAddress(15 downto 1) = "111111111101000" else '1'; -- 2 bytes FFD0-FFD1
|
||||
n_interface2CS <= '0' when cpuAddress(15 downto 1) = "111111111101001" else '1'; -- 2 bytes FFD2-FFD3
|
||||
n_sdCardCS <= '0' when cpuAddress(15 downto 3) = "1111111111011" else '1'; -- 8 bytes FFD8-FFDF
|
||||
n_internalRam1CS <= not n_basRomCS; -- Full Internal RAM - 64 K
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- BUS ISOLATION GOES HERE
|
||||
-- Mux controller outputs based on selection
|
||||
sdCardDataOut <= sdCardDataOut_img when sd_ctrl_sel = '1' else
|
||||
sdCardDataOut_sd;
|
||||
|
||||
driveLED <= driveLED_img when sd_ctrl_sel = '1' else
|
||||
driveLED_sd;
|
||||
|
||||
|
||||
cpuDataIn <=
|
||||
interface1DataOut when n_interface1CS = '0' else
|
||||
interface2DataOut when n_interface2CS = '0' else
|
||||
sdCardDataOut when n_sdCardCS = '0' else
|
||||
basRomData when n_basRomCS = '0' else
|
||||
internalRam1DataOut when n_internalRam1CS= '0' else
|
||||
sramData when n_externalRamCS= '0' else
|
||||
x"FF";
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- SYSTEM CLOCKS GO HERE
|
||||
|
||||
-- SUB-CIRCUIT CLOCK SIGNALS
|
||||
|
||||
serialClock <= serialClkCount(15);
|
||||
process (clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
|
||||
if cpuClkCount < 4 then -- 4 = 10MHz, 3 = 12.5MHz, 2=16.6MHz, 1=25MHz
|
||||
cpuClkCount <= cpuClkCount + 1;
|
||||
else
|
||||
cpuClkCount <= (others=>'0');
|
||||
end if;
|
||||
if cpuClkCount < 2 then -- 2 when 10MHz, 2 when 12.5MHz, 2 when 16.6MHz, 1 when 25MHz
|
||||
cpuClock <= '0';
|
||||
else
|
||||
cpuClock <= '1';
|
||||
end if;
|
||||
|
||||
if sdClkCount < 49 then -- 1MHz
|
||||
sdClkCount <= sdClkCount + 1;
|
||||
else
|
||||
sdClkCount <= (others=>'0');
|
||||
end if;
|
||||
|
||||
if sdClkCount < 25 then
|
||||
sdClock <= '0';
|
||||
else
|
||||
sdClock <= '1';
|
||||
end if;
|
||||
|
||||
-- Serial clock DDS
|
||||
-- 50MHz master input clock:
|
||||
-- Baud Increment
|
||||
-- 115200 2416
|
||||
-- 38400 805
|
||||
-- 19200 403
|
||||
-- 9600 201
|
||||
-- 4800 101
|
||||
-- 2400 50
|
||||
serialClkCount <= serialClkCount + unsigned(baud_increment);
|
||||
end if;
|
||||
end process;
|
||||
|
||||
end;
|
||||
@@ -1,332 +1,352 @@
|
||||
-- This file is copyright by Grant Searle 2014
|
||||
-- You are free to use this file in your own projects but must never charge for it nor use it without
|
||||
-- acknowledgement.
|
||||
-- Please ask permission from Grant Searle before republishing elsewhere.
|
||||
-- If you use this file or any part of it, please add an acknowledgement to myself and
|
||||
-- a link back to my main web site http://searle.hostei.com/grant/
|
||||
-- and to the "multicomp" page at http://searle.hostei.com/grant/Multicomp/index.html
|
||||
--
|
||||
-- Please check on the above web pages to see if there are any updates before using this file.
|
||||
-- If for some reason the page is no longer available, please search for "Grant Searle"
|
||||
-- on the internet to see if I have moved to another web hosting service.
|
||||
--
|
||||
-- Grant Searle
|
||||
-- eMail address available on my main web page link above.
|
||||
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all;
|
||||
use IEEE.STD_LOGIC_ARITH.all;
|
||||
use IEEE.STD_LOGIC_UNSIGNED.all;
|
||||
|
||||
entity MicrocomputerZ80Basic is
|
||||
port(
|
||||
N_RESET : in std_logic;
|
||||
clk : in std_logic;
|
||||
baud_increment : in std_logic_vector(15 downto 0);
|
||||
|
||||
sramData : inout std_logic_vector(7 downto 0);
|
||||
sramAddress : out std_logic_vector(15 downto 0);
|
||||
n_sRamWE : out std_logic;
|
||||
n_sRamCS : out std_logic;
|
||||
n_sRamOE : out std_logic;
|
||||
n_sRamLB : out std_logic;
|
||||
n_sRamUB : out std_logic;
|
||||
|
||||
rxd1 : in std_logic;
|
||||
txd1 : out std_logic;
|
||||
rts1 : out std_logic;
|
||||
cts1 : in std_logic; -- Added CTS input
|
||||
|
||||
rxd2 : in std_logic;
|
||||
txd2 : out std_logic;
|
||||
rts2 : out std_logic;
|
||||
|
||||
videoSync : out std_logic;
|
||||
video : out std_logic;
|
||||
|
||||
R : out std_logic_vector(1 downto 0);
|
||||
G : out std_logic_vector(1 downto 0);
|
||||
B : out std_logic_vector(1 downto 0);
|
||||
HS : out std_logic;
|
||||
VS : out std_logic;
|
||||
hBlank : out std_logic;
|
||||
vBlank : out std_logic;
|
||||
cepix : out std_logic;
|
||||
|
||||
ps2Clk : in std_logic;
|
||||
ps2Data : in std_logic;
|
||||
|
||||
sdCS : out std_logic;
|
||||
sdMOSI : out std_logic;
|
||||
sdMISO : in std_logic;
|
||||
sdSCLK : out std_logic;
|
||||
sd_ctrl_sel : in std_logic;
|
||||
driveLED : out std_logic :='1'
|
||||
);
|
||||
end MicrocomputerZ80Basic;
|
||||
|
||||
architecture struct of MicrocomputerZ80Basic is
|
||||
|
||||
signal n_WR : std_logic;
|
||||
signal n_RD : std_logic;
|
||||
signal cpuAddress : std_logic_vector(15 downto 0);
|
||||
signal cpuDataOut : std_logic_vector(7 downto 0);
|
||||
signal cpuDataIn : std_logic_vector(7 downto 0);
|
||||
|
||||
signal basRomData : std_logic_vector(7 downto 0);
|
||||
signal internalRam1DataOut : std_logic_vector(7 downto 0);
|
||||
signal internalRam2DataOut : std_logic_vector(7 downto 0);
|
||||
signal interface1DataOut : std_logic_vector(7 downto 0);
|
||||
signal interface2DataOut : std_logic_vector(7 downto 0);
|
||||
signal sdCardDataOut : std_logic_vector(7 downto 0);
|
||||
|
||||
signal n_memWR : std_logic :='1';
|
||||
signal n_memRD : std_logic :='1';
|
||||
|
||||
signal n_ioWR : std_logic :='1';
|
||||
signal n_ioRD : std_logic :='1';
|
||||
|
||||
signal n_MREQ : std_logic :='1';
|
||||
signal n_IORQ : std_logic :='1';
|
||||
|
||||
signal n_int1 : std_logic :='1';
|
||||
signal n_int2 : std_logic :='1';
|
||||
|
||||
signal n_externalRamCS : std_logic :='1';
|
||||
signal n_internalRam1CS : std_logic :='1';
|
||||
signal n_internalRam2CS : std_logic :='1';
|
||||
signal n_basRomCS : std_logic :='1';
|
||||
signal n_interface1CS : std_logic :='1';
|
||||
signal n_interface2CS : std_logic :='1';
|
||||
signal n_sdCardCS : std_logic :='1';
|
||||
|
||||
signal sdCardDataOut_sd : std_logic_vector(7 downto 0);
|
||||
signal sdCardDataOut_img : std_logic_vector(7 downto 0);
|
||||
signal driveLED_sd, driveLED_img : std_logic;
|
||||
signal sdMISO_int : std_logic; -- Add this signal declaration
|
||||
|
||||
|
||||
signal serialClkCount : unsigned(15 downto 0);
|
||||
signal cpuClkCount : std_logic_vector(5 downto 0);
|
||||
signal sdClkCount : std_logic_vector(5 downto 0);
|
||||
signal cpuClock : std_logic;
|
||||
signal serialClock : std_logic;
|
||||
signal sdClock : std_logic;
|
||||
|
||||
begin
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- CPU CHOICE GOES HERE
|
||||
|
||||
cpu1 : entity work.t80s
|
||||
generic map(mode => 1, t2write => 1, iowait => 0)
|
||||
port map(
|
||||
reset_n => N_RESET,
|
||||
clk_n => cpuClock,
|
||||
wait_n => '1',
|
||||
int_n => '1',
|
||||
nmi_n => '1',
|
||||
busrq_n => '1',
|
||||
mreq_n => n_MREQ,
|
||||
iorq_n => n_IORQ,
|
||||
rd_n => n_RD,
|
||||
wr_n => n_WR,
|
||||
a => cpuAddress,
|
||||
di => cpuDataIn,
|
||||
do => cpuDataOut
|
||||
);
|
||||
-- ____________________________________________________________________________________
|
||||
-- ROM GOES HERE
|
||||
|
||||
rom1 : entity work.Z80_BASIC_ROM -- 8KB BASIC
|
||||
port map(
|
||||
address => cpuAddress(12 downto 0),
|
||||
clock => clk,
|
||||
q => basRomData
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- RAM GOES HERE
|
||||
|
||||
ram1: entity work.InternalRam64K
|
||||
port map
|
||||
(
|
||||
address => cpuAddress(15 downto 0),
|
||||
clock => clk,
|
||||
data => cpuDataOut,
|
||||
wren => not(n_memWR or n_internalRam1CS),
|
||||
q => internalRam1DataOut
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- INPUT/OUTPUT DEVICES GO HERE
|
||||
|
||||
|
||||
io1 : entity work.SBCTextDisplayRGB
|
||||
port map (
|
||||
n_reset => N_RESET,
|
||||
clk => clk,
|
||||
|
||||
-- RGB video signals
|
||||
hSync => HS,
|
||||
vSync => VS,
|
||||
videoR0 => R(1),
|
||||
videoR1 => R(0),
|
||||
videoG0 => G(1),
|
||||
videoG1 => G(0),
|
||||
videoB0 => B(1),
|
||||
videoB1 => B(0),
|
||||
hBlank => hBlank,
|
||||
vBlank => vBlank,
|
||||
cepix => cepix,
|
||||
|
||||
-- Monochrome video signals (when using TV timings only)
|
||||
sync => videoSync,
|
||||
video => video,
|
||||
|
||||
n_wr => n_interface1CS or n_ioWR,
|
||||
n_rd => n_interface1CS or n_ioRD,
|
||||
n_int => n_int1,
|
||||
regSel => cpuAddress(0),
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => interface1DataOut,
|
||||
ps2Clk => ps2Clk,
|
||||
ps2Data => ps2Data
|
||||
);
|
||||
|
||||
io2 : entity work.bufferedUART
|
||||
port map(
|
||||
clk => clk,
|
||||
n_wr => n_interface2CS or n_ioWR,
|
||||
n_rd => n_interface2CS or n_ioRD,
|
||||
n_int => n_int2,
|
||||
regSel => cpuAddress(0),
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => interface2DataOut,
|
||||
rxClock => serialClock,
|
||||
txClock => serialClock,
|
||||
rxd => rxd1,
|
||||
txd => txd1,
|
||||
n_cts => cts1, -- Connect CTS signal
|
||||
n_dcd => '0',
|
||||
n_rts => rts1
|
||||
);
|
||||
|
||||
sd1 : entity work.sd_controller
|
||||
port map(
|
||||
sdCS => sdCS,
|
||||
sdMOSI => sdMOSI,
|
||||
sdMISO => sdMISO_int,
|
||||
sdSCLK => sdSCLK,
|
||||
n_wr => n_sdCardCS or n_ioWR,
|
||||
n_rd => n_sdCardCS or n_ioRD,
|
||||
n_reset => N_RESET,
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => sdCardDataOut_sd,
|
||||
regAddr => cpuAddress(2 downto 0),
|
||||
driveLED => driveLED_sd,
|
||||
clk => sdClock -- twice the spi clk
|
||||
);
|
||||
|
||||
-- Add signal assignment outside port map:
|
||||
sdMISO_int <= sdMISO when sd_ctrl_sel = '0' else '1';
|
||||
|
||||
-- New image controller
|
||||
img1 : entity work.image_controller
|
||||
port map(
|
||||
clk => clk,
|
||||
n_reset => N_RESET,
|
||||
n_rd => n_sdCardCS or n_ioRD,
|
||||
n_wr => n_sdCardCS or n_ioWR,
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => sdCardDataOut_img,
|
||||
regAddr => cpuAddress(2 downto 0),
|
||||
driveLED => driveLED_img
|
||||
);
|
||||
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- MEMORY READ/WRITE LOGIC GOES HERE
|
||||
|
||||
n_ioWR <= n_WR or n_IORQ;
|
||||
n_memWR <= n_WR or n_MREQ;
|
||||
n_ioRD <= n_RD or n_IORQ;
|
||||
n_memRD <= n_RD or n_MREQ;
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- CHIP SELECTS GO HERE
|
||||
|
||||
|
||||
n_basRomCS <= '0' when cpuAddress(15 downto 13) = "000" else '1'; --8K at bottom of memory
|
||||
n_interface1CS <= '0' when cpuAddress(7 downto 1) = "1000000" and (n_ioWR='0' or n_ioRD = '0') else '1'; -- 2 Bytes $80-$81
|
||||
n_interface2CS <= '0' when cpuAddress(7 downto 1) = "1000001" and (n_ioWR='0' or n_ioRD = '0') else '1'; -- 2 Bytes $82-$83
|
||||
n_sdCardCS <= '0' when cpuAddress(7 downto 3) = "10001" and (n_ioWR='0' or n_ioRD = '0') else '1'; -- 8 Bytes $88-$8F
|
||||
n_internalRam1CS <= not n_basRomCS; -- Full Internal RAM - 64 K
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- BUS ISOLATION GOES HERE
|
||||
|
||||
-- Mux controller outputs based on selection
|
||||
sdCardDataOut <= sdCardDataOut_img when sd_ctrl_sel = '1' else
|
||||
sdCardDataOut_sd;
|
||||
|
||||
driveLED <= driveLED_img when sd_ctrl_sel = '1' else
|
||||
driveLED_sd;
|
||||
|
||||
|
||||
cpuDataIn <=
|
||||
interface1DataOut when n_interface1CS = '0' else
|
||||
interface2DataOut when n_interface2CS = '0' else
|
||||
sdCardDataOut when n_sdCardCS = '0' else
|
||||
basRomData when n_basRomCS = '0' else
|
||||
internalRam1DataOut when n_internalRam1CS= '0' else
|
||||
sramData when n_externalRamCS= '0' else
|
||||
x"FF";
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- SYSTEM CLOCKS GO HERE
|
||||
|
||||
|
||||
-- SUB-CIRCUIT CLOCK SIGNALS
|
||||
serialClock <= serialClkCount(15);
|
||||
process (clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
|
||||
if cpuClkCount < 4 then -- 4 = 10MHz, 3 = 12.5MHz, 2=16.6MHz, 1=25MHz
|
||||
cpuClkCount <= cpuClkCount + 1;
|
||||
else
|
||||
cpuClkCount <= (others=>'0');
|
||||
end if;
|
||||
if cpuClkCount < 2 then -- 2 when 10MHz, 2 when 12.5MHz, 2 when 16.6MHz, 1 when 25MHz
|
||||
cpuClock <= '0';
|
||||
else
|
||||
cpuClock <= '1';
|
||||
end if;
|
||||
|
||||
if sdClkCount < 49 then -- 1MHz
|
||||
sdClkCount <= sdClkCount + 1;
|
||||
else
|
||||
sdClkCount <= (others=>'0');
|
||||
end if;
|
||||
|
||||
if sdClkCount < 25 then
|
||||
sdClock <= '0';
|
||||
else
|
||||
sdClock <= '1';
|
||||
end if;
|
||||
|
||||
-- Serial clock DDS
|
||||
-- 50MHz master input clock:
|
||||
-- Baud Increment
|
||||
-- 115200 2416
|
||||
-- 38400 805
|
||||
-- 19200 403
|
||||
-- 9600 201
|
||||
-- 4800 101
|
||||
-- 2400 50
|
||||
serialClkCount <= serialClkCount + unsigned(baud_increment);
|
||||
end if;
|
||||
end process;
|
||||
|
||||
end;
|
||||
-- This file is copyright by Grant Searle 2014
|
||||
-- You are free to use this file in your own projects but must never charge for it nor use it without
|
||||
-- acknowledgement.
|
||||
-- Please ask permission from Grant Searle before republishing elsewhere.
|
||||
-- If you use this file or any part of it, please add an acknowledgement to myself and
|
||||
-- a link back to my main web site http://searle.hostei.com/grant/
|
||||
-- and to the "multicomp" page at http://searle.hostei.com/grant/Multicomp/index.html
|
||||
--
|
||||
-- Please check on the above web pages to see if there are any updates before using this file.
|
||||
-- If for some reason the page is no longer available, please search for "Grant Searle"
|
||||
-- on the internet to see if I have moved to another web hosting service.
|
||||
--
|
||||
-- Grant Searle
|
||||
-- eMail address available on my main web page link above.
|
||||
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all;
|
||||
use IEEE.STD_LOGIC_ARITH.all;
|
||||
use IEEE.STD_LOGIC_UNSIGNED.all;
|
||||
|
||||
entity MicrocomputerZ80Basic is
|
||||
port(
|
||||
N_RESET : in std_logic;
|
||||
clk : in std_logic;
|
||||
baud_increment : in std_logic_vector(15 downto 0);
|
||||
|
||||
sramData : inout std_logic_vector(7 downto 0);
|
||||
sramAddress : out std_logic_vector(15 downto 0);
|
||||
n_sRamWE : out std_logic;
|
||||
n_sRamCS : out std_logic;
|
||||
n_sRamOE : out std_logic;
|
||||
n_sRamLB : out std_logic;
|
||||
n_sRamUB : out std_logic;
|
||||
|
||||
rxd1 : in std_logic;
|
||||
txd1 : out std_logic;
|
||||
rts1 : out std_logic;
|
||||
cts1 : in std_logic; -- Added CTS input
|
||||
|
||||
rxd2 : in std_logic;
|
||||
txd2 : out std_logic;
|
||||
rts2 : out std_logic;
|
||||
|
||||
videoSync : out std_logic;
|
||||
video : out std_logic;
|
||||
|
||||
R : out std_logic_vector(1 downto 0);
|
||||
G : out std_logic_vector(1 downto 0);
|
||||
B : out std_logic_vector(1 downto 0);
|
||||
HS : out std_logic;
|
||||
VS : out std_logic;
|
||||
hBlank : out std_logic;
|
||||
vBlank : out std_logic;
|
||||
cepix : out std_logic;
|
||||
|
||||
ps2Clk : in std_logic;
|
||||
ps2Data : in std_logic;
|
||||
|
||||
sdCS : out std_logic;
|
||||
sdMOSI : out std_logic;
|
||||
sdMISO : in std_logic;
|
||||
sdSCLK : out std_logic;
|
||||
sd_ctrl_sel : in std_logic;
|
||||
driveLED : out std_logic :='1'
|
||||
);
|
||||
end MicrocomputerZ80Basic;
|
||||
|
||||
architecture struct of MicrocomputerZ80Basic is
|
||||
|
||||
signal reset_counter : unsigned(15 downto 0) := (others => '0');
|
||||
signal reset_n_internal : std_logic := '0'; -- Active low internal reset
|
||||
|
||||
signal n_WR : std_logic;
|
||||
signal n_RD : std_logic;
|
||||
signal cpuAddress : std_logic_vector(15 downto 0);
|
||||
signal cpuDataOut : std_logic_vector(7 downto 0);
|
||||
signal cpuDataIn : std_logic_vector(7 downto 0);
|
||||
|
||||
signal basRomData : std_logic_vector(7 downto 0);
|
||||
signal internalRam1DataOut : std_logic_vector(7 downto 0);
|
||||
signal internalRam2DataOut : std_logic_vector(7 downto 0);
|
||||
signal interface1DataOut : std_logic_vector(7 downto 0);
|
||||
signal interface2DataOut : std_logic_vector(7 downto 0);
|
||||
signal sdCardDataOut : std_logic_vector(7 downto 0);
|
||||
|
||||
signal n_memWR : std_logic :='1';
|
||||
signal n_memRD : std_logic :='1';
|
||||
|
||||
signal n_ioWR : std_logic :='1';
|
||||
signal n_ioRD : std_logic :='1';
|
||||
|
||||
signal n_MREQ : std_logic :='1';
|
||||
signal n_IORQ : std_logic :='1';
|
||||
|
||||
signal n_int1 : std_logic :='1';
|
||||
signal n_int2 : std_logic :='1';
|
||||
|
||||
signal n_externalRamCS : std_logic :='1';
|
||||
signal n_internalRam1CS : std_logic :='1';
|
||||
signal n_internalRam2CS : std_logic :='1';
|
||||
signal n_basRomCS : std_logic :='1';
|
||||
signal n_interface1CS : std_logic :='1';
|
||||
signal n_interface2CS : std_logic :='1';
|
||||
signal n_sdCardCS : std_logic :='1';
|
||||
|
||||
signal sdCardDataOut_sd : std_logic_vector(7 downto 0);
|
||||
signal sdCardDataOut_img : std_logic_vector(7 downto 0);
|
||||
signal driveLED_sd, driveLED_img : std_logic;
|
||||
signal sdMISO_int : std_logic; -- Add this signal declaration
|
||||
|
||||
|
||||
signal serialClkCount : unsigned(15 downto 0);
|
||||
signal cpuClkCount : std_logic_vector(5 downto 0);
|
||||
signal sdClkCount : std_logic_vector(5 downto 0);
|
||||
signal cpuClock : std_logic;
|
||||
signal serialClock : std_logic;
|
||||
signal sdClock : std_logic;
|
||||
|
||||
begin
|
||||
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
if N_RESET = '0' then
|
||||
reset_counter <= (others => '0');
|
||||
reset_n_internal <= '0';
|
||||
else
|
||||
if reset_counter /= unsigned'(X"FFFF") then
|
||||
reset_counter <= reset_counter + 1;
|
||||
reset_n_internal <= '0';
|
||||
else
|
||||
reset_n_internal <= '1';
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- CPU CHOICE GOES HERE
|
||||
|
||||
cpu1 : entity work.t80s
|
||||
generic map(mode => 1, t2write => 1, iowait => 0)
|
||||
port map(
|
||||
reset_n => reset_n_internal,
|
||||
clk_n => cpuClock,
|
||||
wait_n => '1',
|
||||
int_n => '1',
|
||||
nmi_n => '1',
|
||||
busrq_n => '1',
|
||||
mreq_n => n_MREQ,
|
||||
iorq_n => n_IORQ,
|
||||
rd_n => n_RD,
|
||||
wr_n => n_WR,
|
||||
a => cpuAddress,
|
||||
di => cpuDataIn,
|
||||
do => cpuDataOut
|
||||
);
|
||||
-- ____________________________________________________________________________________
|
||||
-- ROM GOES HERE
|
||||
|
||||
rom1 : entity work.Z80_BASIC_ROM -- 8KB BASIC
|
||||
port map(
|
||||
address => cpuAddress(12 downto 0),
|
||||
clock => clk,
|
||||
q => basRomData
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- RAM GOES HERE
|
||||
|
||||
ram1: entity work.InternalRam64K
|
||||
port map
|
||||
(
|
||||
address => cpuAddress(15 downto 0),
|
||||
clock => clk,
|
||||
data => cpuDataOut,
|
||||
wren => not(n_memWR or n_internalRam1CS),
|
||||
q => internalRam1DataOut
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- INPUT/OUTPUT DEVICES GO HERE
|
||||
|
||||
|
||||
io1 : entity work.SBCTextDisplayRGB
|
||||
port map (
|
||||
n_reset => N_RESET,
|
||||
clk => clk,
|
||||
|
||||
-- RGB video signals
|
||||
hSync => HS,
|
||||
vSync => VS,
|
||||
videoR0 => R(1),
|
||||
videoR1 => R(0),
|
||||
videoG0 => G(1),
|
||||
videoG1 => G(0),
|
||||
videoB0 => B(1),
|
||||
videoB1 => B(0),
|
||||
hBlank => hBlank,
|
||||
vBlank => vBlank,
|
||||
cepix => cepix,
|
||||
|
||||
-- Monochrome video signals (when using TV timings only)
|
||||
sync => videoSync,
|
||||
video => video,
|
||||
|
||||
n_wr => n_interface1CS or n_ioWR,
|
||||
n_rd => n_interface1CS or n_ioRD,
|
||||
n_int => n_int1,
|
||||
regSel => cpuAddress(0),
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => interface1DataOut,
|
||||
ps2Clk => ps2Clk,
|
||||
ps2Data => ps2Data
|
||||
);
|
||||
|
||||
io2 : entity work.bufferedUART
|
||||
port map(
|
||||
clk => clk,
|
||||
n_wr => n_interface2CS or n_ioWR,
|
||||
n_rd => n_interface2CS or n_ioRD,
|
||||
n_int => n_int2,
|
||||
regSel => cpuAddress(0),
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => interface2DataOut,
|
||||
rxClock => serialClock,
|
||||
txClock => serialClock,
|
||||
rxd => rxd1,
|
||||
txd => txd1,
|
||||
n_cts => cts1, -- Connect CTS signal
|
||||
n_dcd => '0',
|
||||
n_rts => rts1
|
||||
);
|
||||
|
||||
sd1 : entity work.sd_controller
|
||||
port map(
|
||||
sdCS => sdCS,
|
||||
sdMOSI => sdMOSI,
|
||||
sdMISO => sdMISO_int,
|
||||
sdSCLK => sdSCLK,
|
||||
n_wr => n_sdCardCS or n_ioWR,
|
||||
n_rd => n_sdCardCS or n_ioRD,
|
||||
n_reset => N_RESET,
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => sdCardDataOut_sd,
|
||||
regAddr => cpuAddress(2 downto 0),
|
||||
driveLED => driveLED_sd,
|
||||
clk => sdClock -- twice the spi clk
|
||||
);
|
||||
|
||||
-- Add signal assignment outside port map:
|
||||
sdMISO_int <= sdMISO when sd_ctrl_sel = '0' else '1';
|
||||
|
||||
-- New image controller
|
||||
img1 : entity work.image_controller
|
||||
port map(
|
||||
clk => clk,
|
||||
n_reset => N_RESET,
|
||||
n_rd => n_sdCardCS or n_ioRD,
|
||||
n_wr => n_sdCardCS or n_ioWR,
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => sdCardDataOut_img,
|
||||
regAddr => cpuAddress(2 downto 0),
|
||||
driveLED => driveLED_img
|
||||
);
|
||||
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- MEMORY READ/WRITE LOGIC GOES HERE
|
||||
|
||||
n_ioWR <= n_WR or n_IORQ;
|
||||
n_memWR <= n_WR or n_MREQ;
|
||||
n_ioRD <= n_RD or n_IORQ;
|
||||
n_memRD <= n_RD or n_MREQ;
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- CHIP SELECTS GO HERE
|
||||
|
||||
|
||||
n_basRomCS <= '0' when cpuAddress(15 downto 13) = "000" else '1'; --8K at bottom of memory
|
||||
n_interface1CS <= '0' when cpuAddress(7 downto 1) = "1000000" and (n_ioWR='0' or n_ioRD = '0') else '1'; -- 2 Bytes $80-$81
|
||||
n_interface2CS <= '0' when cpuAddress(7 downto 1) = "1000001" and (n_ioWR='0' or n_ioRD = '0') else '1'; -- 2 Bytes $82-$83
|
||||
n_sdCardCS <= '0' when cpuAddress(7 downto 3) = "10001" and (n_ioWR='0' or n_ioRD = '0') else '1'; -- 8 Bytes $88-$8F
|
||||
n_internalRam1CS <= not n_basRomCS; -- Full Internal RAM - 64 K
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- BUS ISOLATION GOES HERE
|
||||
|
||||
-- Mux controller outputs based on selection
|
||||
sdCardDataOut <= sdCardDataOut_img when sd_ctrl_sel = '1' else
|
||||
sdCardDataOut_sd;
|
||||
|
||||
driveLED <= driveLED_img when sd_ctrl_sel = '1' else
|
||||
driveLED_sd;
|
||||
|
||||
|
||||
cpuDataIn <=
|
||||
interface1DataOut when n_interface1CS = '0' else
|
||||
interface2DataOut when n_interface2CS = '0' else
|
||||
sdCardDataOut when n_sdCardCS = '0' else
|
||||
basRomData when n_basRomCS = '0' else
|
||||
internalRam1DataOut when n_internalRam1CS= '0' else
|
||||
sramData when n_externalRamCS= '0' else
|
||||
x"FF";
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- SYSTEM CLOCKS GO HERE
|
||||
|
||||
|
||||
-- SUB-CIRCUIT CLOCK SIGNALS
|
||||
serialClock <= serialClkCount(15);
|
||||
process (clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
|
||||
if cpuClkCount < 4 then -- 4 = 10MHz, 3 = 12.5MHz, 2=16.6MHz, 1=25MHz
|
||||
cpuClkCount <= cpuClkCount + 1;
|
||||
else
|
||||
cpuClkCount <= (others=>'0');
|
||||
end if;
|
||||
if cpuClkCount < 2 then -- 2 when 10MHz, 2 when 12.5MHz, 2 when 16.6MHz, 1 when 25MHz
|
||||
cpuClock <= '0';
|
||||
else
|
||||
cpuClock <= '1';
|
||||
end if;
|
||||
|
||||
if sdClkCount < 49 then -- 1MHz
|
||||
sdClkCount <= sdClkCount + 1;
|
||||
else
|
||||
sdClkCount <= (others=>'0');
|
||||
end if;
|
||||
|
||||
if sdClkCount < 25 then
|
||||
sdClock <= '0';
|
||||
else
|
||||
sdClock <= '1';
|
||||
end if;
|
||||
|
||||
-- Serial clock DDS
|
||||
-- 50MHz master input clock:
|
||||
-- Baud Increment
|
||||
-- 115200 2416
|
||||
-- 38400 805
|
||||
-- 19200 403
|
||||
-- 9600 201
|
||||
-- 4800 101
|
||||
-- 2400 50
|
||||
serialClkCount <= serialClkCount + unsigned(baud_increment);
|
||||
end if;
|
||||
end process;
|
||||
|
||||
end;
|
||||
|
||||
@@ -1,391 +1,412 @@
|
||||
-- This file is copyright by Grant Searle 2014
|
||||
-- You are free to use this file in your own projects but must never charge for it nor use it without
|
||||
-- acknowledgement.
|
||||
-- Please ask permission from Grant Searle before republishing elsewhere.
|
||||
-- If you use this file or any part of it, please add an acknowledgement to myself and
|
||||
-- a link back to my main web site http://searle.hostei.com/grant/
|
||||
-- and to the "multicomp" page at http://searle.hostei.com/grant/Multicomp/index.html
|
||||
--
|
||||
-- Please check on the above web pages to see if there are any updates before using this file.
|
||||
-- If for some reason the page is no longer available, please search for "Grant Searle"
|
||||
-- on the internet to see if I have moved to another web hosting service.
|
||||
--
|
||||
-- Grant Searle
|
||||
-- eMail address available on my main web page link above.
|
||||
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all;
|
||||
use IEEE.STD_LOGIC_ARITH.all;
|
||||
use IEEE.STD_LOGIC_UNSIGNED.all;
|
||||
|
||||
entity MicrocomputerZ80CPM is
|
||||
port(
|
||||
N_RESET : in std_logic;
|
||||
clk : in std_logic;
|
||||
baud_increment : in std_logic_vector(15 downto 0);
|
||||
|
||||
sramData : inout std_logic_vector(7 downto 0);
|
||||
sramAddress : out std_logic_vector(15 downto 0);
|
||||
n_sRamWE : out std_logic;
|
||||
n_sRamCS : out std_logic;
|
||||
n_sRamOE : out std_logic;
|
||||
n_sRamLB : out std_logic;
|
||||
n_sRamUB : out std_logic;
|
||||
|
||||
rxd1 : in std_logic;
|
||||
txd1 : out std_logic;
|
||||
rts1 : out std_logic;
|
||||
cts1 : in std_logic; -- Added CTS input
|
||||
|
||||
rxd2 : in std_logic;
|
||||
txd2 : out std_logic;
|
||||
rts2 : out std_logic;
|
||||
|
||||
videoSync : out std_logic;
|
||||
video : out std_logic;
|
||||
|
||||
R : out std_logic_vector(1 downto 0);
|
||||
G : out std_logic_vector(1 downto 0);
|
||||
B : out std_logic_vector(1 downto 0);
|
||||
HS : out std_logic;
|
||||
VS : out std_logic;
|
||||
hBlank : out std_logic;
|
||||
vBlank : out std_logic;
|
||||
cepix : out std_logic;
|
||||
|
||||
ps2Clk : in std_logic;
|
||||
ps2Data : in std_logic;
|
||||
|
||||
sdCS : out std_logic;
|
||||
sdMOSI : out std_logic;
|
||||
sdMISO : in std_logic;
|
||||
sdSCLK : out std_logic;
|
||||
sd_ctrl_sel : in std_logic;
|
||||
driveLED : out std_logic :='1';
|
||||
|
||||
usbCS : out std_logic;
|
||||
usbMOSI : out std_logic;
|
||||
usbMISO : in std_logic;
|
||||
usbSCLK : out std_logic
|
||||
);
|
||||
end MicrocomputerZ80CPM;
|
||||
|
||||
architecture struct of MicrocomputerZ80CPM is
|
||||
|
||||
signal n_WR : std_logic;
|
||||
signal n_RD : std_logic;
|
||||
signal cpuAddress : std_logic_vector(15 downto 0);
|
||||
signal cpuDataOut : std_logic_vector(7 downto 0);
|
||||
signal cpuDataIn : std_logic_vector(7 downto 0);
|
||||
|
||||
signal basRomData : std_logic_vector(7 downto 0);
|
||||
signal internalRam1DataOut : std_logic_vector(7 downto 0);
|
||||
signal internalRam2DataOut : std_logic_vector(7 downto 0);
|
||||
signal interface1DataOut : std_logic_vector(7 downto 0);
|
||||
signal interface2DataOut : std_logic_vector(7 downto 0);
|
||||
signal ch376sDataOut : std_logic_vector(7 downto 0);
|
||||
signal sdCardDataOut : std_logic_vector(7 downto 0);
|
||||
|
||||
signal n_memWR : std_logic :='1';
|
||||
signal n_memRD : std_logic :='1';
|
||||
|
||||
signal n_ioWR : std_logic :='1';
|
||||
signal n_ioRD : std_logic :='1';
|
||||
|
||||
signal n_MREQ : std_logic :='1';
|
||||
signal n_IORQ : std_logic :='1';
|
||||
|
||||
signal n_int1 : std_logic :='1';
|
||||
signal n_int2 : std_logic :='1';
|
||||
|
||||
signal n_externalRamCS : std_logic :='1';
|
||||
signal n_internalRam1CS : std_logic :='1';
|
||||
signal n_internalRam2CS : std_logic :='1';
|
||||
signal n_basRomCS : std_logic :='1';
|
||||
signal n_interface1CS : std_logic :='1';
|
||||
signal n_interface2CS : std_logic :='1';
|
||||
signal n_ch376sCS : std_logic :='1';
|
||||
signal n_sdCardCS : std_logic :='1';
|
||||
|
||||
signal serialClkCount : unsigned(15 downto 0);
|
||||
signal cpuClkCount : std_logic_vector(5 downto 0);
|
||||
signal sdClkCount : std_logic_vector(5 downto 0);
|
||||
signal cpuClock : std_logic;
|
||||
signal serialClock : std_logic;
|
||||
signal sdClock : std_logic;
|
||||
signal sdCardDataOut_sd : std_logic_vector(7 downto 0);
|
||||
signal sdCardDataOut_img : std_logic_vector(7 downto 0);
|
||||
signal driveLED_sd, driveLED_img : std_logic;
|
||||
signal sdMISO_int : std_logic; -- Add this signal declaration
|
||||
|
||||
--CPM
|
||||
signal n_RomActive : std_logic := '0';
|
||||
|
||||
component ch376s_module is
|
||||
port (
|
||||
-- interface
|
||||
clk : in std_logic;
|
||||
rd : in std_logic;
|
||||
wr : in std_logic;
|
||||
reset : in std_logic;
|
||||
a0 : in std_logic;
|
||||
|
||||
-- SPI wires
|
||||
sck : out std_logic;
|
||||
sdcs : out std_logic;
|
||||
sdo : out std_logic; -- reg
|
||||
sdi : in std_logic;
|
||||
|
||||
-- data
|
||||
din : in std_logic_vector (7 downto 0);
|
||||
dout : out std_logic_vector (7 downto 0) -- reg
|
||||
);
|
||||
end component;
|
||||
|
||||
|
||||
begin
|
||||
--CPM
|
||||
-- Disable ROM if out 38. Re-enable when (asynchronous) reset pressed
|
||||
process (n_ioWR, N_RESET) begin
|
||||
if (N_RESET = '0') then
|
||||
n_RomActive <= '0';
|
||||
elsif (rising_edge(n_ioWR)) then
|
||||
if cpuAddress(7 downto 0) = "00111000" then -- $38
|
||||
n_RomActive <= '1';
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
-- ____________________________________________________________________________________
|
||||
-- CPU CHOICE GOES HERE
|
||||
|
||||
cpu1 : entity work.t80s
|
||||
generic map(mode => 1, t2write => 1, iowait => 0)
|
||||
port map(
|
||||
reset_n => N_RESET,
|
||||
clk_n => cpuClock,
|
||||
wait_n => '1',
|
||||
int_n => '1',
|
||||
nmi_n => '1',
|
||||
busrq_n => '1',
|
||||
mreq_n => n_MREQ,
|
||||
iorq_n => n_IORQ,
|
||||
rd_n => n_RD,
|
||||
wr_n => n_WR,
|
||||
a => cpuAddress,
|
||||
di => cpuDataIn,
|
||||
do => cpuDataOut
|
||||
);
|
||||
-- ____________________________________________________________________________________
|
||||
-- ROM GOES HERE
|
||||
|
||||
rom1 : entity work.Z80_CPM_BASIC_ROM
|
||||
port map(
|
||||
address => cpuAddress(12 downto 0),
|
||||
clock => clk,
|
||||
q => basRomData
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- RAM GOES HERE
|
||||
|
||||
ram1: entity work.InternalRam64K
|
||||
port map
|
||||
(
|
||||
address => cpuAddress(15 downto 0),
|
||||
clock => clk,
|
||||
data => cpuDataOut,
|
||||
wren => not(n_memWR or n_internalRam1CS),
|
||||
q => internalRam1DataOut
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- INPUT/OUTPUT DEVICES GO HERE
|
||||
|
||||
|
||||
io1 : entity work.SBCTextDisplayRGB
|
||||
port map (
|
||||
n_reset => N_RESET,
|
||||
clk => clk,
|
||||
|
||||
-- RGB video signals
|
||||
hSync => HS,
|
||||
vSync => VS,
|
||||
videoR0 => R(1),
|
||||
videoR1 => R(0),
|
||||
videoG0 => G(1),
|
||||
videoG1 => G(0),
|
||||
videoB0 => B(1),
|
||||
videoB1 => B(0),
|
||||
hBlank => hBlank,
|
||||
vBlank => vBlank,
|
||||
cepix => cepix,
|
||||
|
||||
-- Monochrome video signals (when using TV timings only)
|
||||
sync => videoSync,
|
||||
video => video,
|
||||
|
||||
n_wr => n_interface1CS or n_ioWR,
|
||||
n_rd => n_interface1CS or n_ioRD,
|
||||
n_int => n_int1,
|
||||
regSel => cpuAddress(0),
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => interface1DataOut,
|
||||
ps2Clk => ps2Clk,
|
||||
ps2Data => ps2Data
|
||||
);
|
||||
|
||||
io2 : entity work.bufferedUART
|
||||
port map(
|
||||
clk => clk,
|
||||
n_wr => n_interface2CS or n_ioWR,
|
||||
n_rd => n_interface2CS or n_ioRD,
|
||||
n_int => n_int2,
|
||||
regSel => cpuAddress(0),
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => interface2DataOut,
|
||||
rxClock => serialClock,
|
||||
txClock => serialClock,
|
||||
rxd => rxd1,
|
||||
txd => txd1,
|
||||
n_cts => cts1, -- Connect CTS signal
|
||||
n_dcd => '0',
|
||||
n_rts => rts1
|
||||
);
|
||||
|
||||
sd1 : entity work.sd_controller
|
||||
port map(
|
||||
sdCS => sdCS,
|
||||
sdMOSI => sdMOSI,
|
||||
sdMISO => sdMISO_int, -- Use the internal signal
|
||||
sdSCLK => sdSCLK,
|
||||
n_wr => n_sdCardCS or n_ioWR,
|
||||
n_rd => n_sdCardCS or n_ioRD,
|
||||
n_reset => N_RESET,
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => sdCardDataOut_sd,
|
||||
regAddr => cpuAddress(2 downto 0),
|
||||
driveLED => driveLED_sd,
|
||||
clk => clk
|
||||
);
|
||||
|
||||
-- Add signal assignment outside port map:
|
||||
sdMISO_int <= sdMISO when sd_ctrl_sel = '0' else '1';
|
||||
|
||||
-- New image controller
|
||||
img1 : entity work.image_controller
|
||||
port map(
|
||||
clk => clk,
|
||||
n_reset => N_RESET,
|
||||
n_rd => n_sdCardCS or n_ioRD,
|
||||
n_wr => n_sdCardCS or n_ioWR,
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => sdCardDataOut_img,
|
||||
regAddr => cpuAddress(2 downto 0),
|
||||
driveLED => driveLED_img
|
||||
);
|
||||
|
||||
usb : ch376s_module
|
||||
port map (
|
||||
sdcs => usbCS,
|
||||
sdo => usbMOSI,
|
||||
sdi => usbMISO,
|
||||
sck => usbSCLK,
|
||||
|
||||
wr => not (n_ch376sCS or n_ioWR),
|
||||
rd => not (n_ch376sCS or n_ioRD),
|
||||
|
||||
dout => ch376sDataOut,
|
||||
din => cpuDataOut,
|
||||
|
||||
a0 => cpuAddress (0),
|
||||
reset => not (N_RESET),
|
||||
clk => sdClock -- twice the spi clk
|
||||
);
|
||||
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- MEMORY READ/WRITE LOGIC GOES HERE
|
||||
|
||||
n_ioWR <= n_WR or n_IORQ;
|
||||
n_memWR <= n_WR or n_MREQ;
|
||||
n_ioRD <= n_RD or n_IORQ;
|
||||
n_memRD <= n_RD or n_MREQ;
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- CHIP SELECTS GO HERE
|
||||
|
||||
n_basRomCS <= '0' when cpuAddress(15 downto 13) = "000" and n_RomActive = '0' else '1'; --8K at bottom of memory
|
||||
n_interface1CS <= '0' when cpuAddress(7 downto 1) = "1000000" and (n_ioWR='0' or n_ioRD = '0') else '1'; -- 2 Bytes $80-$81
|
||||
n_interface2CS <= '0' when cpuAddress(7 downto 1) = "1000001" and (n_ioWR='0' or n_ioRD = '0') else '1'; -- 2 Bytes $82-$83
|
||||
n_ch376sCS <= '0' when cpuAddress(7 downto 1) = "0010000" and (n_ioWR='0' or n_ioRD = '0') else '1'; -- 2 Bytes $20-$21
|
||||
n_sdCardCS <= '0' when cpuAddress(7 downto 3) = "10001" and (n_ioWR='0' or n_ioRD = '0') else '1'; -- 8 Bytes $88-$8F
|
||||
n_internalRam1CS <= not n_basRomCS; -- Full Internal RAM - 64 K
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- BUS ISOLATION GOES HERE
|
||||
|
||||
-- Mux controller outputs based on selection
|
||||
sdCardDataOut <= sdCardDataOut_img when sd_ctrl_sel = '1' else
|
||||
sdCardDataOut_sd;
|
||||
|
||||
driveLED <= driveLED_img when sd_ctrl_sel = '1' else
|
||||
driveLED_sd;
|
||||
|
||||
-- CPU data input mux needs to be written like this:
|
||||
cpuDataIn <= interface1DataOut when (n_interface1CS = '0') else
|
||||
interface2DataOut when (n_interface2CS = '0') else
|
||||
ch376sDataOut when (n_ch376sCS = '0') else
|
||||
sdCardDataOut when (n_sdCardCS = '0') else
|
||||
basRomData when (n_basRomCS = '0') else
|
||||
internalRam1DataOut when (n_internalRam1CS = '0') else
|
||||
sramData when (n_externalRamCS = '0') else
|
||||
x"FF";
|
||||
-- ____________________________________________________________________________________
|
||||
-- SYSTEM CLOCKS GO HERE
|
||||
|
||||
|
||||
-- SUB-CIRCUIT CLOCK SIGNALS
|
||||
serialClock <= serialClkCount(15);
|
||||
--sdClock <= clk;
|
||||
|
||||
process (clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
|
||||
if cpuClkCount < 4 then -- 4 = 10MHz, 3 = 12.5MHz, 2=16.6MHz, 1=25MHz
|
||||
cpuClkCount <= cpuClkCount + 1;
|
||||
else
|
||||
cpuClkCount <= (others=>'0');
|
||||
end if;
|
||||
|
||||
if cpuClkCount < 2 then -- 2 when 10MHz, 2 when 12.5MHz, 2 when 16.6MHz, 1 when 25MHz
|
||||
cpuClock <= '0';
|
||||
else
|
||||
cpuClock <= '1';
|
||||
end if;
|
||||
|
||||
if sdClkCount < 16 then -- 5MHz
|
||||
sdClkCount <= sdClkCount + 1;
|
||||
else
|
||||
sdClkCount <= (others=>'0');
|
||||
end if;
|
||||
|
||||
sdClock <= sdClkCount (3); -- divide by 8 = 6.25 Mhz
|
||||
--usbCS <= sdClkCount (4);
|
||||
--usbMOSI <= sdClkCount (3);
|
||||
--usbSCLK <= sdClkCount (2);
|
||||
|
||||
-- Serial clock DDS
|
||||
-- 50MHz master input clock:
|
||||
-- Baud Increment
|
||||
-- 115200 2416
|
||||
-- 38400 805
|
||||
-- 19200 403
|
||||
-- 9600 201
|
||||
-- 4800 101
|
||||
-- 2400 50
|
||||
serialClkCount <= serialClkCount + unsigned(baud_increment);
|
||||
end if;
|
||||
end process;
|
||||
|
||||
end;
|
||||
-- This file is copyright by Grant Searle 2014
|
||||
-- You are free to use this file in your own projects but must never charge for it nor use it without
|
||||
-- acknowledgement.
|
||||
-- Please ask permission from Grant Searle before republishing elsewhere.
|
||||
-- If you use this file or any part of it, please add an acknowledgement to myself and
|
||||
-- a link back to my main web site http://searle.hostei.com/grant/
|
||||
-- and to the "multicomp" page at http://searle.hostei.com/grant/Multicomp/index.html
|
||||
--
|
||||
-- Please check on the above web pages to see if there are any updates before using this file.
|
||||
-- If for some reason the page is no longer available, please search for "Grant Searle"
|
||||
-- on the internet to see if I have moved to another web hosting service.
|
||||
--
|
||||
-- Grant Searle
|
||||
-- eMail address available on my main web page link above.
|
||||
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all;
|
||||
use IEEE.STD_LOGIC_ARITH.all;
|
||||
use IEEE.STD_LOGIC_UNSIGNED.all;
|
||||
|
||||
entity MicrocomputerZ80CPM is
|
||||
port(
|
||||
N_RESET : in std_logic;
|
||||
clk : in std_logic;
|
||||
baud_increment : in std_logic_vector(15 downto 0);
|
||||
|
||||
sramData : inout std_logic_vector(7 downto 0);
|
||||
sramAddress : out std_logic_vector(15 downto 0);
|
||||
n_sRamWE : out std_logic;
|
||||
n_sRamCS : out std_logic;
|
||||
n_sRamOE : out std_logic;
|
||||
n_sRamLB : out std_logic;
|
||||
n_sRamUB : out std_logic;
|
||||
|
||||
rxd1 : in std_logic;
|
||||
txd1 : out std_logic;
|
||||
rts1 : out std_logic;
|
||||
cts1 : in std_logic; -- Added CTS input
|
||||
|
||||
rxd2 : in std_logic;
|
||||
txd2 : out std_logic;
|
||||
rts2 : out std_logic;
|
||||
|
||||
videoSync : out std_logic;
|
||||
video : out std_logic;
|
||||
|
||||
R : out std_logic_vector(1 downto 0);
|
||||
G : out std_logic_vector(1 downto 0);
|
||||
B : out std_logic_vector(1 downto 0);
|
||||
HS : out std_logic;
|
||||
VS : out std_logic;
|
||||
hBlank : out std_logic;
|
||||
vBlank : out std_logic;
|
||||
cepix : out std_logic;
|
||||
|
||||
ps2Clk : in std_logic;
|
||||
ps2Data : in std_logic;
|
||||
|
||||
sdCS : out std_logic;
|
||||
sdMOSI : out std_logic;
|
||||
sdMISO : in std_logic;
|
||||
sdSCLK : out std_logic;
|
||||
sd_ctrl_sel : in std_logic;
|
||||
driveLED : out std_logic :='1';
|
||||
|
||||
usbCS : out std_logic;
|
||||
usbMOSI : out std_logic;
|
||||
usbMISO : in std_logic;
|
||||
usbSCLK : out std_logic
|
||||
);
|
||||
end MicrocomputerZ80CPM;
|
||||
|
||||
architecture struct of MicrocomputerZ80CPM is
|
||||
|
||||
signal reset_counter : unsigned(15 downto 0) := (others => '0');
|
||||
signal reset_n_internal : std_logic := '0'; -- Active low internal reset
|
||||
|
||||
signal n_WR : std_logic;
|
||||
signal n_RD : std_logic;
|
||||
signal cpuAddress : std_logic_vector(15 downto 0);
|
||||
signal cpuDataOut : std_logic_vector(7 downto 0);
|
||||
signal cpuDataIn : std_logic_vector(7 downto 0);
|
||||
|
||||
signal basRomData : std_logic_vector(7 downto 0);
|
||||
signal internalRam1DataOut : std_logic_vector(7 downto 0);
|
||||
signal internalRam2DataOut : std_logic_vector(7 downto 0);
|
||||
signal interface1DataOut : std_logic_vector(7 downto 0);
|
||||
signal interface2DataOut : std_logic_vector(7 downto 0);
|
||||
signal ch376sDataOut : std_logic_vector(7 downto 0);
|
||||
signal sdCardDataOut : std_logic_vector(7 downto 0);
|
||||
|
||||
signal n_memWR : std_logic :='1';
|
||||
signal n_memRD : std_logic :='1';
|
||||
|
||||
signal n_ioWR : std_logic :='1';
|
||||
signal n_ioRD : std_logic :='1';
|
||||
|
||||
signal n_MREQ : std_logic :='1';
|
||||
signal n_IORQ : std_logic :='1';
|
||||
|
||||
signal n_int1 : std_logic :='1';
|
||||
signal n_int2 : std_logic :='1';
|
||||
|
||||
signal n_externalRamCS : std_logic :='1';
|
||||
signal n_internalRam1CS : std_logic :='1';
|
||||
signal n_internalRam2CS : std_logic :='1';
|
||||
signal n_basRomCS : std_logic :='1';
|
||||
signal n_interface1CS : std_logic :='1';
|
||||
signal n_interface2CS : std_logic :='1';
|
||||
signal n_ch376sCS : std_logic :='1';
|
||||
signal n_sdCardCS : std_logic :='1';
|
||||
|
||||
signal serialClkCount : unsigned(15 downto 0);
|
||||
signal cpuClkCount : std_logic_vector(5 downto 0);
|
||||
signal sdClkCount : std_logic_vector(5 downto 0);
|
||||
signal cpuClock : std_logic;
|
||||
signal serialClock : std_logic;
|
||||
signal sdClock : std_logic;
|
||||
signal sdCardDataOut_sd : std_logic_vector(7 downto 0);
|
||||
signal sdCardDataOut_img : std_logic_vector(7 downto 0);
|
||||
signal driveLED_sd, driveLED_img : std_logic;
|
||||
signal sdMISO_int : std_logic; -- Add this signal declaration
|
||||
|
||||
--CPM
|
||||
signal n_RomActive : std_logic := '0';
|
||||
|
||||
component ch376s_module is
|
||||
port (
|
||||
-- interface
|
||||
clk : in std_logic;
|
||||
rd : in std_logic;
|
||||
wr : in std_logic;
|
||||
reset : in std_logic;
|
||||
a0 : in std_logic;
|
||||
|
||||
-- SPI wires
|
||||
sck : out std_logic;
|
||||
sdcs : out std_logic;
|
||||
sdo : out std_logic; -- reg
|
||||
sdi : in std_logic;
|
||||
|
||||
-- data
|
||||
din : in std_logic_vector (7 downto 0);
|
||||
dout : out std_logic_vector (7 downto 0) -- reg
|
||||
);
|
||||
end component;
|
||||
|
||||
|
||||
begin
|
||||
--CPM
|
||||
-- Disable ROM if out 38. Re-enable when (asynchronous) reset pressed
|
||||
process (n_ioWR, N_RESET) begin
|
||||
if (N_RESET = '0') then
|
||||
n_RomActive <= '0';
|
||||
elsif (rising_edge(n_ioWR)) then
|
||||
if cpuAddress(7 downto 0) = "00111000" then -- $38
|
||||
n_RomActive <= '1';
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
if N_RESET = '0' then
|
||||
reset_counter <= (others => '0');
|
||||
reset_n_internal <= '0';
|
||||
else
|
||||
if reset_counter /= unsigned'(X"FFFF") then
|
||||
reset_counter <= reset_counter + 1;
|
||||
reset_n_internal <= '0';
|
||||
else
|
||||
reset_n_internal <= '1';
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- CPU CHOICE GOES HERE
|
||||
|
||||
cpu1 : entity work.t80s
|
||||
generic map(mode => 1, t2write => 1, iowait => 0)
|
||||
port map(
|
||||
reset_n => reset_n_internal,
|
||||
clk_n => cpuClock,
|
||||
wait_n => '1',
|
||||
int_n => '1',
|
||||
nmi_n => '1',
|
||||
busrq_n => '1',
|
||||
mreq_n => n_MREQ,
|
||||
iorq_n => n_IORQ,
|
||||
rd_n => n_RD,
|
||||
wr_n => n_WR,
|
||||
a => cpuAddress,
|
||||
di => cpuDataIn,
|
||||
do => cpuDataOut
|
||||
);
|
||||
-- ____________________________________________________________________________________
|
||||
-- ROM GOES HERE
|
||||
|
||||
rom1 : entity work.Z80_CPM_BASIC_ROM
|
||||
port map(
|
||||
address => cpuAddress(12 downto 0),
|
||||
clock => clk,
|
||||
q => basRomData
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- RAM GOES HERE
|
||||
|
||||
ram1: entity work.InternalRam64K
|
||||
port map
|
||||
(
|
||||
address => cpuAddress(15 downto 0),
|
||||
clock => clk,
|
||||
data => cpuDataOut,
|
||||
wren => not(n_memWR or n_internalRam1CS),
|
||||
q => internalRam1DataOut
|
||||
);
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- INPUT/OUTPUT DEVICES GO HERE
|
||||
|
||||
|
||||
io1 : entity work.SBCTextDisplayRGB
|
||||
port map (
|
||||
n_reset => N_RESET,
|
||||
clk => clk,
|
||||
|
||||
-- RGB video signals
|
||||
hSync => HS,
|
||||
vSync => VS,
|
||||
videoR0 => R(1),
|
||||
videoR1 => R(0),
|
||||
videoG0 => G(1),
|
||||
videoG1 => G(0),
|
||||
videoB0 => B(1),
|
||||
videoB1 => B(0),
|
||||
hBlank => hBlank,
|
||||
vBlank => vBlank,
|
||||
cepix => cepix,
|
||||
|
||||
-- Monochrome video signals (when using TV timings only)
|
||||
sync => videoSync,
|
||||
video => video,
|
||||
|
||||
n_wr => n_interface1CS or n_ioWR,
|
||||
n_rd => n_interface1CS or n_ioRD,
|
||||
n_int => n_int1,
|
||||
regSel => cpuAddress(0),
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => interface1DataOut,
|
||||
ps2Clk => ps2Clk,
|
||||
ps2Data => ps2Data
|
||||
);
|
||||
|
||||
io2 : entity work.bufferedUART
|
||||
port map(
|
||||
clk => clk,
|
||||
n_wr => n_interface2CS or n_ioWR,
|
||||
n_rd => n_interface2CS or n_ioRD,
|
||||
n_int => n_int2,
|
||||
regSel => cpuAddress(0),
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => interface2DataOut,
|
||||
rxClock => serialClock,
|
||||
txClock => serialClock,
|
||||
rxd => rxd1,
|
||||
txd => txd1,
|
||||
n_cts => cts1, -- Connect CTS signal
|
||||
n_dcd => '0',
|
||||
n_rts => rts1
|
||||
);
|
||||
|
||||
sd1 : entity work.sd_controller
|
||||
port map(
|
||||
sdCS => sdCS,
|
||||
sdMOSI => sdMOSI,
|
||||
sdMISO => sdMISO_int, -- Use the internal signal
|
||||
sdSCLK => sdSCLK,
|
||||
n_wr => n_sdCardCS or n_ioWR,
|
||||
n_rd => n_sdCardCS or n_ioRD,
|
||||
n_reset => N_RESET,
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => sdCardDataOut_sd,
|
||||
regAddr => cpuAddress(2 downto 0),
|
||||
driveLED => driveLED_sd,
|
||||
clk => clk
|
||||
);
|
||||
|
||||
-- Add signal assignment outside port map:
|
||||
sdMISO_int <= sdMISO when sd_ctrl_sel = '0' else '1';
|
||||
|
||||
-- New image controller
|
||||
img1 : entity work.image_controller
|
||||
port map(
|
||||
clk => clk,
|
||||
n_reset => N_RESET,
|
||||
n_rd => n_sdCardCS or n_ioRD,
|
||||
n_wr => n_sdCardCS or n_ioWR,
|
||||
dataIn => cpuDataOut,
|
||||
dataOut => sdCardDataOut_img,
|
||||
regAddr => cpuAddress(2 downto 0),
|
||||
driveLED => driveLED_img
|
||||
);
|
||||
|
||||
usb : ch376s_module
|
||||
port map (
|
||||
sdcs => usbCS,
|
||||
sdo => usbMOSI,
|
||||
sdi => usbMISO,
|
||||
sck => usbSCLK,
|
||||
|
||||
wr => not (n_ch376sCS or n_ioWR),
|
||||
rd => not (n_ch376sCS or n_ioRD),
|
||||
|
||||
dout => ch376sDataOut,
|
||||
din => cpuDataOut,
|
||||
|
||||
a0 => cpuAddress (0),
|
||||
reset => not (N_RESET),
|
||||
clk => sdClock -- twice the spi clk
|
||||
);
|
||||
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- MEMORY READ/WRITE LOGIC GOES HERE
|
||||
|
||||
n_ioWR <= n_WR or n_IORQ;
|
||||
n_memWR <= n_WR or n_MREQ;
|
||||
n_ioRD <= n_RD or n_IORQ;
|
||||
n_memRD <= n_RD or n_MREQ;
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- CHIP SELECTS GO HERE
|
||||
|
||||
n_basRomCS <= '0' when cpuAddress(15 downto 13) = "000" and n_RomActive = '0' else '1'; --8K at bottom of memory
|
||||
n_interface1CS <= '0' when cpuAddress(7 downto 1) = "1000000" and (n_ioWR='0' or n_ioRD = '0') else '1'; -- 2 Bytes $80-$81
|
||||
n_interface2CS <= '0' when cpuAddress(7 downto 1) = "1000001" and (n_ioWR='0' or n_ioRD = '0') else '1'; -- 2 Bytes $82-$83
|
||||
n_ch376sCS <= '0' when cpuAddress(7 downto 1) = "0010000" and (n_ioWR='0' or n_ioRD = '0') else '1'; -- 2 Bytes $20-$21
|
||||
n_sdCardCS <= '0' when cpuAddress(7 downto 3) = "10001" and (n_ioWR='0' or n_ioRD = '0') else '1'; -- 8 Bytes $88-$8F
|
||||
n_internalRam1CS <= not n_basRomCS; -- Full Internal RAM - 64 K
|
||||
|
||||
-- ____________________________________________________________________________________
|
||||
-- BUS ISOLATION GOES HERE
|
||||
|
||||
-- Mux controller outputs based on selection
|
||||
sdCardDataOut <= sdCardDataOut_img when sd_ctrl_sel = '1' else
|
||||
sdCardDataOut_sd;
|
||||
|
||||
driveLED <= driveLED_img when sd_ctrl_sel = '1' else
|
||||
driveLED_sd;
|
||||
|
||||
-- CPU data input mux needs to be written like this:
|
||||
cpuDataIn <= interface1DataOut when (n_interface1CS = '0') else
|
||||
interface2DataOut when (n_interface2CS = '0') else
|
||||
ch376sDataOut when (n_ch376sCS = '0') else
|
||||
sdCardDataOut when (n_sdCardCS = '0') else
|
||||
basRomData when (n_basRomCS = '0') else
|
||||
internalRam1DataOut when (n_internalRam1CS = '0') else
|
||||
sramData when (n_externalRamCS = '0') else
|
||||
x"FF";
|
||||
-- ____________________________________________________________________________________
|
||||
-- SYSTEM CLOCKS GO HERE
|
||||
|
||||
|
||||
-- SUB-CIRCUIT CLOCK SIGNALS
|
||||
serialClock <= serialClkCount(15);
|
||||
--sdClock <= clk;
|
||||
|
||||
process (clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
|
||||
if cpuClkCount < 4 then -- 4 = 10MHz, 3 = 12.5MHz, 2=16.6MHz, 1=25MHz
|
||||
cpuClkCount <= cpuClkCount + 1;
|
||||
else
|
||||
cpuClkCount <= (others=>'0');
|
||||
end if;
|
||||
|
||||
if cpuClkCount < 2 then -- 2 when 10MHz, 2 when 12.5MHz, 2 when 16.6MHz, 1 when 25MHz
|
||||
cpuClock <= '0';
|
||||
else
|
||||
cpuClock <= '1';
|
||||
end if;
|
||||
|
||||
if sdClkCount < 16 then -- 5MHz
|
||||
sdClkCount <= sdClkCount + 1;
|
||||
else
|
||||
sdClkCount <= (others=>'0');
|
||||
end if;
|
||||
|
||||
sdClock <= sdClkCount (3); -- divide by 8 = 6.25 Mhz
|
||||
--usbCS <= sdClkCount (4);
|
||||
--usbMOSI <= sdClkCount (3);
|
||||
--usbSCLK <= sdClkCount (2);
|
||||
|
||||
-- Serial clock DDS
|
||||
-- 50MHz master input clock:
|
||||
-- Baud Increment
|
||||
-- 115200 2416
|
||||
-- 38400 805
|
||||
-- 19200 403
|
||||
-- 9600 201
|
||||
-- 4800 101
|
||||
-- 2400 50
|
||||
serialClkCount <= serialClkCount + unsigned(baud_increment);
|
||||
end if;
|
||||
end process;
|
||||
|
||||
end;
|
||||
|
||||
879
README.md
879
README.md
@@ -1,439 +1,440 @@
|
||||
MiSTer MultiComp
|
||||
================
|
||||
|
||||
Port of Grant Searle's MultiComp to the MiSTer.
|
||||
|
||||
Ported by Cyril Venditti and Fred VanEijk.
|
||||
|
||||
Updated by S0urceror to use MiSTer image files, use all 4 machine types and have the MiSTer
|
||||
UART connected to serial interface 2 of the core. The latter allows to use the core remotely.
|
||||
|
||||
## Using the MiSTer Serial Terminal/Console
|
||||
|
||||
### Connection Methods
|
||||
|
||||
1. USB: Connect the console port from the MiSTer FPGA to your computer using a USB cable.
|
||||
|
||||
2. Network: Use SSH to connect to the MiSTer FPGA if you have a Wireless or Ethernet connection.
|
||||
|
||||
3. USB/Serial cable: For more information see the Serial Port section of the Altair8800_MiSTer repository: <https://github.com/MiSTer-devel/Altair8800_MiSTer>
|
||||
|
||||
### Setting Up the Connection
|
||||
|
||||
#### For UART/Serial with PuTTY
|
||||
|
||||
- Connect at 115200 baud, 8 bits, no parity to the COM port.
|
||||
|
||||
#### USB to serial cable connection
|
||||
|
||||
##### User Port - extra USB 3.1A style connector on MiSTer
|
||||
|
||||
| USB | P7 | Name | PIN | Mister | emu wire |
|
||||
|---|---|---|---|---|---|
|
||||
|1 | +5V | +5V|
|
||||
|2 | 2 | TX | SDA | AH9 | USER_IO[1] |
|
||||
|3 | 1 |RX | SCL | AG11 | USER_IO[0] |
|
||||
|4 | GND | GND|
|
||||
|5 | 8 | DSR | IO10 | AF15 | USER_IO[5]|
|
||||
|6 | 7 | DTR | IO11 | AG16 | USER_IO[4]|
|
||||
|7 | 6 | CTS | IO12 | AH11 | USER_IO[3]|
|
||||
|8 | 5 | RTS | IO13 | AH12 | USER_IO[2]|
|
||||
|9 | 10 | IO6 | IO8 | AF17 | USER_IO[6]|
|
||||
|10 | Shield | Shield |
|
||||
|
||||
##### FT232 USB to serial cable
|
||||
|
||||
|wire |name | mister usb IO port|
|
||||
|---|---|---|
|
||||
| Red|5V|N/C|
|
||||
| Black|GND|GND|
|
||||
| White|RXD|2|
|
||||
| Green|TXD|3|
|
||||
| Yellow|RTS|7|
|
||||
| Blue|CTS|8|
|
||||
|
||||
#### For SSH with PuTTY
|
||||
|
||||
- Connect to the ip address of your MiSTer fpga.
|
||||
|
||||
#### Linux command line to establish the connection to the core
|
||||
|
||||
1. Identify the UART device:
|
||||
- Usually mapped to `/dev/ttyS1` or `/dev/ttyUSB0`
|
||||
- Use this command to help identify the correct device:
|
||||
|
||||
``` bash
|
||||
dmesg | grep tty
|
||||
```
|
||||
|
||||
2. Access the serial terminal:
|
||||
- Use `screen` or `minicom`
|
||||
- Example command with `screen`:
|
||||
|
||||
``` bash
|
||||
screen /dev/ttyS1 115200
|
||||
```
|
||||
|
||||
- Replace `/dev/ttyS1` with the correct device identifier
|
||||
- Change 115200 to the appropriate baud rate if different
|
||||
|
||||
3. Enable Flow Control:
|
||||
- Use `stty`
|
||||
|
||||
``` bash
|
||||
stty -F /dev/ttyS1 crtscts
|
||||
```
|
||||
|
||||
- Replace `/dev/ttyS1` with the correct device identifier
|
||||
- This is done before the screen command
|
||||
|
||||
### Additional Information
|
||||
|
||||
For more details on console connection, refer to the official MiSTer documentation:
|
||||
[MiSTer Console Connection Guide](https://MiSTer-devel.github.io/MkDocs_MiSTer/advanced/console/)
|
||||
|
||||
## The MiSTer OSD allows the access to four machines
|
||||
|
||||
### Z80 CP/M
|
||||
|
||||
You can now use both an external SDCard and/or select the image file within MiSTer. Whatever you like.
|
||||
|
||||
### Formatting the SD Card and Installing CP/M
|
||||
|
||||
Note this procedure has to be performed from a tty terminal as descibed above.
|
||||
|
||||
#### Formatting the Drive
|
||||
|
||||
1. Load the Intel-HEX dump of the `FORMAT` program into memory by copying the contents of `FORM128.HEX` (for 128MB SD card utilization) into the terminal window.
|
||||
2. The `FORMAT` program will reside at memory address `$5000` when loaded. To start the formatting process, execute the program by typing `G5000` and pressing ENTER.
|
||||
3. You will see the following message:
|
||||
|
||||
```
|
||||
CP/M Formatter by G. Searle 2012
|
||||
```
|
||||
|
||||
4. After a few seconds, the formatting process will display:
|
||||
|
||||
```
|
||||
ABCDEFGHIJKLMNOP
|
||||
Formatting complete
|
||||
```
|
||||
|
||||
Each drive is 8MB, so a 128MB SD card will have drives labeled A: to P:.
|
||||
|
||||
#### Installing CP/M
|
||||
|
||||
CP/M is installed on the first track of the disk. When booted, the first track is read into memory and executed. To install CP/M, follow these steps:
|
||||
|
||||
1. Load the Intel-HEX dump of CP/M by copying the contents of `CPM22.HEX` into the terminal window (this takes about 10 seconds).
|
||||
2. Load the Intel-HEX dump of the CBIOS by copying the contents of `CBIOS128.HEX` (for 128MB total drive space) into the terminal window (this takes about 3 seconds).
|
||||
3. Load the Intel-HEX dump of `PUTSYS` by copying the contents of `PUTSYS.HEX` into the terminal window.
|
||||
|
||||
The `PUTSYS` program also resides at memory address `$5000`. To transfer CP/M and CBIOS to the disk, execute `PUTSYS` by typing `G5000` and pressing ENTER. You will see:
|
||||
|
||||
```
|
||||
CP/M System Transfer by G. Searle 2012
|
||||
System transfer complete
|
||||
```
|
||||
|
||||
At this point, CP/M is installed and ready for boot. You can now proceed with installing applications.
|
||||
|
||||
#### Boot CP/M from image file
|
||||
|
||||
Note that currently the `DOWNLOAD.COM` program is not working reliably (we hope to fix this in the future). To get around the issues with `DOWNLOAD.COM` we have added the cpm image file and some Python based utilities, thus being able to get a working and custamizable CP/M sytem up and running.
|
||||
|
||||
In the CPM-sd-image directory, you will find a zip file that contains a cmp.img file that can be copied to the /media/fat/games/MultipComp directory. This file can be used to boot CP/M without the SD card. It contains the structure for disks A thru P with A having the DOWNLOAD program and other utilities available. Use this as a strating point to place CP/M applications on the image. See the Installing Applications section at <http://searle.x10host.com/Multicomp/cpm/fpgaCPM.html#InstallingCPM>.
|
||||
|
||||
Note the process for this is mostly described in PART 2 - Using the Windows packager program. The packager program is in windowsApp. Again, this process requires the use of the tty terminal not the console, as you will be pasting the file data into the terminal.
|
||||
|
||||
We have also added a zip file in the CPM-sd-image directory with a set of application pre installed. See cpm-apps.zip. This file can also be copied to the /media/fat/games/MultipComp directory and mounted. It contains 5 drives A,C,D,E, and F where A still only has the DOWNLOAD program and the other drives contain the following. The cpm.zip file contains just the basic utilities described in the [CPM-sd-image](CPM-sd-image/README.MD) directory.
|
||||
|
||||
| C: | D: | E: | F: |
|
||||
|-----------------|-------------------|------------------|-----------------|
|
||||
| 0_FILES.TXT | 0_GAMES | 0_OLDUTILS | 0_NEWUTILS |
|
||||
| 1_BDS_TINY_C | 1_MUMATHSIMP | 1_F80M80BASIC | 1_ROMS |
|
||||
| 2_APL | 2_CROSSTALK | 2_AZTEC_C_106D | 2_ZSYSTEM |
|
||||
| 3_JANUS_ADA15 | 3_QTERM43 | 3_TPASCAL3 | 3_MICROPRO |
|
||||
| 4_MS_COBOL | 4_CLINK | 4_DXFORTH401 | 4_MULTIPLAN |
|
||||
| 5_PILOT | 5_SUPERSFTUTIL | 5_PLI14 | 5_DBASEII |
|
||||
| 6_SYSLIB | 6_RCPM | 6_ALGOLM | 6_DWG_APPS |
|
||||
| 7_BBC BASIC | 7_DDTZ SOURCES | 7_SUPERCALC | 8_MICROSHELL |
|
||||
|
||||
Note the use of user numbers here i.e. 0_, 1_ etc..
|
||||
(Not all the applications were tested to run, so you are on your own)
|
||||
|
||||
The applications were obtained from the Obsolescence Guaranteed site.
|
||||
|
||||
Included in the CPM-sd-image directory are also some python scripts to initialize/build the image for the CP/M disks. Along with a script in the transient packages directory that can extract the .COM files from the package (note this was used to provide some content to build the cpm.img file provided in CPM-sd-image directory).
|
||||
|
||||
To use the Python scripts we recommend using Visual Studio Code and opening the MultiComp_MiSTer directory as its project location. Them just run the Python scripts from within Visual Studio Code.
|
||||
|
||||
__Other useful links.__
|
||||
|
||||
For convenience you can use the Multicomp FPGA - CP/M Demo Disk from Obsolescence Guaranteed:
|
||||
<http://obsolescence.wixsite.com/obsolescence/multicomp-fpga-cpm-demo-disk>
|
||||
|
||||
After you have flashed the CP/M Demo Disk to the SD Card you will have to use the secondary SD Card on the MiSTer on the I/O Board:
|
||||
<https://github.com/MiSTer-devel/Wiki_MiSTer/wiki/IO-Board>
|
||||
|
||||
Using CP/M - from Grant Searle website:
|
||||
<http://searle.x10host.com/Multicomp/cpm/fpgaCPM.html>
|
||||
|
||||
DeRamp - This website focuses on early personal computers from the mid 70s into the early 80s. Here you'll find resources for restoring and maintaining many of the great computers and peripherals from this era, in addition it has a Downloads section where you can find the bits for many applications. <https://deramp.com/>
|
||||
|
||||
### Z80 Basic
|
||||
|
||||
SGN, INT, ABS ,USR, FRE, INP, POS, SQR, RND ,LOG, EXP, COS, SIN, TAN, ATN, PEEK ,DEEK ,LEN, STR$, VAL ,ASC, CHR$ ,LEFT$,
|
||||
RIGHT$, MID$, END, FOR, NEXT, DATA, INPUT, DIM, READ, LET, GOTO, RUN, IF, RESTORE, GOSUB, RETURN, REM, STOP, OUT, ON,
|
||||
NULL, WAIT, DEF, POKE, DOKE, LINES, CLS, WIDTH, MONITOR, PRINT, CONT, LIST, CLEAR, NEW, TAB, TO, FN, SPC, THEN, NOT,
|
||||
STEP, +, -, *, /, ^, AND, OR, >, <, =
|
||||
|
||||
PLUS additional implementations here (making it version 4.7b):
|
||||
|
||||
HEX$(nn) - convert a SIGNED integer (-32768 to +32767) to a string containing the hex value
|
||||
|
||||
BIN$(nn) - convert a SIGNED integer (-32768 to +32767) to a string containing the binary value
|
||||
|
||||
&Hnn - interpret the value after the &H as a HEX value (signed 16 bit)
|
||||
|
||||
&Bnn - interpret the value after the &B as a BINARY value (signed 16 bit)
|
||||
|
||||
### 6502 Basic - No SD card support (No CSAVE/CLOAD)
|
||||
|
||||
END, FOR, NEXT, DATA, INPUT, DIM, READ, LET, GOTO, RUN, IF, RESTORE, GOSUB, RETURN, REM, STOP, ON, NULL, WAIT, DEF, POKE, PRINT,
|
||||
CONT, LIST, CLEAR, NEW, TAB(, TO, FN, SPC(, THEN, NOT, STEP, SGN, INT, ABS, USR, FRE, POS, SQR, RND, LOG, EXP, COS, SIN, TAN, ATN,
|
||||
PEEK, LEN, STR$, VAL, ASC, CHR$, LEFT$, RIGHT$, MID$, +, -, *, /, ^, AND, OR, >, +, <
|
||||
|
||||
### 6809 Basic - No SD card support(No CSAVE/CLOAD)
|
||||
|
||||
FOR, GO, REM, ELSE, IF, DATA, PRINT, ON GOSUB, ON GOTO, INPUT, LINE INPUT, END, NEXT, DIM, READ, RUN, RESTORE, RETURN, STOP, POKE,
|
||||
CONT, LIST, CLEAR, NEW, EXEC, TAB, TO, SUB, THEN, NOT, STEP, +, -, *, /, ^, AND, OR, >, =, <, DEL, DEF, LET, RENUM, FN, &, &H, TRON,
|
||||
TROFF, EDIT, SGN, INT, ABS, USR, RND, SIN, PEEK, LEN, STR$, VAL, ASC, CHR$, LEFT$, RIGHT$, MID$, INKEY$, MEM, ATN, COS, TAN, EXP, FIX,
|
||||
LOG, SQR, HEX$, VARPTR, INSTR, STRING$, MID$ (MODIFICATION), POS
|
||||
|
||||
<http://searle.x10host.com/Multicomp/#BASICKeywords>
|
||||
|
||||
# MultiComp OSD Configuration
|
||||
|
||||
This section describes the On-Screen Display menu configuration for the MultiComp system, providing control over CPU selection, storage, and communication parameters.
|
||||
|
||||
## Menu Structure
|
||||
|
||||
### System Control
|
||||
|
||||
- __Mount *.IMG__: Provide the image in the games/Multicomp directory
|
||||
- __Reset after Mount__: Configures system behavior after mounting storage - Options: No, Yes
|
||||
- __Reset__: System reset function
|
||||
|
||||
### CPU and ROM Configuration
|
||||
|
||||
- __CPU-ROM Selection__:
|
||||
- Z80 with CP/M
|
||||
- Z80 with BASIC
|
||||
- 6502 with BASIC
|
||||
- 6809 with BASIC
|
||||
|
||||
### Communication Settings
|
||||
|
||||
- __Baud Rate__:
|
||||
- 115200
|
||||
- 38400
|
||||
- 19200
|
||||
- 9600
|
||||
- 4800
|
||||
- 2400
|
||||
- __Serial Port__:
|
||||
- Console Port - use the MiSTer console port
|
||||
- User IO Port - use the MiSTer user I/O USB 3.1 port
|
||||
- __Flow Control__:
|
||||
- None - no hardware flow control
|
||||
- RTS/CTS - enable hardware flow control using RTS/CTS signals
|
||||
|
||||
### Storage Configuration
|
||||
|
||||
- __Storage Controller__:
|
||||
- SD Controller - select the secondary SD card as storage
|
||||
- Image Controller - select this to access the cpm image from the games/Multicomp directory
|
||||
- __Storage Images__: Allows mounting disk images (.IMG files)
|
||||
|
||||
### Additional Information
|
||||
The OSD includes version information and build date tracking. This configuration interface provides comprehensive control over the MultiComp's core functionality, allowing users to switch between different CPU architectures, operating systems, and I/O configurations.
|
||||
|
||||
The menu system is designed for straightforward navigation and configuration of the MultiComp's essential features, making it accessible for both basic setup and advanced customization needs.
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Serial Communication Issues
|
||||
|
||||
- If no response when typing:
|
||||
- Verify correct baud rate is selected
|
||||
- Check that the correct serial port is selected (Console vs User IO)
|
||||
- Try enabling/disabling flow control
|
||||
- For User IO port, verify cable connections match pinout documentation
|
||||
|
||||
### Storage Issues
|
||||
|
||||
- If unable to access CP/M:
|
||||
- When using SD Controller, verify SD card is properly formatted
|
||||
- When using Image Controller, ensure .IMG file is in the correct directory (/media/fat/games/MultiComp)
|
||||
- Try toggling "Reset after Mount" option
|
||||
|
||||
### System Stability
|
||||
|
||||
- 6809 Basic has known reset issues (inherited from original design)
|
||||
- If system becomes unresponsive:
|
||||
- Use OSD Reset function
|
||||
- Try power cycling the MiSTer
|
||||
- Verify correct CPU-ROM selection for your intended use
|
||||
|
||||
### Known Limitations
|
||||
|
||||
- If the DOWNLOAD\.COM program has reliability issues in CP/M use a slower baud rate, we have had some sucess at 2400 and 9600 baud, 115200 baud seems to consistantly drop characters even with flow control enabled
|
||||
- 6502 and 6809 Basic variants do not support SD card operations (no CSAVE/CLOAD)\
|
||||
|
||||
### License
|
||||
|
||||
__Software and VHDL project download link__
|
||||
|
||||
By downloading these files you must agree to the following: The original
|
||||
copyright owners of ROM contents are respectfully acknowledged. Use of the
|
||||
contents of any file within your own projects is permitted freely, but any
|
||||
publishing of material containing whole or part of any file distributed
|
||||
here, or derived from the work that I have done here will contain an
|
||||
acknowledgment back to myself, Grant Searle, and a link back to this page.
|
||||
Any file published or distributed that contains all or part of any file
|
||||
arom this page must be made available free of charge.
|
||||
|
||||
### Original Author
|
||||
|
||||
Grant Searle
|
||||
|
||||
### URL
|
||||
|
||||
[Grant's MULTICOMP pick and mix computer](http://searle.x10host.com/Multicomp/)
|
||||
|
||||
# MiSTer MultiComp BASIC Keywords Reference
|
||||
|
||||
## Keywords by Category
|
||||
|
||||
### Mathematical Functions
|
||||
|
||||
| Keyword | Z80 | 6502 | 6809 | Description | Usage Example |
|
||||
|---------|-----|------|------|-------------|---------------|
|
||||
| ABS | ✓ | ✓ | ✓ | Returns absolute value | `X = ABS(-5)` |
|
||||
| ATN | ✓ | ✓ | ✓ | Returns arctangent | `A = ATN(1)` |
|
||||
| COS | ✓ | ✓ | ✓ | Returns cosine | `C = COS(3.14159/2)` |
|
||||
| EXP | ✓ | ✓ | ✓ | Returns e raised to power | `E = EXP(2)` |
|
||||
| FIX | - | - | ✓ | Truncates decimal portion | `F = FIX(3.7)` |
|
||||
| INT | ✓ | ✓ | ✓ | Returns integer portion | `I = INT(5.7)` |
|
||||
| LOG | ✓ | ✓ | ✓ | Returns natural logarithm | `L = LOG(100)` |
|
||||
| SGN | ✓ | ✓ | ✓ | Returns sign of number (-1,0,1) | `S = SGN(-42)` |
|
||||
| SIN | ✓ | ✓ | ✓ | Returns sine | `S = SIN(3.14159/2)` |
|
||||
| SQR | ✓ | ✓ | ✓ | Returns square root | `R = SQR(16)` |
|
||||
| TAN | ✓ | ✓ | ✓ | Returns tangent | `T = TAN(0.785)` |
|
||||
|
||||
### String Functions
|
||||
|
||||
| Keyword | Z80 | 6502 | 6809 | Description | Usage Example |
|
||||
|---------|-----|------|------|-------------|---------------|
|
||||
| ASC | ✓ | ✓ | ✓ | Returns ASCII value of character | `A = ASC("A")` |
|
||||
| CHR$ | ✓ | ✓ | ✓ | Returns character for ASCII value | `C$ = CHR$(65)` |
|
||||
| INSTR | - | - | ✓ | Searches for substring | `I = INSTR(A$, "FIND")` |
|
||||
| LEFT$ | ✓ | ✓ | ✓ | Returns leftmost characters | `L$ = LEFT$("HELLO", 2)` |
|
||||
| LEN | ✓ | ✓ | ✓ | Returns string length | `L = LEN("TEST")` |
|
||||
| MID$ | ✓ | ✓ | ✓ | Returns substring | `M$ = MID$("HELLO", 2, 2)` |
|
||||
| RIGHT$ | ✓ | ✓ | ✓ | Returns rightmost characters | `R$ = RIGHT$("WORLD", 3)` |
|
||||
| STR$ | ✓ | ✓ | ✓ | Converts number to string | `S$ = STR$(123)` |
|
||||
| STRING$ | - | - | ✓ | Creates string of repeated characters | `S$ = STRING$(5, "*")` |
|
||||
| VAL | ✓ | ✓ | ✓ | Converts string to number | `V = VAL("123")` |
|
||||
|
||||
### Program Control
|
||||
|
||||
| Keyword | Z80 | 6502 | 6809 | Description | Usage Example |
|
||||
|---------|-----|------|------|-------------|---------------|
|
||||
| CONT | ✓ | ✓ | ✓ | Continues program execution | `CONT` |
|
||||
| END | ✓ | ✓ | ✓ | Ends program | `END` |
|
||||
| FOR/NEXT | ✓ | ✓ | ✓ | Loop structure | `FOR I=1 TO 10 : PRINT I : NEXT I` |
|
||||
| GOSUB | ✓ | ✓ | ✓ | Calls subroutine | `GOSUB 1000` |
|
||||
| GOTO | ✓ | ✓ | ✓ | Jumps to line number | `GOTO 100` |
|
||||
| IF/THEN | ✓ | ✓ | ✓ | Conditional execution | `IF X=5 THEN PRINT "YES"` |
|
||||
| ON GOSUB | - | - | ✓ | Multiple branch subroutine | `ON X GOSUB 100,200,300` |
|
||||
| ON GOTO | - | - | ✓ | Multiple branch jump | `ON X GOTO 100,200,300` |
|
||||
| RETURN | ✓ | ✓ | ✓ | Returns from subroutine | `RETURN` |
|
||||
| STOP | ✓ | ✓ | ✓ | Halts program execution | `STOP` |
|
||||
|
||||
### Data and Variables
|
||||
|
||||
| Keyword | Z80 | 6502 | 6809 | Description | Usage Example |
|
||||
|---------|-----|------|------|-------------|---------------|
|
||||
| DATA | ✓ | ✓ | ✓ | Stores program data | `DATA 100,200,"TEXT"` |
|
||||
| DEF FN | ✓ | ✓ | ✓ | Defines function | `DEF FNA(X)=X*X+2` |
|
||||
| DIM | ✓ | ✓ | ✓ | Declares array dimensions | `DIM A(10),B$(20)` |
|
||||
| INPUT | ✓ | ✓ | ✓ | Accepts user input | `INPUT "Name?";N$` |
|
||||
| LET | ✓ | ✓ | ✓ | Assigns variable value | `LET A=5` or `A=5` |
|
||||
| LINE INPUT | - | - | ✓ | Inputs entire line | `LINE INPUT "Text?";A$` |
|
||||
| READ | ✓ | ✓ | ✓ | Reads DATA values | `READ A,B,C$` |
|
||||
| RESTORE | ✓ | ✓ | ✓ | Resets DATA pointer | `RESTORE` |
|
||||
|
||||
### System and Memory
|
||||
|
||||
| Keyword | Z80 | 6502 | 6809 | Description | Usage Example |
|
||||
|---------|-----|------|------|-------------|---------------|
|
||||
| DEEK | ✓ | - | - | Reads word from memory | `D = DEEK(16384)` |
|
||||
| DOKE | ✓ | - | - | Writes word to memory | `DOKE 16384,12345` |
|
||||
| FRE | ✓ | ✓ | - | Returns free memory | `F = FRE(0)` |
|
||||
| INP | ✓ | - | - | Reads from I/O port | `I = INP(255)` |
|
||||
| MEM | - | - | ✓ | Returns memory size | `M = MEM` |
|
||||
| OUT | ✓ | - | - | Writes to I/O port | `OUT 255,10` |
|
||||
| PEEK | ✓ | ✓ | ✓ | Reads byte from memory | `P = PEEK(16384)` |
|
||||
| POKE | ✓ | ✓ | ✓ | Writes byte to memory | `POKE 16384,255` |
|
||||
| USR | ✓ | ✓ | ✓ | Calls machine language routine | `U = USR(32768)` |
|
||||
| VARPTR | - | - | ✓ | Returns variable address | `V = VARPTR(A)` |
|
||||
|
||||
### Program Editing
|
||||
|
||||
| Keyword | Z80 | 6502 | 6809 | Description | Usage Example |
|
||||
|---------|-----|------|------|-------------|---------------|
|
||||
| CLEAR | ✓ | ✓ | ✓ | Clears variables | `CLEAR` |
|
||||
| CLS | ✓ | - | - | Clears screen | `CLS` |
|
||||
| DEL | - | - | ✓ | Deletes program lines | `DEL 100-200` |
|
||||
| EDIT | - | - | ✓ | Edits program line | `EDIT 100` |
|
||||
| LIST | ✓ | ✓ | ✓ | Lists program | `LIST` or `LIST 100-200` |
|
||||
| NEW | ✓ | ✓ | ✓ | Clears program | `NEW` |
|
||||
| RENUM | - | - | ✓ | Renumbers program lines | `RENUM 100,10` |
|
||||
| RUN | ✓ | ✓ | ✓ | Executes program | `RUN` or `RUN 100` |
|
||||
| TRON/TROFF | - | - | ✓ | Trace mode on/off | `TRON` or `TROFF` |
|
||||
|
||||
### Z80 BASIC Specific Extensions (v4.7b)
|
||||
|
||||
| Keyword | Description | Usage Example |
|
||||
|---------|-------------|---------------|
|
||||
| HEX$(nn) | Converts signed integer to hex string | `H$ = HEX$(255)` |
|
||||
| BIN$(nn) | Converts signed integer to binary string | `B$ = BIN$(15)` |
|
||||
| &Hnn | Interprets nn as hexadecimal value | `X = &H1F` |
|
||||
| &Bnn | Interprets nn as binary value | `Y = &B1010` |
|
||||
|
||||
### Operators
|
||||
|
||||
| Operator | Z80 | 6502 | 6809 | Description | Usage Example |
|
||||
|----------|-----|------|------|-------------|---------------|
|
||||
| + | ✓ | ✓ | ✓ | Addition | `A = B + C` |
|
||||
| - | ✓ | ✓ | ✓ | Subtraction | `X = Y - Z` |
|
||||
| * | ✓ | ✓ | ✓ | Multiplication | `P = Q * R` |
|
||||
| / | ✓ | ✓ | ✓ | Division | `D = N / 2` |
|
||||
| ^ | ✓ | ✓ | ✓ | Exponentiation | `E = 2 ^ 3` |
|
||||
| AND | ✓ | ✓ | ✓ | Logical AND | `IF A>0 AND B<10 THEN...` |
|
||||
| OR | ✓ | ✓ | ✓ | Logical OR | `IF X=0 OR Y=0 THEN...` |
|
||||
| NOT | ✓ | ✓ | ✓ | Logical NOT | `IF NOT A THEN...` |
|
||||
| > | ✓ | ✓ | ✓ | Greater than | `IF X > 10 THEN...` |
|
||||
| < | ✓ | ✓ | ✓ | Less than | `IF Y < 5 THEN...` |
|
||||
| = | ✓ | ✓ | ✓ | Equal to | `IF A = B THEN...` |
|
||||
| & | - | - | ✓ | Bitwise AND | `R = X & Y` |
|
||||
|
||||
Notes:
|
||||
1. Z80 BASIC is the most commonly used version for CP/M systems
|
||||
2. 6502 BASIC is a Microsoft BASIC variant
|
||||
3. 6809 BASIC has the most extensive command set but lacks storage commands
|
||||
4. None of the 6502 and 6809 variants support CSAVE/CLOAD operations
|
||||
|
||||
Each example shows the most common usage pattern for the command. Many commands have additional optional parameters or alternate syntaxes not shown in these basic examples.
|
||||
MiSTer MultiComp
|
||||
================
|
||||
|
||||
Port of Grant Searle's MultiComp to the MiSTer.
|
||||
|
||||
Ported by Cyril Venditti and Fred VanEijk.
|
||||
|
||||
Updated by S0urceror to use MiSTer image files, use all 4 machine types and have the MiSTer
|
||||
UART connected to serial interface 2 of the core. The latter allows to use the core remotely.
|
||||
|
||||
## Using the MiSTer Serial Terminal/Console
|
||||
|
||||
### Connection Methods
|
||||
|
||||
1. USB: Connect the console port from the MiSTer FPGA to your computer using a USB cable.
|
||||
|
||||
2. Network: Use SSH to connect to the MiSTer FPGA if you have a Wireless or Ethernet connection.
|
||||
|
||||
3. USB/Serial cable: For more information see the Serial Port section of the Altair8800_MiSTer repository: <https://github.com/MiSTer-devel/Altair8800_MiSTer>
|
||||
|
||||
### Setting Up the Connection
|
||||
|
||||
#### For UART/Serial with PuTTY
|
||||
|
||||
- Connect at 115200 baud, 8 bits, no parity to the COM port.
|
||||
|
||||
#### USB to serial cable connection
|
||||
|
||||
##### User Port - extra USB 3.1A style connector on MiSTer
|
||||
|
||||
| USB | P7 | Name | PIN | Mister | emu wire |
|
||||
|---|---|---|---|---|---|
|
||||
|1 | +5V | +5V|
|
||||
|2 | 2 | TX | SDA | AH9 | USER_IO[1] |
|
||||
|3 | 1 |RX | SCL | AG11 | USER_IO[0] |
|
||||
|4 | GND | GND|
|
||||
|5 | 8 | DSR | IO10 | AF15 | USER_IO[5]|
|
||||
|6 | 7 | DTR | IO11 | AG16 | USER_IO[4]|
|
||||
|7 | 6 | CTS | IO12 | AH11 | USER_IO[3]|
|
||||
|8 | 5 | RTS | IO13 | AH12 | USER_IO[2]|
|
||||
|9 | 10 | IO6 | IO8 | AF17 | USER_IO[6]|
|
||||
|10 | Shield | Shield |
|
||||
|
||||
##### FT232 USB to serial cable
|
||||
|
||||
|wire |name | mister usb IO port|
|
||||
|---|---|---|
|
||||
| Red|5V|N/C|
|
||||
| Black|GND|GND|
|
||||
| White|RXD|2|
|
||||
| Green|TXD|3|
|
||||
| Yellow|RTS|7|
|
||||
| Blue|CTS|8|
|
||||
|
||||
#### For SSH with PuTTY
|
||||
|
||||
- Connect to the ip address of your MiSTer fpga.
|
||||
|
||||
#### Linux command line to establish the connection to the core
|
||||
|
||||
1. Identify the UART device:
|
||||
- Usually mapped to `/dev/ttyS1` or `/dev/ttyUSB0`
|
||||
- Use this command to help identify the correct device:
|
||||
|
||||
``` bash
|
||||
dmesg | grep tty
|
||||
```
|
||||
|
||||
2. Access the serial terminal:
|
||||
- Use `screen` or `minicom`
|
||||
- Example command with `screen`:
|
||||
|
||||
``` bash
|
||||
screen /dev/ttyS1 115200
|
||||
```
|
||||
|
||||
- Replace `/dev/ttyS1` with the correct device identifier
|
||||
- Change 115200 to the appropriate baud rate if different
|
||||
|
||||
3. Enable Flow Control:
|
||||
- Use `stty`
|
||||
|
||||
``` bash
|
||||
stty -F /dev/ttyS1 crtscts
|
||||
```
|
||||
|
||||
- Replace `/dev/ttyS1` with the correct device identifier
|
||||
- This is done before the screen command
|
||||
|
||||
### Additional Information
|
||||
|
||||
For more details on console connection, refer to the official MiSTer documentation:
|
||||
[MiSTer Console Connection Guide](https://MiSTer-devel.github.io/MkDocs_MiSTer/advanced/console/)
|
||||
|
||||
## The MiSTer OSD allows the access to four machines
|
||||
|
||||
### Z80 CP/M
|
||||
|
||||
You can now use both an external SDCard and/or select the image file within MiSTer. Whatever you like.
|
||||
|
||||
### Formatting the SD Card and Installing CP/M
|
||||
|
||||
Note this procedure has to be performed from a tty terminal as descibed above.
|
||||
|
||||
#### Formatting the Drive
|
||||
|
||||
1. Load the Intel-HEX dump of the `FORMAT` program into memory by copying the contents of `FORM128.HEX` (for 128MB SD card utilization) into the terminal window.
|
||||
2. The `FORMAT` program will reside at memory address `$5000` when loaded. To start the formatting process, execute the program by typing `G5000` and pressing ENTER.
|
||||
3. You will see the following message:
|
||||
|
||||
```
|
||||
CP/M Formatter by G. Searle 2012
|
||||
```
|
||||
|
||||
4. After a few seconds, the formatting process will display:
|
||||
|
||||
```
|
||||
ABCDEFGHIJKLMNOP
|
||||
Formatting complete
|
||||
```
|
||||
|
||||
Each drive is 8MB, so a 128MB SD card will have drives labeled A: to P:.
|
||||
|
||||
#### Installing CP/M
|
||||
|
||||
CP/M is installed on the first track of the disk. When booted, the first track is read into memory and executed. To install CP/M, follow these steps:
|
||||
|
||||
1. Load the Intel-HEX dump of CP/M by copying the contents of `CPM22.HEX` into the terminal window (this takes about 10 seconds).
|
||||
2. Load the Intel-HEX dump of the CBIOS by copying the contents of `CBIOS128.HEX` (for 128MB total drive space) into the terminal window (this takes about 3 seconds).
|
||||
3. Load the Intel-HEX dump of `PUTSYS` by copying the contents of `PUTSYS.HEX` into the terminal window.
|
||||
|
||||
The `PUTSYS` program also resides at memory address `$5000`. To transfer CP/M and CBIOS to the disk, execute `PUTSYS` by typing `G5000` and pressing ENTER. You will see:
|
||||
|
||||
```
|
||||
CP/M System Transfer by G. Searle 2012
|
||||
System transfer complete
|
||||
```
|
||||
|
||||
At this point, CP/M is installed and ready for boot. You can now proceed with installing applications.
|
||||
|
||||
#### Boot CP/M from image file
|
||||
|
||||
Note that currently the `DOWNLOAD.COM` program is not working reliably (we hope to fix this in the future). To get around the issues with `DOWNLOAD.COM` we have added the cpm image file and some Python based utilities, thus being able to get a working and custamizable CP/M sytem up and running.
|
||||
|
||||
In the CPM-sd-image directory, you will find a zip file that contains a cmp.img file that can be copied to the /media/fat/games/MultipComp directory. This file can be used to boot CP/M without the SD card. It contains the structure for disks A thru P with A having the DOWNLOAD program and other utilities available. Use this as a strating point to place CP/M applications on the image. See the Installing Applications section at <http://searle.x10host.com/Multicomp/cpm/fpgaCPM.html#InstallingCPM>.
|
||||
|
||||
Note the process for this is mostly described in PART 2 - Using the Windows packager program. The packager program is in windowsApp. Again, this process requires the use of the tty terminal not the console, as you will be pasting the file data into the terminal.
|
||||
|
||||
We have also added a zip file in the CPM-sd-image directory with a set of application pre installed. See cpm-apps.zip. This file can also be copied to the /media/fat/games/MultipComp directory and mounted. It contains 5 drives A,C,D,E, and F where A still only has the DOWNLOAD program and the other drives contain the following. The cpm.zip file contains just the basic utilities described in the [CPM-sd-image](CPM-sd-image/README.MD) directory.
|
||||
|
||||
| C: | D: | E: | F: |
|
||||
|-----------------|-------------------|------------------|-----------------|
|
||||
| 0_FILES.TXT | 0_GAMES | 0_OLDUTILS | 0_NEWUTILS |
|
||||
| 1_BDS_TINY_C | 1_MUMATHSIMP | 1_F80M80BASIC | 1_ROMS |
|
||||
| 2_APL | 2_CROSSTALK | 2_AZTEC_C_106D | 2_ZSYSTEM |
|
||||
| 3_JANUS_ADA15 | 3_QTERM43 | 3_TPASCAL3 | 3_MICROPRO |
|
||||
| 4_MS_COBOL | 4_CLINK | 4_DXFORTH401 | 4_MULTIPLAN |
|
||||
| 5_PILOT | 5_SUPERSFTUTIL | 5_PLI14 | 5_DBASEII |
|
||||
| 6_SYSLIB | 6_RCPM | 6_ALGOLM | 6_DWG_APPS |
|
||||
| 7_BBC BASIC | 7_DDTZ SOURCES | 7_SUPERCALC | 8_MICROSHELL |
|
||||
|
||||
Note the use of user numbers here i.e. 0_, 1_ etc..
|
||||
(Not all the applications were tested to run, so you are on your own)
|
||||
|
||||
The applications were obtained from the Obsolescence Guaranteed site.
|
||||
|
||||
Included in the CPM-sd-image directory are also some python scripts to initialize/build the image for the CP/M disks. Along with a script in the transient packages directory that can extract the .COM files from the package (note this was used to provide some content to build the cpm.img file provided in CPM-sd-image directory).
|
||||
|
||||
To use the Python scripts we recommend using Visual Studio Code and opening the MultiComp_MiSTer directory as its project location. Them just run the Python scripts from within Visual Studio Code.
|
||||
|
||||
__Other useful links.__
|
||||
|
||||
For convenience you can use the Multicomp FPGA - CP/M Demo Disk from Obsolescence Guaranteed:
|
||||
<http://obsolescence.wixsite.com/obsolescence/multicomp-fpga-cpm-demo-disk>
|
||||
|
||||
After you have flashed the CP/M Demo Disk to the SD Card you will have to use the secondary SD Card on the MiSTer on the I/O Board:
|
||||
<https://github.com/MiSTer-devel/Wiki_MiSTer/wiki/IO-Board>
|
||||
|
||||
Using CP/M - from Grant Searle website:
|
||||
<http://searle.x10host.com/Multicomp/cpm/fpgaCPM.html>
|
||||
|
||||
DeRamp - This website focuses on early personal computers from the mid 70s into the early 80s. Here you'll find resources for restoring and maintaining many of the great computers and peripherals from this era, in addition it has a Downloads section where you can find the bits for many applications. <https://deramp.com/>
|
||||
|
||||
### Z80 Basic
|
||||
|
||||
SGN, INT, ABS ,USR, FRE, INP, POS, SQR, RND ,LOG, EXP, COS, SIN, TAN, ATN, PEEK ,DEEK ,LEN, STR$, VAL ,ASC, CHR$ ,LEFT$,
|
||||
RIGHT$, MID$, END, FOR, NEXT, DATA, INPUT, DIM, READ, LET, GOTO, RUN, IF, RESTORE, GOSUB, RETURN, REM, STOP, OUT, ON,
|
||||
NULL, WAIT, DEF, POKE, DOKE, LINES, CLS, WIDTH, MONITOR, PRINT, CONT, LIST, CLEAR, NEW, TAB, TO, FN, SPC, THEN, NOT,
|
||||
STEP, +, -, *, /, ^, AND, OR, >, <, =
|
||||
|
||||
PLUS additional implementations here (making it version 4.7b):
|
||||
|
||||
HEX$(nn) - convert a SIGNED integer (-32768 to +32767) to a string containing the hex value
|
||||
|
||||
BIN$(nn) - convert a SIGNED integer (-32768 to +32767) to a string containing the binary value
|
||||
|
||||
&Hnn - interpret the value after the &H as a HEX value (signed 16 bit)
|
||||
|
||||
&Bnn - interpret the value after the &B as a BINARY value (signed 16 bit)
|
||||
|
||||
### 6502 Basic - No SD card support (No CSAVE/CLOAD)
|
||||
|
||||
END, FOR, NEXT, DATA, INPUT, DIM, READ, LET, GOTO, RUN, IF, RESTORE, GOSUB, RETURN, REM, STOP, ON, NULL, WAIT, DEF, POKE, PRINT,
|
||||
CONT, LIST, CLEAR, NEW, TAB(, TO, FN, SPC(, THEN, NOT, STEP, SGN, INT, ABS, USR, FRE, POS, SQR, RND, LOG, EXP, COS, SIN, TAN, ATN,
|
||||
PEEK, LEN, STR$, VAL, ASC, CHR$, LEFT$, RIGHT$, MID$, +, -, *, /, ^, AND, OR, >, +, <
|
||||
|
||||
### 6809 Basic - No SD card support(No CSAVE/CLOAD)
|
||||
|
||||
FOR, GO, REM, ELSE, IF, DATA, PRINT, ON GOSUB, ON GOTO, INPUT, LINE INPUT, END, NEXT, DIM, READ, RUN, RESTORE, RETURN, STOP, POKE,
|
||||
CONT, LIST, CLEAR, NEW, EXEC, TAB, TO, SUB, THEN, NOT, STEP, +, -, *, /, ^, AND, OR, >, =, <, DEL, DEF, LET, RENUM, FN, &, &H, TRON,
|
||||
TROFF, EDIT, SGN, INT, ABS, USR, RND, SIN, PEEK, LEN, STR$, VAL, ASC, CHR$, LEFT$, RIGHT$, MID$, INKEY$, MEM, ATN, COS, TAN, EXP, FIX,
|
||||
LOG, SQR, HEX$, VARPTR, INSTR, STRING$, MID$ (MODIFICATION), POS
|
||||
|
||||
<http://searle.x10host.com/Multicomp/#BASICKeywords>
|
||||
|
||||
# MultiComp OSD Configuration
|
||||
|
||||
This section describes the On-Screen Display menu configuration for the MultiComp system, providing control over CPU selection, storage, and communication parameters.
|
||||
|
||||
## Menu Structure
|
||||
|
||||
### System Control
|
||||
|
||||
- __Mount *.IMG__: Provide the image in the games/Multicomp directory
|
||||
- __Reset after Mount__: Configures system behavior after mounting storage - Options: No, Yes
|
||||
- __Reset__: System reset function
|
||||
|
||||
### CPU and ROM Configuration
|
||||
|
||||
- __CPU-ROM Selection__:
|
||||
- Z80 with CP/M
|
||||
- Z80 with BASIC
|
||||
- 6502 with BASIC
|
||||
- 6809 with BASIC
|
||||
|
||||
### Communication Settings
|
||||
|
||||
- __Baud Rate__:
|
||||
- 115200
|
||||
- 38400
|
||||
- 19200
|
||||
- 9600
|
||||
- 4800
|
||||
- 2400
|
||||
- __Serial Port__:
|
||||
- Console Port - use the MiSTer console port
|
||||
- User IO Port - use the MiSTer user I/O USB 3.1 port
|
||||
- __Flow Control__:
|
||||
- None - no hardware flow control
|
||||
- RTS/CTS - enable hardware flow control using RTS/CTS signals
|
||||
|
||||
### Storage Configuration
|
||||
|
||||
- __Storage Controller__:
|
||||
- SD Controller - select the secondary SD card as storage
|
||||
- Image Controller - select this to access the cpm image from the games/Multicomp directory
|
||||
- __Storage Images__: Allows mounting disk images (.IMG files)
|
||||
|
||||
### Additional Information
|
||||
The OSD includes version information and build date tracking. This configuration interface provides comprehensive control over the MultiComp's core functionality, allowing users to switch between different CPU architectures, operating systems, and I/O configurations.
|
||||
|
||||
The menu system is designed for straightforward navigation and configuration of the MultiComp's essential features, making it accessible for both basic setup and advanced customization needs.
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Serial Communication Issues
|
||||
|
||||
- Only the Z80 supports the external uart at this time
|
||||
- If no response when typing:
|
||||
- Verify correct baud rate is selected
|
||||
- Check that the correct serial port is selected (Console vs User IO)
|
||||
- Try enabling/disabling flow control
|
||||
- For User IO port, verify cable connections match pinout documentation
|
||||
|
||||
### Storage Issues
|
||||
|
||||
- If unable to access CP/M:
|
||||
- When using SD Controller, verify SD card is properly formatted
|
||||
- When using Image Controller, ensure .IMG file is in the correct directory (/media/fat/games/MultiComp)
|
||||
- Try toggling "Reset after Mount" option
|
||||
|
||||
### System Stability
|
||||
|
||||
- 6809 Basic had known reset issues (inherited from original design) the core was actually being reset but only a warm reset, now it supports a cold or warm reset with a prompt
|
||||
- If system becomes unresponsive:
|
||||
- Use OSD Reset function
|
||||
- Try power cycling the MiSTer
|
||||
- Verify correct CPU-ROM selection for your intended use
|
||||
|
||||
### Known Limitations
|
||||
|
||||
- If the DOWNLOAD\.COM program has reliability issues in CP/M use a slower baud rate, we have had some sucess at 2400 and 9600 baud, 115200 baud seems to consistantly drop characters even with flow control enabled
|
||||
- 6502 and 6809 Basic variants do not support SD card operations (no CSAVE/CLOAD)\
|
||||
|
||||
### License
|
||||
|
||||
__Software and VHDL project download link__
|
||||
|
||||
By downloading these files you must agree to the following: The original
|
||||
copyright owners of ROM contents are respectfully acknowledged. Use of the
|
||||
contents of any file within your own projects is permitted freely, but any
|
||||
publishing of material containing whole or part of any file distributed
|
||||
here, or derived from the work that I have done here will contain an
|
||||
acknowledgment back to myself, Grant Searle, and a link back to this page.
|
||||
Any file published or distributed that contains all or part of any file
|
||||
arom this page must be made available free of charge.
|
||||
|
||||
### Original Author
|
||||
|
||||
Grant Searle
|
||||
|
||||
### URL
|
||||
|
||||
[Grant's MULTICOMP pick and mix computer](http://searle.x10host.com/Multicomp/)
|
||||
|
||||
# MiSTer MultiComp BASIC Keywords Reference
|
||||
|
||||
## Keywords by Category
|
||||
|
||||
### Mathematical Functions
|
||||
|
||||
| Keyword | Z80 | 6502 | 6809 | Description | Usage Example |
|
||||
|---------|-----|------|------|-------------|---------------|
|
||||
| ABS | ✓ | ✓ | ✓ | Returns absolute value | `X = ABS(-5)` |
|
||||
| ATN | ✓ | ✓ | ✓ | Returns arctangent | `A = ATN(1)` |
|
||||
| COS | ✓ | ✓ | ✓ | Returns cosine | `C = COS(3.14159/2)` |
|
||||
| EXP | ✓ | ✓ | ✓ | Returns e raised to power | `E = EXP(2)` |
|
||||
| FIX | - | - | ✓ | Truncates decimal portion | `F = FIX(3.7)` |
|
||||
| INT | ✓ | ✓ | ✓ | Returns integer portion | `I = INT(5.7)` |
|
||||
| LOG | ✓ | ✓ | ✓ | Returns natural logarithm | `L = LOG(100)` |
|
||||
| SGN | ✓ | ✓ | ✓ | Returns sign of number (-1,0,1) | `S = SGN(-42)` |
|
||||
| SIN | ✓ | ✓ | ✓ | Returns sine | `S = SIN(3.14159/2)` |
|
||||
| SQR | ✓ | ✓ | ✓ | Returns square root | `R = SQR(16)` |
|
||||
| TAN | ✓ | ✓ | ✓ | Returns tangent | `T = TAN(0.785)` |
|
||||
|
||||
### String Functions
|
||||
|
||||
| Keyword | Z80 | 6502 | 6809 | Description | Usage Example |
|
||||
|---------|-----|------|------|-------------|---------------|
|
||||
| ASC | ✓ | ✓ | ✓ | Returns ASCII value of character | `A = ASC("A")` |
|
||||
| CHR$ | ✓ | ✓ | ✓ | Returns character for ASCII value | `C$ = CHR$(65)` |
|
||||
| INSTR | - | - | ✓ | Searches for substring | `I = INSTR(A$, "FIND")` |
|
||||
| LEFT$ | ✓ | ✓ | ✓ | Returns leftmost characters | `L$ = LEFT$("HELLO", 2)` |
|
||||
| LEN | ✓ | ✓ | ✓ | Returns string length | `L = LEN("TEST")` |
|
||||
| MID$ | ✓ | ✓ | ✓ | Returns substring | `M$ = MID$("HELLO", 2, 2)` |
|
||||
| RIGHT$ | ✓ | ✓ | ✓ | Returns rightmost characters | `R$ = RIGHT$("WORLD", 3)` |
|
||||
| STR$ | ✓ | ✓ | ✓ | Converts number to string | `S$ = STR$(123)` |
|
||||
| STRING$ | - | - | ✓ | Creates string of repeated characters | `S$ = STRING$(5, "*")` |
|
||||
| VAL | ✓ | ✓ | ✓ | Converts string to number | `V = VAL("123")` |
|
||||
|
||||
### Program Control
|
||||
|
||||
| Keyword | Z80 | 6502 | 6809 | Description | Usage Example |
|
||||
|---------|-----|------|------|-------------|---------------|
|
||||
| CONT | ✓ | ✓ | ✓ | Continues program execution | `CONT` |
|
||||
| END | ✓ | ✓ | ✓ | Ends program | `END` |
|
||||
| FOR/NEXT | ✓ | ✓ | ✓ | Loop structure | `FOR I=1 TO 10 : PRINT I : NEXT I` |
|
||||
| GOSUB | ✓ | ✓ | ✓ | Calls subroutine | `GOSUB 1000` |
|
||||
| GOTO | ✓ | ✓ | ✓ | Jumps to line number | `GOTO 100` |
|
||||
| IF/THEN | ✓ | ✓ | ✓ | Conditional execution | `IF X=5 THEN PRINT "YES"` |
|
||||
| ON GOSUB | - | - | ✓ | Multiple branch subroutine | `ON X GOSUB 100,200,300` |
|
||||
| ON GOTO | - | - | ✓ | Multiple branch jump | `ON X GOTO 100,200,300` |
|
||||
| RETURN | ✓ | ✓ | ✓ | Returns from subroutine | `RETURN` |
|
||||
| STOP | ✓ | ✓ | ✓ | Halts program execution | `STOP` |
|
||||
|
||||
### Data and Variables
|
||||
|
||||
| Keyword | Z80 | 6502 | 6809 | Description | Usage Example |
|
||||
|---------|-----|------|------|-------------|---------------|
|
||||
| DATA | ✓ | ✓ | ✓ | Stores program data | `DATA 100,200,"TEXT"` |
|
||||
| DEF FN | ✓ | ✓ | ✓ | Defines function | `DEF FNA(X)=X*X+2` |
|
||||
| DIM | ✓ | ✓ | ✓ | Declares array dimensions | `DIM A(10),B$(20)` |
|
||||
| INPUT | ✓ | ✓ | ✓ | Accepts user input | `INPUT "Name?";N$` |
|
||||
| LET | ✓ | ✓ | ✓ | Assigns variable value | `LET A=5` or `A=5` |
|
||||
| LINE INPUT | - | - | ✓ | Inputs entire line | `LINE INPUT "Text?";A$` |
|
||||
| READ | ✓ | ✓ | ✓ | Reads DATA values | `READ A,B,C$` |
|
||||
| RESTORE | ✓ | ✓ | ✓ | Resets DATA pointer | `RESTORE` |
|
||||
|
||||
### System and Memory
|
||||
|
||||
| Keyword | Z80 | 6502 | 6809 | Description | Usage Example |
|
||||
|---------|-----|------|------|-------------|---------------|
|
||||
| DEEK | ✓ | - | - | Reads word from memory | `D = DEEK(16384)` |
|
||||
| DOKE | ✓ | - | - | Writes word to memory | `DOKE 16384,12345` |
|
||||
| FRE | ✓ | ✓ | - | Returns free memory | `F = FRE(0)` |
|
||||
| INP | ✓ | - | - | Reads from I/O port | `I = INP(255)` |
|
||||
| MEM | - | - | ✓ | Returns memory size | `M = MEM` |
|
||||
| OUT | ✓ | - | - | Writes to I/O port | `OUT 255,10` |
|
||||
| PEEK | ✓ | ✓ | ✓ | Reads byte from memory | `P = PEEK(16384)` |
|
||||
| POKE | ✓ | ✓ | ✓ | Writes byte to memory | `POKE 16384,255` |
|
||||
| USR | ✓ | ✓ | ✓ | Calls machine language routine | `U = USR(32768)` |
|
||||
| VARPTR | - | - | ✓ | Returns variable address | `V = VARPTR(A)` |
|
||||
|
||||
### Program Editing
|
||||
|
||||
| Keyword | Z80 | 6502 | 6809 | Description | Usage Example |
|
||||
|---------|-----|------|------|-------------|---------------|
|
||||
| CLEAR | ✓ | ✓ | ✓ | Clears variables | `CLEAR` |
|
||||
| CLS | ✓ | - | - | Clears screen | `CLS` |
|
||||
| DEL | - | - | ✓ | Deletes program lines | `DEL 100-200` |
|
||||
| EDIT | - | - | ✓ | Edits program line | `EDIT 100` |
|
||||
| LIST | ✓ | ✓ | ✓ | Lists program | `LIST` or `LIST 100-200` |
|
||||
| NEW | ✓ | ✓ | ✓ | Clears program | `NEW` |
|
||||
| RENUM | - | - | ✓ | Renumbers program lines | `RENUM 100,10` |
|
||||
| RUN | ✓ | ✓ | ✓ | Executes program | `RUN` or `RUN 100` |
|
||||
| TRON/TROFF | - | - | ✓ | Trace mode on/off | `TRON` or `TROFF` |
|
||||
|
||||
### Z80 BASIC Specific Extensions (v4.7b)
|
||||
|
||||
| Keyword | Description | Usage Example |
|
||||
|---------|-------------|---------------|
|
||||
| HEX$(nn) | Converts signed integer to hex string | `H$ = HEX$(255)` |
|
||||
| BIN$(nn) | Converts signed integer to binary string | `B$ = BIN$(15)` |
|
||||
| &Hnn | Interprets nn as hexadecimal value | `X = &H1F` |
|
||||
| &Bnn | Interprets nn as binary value | `Y = &B1010` |
|
||||
|
||||
### Operators
|
||||
|
||||
| Operator | Z80 | 6502 | 6809 | Description | Usage Example |
|
||||
|----------|-----|------|------|-------------|---------------|
|
||||
| + | ✓ | ✓ | ✓ | Addition | `A = B + C` |
|
||||
| - | ✓ | ✓ | ✓ | Subtraction | `X = Y - Z` |
|
||||
| * | ✓ | ✓ | ✓ | Multiplication | `P = Q * R` |
|
||||
| / | ✓ | ✓ | ✓ | Division | `D = N / 2` |
|
||||
| ^ | ✓ | ✓ | ✓ | Exponentiation | `E = 2 ^ 3` |
|
||||
| AND | ✓ | ✓ | ✓ | Logical AND | `IF A>0 AND B<10 THEN...` |
|
||||
| OR | ✓ | ✓ | ✓ | Logical OR | `IF X=0 OR Y=0 THEN...` |
|
||||
| NOT | ✓ | ✓ | ✓ | Logical NOT | `IF NOT A THEN...` |
|
||||
| > | ✓ | ✓ | ✓ | Greater than | `IF X > 10 THEN...` |
|
||||
| < | ✓ | ✓ | ✓ | Less than | `IF Y < 5 THEN...` |
|
||||
| = | ✓ | ✓ | ✓ | Equal to | `IF A = B THEN...` |
|
||||
| & | - | - | ✓ | Bitwise AND | `R = X & Y` |
|
||||
|
||||
Notes:
|
||||
1. Z80 BASIC is the most commonly used version for CP/M systems
|
||||
2. 6502 BASIC is a Microsoft BASIC variant
|
||||
3. 6809 BASIC has the most extensive command set but lacks storage commands
|
||||
4. None of the 6502 and 6809 variants support CSAVE/CLOAD operations
|
||||
|
||||
Each example shows the most common usage pattern for the command. Many commands have additional optional parameters or alternate syntaxes not shown in these basic examples.
|
||||
|
||||
259
ROMS/6809/BASIC.S19
Normal file
259
ROMS/6809/BASIC.S19
Normal file
@@ -0,0 +1,259 @@
|
||||
S10A007C0C8426020C83B67C
|
||||
S10600857EE20212
|
||||
S123E0008D0327FC39B6FFD085012706B6FFD1847F394F398D263402810D270DB7FFD10C50
|
||||
S123E0207996799178251220100F798D0F860DB7FFD18D08860AB7FFD13502393402B6FF9F
|
||||
S123E040D0850227F935023910CE01EE860CBDE0148EE157A6802705BDE01420F7B6FFD060
|
||||
S123E060850127F9B6FFD1847F8143271481572706966E8155260A9E6FA684811226026EFF
|
||||
S123E080848E02186F83300126FA8E02176F809F19A60243A702A10226063001630120F1B6
|
||||
S123E0A09F719F279F233089FF389F211F148EE0F5CE0076C612BDE1F1CE00A7C604BDE1F6
|
||||
S123E0C0F1863997F0BDE4FD8E00B59F8DCEEC11C60AEF815A26FB8695B7FFD08EE12ABD7B
|
||||
S123E0E0F1258EE0ED9F6F8655976E200412BDE5177EE4653B1040FF00EC110C8426020CBC
|
||||
S123E10083B600007EE2027EE2017EE0F47EEC11804FC7525932E260E36D1DE300E211003A
|
||||
S123E12000000000000000000000003638303920455854454E4445442042415349430D28DC
|
||||
S123E14043292031393832204259204D4943524F534F46540D0D00434F4C44204F52205756
|
||||
S123E16041524D2053544152542028432F57293F200D0034169E76DC789F6AD76C976D3530
|
||||
S123E180960F738E00F4C601BDE000810826075A27EF301F20348115260A5A27E48608BD3E
|
||||
S123E1A0E01420F681031A012705810D260D4F3401BDF0E56F848E00F33581812025C98175
|
||||
S123E1C07B24C5C1FA24C1A7805CBDE01420B92705BDEF049F7A6E9F007A7EE5E696732636
|
||||
S123E1E003BDE0050F73975310260C6A97567EEE62A680A7C05A26F939399D8227FB7EEA82
|
||||
S123E200433B813A240A812026020E7C803080D039F403F477F41C00ADF6A8F6FDEF17EE63
|
||||
S123E22048ECC4EEDDEE67EE53F7ADF775F77EF8EFF921F843FAA9F87DFF7BEE72EE8FEE63
|
||||
S123E24096E1DDECB5FAB1FB71FB4179F14E79F1457BF2557BF31A7FF88650EA9C46EA9B23
|
||||
S123E260464FD247CF5245CDA7454C53C549C6444154C15052494ED44FCE494E5055D44541
|
||||
S123E2804EC44E4558D44449CD524541C45255CE524553544F52C55245545552CE53544F44
|
||||
S123E2A0D0504F4BC5434F4ED44C4953D4434C4541D24E45D7455845C354524FCE54524FBD
|
||||
S123E2C046C64445CC4445C64C494EC552454E55CD454449D4544142A854CF5355C254488D
|
||||
S123E2E045CE4E4FD4535445D04F46C6ABADAAAFDE414EC44FD2BEBDBC46CE5553494EC72B
|
||||
S123E3005347CE494ED44142D35553D2524EC45349CE504545CB4C45CE535452A45641CC84
|
||||
S123E3204153C3434852A44154CE434FD35441CE4558D04649D84C4FC7504FD35351D24870
|
||||
S123E3404558A44C454654A45249474854A44D4944A4494E4B4559A44D45CD5641525054F9
|
||||
S123E360D2494E5354D2535452494E47A4E52BE676E6D3E6D3E6D3E704E6D0F0ADE732E767
|
||||
S123E380DFE5FDE8C4EB15E819E66BE5DFE6B0E601EF1EE626EF25E637E4FBE1CFFAA4FA08
|
||||
S123E3A0A5FD20FC64FFBFFDAAF9304E46534E52474F4446434F564F4D554C425344442F91
|
||||
S123E3C0304944544D4F534C535354434E4644414F444E494F464D4E4F4945445355464EE0
|
||||
S123E3E045204552524F520020494E20000D4F4B0D000D425245414B003064C6129F0FA66D
|
||||
S123E4008480802615AE019F119E3B27099C1127099E0F3A20E59E119F3B9E0F4D398D17A8
|
||||
S123E420DE4133419E433001A68236029C4726F8DF45394F58D31FC3003A250810DF17109C
|
||||
S123E440931725EEC60CBDE517BDF0E9BDF1388EE3AB3A8D318D2F8EE3E0BDF12596684CB6
|
||||
S123E4602703BDF54EBDF0E98EE3EDBDF125BDE181CEFFFFDF6825F69F839D7C27F0250BD8
|
||||
S123E480BDEFDA7EE5B4A6807EF13ABDE7579E2B9FF1BDEFDAD7038D4C2512DC47A384D32B
|
||||
S123E4A01BDD1BEE843702A7809C1B26F896F3271CDC1BDD43DB038900DD41BDE41ECE00A9
|
||||
S123E4C0EF3702A7809C4526F89E419F1B8D368D02209B9E19EC8427213304A6C026FCEF27
|
||||
S123E4E084AE8420F0DC2B9E19EE84270910A3022306AE8420F31A019F473926FB9E196F4E
|
||||
S123E500806F809F1B9E19BDE6AB9E279F23BDE5DF9E1B9F1D9F1F8E00C99F0BAEE410DE0D
|
||||
S123E520216FE20F2D0F2E0F086E8486809708BDE779BDE3F9326226049E0F3285C609BDDA
|
||||
S123E540E433BDE6D8DC683416C6A0BDEA3BBDE90FBDE90DD654CA7FD450D750108EE56343
|
||||
S123E5607EE9B68EF24EBDF39D9D8281A426059D7CBDE90DBDF3F6BDE9B2DC3B34068680CF
|
||||
S123E58034021CAF8D609E839F2FA6802707813A27227EEA43A68197002772EC80DD689FF0
|
||||
S123E5A083968C270F865BBDE0149668BDF555865DBDE0149D7C8D0220C827294D102A01E9
|
||||
S123E5C0B881FF270F819E22C9BEE118481F893A9D7C6E949D7C8197102714ED7EEA439E11
|
||||
S123E5E019301F9F3339BDE005270A8103271281132703977339BDE00527FB20EE9D822002
|
||||
S123E600021A0126319E839F2F060032629E688CFFFF27069F299E2F9F2D8EE3F10D00105C
|
||||
S123E6202AFE427EE45A260EC6209E2D1027FE169F839E299F6839272CBDEBAD34069E27B0
|
||||
S123E6409D82270CBDEA39BDEF04301F9C7122181F10A3E125121F0383003A250B931B2572
|
||||
S123E66007DF219F277EE50A7EE4449D821027FE94BDE50A20191F899D7CC1A02716C1A128
|
||||
S123E6802645C603BDE433DE839E6886A134528D037EE5829D82BDE7578D403001DC2B10B6
|
||||
S123E6A0936822029E19BDE4E92517301F9F833926FD86FF973BBDE3F91F148121270BC630
|
||||
S123E6C0048CC60E7EE4467EEA4335529F68DF838D068C8D069F8339C63A865FD7015F9EC8
|
||||
S123E6E0831F98D6019701A68427EC3404A1E027E63001812227EA4C26023001818626E7CC
|
||||
S123E7000C0420E3BDE90D9D8281812705C6A2BDEA3B964F26130F048DB64D27BA9D7C815C
|
||||
S123E7208426F50A042AF19D7C9D821025FF657EE5BABDEED2C681BDEA3B340281A12704F6
|
||||
S123E74081A026830A53260535047EE6789D7C8D06812C27EF35849E749F2B24618030977E
|
||||
S123E76001DC2B811822DB58495849D32B5849DB018900DD2B9D7C20E2BDEB1E9F3BC6AE7A
|
||||
S123E780BDEA3B96063402BDE922350246BDE91410270C289E52DC2110A30224119C1B25A4
|
||||
S123E7A00DE684BDECD49E4DBDEE0A8E00569F4DBDEE3CDE4D9E3B3726A78410AF02393F45
|
||||
S123E7C05245444F0D007EE446960927079E319F687EEA438EE7BEBDF1259E2F9F8339C614
|
||||
S123E7E0169E68300127DF8D01398122260BBDEA10C63BBDEA3BBDF1288E00F36F848D06B0
|
||||
S123E800C62CE7842016BDF138BDF135BDE181240532647EE609C62E399E33864F97099F3B
|
||||
S123E82035BDEB1E9F3B9E839F2B9E35A684260996092651BDF1388DCD9F839D7CD6062754
|
||||
S123E840239E8397018122270E301F4F9701BDE173863A9701862C9702BDECE5BDEA15BD0F
|
||||
S123E860E7942006BDF49BBDF3BC9D822706812C1026FF529E839F359E2B9F839D82272174
|
||||
S123E880BDEA39209C9F83BDE6D830014D260AC606EE812741EC81DD31A684818626E62012
|
||||
S123E8A0989E35D6091026FD3AA68427068EE8B37EF125393F45585452412049474E4F52EE
|
||||
S123E8C045440D0026049E742003BDEB1E9F3BBDE3F92704C60020471F143003BDF39DA655
|
||||
S123E8E06897549E3BBDF14BBDF3BC3069BDF41FE068270CAE6E9F68AEE8109F837EE582CF
|
||||
S123E90032E8129D82812C26F49D7C8DBD8D131CFE7D1A010D0625032A998C2B96C6187E85
|
||||
S123E920E4468D6E4F8C34043402C601BDE433BDE9EF0F3F9D8280AD25138103240F81012A
|
||||
S123E94049983F913F2564973F9D7C20E9D63F26331024006B8B072467990610270477893E
|
||||
S123E960FF340248ABE08EE24B30863502A18424558D9C34028D299E3D3502261D4D102757
|
||||
S123E980006A204B0806598D098EE997D73F0F0620D99E837EE6AB64EABBA184243120D3C9
|
||||
S123E9A0EC0134068D08D63F16FF7B7EEA43D654A68435203404D64F9E50DE5234546EA489
|
||||
S123E9C09E74A6E0272681642703BDE90F9F3D3504815A2719817D271554D70A3552975C71
|
||||
S123E9E09F5DDF5F3504D761D854D762D64F39BDFC390F069D7C24037EF49BBDEB692450CC
|
||||
S123EA00812E27F481A7274081A627E38122260A9E83BDECDF9E649F833981A3260D865A58
|
||||
S123EA20BDE926BDEBB443537EECBB4C272E8D06BDE922C6298CC6288CC62CE19F008326E3
|
||||
S123EA40020E7CC6027EE446867DBDE9267EF672BDEB1E9F52960626957EF39D9D7C1F8924
|
||||
S123EA60589D7CC13823037EEA433404C12A251EC130241C8DC0A6E4BDE9228DBCBDE91220
|
||||
S123EA803502DE523442BDEED2350234068E8D9E3504BEE11D3AAD947EE90F864F9703BDDC
|
||||
S123EAA0EBB4DD01BDF3D3BDEBB40D0326069401D40220049A01DA027EECBBBDE91426109F
|
||||
S123EAC096618A7F945D975D8E005CBDF41F20360F060A3FBDEE1ED7569F589E5FBDEE202A
|
||||
S123EAE096563404A0E0270786012403D656409754DE585C5A2604D654200BA680A1C02722
|
||||
S123EB00F3C6FF240150CB0159D40A2702C6FF7EF405BDEA39C6018D089D8226F5395F9DB1
|
||||
S123EB2082D70597379D828D401025FF165FD7069D7C25048D33250A1F899D7C25FC8D296A
|
||||
S123EB4024F8812426060306CB809D7CD7389A088028102700750F089E1BDC379C1D27127D
|
||||
S123EB6010A381273E300520F381412504805B80A5398E0074EEE41183EA532728DC1FDDC0
|
||||
S123EB8043C30007DD419E1D9F47BDE41E9E419F1F9E459F1D9E47DC37ED814F5FED84ED38
|
||||
S123EBA002A7049F393990800000009D7CBDE90D96542B5DBDE90F964F819025088EEBA64E
|
||||
S123EBC0BDF41F264CBDF451DC5239DC053406125F9E3734148DD435349F37DE5234605C1D
|
||||
S123EBE09D82812C27EBD703BDEA333506DD059E1D9C1F2721DC3710A3842706EC02308B84
|
||||
S123EC0020EFC6129605260BD603E1042759C6108CC6087EE446CC0005DD64DC37ED84D6BB
|
||||
S123EC2003E704BDE4339F41C60B4F0D0527053506C30001ED058D5DDD6430020A0326E867
|
||||
S123EC409F0FD30F1025F7FC1F01BDE437830035DD1F4F301FA7059C0F26F89E41961F9312
|
||||
S123EC6041ED029605262DE604D7034F5FDD643506DD5210A305243ADE6427048D17D35209
|
||||
S123EC8030020A0326E7EDE358495849E3E1308B30059F393986109745EC05DD174F5F58F0
|
||||
S123ECA049250F086509642404D31725050A4526EE397EEC0E1F40931F214F0F06DD50C620
|
||||
S123ECC0907EF40BBDE90FCE01F0BDF56532628E01EF200B9F4D8D5C9F58D75639301F8654
|
||||
S123ECE0229701970230019F629F58C6FF5CA680270C91012704910226F381222702301F96
|
||||
S123ED009F64D756DE62118301F022078DC69E62BDEE0C9E0B8C00F12605C61E7EE4469654
|
||||
S123ED2056A700DC58ED0286FF97069F0D9F5230059F0B390F074F3406DC23A3E0109321F3
|
||||
S123ED40250ADD239E2330019F253584C61A030727CA8D04350420DE9E279F234F5FDD4B11
|
||||
S123ED609E219F478E00C99C0B27048D3220F89E1B9C1D27048D2220F89F419E419C1F27E5
|
||||
S123ED8035EC02D341DD41A6012AF0E60458CB053A9C4127E88D0820F8A60130022A14E677
|
||||
S123EDA0842710EC02109323220910934723049F4BDD473005399E4B27FB4FE6845AD347F0
|
||||
S123EDC0DD439E239F41BDE4209E4BDC45ED029E45301F7EED5ADC523406BDE9EFBDE91208
|
||||
S123EDE035109F62E6849E52EB842405C61C7EE446BDECD49E62E6848D109E4D8D228D0C96
|
||||
S123EE009E628D1CBDED137EE934AE02DE255C2004A680A7C05A26F9DF2539BDE9129E52CF
|
||||
S123EE20E6848D182613AE07301F9C2326083404D323DD233504300139AE02399C0D260705
|
||||
S123EE409F0B301B9F0D4F398D037EECBA8DCC0F065D39BDEED5C601BDED349653BDECD83E
|
||||
S123EE60A78432627EED138D0220DF8DE0275EE684398D484FE1842303E6844F3406BDECE3
|
||||
S123EE80D69E4D8D9B35043A3504BDEE0C20D58D2BA0844020DFC6FFD7539D82812927052E
|
||||
S123EEA0BDEA398D2D8D1527245F4AA18424CD1F89E08450D15323C4D65320C0BDEA33EED0
|
||||
S123EEC0E4AE659F4DA664E66432671F357EEC119D7CBDE90DBDEBB04D26F20E82BDEE4D7E
|
||||
S123EEE0102702DEDE839F833AA68434526F849D82BDF49B3552A784DF83398D079F2BBDC4
|
||||
S123EF00EA3920CEBDE90D96542BC2964F819022BCBDF4519E52398DEEE6847EECBA8DDBE2
|
||||
S123EF209E2BE784393401BDE757BDE4E59F66350127129D82271381A726099D7C2706BD83
|
||||
S123EF40E757270639CEFFFFDF2B32629E66BDF0E9BDE1DAEC8426037EE4659F66EC02102A
|
||||
S123EF60932B22F4BDF555BDF1359E668D10AE9F0066CE00F4A6C027D5BDF13A20F7300424
|
||||
S123EF80108E00F4A68027512B15813A260DE684C18427F0C18327EC8C86218D3020E5CE2F
|
||||
S123EFA0E10B81FF2604A6803345847F334A6DC427E7A0C42AF6ABC4EE414A2B066DC02A66
|
||||
S123EFC0FC20F7A6C48D066DC02AF820B7108C01ED2406847FA7A06FA4399E83CE00F30FBC
|
||||
S123EFE0430F44A68027210D43270FBDEB69241881302504813923100F438120270A974272
|
||||
S123F000812227380D442719A7C02706813A27CF20D16FC06FC01F308300F18E00F29F8360
|
||||
S123F02039813F2604868720DF81272613CC3A83EDC10F42A68027D0914227CCA7C020F4D6
|
||||
S123F04081302504813C25C0301F34500F41CEE10B0F42334AA6C4273110AE41AEE4E6A0AC
|
||||
S123F060E08027FAC180263832623540DA4296412606C1842606863AEDC12094E7C0C186C3
|
||||
S123F08026020C44C18227AA2086CEE110034126C03550A680A7C0BDEB6925EC034320E8CF
|
||||
S123F0A00C424A27AE313FE6A02AFC20AF27368D0139273E819F2753812C2737813B276083
|
||||
S123F0C0BDE922960634022606BDF562BDECDD8D573504BDE1735D26089D82812C27148D7F
|
||||
S123F0E0549D8226CF860D2051BDE17327F7966C26F339BDE173270AD66CD16B25068DE5C0
|
||||
S123F100201ED66CD06A24FC502010BDEED081291026F92FBDE173D06C23058D185A26FB79
|
||||
S123F1209D7C7EF0B2BDECDFBDEE1E5C5A27C3A6808D0720F786208C863F7EE0148EF6499A
|
||||
S123F1402009BDF2B8035403622003BDF2B85D102702808E005C1F895D276CD04F27692569
|
||||
S123F1600A974F966197548E004F50C1F82F594F6401BDF243D6622A0B63016302630363A6
|
||||
S123F1800443890097639653996097539652995F97529651995E97519650995D97505D2AFC
|
||||
S123F1A04425028D5D5F9650262E965197509652975196539752966397530F63CB08C128DC
|
||||
S123F1C02DE44F974F9754398D6D5F20A85C086309530952095109502AF3964F3404A0E0B5
|
||||
S123F1E0974F23DE8C2508086386009763200C0C4F2728065006510652065324048D0D2763
|
||||
S123F200EE39035403500351035203539E5230019F5226069E5030019F5039C60A7EE4461D
|
||||
S123F2208E0012A6049763A603A704A602A703A601A702965BA701CB082FE89663C0082725
|
||||
S123F2400C6701660266036604465C26F43981000000008D6327608D788600971397149797
|
||||
S123F260159716D6538D22D663D78BD6528D1AD663D78AD6518D12D663D789D6508D0CD6F8
|
||||
S123F28063D788BDF3947EF1A52795439613562726241696169B6097169615995F97159692
|
||||
S123F2A014995E97149613995D46971306140615061606634F20D539EC0197618A80DD5DA5
|
||||
S123F2C0D661D854D762EC03DD5FA684975CD64F394D27169B4F464928108B80974F270C89
|
||||
S123F2E0966297543996544320023262102AFED27EF21BBDF3E8270D8B0225F40F62BDF1E5
|
||||
S123F300560C4F27EB398420000000BDF3E88EF3065FD762BDF39D8C8D9E2773004F8DB167
|
||||
S123F3200C4F27CC8E0013C604D703C6019650915D26139651915E260D9652915F260796BE
|
||||
S123F3405391602601431FA859240AE7800A032B34272EC6011F8A250E0860095F095E09A2
|
||||
S123F3605D25E32BC820DF966090539760965F9252975F965E9251975E965D9250975D20DE
|
||||
S123F380D8C64020D0565656D7638D087EF1A5C6147EE4469E139F509E159F52393402EC95
|
||||
S123F3A00197548A80DD500F63E684AE039F52D74F35828E004520068E00408C9E3B964FBA
|
||||
S123F3C0A78496548A7F9450A7019651A702DE52EF0339966197549E5C9F4F0F63965E97CD
|
||||
S123F3E05196549E5F9F5239DC4FDD5C9E519F5E9E539F604D39D64F2708D65459C6FF2520
|
||||
S123F4000150398DF1D7500F51C68896508080D74FDC74DD52976397547EF1A10F5439E609
|
||||
S123F4208427D3E601D8542BD1D64FE184261DE601CA7FD450E1012613D651E102260DD6EC
|
||||
S123F44052E1032607D653E00426013956D85420ABD64F273DC0A096542A05035BBDF20478
|
||||
S123F4608E004FC1F82E06BDF2370F5B390F5B96544906507EF243D64FC1A0241D8DD2D792
|
||||
S123F480639654D754808086A0974F965397017EF1A1D750D751D752D753399E749F549FD4
|
||||
S123F4A04F9F519F529F479F452564BDFBD8812D260403552004812B26049D7C2551812ECD
|
||||
S123F4C02728814526289D7C256481A7270E812D270A81A62708812B2704200603489D7C30
|
||||
S123F4E0254C0D48270800472004034626CC96479045974727122A09BDF30B0C4726F92024
|
||||
S123F50007BDF2F30A4726F996552A8E7EF672D645D046D7453402BDF2F33504C0308D0268
|
||||
S123F5202098BDF3B8BDF4058E00407EF14BD6475858DB475880303404ABE09747209F9B77
|
||||
S123F5403EBC1FFD9E6E6B27FD9E6E6B28008EE3E78D0CDC68DD50C69043BDF40F8D037E8E
|
||||
S123F560F125CE01F18620D6542A02862DA7C0DF6497548630D64F102700C64FC1802208DB
|
||||
S123F5808EF549BDF25386F797458EF544BDF4292E0F8EF53FBDF4292E0EBDF2F30A452079
|
||||
S123F5A0F1BDF30B0C4520E2BDF13DBDF451C60196458B0A2B09810B24054A1F8986024A77
|
||||
S123F5C04A9747D7452E0DDE64862EA7C05D27048630A7C08EF64EC6809653AB0397539677
|
||||
S123F5E052A90297529651A90197519650A98497505C565928E32403C00B50CB2F30041F09
|
||||
S123F60098847FA7C00A452604862EA7C053C4808CF67226C4A6C2813027FA812E26023397
|
||||
S123F6205F862BD647271C2A03862D50A7428645A741862F4CC00A24FBCB3AED436F452097
|
||||
S123F64004A7C46F418E01F1398000000000FA0A1F0000989680FFF0BDC0000186A0FFFFEC
|
||||
S123F660D8F0000003E8FFFFFF9C0000000AFFFFFFFF964F27020354399F64BDF3B88D0599
|
||||
S123F6808D088E00407EF2539F64BDF3B39E64E680D7559F648DEE9E6430059F64BDF14B95
|
||||
S123F6A08E00450A5526EE39BDF3F62B1F27158D10BDF3B88D0E8E00408DCA8EF24EBDF15A
|
||||
S123F6C04B7EF4779EB19F509EB39F52BEF6F99F5DBEF6FB9F5FBDF259DC8AC3658BDDB36B
|
||||
S123F6E0DD52DC88C9B08905DDB1DD500F548680974F961597637EF1A540E64DABBDF3E8F3
|
||||
S123F7008EF742D661BDF312BDF3E88DB40F62965CD64FBDF1458EF747BDF14296543402F5
|
||||
S123F7202A09BDF13D96542B05030ABDF6728EF747BDF14B35024D2A03BDF6728EF74C7E71
|
||||
S123F740F67983490FDAA27F000000000584E61A2D1B862807FBF88799688901872335DF17
|
||||
S123F760E186A55DE72883490FDAA2A154468F138F524389CD8EF7A8BDF14B7EF6FDBDF318
|
||||
S123F780B80F0A8DF68E004ABDF3BE8E0040BDF39D0F54960A8D0C0D4F1027FA7E8E004A31
|
||||
S123F7A07EF31834027EF72B81490FDAA2965434022A028D24964F3402818125058EF24E7F
|
||||
S123F7C08DDE8EF7DDBDF6793502818125068EF7A8BDF14235024D2A037EF672390B76B3A7
|
||||
S123F7E083BDD3791EF4A6F57B83FCB0107C0C1F67CA7CDE53CBC17D1464704C7DB7EA51E1
|
||||
S123F8007A7D6330887E7E9244993A7E4CCC91C77FAAAAAA138100000000037F5E56CB79B4
|
||||
S123F82080139B0B6480763893168238AA3B20803504F334813504F334808000000080311F
|
||||
S123F8407217F8BDF3F6102FF3C78EF82F964F808034028680974FBDF14B8EF834BDF3184D
|
||||
S123F8608EF24EBDF1428EF81ABDF6798EF839BDF14B3504BDF5228EF83E7EF253BDF3E816
|
||||
S123F8808EF649BDF39D27674D26037EF1C38E004ABDF3BE5F96612A10BDF4778E004A96A8
|
||||
S123F8A061BDF429260343D601BDF3D53404BDF8438E004ABDF2538D363502461025FDB213
|
||||
S123F8C0398138AA3B29077134583E5674167EB31B772FEEE3857A1D841C2A7C6359580ABF
|
||||
S123F8E07E75FDE7C6803172181081000000008EF8C1BDF253BDF3B8964F818825037EF264
|
||||
S123F900E5BDF47796018B8127F44A34028E0040BDF1428EF8C6BDF6880F623502BDF2D12B
|
||||
S123F92039BDF3F62B037EF47703548DF97EF672BDFD5E326286019798BDE4E51025ED827E
|
||||
S123F940BDEF7E1F208300F5D797DC2BBDF555BDF1358E00F4D69826255FBDFA84BDFFB61C
|
||||
S123F960250B80303402860A3DEBE020EDC001C90181412605BDF0E520BB814C260B8D3127
|
||||
S123F9800F98BDF0E520C33262810D260D8D22BDF0E58E00F49F837EE48E814527F181516D
|
||||
S123F9A02606BDF0E57EE4658D0220AD812026108CC6F9A6842708BDE01430015A26F43958
|
||||
S123F9C0814426486D8427F78D045A26F7390A97311F3121A621A7A426F83981492713816F
|
||||
S123F9E058270D8148265C6F841F108300F5D7978DBFBDFA84810D278E811B2725810826C3
|
||||
S123FA00228C00F427EC8D458DC420E6814326CB6D84270EBDFA84250220F5A7808D375A6D
|
||||
S123FA2026EE39D697C1F9260220C734106D8026FCE682E701ACE426F83262A7808D170C83
|
||||
S123FA409720AF810826128D045A26FB398C00F427D0301F86087EE014814B27058053277E
|
||||
S123FA60013934028D1E3402A68427166D6126068DE430012003BDF9CEA684A1E426E95A6F
|
||||
S123FA8026E635A0BDE000817F24F9815F2602861B810D270E811B270A8108270681202512
|
||||
S123FAA0E31A0139864F978C398600D6791D7EECBBBDEA36DC1F3406BDEB1EBDEA333506D6
|
||||
S123FAC01E109C1F26517EECBB9D7CBDEA36BDEB1E3410EC02109321230493272312E6846B
|
||||
S123FAE0BDED343410AE62BDEE0A3550AF423440BDEEFF34045D271FC6FF81292703BDEE68
|
||||
S123FB00FF3404BDEA33C6AEBDEA3B8D2E1F13AE62A684A06124037EEC114CA1E42402A712
|
||||
S123FB20E4A6611E89AE025A3A4D270DA1E42302A6E41F891E31BDE1F13596BDE9227EEEB1
|
||||
S123FB401BBDEA36BDEED23404BDEA39BDE922BDEA3396062605BDEED52003BDEE6B3404BA
|
||||
S123FB60E661BDECD635062705A7805A26FB7EEE62BDEA36BDE922C601340496062610BDB1
|
||||
S123FB80EED5E7E42791BDEA39BDE922BDE9129E523410BDEA39BDFB3B3414BDEA33AE6381
|
||||
S123FBA0BDEE203404E1662523A661271CE6665A3A3184EE62E661A6E4A0664CA161250C2A
|
||||
S123FBC0A680A1C0260C5A26F7E666215F32677EECBA6C66302120D98126265C32620F522E
|
||||
S123FBE00F538E00529D7C814F2712814827239D82200C81381022EE4AC6038D2A9D7C255E
|
||||
S123FC00F20F500F510F060F630F54C6A0D74F7EF1A59D7C250BBDEB6925E6814724E280F2
|
||||
S123FC2007C6048D0220EB680169841025F5EC5A26F58030AB01A7013935400F069E839DEF
|
||||
S123FC407C8126279981B0275E81FF26089D7C8183102700AB9F836EC49E68300126D9C60A
|
||||
S123FC60167EE446AE9F00838CFF83102700748D238DE6BDEA36C680D708BDEB1E8D25BDDF
|
||||
S123FC80EA33C6AEBDEA3B9E4BDC83ED84DC39ED027EE6D0C6B0BDEA3BC680D7088A80BDB8
|
||||
S123FCA0EB239F4B7EE90F8DEB3410BDEA2E8DF43540C632AE4227A9109E83EEC4DF83A6A8
|
||||
S123FCC0043402EC84EE023476BDF3BEBDE90D3576ED84EF023502A7049D821026ED641016
|
||||
S123FCE09F83399D7C8D0934108D2D3540AFC4395F9D7C240680301F899D7C9E8D583A39CE
|
||||
S123FD008DEEAE843410BDEA2E8E004F96062707BDEE1E9E52960639C6AEBDEA3B7EEF041D
|
||||
S123FD201027EEEDBDE757BDE4E59F939D82271081A7263B9D7C27048D24200486FF972BBB
|
||||
S123FD40DE938CEEC4ECC42706EC42932B23F49E938D15BDE5059E93BDE4D57EE465BDE784
|
||||
S123FD60577EE1FAA6C0A78011931B26F79F1B39BDFC599D7C8122260BBDEA10C63BBDEA15
|
||||
S123FD803BBDF128327EBDE80C3262BDEB1E9F3BBDE9128E00F34FBDECE37EE794BDE757B1
|
||||
S123FDA09E2B399E919F2B7EE4E5BDE50ACC000ADD95DD8F5FDD919D8224068DE09F959D49
|
||||
S123FDC082271BBDEA3924068DD39F919D82270EBDEA3924068DC69F8F2749BDE1FA8DC38A
|
||||
S123FDE09F939E958DBF9C93253A8D1CBDFE7EBDE4D38DAF9F938D3A8D0F8D36BDFF19BD44
|
||||
S123FE00E50ABDE4D37EE465864F97989E93DC958D150D982602ED02AE848D0BD38F25045B
|
||||
S123FE2081FA25EE7EEC113406EC84350626023262399E19301F30018DED30033001A6849C
|
||||
S123FE4027F49F0F4A270C4A272A4A26EF8603A78020E7EC016A0227014FE6036A04270158
|
||||
S123FE605FED01DD2BBDE4E59E0F25E1DC476C80ED8420C66F84AE01AE029F4720EA9E1991
|
||||
S123FE8020049E8330018D9F300230019F839D7C4D27EF2AF99E8381FF27EF81A227128104
|
||||
S123FEA084270E818126E79D7C81A0270481A126DB9D7C25049D8220D79E833410BDE75736
|
||||
S123FEC09E83A682BDFFB625F930011F10E061C0052720250A3384503085BDFD6820149FB8
|
||||
S123FEE0479E1B9F435030859F419F1BBDE41E9E459F8335108601A784A702A704D62B2647
|
||||
S123FF0004C6016C02E701D62C2604C6016C04E7039D82812C279A209C9E19301F3001EC03
|
||||
S123FF2002DD68BDFE2730033001A68427EF4A271B800226F334108EFF76BDF125AEE4EC31
|
||||
S123FF4001BDF555BDF54EBDF0E535103410EC01DD52BDFC01BDF5623540C6053001A684F5
|
||||
S123FF6027055AA7C020F530C45D27BE31C433C5BDFD6830A420B3554C2000BDEF078E018C
|
||||
S123FF80F0C60434045F860408530952594A26F85D260AA6E44A27058C01F0270CCB30C112
|
||||
S123FFA0392302CB07E7806F8435045A26D532628E01EF7EECDF81302504803A80C6398136
|
||||
S10BFFC0891027FDAB7EEA4322
|
||||
S113FFF00000009B009E00AA00A700A100A4E04806
|
||||
S9030000FC
|
||||
1009
ROMS/6809/BASIC.SYM
Normal file
1009
ROMS/6809/BASIC.SYM
Normal file
File diff suppressed because it is too large
Load Diff
5406
ROMS/6809/ExBasROM.LST
Normal file
5406
ROMS/6809/ExBasROM.LST
Normal file
File diff suppressed because it is too large
Load Diff
5398
ROMS/6809/ExBasROM.asm
Normal file
5398
ROMS/6809/ExBasROM.asm
Normal file
File diff suppressed because it is too large
Load Diff
513
ROMS/6809/ExBasROM.hex
Normal file
513
ROMS/6809/ExBasROM.hex
Normal file
@@ -0,0 +1,513 @@
|
||||
:20C00000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40
|
||||
:20C02000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20
|
||||
:20C04000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00
|
||||
:20C06000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0
|
||||
:20C08000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0
|
||||
:20C0A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0
|
||||
:20C0C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80
|
||||
:20C0E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60
|
||||
:20C10000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F
|
||||
:20C12000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F
|
||||
:20C14000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||
:20C16000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF
|
||||
:20C18000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF
|
||||
:20C1A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F
|
||||
:20C1C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F
|
||||
:20C1E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F
|
||||
:20C20000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E
|
||||
:20C22000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1E
|
||||
:20C24000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
|
||||
:20C26000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDE
|
||||
:20C28000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE
|
||||
:20C2A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9E
|
||||
:20C2C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7E
|
||||
:20C2E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5E
|
||||
:20C30000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3D
|
||||
:20C32000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D
|
||||
:20C34000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD
|
||||
:20C36000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDD
|
||||
:20C38000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBD
|
||||
:20C3A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9D
|
||||
:20C3C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D
|
||||
:20C3E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D
|
||||
:20C40000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3C
|
||||
:20C42000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1C
|
||||
:20C44000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC
|
||||
:20C46000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDC
|
||||
:20C48000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBC
|
||||
:20C4A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9C
|
||||
:20C4C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C
|
||||
:20C4E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5C
|
||||
:20C50000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3B
|
||||
:20C52000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1B
|
||||
:20C54000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB
|
||||
:20C56000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDB
|
||||
:20C58000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBB
|
||||
:20C5A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9B
|
||||
:20C5C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B
|
||||
:20C5E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5B
|
||||
:20C60000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3A
|
||||
:20C62000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1A
|
||||
:20C64000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA
|
||||
:20C66000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDA
|
||||
:20C68000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBA
|
||||
:20C6A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A
|
||||
:20C6C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A
|
||||
:20C6E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5A
|
||||
:20C70000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF39
|
||||
:20C72000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF19
|
||||
:20C74000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9
|
||||
:20C76000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD9
|
||||
:20C78000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9
|
||||
:20C7A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF99
|
||||
:20C7C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79
|
||||
:20C7E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF59
|
||||
:20C80000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF38
|
||||
:20C82000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF18
|
||||
:20C84000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8
|
||||
:20C86000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8
|
||||
:20C88000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8
|
||||
:20C8A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF98
|
||||
:20C8C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF78
|
||||
:20C8E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF58
|
||||
:20C90000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37
|
||||
:20C92000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF17
|
||||
:20C94000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7
|
||||
:20C96000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7
|
||||
:20C98000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7
|
||||
:20C9A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF97
|
||||
:20C9C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77
|
||||
:20C9E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF57
|
||||
:20CA0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36
|
||||
:20CA2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF16
|
||||
:20CA4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6
|
||||
:20CA6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6
|
||||
:20CA8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6
|
||||
:20CAA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF96
|
||||
:20CAC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76
|
||||
:20CAE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF56
|
||||
:20CB0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35
|
||||
:20CB2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF15
|
||||
:20CB4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5
|
||||
:20CB6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD5
|
||||
:20CB8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5
|
||||
:20CBA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF95
|
||||
:20CBC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75
|
||||
:20CBE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF55
|
||||
:20CC0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34
|
||||
:20CC2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14
|
||||
:20CC4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4
|
||||
:20CC6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4
|
||||
:20CC8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4
|
||||
:20CCA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94
|
||||
:20CCC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74
|
||||
:20CCE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF54
|
||||
:20CD0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF33
|
||||
:20CD2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13
|
||||
:20CD4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3
|
||||
:20CD6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3
|
||||
:20CD8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3
|
||||
:20CDA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF93
|
||||
:20CDC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF73
|
||||
:20CDE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF53
|
||||
:20CE0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32
|
||||
:20CE2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF12
|
||||
:20CE4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2
|
||||
:20CE6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2
|
||||
:20CE8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB2
|
||||
:20CEA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92
|
||||
:20CEC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72
|
||||
:20CEE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF52
|
||||
:20CF0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF31
|
||||
:20CF2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11
|
||||
:20CF4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1
|
||||
:20CF6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD1
|
||||
:20CF8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1
|
||||
:20CFA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91
|
||||
:20CFC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71
|
||||
:20CFE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51
|
||||
:20D00000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF30
|
||||
:20D02000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10
|
||||
:20D04000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0
|
||||
:20D06000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0
|
||||
:20D08000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0
|
||||
:20D0A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90
|
||||
:20D0C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70
|
||||
:20D0E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50
|
||||
:20D10000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2F
|
||||
:20D12000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0F
|
||||
:20D14000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF
|
||||
:20D16000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCF
|
||||
:20D18000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF
|
||||
:20D1A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F
|
||||
:20D1C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F
|
||||
:20D1E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4F
|
||||
:20D20000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2E
|
||||
:20D22000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E
|
||||
:20D24000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEE
|
||||
:20D26000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCE
|
||||
:20D28000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAE
|
||||
:20D2A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E
|
||||
:20D2C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6E
|
||||
:20D2E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4E
|
||||
:20D30000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2D
|
||||
:20D32000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0D
|
||||
:20D34000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFED
|
||||
:20D36000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCD
|
||||
:20D38000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAD
|
||||
:20D3A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8D
|
||||
:20D3C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6D
|
||||
:20D3E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4D
|
||||
:20D40000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2C
|
||||
:20D42000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0C
|
||||
:20D44000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEC
|
||||
:20D46000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC
|
||||
:20D48000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAC
|
||||
:20D4A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8C
|
||||
:20D4C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C
|
||||
:20D4E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4C
|
||||
:20D50000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2B
|
||||
:20D52000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B
|
||||
:20D54000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEB
|
||||
:20D56000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCB
|
||||
:20D58000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAB
|
||||
:20D5A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8B
|
||||
:20D5C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6B
|
||||
:20D5E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4B
|
||||
:20D60000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2A
|
||||
:20D62000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0A
|
||||
:20D64000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEA
|
||||
:20D66000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCA
|
||||
:20D68000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA
|
||||
:20D6A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8A
|
||||
:20D6C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A
|
||||
:20D6E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4A
|
||||
:20D70000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF29
|
||||
:20D72000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF09
|
||||
:20D74000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE9
|
||||
:20D76000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC9
|
||||
:20D78000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA9
|
||||
:20D7A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89
|
||||
:20D7C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF69
|
||||
:20D7E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF49
|
||||
:20D80000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF28
|
||||
:20D82000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF08
|
||||
:20D84000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8
|
||||
:20D86000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8
|
||||
:20D88000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8
|
||||
:20D8A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF88
|
||||
:20D8C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68
|
||||
:20D8E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF48
|
||||
:20D90000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27
|
||||
:20D92000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF07
|
||||
:20D94000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7
|
||||
:20D96000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7
|
||||
:20D98000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA7
|
||||
:20D9A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87
|
||||
:20D9C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67
|
||||
:20D9E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF47
|
||||
:20DA0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26
|
||||
:20DA2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06
|
||||
:20DA4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6
|
||||
:20DA6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6
|
||||
:20DA8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6
|
||||
:20DAA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86
|
||||
:20DAC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66
|
||||
:20DAE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF46
|
||||
:20DB00008D0327FC39B6A00085012706B6A001847F394F398D243402810D270BB7A0010CEA
|
||||
:20DB2000799679917825100F798D0F860DB7A0018D08860AB7A0013502393402B6A0008512
|
||||
:20DB40000227F935023910CE01EE966E8155260A9E6FA684811226026E848E02186F8330AE
|
||||
:20DB60000126FA8E02176F809F19A60243A702A10226063001630120F19F719F279F233065
|
||||
:20DB800089FF389F211F148EDBCECE0076C612BDDCAECE00A7C604BDDCAE863997F0BDDFD0
|
||||
:20DBA000BA8E00B59F8DCEE6CEC60AEF815A26FB8695B7A0008EDC03BDEBE58EDBC69F6F56
|
||||
:20DBC0008655976E200412BDDFD47EDF223B10405000E6CE0C8426020C83B600007EDCBF9B
|
||||
:20DBE0007EDCBE7EDBCD7EE6CE804FC7525932DD1DDE2A1DDDBDDCCE0000000000000000DF
|
||||
:20DC0000000000003638303920455854454E4445442042415349430D2843292031393832A5
|
||||
:20DC2000204259204D4943524F534F46540D0D0034169E76DC789F6AD76C976D35960F73EA
|
||||
:20DC40008E00F4C601BDDB00810826075A27EF301F20348115260A5A27E48608BDDB142095
|
||||
:20DC6000F681031A012705810D260D4F3401BDEBA56F848E00F33581812025C9817B24C5B3
|
||||
:20DC8000C1FA24C1A7805CBDDB1420B92705BDE9C19F7A6E9F007A7EE0A396732603BDDBDE
|
||||
:20DCA000050F73975310260C6A97567EE91FA680A7C05A26F939399D8227FB7EE5003B81FC
|
||||
:20DCC0003A240A812026020E7C803080D039EEC3EF37EEDC00ADF168F1BDE9D4E905E781E8
|
||||
:20DCE000E99AE924E910F26DF235F23EF3AFF3E1F303F569F33DFA3BE92FE94CE953DC9AB7
|
||||
:20DD0000E772F571F631F60179EC0E79EC057BED157BEDDA7FF34650E55946E558464FD25A
|
||||
:20DD200047CF5245CDA7454C53C549C6444154C15052494ED44FCE494E5055D4454EC44E91
|
||||
:20DD40004558D44449CD524541C45255CE524553544F52C55245545552CE53544FD0504F7E
|
||||
:20DD60004BC5434F4ED44C4953D4434C4541D24E45D7455845C354524FCE54524F46C64425
|
||||
:20DD800045CC4445C64C494EC552454E55CD454449D4544142A854CF5355C2544845CE4EC5
|
||||
:20DDA0004FD4535445D04F46C6ABADAAAFDE414EC44FD2BEBDBC46CE5553494EC75347CE6D
|
||||
:20DDC000494ED44142D35553D2524EC45349CE504545CB4C45CE535452A45641CC4153C3DF
|
||||
:20DDE000434852A44154CE434FD35441CE4558D04649D84C4FC7504FD35351D2484558A4D0
|
||||
:20DE00004C454654A45249474854A44D4944A4494E4B4559A44D45CD5641525054D2494E1A
|
||||
:20DE20005354D2535452494E47A4DFE8E133E190E190E190E1C1E18DEB6AE1EFE29CE0BA73
|
||||
:20DE4000E381E5D2E2D6E128E09CE16DE0BEE9DBE0E3E9E2E0F4DFB8DC8CF564F565F7E0CF
|
||||
:20DE6000F724FECEF86AF3F04E46534E52474F4446434F564F4D554C425344442F304944A1
|
||||
:20DE8000544D4F534C535354434E4644414F444E494F464D4E4F4945445355464E4520453C
|
||||
:20DEA00052524F520020494E20000D4F4B0D000D425245414B003064C6129F0FA6848080DC
|
||||
:20DEC0002615AE019F119E3B27099C1127099E0F3A20E59E119F3B9E0F4D398D17DE413324
|
||||
:20DEE000419E433001A68236029C4726F8DF45394F58D31FC3003A250810DF171093172569
|
||||
:20DF0000EEC60CBDDFD4BDEBA9BDEBF88EDE683A8D318D2F8EDE9DBDEBE596684C2703BD91
|
||||
:20DF2000F00EBDEBA98EDEAABDEBE5BDDC3ECEFFFFDF6825F69F839D7C27F0250BBDEA972A
|
||||
:20DF40007EE071A6807EEBFABDE2149E2B9FF1BDEA97D7038D4C2512DC47A384D31BDD1B05
|
||||
:20DF6000EE843702A7809C1B26F896F3271CDC1BDD43DB038900DD41BDDEDBCE00EF370226
|
||||
:20DF8000A7809C4526F89E419F1B8D368D02209B9E19EC8427213304A6C026FCEF84AE84E2
|
||||
:20DFA00020F0DC2B9E19EE84270910A3022306AE8420F31A019F473926FB9E196F806F80DE
|
||||
:20DFC0009F1B9E19BDE1689E279F23BDE09C9E1B9F1D9F1F8E00C99F0BAEE410DE216FE2E4
|
||||
:20DFE0000F2D0F2E0F086E8486809708BDE236BDDEB6326226049E0F3285C609BDDEF0BD9B
|
||||
:20E00000E195DC683416C6A0BDE4F8BDE3CCBDE3CAD654CA7FD450D750108EE0207EE473F6
|
||||
:20E020008EED0EBDEE5D9D8281A426059D7CBDE3CABDEEB6BDE46FDC3B3406868034021C43
|
||||
:20E04000AF8D609E839F2FA6802707813A27227EE500A68197002772EC80DD689F83968C2E
|
||||
:20E06000270F865BBDDB149668BDF015865DBDDB149D7C8D0220C827294D102A01B881FFEE
|
||||
:20E08000270F819E22C9BEDBF1481F893A9D7C6E949D7C8197102714F07EE5009E19301F9C
|
||||
:20E0A0009F3339BDDB05270A8103271281132703977339BDDB0527FB20EE9D8220021A01A0
|
||||
:20E0C00026319E839F2F060032629E688CFFFF27069F299E2F9F2D8EDEAE0D00102AFE42A1
|
||||
:20E0E0007EDF17260EC6209E2D1027FE169F839E299F6839272CBDE66A34069E279D8227AE
|
||||
:20E100000CBDE4F6BDE9C1301F9C7122181F10A3E125121F0383003A250B931B2507DF218C
|
||||
:20E120009F277EDFC77EDF019D821027FE94BDDFC720191F899D7CC1A02716C1A12645C621
|
||||
:20E1400003BDDEF0DE839E6886A134528D037EE03F9D82BDE2148D403001DC2B10936822EC
|
||||
:20E16000029E19BDDFA62517301F9F833926FD86FF973BBDDEB61F148121270BC6048CC6D0
|
||||
:20E180000E7EDF037EE50035529F68DF838D068C8D069F8339C63A865FD7015F9E831F98BD
|
||||
:20E1A000D6019701A68427EC3404A1E027E63001812227EA4C26023001818626E70C04201F
|
||||
:20E1C000E3BDE3CA9D8281812705C6A2BDE4F8964F26130F048DB64D27BA9D7C818426F5C9
|
||||
:20E1E0000A042AF19D7C9D821025FF657EE077BDE98FC681BDE4F8340281A1270481A02671
|
||||
:20E20000830A53260535047EE1359D7C8D06812C27EF35849E749F2B246180309701DC2B4E
|
||||
:20E22000811822DB58495849D32B5849DB018900DD2B9D7C20E2BDE5DB9F3BC6AEBDE4F87B
|
||||
:20E2400096063402BDE3DF350246BDE3D110270C2B9E52DC2110A30224119C1B250DE684E7
|
||||
:20E26000BDE7919E4DBDE8C78E00569F4DBDE8F9DE4D9E3B3726A78410AF02393F52454404
|
||||
:20E280004F0D007EDF03960927079E319F687EE5008EE27BBDEBE59E2F9F8339C6169E683A
|
||||
:20E2A000300127DF8D01398122260BBDE4CDC63BBDE4F8BDEBE88E00F36F848D06C62CE714
|
||||
:20E2C000842016BDEBF8BDEBF5BDDC3E240532647EE0C6C62E399E33864F97099F35BDE5A4
|
||||
:20E2E000DB9F3B9E839F2B9E35A684260996092651BDEBF88DCD9F839D7CD60627239E83C0
|
||||
:20E3000097018122270E301F4F9701BDDC30863A9701862C9702BDE7A2BDE4D2BDE2512022
|
||||
:20E3200006BDEF5BBDEE7C9D822706812C1026FF529E839F359E2B9F839D822721BDE4F64B
|
||||
:20E34000209C9F83BDE19530014D260AC606EE812741EC81DD31A684818626E620989E3518
|
||||
:20E36000D6091026FD3AA68427068EE3707EEBE5393F45585452412049474E4F5245440D9A
|
||||
:20E380000026049E742003BDE5DB9F3BBDDEB62704C60020471F143003BDEE5DA6689754B7
|
||||
:20E3A0009E3BBDEC0BBDEE7C3069BDEEDFE068270CAE6E9F68AEE8109F837EE03F32E81257
|
||||
:20E3C0009D82812C26F49D7C8DBD8D131CFE7D1A010D0625032A998C2B96C6187EDF038D8C
|
||||
:20E3E0006E4F8C34043402C601BDDEF0BDE4AC0F3F9D8280AD25138103240F810149983F9C
|
||||
:20E40000913F2564973F9D7C20E9D63F26331024006B8B07246799061027047789FF340272
|
||||
:20E4200048ABE08EDD0830863502A18424558D9C34028D299E3D3502261D4D1027006A2093
|
||||
:20E440004B0806598D098EE454D73F0F0620D99E837EE16864E578A184243120D3EC013453
|
||||
:20E46000068D08D63F16FF7B7EE500D654A68435203404D64F9E50DE5234546EA49E74A683
|
||||
:20E48000E0272681642703BDE3CC9F3D3504815A2719817D271554D70A3552975C9F5DDFE0
|
||||
:20E4A0005F3504D761D854D762D64F39BDF6F90F069D7C24037EEF5BBDE6262450812E27ED
|
||||
:20E4C000F481A7274081A627E38122260A9E83BDE79C9E649F833981A3260D865ABDE3E33D
|
||||
:20E4E000BDE67143537EE7784C272E8D06BDE3DFC6298CC6288CC62CE19F008326020E7C46
|
||||
:20E50000C6027EDF03867DBDE3E37EF132BDE5DB9F52960626957EEE5D9D7C1F89589D7CEC
|
||||
:20E52000C13823037EE5003404C12A251EC130241C8DC0A6E4BDE3DF8DBCBDE3CF3502DE9F
|
||||
:20E54000523442BDE98F350234068E8D9E3504BEDBF63AAD947EE3CC864F9703BDE671DDC4
|
||||
:20E5600001BDEE93BDE6710D0326069401D40220049A01DA027EE778BDE3D1261096618A01
|
||||
:20E580007F945D975D8E005CBDEEDF20360F060A3FBDE8DBD7569F589E5FBDE8DD965634AC
|
||||
:20E5A00004A0E0270786012403D656409754DE585C5A2604D654200BA680A1C027F3C6FFD3
|
||||
:20E5C000240150CB0159D40A2702C6FF7EEEC5BDE4F6C6018D089D8226F5395F9D82D705E4
|
||||
:20E5E00097379D828D401025FF165FD7069D7C25048D33250A1F899D7C25FC8D2924F88175
|
||||
:20E600002426060306CB809D7CD7389A088028102700750F089E1BDC379C1D271210A3812F
|
||||
:20E62000273E300520F381412504805B80A5398E0074EEE41183E5102728DC1FDD43C3007F
|
||||
:20E6400007DD419E1D9F47BDDEDB9E419F1F9E459F1D9E47DC37ED814F5FED84ED02A70423
|
||||
:20E660009F393990800000009D7CBDE3CA96542B5DBDE3CC964F819025088EE663BDEEDF94
|
||||
:20E68000264CBDEF11DC5239DC053406125F9E3734148DD435349F37DE5234605C9D8281DB
|
||||
:20E6A0002C27EBD703BDE4F03506DD059E1D9C1F2721DC3710A3842706EC02308B20EFC6E1
|
||||
:20E6C000129605260BD603E1042759C6108CC6087EDF03CC0005DD64DC37ED84D603E70434
|
||||
:20E6E000BDDEF09F41C60B4F0D0527053506C30001ED058D5DDD6430020A0326E89F0FD367
|
||||
:20E700000F1025F7FC1F01BDDEF4830035DD1F4F301FA7059C0F26F89E41961F9341ED02F5
|
||||
:20E720009605262DE604D7034F5FDD643506DD5210A305243ADE6427048D17D35230020A46
|
||||
:20E740000326E7EDE358495849E3E1308B30059F393986109745EC05DD174F5F5849250FF8
|
||||
:20E76000086509642404D31725050A4526EE397EE6CB1F40931F214F0F06DD50C6907EEE33
|
||||
:20E78000CBBDE3CCCE01F0BDF02532628E01EF200B9F4D8D5C9F58D75639301F86229701B3
|
||||
:20E7A000970230019F629F58C6FF5CA680270C91012704910226F381222702301F9F64D7BF
|
||||
:20E7C00056DE62118301F022078DC69E62BDE8C99E0B8C00F12605C61E7EDF039656A7000C
|
||||
:20E7E000DC58ED0286FF97069F0D9F5230059F0B390F074F3406DC23A3E0109321250ADD2E
|
||||
:20E80000239E2330019F253584C61A030727CA8D04350420DE9E279F234F5FDD4B9E219F08
|
||||
:20E82000478E00C99C0B27048D3220F89E1B9C1D27048D2220F89F419E419C1F2735EC0269
|
||||
:20E84000D341DD41A6012AF0E60458CB053A9C4127E88D0820F8A60130022A14E684271028
|
||||
:20E86000EC02109323220910934723049F4BDD473005399E4B27FB4FE6845AD347DD439E36
|
||||
:20E88000239F41BDDEDD9E4BDC45ED029E45301F7EE817DC523406BDE4ACBDE3CF35109F4D
|
||||
:20E8A00062E6849E52EB842405C61C7EDF03BDE7919E62E6848D109E4D8D228D0C9E628DC6
|
||||
:20E8C0001CBDE7D07EE3F1AE02DE255C2004A680A7C05A26F9DF2539BDE3CF9E52E6848D8A
|
||||
:20E8E000182613AE07301F9C2326083404D323DD233504300139AE02399C0D26079F0B306C
|
||||
:20E900001B9F0D4F398D037EE7778DCC0F065D39BDE992C601BDE7F19653BDE795A7843225
|
||||
:20E92000627EE7D08D0220DF8DE0275EE684398D484FE1842303E6844F3406BDE7939E4D59
|
||||
:20E940008D9B35043A3504BDE8C920D58D2BA0844020DFC6FFD7539D8281292705BDE4F6EA
|
||||
:20E960008D2D8D1527245F4AA18424CD1F89E08450D15323C4D65320C0BDE4F0EEE4AE654B
|
||||
:20E980009F4DA664E66432671F357EE6CE9D7CBDE3CABDE66D4D26F20E82BDE90A102702A7
|
||||
:20E9A000E1DE839F833AA68434526F849D82BDEF5B3552A784DF83398D079F2BBDE4F6208E
|
||||
:20E9C000CEBDE3CA96542BC2964F819022BCBDEF119E52398DEEE6847EE7778DDB9E2BE795
|
||||
:20E9E00084393401BDE214BDDFA29F66350127129D82271381A726099D7C2706BDE21427F0
|
||||
:20EA00000639CEFFFFDF2B32629E66BDEBA9BDDC97EC8426037EDF229F66EC0210932B22CD
|
||||
:20EA2000F4BDF015BDEBF59E668D10AE9F0066CE00F4A6C027D5BDEBFA20F73004108E0080
|
||||
:20EA4000F4A68027512B15813A260DE684C18427F0C18327EC8C86218D3020E5CEDBE481D6
|
||||
:20EA6000FF2604A6803345847F334A6DC427E7A0C42AF6ABC4EE414A2B066DC02AFC20F709
|
||||
:20EA8000A6C48D066DC02AF820B7108C01ED2406847FA7A06FA4399E83CE00F30F430F4482
|
||||
:20EAA000A68027210D43270FBDE626241881302504813923100F438120270A9742812227CF
|
||||
:20EAC000380D442719A7C02706813A27CF20D16FC06FC01F308300F18E00F29F8339813F7B
|
||||
:20EAE0002604868720DF81272613CC3A83EDC10F42A68027D0914227CCA7C020F481302543
|
||||
:20EB000004813C25C0301F34500F41CEDBE40F42334AA6C4273110AE41AEE4E6A0E0802771
|
||||
:20EB2000FAC180263832623540DA4296412606C1842606863AEDC12094E7C0C18626020C5F
|
||||
:20EB400044C18227AA2086CEDBE9034126C03550A680A7C0BDE62625EC034320E80C424A29
|
||||
:20EB600027AE313FE6A02AFC20AF27398D0139BDFACF273E819F2753812C2737813B2760DB
|
||||
:20EB8000BDE3DF960634022606BDF022BDE79A8D573504BDDC305D26089D82812C27148DE6
|
||||
:20EBA000549D8226CF860D2051BDDC3027F7966C26F339BDDC30270AD66CD16B25068DE599
|
||||
:20EBC000201ED66CD06A24FC502010BDE98D81291026F92CBDDC30D06C23058D185A26FB56
|
||||
:20EBE0009D7C7EEB72BDE79CBDE8DB5C5A27C3A6808D0720F786208C863F7EDB148EF10904
|
||||
:20EC00002009BDED78035403622003BDED785D102702808E005C1F895D276CD04F2769253C
|
||||
:20EC20000A974F966197548E004F50C1F82F594F6401BDED03D6622A0B6301630263036334
|
||||
:20EC40000443890097639653996097539652995F97529651995E97519650995D97505D2A45
|
||||
:20EC60004425028D5D5F9650262E965197509652975196539752966397530F63CB08C12825
|
||||
:20EC80002DE44F974F9754398D6D5F20A85C086309530952095109502AF3964F3404A0E0FE
|
||||
:20ECA000974F23DE8C2508086386009763200C0C4F2728065006510652065324048D0D27AC
|
||||
:20ECC000EE39035403500351035203539E5230019F5226069E5030019F5039C60A7EDF03AF
|
||||
:20ECE0008E0012A6049763A603A704A602A703A601A702965BA701CB082FE89663C008276F
|
||||
:20ED00000C6701660266036604465C26F43981000000008D6327608D7886009713971497E0
|
||||
:20ED2000159716D6538D22D663D78BD6528D1AD663D78AD6518D12D663D789D6508D0CD641
|
||||
:20ED400063D788BDEE547EEC652795439613562726241696169B6097169615995F97159665
|
||||
:20ED600014995E97149613995D46971306140615061606634F20D539EC0197618A80DD5DEE
|
||||
:20ED8000D661D854D762EC03DD5FA684975CD64F394D27169B4F464928108B80974F270CD2
|
||||
:20EDA000966297543996544320023262102AFED27EECDBBDEEA8270D8B0225F40F62BDECBE
|
||||
:20EDC000160C4F27EB398420000000BDEEA88EEDC65FD762BDEE5D8C8D9E2773004F8DB1C1
|
||||
:20EDE0000C4F27CC8E0013C604D703C6019650915D26139651915E260D9652915F26079608
|
||||
:20EE00005391602601431FA859240AE7800A032B34272EC6011F8A250E0860095F095E09EB
|
||||
:20EE20005D25E32BC820DF966090539760965F9252975F965E9251975E965D9250975D2027
|
||||
:20EE4000D8C64020D0565656D7638D087EEC65C6147EDF039E139F509E159F52393402EC6B
|
||||
:20EE60000197548A80DD500F63E684AE039F52D74F35828E004520068E00408C9E3B964F03
|
||||
:20EE8000A78496548A7F9450A7019651A702DE52EF0339966197549E5C9F4F0F63965E9716
|
||||
:20EEA0005196549E5F9F5239DC4FDD5C9E519F5E9E539F604D39D64F2708D65459C6FF2569
|
||||
:20EEC0000150398DF1D7500F51C68896508080D74FDC74DD52976397547EEC610F5439E698
|
||||
:20EEE0008427D3E601D8542BD1D64FE184261DE601CA7FD450E1012613D651E102260DD636
|
||||
:20EF000052E1032607D653E00426013956D85420ABD64F273DC0A096542A05035BBDECC407
|
||||
:20EF20008E004FC1F82E06BDECF70F5B390F5B96544906507EED03D64FC1A0241D8DD2D766
|
||||
:20EF4000639654D754808086A0974F965397017EEC61D750D751D752D753399E749F549F62
|
||||
:20EF60004F9F519F529F479F452564BDF698812D260403552004812B26049D7C2551812E5B
|
||||
:20EF80002728814526289D7C256481A7270E812D270A81A62708812B2704200603489D7C79
|
||||
:20EFA000254C0D48270800472004034626CC96479045974727122A09BDEDCB0C4726F920B3
|
||||
:20EFC00007BDEDB30A4726F996552A8E7EF132D645D046D7453402BDEDB33504C0308D0281
|
||||
:20EFE0002098BDEE78BDEEC58E00407EEC0BD6475858DB475880303404ABE09747209F9B91
|
||||
:20F000003EBC1FFD9E6E6B27FD9E6E6B28008EDEA48D0CDC68DD50C69043BDEECF8D037E65
|
||||
:20F02000EBE5CE01F18620D6542A02862DA7C0DF6497548630D64F102700C64FC18022086A
|
||||
:20F040008EF009BDED1386F797458EF004BDEEE92E0F8EEFFFBDEEE92E0EBDEDB30A4520A8
|
||||
:20F06000F1BDEDCB0C4520E2BDEBFDBDEF11C60196458B0A2B09810B24054A1F8986024A91
|
||||
:20F080004A9747D7452E0DDE64862EA7C05D27048630A7C08EF10EC6809653AB0397539605
|
||||
:20F0A00052A90297529651A90197519650A98497505C565928E32403C00B50CB2F30041F52
|
||||
:20F0C00098847FA7C00A452604862EA7C053C4808CF13226C4A6C2813027FA812E26023326
|
||||
:20F0E0005F862BD647271C2A03862D50A7428645A741862F4CC00A24FBCB3AED436F4520E1
|
||||
:20F1000004A7C46F418E01F1398000000000FA0A1F0000989680FFF0BDC0000186A0FFFF35
|
||||
:20F12000D8F0000003E8FFFFFF9C0000000AFFFFFFFF964F27020354399F64BDEE788D0527
|
||||
:20F140008D088E00407EED139F64BDEE739E64E680D7559F648DEE9E6430059F64BDEC0BAD
|
||||
:20F160008E00450A5526EE39BDEEB62B1F27158D10BDEE788D0E8E00408DCA8EED0EBDEC77
|
||||
:20F180000B7EEF379EB19F509EB39F52BEF1B99F5DBEF1BB9F5FBDED19DC8AC3658BDDB308
|
||||
:20F1A000DD52DC88C9B08905DDB1DD500F548680974F961597637EEC6540E64DABBDEEA8C6
|
||||
:20F1C0008EF202D661BDEDD2BDEEA88DB40F62965CD64FBDEC058EF207BDEC0296543402DE
|
||||
:20F1E0002A09BDEBFD96542B05030ABDF1328EF207BDEC0B35024D2A03BDF1328EF20C7E5A
|
||||
:20F20000F13983490FDAA27F000000000584E61A2D1B862807FBF88799688901872335DFA5
|
||||
:20F22000E186A55DE72883490FDAA2A154468F138F524389CD8EF268BDEC0B7EF1BDBDEE35
|
||||
:20F24000780F0A8DF68E004ABDEE7E8E0040BDEE5D0F54960A8D0C0D4F1027FA7E8E004A44
|
||||
:20F260007EEDD834027EF1EB81490FDAA2965434022A028D24964F3402818125058EED0E99
|
||||
:20F280008DDE8EF29DBDF1393502818125068EF268BDEC0235024D2A037EF132390B76B349
|
||||
:20F2A00083BDD3791EF4A6F57B83FCB0107C0C1F67CA7CDE53CBC17D1464704C7DB7EA512A
|
||||
:20F2C0007A7D6330887E7E9244993A7E4CCC91C77FAAAAAA138100000000037F5E56CB79FE
|
||||
:20F2E00080139B0B6480763893168238AA3B20803504F334813504F3348080000000803169
|
||||
:20F300007217F8BDEEB6102FF3C48EF2EF964F808034028680974FBDEC0B8EF2F4BDEDD8F5
|
||||
:20F320008EED0EBDEC028EF2DABDF1398EF2F9BDEC0B3504BDEFE28EF2FE7EED13BDEEA815
|
||||
:20F340008EF109BDEE5D27674D26037EEC838E004ABDEE7E5F96612A10BDEF378E004A964A
|
||||
:20F3600061BDEEE9260343D601BDEE953404BDF3038E004ABDED138D363502461025FDB271
|
||||
:20F38000398138AA3B29077134583E5674167EB31B772FEEE3857A1D841C2A7C6359580A08
|
||||
:20F3A0007E75FDE7C6803172181081000000008EF381BDED13BDEE78964F818825037EED81
|
||||
:20F3C000A5BDEF3796018B8127F44A34028E0040BDEC028EF386BDF1480F623502BDED910E
|
||||
:20F3E00039BDEEB62B037EEF3703548DF97EF132BDF81E326286019798BDDFA21025ED7F27
|
||||
:20F40000BDEA3B1F208300F5D797DC2BBDF015BDEBF58E00F4D69826255FBDF544BDFCE94D
|
||||
:20F42000250B80303402860A3DEBE020EDC001C90181412605BDEBA520BB814C260B8D31B5
|
||||
:20F440000F98BDEBA520C33262810D260D8D22BDEBA58E00F49F837EDF4B814527F1815188
|
||||
:20F460002606BDEBA57EDF228D0220AD812026108CC6F9A6842708BDDB1430015A26F43933
|
||||
:20F48000814426486D8427F78D045A26F7390A97311F3121A621A7A426F8398149271381B8
|
||||
:20F4A00058270D8148265C6F841F108300F5D7978DBFBDF544810D278E811B272581082651
|
||||
:20F4C000228C00F427EC8D458DC420E6814326CB6D84270EBDF544250220F5A7808D375AFC
|
||||
:20F4E00026EE39D697C1F9260220C734106D8026FCE682E701ACE426F83262A7808D170CCD
|
||||
:20F500009720AF810826128D045A26FB398C00F427D0301F86087EDB14814B2705805327CC
|
||||
:20F52000013934028D1E3402A68427166D6126068DE430012003BDF48EA684A1E426E95AFD
|
||||
:20F5400026E635A0BDDB00817F24F9815F2602861B810D270E811B270A8108270681202560
|
||||
:20F56000E31A0139864F978C398600D6791D7EE778BDE4F3DC1F3406BDE5DBBDE4F0350642
|
||||
:20F580001E109C1F26517EE7789D7CBDE4F3BDE5DB3410EC02109321230493272312E6848E
|
||||
:20F5A000BDE7F13410AE62BDE8C73550AF423440BDE9BC34045D271FC6FF81292703BDE990
|
||||
:20F5C000BC3404BDE4F0C6AEBDE4F88D2E1F13AE62A684A06124037EE6CE4CA1E42402A77A
|
||||
:20F5E000E4A6611E89AE025A3A4D270DA1E42302A6E41F891E31BDDCAE3596BDE3DF7EE892
|
||||
:20F60000D8BDE4F3BDE98F3404BDE4F6BDE3DFBDE4F096062605BDE9922003BDE928340442
|
||||
:20F62000E661BDE79335062705A7805A26FB7EE91FBDE4F3BDE3DFC601340496062610BD1C
|
||||
:20F64000E992E7E42791BDE4F6BDE3DFBDE3CF9E523410BDE4F6BDF5FB3414BDE4F0AE63C5
|
||||
:20F66000BDE8DD3404E1662523A661271CE6665A3A3184EE62E661A6E4A0664CA161250CBC
|
||||
:20F68000A680A1C0260C5A26F7E666215F32677EE7776C66302120D98126265C32620F52BF
|
||||
:20F6A0000F538E00529D7C814F2712814827239D82200C81381022EE47C6038D2A9D7C25AA
|
||||
:20F6C000F20F500F510F060F630F54C6A0D74F7EEC659D7C250BBDE62625E6814724E280C9
|
||||
:20F6E00007C6048D0220EB680169841025F5EC5A26F58030AB01A7013935400F069E839D39
|
||||
:20F700007C8126279981B0275E81FF26089D7C8183102700AB9F836EC49E68300126D9C653
|
||||
:20F72000167EDF03AE9F00838CFF83102700748D238DE6BDE4F3C680D708BDE5DB8D25BD02
|
||||
:20F74000E4F0C6AEBDE4F89E4BDC83ED84DC39ED027EE18DC6B0BDE4F8C680D7088A80BD24
|
||||
:20F76000E5E09F4B7EE3CC8DEB3410BDE4EB8DF43540C632AE4227A9109E83EEC4DF83A6CC
|
||||
:20F78000043402EC84EE023476BDEE7EBDE3CA3576ED84EF023502A7049D821026ED6110F0
|
||||
:20F7A0009F83399D7C8D0934108D2D3540AFC4395F9D7C240680301F899D7C9E8D583A3917
|
||||
:20F7C0008DEEAE843410BDE4EB8E004F96062707BDE8DB9E52960639C6AEBDE4F87EE9C18B
|
||||
:20F7E0001027EEEABDE214BDDFA29F939D82271081A7263B9D7C27048D24200486FF972B98
|
||||
:20F80000DE938CEEC4ECC42706EC42932B23F49E938D15BDDFC29E93BDDF927EDF22BDE2AB
|
||||
:20F82000147EDCB7A6C0A78011931B26F79F1B39BDF7199D7C8122260BBDE4CDC63BBDE47D
|
||||
:20F84000F8BDEBE8327EBDE2C93262BDE5DB9F3BBDE3CF8E00F34FBDE7A07EE251BDE21436
|
||||
:20F860009E2B399E919F2B7EDFA2BDDFC7CC000ADD95DD8F5FDD919D8224068DE09F959D23
|
||||
:20F8800082271BBDE4F624068DD39F919D82270EBDE4F624068DC69F8F2749BDDCB78DC3AD
|
||||
:20F8A0009F939E958DBF9C93253A8D1CBDF93EBDDF908DAF9F938D3A8D0F8D36BDF9D9BD60
|
||||
:20F8C000DFC7BDDF907EDF22864F97989E93DC958D150D982602ED02AE848D0BD38F25047E
|
||||
:20F8E00081FA25EE7EE6CE3406EC84350626023262399E19301F30018DED30033001A6842F
|
||||
:20F9000027F49F0F4A270C4A272A4A26EF8603A78020E7EC016A0227014FE6036A042701A1
|
||||
:20F920005FED01DD2BBDDFA29E0F25E1DC476C80ED8420C66F84AE01AE029F4720EA9E1922
|
||||
:20F9400020049E8330018D9F300230019F839D7C4D27EF2AF99E8381FF27EF81A22712814D
|
||||
:20F9600084270E818126E79D7C81A0270481A126DB9D7C25049D8220D79E833410BDE214C7
|
||||
:20F980009E83A682BDFCE925F930011F10E061C0052720250A3384503085BDF82820149F16
|
||||
:20F9A000479E1B9F435030859F419F1BBDDEDB9E459F8335108601A784A702A704D62B26D9
|
||||
:20F9C00004C6016C02E701D62C2604C6016C04E7039D82812C279A209C9E19301F3001EC4D
|
||||
:20F9E00002DD68BDF8E730033001A68427EF4A271B800226F334108EFA36BDEBE5AEE4EC4C
|
||||
:20FA000001BDF015BDF00EBDEBA535103410EC01DD52BDF6C1BDF0223540C6053001A68498
|
||||
:20FA200027055AA7C020F530C45D27BE31C433C5BDF82830A420B3554C2000BDE9C48E0163
|
||||
:20FA4000F0C60434045F860408530952594A26F85D260AA6E44A27058C01F0270CCB30C15B
|
||||
:20FA6000392302CB07E7806F8435045A26D532628E01EF7EE79C860197995ABDFC179D825B
|
||||
:20FA800010270093D793BDE3DFBDE3CF9E529F4DD699BDE931BDEBE89E52D699E0845A1065
|
||||
:20FAA0002B014FBDEBF520F6D7939F0F86029799A684812527C4812026070C9930015A2669
|
||||
:20FAC000EF9E0FD6938625BDFC17BDDB14202981B12701393262BDE3E1BDE3CFC63BBDE4F8
|
||||
:20FAE000F89E529F952006969727089E950F97E68426037EE6CEAE020F9A0F99A680812101
|
||||
:20FB00001027FF728123275B5A2616BDFC17BDDB149D8226D296972603BDEBA59E957EE8B2
|
||||
:20FB2000DD812B2609BDFC178608979A20CC812E274E81251027FF70A184268B8124271967
|
||||
:20FB4000812A26F6969A8A20979AC1022511A6018124260B5A30010C99969A8A10979A3002
|
||||
:20FB6000010C990F980C995A2749A680812E271E812327F1812C2621969A8A40979A20E5CF
|
||||
:20FB8000A68481231026FF3F8601979830010C985A2720A680812327F5815E2616A18426AB
|
||||
:20FBA00012A101260EA102260AC1042506C00430040C9A301F0C99969A850826180A995D0D
|
||||
:20FBC0002713A684802D270681FE260986088A049A9A979A5A9D821027FF3CD793BDE3CAF9
|
||||
:20FBE00096999B9881111022EAE4BDFC24301FBDEBE50F979D82270D9797813B2705BDE4A8
|
||||
:20FC0000F620029D7C9E95E684D093AE023AD6931026FEE47EFB113402862B0D9A2703BD49
|
||||
:20FC2000DB143582CE01F2C620969A85082702C62B0D542A040F54C62DE7C0C630E7C084F3
|
||||
:20FC400001102601078EF009BDEEE92B15BDF022A68026FCA682A7018C01F126F78625A736
|
||||
:20FC60008439964F97472703BDFE0C9647102B0081409B998009BDFD29BDFEA2BDFE4196AB
|
||||
:20FC800047BDFEC09647BDFE8896982602335F4ABDFD29BDFDC44D2706C12A2702E7C06F4B
|
||||
:20FCA000C48E01F130019F0F963A901090992738A684812027EE812A27EA4F3402A6808161
|
||||
:20FCC0002D27F8812B27F4910027F08130260EA6018D1625083502A78226FA20C735024D22
|
||||
:20FCE00026FB9E0F8625A7823981302504803A80C639969827014A9B472B014F34022A0AAF
|
||||
:20FD00003402BDEDCB35024C20F49647A0E097478B092B199699800990478D0DBDFEA220E8
|
||||
:20FD20001D34028630A7C035024A2AF53996998DF8BDFE8C86F790478DEF0F450F97BDFEFA
|
||||
:20FD40004196982602DE399B4716FF43964F34022703BDFE0C969827014A9B997F01F1D694
|
||||
:20FD60009AC40426037301F1BB01F1800934022A0A3402BDEDCB35024C20F4A6E42B014FAC
|
||||
:20FD8000409B994CBB01F197450F97BDFE413502BDFEC096982602335FE6E02709D647CB00
|
||||
:20FDA00009D099F001F1862B5D2A03862D50A7418645A7C1862F4CC00A24FBCB3AEDC16F8A
|
||||
:20FDC000C47EFC938E01F2E68434048620D69AC52035042708862AC12026021F893404A78C
|
||||
:20FDE00080E6842710C145270CC13027F2C12C27EEC12E26048630A782969A85102704C6EF
|
||||
:20FE000024E782840435042602E7823934404F9747D64FC18022118EF009BDED13964780EF
|
||||
:20FE20000920ECBDEDCB0C478EF004BDEEE92EF38EEFFFBDEEE92E07BDEDB30A4720F13575
|
||||
:20FE4000C03440BDEBFDBDEF1135408EF10EC6808D369653AB0397539652A902975296511D
|
||||
:20FE6000A90197519650A98497505C565928E32403C00B50CB2F30041F98847FA7C053C438
|
||||
:20FE8000808CF13226CA6FC40A452609DF39862EA7C00F97390A97260886039797862CA7A1
|
||||
:20FEA000C03996478B0A97454C800324FC8B059797969A8440260297973934028DCA350207
|
||||
:20FEC0004A2B0A34028630A7C0A6E026ED3981891027F95C7EE500FFFFFFFFFFFFFFFFFF8E
|
||||
:20FEE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22
|
||||
:20FF0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01
|
||||
:20FF2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1
|
||||
:20FF4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1
|
||||
:20FF6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1
|
||||
:20FF8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81
|
||||
:20FFA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61
|
||||
:20FFC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41
|
||||
:20FFE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000009B009E00AA00A700A100A4DB4621
|
||||
:00000001FF
|
||||
BIN
ROMS/6809/ExBasRom.zip
Normal file
BIN
ROMS/6809/ExBasRom.zip
Normal file
Binary file not shown.
@@ -62,7 +62,7 @@ BEGIN
|
||||
address_aclr_a => "NONE",
|
||||
clock_enable_input_a => "BYPASS",
|
||||
clock_enable_output_a => "BYPASS",
|
||||
init_file => "./ROMS/6809/EXT_BASIC_NO_USING.hex",
|
||||
init_file => "./ROMS/6809/basic_remap.hex",
|
||||
intended_device_family => "Cyclone V",
|
||||
lpm_hint => "ENABLE_RUNTIME_MOD=NO",
|
||||
lpm_type => "altsyncram",
|
||||
|
||||
BIN
ROMS/6809/as11v2.pdf
Normal file
BIN
ROMS/6809/as11v2.pdf
Normal file
Binary file not shown.
BIN
ROMS/6809/as9.exe
Normal file
BIN
ROMS/6809/as9.exe
Normal file
Binary file not shown.
File diff suppressed because it is too large
Load Diff
258
ROMS/6809/basic.hex
Normal file
258
ROMS/6809/basic.hex
Normal file
@@ -0,0 +1,258 @@
|
||||
:20006000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0C842602E4
|
||||
:200080000C83B6FFFF7EE202FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3
|
||||
:20E000008D0327FC39B6FFD085012706B6FFD1847F394F398D263402810D270DB7FFD10C54
|
||||
:20E020007996799178251220100F798D0F860DB7FFD18D08860AB7FFD13502393402B6FFA3
|
||||
:20E04000D0850227F935023910CE01EE860CBDE0148EE157A6802705BDE01420F7B6FFD064
|
||||
:20E06000850127F9B6FFD1847F8143271481572706966E8155260A9E6FA684811226026E03
|
||||
:20E08000848E02186F83300126FA8E02176F809F19A60243A702A10226063001630120F1BA
|
||||
:20E0A0009F719F279F233089FF389F211F148EE0F5CE0076C612BDE1F1CE00A7C604BDE1FA
|
||||
:20E0C000F1863997F0BDE4FD8E00B59F8DCEEC11C60AEF815A26FB8695B7FFD08EE12ABD7F
|
||||
:20E0E000F1258EE0ED9F6F8655976E200412BDE5177EE4653B1040FF00EC110C8426020CC0
|
||||
:20E1000083B600007EE2027EE2017EE0F47EEC11804FC7525932E260E36D1DE300E211003E
|
||||
:20E1200000000000000000000000003638303920455854454E4445442042415349430D28E0
|
||||
:20E1400043292031393832204259204D4943524F534F46540D0D00434F4C44204F5220575A
|
||||
:20E1600041524D2053544152542028432F57293F200D0034169E76DC789F6AD76C976D3534
|
||||
:20E18000960F738E00F4C601BDE000810826075A27EF301F20348115260A5A27E48608BD42
|
||||
:20E1A000E01420F681031A012705810D260D4F3401BDF0E56F848E00F33581812025C98179
|
||||
:20E1C0007B24C5C1FA24C1A7805CBDE01420B92705BDEF049F7A6E9F007A7EE5E69673263A
|
||||
:20E1E00003BDE0050F73975310260C6A97567EEE62A680A7C05A26F939399D8227FB7EEA86
|
||||
:20E20000433B813A240A812026020E7C803080D039F403F477F41C00ADF6A8F6FDEF17EE67
|
||||
:20E2200048ECC4EEDDEE67EE53F7ADF775F77EF8EFF921F843FAA9F87DFF7BEE72EE8FEE67
|
||||
:20E2400096E1DDECB5FAB1FB71FB4179F14E79F1457BF2557BF31A7FF88650EA9C46EA9B27
|
||||
:20E26000464FD247CF5245CDA7454C53C549C6444154C15052494ED44FCE494E5055D44545
|
||||
:20E280004EC44E4558D44449CD524541C45255CE524553544F52C55245545552CE53544F48
|
||||
:20E2A000D0504F4BC5434F4ED44C4953D4434C4541D24E45D7455845C354524FCE54524FC1
|
||||
:20E2C00046C64445CC4445C64C494EC552454E55CD454449D4544142A854CF5355C2544891
|
||||
:20E2E00045CE4E4FD4535445D04F46C6ABADAAAFDE414EC44FD2BEBDBC46CE5553494EC72F
|
||||
:20E300005347CE494ED44142D35553D2524EC45349CE504545CB4C45CE535452A45641CC88
|
||||
:20E320004153C3434852A44154CE434FD35441CE4558D04649D84C4FC7504FD35351D24874
|
||||
:20E340004558A44C454654A45249474854A44D4944A4494E4B4559A44D45CD5641525054FD
|
||||
:20E36000D2494E5354D2535452494E47A4E52BE676E6D3E6D3E6D3E704E6D0F0ADE732E76B
|
||||
:20E38000DFE5FDE8C4EB15E819E66BE5DFE6B0E601EF1EE626EF25E637E4FBE1CFFAA4FA0C
|
||||
:20E3A000A5FD20FC64FFBFFDAAF9304E46534E52474F4446434F564F4D554C425344442F95
|
||||
:20E3C000304944544D4F534C535354434E4644414F444E494F464D4E4F4945445355464EE4
|
||||
:20E3E00045204552524F520020494E20000D4F4B0D000D425245414B003064C6129F0FA671
|
||||
:20E400008480802615AE019F119E3B27099C1127099E0F3A20E59E119F3B9E0F4D398D17AC
|
||||
:20E42000DE4133419E433001A68236029C4726F8DF45394F58D31FC3003A250810DF1710A0
|
||||
:20E44000931725EEC60CBDE517BDF0E9BDF1388EE3AB3A8D318D2F8EE3E0BDF12596684CBA
|
||||
:20E460002703BDF54EBDF0E98EE3EDBDF125BDE181CEFFFFDF6825F69F839D7C27F0250BDC
|
||||
:20E48000BDEFDA7EE5B4A6807EF13ABDE7579E2B9FF1BDEFDAD7038D4C2512DC47A384D32F
|
||||
:20E4A0001BDD1BEE843702A7809C1B26F896F3271CDC1BDD43DB038900DD41BDE41ECE00AD
|
||||
:20E4C000EF3702A7809C4526F89E419F1B8D368D02209B9E19EC8427213304A6C026FCEF2B
|
||||
:20E4E00084AE8420F0DC2B9E19EE84270910A3022306AE8420F31A019F473926FB9E196F52
|
||||
:20E50000806F809F1B9E19BDE6AB9E279F23BDE5DF9E1B9F1D9F1F8E00C99F0BAEE410DE11
|
||||
:20E52000216FE20F2D0F2E0F086E8486809708BDE779BDE3F9326226049E0F3285C609BDDE
|
||||
:20E54000E433BDE6D8DC683416C6A0BDEA3BBDE90FBDE90DD654CA7FD450D750108EE56347
|
||||
:20E560007EE9B68EF24EBDF39D9D8281A426059D7CBDE90DBDF3F6BDE9B2DC3B34068680D3
|
||||
:20E5800034021CAF8D609E839F2FA6802707813A27227EEA43A68197002772EC80DD689FF4
|
||||
:20E5A00083968C270F865BBDE0149668BDF555865DBDE0149D7C8D0220C827294D102A01ED
|
||||
:20E5C000B881FF270F819E22C9BEE118481F893A9D7C6E949D7C8197102714ED7EEA439E15
|
||||
:20E5E00019301F9F3339BDE005270A8103271281132703977339BDE00527FB20EE9D822006
|
||||
:20E60000021A0126319E839F2F060032629E688CFFFF27069F299E2F9F2D8EE3F10D001060
|
||||
:20E620002AFE427EE45A260EC6209E2D1027FE169F839E299F6839272CBDEBAD34069E27B4
|
||||
:20E640009D82270CBDEA39BDEF04301F9C7122181F10A3E125121F0383003A250B931B2576
|
||||
:20E6600007DF219F277EE50A7EE4449D821027FE94BDE50A20191F899D7CC1A02716C1A12C
|
||||
:20E680002645C603BDE433DE839E6886A134528D037EE5829D82BDE7578D403001DC2B10BA
|
||||
:20E6A000936822029E19BDE4E92517301F9F833926FD86FF973BBDE3F91F148121270BC634
|
||||
:20E6C000048CC60E7EE4467EEA4335529F68DF838D068C8D069F8339C63A865FD7015F9ECC
|
||||
:20E6E000831F98D6019701A68427EC3404A1E027E63001812227EA4C26023001818626E7D0
|
||||
:20E700000C0420E3BDE90D9D8281812705C6A2BDEA3B964F26130F048DB64D27BA9D7C8160
|
||||
:20E720008426F50A042AF19D7C9D821025FF657EE5BABDEED2C681BDEA3B340281A12704FA
|
||||
:20E7400081A026830A53260535047EE6789D7C8D06812C27EF35849E749F2B246180309782
|
||||
:20E7600001DC2B811822DB58495849D32B5849DB018900DD2B9D7C20E2BDEB1E9F3BC6AE7E
|
||||
:20E78000BDEA3B96063402BDE922350246BDE91410270C289E52DC2110A30224119C1B25A8
|
||||
:20E7A0000DE684BDECD49E4DBDEE0A8E00569F4DBDEE3CDE4D9E3B3726A78410AF02393F49
|
||||
:20E7C0005245444F0D007EE446960927079E319F687EEA438EE7BEBDF1259E2F9F8339C618
|
||||
:20E7E000169E68300127DF8D01398122260BBDEA10C63BBDEA3BBDF1288E00F36F848D06B4
|
||||
:20E80000C62CE7842016BDF138BDF135BDE181240532647EE609C62E399E33864F97099F3F
|
||||
:20E8200035BDEB1E9F3B9E839F2B9E35A684260996092651BDF1388DCD9F839D7CD6062758
|
||||
:20E84000239E8397018122270E301F4F9701BDE173863A9701862C9702BDECE5BDEA15BD13
|
||||
:20E86000E7942006BDF49BBDF3BC9D822706812C1026FF529E839F359E2B9F839D82272178
|
||||
:20E88000BDEA39209C9F83BDE6D830014D260AC606EE812741EC81DD31A684818626E62016
|
||||
:20E8A000989E35D6091026FD3AA68427068EE8B37EF125393F45585452412049474E4F52F2
|
||||
:20E8C00045440D0026049E742003BDEB1E9F3BBDE3F92704C60020471F143003BDF39DA659
|
||||
:20E8E0006897549E3BBDF14BBDF3BC3069BDF41FE068270CAE6E9F68AEE8109F837EE582D3
|
||||
:20E9000032E8129D82812C26F49D7C8DBD8D131CFE7D1A010D0625032A998C2B96C6187E89
|
||||
:20E92000E4468D6E4F8C34043402C601BDE433BDE9EF0F3F9D8280AD25138103240F81012E
|
||||
:20E9400049983F913F2564973F9D7C20E9D63F26331024006B8B0724679906102704778942
|
||||
:20E96000FF340248ABE08EE24B30863502A18424558D9C34028D299E3D3502261D4D10275B
|
||||
:20E98000006A204B0806598D098EE997D73F0F0620D99E837EE6AB64EABBA184243120D3CD
|
||||
:20E9A000EC0134068D08D63F16FF7B7EEA43D654A68435203404D64F9E50DE5234546EA48D
|
||||
:20E9C0009E74A6E0272681642703BDE90F9F3D3504815A2719817D271554D70A3552975C75
|
||||
:20E9E0009F5DDF5F3504D761D854D762D64F39BDFC390F069D7C24037EF49BBDEB692450D0
|
||||
:20EA0000812E27F481A7274081A627E38122260A9E83BDECDF9E649F833981A3260D865A5C
|
||||
:20EA2000BDE926BDEBB443537EECBB4C272E8D06BDE922C6298CC6288CC62CE19F008326E7
|
||||
:20EA4000020E7CC6027EE446867DBDE9267EF672BDEB1E9F52960626957EF39D9D7C1F8928
|
||||
:20EA6000589D7CC13823037EEA433404C12A251EC130241C8DC0A6E4BDE9228DBCBDE91224
|
||||
:20EA80003502DE523442BDEED2350234068E8D9E3504BEE11D3AAD947EE90F864F9703BDE0
|
||||
:20EAA000EBB4DD01BDF3D3BDEBB40D0326069401D40220049A01DA027EECBBBDE9142610A3
|
||||
:20EAC00096618A7F945D975D8E005CBDF41F20360F060A3FBDEE1ED7569F589E5FBDEE202E
|
||||
:20EAE00096563404A0E0270786012403D656409754DE585C5A2604D654200BA680A1C02726
|
||||
:20EB0000F3C6FF240150CB0159D40A2702C6FF7EF405BDEA39C6018D089D8226F5395F9DB5
|
||||
:20EB200082D70597379D828D401025FF165FD7069D7C25048D33250A1F899D7C25FC8D296E
|
||||
:20EB400024F8812426060306CB809D7CD7389A088028102700750F089E1BDC379C1D271281
|
||||
:20EB600010A381273E300520F381412504805B80A5398E0074EEE41183EA532728DC1FDDC4
|
||||
:20EB800043C30007DD419E1D9F47BDE41E9E419F1F9E459F1D9E47DC37ED814F5FED84ED3C
|
||||
:20EBA00002A7049F393990800000009D7CBDE90D96542B5DBDE90F964F819025088EEBA652
|
||||
:20EBC000BDF41F264CBDF451DC5239DC053406125F9E3734148DD435349F37DE5234605C21
|
||||
:20EBE0009D82812C27EBD703BDEA333506DD059E1D9C1F2721DC3710A3842706EC02308B88
|
||||
:20EC000020EFC6129605260BD603E1042759C6108CC6087EE446CC0005DD64DC37ED84D6BF
|
||||
:20EC200003E704BDE4339F41C60B4F0D0527053506C30001ED058D5DDD6430020A0326E86B
|
||||
:20EC40009F0FD30F1025F7FC1F01BDE437830035DD1F4F301FA7059C0F26F89E41961F9316
|
||||
:20EC600041ED029605262DE604D7034F5FDD643506DD5210A305243ADE6427048D17D3520D
|
||||
:20EC800030020A0326E7EDE358495849E3E1308B30059F393986109745EC05DD174F5F58F4
|
||||
:20ECA00049250F086509642404D31725050A4526EE397EEC0E1F40931F214F0F06DD50C624
|
||||
:20ECC000907EF40BBDE90FCE01F0BDF56532628E01EF200B9F4D8D5C9F58D75639301F8658
|
||||
:20ECE000229701970230019F629F58C6FF5CA680270C91012704910226F381222702301F9A
|
||||
:20ED00009F64D756DE62118301F022078DC69E62BDEE0C9E0B8C00F12605C61E7EE4469658
|
||||
:20ED200056A700DC58ED0286FF97069F0D9F5230059F0B390F074F3406DC23A3E0109321F7
|
||||
:20ED4000250ADD239E2330019F253584C61A030727CA8D04350420DE9E279F234F5FDD4B15
|
||||
:20ED60009E219F478E00C99C0B27048D3220F89E1B9C1D27048D2220F89F419E419C1F27E9
|
||||
:20ED800035EC02D341DD41A6012AF0E60458CB053A9C4127E88D0820F8A60130022A14E67B
|
||||
:20EDA000842710EC02109323220910934723049F4BDD473005399E4B27FB4FE6845AD347F4
|
||||
:20EDC000DD439E239F41BDE4209E4BDC45ED029E45301F7EED5ADC523406BDE9EFBDE9120C
|
||||
:20EDE00035109F62E6849E52EB842405C61C7EE446BDECD49E62E6848D109E4D8D228D0C9A
|
||||
:20EE00009E628D1CBDED137EE934AE02DE255C2004A680A7C05A26F9DF2539BDE9129E52D3
|
||||
:20EE2000E6848D182613AE07301F9C2326083404D323DD233504300139AE02399C0D260709
|
||||
:20EE40009F0B301B9F0D4F398D037EECBA8DCC0F065D39BDEED5C601BDED349653BDECD842
|
||||
:20EE6000A78432627EED138D0220DF8DE0275EE684398D484FE1842303E6844F3406BDECE7
|
||||
:20EE8000D69E4D8D9B35043A3504BDEE0C20D58D2BA0844020DFC6FFD7539D828129270532
|
||||
:20EEA000BDEA398D2D8D1527245F4AA18424CD1F89E08450D15323C4D65320C0BDEA33EED4
|
||||
:20EEC000E4AE659F4DA664E66432671F357EEC119D7CBDE90DBDEBB04D26F20E82BDEE4D82
|
||||
:20EEE000102702DEDE839F833AA68434526F849D82BDF49B3552A784DF83398D079F2BBDC8
|
||||
:20EF0000EA3920CEBDE90D96542BC2964F819022BCBDF4519E52398DEEE6847EECBA8DDBE6
|
||||
:20EF20009E2BE784393401BDE757BDE4E59F66350127129D82271381A726099D7C2706BD87
|
||||
:20EF4000E757270639CEFFFFDF2B32629E66BDF0E9BDE1DAEC8426037EE4659F66EC02102E
|
||||
:20EF6000932B22F4BDF555BDF1359E668D10AE9F0066CE00F4A6C027D5BDF13A20F7300428
|
||||
:20EF8000108E00F4A68027512B15813A260DE684C18427F0C18327EC8C86218D3020E5CE33
|
||||
:20EFA000E10B81FF2604A6803345847F334A6DC427E7A0C42AF6ABC4EE414A2B066DC02A6A
|
||||
:20EFC000FC20F7A6C48D066DC02AF820B7108C01ED2406847FA7A06FA4399E83CE00F30FC0
|
||||
:20EFE000430F44A68027210D43270FBDEB69241881302504813923100F438120270A974276
|
||||
:20F00000812227380D442719A7C02706813A27CF20D16FC06FC01F308300F18E00F29F8364
|
||||
:20F0200039813F2604868720DF81272613CC3A83EDC10F42A68027D0914227CCA7C020F4DA
|
||||
:20F0400081302504813C25C0301F34500F41CEE10B0F42334AA6C4273110AE41AEE4E6A0B0
|
||||
:20F06000E08027FAC180263832623540DA4296412606C1842606863AEDC12094E7C0C186C7
|
||||
:20F0800026020C44C18227AA2086CEE110034126C03550A680A7C0BDEB6925EC034320E8D3
|
||||
:20F0A0000C424A27AE313FE6A02AFC20AF27368D0139273E819F2753812C2737813B276087
|
||||
:20F0C000BDE922960634022606BDF562BDECDD8D573504BDE1735D26089D82812C27148D83
|
||||
:20F0E000549D8226CF860D2051BDE17327F7966C26F339BDE173270AD66CD16B25068DE5C4
|
||||
:20F10000201ED66CD06A24FC502010BDEED081291026F92FBDE173D06C23058D185A26FB7D
|
||||
:20F120009D7C7EF0B2BDECDFBDEE1E5C5A27C3A6808D0720F786208C863F7EE0148EF6499E
|
||||
:20F140002009BDF2B8035403622003BDF2B85D102702808E005C1F895D276CD04F2769256D
|
||||
:20F160000A974F966197548E004F50C1F82F594F6401BDF243D6622A0B63016302630363AA
|
||||
:20F180000443890097639653996097539652995F97529651995E97519650995D97505D2A00
|
||||
:20F1A0004425028D5D5F9650262E965197509652975196539752966397530F63CB08C128E0
|
||||
:20F1C0002DE44F974F9754398D6D5F20A85C086309530952095109502AF3964F3404A0E0B9
|
||||
:20F1E000974F23DE8C2508086386009763200C0C4F2728065006510652065324048D0D2767
|
||||
:20F20000EE39035403500351035203539E5230019F5226069E5030019F5039C60A7EE44621
|
||||
:20F220008E0012A6049763A603A704A602A703A601A702965BA701CB082FE89663C0082729
|
||||
:20F240000C6701660266036604465C26F43981000000008D6327608D78860097139714979B
|
||||
:20F26000159716D6538D22D663D78BD6528D1AD663D78AD6518D12D663D789D6508D0CD6FC
|
||||
:20F2800063D788BDF3947EF1A52795439613562726241696169B6097169615995F97159696
|
||||
:20F2A00014995E97149613995D46971306140615061606634F20D539EC0197618A80DD5DA9
|
||||
:20F2C000D661D854D762EC03DD5FA684975CD64F394D27169B4F464928108B80974F270C8D
|
||||
:20F2E000966297543996544320023262102AFED27EF21BBDF3E8270D8B0225F40F62BDF1E9
|
||||
:20F30000560C4F27EB398420000000BDF3E88EF3065FD762BDF39D8C8D9E2773004F8DB16B
|
||||
:20F320000C4F27CC8E0013C604D703C6019650915D26139651915E260D9652915F260796C2
|
||||
:20F340005391602601431FA859240AE7800A032B34272EC6011F8A250E0860095F095E09A6
|
||||
:20F360005D25E32BC820DF966090539760965F9252975F965E9251975E965D9250975D20E2
|
||||
:20F38000D8C64020D0565656D7638D087EF1A5C6147EE4469E139F509E159F52393402EC99
|
||||
:20F3A0000197548A80DD500F63E684AE039F52D74F35828E004520068E00408C9E3B964FBE
|
||||
:20F3C000A78496548A7F9450A7019651A702DE52EF0339966197549E5C9F4F0F63965E97D1
|
||||
:20F3E0005196549E5F9F5239DC4FDD5C9E519F5E9E539F604D39D64F2708D65459C6FF2524
|
||||
:20F400000150398DF1D7500F51C68896508080D74FDC74DD52976397547EF1A10F5439E60D
|
||||
:20F420008427D3E601D8542BD1D64FE184261DE601CA7FD450E1012613D651E102260DD6F0
|
||||
:20F4400052E1032607D653E00426013956D85420ABD64F273DC0A096542A05035BBDF2047C
|
||||
:20F460008E004FC1F82E06BDF2370F5B390F5B96544906507EF243D64FC1A0241D8DD2D796
|
||||
:20F48000639654D754808086A0974F965397017EF1A1D750D751D752D753399E749F549FD8
|
||||
:20F4A0004F9F519F529F479F452564BDFBD8812D260403552004812B26049D7C2551812ED1
|
||||
:20F4C0002728814526289D7C256481A7270E812D270A81A62708812B2704200603489D7C34
|
||||
:20F4E000254C0D48270800472004034626CC96479045974727122A09BDF30B0C4726F92028
|
||||
:20F5000007BDF2F30A4726F996552A8E7EF672D645D046D7453402BDF2F33504C0308D026C
|
||||
:20F520002098BDF3B8BDF4058E00407EF14BD6475858DB475880303404ABE09747209F9B7B
|
||||
:20F540003EBC1FFD9E6E6B27FD9E6E6B28008EE3E78D0CDC68DD50C69043BDF40F8D037E92
|
||||
:20F56000F125CE01F18620D6542A02862DA7C0DF6497548630D64F102700C64FC1802208DF
|
||||
:20F580008EF549BDF25386F797458EF544BDF4292E0F8EF53FBDF4292E0EBDF2F30A45207D
|
||||
:20F5A000F1BDF30B0C4520E2BDF13DBDF451C60196458B0A2B09810B24054A1F8986024A7B
|
||||
:20F5C0004A9747D7452E0DDE64862EA7C05D27048630A7C08EF64EC6809653AB039753967B
|
||||
:20F5E00052A90297529651A90197519650A98497505C565928E32403C00B50CB2F30041F0D
|
||||
:20F6000098847FA7C00A452604862EA7C053C4808CF67226C4A6C2813027FA812E2602339B
|
||||
:20F620005F862BD647271C2A03862D50A7428645A741862F4CC00A24FBCB3AED436F45209B
|
||||
:20F6400004A7C46F418E01F1398000000000FA0A1F0000989680FFF0BDC0000186A0FFFFF0
|
||||
:20F66000D8F0000003E8FFFFFF9C0000000AFFFFFFFF964F27020354399F64BDF3B88D059D
|
||||
:20F680008D088E00407EF2539F64BDF3B39E64E680D7559F648DEE9E6430059F64BDF14B99
|
||||
:20F6A0008E00450A5526EE39BDF3F62B1F27158D10BDF3B88D0E8E00408DCA8EF24EBDF15E
|
||||
:20F6C0004B7EF4779EB19F509EB39F52BEF6F99F5DBEF6FB9F5FBDF259DC8AC3658BDDB36F
|
||||
:20F6E000DD52DC88C9B08905DDB1DD500F548680974F961597637EF1A540E64DABBDF3E8F7
|
||||
:20F700008EF742D661BDF312BDF3E88DB40F62965CD64FBDF1458EF747BDF14296543402F9
|
||||
:20F720002A09BDF13D96542B05030ABDF6728EF747BDF14B35024D2A03BDF6728EF74C7E75
|
||||
:20F74000F67983490FDAA27F000000000584E61A2D1B862807FBF88799688901872335DF1B
|
||||
:20F76000E186A55DE72883490FDAA2A154468F138F524389CD8EF7A8BDF14B7EF6FDBDF31C
|
||||
:20F78000B80F0A8DF68E004ABDF3BE8E0040BDF39D0F54960A8D0C0D4F1027FA7E8E004A35
|
||||
:20F7A0007EF31834027EF72B81490FDAA2965434022A028D24964F3402818125058EF24E83
|
||||
:20F7C0008DDE8EF7DDBDF6793502818125068EF7A8BDF14235024D2A037EF672390B76B3AB
|
||||
:20F7E00083BDD3791EF4A6F57B83FCB0107C0C1F67CA7CDE53CBC17D1464704C7DB7EA51E5
|
||||
:20F800007A7D6330887E7E9244993A7E4CCC91C77FAAAAAA138100000000037F5E56CB79B8
|
||||
:20F8200080139B0B6480763893168238AA3B20803504F334813504F3348080000000803123
|
||||
:20F840007217F8BDF3F6102FF3C78EF82F964F808034028680974FBDF14B8EF834BDF31851
|
||||
:20F860008EF24EBDF1428EF81ABDF6798EF839BDF14B3504BDF5228EF83E7EF253BDF3E81A
|
||||
:20F880008EF649BDF39D27674D26037EF1C38E004ABDF3BE5F96612A10BDF4778E004A96AC
|
||||
:20F8A00061BDF429260343D601BDF3D53404BDF8438E004ABDF2538D363502461025FDB217
|
||||
:20F8C000398138AA3B29077134583E5674167EB31B772FEEE3857A1D841C2A7C6359580AC3
|
||||
:20F8E0007E75FDE7C6803172181081000000008EF8C1BDF253BDF3B8964F818825037EF268
|
||||
:20F90000E5BDF47796018B8127F44A34028E0040BDF1428EF8C6BDF6880F623502BDF2D12F
|
||||
:20F9200039BDF3F62B037EF47703548DF97EF672BDFD5E326286019798BDE4E51025ED8282
|
||||
:20F94000BDEF7E1F208300F5D797DC2BBDF555BDF1358E00F4D69826255FBDFA84BDFFB620
|
||||
:20F96000250B80303402860A3DEBE020EDC001C90181412605BDF0E520BB814C260B8D312B
|
||||
:20F980000F98BDF0E520C33262810D260D8D22BDF0E58E00F49F837EE48E814527F1815171
|
||||
:20F9A0002606BDF0E57EE4658D0220AD812026108CC6F9A6842708BDE01430015A26F4395C
|
||||
:20F9C000814426486D8427F78D045A26F7390A97311F3121A621A7A426F839814927138173
|
||||
:20F9E00058270D8148265C6F841F108300F5D7978DBFBDFA84810D278E811B2725810826C7
|
||||
:20FA0000228C00F427EC8D458DC420E6814326CB6D84270EBDFA84250220F5A7808D375A71
|
||||
:20FA200026EE39D697C1F9260220C734106D8026FCE682E701ACE426F83262A7808D170C87
|
||||
:20FA40009720AF810826128D045A26FB398C00F427D0301F86087EE014814B270580532782
|
||||
:20FA6000013934028D1E3402A68427166D6126068DE430012003BDF9CEA684A1E426E95A73
|
||||
:20FA800026E635A0BDE000817F24F9815F2602861B810D270E811B270A8108270681202516
|
||||
:20FAA000E31A0139864F978C398600D6791D7EECBBBDEA36DC1F3406BDEB1EBDEA333506DA
|
||||
:20FAC0001E109C1F26517EECBB9D7CBDEA36BDEB1E3410EC02109321230493272312E6846F
|
||||
:20FAE000BDED343410AE62BDEE0A3550AF423440BDEEFF34045D271FC6FF81292703BDEE6C
|
||||
:20FB0000FF3404BDEA33C6AEBDEA3B8D2E1F13AE62A684A06124037EEC114CA1E42402A716
|
||||
:20FB2000E4A6611E89AE025A3A4D270DA1E42302A6E41F891E31BDE1F13596BDE9227EEEB5
|
||||
:20FB40001BBDEA36BDEED23404BDEA39BDE922BDEA3396062605BDEED52003BDEE6B3404BE
|
||||
:20FB6000E661BDECD635062705A7805A26FB7EEE62BDEA36BDE922C601340496062610BDB5
|
||||
:20FB8000EED5E7E42791BDEA39BDE922BDE9129E523410BDEA39BDFB3B3414BDEA33AE6385
|
||||
:20FBA000BDEE203404E1662523A661271CE6665A3A3184EE62E661A6E4A0664CA161250C2E
|
||||
:20FBC000A680A1C0260C5A26F7E666215F32677EECBA6C66302120D98126265C32620F5232
|
||||
:20FBE0000F538E00529D7C814F2712814827239D82200C81381022EE4AC6038D2A9D7C2562
|
||||
:20FC0000F20F500F510F060F630F54C6A0D74F7EF1A59D7C250BBDEB6925E6814724E280F6
|
||||
:20FC200007C6048D0220EB680169841025F5EC5A26F58030AB01A7013935400F069E839DF3
|
||||
:20FC40007C8126279981B0275E81FF26089D7C8183102700AB9F836EC49E68300126D9C60E
|
||||
:20FC6000167EE446AE9F00838CFF83102700748D238DE6BDEA36C680D708BDEB1E8D25BDE3
|
||||
:20FC8000EA33C6AEBDEA3B9E4BDC83ED84DC39ED027EE6D0C6B0BDEA3BC680D7088A80BDBC
|
||||
:20FCA000EB239F4B7EE90F8DEB3410BDEA2E8DF43540C632AE4227A9109E83EEC4DF83A6AC
|
||||
:20FCC000043402EC84EE023476BDF3BEBDE90D3576ED84EF023502A7049D821026ED64101A
|
||||
:20FCE0009F83399D7C8D0934108D2D3540AFC4395F9D7C240680301F899D7C9E8D583A39D2
|
||||
:20FD00008DEEAE843410BDEA2E8E004F96062707BDEE1E9E52960639C6AEBDEA3B7EEF0421
|
||||
:20FD20001027EEEDBDE757BDE4E59F939D82271081A7263B9D7C27048D24200486FF972BBF
|
||||
:20FD4000DE938CEEC4ECC42706EC42932B23F49E938D15BDE5059E93BDE4D57EE465BDE788
|
||||
:20FD6000577EE1FAA6C0A78011931B26F79F1B39BDFC599D7C8122260BBDEA10C63BBDEA19
|
||||
:20FD80003BBDF128327EBDE80C3262BDEB1E9F3BBDE9128E00F34FBDECE37EE794BDE757B5
|
||||
:20FDA0009E2B399E919F2B7EE4E5BDE50ACC000ADD95DD8F5FDD919D8224068DE09F959D4D
|
||||
:20FDC00082271BBDEA3924068DD39F919D82270EBDEA3924068DC69F8F2749BDE1FA8DC38E
|
||||
:20FDE0009F939E958DBF9C93253A8D1CBDFE7EBDE4D38DAF9F938D3A8D0F8D36BDFF19BD48
|
||||
:20FE0000E50ABDE4D37EE465864F97989E93DC958D150D982602ED02AE848D0BD38F25045F
|
||||
:20FE200081FA25EE7EEC113406EC84350626023262399E19301F30018DED30033001A684A0
|
||||
:20FE400027F49F0F4A270C4A272A4A26EF8603A78020E7EC016A0227014FE6036A0427015C
|
||||
:20FE60005FED01DD2BBDE4E59E0F25E1DC476C80ED8420C66F84AE01AE029F4720EA9E1995
|
||||
:20FE800020049E8330018D9F300230019F839D7C4D27EF2AF99E8381FF27EF81A227128108
|
||||
:20FEA00084270E818126E79D7C81A0270481A126DB9D7C25049D8220D79E833410BDE7573A
|
||||
:20FEC0009E83A682BDFFB625F930011F10E061C0052720250A3384503085BDFD6820149FBC
|
||||
:20FEE000479E1B9F435030859F419F1BBDE41E9E459F8335108601A784A702A704D62B264B
|
||||
:20FF000004C6016C02E701D62C2604C6016C04E7039D82812C279A209C9E19301F3001EC07
|
||||
:20FF200002DD68BDFE2730033001A68427EF4A271B800226F334108EFF76BDF125AEE4EC35
|
||||
:20FF400001BDF555BDF54EBDF0E535103410EC01DD52BDFC01BDF5623540C6053001A684F9
|
||||
:20FF600027055AA7C020F530C45D27BE31C433C5BDFD6830A420B3554C2000BDEF078E0190
|
||||
:20FF8000F0C60434045F860408530952594A26F85D260AA6E44A27058C01F0270CCB30C116
|
||||
:20FFA000392302CB07E7806F8435045A26D532628E01EF7EECDF81302504803A80C639813A
|
||||
:20FFC000891027FDAB7EEA43FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26
|
||||
:20FFE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000009B009E00AA00A700A100A4E0481A
|
||||
4818
ROMS/6809/basic.lst
Normal file
4818
ROMS/6809/basic.lst
Normal file
File diff suppressed because it is too large
Load Diff
257
ROMS/6809/basic_remap.hex
Normal file
257
ROMS/6809/basic_remap.hex
Normal file
@@ -0,0 +1,257 @@
|
||||
:200000008D0327FC39B6FFD085012706B6FFD1847F394F398D263402810D270DB7FFD10C34
|
||||
:200020007996799178251220100F798D0F860DB7FFD18D08860AB7FFD13502393402B6FF83
|
||||
:20004000D0850227F935023910CE01EE860CBDE0148EE157A6802705BDE01420F7B6FFD044
|
||||
:20006000850127F9B6FFD1847F8143271481572706966E8155260A9E6FA684811226026EE3
|
||||
:20008000848E02186F83300126FA8E02176F809F19A60243A702A10226063001630120F19A
|
||||
:2000A0009F719F279F233089FF389F211F148EE0F5CE0076C612BDE1F1CE00A7C604BDE1DA
|
||||
:2000C000F1863997F0BDE4FD8E00B59F8DCEEC11C60AEF815A26FB8695B7FFD08EE12ABD5F
|
||||
:2000E000F1258EE0ED9F6F8655976E200412BDE5177EE4653B1040FF00EC110C8426020CA0
|
||||
:2001000083B600007EE2027EE2017EE0F47EEC11804FC7525932E260E36D1DE300E211001E
|
||||
:2001200000000000000000000000003638303920455854454E4445442042415349430D28C0
|
||||
:2001400043292031393832204259204D4943524F534F46540D0D00434F4C44204F5220573A
|
||||
:2001600041524D2053544152542028432F57293F200D0034169E76DC789F6AD76C976D3514
|
||||
:20018000960F738E00F4C601BDE000810826075A27EF301F20348115260A5A27E48608BD22
|
||||
:2001A000E01420F681031A012705810D260D4F3401BDF0E56F848E00F33581812025C98159
|
||||
:2001C0007B24C5C1FA24C1A7805CBDE01420B92705BDEF049F7A6E9F007A7EE5E69673261A
|
||||
:2001E00003BDE0050F73975310260C6A97567EEE62A680A7C05A26F939399D8227FB7EEA66
|
||||
:20020000433B813A240A812026020E7C803080D039F403F477F41C00ADF6A8F6FDEF17EE47
|
||||
:2002200048ECC4EEDDEE67EE53F7ADF775F77EF8EFF921F843FAA9F87DFF7BEE72EE8FEE47
|
||||
:2002400096E1DDECB5FAB1FB71FB4179F14E79F1457BF2557BF31A7FF88650EA9C46EA9B07
|
||||
:20026000464FD247CF5245CDA7454C53C549C6444154C15052494ED44FCE494E5055D44525
|
||||
:200280004EC44E4558D44449CD524541C45255CE524553544F52C55245545552CE53544F28
|
||||
:2002A000D0504F4BC5434F4ED44C4953D4434C4541D24E45D7455845C354524FCE54524FA1
|
||||
:2002C00046C64445CC4445C64C494EC552454E55CD454449D4544142A854CF5355C2544871
|
||||
:2002E00045CE4E4FD4535445D04F46C6ABADAAAFDE414EC44FD2BEBDBC46CE5553494EC70F
|
||||
:200300005347CE494ED44142D35553D2524EC45349CE504545CB4C45CE535452A45641CC68
|
||||
:200320004153C3434852A44154CE434FD35441CE4558D04649D84C4FC7504FD35351D24854
|
||||
:200340004558A44C454654A45249474854A44D4944A4494E4B4559A44D45CD5641525054DD
|
||||
:20036000D2494E5354D2535452494E47A4E52BE676E6D3E6D3E6D3E704E6D0F0ADE732E74B
|
||||
:20038000DFE5FDE8C4EB15E819E66BE5DFE6B0E601EF1EE626EF25E637E4FBE1CFFAA4FAEC
|
||||
:2003A000A5FD20FC64FFBFFDAAF9304E46534E52474F4446434F564F4D554C425344442F75
|
||||
:2003C000304944544D4F534C535354434E4644414F444E494F464D4E4F4945445355464EC4
|
||||
:2003E00045204552524F520020494E20000D4F4B0D000D425245414B003064C6129F0FA651
|
||||
:200400008480802615AE019F119E3B27099C1127099E0F3A20E59E119F3B9E0F4D398D178C
|
||||
:20042000DE4133419E433001A68236029C4726F8DF45394F58D31FC3003A250810DF171080
|
||||
:20044000931725EEC60CBDE517BDF0E9BDF1388EE3AB3A8D318D2F8EE3E0BDF12596684C9A
|
||||
:200460002703BDF54EBDF0E98EE3EDBDF125BDE181CEFFFFDF6825F69F839D7C27F0250BBC
|
||||
:20048000BDEFDA7EE5B4A6807EF13ABDE7579E2B9FF1BDEFDAD7038D4C2512DC47A384D30F
|
||||
:2004A0001BDD1BEE843702A7809C1B26F896F3271CDC1BDD43DB038900DD41BDE41ECE008D
|
||||
:2004C000EF3702A7809C4526F89E419F1B8D368D02209B9E19EC8427213304A6C026FCEF0B
|
||||
:2004E00084AE8420F0DC2B9E19EE84270910A3022306AE8420F31A019F473926FB9E196F32
|
||||
:20050000806F809F1B9E19BDE6AB9E279F23BDE5DF9E1B9F1D9F1F8E00C99F0BAEE410DEF1
|
||||
:20052000216FE20F2D0F2E0F086E8486809708BDE779BDE3F9326226049E0F3285C609BDBE
|
||||
:20054000E433BDE6D8DC683416C6A0BDEA3BBDE90FBDE90DD654CA7FD450D750108EE56327
|
||||
:200560007EE9B68EF24EBDF39D9D8281A426059D7CBDE90DBDF3F6BDE9B2DC3B34068680B3
|
||||
:2005800034021CAF8D609E839F2FA6802707813A27227EEA43A68197002772EC80DD689FD4
|
||||
:2005A00083968C270F865BBDE0149668BDF555865DBDE0149D7C8D0220C827294D102A01CD
|
||||
:2005C000B881FF270F819E22C9BEE118481F893A9D7C6E949D7C8197102714ED7EEA439EF5
|
||||
:2005E00019301F9F3339BDE005270A8103271281132703977339BDE00527FB20EE9D8220E6
|
||||
:20060000021A0126319E839F2F060032629E688CFFFF27069F299E2F9F2D8EE3F10D001040
|
||||
:200620002AFE427EE45A260EC6209E2D1027FE169F839E299F6839272CBDEBAD34069E2794
|
||||
:200640009D82270CBDEA39BDEF04301F9C7122181F10A3E125121F0383003A250B931B2556
|
||||
:2006600007DF219F277EE50A7EE4449D821027FE94BDE50A20191F899D7CC1A02716C1A10C
|
||||
:200680002645C603BDE433DE839E6886A134528D037EE5829D82BDE7578D403001DC2B109A
|
||||
:2006A000936822029E19BDE4E92517301F9F833926FD86FF973BBDE3F91F148121270BC614
|
||||
:2006C000048CC60E7EE4467EEA4335529F68DF838D068C8D069F8339C63A865FD7015F9EAC
|
||||
:2006E000831F98D6019701A68427EC3404A1E027E63001812227EA4C26023001818626E7B0
|
||||
:200700000C0420E3BDE90D9D8281812705C6A2BDEA3B964F26130F048DB64D27BA9D7C8140
|
||||
:200720008426F50A042AF19D7C9D821025FF657EE5BABDEED2C681BDEA3B340281A12704DA
|
||||
:2007400081A026830A53260535047EE6789D7C8D06812C27EF35849E749F2B246180309762
|
||||
:2007600001DC2B811822DB58495849D32B5849DB018900DD2B9D7C20E2BDEB1E9F3BC6AE5E
|
||||
:20078000BDEA3B96063402BDE922350246BDE91410270C289E52DC2110A30224119C1B2588
|
||||
:2007A0000DE684BDECD49E4DBDEE0A8E00569F4DBDEE3CDE4D9E3B3726A78410AF02393F29
|
||||
:2007C0005245444F0D007EE446960927079E319F687EEA438EE7BEBDF1259E2F9F8339C6F8
|
||||
:2007E000169E68300127DF8D01398122260BBDEA10C63BBDEA3BBDF1288E00F36F848D0694
|
||||
:20080000C62CE7842016BDF138BDF135BDE181240532647EE609C62E399E33864F97099F1F
|
||||
:2008200035BDEB1E9F3B9E839F2B9E35A684260996092651BDF1388DCD9F839D7CD6062738
|
||||
:20084000239E8397018122270E301F4F9701BDE173863A9701862C9702BDECE5BDEA15BDF3
|
||||
:20086000E7942006BDF49BBDF3BC9D822706812C1026FF529E839F359E2B9F839D82272158
|
||||
:20088000BDEA39209C9F83BDE6D830014D260AC606EE812741EC81DD31A684818626E620F6
|
||||
:2008A000989E35D6091026FD3AA68427068EE8B37EF125393F45585452412049474E4F52D2
|
||||
:2008C00045440D0026049E742003BDEB1E9F3BBDE3F92704C60020471F143003BDF39DA639
|
||||
:2008E0006897549E3BBDF14BBDF3BC3069BDF41FE068270CAE6E9F68AEE8109F837EE582B3
|
||||
:2009000032E8129D82812C26F49D7C8DBD8D131CFE7D1A010D0625032A998C2B96C6187E69
|
||||
:20092000E4468D6E4F8C34043402C601BDE433BDE9EF0F3F9D8280AD25138103240F81010E
|
||||
:2009400049983F913F2564973F9D7C20E9D63F26331024006B8B0724679906102704778922
|
||||
:20096000FF340248ABE08EE24B30863502A18424558D9C34028D299E3D3502261D4D10273B
|
||||
:20098000006A204B0806598D098EE997D73F0F0620D99E837EE6AB64EABBA184243120D3AD
|
||||
:2009A000EC0134068D08D63F16FF7B7EEA43D654A68435203404D64F9E50DE5234546EA46D
|
||||
:2009C0009E74A6E0272681642703BDE90F9F3D3504815A2719817D271554D70A3552975C55
|
||||
:2009E0009F5DDF5F3504D761D854D762D64F39BDFC390F069D7C24037EF49BBDEB692450B0
|
||||
:200A0000812E27F481A7274081A627E38122260A9E83BDECDF9E649F833981A3260D865A3C
|
||||
:200A2000BDE926BDEBB443537EECBB4C272E8D06BDE922C6298CC6288CC62CE19F008326C7
|
||||
:200A4000020E7CC6027EE446867DBDE9267EF672BDEB1E9F52960626957EF39D9D7C1F8908
|
||||
:200A6000589D7CC13823037EEA433404C12A251EC130241C8DC0A6E4BDE9228DBCBDE91204
|
||||
:200A80003502DE523442BDEED2350234068E8D9E3504BEE11D3AAD947EE90F864F9703BDC0
|
||||
:200AA000EBB4DD01BDF3D3BDEBB40D0326069401D40220049A01DA027EECBBBDE914261083
|
||||
:200AC00096618A7F945D975D8E005CBDF41F20360F060A3FBDEE1ED7569F589E5FBDEE200E
|
||||
:200AE00096563404A0E0270786012403D656409754DE585C5A2604D654200BA680A1C02706
|
||||
:200B0000F3C6FF240150CB0159D40A2702C6FF7EF405BDEA39C6018D089D8226F5395F9D95
|
||||
:200B200082D70597379D828D401025FF165FD7069D7C25048D33250A1F899D7C25FC8D294E
|
||||
:200B400024F8812426060306CB809D7CD7389A088028102700750F089E1BDC379C1D271261
|
||||
:200B600010A381273E300520F381412504805B80A5398E0074EEE41183EA532728DC1FDDA4
|
||||
:200B800043C30007DD419E1D9F47BDE41E9E419F1F9E459F1D9E47DC37ED814F5FED84ED1C
|
||||
:200BA00002A7049F393990800000009D7CBDE90D96542B5DBDE90F964F819025088EEBA632
|
||||
:200BC000BDF41F264CBDF451DC5239DC053406125F9E3734148DD435349F37DE5234605C01
|
||||
:200BE0009D82812C27EBD703BDEA333506DD059E1D9C1F2721DC3710A3842706EC02308B68
|
||||
:200C000020EFC6129605260BD603E1042759C6108CC6087EE446CC0005DD64DC37ED84D69F
|
||||
:200C200003E704BDE4339F41C60B4F0D0527053506C30001ED058D5DDD6430020A0326E84B
|
||||
:200C40009F0FD30F1025F7FC1F01BDE437830035DD1F4F301FA7059C0F26F89E41961F93F6
|
||||
:200C600041ED029605262DE604D7034F5FDD643506DD5210A305243ADE6427048D17D352ED
|
||||
:200C800030020A0326E7EDE358495849E3E1308B30059F393986109745EC05DD174F5F58D4
|
||||
:200CA00049250F086509642404D31725050A4526EE397EEC0E1F40931F214F0F06DD50C604
|
||||
:200CC000907EF40BBDE90FCE01F0BDF56532628E01EF200B9F4D8D5C9F58D75639301F8638
|
||||
:200CE000229701970230019F629F58C6FF5CA680270C91012704910226F381222702301F7A
|
||||
:200D00009F64D756DE62118301F022078DC69E62BDEE0C9E0B8C00F12605C61E7EE4469638
|
||||
:200D200056A700DC58ED0286FF97069F0D9F5230059F0B390F074F3406DC23A3E0109321D7
|
||||
:200D4000250ADD239E2330019F253584C61A030727CA8D04350420DE9E279F234F5FDD4BF5
|
||||
:200D60009E219F478E00C99C0B27048D3220F89E1B9C1D27048D2220F89F419E419C1F27C9
|
||||
:200D800035EC02D341DD41A6012AF0E60458CB053A9C4127E88D0820F8A60130022A14E65B
|
||||
:200DA000842710EC02109323220910934723049F4BDD473005399E4B27FB4FE6845AD347D4
|
||||
:200DC000DD439E239F41BDE4209E4BDC45ED029E45301F7EED5ADC523406BDE9EFBDE912EC
|
||||
:200DE00035109F62E6849E52EB842405C61C7EE446BDECD49E62E6848D109E4D8D228D0C7A
|
||||
:200E00009E628D1CBDED137EE934AE02DE255C2004A680A7C05A26F9DF2539BDE9129E52B3
|
||||
:200E2000E6848D182613AE07301F9C2326083404D323DD233504300139AE02399C0D2607E9
|
||||
:200E40009F0B301B9F0D4F398D037EECBA8DCC0F065D39BDEED5C601BDED349653BDECD822
|
||||
:200E6000A78432627EED138D0220DF8DE0275EE684398D484FE1842303E6844F3406BDECC7
|
||||
:200E8000D69E4D8D9B35043A3504BDEE0C20D58D2BA0844020DFC6FFD7539D828129270512
|
||||
:200EA000BDEA398D2D8D1527245F4AA18424CD1F89E08450D15323C4D65320C0BDEA33EEB4
|
||||
:200EC000E4AE659F4DA664E66432671F357EEC119D7CBDE90DBDEBB04D26F20E82BDEE4D62
|
||||
:200EE000102702DEDE839F833AA68434526F849D82BDF49B3552A784DF83398D079F2BBDA8
|
||||
:200F0000EA3920CEBDE90D96542BC2964F819022BCBDF4519E52398DEEE6847EECBA8DDBC6
|
||||
:200F20009E2BE784393401BDE757BDE4E59F66350127129D82271381A726099D7C2706BD67
|
||||
:200F4000E757270639CEFFFFDF2B32629E66BDF0E9BDE1DAEC8426037EE4659F66EC02100E
|
||||
:200F6000932B22F4BDF555BDF1359E668D10AE9F0066CE00F4A6C027D5BDF13A20F7300408
|
||||
:200F8000108E00F4A68027512B15813A260DE684C18427F0C18327EC8C86218D3020E5CE13
|
||||
:200FA000E10B81FF2604A6803345847F334A6DC427E7A0C42AF6ABC4EE414A2B066DC02A4A
|
||||
:200FC000FC20F7A6C48D066DC02AF820B7108C01ED2406847FA7A06FA4399E83CE00F30FA0
|
||||
:200FE000430F44A68027210D43270FBDEB69241881302504813923100F438120270A974256
|
||||
:20100000812227380D442719A7C02706813A27CF20D16FC06FC01F308300F18E00F29F8344
|
||||
:2010200039813F2604868720DF81272613CC3A83EDC10F42A68027D0914227CCA7C020F4BA
|
||||
:2010400081302504813C25C0301F34500F41CEE10B0F42334AA6C4273110AE41AEE4E6A090
|
||||
:20106000E08027FAC180263832623540DA4296412606C1842606863AEDC12094E7C0C186A7
|
||||
:2010800026020C44C18227AA2086CEE110034126C03550A680A7C0BDEB6925EC034320E8B3
|
||||
:2010A0000C424A27AE313FE6A02AFC20AF27368D0139273E819F2753812C2737813B276067
|
||||
:2010C000BDE922960634022606BDF562BDECDD8D573504BDE1735D26089D82812C27148D63
|
||||
:2010E000549D8226CF860D2051BDE17327F7966C26F339BDE173270AD66CD16B25068DE5A4
|
||||
:20110000201ED66CD06A24FC502010BDEED081291026F92FBDE173D06C23058D185A26FB5D
|
||||
:201120009D7C7EF0B2BDECDFBDEE1E5C5A27C3A6808D0720F786208C863F7EE0148EF6497E
|
||||
:201140002009BDF2B8035403622003BDF2B85D102702808E005C1F895D276CD04F2769254D
|
||||
:201160000A974F966197548E004F50C1F82F594F6401BDF243D6622A0B630163026303638A
|
||||
:201180000443890097639653996097539652995F97529651995E97519650995D97505D2AE0
|
||||
:2011A0004425028D5D5F9650262E965197509652975196539752966397530F63CB08C128C0
|
||||
:2011C0002DE44F974F9754398D6D5F20A85C086309530952095109502AF3964F3404A0E099
|
||||
:2011E000974F23DE8C2508086386009763200C0C4F2728065006510652065324048D0D2747
|
||||
:20120000EE39035403500351035203539E5230019F5226069E5030019F5039C60A7EE44601
|
||||
:201220008E0012A6049763A603A704A602A703A601A702965BA701CB082FE89663C0082709
|
||||
:201240000C6701660266036604465C26F43981000000008D6327608D78860097139714977B
|
||||
:20126000159716D6538D22D663D78BD6528D1AD663D78AD6518D12D663D789D6508D0CD6DC
|
||||
:2012800063D788BDF3947EF1A52795439613562726241696169B6097169615995F97159676
|
||||
:2012A00014995E97149613995D46971306140615061606634F20D539EC0197618A80DD5D89
|
||||
:2012C000D661D854D762EC03DD5FA684975CD64F394D27169B4F464928108B80974F270C6D
|
||||
:2012E000966297543996544320023262102AFED27EF21BBDF3E8270D8B0225F40F62BDF1C9
|
||||
:20130000560C4F27EB398420000000BDF3E88EF3065FD762BDF39D8C8D9E2773004F8DB14B
|
||||
:201320000C4F27CC8E0013C604D703C6019650915D26139651915E260D9652915F260796A2
|
||||
:201340005391602601431FA859240AE7800A032B34272EC6011F8A250E0860095F095E0986
|
||||
:201360005D25E32BC820DF966090539760965F9252975F965E9251975E965D9250975D20C2
|
||||
:20138000D8C64020D0565656D7638D087EF1A5C6147EE4469E139F509E159F52393402EC79
|
||||
:2013A0000197548A80DD500F63E684AE039F52D74F35828E004520068E00408C9E3B964F9E
|
||||
:2013C000A78496548A7F9450A7019651A702DE52EF0339966197549E5C9F4F0F63965E97B1
|
||||
:2013E0005196549E5F9F5239DC4FDD5C9E519F5E9E539F604D39D64F2708D65459C6FF2504
|
||||
:201400000150398DF1D7500F51C68896508080D74FDC74DD52976397547EF1A10F5439E6ED
|
||||
:201420008427D3E601D8542BD1D64FE184261DE601CA7FD450E1012613D651E102260DD6D0
|
||||
:2014400052E1032607D653E00426013956D85420ABD64F273DC0A096542A05035BBDF2045C
|
||||
:201460008E004FC1F82E06BDF2370F5B390F5B96544906507EF243D64FC1A0241D8DD2D776
|
||||
:20148000639654D754808086A0974F965397017EF1A1D750D751D752D753399E749F549FB8
|
||||
:2014A0004F9F519F529F479F452564BDFBD8812D260403552004812B26049D7C2551812EB1
|
||||
:2014C0002728814526289D7C256481A7270E812D270A81A62708812B2704200603489D7C14
|
||||
:2014E000254C0D48270800472004034626CC96479045974727122A09BDF30B0C4726F92008
|
||||
:2015000007BDF2F30A4726F996552A8E7EF672D645D046D7453402BDF2F33504C0308D024C
|
||||
:201520002098BDF3B8BDF4058E00407EF14BD6475858DB475880303404ABE09747209F9B5B
|
||||
:201540003EBC1FFD9E6E6B27FD9E6E6B28008EE3E78D0CDC68DD50C69043BDF40F8D037E72
|
||||
:20156000F125CE01F18620D6542A02862DA7C0DF6497548630D64F102700C64FC1802208BF
|
||||
:201580008EF549BDF25386F797458EF544BDF4292E0F8EF53FBDF4292E0EBDF2F30A45205D
|
||||
:2015A000F1BDF30B0C4520E2BDF13DBDF451C60196458B0A2B09810B24054A1F8986024A5B
|
||||
:2015C0004A9747D7452E0DDE64862EA7C05D27048630A7C08EF64EC6809653AB039753965B
|
||||
:2015E00052A90297529651A90197519650A98497505C565928E32403C00B50CB2F30041FED
|
||||
:2016000098847FA7C00A452604862EA7C053C4808CF67226C4A6C2813027FA812E2602337B
|
||||
:201620005F862BD647271C2A03862D50A7428645A741862F4CC00A24FBCB3AED436F45207B
|
||||
:2016400004A7C46F418E01F1398000000000FA0A1F0000989680FFF0BDC0000186A0FFFFD0
|
||||
:20166000D8F0000003E8FFFFFF9C0000000AFFFFFFFF964F27020354399F64BDF3B88D057D
|
||||
:201680008D088E00407EF2539F64BDF3B39E64E680D7559F648DEE9E6430059F64BDF14B79
|
||||
:2016A0008E00450A5526EE39BDF3F62B1F27158D10BDF3B88D0E8E00408DCA8EF24EBDF13E
|
||||
:2016C0004B7EF4779EB19F509EB39F52BEF6F99F5DBEF6FB9F5FBDF259DC8AC3658BDDB34F
|
||||
:2016E000DD52DC88C9B08905DDB1DD500F548680974F961597637EF1A540E64DABBDF3E8D7
|
||||
:201700008EF742D661BDF312BDF3E88DB40F62965CD64FBDF1458EF747BDF14296543402D9
|
||||
:201720002A09BDF13D96542B05030ABDF6728EF747BDF14B35024D2A03BDF6728EF74C7E55
|
||||
:20174000F67983490FDAA27F000000000584E61A2D1B862807FBF88799688901872335DFFB
|
||||
:20176000E186A55DE72883490FDAA2A154468F138F524389CD8EF7A8BDF14B7EF6FDBDF3FC
|
||||
:20178000B80F0A8DF68E004ABDF3BE8E0040BDF39D0F54960A8D0C0D4F1027FA7E8E004A15
|
||||
:2017A0007EF31834027EF72B81490FDAA2965434022A028D24964F3402818125058EF24E63
|
||||
:2017C0008DDE8EF7DDBDF6793502818125068EF7A8BDF14235024D2A037EF672390B76B38B
|
||||
:2017E00083BDD3791EF4A6F57B83FCB0107C0C1F67CA7CDE53CBC17D1464704C7DB7EA51C5
|
||||
:201800007A7D6330887E7E9244993A7E4CCC91C77FAAAAAA138100000000037F5E56CB7998
|
||||
:2018200080139B0B6480763893168238AA3B20803504F334813504F3348080000000803103
|
||||
:201840007217F8BDF3F6102FF3C78EF82F964F808034028680974FBDF14B8EF834BDF31831
|
||||
:201860008EF24EBDF1428EF81ABDF6798EF839BDF14B3504BDF5228EF83E7EF253BDF3E8FA
|
||||
:201880008EF649BDF39D27674D26037EF1C38E004ABDF3BE5F96612A10BDF4778E004A968C
|
||||
:2018A00061BDF429260343D601BDF3D53404BDF8438E004ABDF2538D363502461025FDB2F7
|
||||
:2018C000398138AA3B29077134583E5674167EB31B772FEEE3857A1D841C2A7C6359580AA3
|
||||
:2018E0007E75FDE7C6803172181081000000008EF8C1BDF253BDF3B8964F818825037EF248
|
||||
:20190000E5BDF47796018B8127F44A34028E0040BDF1428EF8C6BDF6880F623502BDF2D10F
|
||||
:2019200039BDF3F62B037EF47703548DF97EF672BDFD5E326286019798BDE4E51025ED8262
|
||||
:20194000BDEF7E1F208300F5D797DC2BBDF555BDF1358E00F4D69826255FBDFA84BDFFB600
|
||||
:20196000250B80303402860A3DEBE020EDC001C90181412605BDF0E520BB814C260B8D310B
|
||||
:201980000F98BDF0E520C33262810D260D8D22BDF0E58E00F49F837EE48E814527F1815151
|
||||
:2019A0002606BDF0E57EE4658D0220AD812026108CC6F9A6842708BDE01430015A26F4393C
|
||||
:2019C000814426486D8427F78D045A26F7390A97311F3121A621A7A426F839814927138153
|
||||
:2019E00058270D8148265C6F841F108300F5D7978DBFBDFA84810D278E811B2725810826A7
|
||||
:201A0000228C00F427EC8D458DC420E6814326CB6D84270EBDFA84250220F5A7808D375A51
|
||||
:201A200026EE39D697C1F9260220C734106D8026FCE682E701ACE426F83262A7808D170C67
|
||||
:201A40009720AF810826128D045A26FB398C00F427D0301F86087EE014814B270580532762
|
||||
:201A6000013934028D1E3402A68427166D6126068DE430012003BDF9CEA684A1E426E95A53
|
||||
:201A800026E635A0BDE000817F24F9815F2602861B810D270E811B270A81082706812025F6
|
||||
:201AA000E31A0139864F978C398600D6791D7EECBBBDEA36DC1F3406BDEB1EBDEA333506BA
|
||||
:201AC0001E109C1F26517EECBB9D7CBDEA36BDEB1E3410EC02109321230493272312E6844F
|
||||
:201AE000BDED343410AE62BDEE0A3550AF423440BDEEFF34045D271FC6FF81292703BDEE4C
|
||||
:201B0000FF3404BDEA33C6AEBDEA3B8D2E1F13AE62A684A06124037EEC114CA1E42402A7F6
|
||||
:201B2000E4A6611E89AE025A3A4D270DA1E42302A6E41F891E31BDE1F13596BDE9227EEE95
|
||||
:201B40001BBDEA36BDEED23404BDEA39BDE922BDEA3396062605BDEED52003BDEE6B34049E
|
||||
:201B6000E661BDECD635062705A7805A26FB7EEE62BDEA36BDE922C601340496062610BD95
|
||||
:201B8000EED5E7E42791BDEA39BDE922BDE9129E523410BDEA39BDFB3B3414BDEA33AE6365
|
||||
:201BA000BDEE203404E1662523A661271CE6665A3A3184EE62E661A6E4A0664CA161250C0E
|
||||
:201BC000A680A1C0260C5A26F7E666215F32677EECBA6C66302120D98126265C32620F5212
|
||||
:201BE0000F538E00529D7C814F2712814827239D82200C81381022EE4AC6038D2A9D7C2542
|
||||
:201C0000F20F500F510F060F630F54C6A0D74F7EF1A59D7C250BBDEB6925E6814724E280D6
|
||||
:201C200007C6048D0220EB680169841025F5EC5A26F58030AB01A7013935400F069E839DD3
|
||||
:201C40007C8126279981B0275E81FF26089D7C8183102700AB9F836EC49E68300126D9C6EE
|
||||
:201C6000167EE446AE9F00838CFF83102700748D238DE6BDEA36C680D708BDEB1E8D25BDC3
|
||||
:201C8000EA33C6AEBDEA3B9E4BDC83ED84DC39ED027EE6D0C6B0BDEA3BC680D7088A80BD9C
|
||||
:201CA000EB239F4B7EE90F8DEB3410BDEA2E8DF43540C632AE4227A9109E83EEC4DF83A68C
|
||||
:201CC000043402EC84EE023476BDF3BEBDE90D3576ED84EF023502A7049D821026ED6410FA
|
||||
:201CE0009F83399D7C8D0934108D2D3540AFC4395F9D7C240680301F899D7C9E8D583A39B2
|
||||
:201D00008DEEAE843410BDEA2E8E004F96062707BDEE1E9E52960639C6AEBDEA3B7EEF0401
|
||||
:201D20001027EEEDBDE757BDE4E59F939D82271081A7263B9D7C27048D24200486FF972B9F
|
||||
:201D4000DE938CEEC4ECC42706EC42932B23F49E938D15BDE5059E93BDE4D57EE465BDE768
|
||||
:201D6000577EE1FAA6C0A78011931B26F79F1B39BDFC599D7C8122260BBDEA10C63BBDEAF9
|
||||
:201D80003BBDF128327EBDE80C3262BDEB1E9F3BBDE9128E00F34FBDECE37EE794BDE75795
|
||||
:201DA0009E2B399E919F2B7EE4E5BDE50ACC000ADD95DD8F5FDD919D8224068DE09F959D2D
|
||||
:201DC00082271BBDEA3924068DD39F919D82270EBDEA3924068DC69F8F2749BDE1FA8DC36E
|
||||
:201DE0009F939E958DBF9C93253A8D1CBDFE7EBDE4D38DAF9F938D3A8D0F8D36BDFF19BD28
|
||||
:201E0000E50ABDE4D37EE465864F97989E93DC958D150D982602ED02AE848D0BD38F25043F
|
||||
:201E200081FA25EE7EEC113406EC84350626023262399E19301F30018DED30033001A68480
|
||||
:201E400027F49F0F4A270C4A272A4A26EF8603A78020E7EC016A0227014FE6036A0427013C
|
||||
:201E60005FED01DD2BBDE4E59E0F25E1DC476C80ED8420C66F84AE01AE029F4720EA9E1975
|
||||
:201E800020049E8330018D9F300230019F839D7C4D27EF2AF99E8381FF27EF81A2271281E8
|
||||
:201EA00084270E818126E79D7C81A0270481A126DB9D7C25049D8220D79E833410BDE7571A
|
||||
:201EC0009E83A682BDFFB625F930011F10E061C0052720250A3384503085BDFD6820149F9C
|
||||
:201EE000479E1B9F435030859F419F1BBDE41E9E459F8335108601A784A702A704D62B262B
|
||||
:201F000004C6016C02E701D62C2604C6016C04E7039D82812C279A209C9E19301F3001ECE7
|
||||
:201F200002DD68BDFE2730033001A68427EF4A271B800226F334108EFF76BDF125AEE4EC15
|
||||
:201F400001BDF555BDF54EBDF0E535103410EC01DD52BDFC01BDF5623540C6053001A684D9
|
||||
:201F600027055AA7C020F530C45D27BE31C433C5BDFD6830A420B3554C2000BDEF078E0170
|
||||
:201F8000F0C60434045F860408530952594A26F85D260AA6E44A27058C01F0270CCB30C1F6
|
||||
:201FA000392302CB07E7806F8435045A26D532628E01EF7EECDF81302504803A80C639811A
|
||||
:201FC000891027FDAB7EEA43FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06
|
||||
:201FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000009B009E00AA00A700A100A4E048FA
|
||||
:00000001FF
|
||||
43
ROMS/6809/hex_addr_remap
Normal file
43
ROMS/6809/hex_addr_remap
Normal file
@@ -0,0 +1,43 @@
|
||||
#!/usr/bin/perl -w
|
||||
#
|
||||
# read .HEX file. Apply offset to each record's address field and
|
||||
# recompute the checksum accordingly.
|
||||
# Application: .HEX file has absolute address. To go into a ROM, needs to
|
||||
# relative address (ie relative to the start of the ROM)
|
||||
#
|
||||
# usage: hex_addr_remap <hex-offset> foo.hex > foo2.hex
|
||||
#
|
||||
# The offset, which should be in hex, is SUBTRACTED from each entry. Eg
|
||||
# ROM assembled at 0xE000 will be
|
||||
# hex_addr_remap e000 foo.hex > foo2.hex
|
||||
|
||||
$offset = hex($ARGV[0]);
|
||||
open INFILE, $ARGV[1] or die "Could not open input file $ARGV[1]";
|
||||
while (my $line = <INFILE>) {
|
||||
$line =~/(\:)([0-9A-F][0-9A-F])([0-9A-F][0-9A-F][0-9A-F][0-9A-F])([0-9A-F][0-9A-F])(\w+)/;
|
||||
my $len=hex($2); # 2 digits
|
||||
my $adr=hex($3); # 4 digits
|
||||
my $typ=hex($4); # 2 digits
|
||||
my $dat=$5; # data and checksum
|
||||
my $char = length $dat;
|
||||
|
||||
# adjust addresss
|
||||
$adr = 0xffff & ($adr - $offset);
|
||||
|
||||
# do len adr typ
|
||||
my $sum = $len + ($adr & 0xff) + (($adr>>8) & 0xff) + $typ;
|
||||
printf ":%02X%04X%02X", $len, $adr, $typ;
|
||||
|
||||
# process the rest upto but excluding the last byte (the old checksum)
|
||||
for (my $i=0; $i<($char-2); $i=$i+2) {
|
||||
my $hex=substr $dat, $i, 2;
|
||||
printf "%02X", hex($hex);
|
||||
$sum = $sum + hex($hex);
|
||||
}
|
||||
|
||||
my $current_csum = hex(substr $dat, $char -2, 2);
|
||||
my $new_csum = (($sum ^ 0xff) + 1) & 0xff;
|
||||
printf "%02X\r\n", $new_csum;
|
||||
}
|
||||
close INFILE;
|
||||
|
||||
54
ROMS/6809/hex_addr_remap.py
Normal file
54
ROMS/6809/hex_addr_remap.py
Normal file
@@ -0,0 +1,54 @@
|
||||
#!/usr/bin/env python3
|
||||
# Direct port of the original Perl script
|
||||
# Usage: python hex_addr_remap.py <hex-offset> foo.hex > foo2.hex
|
||||
import sys
|
||||
import re
|
||||
|
||||
# Check arguments
|
||||
if len(sys.argv) != 3:
|
||||
print("Usage: python hex_addr_remap.py <hex-offset> <input-file>")
|
||||
sys.exit(1)
|
||||
|
||||
offset = int(sys.argv[1], 16) # Convert hex string to integer
|
||||
|
||||
try:
|
||||
with open(sys.argv[2], 'r') as infile:
|
||||
for line in infile:
|
||||
# Match the same pattern as the Perl script
|
||||
match = re.match(r'(\:)([0-9A-F][0-9A-F])([0-9A-F]{4})([0-9A-F][0-9A-F])(\w+)', line.upper())
|
||||
if match:
|
||||
# Extract components exactly as in Perl
|
||||
len_hex = int(match.group(2), 16) # 2 digits
|
||||
adr = int(match.group(3), 16) # 4 digits
|
||||
typ = int(match.group(4), 16) # 2 digits
|
||||
dat = match.group(5) # data and checksum
|
||||
char = len(dat)
|
||||
|
||||
# Adjust address
|
||||
adr = 0xffff & (adr - offset)
|
||||
|
||||
# Calculate sum as in original
|
||||
sum_val = len_hex + (adr & 0xff) + ((adr>>8) & 0xff) + typ
|
||||
|
||||
# Build output string
|
||||
output = f":{len_hex:02X}{adr:04X}{typ:02X}"
|
||||
|
||||
# Process data bytes
|
||||
for i in range(0, char-2, 2):
|
||||
hex_val = dat[i:i+2]
|
||||
output += f"{int(hex_val, 16):02X}"
|
||||
sum_val = sum_val + int(hex_val, 16)
|
||||
|
||||
# Calculate and append new checksum
|
||||
new_csum = ((sum_val ^ 0xff) + 1) & 0xff
|
||||
output += f"{new_csum:02X}"
|
||||
|
||||
# Print with single \r
|
||||
sys.stdout.write(output + "\r")
|
||||
|
||||
# Add EOF record at the end
|
||||
sys.stdout.write(":00000001FF\r")
|
||||
|
||||
except FileNotFoundError:
|
||||
print(f"Could not open input file {sys.argv[2]}")
|
||||
sys.exit(1)
|
||||
10
ROMS/6809/readme.md
Normal file
10
ROMS/6809/readme.md
Normal file
@@ -0,0 +1,10 @@
|
||||
Instructions to build the 6809 basic interpreter
|
||||
|
||||
- must run in dosbox
|
||||
as9 basic.asm -now l s19
|
||||
|
||||
srec_cat basic.s19 -fill 0xFF -within basic.s19 -range-pad 32 -o basic.hex -intel -data-only -address-length=2
|
||||
|
||||
python hex_addr_remap.py E000 basic.hex >basic_remap.hex
|
||||
|
||||
remove the 1st 2 lines from basic_remap.hex
|
||||
BIN
ROMS/6809/srec_cat.exe
Normal file
BIN
ROMS/6809/srec_cat.exe
Normal file
Binary file not shown.
@@ -1,345 +1,343 @@
|
||||
:0430060000000000C6
|
||||
:18000000F3C3A40000000000C332000000000000C31B000000000000BB
|
||||
:18001800C36C003A0030FE002008CD730028FBDB81C9CD7A0028FBDB44
|
||||
:1800300083C9F53A0030FE00200D1801F5CD600028FBF1D381C9F5CDB4
|
||||
:18004800660028FBF1D383C9F5CD66002004F1E600C9F1D383F6FFC916
|
||||
:18006000DB800FCB47C9DB820FCB47C93A0030FE002007DB80E601FE2D
|
||||
:1800780000C9DB82E601FE00C9D7FE0A28FBFE1B20023E03C9FE0D2822
|
||||
:180090000AFE0C2804FE203801CFC93E0DCF3E0ACF3E0DC9312A303E1B
|
||||
:1800A80095D380D3823E00320030218103CD37012181032204302A0490
|
||||
:1800C000307EB7280CCD5000280723220430C3BE00CD7300280F3E0094
|
||||
:1800D800320030CD1B00FE20C2D1001812CD7A0028D43E01320030CD3A
|
||||
:1800F0001B00FE20C2BE003E0CCD3C00CD5000CD3E0121B202CD3701E9
|
||||
:18010800210801E5CD3E013E3ECFCD8100FE2038F9FE3ACAB501CD8DCA
|
||||
:1801200000E65FFE42CAF601FE47CAAF01FE58CA0D023E3FCF18D57EDC
|
||||
:18013800B7C8CF2318F93E0DCF3E0ACFC9CD8100FE03C8FE2038F6C907
|
||||
:18015000CD450147CD45014FCD8F014F7B915F79C9210000CDA801FEED
|
||||
:180168000D200E37C9210000CDA801FE0DC8FE2CC8FE0328EE29292956
|
||||
:1801800029D630FE0A3802D607E60F856F18E178D630FE0A3802D6079A
|
||||
:18019800070707074779D630FE0A3802D60780C9CD8100CD8D00C9CDC7
|
||||
:1801B0006101D8E5C91E00CD500157CD500167CD50016FCD5001FE018D
|
||||
:1801C8002009CD50017BA7281E18157AA7280BCD500177233E2ECF15E7
|
||||
:1801E00018F1CD50017BA7C8217003CD3701C921AB03CD3701C9215E78
|
||||
:1801F80003CD3701CD4501C8E65FFE43CAB603FE57CAB903C9211F021D
|
||||
:18021000CD3701CD4501C8E65FFE59CA4002C90D0A426F6F7420435027
|
||||
:180228002F4D3F000D0A4C6F6164696E672043502F4D2E2E2E0D0A005E
|
||||
:18024000212C02CD370106183E0032063032073032083032093021002F
|
||||
:18025800D0220230CD8A021100022A0230192202303A06303C32063021
|
||||
:1802700010EA3A0030F52AFEFFE93A0830D38C3A0730D38B3A0630D32A
|
||||
:180288008AC9F5C5E5DB89FE8020FACD7A023E00D3890E040680DB8991
|
||||
:1802A000FEE020FADB8877230520F30D20EEE1C1F1C943502F4D204251
|
||||
:1802B8006F6F7420524F4D20322E3020627920472E20536561726C6512
|
||||
:1802D0000D0A0D0A4243206F72204257202D20524F4D204241534943CC
|
||||
:1802E80020436F6C642F5761726D0D0A5820202020202020202D204298
|
||||
:180300006F6F742043502F4D20286C6F61642024443030302D24464687
|
||||
:180318004646290D0A3A6E6E6E6E2E2E2E202D204C6F616420496E744D
|
||||
:18033000656C2D4865782066696C65207265636F72640D0A476E6E6E8B
|
||||
:180348006E202020202D2052756E206C6F63206E6E6E6E0D0A000D0AC9
|
||||
:18036000436F6C64206F72207761726D3F0D0A00436865636B73756DA2
|
||||
:18037800206572726F720D0A000C5072657373205B73706163655D20EF
|
||||
:18039000746F2061637469766174652074686520636F6E736F6C652E5F
|
||||
:1803A8000D0A00436F6D706C6574650D0A00C3BC03C35A04DD21000035
|
||||
:1803C000C3C7036D0CE31321B030F9C30220119406066321B0301A77A4
|
||||
:1803D800231305C2D603F9CD9508CD630E325A3132A93121A904CD0131
|
||||
:1803F00015CDB208CDBB0BB7C21004210D32237CB5CA22047E472F772A
|
||||
:18040800BE70CAFE03C32204CD870CB7C26307EB2B3ED94677BE70C2DD
|
||||
:18042000EB032B110C32CD2B0ADAEB0311CEFF225F3119220A31CD704F
|
||||
:18043800082A0A3111EFFF1911A9317D936F7C9A67E5217204CD0115E1
|
||||
:18045000E1CDA41B216304CD0115311631CD9508C3AE072042797465AE
|
||||
:180468007320667265650D0A00005A383020424153494320566572207F
|
||||
:18048000342E37620D0A436F70797269676874202843292031393738EC
|
||||
:18049800206279204D6963726F736F66740D0A00004D656D6F727920CB
|
||||
:1804B000746F7000191ADD1A2F1AB330C1134617EF13A31C821DBE1824
|
||||
:1804C800F11CF71DFD1D5E1E731E9A17DE1E013173168B140D17821611
|
||||
:1804E0009316001F931FA316D316DD16C54E44C64F52CE455854C44173
|
||||
:1804F8005441C94E505554C4494DD2454144CC4554C74F544FD2554EBE
|
||||
:18051000C946D24553544F5245C74F535542D2455455524ED2454DD389
|
||||
:18052800544F50CF5554CF4ECE554C4CD7414954C44546D04F4B45C401
|
||||
:180540004F4B45D3435245454ECC494E4553C34C53D749445448CD4F0B
|
||||
:180558004E49544F52D34554D245534554D052494E54C34F4E54CC49BA
|
||||
:180570005354C34C454152C34C4F4144C353415645CE4557D441422827
|
||||
:18058800D44FC64ED3504328D448454ECE4F54D3544550ABADAAAFDE2B
|
||||
:1805A000C14E44CF52BEBDBCD3474EC94E54C14253D55352C65245C9CF
|
||||
:1805B8004E50D04F53D35152D24E44CC4F47C55850C34F53D3494ED4CF
|
||||
:1805D000414EC1544ED045454BC445454BD04F494E54CC454ED3545201
|
||||
:1805E80024D6414CC15343C3485224C8455824C2494E24CC45465424C7
|
||||
:18060000D24947485424CD49442480050C020BDD0F520DE40E19121329
|
||||
:180618000F690D0F0DF20CE10DCB0BFE0C2D0D540D030C5217C30D4436
|
||||
:180630000C5817F713A117E91E540DCF1EC21EC71EFF1F0431073105CB
|
||||
:180648000E310C770AAC0C540D540D6F08798B1B79BF177CFD187C5E04
|
||||
:18066000197FAC1C5072114671114E46534E52474F4446434F564F4D5C
|
||||
:18067800554C425344442F304944544D4F534C535354434E55464D4F6F
|
||||
:180690004858424EC35A04C3820CD300C9D6006F7CDE006778DE004771
|
||||
:1806A8003E00C9000000354ACA99391C76982295B3980ADD479853D102
|
||||
:1806C00099990A1A9F9865BCCD98D6773E9852C74F80DB00C901FF1C44
|
||||
:1806D80000001400140000000000C3A809C30000C30000C300000D32E6
|
||||
:1806F000FEFFAA31204572726F720020696E20004F6B0D0A0000427254
|
||||
:1807080065616B00210400397E23FE81C04E234623E569607AB3EBCA00
|
||||
:180720002607EBCD2B0A010D00E1C809C31007CD4907C5E3C1CD2B0A85
|
||||
:180738007E02C80B2BC33507E52A8A31060009093EE53ED0956F3EFFD8
|
||||
:180750009CDA58076739E1D81E0CC377072A7931220C311E02011E1472
|
||||
:18076800011E00011E12011E22011E0A011E18CD950832F530CD560E96
|
||||
:18078000216A06573E3FCD3C0A197ECD3C0ACDBB0BCD3C0A21F406CDB1
|
||||
:1807980001152A0C3111FEFFCD2B0ACAC7037CA53CC49C1B3EC1AF3270
|
||||
:1807B000F530CD560E210007CD011521FFFF220C31CDA809DABB07CD6B
|
||||
:1807C800BB0B3C3DCABB07F5CD870CD5CDBF0847D1F1D29B0BD5C5AFC6
|
||||
:1807E000327C31CDBB0BB7F5CD4F08DAF407F1F5CA280DB7C5D20B08A4
|
||||
:1807F800EB2A86311A020313CD2B0AC2FC076069228631D1F1CA3208BC
|
||||
:180810002A8631E3C109E5CD2F07E1228631EB74D123237323722311EE
|
||||
:1808280011311A772313B7C22A08CD7B0823EB626B7E23B6CABB0723D3
|
||||
:180840002323AFBE23C24308EB732372C337082A0E31444D7E23B62B4C
|
||||
:18085800C823237E23666FCD2B0A60697E23666F3FC83FD0C35208C0D0
|
||||
:180870002A0E31AF772377232286312A0E312B227E312A5F3122733166
|
||||
:18088800AFCDCB0B2A8631228831228A31C12A0A31F9216331226131E5
|
||||
:1808A000AF6F67228431327B31228E31E5C52A7E31C93E3FCD3C0A3E0B
|
||||
:1808B80020CD3C0AC3FE30AF325E310E051111317EFE20CA470947FE33
|
||||
:1808D00022CA6709B7CA6E093A5E31B77EC24709FE3F3E9ECA47097EFB
|
||||
:1808E800FE30DAF208FE3CDA4709D511EB04C5014309C5067F7EFE6184
|
||||
:18090000DA0B09FE7BD20B09E65F774EEB23B6F20D09047EE67FC8B954
|
||||
:18091800C20D09EBE5131AB7FA3F094F78FE88C22E09CDBB0B2B237E54
|
||||
:18093000FE61DA3709E65FB9CA1D09E1C30B0948F1EBC9EB79C1D1238A
|
||||
:1809480012130CD63ACA5509FE49C25809325E31D654C2C808477EB7CB
|
||||
:18096000CA6E09B8CA470923120C13C35E092110311213121312C93A2D
|
||||
:18097800F430B73E0032F430C28B0905CAA809CD3C0A3E052BCA9F092F
|
||||
:180990007ECD3C0AC3B109052BCD3C0AC2B109CD3C0ACD630EC3A809BD
|
||||
:1809A8002111310601AF32F430CD660A4FFE7FCA77093AF430B7CACACC
|
||||
:1809C000093E00CD3C0AAF32F43079FE07CA0E0AFE03CC630E37C8FE25
|
||||
:1809D8000DCA5E0EFE15CAA209FE40CA9F09FE5FCA9709FE08CA970955
|
||||
:1809F000FE12C2090AC5D5E53600CD1320211131CD0115E1D1C1C3B128
|
||||
:180A080009FE20DAB10978FE493E07D2230A7971327C312304CD3C0A15
|
||||
:180A2000C3B109CD3C0A3E08C31D0A7C92C07D93C97EE3BE23E3CABBAD
|
||||
:180A38000BC36307F53AF530B7C23615F1C5F5FE20DA600A3AF23047A6
|
||||
:180A50003A5B3104CA5C0A05B8CC630E3C325B31F1C1CDFC1FC9CDC0B0
|
||||
:180A68001EE67FFE0FC03AF5302F32F530AFC9CD870CC0C1CD4F08C5FF
|
||||
:180A8000CDCD0AE14E23462378B1CAAE07CDD60ACDE60BC5CD630E5E8B
|
||||
:180A9800235623E5EBCDA41B3E20E1CD3C0A7EB723CA830AF2A30AD6D8
|
||||
:180AB0007F4F11EC041A13B7F2B50A0DC2B50AE67FCD3C0A1A13B7F2EE
|
||||
:180AC800BF0AC3A60AE52AF83022F630E1C9E5D52AF63011FFFFED5A51
|
||||
:180AE00022F630D1E1F0E52AF83022F630CDC01EFE03CAF90AE1C3D6A2
|
||||
:180AF8000A2AF83022F630C35D043E64327B31CD690DC1E5CD520D2267
|
||||
:180B1000773121020039CD1007D1C2320B09D52B562B5E2323E52A7761
|
||||
:180B280031CD2B0AE1C2160BD1F9EB0E08CD4007E52A7731E3E52A0C2A
|
||||
:180B400031E3CD2B10CD310AA6CD2810E5CD561AE1C5D5010081515A04
|
||||
:180B58007EFEAB3E01C26E0BCDBB0BCD2810E5CD561ACD0A1AE1C5D5BE
|
||||
:180B7000F533E52A7E31E30681C533CDE60B227E317EFE3ACA9B0BB7B9
|
||||
:180B8800C26307237E23B6CA0D0C235E2356EB220C31EBCDBB0B117B7E
|
||||
:180BA0000BD5C8D680DA690DFE25D26307074F0600EB210B06094E239D
|
||||
:180BB80046C5EB237EFE3AD0FE20CABB0BFE303F3C3DC9EB2A0E31CA0B
|
||||
:180BD000E00BEBCD870CE5CD4F086069D1D2280D2B228C31EBC9DFC8C8
|
||||
:180BE800D7FE1B2811FE03280DFE13C0D7FE11C8FE03280718F63EFF9C
|
||||
:180C000032FD30C0F6C0227E3121F6FFC12A0C31F57DA43CCA200C228E
|
||||
:180C180082312A7E31228431AF32F530CD560EF1210607C29707C3AE3A
|
||||
:180C3000072A84317CB51E20CA7707EB2A8231220C31EBC9CD8917C007
|
||||
:180C480032F130C9E52AFA3006004F0922FA30E1C97EFE41D8FE5B3FBE
|
||||
:180C6000C9CDBB0BCD2810CD0A1AFA820C3A9731FE90DAB21A0180905B
|
||||
:180C7800110000E5CD851AE151C81E08C377072B110000CDBB0BD0E51D
|
||||
:180C9000F5219819CD2B0ADA6307626B19291929F1D6305F160019EB7E
|
||||
:180CA800E1C38B0CCA7F08CD640C2BCDBB0BE52A5F31CACF0CE1CD318A
|
||||
:180CC0000A2CD5CD640C2BCDBB0BC26307E3EB7D935F7C9A57DA580707
|
||||
:180CD800E52A863101280009CD2B0AD25807EB220A31E1225F31E1C35A
|
||||
:180CF0007F08CA7B08CD7F08017B0BC30E0D0E03CD4007C1E5E52A0C79
|
||||
:180D080031E33E8CF533C5CD870CCD540DE52A0C31CD2B0AE123DC52FA
|
||||
:180D200008D44F0860692BD81E0EC37707C016FFCD0C07F9FE8C1E04F5
|
||||
:180D3800C27707E1220C31237CB5C24C0D3A7C31B7C2AD07217B0BE316
|
||||
:180D50003EE1013A0E0006007948477EB7C8B8C823FE22CA580DC35B08
|
||||
:180D68000DCD1E12CD310AB4D53A5D31F5CD3A10F1E3227E311FCD2D46
|
||||
:180D800010CABC0DE52A9431E523235E23562A0E31CD2B0AD2AB0D2AC3
|
||||
:180D98000A31CD2B0AD1D2B30D216F31CD2B0AD2B30D3ED1CD6216EB0F
|
||||
:180DB000CD9B14CD6216E1CD651AE1C9E5CD621AD1E1C9CD89177E47B8
|
||||
:180DC800FE8CCAD20DCD310A882B4B0D78CAA30BCD880CFE2CC0C3D3FC
|
||||
:180DE0000DCD3A107EFE88CAEF0DCD310AA92BCD2B10CD0A1ACA540D0D
|
||||
:180DF800CDBB0BDA0F0DC3A20B2BCDBB0BCA630EC8FEA5CA960EFEA872
|
||||
:180E1000CA960EE5FE2CCA7F0EFE3BCAB90EC1CD3A10E53A5D31B7C22E
|
||||
:180E28004F0ECDAF1BCDBF1436202A9431342A94313AF2304704CA4BFA
|
||||
:180E40000E043A5B31863DB8D4630ECD0415AFC40415E1C3010E3A5B48
|
||||
:180E580031B7C8C3630E36002110313E0DCD3C0A3E0ACD3C0AAF325B11
|
||||
:180E7000313AF1303DC8F5AFCD3C0AF1C3740E3AF330473A5B31B8D4F6
|
||||
:180E8800630ED2B90ED60ED28D0E2FC3AE0EF5CD8617CD310A292BF19D
|
||||
:180EA000D6A8E5CAA90E3A5B312F83D2B90E3C473E20CD3C0A05C2B2D8
|
||||
:180EB8000EE1CDBB0BC3080E3F5265646F2066726F6D207374617274DC
|
||||
:180ED0000D0A003A7D31B7C25D07C121C00ECD0115C3AE08CD6C147E57
|
||||
:180EE800FE223E0032F530C2FE0ECDC014CD310A3BE5CD04153EE5CDD0
|
||||
:180F0000B208C1DA0A0C237EB72BC5CA510D362CC3180FE52A8C31F6F0
|
||||
:180F1800AF327D31E3C3240FCD310A2CCD1E12E3D57EFE2CCA4C0F3A69
|
||||
:180F30007D31B7C2B90F3E3FCD3C0ACDB208D1C1DA0A0C237EB72BC5D9
|
||||
:180F4800CA510DD53A5D31B7CA760FCDBB0B5747FE22CA6A0F3A7D314A
|
||||
:180F6000B757CA670F163A062C2BCDC314EB21810FE3D5C3840DCDBBAA
|
||||
:180F78000BCD111BE3CD621AE12BCDBB0BCA8D0FFE2CC2D30EE32BCD84
|
||||
:180F9000BB0BC2200FD13A7D31B7EBC2E10BD5B621A80FC40115E1C9A2
|
||||
:180FA8003F45787472612069676E6F7265640D0A00CD520DB7C2D20F49
|
||||
:180FC000237E23B61E06CA7707235E2356EB227931EBCDBB0BFE83C2C1
|
||||
:180FD800B90FC34C0F110000C41E12227E31CD0C07C26907F9D57E23C4
|
||||
:180FF000F5D5CD481AE3E5CDB517E1CD621AE1CD591AE5CD851AE1C151
|
||||
:1810080090CD591ACA1810EB220C316960C3770BF92A7E317EFE2CC27A
|
||||
:181020007B0BCDBB0BCDE00FCD3A10F6373A5D318FB7E8C37507CD316C
|
||||
:181038000A282B1600D50E01CD4007CDB1102280312A8031C178FE784A
|
||||
:18105000D42B107E1600D6B3DA7210FE03D27210FE0117AABA57DA639D
|
||||
:1810680007227531CDBB0BC356107AB7C299117E227531D6ACD8FE07A3
|
||||
:18108000D05F3A5D313DB37BCAF71507835F215506197856BAD023CD5A
|
||||
:181098002B10C5014910C5434ACD3B1A58514E234623C52A7531C33D5A
|
||||
:1810B00010AF325D31CDBB0B1E24CA7707DA111BCD590CD21811FE2635
|
||||
:1810C8002012CDBB0BFE48CA551FFE42CAC51F1E02CA7707FEACCAB14C
|
||||
:1810E00010FE2ECA111BFEADCA0711FE22CAC014FEAACAF911FEA7CA90
|
||||
:1810F8002414D6B6D22911CD3610CD310A29C9167DCD3D102A8031E596
|
||||
:18111000CD331ACD2B10E1C9CD1E12E5EB2294313A5D31B7CC481AE1B9
|
||||
:18112800C90600074FC5CDBB0B79FE31DA5011CD3610CD310A2CCD2C0F
|
||||
:1811400010EB2A9431E3E5EBCD8917EBE3C35811CDFF10E3111311D5CA
|
||||
:1811580001B404094E236669E915FEADC8FE2DC814FE2BC8FEACC82B77
|
||||
:18117000C9F6AFF5CD2B10CD6D0CF1EBC1E3EBCD4B1AF5CD6D0CF1C12C
|
||||
:181188007921E213C29411A34F78A2E9B34F78B2E921AB113A5D311F8B
|
||||
:1811A0007A175F166478BAD0C39A10AD1179B71FC1D1F5CD2D1021EFB0
|
||||
:1811B80011E5CA851AAF325D31D5CD44167E23234E2346D1C5F5CD483A
|
||||
:1811D00016CD591AF157E17BB2C87AD601D8AFBB3CD0151D0ABE2303D4
|
||||
:1811E800CAD7113FC3151A3C8FC1A0C6FF9FC31C1A165ACD3D10CD2B01
|
||||
:1812000010CD6D0C7B2F4F7A2FCDE213C1C349102BCDBB0BC8CD310AB1
|
||||
:181218002C011012C5F6AF325C3146CD590CDA6307AF4F325D31CDBB44
|
||||
:181230000BDA3A12CD590CDA47124FCDBB0BDA3B12CD590CD23B12D6E0
|
||||
:1812480024C256123C325D310F814FCDBB0B3A7B313DCA0313F2661265
|
||||
:181260007ED628CADB12AF327B31E550592A8E31CD2B0A119031CA4B56
|
||||
:18127800192A8831EB2A8631CD2B0ACA9912799623C28E12789623CA90
|
||||
:18129000CD1223232323C38012E1E3D5111B11CD2B0AD1CAD012E3E569
|
||||
:1812A800C50106002A8A31E509C1E5CD2F07E1228A3160692288312B59
|
||||
:1812C0003600CD2B0AC2BF12D173237223EBE1C932973121FF062294E4
|
||||
:1812D80031E1C9E52A5C31E357D5C5CD610CC1F1EBE3E5EB3C577EFE1A
|
||||
:1812F0002CCAE112CD310A29228031E1225C311E00D511E5F52A8831A8
|
||||
:181308003E19EB2A8A31EBCD2B0ACA3B137EB923C21D137EB8235E237B
|
||||
:181320005623C209133A5C31B7C26C07F1444DCA4B1996CA99131E10C1
|
||||
:18133800C37707110400F1CA820C712370234FCD4007232322753171F5
|
||||
:18135000233A5C311779010B00D25E13C10371237023F5E5CDF61AEB2F
|
||||
:18136800E1F13DC25613F5424BEB19DA5807CD4907228A312B3600CD4C
|
||||
:181380002B0AC27C1303572A75315EEB2909EB2B2B73237223F1DABD36
|
||||
:1813980013474F7E2316E15E235623E3F5CD2B0AD23613E5CDF61AD17A
|
||||
:1813B00019F13D444DC29E132929C109EB2A8031C92A8A31EB2100003E
|
||||
:1813C800393A5D31B7CADD13CD4416CD44152A0A31EB2A73317D934FD1
|
||||
:1813E0007C9A41501E00215D31730690C3211A3A5B3147AFC3E313CD38
|
||||
:1813F8007A14CD6C1401520DC5D5CD310A28CD1E12E5EB2B562B5EE120
|
||||
:18141000CD2B10CD310A29CD310AB4444DE3712370C3B914CD7A14D597
|
||||
:18142800CDFF10CD2B10E35E2356237AB3CA6F077E23666FE52A8E313A
|
||||
:18144000E3228E312A9231E52A9031E5219031D5CD621AE1CD28102B1D
|
||||
:18145800CDBB0BC26307E1229031E1229231E1228E31E1C9E52A0C317B
|
||||
:18147000237CB5E1C01E16C37707CD310AA73E80327B31B647CD2312B0
|
||||
:18148800C32B10CD2B10CDAF1BCDBF14CD4416019F16C57E2323E5CDF7
|
||||
:1814A0001A15E14E2346CDB314E56FCD3716D1C9CD1A15216F31E577B8
|
||||
:1814B8002323732372E1C92B062250E50EFF237E0CB7CAD514BACAD51F
|
||||
:1814D00014B8C2C614FE22CCBB0BE323EB79CDB314116F312A6131225D
|
||||
:1814E80094313E01325D31CD651ACD2B0A226131E17EC01E1EC377078A
|
||||
:1815000023CDBF14CD4416CD591A1C1DC80ACD3C0AFE0DCC6D0E03C373
|
||||
:181518000B15B70EF1F52A0A31EB2A73312F4F06FF0923CD2B0ADA380F
|
||||
:181530001522733123EBF1C9F11E1ACA7707BFF5011C15C52A5F312208
|
||||
:181548007331210000E52A0A31E5216331EB2A6131EBCD2B0A015515E3
|
||||
:18156000C2A9152A8631EB2A8831EBCD2B0ACA7C157E2323B7CDAC15F3
|
||||
:18157800C36615C1EB2A8A31EBCD2B0ACAD215CD591A7BE509B7F27B21
|
||||
:1815900015227531E14E0600090923EB2A7531EBCD2B0ACA7C15019B5D
|
||||
:1815A80015C5F6807E23235E235623F0B7C8444D2A7331CD2B0A606984
|
||||
:1815C000D8E1E3CD2B0AE3E56069D0C1F1F1E5D5C5C9D1E17DB4C82B53
|
||||
:1815D800462B4EE52B2B6E26000950592B444D2A7331CD3207E17123B6
|
||||
:1815F0007069602BC34715C5E52A9431E3CDB110E3CD2C107EE52A9449
|
||||
:1816080031E5861E1CDA7707CDB014D1CD4816E3CD4716E52A7131EB66
|
||||
:18162000CD2E16CD2E16214610E3E5C3E114E1E37E23234E23466F2CBF
|
||||
:181638002DC80A120313C33816CD2C102A9431EBCD6216EBC0D5505911
|
||||
:181650001B4E2A7331CD2B0AC260164709227331E1C92A61312B462BF9
|
||||
:181668004E2B2BCD2B0AC0226131C901F213C5CD4116AF57325D317E54
|
||||
:18168000B7C901F213C5CD7716CA820C23235E23561AC93E01CDB01485
|
||||
:18169800CD8C172A713173C1C3E114CD3C17AFE34FE57EB8DAB11678DD
|
||||
:1816B000110E00C5CD1A15C1E1E5232346236668060009444DCDB3140A
|
||||
:1816C8006FCD3716D1CD4816C3E114CD3C17D1D51A90C3A716EB7ECDA7
|
||||
:1816E00041170405CA820CC51EFFFE29CAF616CD310A2CCD8917CD31BB
|
||||
:1816F8000A29F1E301A916C53DBE0600D04F7E91BB47D843C9CD7716DF
|
||||
:18171000CA2A185F23237E23666FE5194672E3C57EFE24C22B17CD5576
|
||||
:181728001F180DFE25C23517CDC51F1803CD111BC1E170C9EBCD310AA1
|
||||
:1817400029C1D1C543C9CD8C1732EF30CDEE30C3F213CD7617C3B6308E
|
||||
:18175800CD7617F51E002BCDBB0BCA6C17CD310A2CCD8917C1CDEE30B4
|
||||
:18177000ABA0CA6D17C9CD891732EF3032B730CD310A2CC38917CDBB09
|
||||
:181788000BCD2810CD670C7AB7C2820C2BCDBB0B7BC9CD6D0C1AC3F261
|
||||
:1817A00013CD2810CD6D0CD5CD310A2CCD8917D112C921881CCD591AAC
|
||||
:1817B800C3C417CD591A21C1D1CD331A78B7C83A9731B7CA4B1A90D22D
|
||||
:1817D000DE172F3CEBCD3B1AEBCD4B1AC1D1FE19D0F5CD701A67F1CD8D
|
||||
:1817E8008918B4219431F20418CD6918D24A182334CA72072E01CD9FE9
|
||||
:1818000018C34A18AF90477E9B5F237E9A57237E994FDC75186863AF97
|
||||
:181818004779B7C237184A54656F78D608FEE0C21818AF329731C90521
|
||||
:18183000297A1757798F4FF22F18785C45B7CA4A182197318677D22A21
|
||||
:1818480018C878219731B7FC5C1846237EE680A94FC34B1A1CC014C003
|
||||
:181860000CC00E8034C0C372077E835F237E8A57237E894FC9219831D8
|
||||
:181878007E2F77AF6F90477D9B5F7D9A577D994FC90600D608DA9818BE
|
||||
:18189000435A510E00C38B18C6096FAF2DC8791F4F7A1F577B1F5F78B4
|
||||
:1818A8001F47C39B180000008103AA561980F122768045AA3882CD0AA6
|
||||
:1818C0001AB7EA820C2197317E01358011F30490F570D5C5CDC417C1AA
|
||||
:1818D800D104CD601921AD18CDBB1721B118CD521D018080110000CD53
|
||||
:1818F000C417F1CD851B01318011187221C1D1CD0A1AC82E00CDC81912
|
||||
:181908007932A631EB22A7310100005058211518E5212119E5E52194AA
|
||||
:18192000317E23B7CA4D19E52E081F6779D23B19E52AA73119EBE13AB0
|
||||
:18193800A631891F4F7A1F577B1F5F781F472D7CC22A19E1C9435A51BC
|
||||
:181950004FC9CD3B1A012084110000CD4B1AC1D1CD0A1ACA66072EFF76
|
||||
:18196800CDC81934342B7E32C2302B7E32BE302B7E32BA3041EBAF4FCC
|
||||
:18198000575F32C530E5C57DCDB930DE003FD2981932C530F1F137D2E3
|
||||
:18199800C1E1793C3D1FFA4B18177B175F7A175779174F297817473A1F
|
||||
:1819B000C5301732C53079B2B3C28519E521973135E1C28519C372072E
|
||||
:1819C80078B7CAEC197D219731AE80471FA878F2EB19C68077CA4B190E
|
||||
:1819E000CD701A772BC9CD0A1A2FE1B7E1F22A18C37207CD561A78B7B8
|
||||
:1819F800C8C602DA720747CDC41721973134C0C372073A9731B7C83A31
|
||||
:181A10009631FE2F179FC03CC9CD0A1A06881100002197314F70060011
|
||||
:181A280023368017C31218CD0A1AF02196317EEE8077C9EB2A9431E317
|
||||
:181A4000E52A9631E3E5EBC9CD591AEB2294316069229631EBC921940F
|
||||
:181A5800315E2356234E234623C911943106041A77132305C2671AC9F0
|
||||
:181A70002196317E07371F773F1F2323777907371F4F1FAEC978B7CA55
|
||||
:181A88000A1A21131AE5CD0A1A79C8219631AE79F8CD9F1A1FA9C9237C
|
||||
:181AA00078BEC02B79BEC02B7ABEC02B7B96C0E1E1C9474F575FB7C8A1
|
||||
:181AB800E5CD561ACD701AAE67FCD61A3E9890CD89187C17DC5C1806DF
|
||||
:181AD00000DC7518E1C91B7AA33CC00BC92197317EFE983A9431D07E99
|
||||
:181AE800CDB21A36987BF57917CD1218F1C921000078B1C83E1029DA6B
|
||||
:181B00003613EB29EBD20C1B09DA36133DC2FE1AC9FE2DF5CA1D1BFE60
|
||||
:181B18002BCA1D1B2BCD2A1847575F2F4FCDBB0BDA6E1BFE2ECA491B83
|
||||
:181B3000FE45C24D1BCDBB0BCD6111CDBB0BDA901B14C24D1BAF935F67
|
||||
:181B48000C0CCA251BE57B90F4661BF25C1BF5CD5219F13CC2501BD13D
|
||||
:181B6000F1CC331AEBC9C8F5CDF319F13DC9D557788947C5E5D5CDF36F
|
||||
:181B780019F1D630CD851BE1C1D1C3251BCD3B1ACD1C1AC1D1C3C4170D
|
||||
:181B90007B0707830786D6305FC33B1BE521FB06CD0115E1EBAF069823
|
||||
:181BA800CD211A210015E5219931E5CD0A1A3620F2BD1B362D23363035
|
||||
:181BC000CA731CE5FC331AAFF5CD791C01439111F84FCD851AB7E2EA64
|
||||
:181BD8001BF1CD671BF5C3CC1BCD5219F13CF5CD791CCDB2173CCDB2EE
|
||||
:181BF0001ACD4B1A010603F1813CFA061CFE08D2061C3C473E023D3D86
|
||||
:181C0800E1F5118C1C05C2171C362E2336302305362ECC601AC5E5D5FD
|
||||
:181C2000CD561AE1062F047B965F237A9E5723799E4F2B2BD2261CCD93
|
||||
:181C3800691823CD4B1AEBE17023C10DC2171C05CA571C2B7EFE30CAB9
|
||||
:181C50004B1CFE2EC4601AF1CA761C364523362BF2671C362D2F3C0616
|
||||
:181C68002F04D60AD2691CC63A237023772371E1C901749411F723CD8E
|
||||
:181C8000851AB7E1E2E11BE900000080A08601102700E8030064000021
|
||||
:181C98000A000001000021331AE3E9CD3B1A21881CCD481AC1D1CD0A70
|
||||
:181CB0001A78CAF11CF2BC1CB7CA6607B7CA2B18D5C579F67FCD561A72
|
||||
:181CC800F2D91CD5C5CDDD1AC1D1F5CD851AE17C1FE1229631E12294EF
|
||||
:181CE00031DC9E1CCC331AD5C5CDBE18C1D1CDFF18CD3B1A013881116C
|
||||
:181CF8003BAACDFF183A9731FE88D2E619CDDD1AC680C602DAE619F512
|
||||
:181D100021AD18CDB517CDF618F1C1D1F5CDC117CD331A21311DCD618D
|
||||
:181D28001D110000C14AC3FF1808402E9474704F2E776E02887AE6A0B6
|
||||
:181D40002A7C50AAAA7EFFFF7F7F0000808100000081CD3B1A11FD18FD
|
||||
:181D5800D5E5CD561ACDFF18E1CD3B1A7E23CD481A06F1C1D13DC8D562
|
||||
:181D7000C5F5E5CDFF18E1CD591AE5CDC417E1C36A1DCD0A1A21C930F4
|
||||
:181D8800FAE31D21EA30CD481A21C930C886E6070600772387874F0984
|
||||
:181DA000CD591ACDFF183AC8303CE6030600FE018832C83021E71D874D
|
||||
:181DB800874F09CDB517CD561A7B59EE4F4F36802B46368021C73034D5
|
||||
:181DD0007ED6ABC2DA1D770C151CCD151821EA30C3621A772B772B7760
|
||||
:181DE800C3BE1D68B1466899E9926910D1756821411ECDB517CD3B1A08
|
||||
:181E000001498311DB0FCD4B1AC1D1CD6019CD3B1ACDDD1AC1D1CDC1F2
|
||||
:181E18001721451ECDBB17CD0A1A37F22D1ECDB217CD0A1AB7F5F433B9
|
||||
:181E30001A21451ECDB517F1D4331A21491EC3521DDB0F4981000000E3
|
||||
:181E48007F05BAD71E866426998758342387E05DA586DA0F4983CD3BC4
|
||||
:181E60001ACDFD1DC1E1CD3B1AEBCD4B1ACDF71DC35E19CD0A1AFC9EE2
|
||||
:181E78001CFC331A3A9731FE81DA901E0100815159CD601921BB17E59A
|
||||
:181E9000219A1ECD521D21411EC9094AD73B78026E847BFEC12F7C74B2
|
||||
:181EA800319A7D843D5A7DC87F917EE4BB4C7E6CAAAA7F00000081C9FA
|
||||
:181EC000D7C93E0CC3FC1FCD89177B32F230C9CD2810CD6D0CED53F6BC
|
||||
:181ED80030ED53F830C9CD6D0CD5E146237EC3E313CD2810CD6D0CD5D5
|
||||
:181EF000CD310A2CCD2810CD6D0CE3732372E1C9CD2B10CD6D0CC52192
|
||||
:181F080099317AFE00280CCD381F78FE302802702371237BCD381F7A17
|
||||
:181F2000FE00200578FE30280270237123AF772377C1219931C39114BB
|
||||
:181F380047E60FFE0A3802C607C6304F780F0F0F0FE60FFE0A3802C650
|
||||
:181F500007C63047C9EB210000CD6E1FDA8E1F1805CD6E1F381F29295F
|
||||
:181F68002929B56F18F3131AFE20CA6E1FD630D8FE0A3805D607FE0A36
|
||||
:181F8000D8FE103FC9EB7A4BE5CDE213E1C91E26C37707CD2B10CD6D93
|
||||
:181F98000CC521993106110578FE012808CB13CB1230F41804CB13CB0E
|
||||
:181FB000123E30CE0077230520F3AF772377C1219931C39114EB210039
|
||||
:181FC80000CDE21FDAF01FD63029B56FCDE21F30F6EB7A4BE5CDE213AC
|
||||
:181FE000E1C9131AFE20CAE21FFE30D8FE323FC91E28C37707DD21FF67
|
||||
:181FF800FFC3C703C30800C300003E0032FD30C3CE03ED45F5A0C1B846
|
||||
:092010003E00C9CD3C0AC3630E79
|
||||
:00000001FF
|
||||
:0430040000000000C8
|
||||
:18000000F3C3940000000000C332000000000000C31B000000000000CB
|
||||
:18001800C35C003A0030FE002008CD630028FBDB81C9CD6A0028FBDB74
|
||||
:1800300083C9F53A0030FE00200D1801F5CD500028FBF1D381C9F5CDC4
|
||||
:18004800560028FBF1D383C9DB800FCB47C9DB820FCB47C93A0030FE23
|
||||
:18006000002007DB80E601FE00C9DB82E601FE00C9D7FE0A28FBFE1B32
|
||||
:1800780020023E03C9FE0D280AFE0C2804FE203801CFC93E0DCF3E0A80
|
||||
:18009000CF3E0DC93128303E95D380D3823E00320030216503CD1B015F
|
||||
:1800A8003E01320030216503CD1B01CD6300280F3E00320030CD1B003E
|
||||
:1800C000FE20C2B3001814CD6A0028E73E01320030CD1B00FE20C2B307
|
||||
:1800D8000018003E0CCD3C00CD4600CD2201219602CD1B0121EC00E50E
|
||||
:1800F000CD22013E3ECFCD7100FE2038F9FE3ACA9901CD7D00E65FFE07
|
||||
:1801080042CADA01FE47CA9301FE58CAF1013E3FCF18D57EB7C8CF231B
|
||||
:1801200018F93E0DCF3E0ACFC9CD7100FE03C8FE2038F6C9CD29014762
|
||||
:18013800CD29014FCD73014F7B915F79C9210000CD8C01FE0D200E3741
|
||||
:18015000C9210000CD8C01FE0DC8FE2CC8FE0328EE29292929D630FECF
|
||||
:180168000A3802D607E60F856F18E178D630FE0A3802D60707070707C3
|
||||
:180180004779D630FE0A3802D60780C9CD7100CD7D00C9CD4501D8E518
|
||||
:18019800C91E00CD340157CD340167CD34016FCD3401FE012009CD340A
|
||||
:1801B000017BA7281E18157AA7280BCD340177233E2ECF1518F1CD3457
|
||||
:1801C800017BA7C8215403CD1B01C9218A03CD1B01C9214203CD1B015B
|
||||
:1801E000CD2901C8E65FFE43CA9503FE57CA9803C9210302CD1B01CD01
|
||||
:1801F8002901C8E65FFE59CA2402C90D0A426F6F742043502F4D3F008F
|
||||
:180210000D0A4C6F6164696E672043502F4D2E2E2E0D0A00211002CD31
|
||||
:180228001B0106183E003204303205303206303207302100D022023063
|
||||
:18024000CD6E021100022A0230192202303A04303C32043010EA3A0049
|
||||
:1802580030F52AFEFFE93A0630D38C3A0530D38B3A0430D38AC9F5C56F
|
||||
:18027000E5DB89FE8020FACD5E023E00D3890E040680DB89FEE020FADA
|
||||
:18028800DB8877230520F30D20EEE1C1F1C943502F4D20426F6F7420EF
|
||||
:1802A000524F4D20322E3020627920472E20536561726C650D0A0D0A6E
|
||||
:1802B8004243206F72204257202D20524F4D20424153494320436F6CD4
|
||||
:1802D000642F5761726D0D0A5820202020202020202D20426F6F74207C
|
||||
:1802E80043502F4D20286C6F61642024443030302D2446464646290D50
|
||||
:180300000A3A6E6E6E6E2E2E2E202D204C6F616420496E74656C2D48E1
|
||||
:1803180065782066696C65207265636F72640D0A476E6E6E6E2020201B
|
||||
:18033000202D2052756E206C6F63206E6E6E6E0D0A000D0A436F6C642D
|
||||
:18034800206F72207761726D3F0D0A00436865636B73756D20657272D3
|
||||
:180360006F720D0A000C5072657373205B53504143455D20746F2061AC
|
||||
:180378006374697661746520636F6E736F6C650D0A00436F6D706C65F3
|
||||
:1803900074650D0A00C39B03C33904DD210000C3A6034C0CC21321B09C
|
||||
:1803A80030F9C3E11F117306066321B0301A77231305C2B503F9CD74DD
|
||||
:1803C00008CD420E325A3132A931218804CDE014CD9108CD9A0BB7C278
|
||||
:1803D800EF03210D32237CB5CA01047E472F77BE70CADD03C30104CDC0
|
||||
:1803F000660CB7C24207EB2B3ED94677BE70C2CA032B110C32CD0A0ABF
|
||||
:18040800DACA0311CEFF225F3119220A31CD4F082A0A3111EFFF19117D
|
||||
:18042000A9317D936F7C9A67E5215104CDE014E1CD831B214204CDE072
|
||||
:1804380014311631CD7408C38D0720427974657320667265650D0A0080
|
||||
:18045000005A38302042415349432056657220342E37620D0A436F70AF
|
||||
:18046800797269676874202843292031393738206279204D6963726F23
|
||||
:18048000736F66740D0A00004D656D6F727920746F7000F819BC1A0EB0
|
||||
:180498001AB330A0132517CE13821C611D9D18D01CD61DDC1D3D1E5229
|
||||
:1804B0001E7917BD1E013152166A14EC1661167216DF1E721F8216B2BA
|
||||
:1804C80016BC16C54E44C64F52CE455854C4415441C94E505554C44900
|
||||
:1804E0004DD2454144CC4554C74F544FD2554EC946D24553544F5245D5
|
||||
:1804F800C74F535542D2455455524ED2454DD3544F50CF5554CF4ECEFF
|
||||
:18051000554C4CD7414954C44546D04F4B45C44F4B45D3435245454E50
|
||||
:18052800CC494E4553C34C53D749445448CD4F4E49544F52D34554D278
|
||||
:1805400045534554D052494E54C34F4E54CC495354C34C454152C34CFF
|
||||
:180558004F4144C353415645CE4557D4414228D44FC64ED3504328D443
|
||||
:1805700048454ECE4F54D3544550ABADAAAFDEC14E44CF52BEBDBCD35E
|
||||
:18058800474EC94E54C14253D55352C65245C94E50D04F53D35152D20D
|
||||
:1805A0004E44CC4F47C55850C34F53D3494ED4414EC1544ED045454BA8
|
||||
:1805B800C445454BD04F494E54CC454ED3545224D6414CC15343C348C7
|
||||
:1805D0005224C8455824C2494E24CC45465424D24947485424CD49444C
|
||||
:1805E8002480E40BE10ABC0F310DC30EF811F20E480DEE0CD10CC00DA1
|
||||
:18060000AA0BDD0C0C0D330DE20B3117A20D230C3717D6138017C81E24
|
||||
:18061800330DAE1EA11EA61EDE1F04310731E40D100C560A8B0C330D8D
|
||||
:18063000330D4E08796A1B799E177CDC187C3D197F8B1C505111465040
|
||||
:18064800114E46534E52474F4446434F564F4D554C425344442F3049F8
|
||||
:1806600044544D4F534C535354434E55464D4F4858424EC33904C36199
|
||||
:180678000CD300C9D6006F7CDE006778DE00473E00C9000000354ACACF
|
||||
:1806900099391C76982295B3980ADD479853D199990A1A9F9865BCCDEF
|
||||
:1806A80098D6773E9852C74F80DB00C901FF1C000014001400000000AF
|
||||
:1806C00000C38709C30000C30000C300000D32FEFFAA31204572726FB7
|
||||
:1806D800720020696E20004F6B0D0A0000427265616B00210400397EEF
|
||||
:1806F00023FE81C04E234623E569607AB3EBCA0507EBCD0A0A010D0040
|
||||
:18070800E1C809C3EF06CD2807C5E3C1CD0A0A7E02C80B2BC31407E5E8
|
||||
:180720002A8A31060009093EE53ED0956F3EFF9CDA37076739E1D81E27
|
||||
:180738000CC356072A7931220C311E02011E14011E00011E12011E2266
|
||||
:18075000011E0A011E18CD740832F530CD350E214906573E3FCD1B0A4B
|
||||
:18076800197ECD1B0ACD9A0BCD1B0A21D306CDE0142A0C3111FEFFCD8F
|
||||
:180780000A0ACAA6037CA53CC47B1B3EC1AF32F530CD350E21DF06CD3B
|
||||
:18079800E01421FFFF220C31CD8709DA9A07CD9A0B3C3DCA9A07F5CDE7
|
||||
:1807B000660CD5CD9E0847D1F1D27A0BD5C5AF327C31CD9A0BB7F5CD04
|
||||
:1807C8002E08DAD307F1F5CA070DB7C5D2EA07EB2A86311A020313CD61
|
||||
:1807E0000A0AC2DB076069228631D1F1CA11082A8631E3C109E5CD0EB4
|
||||
:1807F80007E1228631EB74D12323732372231111311A772313B7C209EB
|
||||
:1808100008CD5A0823EB626B7E23B6CA9A07232323AFBE23C22208EB2C
|
||||
:18082800732372C316082A0E31444D7E23B62BC823237E23666FCD0AF8
|
||||
:180840000A60697E23666F3FC83FD0C33108C02A0E31AF772377232217
|
||||
:1808580086312A0E312B227E312A5F31227331AFCDAA0B2A8631228830
|
||||
:1808700031228A31C12A0A31F9216331226131AF6F67228431327B31A0
|
||||
:18088800228E31E5C52A7E31C93E3FCD1B0A3E20CD1B0AC3FE30AF329A
|
||||
:1808A0005E310E051111317EFE20CA260947FE22CA4609B7CA4D093A25
|
||||
:1808B8005E31B77EC22609FE3F3E9ECA26097EFE30DAD108FE3CDA26C8
|
||||
:1808D00009D511CA04C5012209C5067F7EFE61DAEA08FE7BD2EA08E64C
|
||||
:1808E8005F774EEB23B6F2EC08047EE67FC8B9C2EC08EBE5131AB7FA5E
|
||||
:180900001E094F78FE88C20D09CD9A0B2B237EFE61DA1609E65FB9CA35
|
||||
:18091800FC08E1C3EA0848F1EBC9EB79C1D12312130CD63ACA3409FEE1
|
||||
:1809300049C23709325E31D654C2A708477EB7CA4D09B8CA2609231286
|
||||
:180948000C13C33D092110311213121312C93AF430B73E0032F430C27D
|
||||
:180960006A0905CA8709CD1B0A3E052BCA7E097ECD1B0AC39009052B00
|
||||
:18097800CD1B0AC29009CD1B0ACD420EC387092111310601AF32F43049
|
||||
:18099000CD450A4FFE7FCA56093AF430B7CAA9093E00CD1B0AAF32F4A8
|
||||
:1809A8003079FE07CAED09FE03CC420E37C8FE0DCA3D0EFE15CA810926
|
||||
:1809C000FE40CA7E09FE5FCA7609FE08CA7609FE12C2E809C5D5E53623
|
||||
:1809D80000CDF21F211131CDE014E1D1C1C39009FE20DA900978FE49E6
|
||||
:1809F0003E07D2020A7971327C312304CD1B0AC39009CD1B0A3E08C393
|
||||
:180A0800FC097C92C07D93C97EE3BE23E3CA9A0BC34207F53AF530B77F
|
||||
:180A2000C21515F1C5F5FE20DA3F0A3AF230473A5B3104CA3B0A05B8AD
|
||||
:180A3800CC420E3C325B31F1C1CDDB1FC9CD9F1EE67FFE0FC03AF53033
|
||||
:180A50002F32F530AFC9CD660CC0C1CD2E08C5CDAC0AE14E2346237852
|
||||
:180A6800B1CA8D07CDB50ACDC50BC5CD420E5E235623E5EBCD831B3EE9
|
||||
:180A800020E1CD1B0A7EB723CA620AF2820AD67F4F11CB041A13B7F205
|
||||
:180A9800940A0DC2940AE67FCD1B0A1A13B7F29E0AC3850AE52AF830DD
|
||||
:180AB00022F630E1C9E5D52AF63011FFFFED5A22F630D1E1F0E52AF8EB
|
||||
:180AC8003022F630CD9F1EFE03CAD80AE1C3B50A2AF83022F630C33C6B
|
||||
:180AE000043E64327B31CD480DC1E5CD310D22773121020039CDEF06BF
|
||||
:180AF800D1C2110B09D52B562B5E2323E52A7731CD0A0AE1C2F50AD1FE
|
||||
:180B1000F9EB0E08CD1F07E52A7731E3E52A0C31E3CD0A10CD100AA6A3
|
||||
:180B2800CD0710E5CD351AE1C5D5010081515A7EFEAB3E01C24D0BCDDB
|
||||
:180B40009A0BCD0710E5CD351ACDE919E1C5D5F533E52A7E31E3068179
|
||||
:180B5800C533CDC50B227E317EFE3ACA7A0BB7C24207237E23B6CAEC28
|
||||
:180B70000B235E2356EB220C31EBCD9A0B115A0BD5C8D680DA480DFE2B
|
||||
:180B880025D24207074F0600EB21EA05094E2346C5EB237EFE3AD0FEA7
|
||||
:180BA00020CA9A0BFE303F3C3DC9EB2A0E31CABF0BEBCD660CE5CD2E0D
|
||||
:180BB800086069D1D2070D2B228C31EBC9DFC8D7FE1B2811FE03280DD9
|
||||
:180BD000FE13C0D7FE11C8FE03280718F63EFF32FD30C0F6C0227E316D
|
||||
:180BE80021F6FFC12A0C31F57DA43CCAFF0B2282312A7E31228431AF5D
|
||||
:180C000032F530CD350EF121E506C27607C38D072A84317CB51E20CACA
|
||||
:180C18005607EB2A8231220C31EBC9CD6817C032F130C9E52AFA300625
|
||||
:180C3000004F0922FA30E1C97EFE41D8FE5B3FC9CD9A0BCD0710CDE95C
|
||||
:180C480019FA610C3A9731FE90DA911A018090110000E5CD641AE1517B
|
||||
:180C6000C81E08C356072B110000CD9A0BD0E5F5219819CD0A0ADA4247
|
||||
:180C780007626B19291929F1D6305F160019EBE1C36A0CCA5E08CD4342
|
||||
:180C90000C2BCD9A0BE52A5F31CAAE0CE1CD100A2CD5CD430C2BCD9A09
|
||||
:180CA8000BC24207E3EB7D935F7C9A57DA3707E52A863101280009CD97
|
||||
:180CC0000A0AD23707EB220A31E1225F31E1C35E08CA5A08CD5E0801B3
|
||||
:180CD8005A0BC3ED0C0E03CD1F07C1E5E52A0C31E33E8CF533C5CD6620
|
||||
:180CF0000CCD330DE52A0C31CD0A0AE123DC3108D42E0860692BD81E99
|
||||
:180D08000EC35607C016FFCDEB06F9FE8C1E04C25607E1220C31237C6F
|
||||
:180D2000B5C22B0D3A7C31B7C28C07215A0BE33EE1013A0E00060079C9
|
||||
:180D380048477EB7C8B8C823FE22CA370DC33A0DCDFD11CD100AB4D5F1
|
||||
:180D50003A5D31F5CD1910F1E3227E311FCD0C10CA9B0DE52A9431E500
|
||||
:180D680023235E23562A0E31CD0A0AD28A0D2A0A31CD0A0AD1D2920D1B
|
||||
:180D8000216F31CD0A0AD2920D3ED1CD4116EBCD7A14CD4116E1CD44B9
|
||||
:180D98001AE1C9E5CD411AD1E1C9CD68177E47FE8CCAB10DCD100A8865
|
||||
:180DB0002B4B0D78CA820BCD670CFE2CC0C3B20DCD19107EFE88CACE9B
|
||||
:180DC8000DCD100AA92BCD0A10CDE919CA330DCD9A0BDAEE0CC3810BF6
|
||||
:180DE0002BCD9A0BCA420EC8FEA5CA750EFEA8CA750EE5FE2CCA5E0E54
|
||||
:180DF800FE3BCA980EC1CD1910E53A5D31B7C22E0ECD8E1BCD9E1436F6
|
||||
:180E1000202A9431342A94313AF2304704CA2A0E043A5B31863DB8D4D6
|
||||
:180E2800420ECDE314AFC4E314E1C3E00D3A5B31B7C8C3420E360021F4
|
||||
:180E400010313E0DCD1B0A3E0ACD1B0AAF325B313AF1303DC8F5AFCDA4
|
||||
:180E58001B0AF1C3530E3AF330473A5B31B8D4420ED2980ED60ED26C68
|
||||
:180E70000E2FC38D0EF5CD6517CD100A292BF1D6A8E5CA880E3A5B31DC
|
||||
:180E88002F83D2980E3C473E20CD1B0A05C2910EE1CD9A0BC3E70D3FA6
|
||||
:180EA0005265646F2066726F6D2073746172740D0A003A7D31B7C23CDA
|
||||
:180EB80007C1219F0ECDE014C38D08CD4B147EFE223E0032F530C2DD75
|
||||
:180ED0000ECD9F14CD100A3BE5CDE3143EE5CD9108C1DAE90B237EB741
|
||||
:180EE8002BC5CA300D362CC3F70EE52A8C31F6AF327D31E3C3030FCDFB
|
||||
:180F0000100A2CCDFD11E3D57EFE2CCA2B0F3A7D31B7C2980F3E3FCD02
|
||||
:180F18001B0ACD9108D1C1DAE90B237EB72BC5CA300DD53A5D31B7CA69
|
||||
:180F3000550FCD9A0B5747FE22CA490F3A7D31B757CA460F163A062C5C
|
||||
:180F48002BCDA214EB21600FE3D5C3630DCD9A0BCDF01AE3CD411AE148
|
||||
:180F60002BCD9A0BCA6C0FFE2CC2B20EE32BCD9A0BC2FF0ED13A7D31E3
|
||||
:180F7800B7EBC2C00BD5B621870FC4E014E1C93F45787472612069675B
|
||||
:180F90006E6F7265640D0A00CD310DB7C2B10F237E23B61E06CA560711
|
||||
:180FA800235E2356EB227931EBCD9A0BFE83C2980FC32B0F110000C467
|
||||
:180FC000FD11227E31CDEB06C24807F9D57E23F5D5CD271AE3E5CD94FB
|
||||
:180FD80017E1CD411AE1CD381AE5CD641AE1C190CD381ACAF70FEB2283
|
||||
:180FF0000C316960C3560BF92A7E317EFE2CC25A0BCD9A0BCDBF0FCD44
|
||||
:181008001910F6373A5D318FB7E8C35407CD100A282B1600D50E01CD65
|
||||
:181020001F07CD90102280312A8031C178FE78D40A107E1600D6B3DAE3
|
||||
:181038005110FE03D25110FE0117AABA57DA4207227531CD9A0BC335E5
|
||||
:18105000107AB7C278117E227531D6ACD8FE07D05F3A5D313DB37BCA2B
|
||||
:18106800D61507835F213406197856BAD023CD0A10C5012810C5434A76
|
||||
:18108000CD1A1A58514E234623C52A7531C31C10AF325D31CD9A0B1E51
|
||||
:1810980024CA5607DAF01ACD380CD2F710FE262012CD9A0BFE48CA341B
|
||||
:1810B0001FFE42CAA41F1E02CA5607FEACCA9010FE2ECAF01AFEADCA6C
|
||||
:1810C800E610FE22CA9F14FEAACAD811FEA7CA0314D6B6D20811CD1543
|
||||
:1810E00010CD100A29C9167DCD1C102A8031E5CD121ACD0A10E1C9CD6C
|
||||
:1810F800FD11E5EB2294313A5D31B7CC271AE1C90600074FC5CD9A0B52
|
||||
:1811100079FE31DA2F11CD1510CD100A2CCD0B10EB2A9431E3E5EBCDBE
|
||||
:181128006817EBE3C33711CDDE10E311F210D5019304094E236669E907
|
||||
:1811400015FEADC8FE2DC814FE2BC8FEACC82BC9F6AFF5CD0A10CD4C17
|
||||
:181158000CF1EBC1E3EBCD2A1AF5CD4C0CF1C17921C113C27311A34F85
|
||||
:1811700078A2E9B34F78B2E9218A113A5D311F7A175F166478BAD0C37D
|
||||
:1811880079108C1179B71FC1D1F5CD0C1021CE11E5CA641AAF325D31CE
|
||||
:1811A000D5CD23167E23234E2346D1C5F5CD2716CD381AF157E17BB2D7
|
||||
:1811B800C87AD601D8AFBB3CD0151D0ABE2303CAB6113FC3F4193C8F2D
|
||||
:1811D000C1A0C6FF9FC3FB19165ACD1C10CD0A10CD4C0C7B2F4F7A2F54
|
||||
:1811E800CDC113C1C328102BCD9A0BC8CD100A2C01EF11C5F6AF325C21
|
||||
:181200003146CD380CDA4207AF4F325D31CD9A0BDA1912CD380CDA26E5
|
||||
:18121800124FCD9A0BDA1A12CD380CD21A12D624C235123C325D310FC8
|
||||
:18123000814FCD9A0B3A7B313DCAE212F245127ED628CABA12AF327BCC
|
||||
:1812480031E550592A8E31CD0A0A119031CA2A192A8831EB2A8631CDAA
|
||||
:181260000A0ACA7812799623C26D12789623CAAC1223232323C35F1222
|
||||
:18127800E1E3D511FA10CD0A0AD1CAAF12E3E5C50106002A8A31E50906
|
||||
:18129000C1E5CD0E07E1228A3160692288312B3600CD0A0AC29E12D1D7
|
||||
:1812A80073237223EBE1C932973121DE06229431E1C9E52A5C31E35708
|
||||
:1812C000D5C5CD400CC1F1EBE3E5EB3C577EFE2CCAC012CD100A29220A
|
||||
:1812D8008031E1225C311E00D511E5F52A88313E19EB2A8A31EBCD0A13
|
||||
:1812F0000ACA1A137EB923C2FC127EB8235E235623C2E8123A5C31B72E
|
||||
:18130800C24B07F1444DCA2A1996CA78131E10C35607110400F1CA61C0
|
||||
:181320000C712370234FCD1F07232322753171233A5C311779010B003B
|
||||
:18133800D23D13C10371237023F5E5CDD51AEBE1F13DC23513F5424B74
|
||||
:18135000EB19DA3707CD2807228A312B3600CD0A0AC25B1303572A7525
|
||||
:18136800315EEB2909EB2B2B73237223F1DA9C13474F7E2316E15E232C
|
||||
:181380005623E3F5CD0A0AD21513E5CDD51AD119F13D444DC27D132964
|
||||
:1813980029C109EB2A8031C92A8A31EB210000393A5D31B7CABC13CDAC
|
||||
:1813B0002316CD23152A0A31EB2A73317D934F7C9A41501E00215D31F6
|
||||
:1813C800730690C3001A3A5B3147AFC3C213CD5914CD4B1401310DC569
|
||||
:1813E000D5CD100A28CDFD11E5EB2B562B5EE1CD0A10CD100A29CD10A7
|
||||
:1813F8000AB4444DE3712370C39814CD5914D5CDDE10CD0A10E35E2323
|
||||
:1814100056237AB3CA4E077E23666FE52A8E31E3228E312A9231E52AFB
|
||||
:181428009031E5219031D5CD411AE1CD07102BCD9A0BC24207E1229027
|
||||
:1814400031E1229231E1228E31E1C9E52A0C31237CB5E1C01E16C356A3
|
||||
:1814580007CD100AA73E80327B31B647CD0212C30A10CD0A10CD8E1B33
|
||||
:18147000CD9E14CD2316017E16C57E2323E5CDF914E14E2346CD9214F7
|
||||
:18148800E56FCD1616D1C9CDF914216F31E5772323732372E1C92B0645
|
||||
:1814A0002250E50EFF237E0CB7CAB414BACAB414B8C2A514FE22CC9AD5
|
||||
:1814B8000BE323EB79CD9214116F312A61312294313E01325D31CD44D0
|
||||
:1814D0001ACD0A0A226131E17EC01E1EC3560723CD9E14CD2316CD382D
|
||||
:1814E8001A1C1DC80ACD1B0AFE0DCC4C0E03C3EA14B70EF1F52A0A31D0
|
||||
:18150000EB2A73312F4F06FF0923CD0A0ADA171522733123EBF1C9F105
|
||||
:181518001E1ACA5607BFF501FB14C52A5F31227331210000E52A0A31E8
|
||||
:18153000E5216331EB2A6131EBCD0A0A013415C288152A8631EB2A886F
|
||||
:1815480031EBCD0A0ACA5B157E2323B7CD8B15C34515C1EB2A8A31EBD3
|
||||
:18156000CD0A0ACAB115CD381A7BE509B7F25A15227531E14E0600095C
|
||||
:181578000923EB2A7531EBCD0A0ACA5B15017A15C5F6807E23235E235E
|
||||
:181590005623F0B7C8444D2A7331CD0A0A6069D8E1E3CD0A0AE3E560AD
|
||||
:1815A80069D0C1F1F1E5D5C5C9D1E17DB4C82B462B4EE52B2B6E2600A3
|
||||
:1815C0000950592B444D2A7331CD1107E171237069602BC32615C5E571
|
||||
:1815D8002A9431E3CD9010E3CD0B107EE52A9431E5861E1CDA5607CDF6
|
||||
:1815F0008F14D1CD2716E3CD2616E52A7131EBCD0D16CD0D16212510A7
|
||||
:18160800E3E5C3C014E1E37E23234E23466F2C2DC80A120313C317167A
|
||||
:18162000CD0B102A9431EBCD4116EBC0D550591B4E2A7331CD0A0AC2C9
|
||||
:181638003F164709227331E1C92A61312B462B4E2B2BCD0A0AC0226165
|
||||
:1816500031C901D113C5CD2016AF57325D317EB7C901D113C5CD561634
|
||||
:18166800CA610C23235E23561AC93E01CD8F14CD6B172A713173C1C372
|
||||
:18168000C014CD1B17AFE34FE57EB8DA901678110E00C5CDF914C1E12B
|
||||
:18169800E5232346236668060009444DCD92146FCD1616D1CD2716C3BF
|
||||
:1816B000C014CD1B17D1D51A90C38616EB7ECD20170405CA610CC51E10
|
||||
:1816C800FFFE29CAD516CD100A2CCD6817CD100A29F1E3018816C53D4B
|
||||
:1816E000BE0600D04F7E91BB47D843C9CD5616CA09185F23237E23664A
|
||||
:1816F8006FE5194672E3C57EFE24C20A17CD341F180DFE25C21417CD68
|
||||
:18171000A41F1803CDF01AC1E170C9EBCD100A29C1D1C543C9CD6B1784
|
||||
:1817280032EF30CDEE30C3D113CD5517C3B630CD5517F51E002BCD9A06
|
||||
:181740000BCA4B17CD100A2CCD6817C1CDEE30ABA0CA4C17C9CD6817C2
|
||||
:1817580032EF3032B730CD100A2CC36817CD9A0BCD0710CD460C7AB714
|
||||
:18177000C2610C2BCD9A0B7BC9CD4C0C1AC3D113CD0710CD4C0CD5CDC0
|
||||
:18178800100A2CCD6817D112C921671CCD381AC3A317CD381A21C1D1F9
|
||||
:1817A000CD121A78B7C83A9731B7CA2A1A90D2BD172F3CEBCD1A1AEB02
|
||||
:1817B800CD2A1AC1D1FE19D0F5CD4F1A67F1CD6818B4219431F2E31739
|
||||
:1817D000CD4818D229182334CA51072E01CD7E18C32918AF90477E9B13
|
||||
:1817E8005F237E9A57237E994FDC54186863AF4779B7C216184A546543
|
||||
:181800006F78D608FEE0C2F717AF329731C905297A1757798F4FF20E7E
|
||||
:1818180018785C45B7CA29182197318677D20918C878219731B7FC3BD5
|
||||
:181830001846237EE680A94FC32A1A1CC014C00CC00E8034C0C3510723
|
||||
:181848007E835F237E8A57237E894FC92198317E2F77AF6F90477D9B49
|
||||
:181860005F7D9A577D994FC90600D608DA7718435A510E00C36A18C621
|
||||
:18187800096FAF2DC8791F4F7A1F577B1F5F781F47C37A1800000081B8
|
||||
:1818900003AA561980F122768045AA3882CDE919B7EA610C2197317EAE
|
||||
:1818A80001358011F30490F570D5C5CDA317C1D104CD3F19218C18CD07
|
||||
:1818C0009A17219018CD311D018080110000CDA317F1CD641B013180F3
|
||||
:1818D80011187221C1D1CDE919C82E00CDA7197932A631EB22A73101F0
|
||||
:1818F0000000505821F417E5210019E5E52194317E23B7CA2C19E52EC3
|
||||
:18190800081F6779D21A19E52AA73119EBE13AA631891F4F7A1F577B7C
|
||||
:181920001F5F781F472D7CC20919E1C9435A514FC9CD1A1A012084115F
|
||||
:181938000000CD2A1AC1D1CDE919CA45072EFFCDA71934342B7E32C250
|
||||
:18195000302B7E32BE302B7E32BA3041EBAF4F575F32C530E5C57DCDC6
|
||||
:18196800B930DE003FD2771932C530F1F137D2C1E1793C3D1FFA2A18FE
|
||||
:18198000177B175F7A175779174F297817473AC5301732C53079B2B336
|
||||
:18199800C26419E521973135E1C26419C3510778B7CACB197D21973177
|
||||
:1819B000AE80471FA878F2CA19C68077CA2A19CD4F1A772BC9CDE9195C
|
||||
:1819C8002FE1B7E1F20918C35107CD351A78B7C8C602DA510747CDA36D
|
||||
:1819E0001721973134C0C351073A9731B7C83A9631FE2F179FC03CC9B6
|
||||
:1819F800CDE91906881100002197314F70060023368017C3F117CDE94A
|
||||
:181A100019F02196317EEE8077C9EB2A9431E3E52A9631E3E5EBC9CDC5
|
||||
:181A2800381AEB2294316069229631EBC92194315E2356234E23462362
|
||||
:181A4000C911943106041A77132305C2461AC92196317E07371F773FB5
|
||||
:181A58001F2323777907371F4F1FAEC978B7CAE91921F219E5CDE91904
|
||||
:181A700079C8219631AE79F8CD7E1A1FA9C92378BEC02B79BEC02B7A40
|
||||
:181A8800BEC02B7B96C0E1E1C9474F575FB7C8E5CD351ACD4F1AAE672A
|
||||
:181AA000FCB51A3E9890CD68187C17DC3B180600DC5418E1C91B7AA3BE
|
||||
:181AB8003CC00BC92197317EFE983A9431D07ECD911A36987BF57917B6
|
||||
:181AD000CDF117F1C921000078B1C83E1029DA1513EB29EBD2EB1A0905
|
||||
:181AE800DA15133DC2DD1AC9FE2DF5CAFC1AFE2BCAFC1A2BCD091847BC
|
||||
:181B0000575F2F4FCD9A0BDA4D1BFE2ECA281BFE45C22C1BCD9A0BCD21
|
||||
:181B18004011CD9A0BDA6F1B14C22C1BAF935F0C0CCA041BE57B90F4EB
|
||||
:181B3000451BF23B1BF5CD3119F13CC22F1BD1F1CC121AEBC9C8F5CDB8
|
||||
:181B4800D219F13DC9D557788947C5E5D5CDD219F1D630CD641BE1C113
|
||||
:181B6000D1C3041BCD1A1ACDFB19C1D1C3A3177B0707830786D6305FCB
|
||||
:181B7800C31A1BE521DA06CDE014E1EBAF0698CD001A21DF14E5219903
|
||||
:181B900031E5CDE9193620F29C1B362D233630CA521CE5FC121AAFF584
|
||||
:181BA800CD581C01439111F84FCD641AB7E2C91BF1CD461BF5C3AB1B52
|
||||
:181BC000CD3119F13CF5CD581CCD91173CCD911ACD2A1A010603F181DD
|
||||
:181BD8003CFAE51BFE08D2E51B3C473E023D3DE1F5116B1C05C2F61B64
|
||||
:181BF000362E2336302305362ECC3F1AC5E5D5CD351AE1062F047B9679
|
||||
:181C08005F237A9E5723799E4F2B2BD2051CCD481823CD2A1AEBE17064
|
||||
:181C200023C10DC2F61B05CA361C2B7EFE30CA2A1CFE2EC43F1AF1CADC
|
||||
:181C3800551C364523362BF2461C362D2F3C062F04D60AD2481CC63AB3
|
||||
:181C5000237023772371E1C901749411F723CD641AB7E1E2C01BE90054
|
||||
:181C6800000080A08601102700E803006400000A000001000021121ADF
|
||||
:181C8000E3E9CD1A1A21671CCD271AC1D1CDE91978CAD01CF29B1CB7DE
|
||||
:181C9800CA4507B7CA0A18D5C579F67FCD351AF2B81CD5C5CDBC1AC113
|
||||
:181CB000D1F5CD641AE17C1FE1229631E1229431DC7D1CCC121AD5C5F6
|
||||
:181CC800CD9D18C1D1CDDE18CD1A1A013881113BAACDDE183A9731FEB9
|
||||
:181CE00088D2C519CDBC1AC680C602DAC519F5218C18CD9417CDD5185F
|
||||
:181CF800F1C1D1F5CDA017CD121A21101DCD401D110000C14AC3DE1892
|
||||
:181D100008402E9474704F2E776E02887AE6A02A7C50AAAA7EFFFF7F9C
|
||||
:181D28007F0000808100000081CD1A1A11DC18D5E5CD351ACDDE18E122
|
||||
:181D4000CD1A1A7E23CD271A06F1C1D13DC8D5C5F5E5CDDE18E1CD3830
|
||||
:181D58001AE5CDA317E1C3491DCDE91921C930FAC21D21EA30CD271AD8
|
||||
:181D700021C930C886E6070600772387874F09CD381ACDDE183AC830EC
|
||||
:181D88003CE6030600FE018832C83021C61D87874F09CD9417CD351A69
|
||||
:181DA0007B59EE4F4F36802B46368021C730347ED6ABC2B91D770C1573
|
||||
:181DB8001CCDF41721EA30C3411A772B772B77C39D1D68B1466899E945
|
||||
:181DD000926910D1756821201ECD9417CD1A1A01498311DB0FCD2A1A91
|
||||
:181DE800C1D1CD3F19CD1A1ACDBC1AC1D1CDA01721241ECD9A17CDE9DB
|
||||
:181E00001937F20C1ECD9117CDE919B7F5F4121A21241ECD9417F1D4AE
|
||||
:181E1800121A21281EC3311DDB0F49810000007F05BAD71E866426997E
|
||||
:181E30008758342387E05DA586DA0F4983CD1A1ACDDC1DC1E1CD1A1A56
|
||||
:181E4800EBCD2A1ACDD61DC33D19CDE919FC7D1CFC121A3A9731FE81A0
|
||||
:181E6000DA6F1E0100815159CD3F19219A17E521791ECD311D21201EC9
|
||||
:181E7800C9094AD73B78026E847BFEC12F7C74319A7D843D5A7DC87F38
|
||||
:181E9000917EE4BB4C7E6CAAAA7F00000081C9D7C93E0CC3DB1FCD685D
|
||||
:181EA800177B32F230C9CD0710CD4C0CED53F630ED53F830C9CD4C0CAE
|
||||
:181EC000D5E146237EC3C213CD0710CD4C0CD5CD100A2CCD0710CD4CE7
|
||||
:181ED8000CE3732372E1C9CD0A10CD4C0CC52199317AFE00280CCD1705
|
||||
:181EF0001F78FE302802702371237BCD171F7AFE00200578FE302802D9
|
||||
:181F080070237123AF772377C1219931C3701447E60FFE0A3802C6079C
|
||||
:181F2000C6304F780F0F0F0FE60FFE0A3802C607C63047C9EB2100009A
|
||||
:181F3800CD4D1FDA6D1F1805CD4D1F381F29292929B56F18F3131AFE47
|
||||
:181F500020CA4D1FD630D8FE0A3805D607FE0AD8FE103FC9EB7A4BE598
|
||||
:181F6800CDC113E1C91E26C35607CD0A10CD4C0CC52199310611057862
|
||||
:181F8000FE012808CB13CB1230F41804CB13CB123E30CE007723052069
|
||||
:181F9800F3AF772377C1219931C37014EB210000CDC11FDACF1FD63004
|
||||
:181FB00029B56FCDC11F30F6EB7A4BE5CDC113E1C9131AFE20CAC11F24
|
||||
:181FC800FE30D8FE323FC91E28C35607DD21FFFFC3A603C30800C30067
|
||||
:181FE000003E0032FD30C3AD03ED45F5A0C1B83E00C9CD1B0AC3420E8D
|
||||
:00000001FF
|
||||
|
||||
@@ -1,144 +1,144 @@
|
||||
-- megafunction wizard: %ROM: 1-PORT%
|
||||
-- GENERATION: STANDARD
|
||||
-- VERSION: WM1.0
|
||||
-- MODULE: altsyncram
|
||||
|
||||
-- ============================================================
|
||||
-- File Name: Z80_CPM_BASIC_ROM.vhd
|
||||
-- Megafunction Name(s):
|
||||
-- altsyncram
|
||||
--
|
||||
-- Simulation Library Files(s):
|
||||
-- altera_mf
|
||||
-- ============================================================
|
||||
-- ************************************************************
|
||||
-- THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
|
||||
--
|
||||
-- 17.0.0 Build 595 04/25/2017 SJ Lite Edition
|
||||
-- ************************************************************
|
||||
|
||||
|
||||
--Copyright (C) 2017 Intel Corporation. All rights reserved.
|
||||
--Your use of Intel Corporation's design tools, logic functions
|
||||
--and other software and tools, and its AMPP partner logic
|
||||
--functions, and any output files from any of the foregoing
|
||||
--(including device programming or simulation files), and any
|
||||
--associated documentation or information are expressly subject
|
||||
--to the terms and conditions of the Intel Program License
|
||||
--Subscription Agreement, the Intel Quartus Prime License Agreement,
|
||||
--the Intel MegaCore Function License Agreement, or other
|
||||
--applicable license agreement, including, without limitation,
|
||||
--that your use is for the sole purpose of programming logic
|
||||
--devices manufactured by Intel and sold by Intel or its
|
||||
--authorized distributors. Please refer to the applicable
|
||||
--agreement for further details.
|
||||
|
||||
|
||||
LIBRARY ieee;
|
||||
USE ieee.std_logic_1164.all;
|
||||
|
||||
LIBRARY altera_mf;
|
||||
USE altera_mf.altera_mf_components.all;
|
||||
|
||||
ENTITY Z80_CPM_BASIC_ROM IS
|
||||
PORT
|
||||
(
|
||||
address : IN STD_LOGIC_VECTOR (12 DOWNTO 0);
|
||||
clock : IN STD_LOGIC := '1';
|
||||
q : OUT STD_LOGIC_VECTOR (7 DOWNTO 0)
|
||||
);
|
||||
END Z80_CPM_BASIC_ROM;
|
||||
|
||||
|
||||
ARCHITECTURE SYN OF z80_cpm_basic_rom IS
|
||||
|
||||
SIGNAL sub_wire0 : STD_LOGIC_VECTOR (7 DOWNTO 0);
|
||||
|
||||
BEGIN
|
||||
q <= sub_wire0(7 DOWNTO 0);
|
||||
|
||||
altsyncram_component : altsyncram
|
||||
GENERIC MAP (
|
||||
address_aclr_a => "NONE",
|
||||
clock_enable_input_a => "BYPASS",
|
||||
clock_enable_output_a => "BYPASS",
|
||||
init_file => "./ROMS/Z80/BASMON.HEX",
|
||||
intended_device_family => "Cyclone V",
|
||||
lpm_hint => "ENABLE_RUNTIME_MOD=NO",
|
||||
lpm_type => "altsyncram",
|
||||
numwords_a => 8192,
|
||||
operation_mode => "ROM",
|
||||
outdata_aclr_a => "NONE",
|
||||
outdata_reg_a => "UNREGISTERED",
|
||||
widthad_a => 13,
|
||||
width_a => 8,
|
||||
width_byteena_a => 1
|
||||
)
|
||||
PORT MAP (
|
||||
address_a => address,
|
||||
clock0 => clock,
|
||||
q_a => sub_wire0
|
||||
);
|
||||
|
||||
|
||||
|
||||
END SYN;
|
||||
|
||||
-- ============================================================
|
||||
-- CNX file retrieval info
|
||||
-- ============================================================
|
||||
-- Retrieval info: PRIVATE: ADDRESSSTALL_A NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: AclrAddr NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: AclrByte NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: AclrOutput NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: BYTE_ENABLE NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: BYTE_SIZE NUMERIC "8"
|
||||
-- Retrieval info: PRIVATE: BlankMemory NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: CLOCK_ENABLE_INPUT_A NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: CLOCK_ENABLE_OUTPUT_A NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: Clken NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: IMPLEMENT_IN_LES NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: INIT_FILE_LAYOUT STRING "PORT_A"
|
||||
-- Retrieval info: PRIVATE: INIT_TO_SIM_X NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone V"
|
||||
-- Retrieval info: PRIVATE: JTAG_ENABLED NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: JTAG_ID STRING "NONE"
|
||||
-- Retrieval info: PRIVATE: MAXIMUM_DEPTH NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: MIFfilename STRING "./ROMS/Z80/CPM_BASIC.HEX"
|
||||
-- Retrieval info: PRIVATE: NUMWORDS_A NUMERIC "8192"
|
||||
-- Retrieval info: PRIVATE: RAM_BLOCK_TYPE NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: RegAddr NUMERIC "1"
|
||||
-- Retrieval info: PRIVATE: RegOutput NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0"
|
||||
-- Retrieval info: PRIVATE: SingleClock NUMERIC "1"
|
||||
-- Retrieval info: PRIVATE: UseDQRAM NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: WidthAddr NUMERIC "13"
|
||||
-- Retrieval info: PRIVATE: WidthData NUMERIC "8"
|
||||
-- Retrieval info: PRIVATE: rden NUMERIC "0"
|
||||
-- Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all
|
||||
-- Retrieval info: CONSTANT: ADDRESS_ACLR_A STRING "NONE"
|
||||
-- Retrieval info: CONSTANT: CLOCK_ENABLE_INPUT_A STRING "BYPASS"
|
||||
-- Retrieval info: CONSTANT: CLOCK_ENABLE_OUTPUT_A STRING "BYPASS"
|
||||
-- Retrieval info: CONSTANT: INIT_FILE STRING "./ROMS/Z80/CPM_BASIC.HEX"
|
||||
-- Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone V"
|
||||
-- Retrieval info: CONSTANT: LPM_HINT STRING "ENABLE_RUNTIME_MOD=NO"
|
||||
-- Retrieval info: CONSTANT: LPM_TYPE STRING "altsyncram"
|
||||
-- Retrieval info: CONSTANT: NUMWORDS_A NUMERIC "8192"
|
||||
-- Retrieval info: CONSTANT: OPERATION_MODE STRING "ROM"
|
||||
-- Retrieval info: CONSTANT: OUTDATA_ACLR_A STRING "NONE"
|
||||
-- Retrieval info: CONSTANT: OUTDATA_REG_A STRING "UNREGISTERED"
|
||||
-- Retrieval info: CONSTANT: WIDTHAD_A NUMERIC "13"
|
||||
-- Retrieval info: CONSTANT: WIDTH_A NUMERIC "8"
|
||||
-- Retrieval info: CONSTANT: WIDTH_BYTEENA_A NUMERIC "1"
|
||||
-- Retrieval info: USED_PORT: address 0 0 13 0 INPUT NODEFVAL "address[12..0]"
|
||||
-- Retrieval info: USED_PORT: clock 0 0 0 0 INPUT VCC "clock"
|
||||
-- Retrieval info: USED_PORT: q 0 0 8 0 OUTPUT NODEFVAL "q[7..0]"
|
||||
-- Retrieval info: CONNECT: @address_a 0 0 13 0 address 0 0 13 0
|
||||
-- Retrieval info: CONNECT: @clock0 0 0 0 0 clock 0 0 0 0
|
||||
-- Retrieval info: CONNECT: q 0 0 8 0 @q_a 0 0 8 0
|
||||
-- Retrieval info: GEN_FILE: TYPE_NORMAL Z80_CPM_BASIC_ROM.vhd TRUE
|
||||
-- Retrieval info: GEN_FILE: TYPE_NORMAL Z80_CPM_BASIC_ROM.inc FALSE
|
||||
-- Retrieval info: GEN_FILE: TYPE_NORMAL Z80_CPM_BASIC_ROM.cmp TRUE
|
||||
-- Retrieval info: GEN_FILE: TYPE_NORMAL Z80_CPM_BASIC_ROM.bsf FALSE
|
||||
-- Retrieval info: GEN_FILE: TYPE_NORMAL Z80_CPM_BASIC_ROM_inst.vhd FALSE
|
||||
-- Retrieval info: LIB_FILE: altera_mf
|
||||
-- megafunction wizard: %ROM: 1-PORT%
|
||||
-- GENERATION: STANDARD
|
||||
-- VERSION: WM1.0
|
||||
-- MODULE: altsyncram
|
||||
|
||||
-- ============================================================
|
||||
-- File Name: Z80_CPM_BASIC_ROM.vhd
|
||||
-- Megafunction Name(s):
|
||||
-- altsyncram
|
||||
--
|
||||
-- Simulation Library Files(s):
|
||||
-- altera_mf
|
||||
-- ============================================================
|
||||
-- ************************************************************
|
||||
-- THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
|
||||
--
|
||||
-- 17.0.0 Build 595 04/25/2017 SJ Lite Edition
|
||||
-- ************************************************************
|
||||
|
||||
|
||||
--Copyright (C) 2017 Intel Corporation. All rights reserved.
|
||||
--Your use of Intel Corporation's design tools, logic functions
|
||||
--and other software and tools, and its AMPP partner logic
|
||||
--functions, and any output files from any of the foregoing
|
||||
--(including device programming or simulation files), and any
|
||||
--associated documentation or information are expressly subject
|
||||
--to the terms and conditions of the Intel Program License
|
||||
--Subscription Agreement, the Intel Quartus Prime License Agreement,
|
||||
--the Intel MegaCore Function License Agreement, or other
|
||||
--applicable license agreement, including, without limitation,
|
||||
--that your use is for the sole purpose of programming logic
|
||||
--devices manufactured by Intel and sold by Intel or its
|
||||
--authorized distributors. Please refer to the applicable
|
||||
--agreement for further details.
|
||||
|
||||
|
||||
LIBRARY ieee;
|
||||
USE ieee.std_logic_1164.all;
|
||||
|
||||
LIBRARY altera_mf;
|
||||
USE altera_mf.altera_mf_components.all;
|
||||
|
||||
ENTITY Z80_CPM_BASIC_ROM IS
|
||||
PORT
|
||||
(
|
||||
address : IN STD_LOGIC_VECTOR (12 DOWNTO 0);
|
||||
clock : IN STD_LOGIC := '1';
|
||||
q : OUT STD_LOGIC_VECTOR (7 DOWNTO 0)
|
||||
);
|
||||
END Z80_CPM_BASIC_ROM;
|
||||
|
||||
|
||||
ARCHITECTURE SYN OF z80_cpm_basic_rom IS
|
||||
|
||||
SIGNAL sub_wire0 : STD_LOGIC_VECTOR (7 DOWNTO 0);
|
||||
|
||||
BEGIN
|
||||
q <= sub_wire0(7 DOWNTO 0);
|
||||
|
||||
altsyncram_component : altsyncram
|
||||
GENERIC MAP (
|
||||
address_aclr_a => "NONE",
|
||||
clock_enable_input_a => "BYPASS",
|
||||
clock_enable_output_a => "BYPASS",
|
||||
init_file => "./ROMS/Z80/intMon.hex",
|
||||
intended_device_family => "Cyclone V",
|
||||
lpm_hint => "ENABLE_RUNTIME_MOD=NO",
|
||||
lpm_type => "altsyncram",
|
||||
numwords_a => 8192,
|
||||
operation_mode => "ROM",
|
||||
outdata_aclr_a => "NONE",
|
||||
outdata_reg_a => "UNREGISTERED",
|
||||
widthad_a => 13,
|
||||
width_a => 8,
|
||||
width_byteena_a => 1
|
||||
)
|
||||
PORT MAP (
|
||||
address_a => address,
|
||||
clock0 => clock,
|
||||
q_a => sub_wire0
|
||||
);
|
||||
|
||||
|
||||
|
||||
END SYN;
|
||||
|
||||
-- ============================================================
|
||||
-- CNX file retrieval info
|
||||
-- ============================================================
|
||||
-- Retrieval info: PRIVATE: ADDRESSSTALL_A NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: AclrAddr NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: AclrByte NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: AclrOutput NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: BYTE_ENABLE NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: BYTE_SIZE NUMERIC "8"
|
||||
-- Retrieval info: PRIVATE: BlankMemory NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: CLOCK_ENABLE_INPUT_A NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: CLOCK_ENABLE_OUTPUT_A NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: Clken NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: IMPLEMENT_IN_LES NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: INIT_FILE_LAYOUT STRING "PORT_A"
|
||||
-- Retrieval info: PRIVATE: INIT_TO_SIM_X NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone V"
|
||||
-- Retrieval info: PRIVATE: JTAG_ENABLED NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: JTAG_ID STRING "NONE"
|
||||
-- Retrieval info: PRIVATE: MAXIMUM_DEPTH NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: MIFfilename STRING "./ROMS/Z80/CPM_BASIC.HEX"
|
||||
-- Retrieval info: PRIVATE: NUMWORDS_A NUMERIC "8192"
|
||||
-- Retrieval info: PRIVATE: RAM_BLOCK_TYPE NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: RegAddr NUMERIC "1"
|
||||
-- Retrieval info: PRIVATE: RegOutput NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0"
|
||||
-- Retrieval info: PRIVATE: SingleClock NUMERIC "1"
|
||||
-- Retrieval info: PRIVATE: UseDQRAM NUMERIC "0"
|
||||
-- Retrieval info: PRIVATE: WidthAddr NUMERIC "13"
|
||||
-- Retrieval info: PRIVATE: WidthData NUMERIC "8"
|
||||
-- Retrieval info: PRIVATE: rden NUMERIC "0"
|
||||
-- Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all
|
||||
-- Retrieval info: CONSTANT: ADDRESS_ACLR_A STRING "NONE"
|
||||
-- Retrieval info: CONSTANT: CLOCK_ENABLE_INPUT_A STRING "BYPASS"
|
||||
-- Retrieval info: CONSTANT: CLOCK_ENABLE_OUTPUT_A STRING "BYPASS"
|
||||
-- Retrieval info: CONSTANT: INIT_FILE STRING "./ROMS/Z80/CPM_BASIC.HEX"
|
||||
-- Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone V"
|
||||
-- Retrieval info: CONSTANT: LPM_HINT STRING "ENABLE_RUNTIME_MOD=NO"
|
||||
-- Retrieval info: CONSTANT: LPM_TYPE STRING "altsyncram"
|
||||
-- Retrieval info: CONSTANT: NUMWORDS_A NUMERIC "8192"
|
||||
-- Retrieval info: CONSTANT: OPERATION_MODE STRING "ROM"
|
||||
-- Retrieval info: CONSTANT: OUTDATA_ACLR_A STRING "NONE"
|
||||
-- Retrieval info: CONSTANT: OUTDATA_REG_A STRING "UNREGISTERED"
|
||||
-- Retrieval info: CONSTANT: WIDTHAD_A NUMERIC "13"
|
||||
-- Retrieval info: CONSTANT: WIDTH_A NUMERIC "8"
|
||||
-- Retrieval info: CONSTANT: WIDTH_BYTEENA_A NUMERIC "1"
|
||||
-- Retrieval info: USED_PORT: address 0 0 13 0 INPUT NODEFVAL "address[12..0]"
|
||||
-- Retrieval info: USED_PORT: clock 0 0 0 0 INPUT VCC "clock"
|
||||
-- Retrieval info: USED_PORT: q 0 0 8 0 OUTPUT NODEFVAL "q[7..0]"
|
||||
-- Retrieval info: CONNECT: @address_a 0 0 13 0 address 0 0 13 0
|
||||
-- Retrieval info: CONNECT: @clock0 0 0 0 0 clock 0 0 0 0
|
||||
-- Retrieval info: CONNECT: q 0 0 8 0 @q_a 0 0 8 0
|
||||
-- Retrieval info: GEN_FILE: TYPE_NORMAL Z80_CPM_BASIC_ROM.vhd TRUE
|
||||
-- Retrieval info: GEN_FILE: TYPE_NORMAL Z80_CPM_BASIC_ROM.inc FALSE
|
||||
-- Retrieval info: GEN_FILE: TYPE_NORMAL Z80_CPM_BASIC_ROM.cmp TRUE
|
||||
-- Retrieval info: GEN_FILE: TYPE_NORMAL Z80_CPM_BASIC_ROM.bsf FALSE
|
||||
-- Retrieval info: GEN_FILE: TYPE_NORMAL Z80_CPM_BASIC_ROM_inst.vhd FALSE
|
||||
-- Retrieval info: LIB_FILE: altera_mf
|
||||
|
||||
341
ROMS/Z80/intMon.hex
Normal file
341
ROMS/Z80/intMon.hex
Normal file
@@ -0,0 +1,341 @@
|
||||
:0430060000000000C6
|
||||
:18000000F3C3A40000000000C332000000000000C31B000000000000BB
|
||||
:18001800C36C003A0030FE002008CD730028FBDB81C9CD7A0028FBDB44
|
||||
:1800300083C9F53A0030FE00200D1801F5CD600028FBF1D381C9F5CDB4
|
||||
:18004800660028FBF1D383C9F5CD66002004F1E600C9F1D383F6FFC916
|
||||
:18006000DB800FCB47C9DB820FCB47C93A0030FE002007DB80E601FE2D
|
||||
:1800780000C9DB82E601FE00C9D7FE0A28FBFE1B20023E03C9FE0D2822
|
||||
:180090000AFE0C2804FE203801CFC93E0DCF3E0ACF3E0DC9312A303E1B
|
||||
:1800A80095D380D3823E00320030210E03CD3701210E032204302A0476
|
||||
:1800C000307EB7280CCD5000280723220430C3BE00CD7300280F3E0094
|
||||
:1800D800320030CD1B00FE20C2D1001812CD7A0028D43E01320030CD3A
|
||||
:1800F0001B00FE20C2BE003E0CCD3C00CD5000CD3E01219C02CD3701FF
|
||||
:18010800210801E5CD3E013E3ECFCD8100FE2038F9FE3ACAB501CD8DCA
|
||||
:1801200000E65FFE49CAF601FE47CAAF01FE58CAFA013E3FCF18D57EE9
|
||||
:18013800B7C8CF2318F93E0DCF3E0ACFC9CD8100FE03C8FE2038F6C907
|
||||
:18015000CD450147CD45014FCD8F014F7B915F79C9210000CDA801FEED
|
||||
:180168000D200E37C9210000CDA801FE0DC8FE2CC8FE0328EE29292956
|
||||
:1801800029D630FE0A3802D607E60F856F18E178D630FE0A3802D6079A
|
||||
:18019800070707074779D630FE0A3802D60780C9CD8100CD8D00C9CDC7
|
||||
:1801B0006101D8E5C91E00CD500157CD500167CD50016FCD5001FE018D
|
||||
:1801C8002009CD50017BA7281E18157AA7280BCD500177233E2ECF15E7
|
||||
:1801E00018F1CD50017BA7C821FD02CD3701C9213403CD3701C9C33FE0
|
||||
:1801F80003C9210C02CD3701CD4501C8E65FFE59CA2A02C90D0A426FF1
|
||||
:180210006F742043502F4D3F000D0A4C6F6164696E672043502F4D0D74
|
||||
:180228000A00211902CD370106183E0032063032073032083032093071
|
||||
:180240002100D0220230CD74021100022A0230192202303A06303C3264
|
||||
:18025800063010EA3A0030F52AFEFFE93A0830D38C3A0730D38B3A060F
|
||||
:1802700030D38AC9F5C5E5DB89FE8020FACD64023E00D3890E04068020
|
||||
:18028800DB89FEE020FADB8877230520F30D20EEE1C1F1C943502F4D67
|
||||
:1802A00020426F6F7420524F4D20322E300D0A492D5374727420496EC3
|
||||
:1802B8007472700D0A582D426F6F742043502F4D0D0A3A6E6E6E6E2D43
|
||||
:1802D0004C6F6164204920726372640D0A476E6E6E6E2D52206C6F636F
|
||||
:1802E8000D0A000D0A436F6C64206F72207761726D3F0D0A0043686510
|
||||
:18030000636B73756D206572726F720D0A000C5072657373205B7370EA
|
||||
:180318006163655D20746F20616374697661746520636F6E736F6C65C0
|
||||
:180330002E0D0A00436F6D706C6574650D0A0021EB02CD3701CD4501FA
|
||||
:18034800C8E65FFE43CA5603FE57CA5903C9C35C03C3FA03DD21000008
|
||||
:18036000C367030D0C831321B030F9C3A21F113406066321B0301A77E5
|
||||
:18037800231305C27603F9CD3508CD030E325A3132A931214904CDA171
|
||||
:1803900014CD5208CD5B0BB7C2B003210D32237CB5CAC2037E472F770D
|
||||
:1803A800BE70CA9E03C3C203CD270CB7C20307EB2B3ED94677BE70C2BF
|
||||
:1803C0008B032B110C32CDCB09DA8B0311CEFF225F3119220A31CD1031
|
||||
:1803D800082A0A3111EFFF1911A9317D936F7C9A67E5211204CDA11403
|
||||
:1803F000E1CD441B210304CDA114311631CD3508C34E072042797465F0
|
||||
:180408007320667265650D0A00005A38302042415349432056657220DF
|
||||
:18042000342E37620D0A436F707972696768742028432920313937384C
|
||||
:18043800206279204D6963726F736F66740D0A00004D656D6F7279202B
|
||||
:18045000746F7000B9197D1ACF19B3306113E6168F13431C221D5E18E7
|
||||
:18046800911C971D9D1DFE1D131E3A177E1E013113162B14AD16221693
|
||||
:180480003316A01E331F431673167D16C54E44C64F52CE455854C44114
|
||||
:180498005441C94E505554C4494DD2454144CC4554C74F544FD2554E1E
|
||||
:1804B000C946D24553544F5245C74F535542D2455455524ED2454DD3EA
|
||||
:1804C800544F50CF5554CF4ECE554C4CD7414954C44546D04F4B45C462
|
||||
:1804E0004F4B45D3435245454ECC494E4553C34C53D749445448CD4F6C
|
||||
:1804F8004E49544F52D34554D245534554D052494E54C34F4E54CC491B
|
||||
:180510005354C34C454152C34C4F4144C353415645CE4557D441422887
|
||||
:18052800D44FC64ED3504328D448454ECE4F54D3544550ABADAAAFDE8B
|
||||
:18054000C14E44CF52BEBDBCD3474EC94E54C14253D55352C65245C92F
|
||||
:180558004E50D04F53D35152D24E44CC4F47C55850C34F53D3494ED42F
|
||||
:18057000414EC1544ED045454BC445454BD04F494E54CC454ED3545261
|
||||
:1805880024D6414CC15343C3485224C8455824C2494E24CC4546542427
|
||||
:1805A000D24947485424CD49442480A50BA20A7D0FF20C840EB911B32E
|
||||
:1805B8000E090DAF0C920C810D6B0B9E0CCD0CF40CA30BF216630DE41D
|
||||
:1805D0000BF81697134117891EF40C6F1E621E671E9F1F04310731A5EF
|
||||
:1805E8000DD10B170A4C0CF40CF40C0F08792B1B795F177C9D187CFE29
|
||||
:18060000187F4C1C5012114611114E46534E52474F4446434F564F4DDD
|
||||
:18061800554C425344442F304944544D4F534C535354434E55464D4FCF
|
||||
:180630004858424EC3FA03C3220CD300C9D6006F7CDE006778DE004792
|
||||
:180648003E00C9000000354ACA99391C76982295B3980ADD479853D162
|
||||
:1806600099990A1A9F9865BCCD98D6773E9852C74F80DB00C901FF1CA4
|
||||
:1806780000001400140000000000C34809C30000C30000C300000D32A6
|
||||
:18069000FEFFAA31204572726F720020696E20004F6B0D0A00004272B4
|
||||
:1806A80065616B00210400397E23FE81C04E234623E569607AB3EBCA61
|
||||
:1806C000C606EBCDCB09010D00E1C809C3B006CDE906C5E3C1CDCB09CB
|
||||
:1806D8007E02C80B2BC3D506E52A8A31060009093EE53ED0956F3EFF9A
|
||||
:1806F0009CDAF8066739E1D81E0CC317072A7931220C311E02011E1494
|
||||
:18070800011E00011E12011E22011E0A011E18CD350832F530CDF60DB7
|
||||
:18072000210A06573E3FCDDC09197ECDDC09CD5B0BCDDC09219406CD54
|
||||
:18073800A1142A0C3111FEFFCDCB09CA67037CA53CC43C1B3EC1AF3252
|
||||
:18075000F530CDF60D21A006CDA11421FFFF220C31CD4809DA5B07CDAE
|
||||
:180768005B0B3C3DCA5B07F5CD270CD5CD5F0847D1F1D23B0BD5C5AF06
|
||||
:18078000327C31CD5B0BB7F5CDEF07DA9407F1F5CAC80CB7C5D2AB07E7
|
||||
:18079800EB2A86311A020313CDCB09C29C076069228631D1F1CAD2073E
|
||||
:1807B0002A8631E3C109E5CDCF06E1228631EB74D123237323722311B0
|
||||
:1807C80011311A772313B7C2CA07CD1B0823EB626B7E23B6CA5B072355
|
||||
:1807E0002323AFBE23C2E307EB732372C3D7072A0E31444D7E23B62B6F
|
||||
:1807F800C823237E23666FCDCB0960697E23666F3FC83FD0C3F207C0F3
|
||||
:180810002A0E31AF772377232286312A0E312B227E312A5F31227331C6
|
||||
:18082800AFCD6B0B2A8631228831228A31C12A0A31F9216331226131A5
|
||||
:18084000AF6F67228431327B31228E31E5C52A7E31C93E3FCDDC093ECC
|
||||
:1808580020CDDC09C3FE30AF325E310E051111317EFE20CAE70847FE55
|
||||
:1808700022CA0709B7CA0E093A5E31B77EC2E708FE3F3E9ECAE7087EDD
|
||||
:18088800FE30DA9208FE3CDAE708D5118B04C501E308C5067F7EFE6166
|
||||
:1808A000DAAB08FE7BD2AB08E65F774EEB23B6F2AD08047EE67FC8B9D8
|
||||
:1808B800C2AD08EBE5131AB7FADF084F78FE88C2CE08CD5B0B2B237E38
|
||||
:1808D000FE61DAD708E65FB9CABD08E1C3AB0848F1EBC9EB79C1D1230E
|
||||
:1808E80012130CD63ACAF508FE49C2F808325E31D654C26808477EB74E
|
||||
:18090000CA0E09B8CAE70823120C13C3FE082110311213121312C93AAF
|
||||
:18091800F430B73E0032F430C22B0905CA4809CDDC093E052BCA3F0910
|
||||
:180930007ECDDC09C35109052BCDDC09C25109CDDC09CD030EC34809C0
|
||||
:180948002111310601AF32F430CD060A4FFE7FCA17093AF430B7CA6A4C
|
||||
:18096000093E00CDDC09AF32F43079FE07CAAE09FE03CC030E37C8FEA7
|
||||
:180978000DCAFE0DFE15CA4209FE40CA3F09FE5FCA3709FE08CA370996
|
||||
:18099000FE12C2A909C5D5E53600CDB31F211131CDA114E1D1C1C3510B
|
||||
:1809A80009FE20DA510978FE493E07D2C3097971327C312304CDDC0998
|
||||
:1809C000C35109CDDC093E08C3BD097C92C07D93C97EE3BE23E3CA5B90
|
||||
:1809D8000BC30307F53AF530B7C2D614F1C5F5FE20DA000A3AF2304728
|
||||
:1809F0003A5B3104CAFC0905B8CC030E3C325B31F1C1CD9C1FC9CD6092
|
||||
:180A08001EE67FFE0FC03AF5302F32F530AFC9CD270CC0C1CDEF07C520
|
||||
:180A2000CD6D0AE14E23462378B1CA4E07CD760ACD860BC5CD030E5ECB
|
||||
:180A3800235623E5EBCD441B3E20E1CDDC097EB723CA230AF2430AD6B9
|
||||
:180A50007F4F118C041A13B7F2550A0DC2550AE67FCDDC091A13B7F2CF
|
||||
:180A68005F0AC3460AE52AF83022F630E1C9E5D52AF63011FFFFED5A71
|
||||
:180A800022F630D1E1F0E52AF83022F630CD601EFE03CA990AE1C37622
|
||||
:180A98000A2AF83022F630C3FD033E64327B31CD090DC1E5CDF20C22E9
|
||||
:180AB000773121020039CDB006D1C2D20A09D52B562B5E2323E52A7784
|
||||
:180AC80031CDCB09E1C2B60AD1F9EB0E08CDE006E52A7731E3E52A0CAE
|
||||
:180AE00031E3CDCB0FCDD109A6CDC80FE5CDF619E1C5D5010081515AE9
|
||||
:180AF8007EFEAB3E01C20E0BCD5B0BCDC80FE5CDF619CDAA19E1C5D502
|
||||
:180B1000F533E52A7E31E30681C533CD860B227E317EFE3ACA3B0BB7D9
|
||||
:180B2800C20307237E23B6CAAD0B235E2356EB220C31EBCD5B0B111B5F
|
||||
:180B40000BD5C8D680DA090DFE25D20307074F0600EB21AB05094E231E
|
||||
:180B580046C5EB237EFE3AD0FE20CA5B0BFE303F3C3DC9EB2A0E31CACB
|
||||
:180B7000800BEBCD270CE5CDEF076069D1D2C80C2B228C31EBC9DFC8AA
|
||||
:180B8800D7FE1B2811FE03280DFE13C0D7FE11C8FE03280718F63EFFFC
|
||||
:180BA00032FD30C0F6C0227E3121F6FFC12A0C31F57DA43CCAC00B2250
|
||||
:180BB80082312A7E31228431AF32F530CDF60DF121A606C23707C34E1D
|
||||
:180BD000072A84317CB51E20CA1707EB2A8231220C31EBC9CD2917C028
|
||||
:180BE80032F130C9E52AFA3006004F0922FA30E1C97EFE41D8FE5B3F1F
|
||||
:180C0000C9CD5B0BCDC80FCDAA19FA220C3A9731FE90DA521A0180909D
|
||||
:180C1800110000E5CD251AE151C81E08C317072B110000CD5B0BD0E59D
|
||||
:180C3000F5219819CDCB09DA0307626B19291929F1D6305F160019EB9F
|
||||
:180C4800E1C32B0CCA1F08CD040C2BCD5B0BE52A5F31CA6F0CE1CDD12A
|
||||
:180C6000092CD5CD040C2BCD5B0BC20307E3EB7D935F7C9A57DAF806E9
|
||||
:180C7800E52A863101280009CDCB09D2F806EB220A31E1225F31E1C37C
|
||||
:180C90001F08CA1B08CD1F08011B0BC3AE0C0E03CDE006C1E5E52A0C1B
|
||||
:180CA80031E33E8CF533C5CD270CCDF40CE52A0C31CDCB09E123DCF2DD
|
||||
:180CC00007D4EF0760692BD81E0EC31707C016FFCDAC06F9FE8C1E0479
|
||||
:180CD800C21707E1220C31237CB5C2EC0C3A7C31B7C24D07211B0BE3F8
|
||||
:180CF0003EE1013A0E0006007948477EB7C8B8C823FE22CAF80CC3FB2A
|
||||
:180D08000CCDBE11CDD109B4D53A5D31F5CDDA0FF1E3227E311FCDCD2A
|
||||
:180D20000FCA5C0DE52A9431E523235E23562A0E31CDCB09D24B0D2A45
|
||||
:180D38000A31CDCB09D1D2530D216F31CDCB09D2530D3ED1CD0216EB51
|
||||
:180D5000CD3B14CD0216E1CD051AE1C9E5CD021AD1E1C9CD29177E47F8
|
||||
:180D6800FE8CCA720DCDD109882B4B0D78CA430BCD280CFE2CC0C3733D
|
||||
:180D80000DCDDA0F7EFE88CA8F0DCDD109A92BCDCB0FCDAA19CAF40CB2
|
||||
:180D9800CD5B0BDAAF0CC3420B2BCD5B0BCA030EC8FEA5CA360EFEA813
|
||||
:180DB000CA360EE5FE2CCA1F0EFE3BCA590EC1CDDA0FE53A5D31B7C210
|
||||
:180DC800EF0DCD4F1BCD5F1436202A9431342A94313AF2304704CAEBDC
|
||||
:180DE0000D043A5B31863DB8D4030ECDA414AFC4A414E1C3A10D3A5B2D
|
||||
:180DF80031B7C8C3030E36002110313E0DCDDC093E0ACDDC09AF325B94
|
||||
:180E1000313AF1303DC8F5AFCDDC09F1C3140E3AF330473A5B31B8D417
|
||||
:180E2800030ED2590ED60ED22D0E2FC34E0EF5CD2617CDD109292BF13E
|
||||
:180E4000D6A8E5CA490E3A5B312F83D2590E3C473E20CDDC0905C252B9
|
||||
:180E58000EE1CD5B0BC3A80D3F5265646F2066726F6D207374617274FD
|
||||
:180E70000D0A003A7D31B7C2FD06C121600ECDA114C34E08CD0C147E99
|
||||
:180E8800FE223E0032F530C29E0ECD6014CDD1093BE5CDA4143EE5CDB2
|
||||
:180EA0005208C1DAAA0B237EB72BC5CAF10C362CC3B80EE52A8C31F6D4
|
||||
:180EB800AF327D31E3C3C40ECDD1092CCDBE11E3D57EFE2CCAEC0E3A4E
|
||||
:180ED0007D31B7C2590F3E3FCDDC09CD5208D1C1DAAA0B237EB72BC5BC
|
||||
:180EE800CAF10CD53A5D31B7CA160FCD5B0B5747FE22CA0A0F3A7D312C
|
||||
:180F0000B757CA070F163A062C2BCD6314EB21210FE3D5C3240DCD5BEA
|
||||
:180F18000BCDB11AE3CD021AE12BCD5B0BCA2D0FFE2CC2730EE32BCDC5
|
||||
:180F30005B0BC2C00ED13A7D31B7EBC2810BD5B621480FC4A114E1C9E4
|
||||
:180F48003F45787472612069676E6F7265640D0A00CDF20CB7C2720F6A
|
||||
:180F6000237E23B61E06CA1707235E2356EB227931EBCD5B0BFE83C2E1
|
||||
:180F7800590FC3EC0E110000C4BE11227E31CDAC06C20907F9D57E2307
|
||||
:180F9000F5D5CDE819E3E5CD5517E1CD021AE1CDF919E5CD251AE1C193
|
||||
:180FA80090CDF919CAB80FEB220C316960C3170BF92A7E317EFE2CC2FD
|
||||
:180FC0001B0BCD5B0BCD800FCDDA0FF6373A5D318FB7E8C31507CDD10E
|
||||
:180FD80009282B1600D50E01CDE006CD51102280312A8031C178FE786D
|
||||
:180FF000D4CB0F7E1600D6B3DA1210FE03D21210FE0117AABA57DA037F
|
||||
:1810080007227531CD5B0BC3F60F7AB7C239117E227531D6ACD8FE0724
|
||||
:18102000D05F3A5D313DB37BCA971507835F21F505197856BAD023CD7B
|
||||
:18103800CB0FC501E90FC5434ACDDB1958514E234623C52A7531C3DD3D
|
||||
:181050000FAF325D31CD5B0B1E24CA1707DAB11ACDF90BD2B810FE2679
|
||||
:181068002012CD5B0BFE48CAF51EFE42CA651F1E02CA1707FEACCA518D
|
||||
:1810800010FE2ECAB11AFEADCAA710FE22CA6014FEAACA9911FEA7CA72
|
||||
:18109800C413D6B6D2C910CDD60FCDD10929C9167DCDDD0F2A8031E5DB
|
||||
:1810B000CDD319CDCB0FE1C9CDBE11E5EB2294313A5D31B7CCE819E19E
|
||||
:1810C800C90600074FC5CD5B0B79FE31DAF010CDD60FCDD1092CCDCC53
|
||||
:1810E0000FEB2A9431E3E5EBCD2917EBE3C3F810CD9F10E311B310D5AE
|
||||
:1810F800015404094E236669E915FEADC8FE2DC814FE2BC8FEACC82B38
|
||||
:18111000C9F6AFF5CDCB0FCD0D0CF1EBC1E3EBCDEB19F5CD0D0CF1C10E
|
||||
:1811280079218213C23411A34F78A2E9B34F78B2E9214B113A5D311F0B
|
||||
:181140007A175F166478BAD0C33A104D1179B71FC1D1F5CDCD0F218F91
|
||||
:1811580011E5CA251AAF325D31D5CDE4157E23234E2346D1C5F5CDE8BB
|
||||
:1811700015CDF919F157E17BB2C87AD601D8AFBB3CD0151D0ABE230396
|
||||
:18118800CA77113FC3B5193C8FC1A0C6FF9FC3BC19165ACDDD0FCDCB44
|
||||
:1811A0000FCD0D0C7B2F4F7A2FCD8213C1C3E90F2BCD5B0BC8CDD109F5
|
||||
:1811B8002C01B011C5F6AF325C3146CDF90BDA0307AF4F325D31CD5B27
|
||||
:1811D0000BDADA11CDF90BDAE7114FCD5B0BDADB11CDF90BD2DB11D6E7
|
||||
:1811E80024C2F6113C325D310F814FCD5B0B3A7B313DCAA312F2061248
|
||||
:181200007ED628CA7B12AF327B31E550592A8E31CDCB09119031CAEBD7
|
||||
:18121800182A8831EB2A8631CDCB09CA3912799623C22E12789623CA12
|
||||
:181230006D1223232323C32012E1E3D511BB10CDCB09D1CA7012E3E5AB
|
||||
:18124800C50106002A8A31E509C1E5CDCF06E1228A3160692288312B1A
|
||||
:181260003600CDCB09C25F12D173237223EBE1C9329731219F06229465
|
||||
:1812780031E1C9E52A5C31E357D5C5CD010CC1F1EBE3E5EB3C577EFEDA
|
||||
:181290002CCA8112CDD10929228031E1225C311E00D511E5F52A8831C9
|
||||
:1812A8003E19EB2A8A31EBCDCB09CADB127EB923C2BD127EB8235E23FF
|
||||
:1812C0005623C2A9123A5C31B7C20C07F1444DCAEB1896CA39131E10A4
|
||||
:1812D800C31707110400F1CA220C712370234FCDE00623232275317177
|
||||
:1812F000233A5C311779010B00D2FE12C10371237023F5E5CD961AEB51
|
||||
:18130800E1F13DC2F612F5424BEB19DAF806CDE906228A312B3600CDCF
|
||||
:18132000CB09C21C1303572A75315EEB2909EB2B2B73237223F1DA5DB7
|
||||
:1813380013474F7E2316E15E235623E3F5CDCB09D2D612E5CD961AD1FC
|
||||
:1813500019F13D444DC23E132929C109EB2A8031C92A8A31EB210000FE
|
||||
:18136800393A5D31B7CA7D13CDE415CDE4142A0A31EB2A73317D934F53
|
||||
:181380007C9A41501E00215D31730690C3C1193A5B3147AFC38313CD59
|
||||
:181398001A14CD0C1401F20CC5D5CDD10928CDBE11E5EB2B562B5EE163
|
||||
:1813B000CDCB0FCDD10929CDD109B4444DE3712370C35914CD1A14D5DB
|
||||
:1813C800CD9F10CDCB0FE35E2356237AB3CA0F077E23666FE52A8E31BC
|
||||
:1813E000E3228E312A9231E52A9031E5219031D5CD021AE1CDC80F2B3F
|
||||
:1813F800CD5B0BC20307E1229031E1229231E1228E31E1C9E52A0C319C
|
||||
:18141000237CB5E1C01E16C31707CDD109A73E80327B31B647CDC31132
|
||||
:18142800C3CB0FCDCB0FCD4F1BCD5F14CDE415013F16C57E2323E5CD9A
|
||||
:18144000BA14E14E2346CD5314E56FCDD715D1C9CDBA14216F31E5779B
|
||||
:181458002323732372E1C92B062250E50EFF237E0CB7CA7514BACA753F
|
||||
:1814700014B8C26614FE22CC5B0BE323EB79CD5314116F312A613122DD
|
||||
:1814880094313E01325D31CD051ACDCB09226131E17EC01E1EC317070B
|
||||
:1814A00023CD5F14CDE415CDF9191C1DC80ACDDC09FE0DCC0D0E03C3B7
|
||||
:1814B800AB14B70EF1F52A0A31EB2A73312F4F06FF0923CDCB09DAD892
|
||||
:1814D0001422733123EBF1C9F11E1ACA1707BFF501BC14C52A5F31222B
|
||||
:1814E8007331210000E52A0A31E5216331EB2A6131EBCDCB0901F51406
|
||||
:18150000C249152A8631EB2A8831EBCDCB09CA1C157E2323B7CD4C15D4
|
||||
:18151800C30615C1EB2A8A31EBCDCB09CA7215CDF9197BE509B7F21B63
|
||||
:1815300015227531E14E0600090923EB2A7531EBCDCB09CA1C15013BDE
|
||||
:1815480015C5F6807E23235E235623F0B7C8444D2A7331CDCB09606945
|
||||
:18156000D8E1E3CDCB09E3E56069D0C1F1F1E5D5C5C9D1E17DB4C82B14
|
||||
:18157800462B4EE52B2B6E26000950592B444D2A7331CDD206E1712377
|
||||
:181590007069602BC3E714C5E52A9431E3CD5110E3CDCC0F7EE52A94CB
|
||||
:1815A80031E5861E1CDA1707CD5014D1CDE815E3CDE715E52A7131EB49
|
||||
:1815C000CDCE15CDCE1521E60FE3E5C38114E1E37E23234E23466F2CA3
|
||||
:1815D8002DC80A120313C3D815CDCC0F2A9431EBCD0216EBC0D5505994
|
||||
:1815F0001B4E2A7331CDCB09C200164709227331E1C92A61312B462B1B
|
||||
:181608004E2B2BCDCB09C0226131C9019213C5CDE115AF57325D317ED6
|
||||
:18162000B7C9019213C5CD1716CA220C23235E23561AC93E01CD501465
|
||||
:18163800CD2C172A713173C1C38114CDDC16AFE34FE57EB8DA511678BE
|
||||
:18165000110E00C5CDBA14C1E1E5232346236668060009444DCD53142B
|
||||
:181668006FCDD715D1CDE815C38114CDDC16D1D51A90C34716EB7ECDEA
|
||||
:18168000E1160405CA220CC51EFFFE29CA9616CDD1092CCD2917CDD15D
|
||||
:181698000929F1E3014916C53DBE0600D04F7E91BB47D843C9CD171600
|
||||
:1816B000CACA175F23237E23666FE5194672E3C57EFE24C2CB16CDF5F9
|
||||
:1816C8001E180DFE25C2D516CD651F1803CDB11AC1E170C9EBCDD10986
|
||||
:1816E00029C1D1C543C9CD2C1732EF30CDEE30C39213CD1617C3B6300F
|
||||
:1816F800CD1617F51E002BCD5B0BCA0C17CDD1092CCD2917C1CDEE30F6
|
||||
:18171000ABA0CA0D17C9CD291732EF3032B730CDD1092CC32917CD5B4A
|
||||
:181728000BCDC80FCD070C7AB7C2220C2BCD5B0B7BC9CD0D0C1AC39202
|
||||
:1817400013CDC80FCD0D0CD5CDD1092CCD2917D112C921281CCDF9194F
|
||||
:18175800C36417CDF91921C1D1CDD31978B7C83A9731B7CAEB1990D210
|
||||
:181770007E172F3CEBCDDB19EBCDEB19C1D1FE19D0F5CD101A67F1CD6F
|
||||
:181788002918B4219431F2A417CD0918D2EA172334CA12072E01CD3F8B
|
||||
:1817A00018C3EA17AF90477E9B5F237E9A57237E994FDC15186863AFB9
|
||||
:1817B8004779B7C2D7174A54656F78D608FEE0C2B817AF329731C90544
|
||||
:1817D000297A1757798F4FF2CF17785C45B7CAEA172197318677D2CAA4
|
||||
:1817E80017C878219731B7FCFC1746237EE680A94FC3EB191CC014C027
|
||||
:181800000CC00E8034C0C312077E835F237E8A57237E894FC921983198
|
||||
:181818007E2F77AF6F90477D9B5F7D9A577D994FC90600D608DA38187E
|
||||
:18183000435A510E00C32B18C6096FAF2DC8791F4F7A1F577B1F5F7874
|
||||
:181848001F47C33B180000008103AA561980F122768045AA3882CDAAC6
|
||||
:1818600019B7EA220C2197317E01358011F30490F570D5C5CD6417C1CB
|
||||
:18187800D104CD0019214D18CD5B17215118CDF21C018080110000CD94
|
||||
:181890006417F1CD251B01318011187221C1D1CDAA19C82E00CD6819F3
|
||||
:1818A8007932A631EB22A731010000505821B517E521C118E5E52194CD
|
||||
:1818C000317E23B7CAED18E52E081F6779D2DB18E52AA73119EBE13AD3
|
||||
:1818D800A631891F4F7A1F577B1F5F781F472D7CC2CA18E1C9435A517E
|
||||
:1818F0004FC9CDDB19012084110000CDEB19C1D1CDAA19CA06072EFF5A
|
||||
:18190800CD681934342B7E32C2302B7E32BE302B7E32BA3041EBAF4F8C
|
||||
:18192000575F32C530E5C57DCDB930DE003FD2381932C530F1F137D2A3
|
||||
:18193800C1E1793C3D1FFAEB17177B175F7A175779174F297817473AE0
|
||||
:18195000C5301732C53079B2B3C22519E521973135E1C22519C31207AE
|
||||
:1819680078B7CA8C197D219731AE80471FA878F28B19C68077CAEB188F
|
||||
:18198000CD101A772BC9CDAA192FE1B7E1F2CA17C31207CDF61978B7FB
|
||||
:18199800C8C602DA120747CD641721973134C0C312073A9731B7C83AB1
|
||||
:1819B0009631FE2F179FC03CC9CDAA1906881100002197314F700600D3
|
||||
:1819C80023368017C3B217CDAA19F02196317EEE8077C9EB2A9431E33A
|
||||
:1819E000E52A9631E3E5EBC9CDF919EB2294316069229631EBC92194D1
|
||||
:1819F800315E2356234E234623C911943106041A77132305C2071AC9B1
|
||||
:181A10002196317E07371F773F1F2323777907371F4F1FAEC978B7CAB5
|
||||
:181A2800AA1921B319E5CDAA1979C8219631AE79F8CD3F1A1FA9C9235F
|
||||
:181A400078BEC02B79BEC02B7ABEC02B7B96C0E1E1C9474F575FB7C801
|
||||
:181A5800E5CDF619CD101AAE67FC761A3E9890CD29187C17DCFC170621
|
||||
:181A700000DC1518E1C91B7AA33CC00BC92197317EFE983A9431D07E59
|
||||
:181A8800CD521A36987BF57917CDB217F1C921000078B1C83E1029DA8C
|
||||
:181AA000D612EB29EBD2AC1A09DAD6123DC29E1AC9FE2DF5CABD1AFEA5
|
||||
:181AB8002BCABD1A2BCDCA1747575F2F4FCD5B0BDA0E1BFE2ECAE91AC7
|
||||
:181AD000FE45C2ED1ACD5B0BCD0111CD5B0BDA301B14C2ED1AAF935F0A
|
||||
:181AE8000C0CCAC51AE57B90F4061BF2FC1AF5CDF218F13CC2F01AD182
|
||||
:181B0000F1CCD319EBC9C8F5CD9319F13DC9D557788947C5E5D5CD93F0
|
||||
:181B180019F1D630CD251BE1C1D1C3C51ACDDB19CDBC19C1D1C3641750
|
||||
:181B30007B0707830786D6305FC3DB1AE5219B06CDA114E1EBAF0698A5
|
||||
:181B4800CDC11921A014E5219931E5CDAA193620F25D1B362D23363018
|
||||
:181B6000CA131CE5FCD319AFF5CD191C01439111F84FCD251AB7E28AA5
|
||||
:181B78001BF1CD071BF5C36C1BCDF218F13CF5CD191CCD52173CCD528F
|
||||
:181B90001ACDEB19010603F1813CFAA61BFE08D2A61B3C473E023D3D09
|
||||
:181BA800E1F5112C1C05C2B71B362E2336302305362ECC001AC5E5D57F
|
||||
:181BC000CDF619E1062F047B965F237A9E5723799E4F2B2BD2C61BCDB6
|
||||
:181BD800091823CDEB19EBE17023C10DC2B71B05CAF71B2B7EFE30CA9D
|
||||
:181BF000EB1BFE2EC4001AF1CA161C364523362BF2071C362D2F3C06F8
|
||||
:181C08002F04D60AD2091CC63A237023772371E1C901749411F723CD4E
|
||||
:181C2000251AB7E1E2811BE900000080A08601102700E8030064000041
|
||||
:181C38000A000001000021D319E3E9CDDB1921281CCDE819C1D1CDAAB3
|
||||
:181C50001978CA911CF25C1CB7CA0607B7CACB17D5C579F67FCDF619B5
|
||||
:181C6800F2791CD5C5CD7D1AC1D1F5CD251AE17C1FE1229631E122946F
|
||||
:181C800031DC3E1CCCD319D5C5CD5E18C1D1CD9F18CDDB1901388111AE
|
||||
:181C98003BAACD9F183A9731FE88D28619CD7D1AC680C602DA8619F5F2
|
||||
:181CB000214D18CD5517CD9618F1C1D1F5CD6117CDD31921D11CCD0190
|
||||
:181CC8001D110000C14AC39F1808402E9474704F2E776E02887AE6A077
|
||||
:181CE0002A7C50AAAA7EFFFF7F7F0000808100000081CDDB19119D181F
|
||||
:181CF800D5E5CDF619CD9F18E1CDDB197E23CDE81906F1C1D13DC8D546
|
||||
:181D1000C5F5E5CD9F18E1CDF919E5CD6417E1C30A1DCDAA1921C93036
|
||||
:181D2800FA831D21EA30CDE81921C930C886E6070600772387874F09A5
|
||||
:181D4000CDF919CD9F183AC8303CE6030600FE018832C83021871D87CE
|
||||
:181D5800874F09CD5517CDF6197B59EE4F4F36802B46368021C73034F6
|
||||
:181D70007ED6ABC27A1D770C151CCDB51721EA30C3021A772B772B77E1
|
||||
:181D8800C35E1D68B1466899E9926910D1756821E11DCD5517CDDB19EA
|
||||
:181DA00001498311DB0FCDEB19C1D1CD0019CDDB19CD7D1AC1D1CD6135
|
||||
:181DB8001721E51DCD5B17CDAA1937F2CD1DCD5217CDAA19B7F5F4D3BE
|
||||
:181DD0001921E51DCD5517F1D4D31921E91DC3F21CDB0F498100000029
|
||||
:181DE8007F05BAD71E866426998758342387E05DA586DA0F4983CDDB85
|
||||
:181E000019CD9D1DC1E1CDDB19EBCDEB19CD971DC3FE18CDAA19FC3EE7
|
||||
:181E18001CFCD3193A9731FE81DA301E0100815159CD0019215B17E57B
|
||||
:181E3000213A1ECDF21C21E11DC9094AD73B78026E847BFEC12F7C7434
|
||||
:181E4800319A7D843D5A7DC87F917EE4BB4C7E6CAAAA7F00000081C95A
|
||||
:181E6000D7C93E0CC39C1FCD29177B32F230C9CDC80FCD0D0CED53F69D
|
||||
:181E780030ED53F830C9CD0D0CD5E146237EC38313CDC80FCD0D0CD5B6
|
||||
:181E9000CDD1092CCDC80FCD0D0CE3732372E1C9CDCB0FCD0D0CC521D5
|
||||
:181EA80099317AFE00280CCDD81E78FE302802702371237BCDD81E7A3A
|
||||
:181EC000FE00200578FE30280270237123AF772377C1219931C331147C
|
||||
:181ED80047E60FFE0A3802C607C6304F780F0F0F0FE60FFE0A3802C6B1
|
||||
:181EF00007C63047C9EB210000CD0E1FDA2E1F1805CD0E1F381F2929E0
|
||||
:181F08002929B56F18F3131AFE20CA0E1FD630D8FE0A3805D607FE0AF6
|
||||
:181F2000D8FE103FC9EB7A4BE5CD8213E1C91E26C31707CDCB0FCD0D74
|
||||
:181F38000CC521993106110578FE012808CB13CB1230F41804CB13CB6E
|
||||
:181F5000123E30CE0077230520F3AF772377C1219931C33114EB2100F9
|
||||
:181F680000CD821FDA901FD63029B56FCD821F30F6EB7A4BE5CD82138C
|
||||
:181F8000E1C9131AFE20CA821FFE30D8FE323FC91E28C31707DD21FF87
|
||||
:181F9800FFC36703C30800C300003E0032FD30C36E03ED45F5A0C1B866
|
||||
:091FB0003E00C9CDDC09C3030E9B
|
||||
:00000001FF
|
||||
431
Z80 CPM and bootloader (basmon)/Z80-dis-asm.py
Normal file
431
Z80 CPM and bootloader (basmon)/Z80-dis-asm.py
Normal file
@@ -0,0 +1,431 @@
|
||||
import sys
|
||||
from typing import Dict, List, Tuple
|
||||
|
||||
class Z80Disassembler:
|
||||
def __init__(self):
|
||||
# Complete Z80 instruction set
|
||||
self.instructions = {
|
||||
# 8-bit load group
|
||||
0x40: ("LD B,B", 1),
|
||||
0x41: ("LD B,C", 1),
|
||||
0x42: ("LD B,D", 1),
|
||||
0x43: ("LD B,E", 1),
|
||||
0x44: ("LD B,H", 1),
|
||||
0x45: ("LD B,L", 1),
|
||||
0x46: ("LD B,(HL)", 1),
|
||||
0x47: ("LD B,A", 1),
|
||||
0x48: ("LD C,B", 1),
|
||||
0x49: ("LD C,C", 1),
|
||||
0x4A: ("LD C,D", 1),
|
||||
0x4B: ("LD C,E", 1),
|
||||
0x4C: ("LD C,H", 1),
|
||||
0x4D: ("LD C,L", 1),
|
||||
0x4E: ("LD C,(HL)", 1),
|
||||
0x4F: ("LD C,A", 1),
|
||||
0x50: ("LD D,B", 1),
|
||||
0x51: ("LD D,C", 1),
|
||||
0x52: ("LD D,D", 1),
|
||||
0x53: ("LD D,E", 1),
|
||||
0x54: ("LD D,H", 1),
|
||||
0x55: ("LD D,L", 1),
|
||||
0x56: ("LD D,(HL)", 1),
|
||||
0x57: ("LD D,A", 1),
|
||||
0x58: ("LD E,B", 1),
|
||||
0x59: ("LD E,C", 1),
|
||||
0x5A: ("LD E,D", 1),
|
||||
0x5B: ("LD E,E", 1),
|
||||
0x5C: ("LD E,H", 1),
|
||||
0x5D: ("LD E,L", 1),
|
||||
0x5E: ("LD E,(HL)", 1),
|
||||
0x5F: ("LD E,A", 1),
|
||||
0x60: ("LD H,B", 1),
|
||||
0x61: ("LD H,C", 1),
|
||||
0x62: ("LD H,D", 1),
|
||||
0x63: ("LD H,E", 1),
|
||||
0x64: ("LD H,H", 1),
|
||||
0x65: ("LD H,L", 1),
|
||||
0x66: ("LD H,(HL)", 1),
|
||||
0x67: ("LD H,A", 1),
|
||||
0x68: ("LD L,B", 1),
|
||||
0x69: ("LD L,C", 1),
|
||||
0x6A: ("LD L,D", 1),
|
||||
0x6B: ("LD L,E", 1),
|
||||
0x6C: ("LD L,H", 1),
|
||||
0x6D: ("LD L,L", 1),
|
||||
0x6E: ("LD L,(HL)", 1),
|
||||
0x6F: ("LD L,A", 1),
|
||||
0x70: ("LD (HL),B", 1),
|
||||
0x71: ("LD (HL),C", 1),
|
||||
0x72: ("LD (HL),D", 1),
|
||||
0x73: ("LD (HL),E", 1),
|
||||
0x74: ("LD (HL),H", 1),
|
||||
0x75: ("LD (HL),L", 1),
|
||||
0x76: ("HALT", 1),
|
||||
0x77: ("LD (HL),A", 1),
|
||||
0x78: ("LD A,B", 1),
|
||||
0x79: ("LD A,C", 1),
|
||||
0x7A: ("LD A,D", 1),
|
||||
0x7B: ("LD A,E", 1),
|
||||
0x7C: ("LD A,H", 1),
|
||||
0x7D: ("LD A,L", 1),
|
||||
0x7E: ("LD A,(HL)", 1),
|
||||
0x7F: ("LD A,A", 1),
|
||||
|
||||
# 16-bit load group
|
||||
0x01: ("LD BC,", 3),
|
||||
0x11: ("LD DE,", 3),
|
||||
0x21: ("LD HL,", 3),
|
||||
0x31: ("LD SP,", 3),
|
||||
0x2A: ("LD HL,(", 3),
|
||||
0x22: ("LD (", 3), # LD (nn),HL
|
||||
0xF9: ("LD SP,HL", 1),
|
||||
0xC5: ("PUSH BC", 1),
|
||||
0xD5: ("PUSH DE", 1),
|
||||
0xE5: ("PUSH HL", 1),
|
||||
0xF5: ("PUSH AF", 1),
|
||||
0xC1: ("POP BC", 1),
|
||||
0xD1: ("POP DE", 1),
|
||||
0xE1: ("POP HL", 1),
|
||||
0xF1: ("POP AF", 1),
|
||||
|
||||
# Exchange group
|
||||
0xEB: ("EX DE,HL", 1),
|
||||
0x08: ("EX AF,AF'", 1),
|
||||
0xE3: ("EX (SP),HL", 1),
|
||||
0xD9: ("EXX", 1),
|
||||
|
||||
# 8-bit arithmetic/logical group
|
||||
0x80: ("ADD A,B", 1),
|
||||
0x81: ("ADD A,C", 1),
|
||||
0x82: ("ADD A,D", 1),
|
||||
0x83: ("ADD A,E", 1),
|
||||
0x84: ("ADD A,H", 1),
|
||||
0x85: ("ADD A,L", 1),
|
||||
0x86: ("ADD A,(HL)", 1),
|
||||
0x87: ("ADD A,A", 1),
|
||||
0x88: ("ADC A,B", 1),
|
||||
0x89: ("ADC A,C", 1),
|
||||
0x8A: ("ADC A,D", 1),
|
||||
0x8B: ("ADC A,E", 1),
|
||||
0x8C: ("ADC A,H", 1),
|
||||
0x8D: ("ADC A,L", 1),
|
||||
0x8E: ("ADC A,(HL)", 1),
|
||||
0x8F: ("ADC A,A", 1),
|
||||
0x90: ("SUB B", 1),
|
||||
0x91: ("SUB C", 1),
|
||||
0x92: ("SUB D", 1),
|
||||
0x93: ("SUB E", 1),
|
||||
0x94: ("SUB H", 1),
|
||||
0x95: ("SUB L", 1),
|
||||
0x96: ("SUB (HL)", 1),
|
||||
0x97: ("SUB A", 1),
|
||||
0x98: ("SBC A,B", 1),
|
||||
0x99: ("SBC A,C", 1),
|
||||
0x9A: ("SBC A,D", 1),
|
||||
0x9B: ("SBC A,E", 1),
|
||||
0x9C: ("SBC A,H", 1),
|
||||
0x9D: ("SBC A,L", 1),
|
||||
0x9E: ("SBC A,(HL)", 1),
|
||||
0x9F: ("SBC A,A", 1),
|
||||
0xA0: ("AND B", 1),
|
||||
0xA1: ("AND C", 1),
|
||||
0xA2: ("AND D", 1),
|
||||
0xA3: ("AND E", 1),
|
||||
0xA4: ("AND H", 1),
|
||||
0xA5: ("AND L", 1),
|
||||
0xA6: ("AND (HL)", 1),
|
||||
0xA7: ("AND A", 1),
|
||||
0xA8: ("XOR B", 1),
|
||||
0xA9: ("XOR C", 1),
|
||||
0xAA: ("XOR D", 1),
|
||||
0xAB: ("XOR E", 1),
|
||||
0xAC: ("XOR H", 1),
|
||||
0xAD: ("XOR L", 1),
|
||||
0xAE: ("XOR (HL)", 1),
|
||||
0xAF: ("XOR A", 1),
|
||||
0xB0: ("OR B", 1),
|
||||
0xB1: ("OR C", 1),
|
||||
0xB2: ("OR D", 1),
|
||||
0xB3: ("OR E", 1),
|
||||
0xB4: ("OR H", 1),
|
||||
0xB5: ("OR L", 1),
|
||||
0xB6: ("OR (HL)", 1),
|
||||
0xB7: ("OR A", 1),
|
||||
0xB8: ("CP B", 1),
|
||||
0xB9: ("CP C", 1),
|
||||
0xBA: ("CP D", 1),
|
||||
0xBB: ("CP E", 1),
|
||||
0xBC: ("CP H", 1),
|
||||
0xBD: ("CP L", 1),
|
||||
0xBE: ("CP (HL)", 1),
|
||||
0xBF: ("CP A", 1),
|
||||
0x04: ("INC B", 1),
|
||||
0x0C: ("INC C", 1),
|
||||
0x14: ("INC D", 1),
|
||||
0x1C: ("INC E", 1),
|
||||
0x24: ("INC H", 1),
|
||||
0x2C: ("INC L", 1),
|
||||
0x34: ("INC (HL)", 1),
|
||||
0x3C: ("INC A", 1),
|
||||
0x05: ("DEC B", 1),
|
||||
0x0D: ("DEC C", 1),
|
||||
0x15: ("DEC D", 1),
|
||||
0x1D: ("DEC E", 1),
|
||||
0x25: ("DEC H", 1),
|
||||
0x2D: ("DEC L", 1),
|
||||
0x35: ("DEC (HL)", 1),
|
||||
0x3D: ("DEC A", 1),
|
||||
|
||||
# General purpose arithmetic and control groups
|
||||
0x27: ("DAA", 1),
|
||||
0x2F: ("CPL", 1),
|
||||
0x37: ("SCF", 1),
|
||||
0x3F: ("CCF", 1),
|
||||
0x00: ("NOP", 1),
|
||||
0x76: ("HALT", 1),
|
||||
0xF3: ("DI", 1),
|
||||
0xFB: ("EI", 1),
|
||||
|
||||
# 16-bit arithmetic group
|
||||
0x09: ("ADD HL,BC", 1),
|
||||
0x19: ("ADD HL,DE", 1),
|
||||
0x29: ("ADD HL,HL", 1),
|
||||
0x39: ("ADD HL,SP", 1),
|
||||
0x03: ("INC BC", 1),
|
||||
0x13: ("INC DE", 1),
|
||||
0x23: ("INC HL", 1),
|
||||
0x33: ("INC SP", 1),
|
||||
0x0B: ("DEC BC", 1),
|
||||
0x1B: ("DEC DE", 1),
|
||||
0x2B: ("DEC HL", 1),
|
||||
0x3B: ("DEC SP", 1),
|
||||
|
||||
# Rotate and shift group
|
||||
0x07: ("RLCA", 1),
|
||||
0x17: ("RLA", 1),
|
||||
0x0F: ("RRCA", 1),
|
||||
0x1F: ("RRA", 1),
|
||||
|
||||
# Jump group
|
||||
0xC3: ("JP", 3),
|
||||
0xDA: ("JP C,", 3),
|
||||
0xD2: ("JP NC,", 3),
|
||||
0xCA: ("JP Z,", 3),
|
||||
0xC2: ("JP NZ,", 3),
|
||||
0xFA: ("JP M,", 3),
|
||||
0xF2: ("JP P,", 3),
|
||||
0xEA: ("JP PE,", 3),
|
||||
0xE2: ("JP PO,", 3),
|
||||
0x18: ("JR", 2),
|
||||
0x38: ("JR C,", 2),
|
||||
0x30: ("JR NC,", 2),
|
||||
0x28: ("JR Z,", 2),
|
||||
0x20: ("JR NZ,", 2),
|
||||
0xE9: ("JP (HL)", 1),
|
||||
0x10: ("DJNZ", 2),
|
||||
|
||||
# Call and return group
|
||||
0xCD: ("CALL", 3),
|
||||
0xDC: ("CALL C,", 3),
|
||||
0xD4: ("CALL NC,", 3),
|
||||
0xCC: ("CALL Z,", 3),
|
||||
0xC4: ("CALL NZ,", 3),
|
||||
0xFC: ("CALL M,", 3),
|
||||
0xF4: ("CALL P,", 3),
|
||||
0xEC: ("CALL PE,", 3),
|
||||
0xE4: ("CALL PO,", 3),
|
||||
0xC9: ("RET", 1),
|
||||
0xD8: ("RET C", 1),
|
||||
0xD0: ("RET NC", 1),
|
||||
0xC8: ("RET Z", 1),
|
||||
0xC0: ("RET NZ", 1),
|
||||
0xF8: ("RET M", 1),
|
||||
0xF0: ("RET P", 1),
|
||||
0xE8: ("RET PE", 1),
|
||||
0xE0: ("RET PO", 1),
|
||||
0xC7: ("RST 00H", 1),
|
||||
0xCF: ("RST 08H", 1),
|
||||
0xD7: ("RST 10H", 1),
|
||||
0xDF: ("RST 18H", 1),
|
||||
0xE7: ("RST 20H", 1),
|
||||
0xEF: ("RST 28H", 1),
|
||||
0xF7: ("RST 30H", 1),
|
||||
0xFF: ("RST 38H", 1),
|
||||
|
||||
# Input and output group
|
||||
0xDB: ("IN A,(", 2),
|
||||
0xD3: ("OUT (", 2),
|
||||
|
||||
# Additional load instructions
|
||||
0x3E: ("LD A,", 2),
|
||||
0x06: ("LD B,", 2),
|
||||
0x0E: ("LD C,", 2),
|
||||
0x16: ("LD D,", 2),
|
||||
0x1E: ("LD E,", 2),
|
||||
0x26: ("LD H,", 2),
|
||||
0x2E: ("LD L,", 2),
|
||||
0x36: ("LD (HL),", 2),
|
||||
0x32: ("LD (", 3), # LD (nn),A
|
||||
0x3A: ("LD A,(", 3), # LD A,(nn)
|
||||
}
|
||||
|
||||
def parse_hex_file(self, hex_content: str) -> Dict[int, int]:
|
||||
memory = {}
|
||||
for line in hex_content.splitlines():
|
||||
if not line.startswith(':'):
|
||||
continue
|
||||
|
||||
# Remove the starting ':'
|
||||
line = line[1:]
|
||||
|
||||
# Parse the Intel HEX record
|
||||
byte_count = int(line[0:2], 16)
|
||||
address = int(line[2:6], 16)
|
||||
record_type = int(line[6:8], 16)
|
||||
data = line[8:8+byte_count*2]
|
||||
|
||||
if record_type == 0: # Data record
|
||||
for i in range(0, len(data), 2):
|
||||
byte = int(data[i:i+2], 16)
|
||||
memory[address + (i//2)] = byte
|
||||
|
||||
return memory
|
||||
|
||||
def disassemble(self, memory: Dict[int, int], start_address: int = 0) -> List[str]:
|
||||
output = []
|
||||
current_address = start_address
|
||||
|
||||
while current_address in memory:
|
||||
opcode = memory[current_address]
|
||||
|
||||
# Check for CB prefix (bit instructions)
|
||||
if opcode == 0xCB and (current_address + 1) in memory:
|
||||
cb_opcode = memory[current_address + 1]
|
||||
instruction = self.decode_cb_instruction(cb_opcode)
|
||||
if instruction:
|
||||
output.append(f"{current_address:04X}: {instruction}")
|
||||
current_address += 2
|
||||
continue
|
||||
|
||||
# Check for ED prefix
|
||||
if opcode == 0xED and (current_address + 1) in memory:
|
||||
ed_opcode = memory[current_address + 1]
|
||||
instruction = self.decode_ed_instruction(ed_opcode)
|
||||
if instruction:
|
||||
output.append(f"{current_address:04X}: {instruction}")
|
||||
current_address += 2
|
||||
continue
|
||||
|
||||
# Check for DD/FD prefix (IX/IY instructions)
|
||||
if opcode in [0xDD, 0xFD]:
|
||||
prefix = "IX" if opcode == 0xDD else "IY"
|
||||
if (current_address + 1) in memory:
|
||||
ix_opcode = memory[current_address + 1]
|
||||
instruction = self.decode_indexed_instruction(ix_opcode, prefix)
|
||||
if instruction:
|
||||
output.append(f"{current_address:04X}: {instruction}")
|
||||
current_address += 2
|
||||
continue
|
||||
|
||||
instruction_info = self.instructions.get(opcode)
|
||||
|
||||
if instruction_info:
|
||||
mnemonic, length = instruction_info
|
||||
operand_bytes = []
|
||||
|
||||
# Get operand bytes if any
|
||||
for i in range(1, length):
|
||||
if current_address + i in memory:
|
||||
operand_bytes.append(memory[current_address + i])
|
||||
|
||||
# Format the instruction
|
||||
if length == 1:
|
||||
line = f"{current_address:04X}: {mnemonic}"
|
||||
elif length == 2:
|
||||
if len(operand_bytes) >= 1:
|
||||
line = f"{current_address:04X}: {mnemonic}{operand_bytes[0]:02X}H"
|
||||
elif length == 3:
|
||||
if len(operand_bytes) >= 2:
|
||||
value = operand_bytes[0] + (operand_bytes[1] << 8)
|
||||
if mnemonic.endswith("("):
|
||||
line = f"{current_address:04X}: {mnemonic}{value:04X}H),A"
|
||||
else:
|
||||
line = f"{current_address:04X}: {mnemonic}{value:04X}H"
|
||||
|
||||
output.append(line)
|
||||
current_address += length
|
||||
else:
|
||||
# Unknown opcode
|
||||
output.append(f"{current_address:04X}: DB {opcode:02X}H ; Unknown opcode")
|
||||
current_address += 1
|
||||
|
||||
return output
|
||||
|
||||
def decode_cb_instruction(self, opcode: int) -> str:
|
||||
"""Decode CB-prefixed bit manipulation instructions"""
|
||||
op_type = opcode >> 6
|
||||
bit_num = (opcode >> 3) & 0x07
|
||||
reg = opcode & 0x07
|
||||
|
||||
reg_names = ['B', 'C', 'D', 'E', 'H', 'L', '(HL)', 'A']
|
||||
|
||||
if op_type == 0: # Rotates and shifts
|
||||
operations = ['RLC', 'RRC', 'RL', 'RR', 'SLA', 'SRA', 'SLL', 'SRL']
|
||||
return f"{operations[bit_num]} {reg_names[reg]}"
|
||||
elif op_type == 1: # BIT
|
||||
return f"BIT {bit_num},{reg_names[reg]}"
|
||||
elif op_type == 2: # RES
|
||||
return f"RES {bit_num},{reg_names[reg]}"
|
||||
elif op_type == 3: # SET
|
||||
return f"SET {bit_num},{reg_names[reg]}"
|
||||
|
||||
return None
|
||||
|
||||
def decode_ed_instruction(self, opcode: int) -> str:
|
||||
"""Decode ED-prefixed instructions"""
|
||||
ed_instructions = {
|
||||
0x40: "IN B,(C)",
|
||||
0x41: "OUT (C),B",
|
||||
0x42: "SBC HL,BC",
|
||||
0x43: "LD (nn),BC",
|
||||
0x44: "NEG",
|
||||
0x45: "RETN",
|
||||
0x46: "IM 0",
|
||||
0x47: "LD I,A",
|
||||
# Add more ED instructions as needed
|
||||
}
|
||||
return ed_instructions.get(opcode)
|
||||
|
||||
def decode_indexed_instruction(self, opcode: int, prefix: str) -> str:
|
||||
"""Decode IX/IY indexed instructions"""
|
||||
if opcode == 0x21: # LD IX/IY,nn
|
||||
return f"LD {prefix},"
|
||||
elif opcode == 0x22: # LD (nn),IX/IY
|
||||
return f"LD (,{prefix})"
|
||||
elif opcode == 0x2A: # LD IX/IY,(nn)
|
||||
return f"LD {prefix},("
|
||||
# Add more indexed instructions as needed
|
||||
return None
|
||||
|
||||
def main(hex_file_path: str):
|
||||
try:
|
||||
with open(hex_file_path, 'r') as f:
|
||||
hex_content = f.read()
|
||||
|
||||
disassembler = Z80Disassembler()
|
||||
memory = disassembler.parse_hex_file(hex_content)
|
||||
disassembly = disassembler.disassemble(memory)
|
||||
|
||||
for line in disassembly:
|
||||
print(line)
|
||||
|
||||
except FileNotFoundError:
|
||||
print(f"Error: Could not find file {hex_file_path}")
|
||||
except Exception as e:
|
||||
print(f"Error: {str(e)}")
|
||||
|
||||
if __name__ == "__main__":
|
||||
if len(sys.argv) != 2:
|
||||
print("Usage: python z80_disassembler.py <hex_file>")
|
||||
else:
|
||||
main(sys.argv[1])
|
||||
@@ -1,3 +1,4 @@
|
||||
tasm -80 source\mon.asm hexFiles\intMon.hex
|
||||
tasm -80 source\basMon.asm hexFiles\basMon.hex
|
||||
tasm -80 source\cbios128.asm hexFiles\cbios128.hex
|
||||
tasm -80 source\cpm22.asm hexFiles\cpm22.hex
|
||||
|
||||
@@ -1,345 +1,343 @@
|
||||
:0430060000000000C6
|
||||
:18000000F3C3A40000000000C332000000000000C31B000000000000BB
|
||||
:18001800C36C003A0030FE002008CD730028FBDB81C9CD7A0028FBDB44
|
||||
:1800300083C9F53A0030FE00200D1801F5CD600028FBF1D381C9F5CDB4
|
||||
:18004800660028FBF1D383C9F5CD66002004F1E600C9F1D383F6FFC916
|
||||
:18006000DB800FCB47C9DB820FCB47C93A0030FE002007DB80E601FE2D
|
||||
:1800780000C9DB82E601FE00C9D7FE0A28FBFE1B20023E03C9FE0D2822
|
||||
:180090000AFE0C2804FE203801CFC93E0DCF3E0ACF3E0DC9312A303E1B
|
||||
:1800A80095D380D3823E00320030218103CD37012181032204302A0490
|
||||
:1800C000307EB7280CCD5000280723220430C3BE00CD7300280F3E0094
|
||||
:1800D800320030CD1B00FE20C2D1001812CD7A0028D43E01320030CD3A
|
||||
:1800F0001B00FE20C2BE003E0CCD3C00CD5000CD3E0121B202CD3701E9
|
||||
:18010800210801E5CD3E013E3ECFCD8100FE2038F9FE3ACAB501CD8DCA
|
||||
:1801200000E65FFE42CAF601FE47CAAF01FE58CA0D023E3FCF18D57EDC
|
||||
:18013800B7C8CF2318F93E0DCF3E0ACFC9CD8100FE03C8FE2038F6C907
|
||||
:18015000CD450147CD45014FCD8F014F7B915F79C9210000CDA801FEED
|
||||
:180168000D200E37C9210000CDA801FE0DC8FE2CC8FE0328EE29292956
|
||||
:1801800029D630FE0A3802D607E60F856F18E178D630FE0A3802D6079A
|
||||
:18019800070707074779D630FE0A3802D60780C9CD8100CD8D00C9CDC7
|
||||
:1801B0006101D8E5C91E00CD500157CD500167CD50016FCD5001FE018D
|
||||
:1801C8002009CD50017BA7281E18157AA7280BCD500177233E2ECF15E7
|
||||
:1801E00018F1CD50017BA7C8217003CD3701C921AB03CD3701C9215E78
|
||||
:1801F80003CD3701CD4501C8E65FFE43CAB603FE57CAB903C9211F021D
|
||||
:18021000CD3701CD4501C8E65FFE59CA4002C90D0A426F6F7420435027
|
||||
:180228002F4D3F000D0A4C6F6164696E672043502F4D2E2E2E0D0A005E
|
||||
:18024000212C02CD370106183E0032063032073032083032093021002F
|
||||
:18025800D0220230CD8A021100022A0230192202303A06303C32063021
|
||||
:1802700010EA3A0030F52AFEFFE93A0830D38C3A0730D38B3A0630D32A
|
||||
:180288008AC9F5C5E5DB89FE8020FACD7A023E00D3890E040680DB8991
|
||||
:1802A000FEE020FADB8877230520F30D20EEE1C1F1C943502F4D204251
|
||||
:1802B8006F6F7420524F4D20322E3020627920472E20536561726C6512
|
||||
:1802D0000D0A0D0A4243206F72204257202D20524F4D204241534943CC
|
||||
:1802E80020436F6C642F5761726D0D0A5820202020202020202D204298
|
||||
:180300006F6F742043502F4D20286C6F61642024443030302D24464687
|
||||
:180318004646290D0A3A6E6E6E6E2E2E2E202D204C6F616420496E744D
|
||||
:18033000656C2D4865782066696C65207265636F72640D0A476E6E6E8B
|
||||
:180348006E202020202D2052756E206C6F63206E6E6E6E0D0A000D0AC9
|
||||
:18036000436F6C64206F72207761726D3F0D0A00436865636B73756DA2
|
||||
:18037800206572726F720D0A000C5072657373205B73706163655D20EF
|
||||
:18039000746F2061637469766174652074686520636F6E736F6C652E5F
|
||||
:1803A8000D0A00436F6D706C6574650D0A00C3BC03C35A04DD21000035
|
||||
:1803C000C3C7036D0CE31321B030F9C30220119406066321B0301A77A4
|
||||
:1803D800231305C2D603F9CD9508CD630E325A3132A93121A904CD0131
|
||||
:1803F00015CDB208CDBB0BB7C21004210D32237CB5CA22047E472F772A
|
||||
:18040800BE70CAFE03C32204CD870CB7C26307EB2B3ED94677BE70C2DD
|
||||
:18042000EB032B110C32CD2B0ADAEB0311CEFF225F3119220A31CD704F
|
||||
:18043800082A0A3111EFFF1911A9317D936F7C9A67E5217204CD0115E1
|
||||
:18045000E1CDA41B216304CD0115311631CD9508C3AE072042797465AE
|
||||
:180468007320667265650D0A00005A383020424153494320566572207F
|
||||
:18048000342E37620D0A436F70797269676874202843292031393738EC
|
||||
:18049800206279204D6963726F736F66740D0A00004D656D6F727920CB
|
||||
:1804B000746F7000191ADD1A2F1AB330C1134617EF13A31C821DBE1824
|
||||
:1804C800F11CF71DFD1D5E1E731E9A17DE1E013173168B140D17821611
|
||||
:1804E0009316001F931FA316D316DD16C54E44C64F52CE455854C44173
|
||||
:1804F8005441C94E505554C4494DD2454144CC4554C74F544FD2554EBE
|
||||
:18051000C946D24553544F5245C74F535542D2455455524ED2454DD389
|
||||
:18052800544F50CF5554CF4ECE554C4CD7414954C44546D04F4B45C401
|
||||
:180540004F4B45D3435245454ECC494E4553C34C53D749445448CD4F0B
|
||||
:180558004E49544F52D34554D245534554D052494E54C34F4E54CC49BA
|
||||
:180570005354C34C454152C34C4F4144C353415645CE4557D441422827
|
||||
:18058800D44FC64ED3504328D448454ECE4F54D3544550ABADAAAFDE2B
|
||||
:1805A000C14E44CF52BEBDBCD3474EC94E54C14253D55352C65245C9CF
|
||||
:1805B8004E50D04F53D35152D24E44CC4F47C55850C34F53D3494ED4CF
|
||||
:1805D000414EC1544ED045454BC445454BD04F494E54CC454ED3545201
|
||||
:1805E80024D6414CC15343C3485224C8455824C2494E24CC45465424C7
|
||||
:18060000D24947485424CD49442480050C020BDD0F520DE40E19121329
|
||||
:180618000F690D0F0DF20CE10DCB0BFE0C2D0D540D030C5217C30D4436
|
||||
:180630000C5817F713A117E91E540DCF1EC21EC71EFF1F0431073105CB
|
||||
:180648000E310C770AAC0C540D540D6F08798B1B79BF177CFD187C5E04
|
||||
:18066000197FAC1C5072114671114E46534E52474F4446434F564F4D5C
|
||||
:18067800554C425344442F304944544D4F534C535354434E55464D4F6F
|
||||
:180690004858424EC35A04C3820CD300C9D6006F7CDE006778DE004771
|
||||
:1806A8003E00C9000000354ACA99391C76982295B3980ADD479853D102
|
||||
:1806C00099990A1A9F9865BCCD98D6773E9852C74F80DB00C901FF1C44
|
||||
:1806D80000001400140000000000C3A809C30000C30000C300000D32E6
|
||||
:1806F000FEFFAA31204572726F720020696E20004F6B0D0A0000427254
|
||||
:1807080065616B00210400397E23FE81C04E234623E569607AB3EBCA00
|
||||
:180720002607EBCD2B0A010D00E1C809C31007CD4907C5E3C1CD2B0A85
|
||||
:180738007E02C80B2BC33507E52A8A31060009093EE53ED0956F3EFFD8
|
||||
:180750009CDA58076739E1D81E0CC377072A7931220C311E02011E1472
|
||||
:18076800011E00011E12011E22011E0A011E18CD950832F530CD560E96
|
||||
:18078000216A06573E3FCD3C0A197ECD3C0ACDBB0BCD3C0A21F406CDB1
|
||||
:1807980001152A0C3111FEFFCD2B0ACAC7037CA53CC49C1B3EC1AF3270
|
||||
:1807B000F530CD560E210007CD011521FFFF220C31CDA809DABB07CD6B
|
||||
:1807C800BB0B3C3DCABB07F5CD870CD5CDBF0847D1F1D29B0BD5C5AFC6
|
||||
:1807E000327C31CDBB0BB7F5CD4F08DAF407F1F5CA280DB7C5D20B08A4
|
||||
:1807F800EB2A86311A020313CD2B0AC2FC076069228631D1F1CA3208BC
|
||||
:180810002A8631E3C109E5CD2F07E1228631EB74D123237323722311EE
|
||||
:1808280011311A772313B7C22A08CD7B0823EB626B7E23B6CABB0723D3
|
||||
:180840002323AFBE23C24308EB732372C337082A0E31444D7E23B62B4C
|
||||
:18085800C823237E23666FCD2B0A60697E23666F3FC83FD0C35208C0D0
|
||||
:180870002A0E31AF772377232286312A0E312B227E312A5F3122733166
|
||||
:18088800AFCDCB0B2A8631228831228A31C12A0A31F9216331226131E5
|
||||
:1808A000AF6F67228431327B31228E31E5C52A7E31C93E3FCD3C0A3E0B
|
||||
:1808B80020CD3C0AC3FE30AF325E310E051111317EFE20CA470947FE33
|
||||
:1808D00022CA6709B7CA6E093A5E31B77EC24709FE3F3E9ECA47097EFB
|
||||
:1808E800FE30DAF208FE3CDA4709D511EB04C5014309C5067F7EFE6184
|
||||
:18090000DA0B09FE7BD20B09E65F774EEB23B6F20D09047EE67FC8B954
|
||||
:18091800C20D09EBE5131AB7FA3F094F78FE88C22E09CDBB0B2B237E54
|
||||
:18093000FE61DA3709E65FB9CA1D09E1C30B0948F1EBC9EB79C1D1238A
|
||||
:1809480012130CD63ACA5509FE49C25809325E31D654C2C808477EB7CB
|
||||
:18096000CA6E09B8CA470923120C13C35E092110311213121312C93A2D
|
||||
:18097800F430B73E0032F430C28B0905CAA809CD3C0A3E052BCA9F092F
|
||||
:180990007ECD3C0AC3B109052BCD3C0AC2B109CD3C0ACD630EC3A809BD
|
||||
:1809A8002111310601AF32F430CD660A4FFE7FCA77093AF430B7CACACC
|
||||
:1809C000093E00CD3C0AAF32F43079FE07CA0E0AFE03CC630E37C8FE25
|
||||
:1809D8000DCA5E0EFE15CAA209FE40CA9F09FE5FCA9709FE08CA970955
|
||||
:1809F000FE12C2090AC5D5E53600CD1320211131CD0115E1D1C1C3B128
|
||||
:180A080009FE20DAB10978FE493E07D2230A7971327C312304CD3C0A15
|
||||
:180A2000C3B109CD3C0A3E08C31D0A7C92C07D93C97EE3BE23E3CABBAD
|
||||
:180A38000BC36307F53AF530B7C23615F1C5F5FE20DA600A3AF23047A6
|
||||
:180A50003A5B3104CA5C0A05B8CC630E3C325B31F1C1CDFC1FC9CDC0B0
|
||||
:180A68001EE67FFE0FC03AF5302F32F530AFC9CD870CC0C1CD4F08C5FF
|
||||
:180A8000CDCD0AE14E23462378B1CAAE07CDD60ACDE60BC5CD630E5E8B
|
||||
:180A9800235623E5EBCDA41B3E20E1CD3C0A7EB723CA830AF2A30AD6D8
|
||||
:180AB0007F4F11EC041A13B7F2B50A0DC2B50AE67FCD3C0A1A13B7F2EE
|
||||
:180AC800BF0AC3A60AE52AF83022F630E1C9E5D52AF63011FFFFED5A51
|
||||
:180AE00022F630D1E1F0E52AF83022F630CDC01EFE03CAF90AE1C3D6A2
|
||||
:180AF8000A2AF83022F630C35D043E64327B31CD690DC1E5CD520D2267
|
||||
:180B1000773121020039CD1007D1C2320B09D52B562B5E2323E52A7761
|
||||
:180B280031CD2B0AE1C2160BD1F9EB0E08CD4007E52A7731E3E52A0C2A
|
||||
:180B400031E3CD2B10CD310AA6CD2810E5CD561AE1C5D5010081515A04
|
||||
:180B58007EFEAB3E01C26E0BCDBB0BCD2810E5CD561ACD0A1AE1C5D5BE
|
||||
:180B7000F533E52A7E31E30681C533CDE60B227E317EFE3ACA9B0BB7B9
|
||||
:180B8800C26307237E23B6CA0D0C235E2356EB220C31EBCDBB0B117B7E
|
||||
:180BA0000BD5C8D680DA690DFE25D26307074F0600EB210B06094E239D
|
||||
:180BB80046C5EB237EFE3AD0FE20CABB0BFE303F3C3DC9EB2A0E31CA0B
|
||||
:180BD000E00BEBCD870CE5CD4F086069D1D2280D2B228C31EBC9DFC8C8
|
||||
:180BE800D7FE1B2811FE03280DFE13C0D7FE11C8FE03280718F63EFF9C
|
||||
:180C000032FD30C0F6C0227E3121F6FFC12A0C31F57DA43CCA200C228E
|
||||
:180C180082312A7E31228431AF32F530CD560EF1210607C29707C3AE3A
|
||||
:180C3000072A84317CB51E20CA7707EB2A8231220C31EBC9CD8917C007
|
||||
:180C480032F130C9E52AFA3006004F0922FA30E1C97EFE41D8FE5B3FBE
|
||||
:180C6000C9CDBB0BCD2810CD0A1AFA820C3A9731FE90DAB21A0180905B
|
||||
:180C7800110000E5CD851AE151C81E08C377072B110000CDBB0BD0E51D
|
||||
:180C9000F5219819CD2B0ADA6307626B19291929F1D6305F160019EB7E
|
||||
:180CA800E1C38B0CCA7F08CD640C2BCDBB0BE52A5F31CACF0CE1CD318A
|
||||
:180CC0000A2CD5CD640C2BCDBB0BC26307E3EB7D935F7C9A57DA580707
|
||||
:180CD800E52A863101280009CD2B0AD25807EB220A31E1225F31E1C35A
|
||||
:180CF0007F08CA7B08CD7F08017B0BC30E0D0E03CD4007C1E5E52A0C79
|
||||
:180D080031E33E8CF533C5CD870CCD540DE52A0C31CD2B0AE123DC52FA
|
||||
:180D200008D44F0860692BD81E0EC37707C016FFCD0C07F9FE8C1E04F5
|
||||
:180D3800C27707E1220C31237CB5C24C0D3A7C31B7C2AD07217B0BE316
|
||||
:180D50003EE1013A0E0006007948477EB7C8B8C823FE22CA580DC35B08
|
||||
:180D68000DCD1E12CD310AB4D53A5D31F5CD3A10F1E3227E311FCD2D46
|
||||
:180D800010CABC0DE52A9431E523235E23562A0E31CD2B0AD2AB0D2AC3
|
||||
:180D98000A31CD2B0AD1D2B30D216F31CD2B0AD2B30D3ED1CD6216EB0F
|
||||
:180DB000CD9B14CD6216E1CD651AE1C9E5CD621AD1E1C9CD89177E47B8
|
||||
:180DC800FE8CCAD20DCD310A882B4B0D78CAA30BCD880CFE2CC0C3D3FC
|
||||
:180DE0000DCD3A107EFE88CAEF0DCD310AA92BCD2B10CD0A1ACA540D0D
|
||||
:180DF800CDBB0BDA0F0DC3A20B2BCDBB0BCA630EC8FEA5CA960EFEA872
|
||||
:180E1000CA960EE5FE2CCA7F0EFE3BCAB90EC1CD3A10E53A5D31B7C22E
|
||||
:180E28004F0ECDAF1BCDBF1436202A9431342A94313AF2304704CA4BFA
|
||||
:180E40000E043A5B31863DB8D4630ECD0415AFC40415E1C3010E3A5B48
|
||||
:180E580031B7C8C3630E36002110313E0DCD3C0A3E0ACD3C0AAF325B11
|
||||
:180E7000313AF1303DC8F5AFCD3C0AF1C3740E3AF330473A5B31B8D4F6
|
||||
:180E8800630ED2B90ED60ED28D0E2FC3AE0EF5CD8617CD310A292BF19D
|
||||
:180EA000D6A8E5CAA90E3A5B312F83D2B90E3C473E20CD3C0A05C2B2D8
|
||||
:180EB8000EE1CDBB0BC3080E3F5265646F2066726F6D207374617274DC
|
||||
:180ED0000D0A003A7D31B7C25D07C121C00ECD0115C3AE08CD6C147E57
|
||||
:180EE800FE223E0032F530C2FE0ECDC014CD310A3BE5CD04153EE5CDD0
|
||||
:180F0000B208C1DA0A0C237EB72BC5CA510D362CC3180FE52A8C31F6F0
|
||||
:180F1800AF327D31E3C3240FCD310A2CCD1E12E3D57EFE2CCA4C0F3A69
|
||||
:180F30007D31B7C2B90F3E3FCD3C0ACDB208D1C1DA0A0C237EB72BC5D9
|
||||
:180F4800CA510DD53A5D31B7CA760FCDBB0B5747FE22CA6A0F3A7D314A
|
||||
:180F6000B757CA670F163A062C2BCDC314EB21810FE3D5C3840DCDBBAA
|
||||
:180F78000BCD111BE3CD621AE12BCDBB0BCA8D0FFE2CC2D30EE32BCD84
|
||||
:180F9000BB0BC2200FD13A7D31B7EBC2E10BD5B621A80FC40115E1C9A2
|
||||
:180FA8003F45787472612069676E6F7265640D0A00CD520DB7C2D20F49
|
||||
:180FC000237E23B61E06CA7707235E2356EB227931EBCDBB0BFE83C2C1
|
||||
:180FD800B90FC34C0F110000C41E12227E31CD0C07C26907F9D57E23C4
|
||||
:180FF000F5D5CD481AE3E5CDB517E1CD621AE1CD591AE5CD851AE1C151
|
||||
:1810080090CD591ACA1810EB220C316960C3770BF92A7E317EFE2CC27A
|
||||
:181020007B0BCDBB0BCDE00FCD3A10F6373A5D318FB7E8C37507CD316C
|
||||
:181038000A282B1600D50E01CD4007CDB1102280312A8031C178FE784A
|
||||
:18105000D42B107E1600D6B3DA7210FE03D27210FE0117AABA57DA639D
|
||||
:1810680007227531CDBB0BC356107AB7C299117E227531D6ACD8FE07A3
|
||||
:18108000D05F3A5D313DB37BCAF71507835F215506197856BAD023CD5A
|
||||
:181098002B10C5014910C5434ACD3B1A58514E234623C52A7531C33D5A
|
||||
:1810B00010AF325D31CDBB0B1E24CA7707DA111BCD590CD21811FE2635
|
||||
:1810C8002012CDBB0BFE48CA551FFE42CAC51F1E02CA7707FEACCAB14C
|
||||
:1810E00010FE2ECA111BFEADCA0711FE22CAC014FEAACAF911FEA7CA90
|
||||
:1810F8002414D6B6D22911CD3610CD310A29C9167DCD3D102A8031E596
|
||||
:18111000CD331ACD2B10E1C9CD1E12E5EB2294313A5D31B7CC481AE1B9
|
||||
:18112800C90600074FC5CDBB0B79FE31DA5011CD3610CD310A2CCD2C0F
|
||||
:1811400010EB2A9431E3E5EBCD8917EBE3C35811CDFF10E3111311D5CA
|
||||
:1811580001B404094E236669E915FEADC8FE2DC814FE2BC8FEACC82B77
|
||||
:18117000C9F6AFF5CD2B10CD6D0CF1EBC1E3EBCD4B1AF5CD6D0CF1C12C
|
||||
:181188007921E213C29411A34F78A2E9B34F78B2E921AB113A5D311F8B
|
||||
:1811A0007A175F166478BAD0C39A10AD1179B71FC1D1F5CD2D1021EFB0
|
||||
:1811B80011E5CA851AAF325D31D5CD44167E23234E2346D1C5F5CD483A
|
||||
:1811D00016CD591AF157E17BB2C87AD601D8AFBB3CD0151D0ABE2303D4
|
||||
:1811E800CAD7113FC3151A3C8FC1A0C6FF9FC31C1A165ACD3D10CD2B01
|
||||
:1812000010CD6D0C7B2F4F7A2FCDE213C1C349102BCDBB0BC8CD310AB1
|
||||
:181218002C011012C5F6AF325C3146CD590CDA6307AF4F325D31CDBB44
|
||||
:181230000BDA3A12CD590CDA47124FCDBB0BDA3B12CD590CD23B12D6E0
|
||||
:1812480024C256123C325D310F814FCDBB0B3A7B313DCA0313F2661265
|
||||
:181260007ED628CADB12AF327B31E550592A8E31CD2B0A119031CA4B56
|
||||
:18127800192A8831EB2A8631CD2B0ACA9912799623C28E12789623CA90
|
||||
:18129000CD1223232323C38012E1E3D5111B11CD2B0AD1CAD012E3E569
|
||||
:1812A800C50106002A8A31E509C1E5CD2F07E1228A3160692288312B59
|
||||
:1812C0003600CD2B0AC2BF12D173237223EBE1C932973121FF062294E4
|
||||
:1812D80031E1C9E52A5C31E357D5C5CD610CC1F1EBE3E5EB3C577EFE1A
|
||||
:1812F0002CCAE112CD310A29228031E1225C311E00D511E5F52A8831A8
|
||||
:181308003E19EB2A8A31EBCD2B0ACA3B137EB923C21D137EB8235E237B
|
||||
:181320005623C209133A5C31B7C26C07F1444DCA4B1996CA99131E10C1
|
||||
:18133800C37707110400F1CA820C712370234FCD4007232322753171F5
|
||||
:18135000233A5C311779010B00D25E13C10371237023F5E5CDF61AEB2F
|
||||
:18136800E1F13DC25613F5424BEB19DA5807CD4907228A312B3600CD4C
|
||||
:181380002B0AC27C1303572A75315EEB2909EB2B2B73237223F1DABD36
|
||||
:1813980013474F7E2316E15E235623E3F5CD2B0AD23613E5CDF61AD17A
|
||||
:1813B00019F13D444DC29E132929C109EB2A8031C92A8A31EB2100003E
|
||||
:1813C800393A5D31B7CADD13CD4416CD44152A0A31EB2A73317D934FD1
|
||||
:1813E0007C9A41501E00215D31730690C3211A3A5B3147AFC3E313CD38
|
||||
:1813F8007A14CD6C1401520DC5D5CD310A28CD1E12E5EB2B562B5EE120
|
||||
:18141000CD2B10CD310A29CD310AB4444DE3712370C3B914CD7A14D597
|
||||
:18142800CDFF10CD2B10E35E2356237AB3CA6F077E23666FE52A8E313A
|
||||
:18144000E3228E312A9231E52A9031E5219031D5CD621AE1CD28102B1D
|
||||
:18145800CDBB0BC26307E1229031E1229231E1228E31E1C9E52A0C317B
|
||||
:18147000237CB5E1C01E16C37707CD310AA73E80327B31B647CD2312B0
|
||||
:18148800C32B10CD2B10CDAF1BCDBF14CD4416019F16C57E2323E5CDF7
|
||||
:1814A0001A15E14E2346CDB314E56FCD3716D1C9CD1A15216F31E577B8
|
||||
:1814B8002323732372E1C92B062250E50EFF237E0CB7CAD514BACAD51F
|
||||
:1814D00014B8C2C614FE22CCBB0BE323EB79CDB314116F312A6131225D
|
||||
:1814E80094313E01325D31CD651ACD2B0A226131E17EC01E1EC377078A
|
||||
:1815000023CDBF14CD4416CD591A1C1DC80ACD3C0AFE0DCC6D0E03C373
|
||||
:181518000B15B70EF1F52A0A31EB2A73312F4F06FF0923CD2B0ADA380F
|
||||
:181530001522733123EBF1C9F11E1ACA7707BFF5011C15C52A5F312208
|
||||
:181548007331210000E52A0A31E5216331EB2A6131EBCD2B0A015515E3
|
||||
:18156000C2A9152A8631EB2A8831EBCD2B0ACA7C157E2323B7CDAC15F3
|
||||
:18157800C36615C1EB2A8A31EBCD2B0ACAD215CD591A7BE509B7F27B21
|
||||
:1815900015227531E14E0600090923EB2A7531EBCD2B0ACA7C15019B5D
|
||||
:1815A80015C5F6807E23235E235623F0B7C8444D2A7331CD2B0A606984
|
||||
:1815C000D8E1E3CD2B0AE3E56069D0C1F1F1E5D5C5C9D1E17DB4C82B53
|
||||
:1815D800462B4EE52B2B6E26000950592B444D2A7331CD3207E17123B6
|
||||
:1815F0007069602BC34715C5E52A9431E3CDB110E3CD2C107EE52A9449
|
||||
:1816080031E5861E1CDA7707CDB014D1CD4816E3CD4716E52A7131EB66
|
||||
:18162000CD2E16CD2E16214610E3E5C3E114E1E37E23234E23466F2CBF
|
||||
:181638002DC80A120313C33816CD2C102A9431EBCD6216EBC0D5505911
|
||||
:181650001B4E2A7331CD2B0AC260164709227331E1C92A61312B462BF9
|
||||
:181668004E2B2BCD2B0AC0226131C901F213C5CD4116AF57325D317E54
|
||||
:18168000B7C901F213C5CD7716CA820C23235E23561AC93E01CDB01485
|
||||
:18169800CD8C172A713173C1C3E114CD3C17AFE34FE57EB8DAB11678DD
|
||||
:1816B000110E00C5CD1A15C1E1E5232346236668060009444DCDB3140A
|
||||
:1816C8006FCD3716D1CD4816C3E114CD3C17D1D51A90C3A716EB7ECDA7
|
||||
:1816E00041170405CA820CC51EFFFE29CAF616CD310A2CCD8917CD31BB
|
||||
:1816F8000A29F1E301A916C53DBE0600D04F7E91BB47D843C9CD7716DF
|
||||
:18171000CA2A185F23237E23666FE5194672E3C57EFE24C22B17CD5576
|
||||
:181728001F180DFE25C23517CDC51F1803CD111BC1E170C9EBCD310AA1
|
||||
:1817400029C1D1C543C9CD8C1732EF30CDEE30C3F213CD7617C3B6308E
|
||||
:18175800CD7617F51E002BCDBB0BCA6C17CD310A2CCD8917C1CDEE30B4
|
||||
:18177000ABA0CA6D17C9CD891732EF3032B730CD310A2CC38917CDBB09
|
||||
:181788000BCD2810CD670C7AB7C2820C2BCDBB0B7BC9CD6D0C1AC3F261
|
||||
:1817A00013CD2810CD6D0CD5CD310A2CCD8917D112C921881CCD591AAC
|
||||
:1817B800C3C417CD591A21C1D1CD331A78B7C83A9731B7CA4B1A90D22D
|
||||
:1817D000DE172F3CEBCD3B1AEBCD4B1AC1D1FE19D0F5CD701A67F1CD8D
|
||||
:1817E8008918B4219431F20418CD6918D24A182334CA72072E01CD9FE9
|
||||
:1818000018C34A18AF90477E9B5F237E9A57237E994FDC75186863AF97
|
||||
:181818004779B7C237184A54656F78D608FEE0C21818AF329731C90521
|
||||
:18183000297A1757798F4FF22F18785C45B7CA4A182197318677D22A21
|
||||
:1818480018C878219731B7FC5C1846237EE680A94FC34B1A1CC014C003
|
||||
:181860000CC00E8034C0C372077E835F237E8A57237E894FC9219831D8
|
||||
:181878007E2F77AF6F90477D9B5F7D9A577D994FC90600D608DA9818BE
|
||||
:18189000435A510E00C38B18C6096FAF2DC8791F4F7A1F577B1F5F78B4
|
||||
:1818A8001F47C39B180000008103AA561980F122768045AA3882CD0AA6
|
||||
:1818C0001AB7EA820C2197317E01358011F30490F570D5C5CDC417C1AA
|
||||
:1818D800D104CD601921AD18CDBB1721B118CD521D018080110000CD53
|
||||
:1818F000C417F1CD851B01318011187221C1D1CD0A1AC82E00CDC81912
|
||||
:181908007932A631EB22A7310100005058211518E5212119E5E52194AA
|
||||
:18192000317E23B7CA4D19E52E081F6779D23B19E52AA73119EBE13AB0
|
||||
:18193800A631891F4F7A1F577B1F5F781F472D7CC22A19E1C9435A51BC
|
||||
:181950004FC9CD3B1A012084110000CD4B1AC1D1CD0A1ACA66072EFF76
|
||||
:18196800CDC81934342B7E32C2302B7E32BE302B7E32BA3041EBAF4FCC
|
||||
:18198000575F32C530E5C57DCDB930DE003FD2981932C530F1F137D2E3
|
||||
:18199800C1E1793C3D1FFA4B18177B175F7A175779174F297817473A1F
|
||||
:1819B000C5301732C53079B2B3C28519E521973135E1C28519C372072E
|
||||
:1819C80078B7CAEC197D219731AE80471FA878F2EB19C68077CA4B190E
|
||||
:1819E000CD701A772BC9CD0A1A2FE1B7E1F22A18C37207CD561A78B7B8
|
||||
:1819F800C8C602DA720747CDC41721973134C0C372073A9731B7C83A31
|
||||
:181A10009631FE2F179FC03CC9CD0A1A06881100002197314F70060011
|
||||
:181A280023368017C31218CD0A1AF02196317EEE8077C9EB2A9431E317
|
||||
:181A4000E52A9631E3E5EBC9CD591AEB2294316069229631EBC921940F
|
||||
:181A5800315E2356234E234623C911943106041A77132305C2671AC9F0
|
||||
:181A70002196317E07371F773F1F2323777907371F4F1FAEC978B7CA55
|
||||
:181A88000A1A21131AE5CD0A1A79C8219631AE79F8CD9F1A1FA9C9237C
|
||||
:181AA00078BEC02B79BEC02B7ABEC02B7B96C0E1E1C9474F575FB7C8A1
|
||||
:181AB800E5CD561ACD701AAE67FCD61A3E9890CD89187C17DC5C1806DF
|
||||
:181AD00000DC7518E1C91B7AA33CC00BC92197317EFE983A9431D07E99
|
||||
:181AE800CDB21A36987BF57917CD1218F1C921000078B1C83E1029DA6B
|
||||
:181B00003613EB29EBD20C1B09DA36133DC2FE1AC9FE2DF5CA1D1BFE60
|
||||
:181B18002BCA1D1B2BCD2A1847575F2F4FCDBB0BDA6E1BFE2ECA491B83
|
||||
:181B3000FE45C24D1BCDBB0BCD6111CDBB0BDA901B14C24D1BAF935F67
|
||||
:181B48000C0CCA251BE57B90F4661BF25C1BF5CD5219F13CC2501BD13D
|
||||
:181B6000F1CC331AEBC9C8F5CDF319F13DC9D557788947C5E5D5CDF36F
|
||||
:181B780019F1D630CD851BE1C1D1C3251BCD3B1ACD1C1AC1D1C3C4170D
|
||||
:181B90007B0707830786D6305FC33B1BE521FB06CD0115E1EBAF069823
|
||||
:181BA800CD211A210015E5219931E5CD0A1A3620F2BD1B362D23363035
|
||||
:181BC000CA731CE5FC331AAFF5CD791C01439111F84FCD851AB7E2EA64
|
||||
:181BD8001BF1CD671BF5C3CC1BCD5219F13CF5CD791CCDB2173CCDB2EE
|
||||
:181BF0001ACD4B1A010603F1813CFA061CFE08D2061C3C473E023D3D86
|
||||
:181C0800E1F5118C1C05C2171C362E2336302305362ECC601AC5E5D5FD
|
||||
:181C2000CD561AE1062F047B965F237A9E5723799E4F2B2BD2261CCD93
|
||||
:181C3800691823CD4B1AEBE17023C10DC2171C05CA571C2B7EFE30CAB9
|
||||
:181C50004B1CFE2EC4601AF1CA761C364523362BF2671C362D2F3C0616
|
||||
:181C68002F04D60AD2691CC63A237023772371E1C901749411F723CD8E
|
||||
:181C8000851AB7E1E2E11BE900000080A08601102700E8030064000021
|
||||
:181C98000A000001000021331AE3E9CD3B1A21881CCD481AC1D1CD0A70
|
||||
:181CB0001A78CAF11CF2BC1CB7CA6607B7CA2B18D5C579F67FCD561A72
|
||||
:181CC800F2D91CD5C5CDDD1AC1D1F5CD851AE17C1FE1229631E12294EF
|
||||
:181CE00031DC9E1CCC331AD5C5CDBE18C1D1CDFF18CD3B1A013881116C
|
||||
:181CF8003BAACDFF183A9731FE88D2E619CDDD1AC680C602DAE619F512
|
||||
:181D100021AD18CDB517CDF618F1C1D1F5CDC117CD331A21311DCD618D
|
||||
:181D28001D110000C14AC3FF1808402E9474704F2E776E02887AE6A0B6
|
||||
:181D40002A7C50AAAA7EFFFF7F7F0000808100000081CD3B1A11FD18FD
|
||||
:181D5800D5E5CD561ACDFF18E1CD3B1A7E23CD481A06F1C1D13DC8D562
|
||||
:181D7000C5F5E5CDFF18E1CD591AE5CDC417E1C36A1DCD0A1A21C930F4
|
||||
:181D8800FAE31D21EA30CD481A21C930C886E6070600772387874F0984
|
||||
:181DA000CD591ACDFF183AC8303CE6030600FE018832C83021E71D874D
|
||||
:181DB800874F09CDB517CD561A7B59EE4F4F36802B46368021C73034D5
|
||||
:181DD0007ED6ABC2DA1D770C151CCD151821EA30C3621A772B772B7760
|
||||
:181DE800C3BE1D68B1466899E9926910D1756821411ECDB517CD3B1A08
|
||||
:181E000001498311DB0FCD4B1AC1D1CD6019CD3B1ACDDD1AC1D1CDC1F2
|
||||
:181E18001721451ECDBB17CD0A1A37F22D1ECDB217CD0A1AB7F5F433B9
|
||||
:181E30001A21451ECDB517F1D4331A21491EC3521DDB0F4981000000E3
|
||||
:181E48007F05BAD71E866426998758342387E05DA586DA0F4983CD3BC4
|
||||
:181E60001ACDFD1DC1E1CD3B1AEBCD4B1ACDF71DC35E19CD0A1AFC9EE2
|
||||
:181E78001CFC331A3A9731FE81DA901E0100815159CD601921BB17E59A
|
||||
:181E9000219A1ECD521D21411EC9094AD73B78026E847BFEC12F7C74B2
|
||||
:181EA800319A7D843D5A7DC87F917EE4BB4C7E6CAAAA7F00000081C9FA
|
||||
:181EC000D7C93E0CC3FC1FCD89177B32F230C9CD2810CD6D0CED53F6BC
|
||||
:181ED80030ED53F830C9CD6D0CD5E146237EC3E313CD2810CD6D0CD5D5
|
||||
:181EF000CD310A2CCD2810CD6D0CE3732372E1C9CD2B10CD6D0CC52192
|
||||
:181F080099317AFE00280CCD381F78FE302802702371237BCD381F7A17
|
||||
:181F2000FE00200578FE30280270237123AF772377C1219931C39114BB
|
||||
:181F380047E60FFE0A3802C607C6304F780F0F0F0FE60FFE0A3802C650
|
||||
:181F500007C63047C9EB210000CD6E1FDA8E1F1805CD6E1F381F29295F
|
||||
:181F68002929B56F18F3131AFE20CA6E1FD630D8FE0A3805D607FE0A36
|
||||
:181F8000D8FE103FC9EB7A4BE5CDE213E1C91E26C37707CD2B10CD6D93
|
||||
:181F98000CC521993106110578FE012808CB13CB1230F41804CB13CB0E
|
||||
:181FB000123E30CE0077230520F3AF772377C1219931C39114EB210039
|
||||
:181FC80000CDE21FDAF01FD63029B56FCDE21F30F6EB7A4BE5CDE213AC
|
||||
:181FE000E1C9131AFE20CAE21FFE30D8FE323FC91E28C37707DD21FF67
|
||||
:181FF800FFC3C703C30800C300003E0032FD30C3CE03ED45F5A0C1B846
|
||||
:092010003E00C9CD3C0AC3630E79
|
||||
:00000001FF
|
||||
:0430040000000000C8
|
||||
:18000000F3C3940000000000C332000000000000C31B000000000000CB
|
||||
:18001800C35C003A0030FE002008CD630028FBDB81C9CD6A0028FBDB74
|
||||
:1800300083C9F53A0030FE00200D1801F5CD500028FBF1D381C9F5CDC4
|
||||
:18004800560028FBF1D383C9DB800FCB47C9DB820FCB47C93A0030FE23
|
||||
:18006000002007DB80E601FE00C9DB82E601FE00C9D7FE0A28FBFE1B32
|
||||
:1800780020023E03C9FE0D280AFE0C2804FE203801CFC93E0DCF3E0A80
|
||||
:18009000CF3E0DC93128303E95D380D3823E00320030216503CD1B015F
|
||||
:1800A8003E01320030216503CD1B01CD6300280F3E00320030CD1B003E
|
||||
:1800C000FE20C2B3001814CD6A0028E73E01320030CD1B00FE20C2B307
|
||||
:1800D8000018003E0CCD3C00CD4600CD2201219602CD1B0121EC00E50E
|
||||
:1800F000CD22013E3ECFCD7100FE2038F9FE3ACA9901CD7D00E65FFE07
|
||||
:1801080042CADA01FE47CA9301FE58CAF1013E3FCF18D57EB7C8CF231B
|
||||
:1801200018F93E0DCF3E0ACFC9CD7100FE03C8FE2038F6C9CD29014762
|
||||
:18013800CD29014FCD73014F7B915F79C9210000CD8C01FE0D200E3741
|
||||
:18015000C9210000CD8C01FE0DC8FE2CC8FE0328EE29292929D630FECF
|
||||
:180168000A3802D607E60F856F18E178D630FE0A3802D60707070707C3
|
||||
:180180004779D630FE0A3802D60780C9CD7100CD7D00C9CD4501D8E518
|
||||
:18019800C91E00CD340157CD340167CD34016FCD3401FE012009CD340A
|
||||
:1801B000017BA7281E18157AA7280BCD340177233E2ECF1518F1CD3457
|
||||
:1801C800017BA7C8215403CD1B01C9218A03CD1B01C9214203CD1B015B
|
||||
:1801E000CD2901C8E65FFE43CA9503FE57CA9803C9210302CD1B01CD01
|
||||
:1801F8002901C8E65FFE59CA2402C90D0A426F6F742043502F4D3F008F
|
||||
:180210000D0A4C6F6164696E672043502F4D2E2E2E0D0A00211002CD31
|
||||
:180228001B0106183E003204303205303206303207302100D022023063
|
||||
:18024000CD6E021100022A0230192202303A04303C32043010EA3A0049
|
||||
:1802580030F52AFEFFE93A0630D38C3A0530D38B3A0430D38AC9F5C56F
|
||||
:18027000E5DB89FE8020FACD5E023E00D3890E040680DB89FEE020FADA
|
||||
:18028800DB8877230520F30D20EEE1C1F1C943502F4D20426F6F7420EF
|
||||
:1802A000524F4D20322E3020627920472E20536561726C650D0A0D0A6E
|
||||
:1802B8004243206F72204257202D20524F4D20424153494320436F6CD4
|
||||
:1802D000642F5761726D0D0A5820202020202020202D20426F6F74207C
|
||||
:1802E80043502F4D20286C6F61642024443030302D2446464646290D50
|
||||
:180300000A3A6E6E6E6E2E2E2E202D204C6F616420496E74656C2D48E1
|
||||
:1803180065782066696C65207265636F72640D0A476E6E6E6E2020201B
|
||||
:18033000202D2052756E206C6F63206E6E6E6E0D0A000D0A436F6C642D
|
||||
:18034800206F72207761726D3F0D0A00436865636B73756D20657272D3
|
||||
:180360006F720D0A000C5072657373205B53504143455D20746F2061AC
|
||||
:180378006374697661746520636F6E736F6C650D0A00436F6D706C65F3
|
||||
:1803900074650D0A00C39B03C33904DD210000C3A6034C0CC21321B09C
|
||||
:1803A80030F9C3E11F117306066321B0301A77231305C2B503F9CD74DD
|
||||
:1803C00008CD420E325A3132A931218804CDE014CD9108CD9A0BB7C278
|
||||
:1803D800EF03210D32237CB5CA01047E472F77BE70CADD03C30104CDC0
|
||||
:1803F000660CB7C24207EB2B3ED94677BE70C2CA032B110C32CD0A0ABF
|
||||
:18040800DACA0311CEFF225F3119220A31CD4F082A0A3111EFFF19117D
|
||||
:18042000A9317D936F7C9A67E5215104CDE014E1CD831B214204CDE072
|
||||
:1804380014311631CD7408C38D0720427974657320667265650D0A0080
|
||||
:18045000005A38302042415349432056657220342E37620D0A436F70AF
|
||||
:18046800797269676874202843292031393738206279204D6963726F23
|
||||
:18048000736F66740D0A00004D656D6F727920746F7000F819BC1A0EB0
|
||||
:180498001AB330A0132517CE13821C611D9D18D01CD61DDC1D3D1E5229
|
||||
:1804B0001E7917BD1E013152166A14EC1661167216DF1E721F8216B2BA
|
||||
:1804C80016BC16C54E44C64F52CE455854C4415441C94E505554C44900
|
||||
:1804E0004DD2454144CC4554C74F544FD2554EC946D24553544F5245D5
|
||||
:1804F800C74F535542D2455455524ED2454DD3544F50CF5554CF4ECEFF
|
||||
:18051000554C4CD7414954C44546D04F4B45C44F4B45D3435245454E50
|
||||
:18052800CC494E4553C34C53D749445448CD4F4E49544F52D34554D278
|
||||
:1805400045534554D052494E54C34F4E54CC495354C34C454152C34CFF
|
||||
:180558004F4144C353415645CE4557D4414228D44FC64ED3504328D443
|
||||
:1805700048454ECE4F54D3544550ABADAAAFDEC14E44CF52BEBDBCD35E
|
||||
:18058800474EC94E54C14253D55352C65245C94E50D04F53D35152D20D
|
||||
:1805A0004E44CC4F47C55850C34F53D3494ED4414EC1544ED045454BA8
|
||||
:1805B800C445454BD04F494E54CC454ED3545224D6414CC15343C348C7
|
||||
:1805D0005224C8455824C2494E24CC45465424D24947485424CD49444C
|
||||
:1805E8002480E40BE10ABC0F310DC30EF811F20E480DEE0CD10CC00DA1
|
||||
:18060000AA0BDD0C0C0D330DE20B3117A20D230C3717D6138017C81E24
|
||||
:18061800330DAE1EA11EA61EDE1F04310731E40D100C560A8B0C330D8D
|
||||
:18063000330D4E08796A1B799E177CDC187C3D197F8B1C505111465040
|
||||
:18064800114E46534E52474F4446434F564F4D554C425344442F3049F8
|
||||
:1806600044544D4F534C535354434E55464D4F4858424EC33904C36199
|
||||
:180678000CD300C9D6006F7CDE006778DE00473E00C9000000354ACACF
|
||||
:1806900099391C76982295B3980ADD479853D199990A1A9F9865BCCDEF
|
||||
:1806A80098D6773E9852C74F80DB00C901FF1C000014001400000000AF
|
||||
:1806C00000C38709C30000C30000C300000D32FEFFAA31204572726FB7
|
||||
:1806D800720020696E20004F6B0D0A0000427265616B00210400397EEF
|
||||
:1806F00023FE81C04E234623E569607AB3EBCA0507EBCD0A0A010D0040
|
||||
:18070800E1C809C3EF06CD2807C5E3C1CD0A0A7E02C80B2BC31407E5E8
|
||||
:180720002A8A31060009093EE53ED0956F3EFF9CDA37076739E1D81E27
|
||||
:180738000CC356072A7931220C311E02011E14011E00011E12011E2266
|
||||
:18075000011E0A011E18CD740832F530CD350E214906573E3FCD1B0A4B
|
||||
:18076800197ECD1B0ACD9A0BCD1B0A21D306CDE0142A0C3111FEFFCD8F
|
||||
:180780000A0ACAA6037CA53CC47B1B3EC1AF32F530CD350E21DF06CD3B
|
||||
:18079800E01421FFFF220C31CD8709DA9A07CD9A0B3C3DCA9A07F5CDE7
|
||||
:1807B000660CD5CD9E0847D1F1D27A0BD5C5AF327C31CD9A0BB7F5CD04
|
||||
:1807C8002E08DAD307F1F5CA070DB7C5D2EA07EB2A86311A020313CD61
|
||||
:1807E0000A0AC2DB076069228631D1F1CA11082A8631E3C109E5CD0EB4
|
||||
:1807F80007E1228631EB74D12323732372231111311A772313B7C209EB
|
||||
:1808100008CD5A0823EB626B7E23B6CA9A07232323AFBE23C22208EB2C
|
||||
:18082800732372C316082A0E31444D7E23B62BC823237E23666FCD0AF8
|
||||
:180840000A60697E23666F3FC83FD0C33108C02A0E31AF772377232217
|
||||
:1808580086312A0E312B227E312A5F31227331AFCDAA0B2A8631228830
|
||||
:1808700031228A31C12A0A31F9216331226131AF6F67228431327B31A0
|
||||
:18088800228E31E5C52A7E31C93E3FCD1B0A3E20CD1B0AC3FE30AF329A
|
||||
:1808A0005E310E051111317EFE20CA260947FE22CA4609B7CA4D093A25
|
||||
:1808B8005E31B77EC22609FE3F3E9ECA26097EFE30DAD108FE3CDA26C8
|
||||
:1808D00009D511CA04C5012209C5067F7EFE61DAEA08FE7BD2EA08E64C
|
||||
:1808E8005F774EEB23B6F2EC08047EE67FC8B9C2EC08EBE5131AB7FA5E
|
||||
:180900001E094F78FE88C20D09CD9A0B2B237EFE61DA1609E65FB9CA35
|
||||
:18091800FC08E1C3EA0848F1EBC9EB79C1D12312130CD63ACA3409FEE1
|
||||
:1809300049C23709325E31D654C2A708477EB7CA4D09B8CA2609231286
|
||||
:180948000C13C33D092110311213121312C93AF430B73E0032F430C27D
|
||||
:180960006A0905CA8709CD1B0A3E052BCA7E097ECD1B0AC39009052B00
|
||||
:18097800CD1B0AC29009CD1B0ACD420EC387092111310601AF32F43049
|
||||
:18099000CD450A4FFE7FCA56093AF430B7CAA9093E00CD1B0AAF32F4A8
|
||||
:1809A8003079FE07CAED09FE03CC420E37C8FE0DCA3D0EFE15CA810926
|
||||
:1809C000FE40CA7E09FE5FCA7609FE08CA7609FE12C2E809C5D5E53623
|
||||
:1809D80000CDF21F211131CDE014E1D1C1C39009FE20DA900978FE49E6
|
||||
:1809F0003E07D2020A7971327C312304CD1B0AC39009CD1B0A3E08C393
|
||||
:180A0800FC097C92C07D93C97EE3BE23E3CA9A0BC34207F53AF530B77F
|
||||
:180A2000C21515F1C5F5FE20DA3F0A3AF230473A5B3104CA3B0A05B8AD
|
||||
:180A3800CC420E3C325B31F1C1CDDB1FC9CD9F1EE67FFE0FC03AF53033
|
||||
:180A50002F32F530AFC9CD660CC0C1CD2E08C5CDAC0AE14E2346237852
|
||||
:180A6800B1CA8D07CDB50ACDC50BC5CD420E5E235623E5EBCD831B3EE9
|
||||
:180A800020E1CD1B0A7EB723CA620AF2820AD67F4F11CB041A13B7F205
|
||||
:180A9800940A0DC2940AE67FCD1B0A1A13B7F29E0AC3850AE52AF830DD
|
||||
:180AB00022F630E1C9E5D52AF63011FFFFED5A22F630D1E1F0E52AF8EB
|
||||
:180AC8003022F630CD9F1EFE03CAD80AE1C3B50A2AF83022F630C33C6B
|
||||
:180AE000043E64327B31CD480DC1E5CD310D22773121020039CDEF06BF
|
||||
:180AF800D1C2110B09D52B562B5E2323E52A7731CD0A0AE1C2F50AD1FE
|
||||
:180B1000F9EB0E08CD1F07E52A7731E3E52A0C31E3CD0A10CD100AA6A3
|
||||
:180B2800CD0710E5CD351AE1C5D5010081515A7EFEAB3E01C24D0BCDDB
|
||||
:180B40009A0BCD0710E5CD351ACDE919E1C5D5F533E52A7E31E3068179
|
||||
:180B5800C533CDC50B227E317EFE3ACA7A0BB7C24207237E23B6CAEC28
|
||||
:180B70000B235E2356EB220C31EBCD9A0B115A0BD5C8D680DA480DFE2B
|
||||
:180B880025D24207074F0600EB21EA05094E2346C5EB237EFE3AD0FEA7
|
||||
:180BA00020CA9A0BFE303F3C3DC9EB2A0E31CABF0BEBCD660CE5CD2E0D
|
||||
:180BB800086069D1D2070D2B228C31EBC9DFC8D7FE1B2811FE03280DD9
|
||||
:180BD000FE13C0D7FE11C8FE03280718F63EFF32FD30C0F6C0227E316D
|
||||
:180BE80021F6FFC12A0C31F57DA43CCAFF0B2282312A7E31228431AF5D
|
||||
:180C000032F530CD350EF121E506C27607C38D072A84317CB51E20CACA
|
||||
:180C18005607EB2A8231220C31EBC9CD6817C032F130C9E52AFA300625
|
||||
:180C3000004F0922FA30E1C97EFE41D8FE5B3FC9CD9A0BCD0710CDE95C
|
||||
:180C480019FA610C3A9731FE90DA911A018090110000E5CD641AE1517B
|
||||
:180C6000C81E08C356072B110000CD9A0BD0E5F5219819CD0A0ADA4247
|
||||
:180C780007626B19291929F1D6305F160019EBE1C36A0CCA5E08CD4342
|
||||
:180C90000C2BCD9A0BE52A5F31CAAE0CE1CD100A2CD5CD430C2BCD9A09
|
||||
:180CA8000BC24207E3EB7D935F7C9A57DA3707E52A863101280009CD97
|
||||
:180CC0000A0AD23707EB220A31E1225F31E1C35E08CA5A08CD5E0801B3
|
||||
:180CD8005A0BC3ED0C0E03CD1F07C1E5E52A0C31E33E8CF533C5CD6620
|
||||
:180CF0000CCD330DE52A0C31CD0A0AE123DC3108D42E0860692BD81E99
|
||||
:180D08000EC35607C016FFCDEB06F9FE8C1E04C25607E1220C31237C6F
|
||||
:180D2000B5C22B0D3A7C31B7C28C07215A0BE33EE1013A0E00060079C9
|
||||
:180D380048477EB7C8B8C823FE22CA370DC33A0DCDFD11CD100AB4D5F1
|
||||
:180D50003A5D31F5CD1910F1E3227E311FCD0C10CA9B0DE52A9431E500
|
||||
:180D680023235E23562A0E31CD0A0AD28A0D2A0A31CD0A0AD1D2920D1B
|
||||
:180D8000216F31CD0A0AD2920D3ED1CD4116EBCD7A14CD4116E1CD44B9
|
||||
:180D98001AE1C9E5CD411AD1E1C9CD68177E47FE8CCAB10DCD100A8865
|
||||
:180DB0002B4B0D78CA820BCD670CFE2CC0C3B20DCD19107EFE88CACE9B
|
||||
:180DC8000DCD100AA92BCD0A10CDE919CA330DCD9A0BDAEE0CC3810BF6
|
||||
:180DE0002BCD9A0BCA420EC8FEA5CA750EFEA8CA750EE5FE2CCA5E0E54
|
||||
:180DF800FE3BCA980EC1CD1910E53A5D31B7C22E0ECD8E1BCD9E1436F6
|
||||
:180E1000202A9431342A94313AF2304704CA2A0E043A5B31863DB8D4D6
|
||||
:180E2800420ECDE314AFC4E314E1C3E00D3A5B31B7C8C3420E360021F4
|
||||
:180E400010313E0DCD1B0A3E0ACD1B0AAF325B313AF1303DC8F5AFCDA4
|
||||
:180E58001B0AF1C3530E3AF330473A5B31B8D4420ED2980ED60ED26C68
|
||||
:180E70000E2FC38D0EF5CD6517CD100A292BF1D6A8E5CA880E3A5B31DC
|
||||
:180E88002F83D2980E3C473E20CD1B0A05C2910EE1CD9A0BC3E70D3FA6
|
||||
:180EA0005265646F2066726F6D2073746172740D0A003A7D31B7C23CDA
|
||||
:180EB80007C1219F0ECDE014C38D08CD4B147EFE223E0032F530C2DD75
|
||||
:180ED0000ECD9F14CD100A3BE5CDE3143EE5CD9108C1DAE90B237EB741
|
||||
:180EE8002BC5CA300D362CC3F70EE52A8C31F6AF327D31E3C3030FCDFB
|
||||
:180F0000100A2CCDFD11E3D57EFE2CCA2B0F3A7D31B7C2980F3E3FCD02
|
||||
:180F18001B0ACD9108D1C1DAE90B237EB72BC5CA300DD53A5D31B7CA69
|
||||
:180F3000550FCD9A0B5747FE22CA490F3A7D31B757CA460F163A062C5C
|
||||
:180F48002BCDA214EB21600FE3D5C3630DCD9A0BCDF01AE3CD411AE148
|
||||
:180F60002BCD9A0BCA6C0FFE2CC2B20EE32BCD9A0BC2FF0ED13A7D31E3
|
||||
:180F7800B7EBC2C00BD5B621870FC4E014E1C93F45787472612069675B
|
||||
:180F90006E6F7265640D0A00CD310DB7C2B10F237E23B61E06CA560711
|
||||
:180FA800235E2356EB227931EBCD9A0BFE83C2980FC32B0F110000C467
|
||||
:180FC000FD11227E31CDEB06C24807F9D57E23F5D5CD271AE3E5CD94FB
|
||||
:180FD80017E1CD411AE1CD381AE5CD641AE1C190CD381ACAF70FEB2283
|
||||
:180FF0000C316960C3560BF92A7E317EFE2CC25A0BCD9A0BCDBF0FCD44
|
||||
:181008001910F6373A5D318FB7E8C35407CD100A282B1600D50E01CD65
|
||||
:181020001F07CD90102280312A8031C178FE78D40A107E1600D6B3DAE3
|
||||
:181038005110FE03D25110FE0117AABA57DA4207227531CD9A0BC335E5
|
||||
:18105000107AB7C278117E227531D6ACD8FE07D05F3A5D313DB37BCA2B
|
||||
:18106800D61507835F213406197856BAD023CD0A10C5012810C5434A76
|
||||
:18108000CD1A1A58514E234623C52A7531C31C10AF325D31CD9A0B1E51
|
||||
:1810980024CA5607DAF01ACD380CD2F710FE262012CD9A0BFE48CA341B
|
||||
:1810B0001FFE42CAA41F1E02CA5607FEACCA9010FE2ECAF01AFEADCA6C
|
||||
:1810C800E610FE22CA9F14FEAACAD811FEA7CA0314D6B6D20811CD1543
|
||||
:1810E00010CD100A29C9167DCD1C102A8031E5CD121ACD0A10E1C9CD6C
|
||||
:1810F800FD11E5EB2294313A5D31B7CC271AE1C90600074FC5CD9A0B52
|
||||
:1811100079FE31DA2F11CD1510CD100A2CCD0B10EB2A9431E3E5EBCDBE
|
||||
:181128006817EBE3C33711CDDE10E311F210D5019304094E236669E907
|
||||
:1811400015FEADC8FE2DC814FE2BC8FEACC82BC9F6AFF5CD0A10CD4C17
|
||||
:181158000CF1EBC1E3EBCD2A1AF5CD4C0CF1C17921C113C27311A34F85
|
||||
:1811700078A2E9B34F78B2E9218A113A5D311F7A175F166478BAD0C37D
|
||||
:1811880079108C1179B71FC1D1F5CD0C1021CE11E5CA641AAF325D31CE
|
||||
:1811A000D5CD23167E23234E2346D1C5F5CD2716CD381AF157E17BB2D7
|
||||
:1811B800C87AD601D8AFBB3CD0151D0ABE2303CAB6113FC3F4193C8F2D
|
||||
:1811D000C1A0C6FF9FC3FB19165ACD1C10CD0A10CD4C0C7B2F4F7A2F54
|
||||
:1811E800CDC113C1C328102BCD9A0BC8CD100A2C01EF11C5F6AF325C21
|
||||
:181200003146CD380CDA4207AF4F325D31CD9A0BDA1912CD380CDA26E5
|
||||
:18121800124FCD9A0BDA1A12CD380CD21A12D624C235123C325D310FC8
|
||||
:18123000814FCD9A0B3A7B313DCAE212F245127ED628CABA12AF327BCC
|
||||
:1812480031E550592A8E31CD0A0A119031CA2A192A8831EB2A8631CDAA
|
||||
:181260000A0ACA7812799623C26D12789623CAAC1223232323C35F1222
|
||||
:18127800E1E3D511FA10CD0A0AD1CAAF12E3E5C50106002A8A31E50906
|
||||
:18129000C1E5CD0E07E1228A3160692288312B3600CD0A0AC29E12D1D7
|
||||
:1812A80073237223EBE1C932973121DE06229431E1C9E52A5C31E35708
|
||||
:1812C000D5C5CD400CC1F1EBE3E5EB3C577EFE2CCAC012CD100A29220A
|
||||
:1812D8008031E1225C311E00D511E5F52A88313E19EB2A8A31EBCD0A13
|
||||
:1812F0000ACA1A137EB923C2FC127EB8235E235623C2E8123A5C31B72E
|
||||
:18130800C24B07F1444DCA2A1996CA78131E10C35607110400F1CA61C0
|
||||
:181320000C712370234FCD1F07232322753171233A5C311779010B003B
|
||||
:18133800D23D13C10371237023F5E5CDD51AEBE1F13DC23513F5424B74
|
||||
:18135000EB19DA3707CD2807228A312B3600CD0A0AC25B1303572A7525
|
||||
:18136800315EEB2909EB2B2B73237223F1DA9C13474F7E2316E15E232C
|
||||
:181380005623E3F5CD0A0AD21513E5CDD51AD119F13D444DC27D132964
|
||||
:1813980029C109EB2A8031C92A8A31EB210000393A5D31B7CABC13CDAC
|
||||
:1813B0002316CD23152A0A31EB2A73317D934F7C9A41501E00215D31F6
|
||||
:1813C800730690C3001A3A5B3147AFC3C213CD5914CD4B1401310DC569
|
||||
:1813E000D5CD100A28CDFD11E5EB2B562B5EE1CD0A10CD100A29CD10A7
|
||||
:1813F8000AB4444DE3712370C39814CD5914D5CDDE10CD0A10E35E2323
|
||||
:1814100056237AB3CA4E077E23666FE52A8E31E3228E312A9231E52AFB
|
||||
:181428009031E5219031D5CD411AE1CD07102BCD9A0BC24207E1229027
|
||||
:1814400031E1229231E1228E31E1C9E52A0C31237CB5E1C01E16C356A3
|
||||
:1814580007CD100AA73E80327B31B647CD0212C30A10CD0A10CD8E1B33
|
||||
:18147000CD9E14CD2316017E16C57E2323E5CDF914E14E2346CD9214F7
|
||||
:18148800E56FCD1616D1C9CDF914216F31E5772323732372E1C92B0645
|
||||
:1814A0002250E50EFF237E0CB7CAB414BACAB414B8C2A514FE22CC9AD5
|
||||
:1814B8000BE323EB79CD9214116F312A61312294313E01325D31CD44D0
|
||||
:1814D0001ACD0A0A226131E17EC01E1EC3560723CD9E14CD2316CD382D
|
||||
:1814E8001A1C1DC80ACD1B0AFE0DCC4C0E03C3EA14B70EF1F52A0A31D0
|
||||
:18150000EB2A73312F4F06FF0923CD0A0ADA171522733123EBF1C9F105
|
||||
:181518001E1ACA5607BFF501FB14C52A5F31227331210000E52A0A31E8
|
||||
:18153000E5216331EB2A6131EBCD0A0A013415C288152A8631EB2A886F
|
||||
:1815480031EBCD0A0ACA5B157E2323B7CD8B15C34515C1EB2A8A31EBD3
|
||||
:18156000CD0A0ACAB115CD381A7BE509B7F25A15227531E14E0600095C
|
||||
:181578000923EB2A7531EBCD0A0ACA5B15017A15C5F6807E23235E235E
|
||||
:181590005623F0B7C8444D2A7331CD0A0A6069D8E1E3CD0A0AE3E560AD
|
||||
:1815A80069D0C1F1F1E5D5C5C9D1E17DB4C82B462B4EE52B2B6E2600A3
|
||||
:1815C0000950592B444D2A7331CD1107E171237069602BC32615C5E571
|
||||
:1815D8002A9431E3CD9010E3CD0B107EE52A9431E5861E1CDA5607CDF6
|
||||
:1815F0008F14D1CD2716E3CD2616E52A7131EBCD0D16CD0D16212510A7
|
||||
:18160800E3E5C3C014E1E37E23234E23466F2C2DC80A120313C317167A
|
||||
:18162000CD0B102A9431EBCD4116EBC0D550591B4E2A7331CD0A0AC2C9
|
||||
:181638003F164709227331E1C92A61312B462B4E2B2BCD0A0AC0226165
|
||||
:1816500031C901D113C5CD2016AF57325D317EB7C901D113C5CD561634
|
||||
:18166800CA610C23235E23561AC93E01CD8F14CD6B172A713173C1C372
|
||||
:18168000C014CD1B17AFE34FE57EB8DA901678110E00C5CDF914C1E12B
|
||||
:18169800E5232346236668060009444DCD92146FCD1616D1CD2716C3BF
|
||||
:1816B000C014CD1B17D1D51A90C38616EB7ECD20170405CA610CC51E10
|
||||
:1816C800FFFE29CAD516CD100A2CCD6817CD100A29F1E3018816C53D4B
|
||||
:1816E000BE0600D04F7E91BB47D843C9CD5616CA09185F23237E23664A
|
||||
:1816F8006FE5194672E3C57EFE24C20A17CD341F180DFE25C21417CD68
|
||||
:18171000A41F1803CDF01AC1E170C9EBCD100A29C1D1C543C9CD6B1784
|
||||
:1817280032EF30CDEE30C3D113CD5517C3B630CD5517F51E002BCD9A06
|
||||
:181740000BCA4B17CD100A2CCD6817C1CDEE30ABA0CA4C17C9CD6817C2
|
||||
:1817580032EF3032B730CD100A2CC36817CD9A0BCD0710CD460C7AB714
|
||||
:18177000C2610C2BCD9A0B7BC9CD4C0C1AC3D113CD0710CD4C0CD5CDC0
|
||||
:18178800100A2CCD6817D112C921671CCD381AC3A317CD381A21C1D1F9
|
||||
:1817A000CD121A78B7C83A9731B7CA2A1A90D2BD172F3CEBCD1A1AEB02
|
||||
:1817B800CD2A1AC1D1FE19D0F5CD4F1A67F1CD6818B4219431F2E31739
|
||||
:1817D000CD4818D229182334CA51072E01CD7E18C32918AF90477E9B13
|
||||
:1817E8005F237E9A57237E994FDC54186863AF4779B7C216184A546543
|
||||
:181800006F78D608FEE0C2F717AF329731C905297A1757798F4FF20E7E
|
||||
:1818180018785C45B7CA29182197318677D20918C878219731B7FC3BD5
|
||||
:181830001846237EE680A94FC32A1A1CC014C00CC00E8034C0C3510723
|
||||
:181848007E835F237E8A57237E894FC92198317E2F77AF6F90477D9B49
|
||||
:181860005F7D9A577D994FC90600D608DA7718435A510E00C36A18C621
|
||||
:18187800096FAF2DC8791F4F7A1F577B1F5F781F47C37A1800000081B8
|
||||
:1818900003AA561980F122768045AA3882CDE919B7EA610C2197317EAE
|
||||
:1818A80001358011F30490F570D5C5CDA317C1D104CD3F19218C18CD07
|
||||
:1818C0009A17219018CD311D018080110000CDA317F1CD641B013180F3
|
||||
:1818D80011187221C1D1CDE919C82E00CDA7197932A631EB22A73101F0
|
||||
:1818F0000000505821F417E5210019E5E52194317E23B7CA2C19E52EC3
|
||||
:18190800081F6779D21A19E52AA73119EBE13AA631891F4F7A1F577B7C
|
||||
:181920001F5F781F472D7CC20919E1C9435A514FC9CD1A1A012084115F
|
||||
:181938000000CD2A1AC1D1CDE919CA45072EFFCDA71934342B7E32C250
|
||||
:18195000302B7E32BE302B7E32BA3041EBAF4F575F32C530E5C57DCDC6
|
||||
:18196800B930DE003FD2771932C530F1F137D2C1E1793C3D1FFA2A18FE
|
||||
:18198000177B175F7A175779174F297817473AC5301732C53079B2B336
|
||||
:18199800C26419E521973135E1C26419C3510778B7CACB197D21973177
|
||||
:1819B000AE80471FA878F2CA19C68077CA2A19CD4F1A772BC9CDE9195C
|
||||
:1819C8002FE1B7E1F20918C35107CD351A78B7C8C602DA510747CDA36D
|
||||
:1819E0001721973134C0C351073A9731B7C83A9631FE2F179FC03CC9B6
|
||||
:1819F800CDE91906881100002197314F70060023368017C3F117CDE94A
|
||||
:181A100019F02196317EEE8077C9EB2A9431E3E52A9631E3E5EBC9CDC5
|
||||
:181A2800381AEB2294316069229631EBC92194315E2356234E23462362
|
||||
:181A4000C911943106041A77132305C2461AC92196317E07371F773FB5
|
||||
:181A58001F2323777907371F4F1FAEC978B7CAE91921F219E5CDE91904
|
||||
:181A700079C8219631AE79F8CD7E1A1FA9C92378BEC02B79BEC02B7A40
|
||||
:181A8800BEC02B7B96C0E1E1C9474F575FB7C8E5CD351ACD4F1AAE672A
|
||||
:181AA000FCB51A3E9890CD68187C17DC3B180600DC5418E1C91B7AA3BE
|
||||
:181AB8003CC00BC92197317EFE983A9431D07ECD911A36987BF57917B6
|
||||
:181AD000CDF117F1C921000078B1C83E1029DA1513EB29EBD2EB1A0905
|
||||
:181AE800DA15133DC2DD1AC9FE2DF5CAFC1AFE2BCAFC1A2BCD091847BC
|
||||
:181B0000575F2F4FCD9A0BDA4D1BFE2ECA281BFE45C22C1BCD9A0BCD21
|
||||
:181B18004011CD9A0BDA6F1B14C22C1BAF935F0C0CCA041BE57B90F4EB
|
||||
:181B3000451BF23B1BF5CD3119F13CC22F1BD1F1CC121AEBC9C8F5CDB8
|
||||
:181B4800D219F13DC9D557788947C5E5D5CDD219F1D630CD641BE1C113
|
||||
:181B6000D1C3041BCD1A1ACDFB19C1D1C3A3177B0707830786D6305FCB
|
||||
:181B7800C31A1BE521DA06CDE014E1EBAF0698CD001A21DF14E5219903
|
||||
:181B900031E5CDE9193620F29C1B362D233630CA521CE5FC121AAFF584
|
||||
:181BA800CD581C01439111F84FCD641AB7E2C91BF1CD461BF5C3AB1B52
|
||||
:181BC000CD3119F13CF5CD581CCD91173CCD911ACD2A1A010603F181DD
|
||||
:181BD8003CFAE51BFE08D2E51B3C473E023D3DE1F5116B1C05C2F61B64
|
||||
:181BF000362E2336302305362ECC3F1AC5E5D5CD351AE1062F047B9679
|
||||
:181C08005F237A9E5723799E4F2B2BD2051CCD481823CD2A1AEBE17064
|
||||
:181C200023C10DC2F61B05CA361C2B7EFE30CA2A1CFE2EC43F1AF1CADC
|
||||
:181C3800551C364523362BF2461C362D2F3C062F04D60AD2481CC63AB3
|
||||
:181C5000237023772371E1C901749411F723CD641AB7E1E2C01BE90054
|
||||
:181C6800000080A08601102700E803006400000A000001000021121ADF
|
||||
:181C8000E3E9CD1A1A21671CCD271AC1D1CDE91978CAD01CF29B1CB7DE
|
||||
:181C9800CA4507B7CA0A18D5C579F67FCD351AF2B81CD5C5CDBC1AC113
|
||||
:181CB000D1F5CD641AE17C1FE1229631E1229431DC7D1CCC121AD5C5F6
|
||||
:181CC800CD9D18C1D1CDDE18CD1A1A013881113BAACDDE183A9731FEB9
|
||||
:181CE00088D2C519CDBC1AC680C602DAC519F5218C18CD9417CDD5185F
|
||||
:181CF800F1C1D1F5CDA017CD121A21101DCD401D110000C14AC3DE1892
|
||||
:181D100008402E9474704F2E776E02887AE6A02A7C50AAAA7EFFFF7F9C
|
||||
:181D28007F0000808100000081CD1A1A11DC18D5E5CD351ACDDE18E122
|
||||
:181D4000CD1A1A7E23CD271A06F1C1D13DC8D5C5F5E5CDDE18E1CD3830
|
||||
:181D58001AE5CDA317E1C3491DCDE91921C930FAC21D21EA30CD271AD8
|
||||
:181D700021C930C886E6070600772387874F09CD381ACDDE183AC830EC
|
||||
:181D88003CE6030600FE018832C83021C61D87874F09CD9417CD351A69
|
||||
:181DA0007B59EE4F4F36802B46368021C730347ED6ABC2B91D770C1573
|
||||
:181DB8001CCDF41721EA30C3411A772B772B77C39D1D68B1466899E945
|
||||
:181DD000926910D1756821201ECD9417CD1A1A01498311DB0FCD2A1A91
|
||||
:181DE800C1D1CD3F19CD1A1ACDBC1AC1D1CDA01721241ECD9A17CDE9DB
|
||||
:181E00001937F20C1ECD9117CDE919B7F5F4121A21241ECD9417F1D4AE
|
||||
:181E1800121A21281EC3311DDB0F49810000007F05BAD71E866426997E
|
||||
:181E30008758342387E05DA586DA0F4983CD1A1ACDDC1DC1E1CD1A1A56
|
||||
:181E4800EBCD2A1ACDD61DC33D19CDE919FC7D1CFC121A3A9731FE81A0
|
||||
:181E6000DA6F1E0100815159CD3F19219A17E521791ECD311D21201EC9
|
||||
:181E7800C9094AD73B78026E847BFEC12F7C74319A7D843D5A7DC87F38
|
||||
:181E9000917EE4BB4C7E6CAAAA7F00000081C9D7C93E0CC3DB1FCD685D
|
||||
:181EA800177B32F230C9CD0710CD4C0CED53F630ED53F830C9CD4C0CAE
|
||||
:181EC000D5E146237EC3C213CD0710CD4C0CD5CD100A2CCD0710CD4CE7
|
||||
:181ED8000CE3732372E1C9CD0A10CD4C0CC52199317AFE00280CCD1705
|
||||
:181EF0001F78FE302802702371237BCD171F7AFE00200578FE302802D9
|
||||
:181F080070237123AF772377C1219931C3701447E60FFE0A3802C6079C
|
||||
:181F2000C6304F780F0F0F0FE60FFE0A3802C607C63047C9EB2100009A
|
||||
:181F3800CD4D1FDA6D1F1805CD4D1F381F29292929B56F18F3131AFE47
|
||||
:181F500020CA4D1FD630D8FE0A3805D607FE0AD8FE103FC9EB7A4BE598
|
||||
:181F6800CDC113E1C91E26C35607CD0A10CD4C0CC52199310611057862
|
||||
:181F8000FE012808CB13CB1230F41804CB13CB123E30CE007723052069
|
||||
:181F9800F3AF772377C1219931C37014EB210000CDC11FDACF1FD63004
|
||||
:181FB00029B56FCDC11F30F6EB7A4BE5CDC113E1C9131AFE20CAC11F24
|
||||
:181FC800FE30D8FE323FC91E28C35607DD21FFFFC3A603C30800C30067
|
||||
:181FE000003E0032FD30C3AD03ED45F5A0C1B83E00C9CD1B0AC3420E8D
|
||||
:00000001FF
|
||||
|
||||
341
Z80 CPM and bootloader (basmon)/hexFiles/intMon.hex
Normal file
341
Z80 CPM and bootloader (basmon)/hexFiles/intMon.hex
Normal file
@@ -0,0 +1,341 @@
|
||||
:0430060000000000C6
|
||||
:18000000F3C3A40000000000C332000000000000C31B000000000000BB
|
||||
:18001800C36C003A0030FE002008CD730028FBDB81C9CD7A0028FBDB44
|
||||
:1800300083C9F53A0030FE00200D1801F5CD600028FBF1D381C9F5CDB4
|
||||
:18004800660028FBF1D383C9F5CD66002004F1E600C9F1D383F6FFC916
|
||||
:18006000DB800FCB47C9DB820FCB47C93A0030FE002007DB80E601FE2D
|
||||
:1800780000C9DB82E601FE00C9D7FE0A28FBFE1B20023E03C9FE0D2822
|
||||
:180090000AFE0C2804FE203801CFC93E0DCF3E0ACF3E0DC9312A303E1B
|
||||
:1800A80095D380D3823E00320030210E03CD3701210E032204302A0476
|
||||
:1800C000307EB7280CCD5000280723220430C3BE00CD7300280F3E0094
|
||||
:1800D800320030CD1B00FE20C2D1001812CD7A0028D43E01320030CD3A
|
||||
:1800F0001B00FE20C2BE003E0CCD3C00CD5000CD3E01219C02CD3701FF
|
||||
:18010800210801E5CD3E013E3ECFCD8100FE2038F9FE3ACAB501CD8DCA
|
||||
:1801200000E65FFE49CAF601FE47CAAF01FE58CAFA013E3FCF18D57EE9
|
||||
:18013800B7C8CF2318F93E0DCF3E0ACFC9CD8100FE03C8FE2038F6C907
|
||||
:18015000CD450147CD45014FCD8F014F7B915F79C9210000CDA801FEED
|
||||
:180168000D200E37C9210000CDA801FE0DC8FE2CC8FE0328EE29292956
|
||||
:1801800029D630FE0A3802D607E60F856F18E178D630FE0A3802D6079A
|
||||
:18019800070707074779D630FE0A3802D60780C9CD8100CD8D00C9CDC7
|
||||
:1801B0006101D8E5C91E00CD500157CD500167CD50016FCD5001FE018D
|
||||
:1801C8002009CD50017BA7281E18157AA7280BCD500177233E2ECF15E7
|
||||
:1801E00018F1CD50017BA7C821FD02CD3701C9213403CD3701C9C33FE0
|
||||
:1801F80003C9210C02CD3701CD4501C8E65FFE59CA2A02C90D0A426FF1
|
||||
:180210006F742043502F4D3F000D0A4C6F6164696E672043502F4D0D74
|
||||
:180228000A00211902CD370106183E0032063032073032083032093071
|
||||
:180240002100D0220230CD74021100022A0230192202303A06303C3264
|
||||
:18025800063010EA3A0030F52AFEFFE93A0830D38C3A0730D38B3A060F
|
||||
:1802700030D38AC9F5C5E5DB89FE8020FACD64023E00D3890E04068020
|
||||
:18028800DB89FEE020FADB8877230520F30D20EEE1C1F1C943502F4D67
|
||||
:1802A00020426F6F7420524F4D20322E300D0A492D5374727420496EC3
|
||||
:1802B8007472700D0A582D426F6F742043502F4D0D0A3A6E6E6E6E2D43
|
||||
:1802D0004C6F6164204920726372640D0A476E6E6E6E2D52206C6F636F
|
||||
:1802E8000D0A000D0A436F6C64206F72207761726D3F0D0A0043686510
|
||||
:18030000636B73756D206572726F720D0A000C5072657373205B7370EA
|
||||
:180318006163655D20746F20616374697661746520636F6E736F6C65C0
|
||||
:180330002E0D0A00436F6D706C6574650D0A0021EB02CD3701CD4501FA
|
||||
:18034800C8E65FFE43CA5603FE57CA5903C9C35C03C3FA03DD21000008
|
||||
:18036000C367030D0C831321B030F9C3A21F113406066321B0301A77E5
|
||||
:18037800231305C27603F9CD3508CD030E325A3132A931214904CDA171
|
||||
:1803900014CD5208CD5B0BB7C2B003210D32237CB5CAC2037E472F770D
|
||||
:1803A800BE70CA9E03C3C203CD270CB7C20307EB2B3ED94677BE70C2BF
|
||||
:1803C0008B032B110C32CDCB09DA8B0311CEFF225F3119220A31CD1031
|
||||
:1803D800082A0A3111EFFF1911A9317D936F7C9A67E5211204CDA11403
|
||||
:1803F000E1CD441B210304CDA114311631CD3508C34E072042797465F0
|
||||
:180408007320667265650D0A00005A38302042415349432056657220DF
|
||||
:18042000342E37620D0A436F707972696768742028432920313937384C
|
||||
:18043800206279204D6963726F736F66740D0A00004D656D6F7279202B
|
||||
:18045000746F7000B9197D1ACF19B3306113E6168F13431C221D5E18E7
|
||||
:18046800911C971D9D1DFE1D131E3A177E1E013113162B14AD16221693
|
||||
:180480003316A01E331F431673167D16C54E44C64F52CE455854C44114
|
||||
:180498005441C94E505554C4494DD2454144CC4554C74F544FD2554E1E
|
||||
:1804B000C946D24553544F5245C74F535542D2455455524ED2454DD3EA
|
||||
:1804C800544F50CF5554CF4ECE554C4CD7414954C44546D04F4B45C462
|
||||
:1804E0004F4B45D3435245454ECC494E4553C34C53D749445448CD4F6C
|
||||
:1804F8004E49544F52D34554D245534554D052494E54C34F4E54CC491B
|
||||
:180510005354C34C454152C34C4F4144C353415645CE4557D441422887
|
||||
:18052800D44FC64ED3504328D448454ECE4F54D3544550ABADAAAFDE8B
|
||||
:18054000C14E44CF52BEBDBCD3474EC94E54C14253D55352C65245C92F
|
||||
:180558004E50D04F53D35152D24E44CC4F47C55850C34F53D3494ED42F
|
||||
:18057000414EC1544ED045454BC445454BD04F494E54CC454ED3545261
|
||||
:1805880024D6414CC15343C3485224C8455824C2494E24CC4546542427
|
||||
:1805A000D24947485424CD49442480A50BA20A7D0FF20C840EB911B32E
|
||||
:1805B8000E090DAF0C920C810D6B0B9E0CCD0CF40CA30BF216630DE41D
|
||||
:1805D0000BF81697134117891EF40C6F1E621E671E9F1F04310731A5EF
|
||||
:1805E8000DD10B170A4C0CF40CF40C0F08792B1B795F177C9D187CFE29
|
||||
:18060000187F4C1C5012114611114E46534E52474F4446434F564F4DDD
|
||||
:18061800554C425344442F304944544D4F534C535354434E55464D4FCF
|
||||
:180630004858424EC3FA03C3220CD300C9D6006F7CDE006778DE004792
|
||||
:180648003E00C9000000354ACA99391C76982295B3980ADD479853D162
|
||||
:1806600099990A1A9F9865BCCD98D6773E9852C74F80DB00C901FF1CA4
|
||||
:1806780000001400140000000000C34809C30000C30000C300000D32A6
|
||||
:18069000FEFFAA31204572726F720020696E20004F6B0D0A00004272B4
|
||||
:1806A80065616B00210400397E23FE81C04E234623E569607AB3EBCA61
|
||||
:1806C000C606EBCDCB09010D00E1C809C3B006CDE906C5E3C1CDCB09CB
|
||||
:1806D8007E02C80B2BC3D506E52A8A31060009093EE53ED0956F3EFF9A
|
||||
:1806F0009CDAF8066739E1D81E0CC317072A7931220C311E02011E1494
|
||||
:18070800011E00011E12011E22011E0A011E18CD350832F530CDF60DB7
|
||||
:18072000210A06573E3FCDDC09197ECDDC09CD5B0BCDDC09219406CD54
|
||||
:18073800A1142A0C3111FEFFCDCB09CA67037CA53CC43C1B3EC1AF3252
|
||||
:18075000F530CDF60D21A006CDA11421FFFF220C31CD4809DA5B07CDAE
|
||||
:180768005B0B3C3DCA5B07F5CD270CD5CD5F0847D1F1D23B0BD5C5AF06
|
||||
:18078000327C31CD5B0BB7F5CDEF07DA9407F1F5CAC80CB7C5D2AB07E7
|
||||
:18079800EB2A86311A020313CDCB09C29C076069228631D1F1CAD2073E
|
||||
:1807B0002A8631E3C109E5CDCF06E1228631EB74D123237323722311B0
|
||||
:1807C80011311A772313B7C2CA07CD1B0823EB626B7E23B6CA5B072355
|
||||
:1807E0002323AFBE23C2E307EB732372C3D7072A0E31444D7E23B62B6F
|
||||
:1807F800C823237E23666FCDCB0960697E23666F3FC83FD0C3F207C0F3
|
||||
:180810002A0E31AF772377232286312A0E312B227E312A5F31227331C6
|
||||
:18082800AFCD6B0B2A8631228831228A31C12A0A31F9216331226131A5
|
||||
:18084000AF6F67228431327B31228E31E5C52A7E31C93E3FCDDC093ECC
|
||||
:1808580020CDDC09C3FE30AF325E310E051111317EFE20CAE70847FE55
|
||||
:1808700022CA0709B7CA0E093A5E31B77EC2E708FE3F3E9ECAE7087EDD
|
||||
:18088800FE30DA9208FE3CDAE708D5118B04C501E308C5067F7EFE6166
|
||||
:1808A000DAAB08FE7BD2AB08E65F774EEB23B6F2AD08047EE67FC8B9D8
|
||||
:1808B800C2AD08EBE5131AB7FADF084F78FE88C2CE08CD5B0B2B237E38
|
||||
:1808D000FE61DAD708E65FB9CABD08E1C3AB0848F1EBC9EB79C1D1230E
|
||||
:1808E80012130CD63ACAF508FE49C2F808325E31D654C26808477EB74E
|
||||
:18090000CA0E09B8CAE70823120C13C3FE082110311213121312C93AAF
|
||||
:18091800F430B73E0032F430C22B0905CA4809CDDC093E052BCA3F0910
|
||||
:180930007ECDDC09C35109052BCDDC09C25109CDDC09CD030EC34809C0
|
||||
:180948002111310601AF32F430CD060A4FFE7FCA17093AF430B7CA6A4C
|
||||
:18096000093E00CDDC09AF32F43079FE07CAAE09FE03CC030E37C8FEA7
|
||||
:180978000DCAFE0DFE15CA4209FE40CA3F09FE5FCA3709FE08CA370996
|
||||
:18099000FE12C2A909C5D5E53600CDB31F211131CDA114E1D1C1C3510B
|
||||
:1809A80009FE20DA510978FE493E07D2C3097971327C312304CDDC0998
|
||||
:1809C000C35109CDDC093E08C3BD097C92C07D93C97EE3BE23E3CA5B90
|
||||
:1809D8000BC30307F53AF530B7C2D614F1C5F5FE20DA000A3AF2304728
|
||||
:1809F0003A5B3104CAFC0905B8CC030E3C325B31F1C1CD9C1FC9CD6092
|
||||
:180A08001EE67FFE0FC03AF5302F32F530AFC9CD270CC0C1CDEF07C520
|
||||
:180A2000CD6D0AE14E23462378B1CA4E07CD760ACD860BC5CD030E5ECB
|
||||
:180A3800235623E5EBCD441B3E20E1CDDC097EB723CA230AF2430AD6B9
|
||||
:180A50007F4F118C041A13B7F2550A0DC2550AE67FCDDC091A13B7F2CF
|
||||
:180A68005F0AC3460AE52AF83022F630E1C9E5D52AF63011FFFFED5A71
|
||||
:180A800022F630D1E1F0E52AF83022F630CD601EFE03CA990AE1C37622
|
||||
:180A98000A2AF83022F630C3FD033E64327B31CD090DC1E5CDF20C22E9
|
||||
:180AB000773121020039CDB006D1C2D20A09D52B562B5E2323E52A7784
|
||||
:180AC80031CDCB09E1C2B60AD1F9EB0E08CDE006E52A7731E3E52A0CAE
|
||||
:180AE00031E3CDCB0FCDD109A6CDC80FE5CDF619E1C5D5010081515AE9
|
||||
:180AF8007EFEAB3E01C20E0BCD5B0BCDC80FE5CDF619CDAA19E1C5D502
|
||||
:180B1000F533E52A7E31E30681C533CD860B227E317EFE3ACA3B0BB7D9
|
||||
:180B2800C20307237E23B6CAAD0B235E2356EB220C31EBCD5B0B111B5F
|
||||
:180B40000BD5C8D680DA090DFE25D20307074F0600EB21AB05094E231E
|
||||
:180B580046C5EB237EFE3AD0FE20CA5B0BFE303F3C3DC9EB2A0E31CACB
|
||||
:180B7000800BEBCD270CE5CDEF076069D1D2C80C2B228C31EBC9DFC8AA
|
||||
:180B8800D7FE1B2811FE03280DFE13C0D7FE11C8FE03280718F63EFFFC
|
||||
:180BA00032FD30C0F6C0227E3121F6FFC12A0C31F57DA43CCAC00B2250
|
||||
:180BB80082312A7E31228431AF32F530CDF60DF121A606C23707C34E1D
|
||||
:180BD000072A84317CB51E20CA1707EB2A8231220C31EBC9CD2917C028
|
||||
:180BE80032F130C9E52AFA3006004F0922FA30E1C97EFE41D8FE5B3F1F
|
||||
:180C0000C9CD5B0BCDC80FCDAA19FA220C3A9731FE90DA521A0180909D
|
||||
:180C1800110000E5CD251AE151C81E08C317072B110000CD5B0BD0E59D
|
||||
:180C3000F5219819CDCB09DA0307626B19291929F1D6305F160019EB9F
|
||||
:180C4800E1C32B0CCA1F08CD040C2BCD5B0BE52A5F31CA6F0CE1CDD12A
|
||||
:180C6000092CD5CD040C2BCD5B0BC20307E3EB7D935F7C9A57DAF806E9
|
||||
:180C7800E52A863101280009CDCB09D2F806EB220A31E1225F31E1C37C
|
||||
:180C90001F08CA1B08CD1F08011B0BC3AE0C0E03CDE006C1E5E52A0C1B
|
||||
:180CA80031E33E8CF533C5CD270CCDF40CE52A0C31CDCB09E123DCF2DD
|
||||
:180CC00007D4EF0760692BD81E0EC31707C016FFCDAC06F9FE8C1E0479
|
||||
:180CD800C21707E1220C31237CB5C2EC0C3A7C31B7C24D07211B0BE3F8
|
||||
:180CF0003EE1013A0E0006007948477EB7C8B8C823FE22CAF80CC3FB2A
|
||||
:180D08000CCDBE11CDD109B4D53A5D31F5CDDA0FF1E3227E311FCDCD2A
|
||||
:180D20000FCA5C0DE52A9431E523235E23562A0E31CDCB09D24B0D2A45
|
||||
:180D38000A31CDCB09D1D2530D216F31CDCB09D2530D3ED1CD0216EB51
|
||||
:180D5000CD3B14CD0216E1CD051AE1C9E5CD021AD1E1C9CD29177E47F8
|
||||
:180D6800FE8CCA720DCDD109882B4B0D78CA430BCD280CFE2CC0C3733D
|
||||
:180D80000DCDDA0F7EFE88CA8F0DCDD109A92BCDCB0FCDAA19CAF40CB2
|
||||
:180D9800CD5B0BDAAF0CC3420B2BCD5B0BCA030EC8FEA5CA360EFEA813
|
||||
:180DB000CA360EE5FE2CCA1F0EFE3BCA590EC1CDDA0FE53A5D31B7C210
|
||||
:180DC800EF0DCD4F1BCD5F1436202A9431342A94313AF2304704CAEBDC
|
||||
:180DE0000D043A5B31863DB8D4030ECDA414AFC4A414E1C3A10D3A5B2D
|
||||
:180DF80031B7C8C3030E36002110313E0DCDDC093E0ACDDC09AF325B94
|
||||
:180E1000313AF1303DC8F5AFCDDC09F1C3140E3AF330473A5B31B8D417
|
||||
:180E2800030ED2590ED60ED22D0E2FC34E0EF5CD2617CDD109292BF13E
|
||||
:180E4000D6A8E5CA490E3A5B312F83D2590E3C473E20CDDC0905C252B9
|
||||
:180E58000EE1CD5B0BC3A80D3F5265646F2066726F6D207374617274FD
|
||||
:180E70000D0A003A7D31B7C2FD06C121600ECDA114C34E08CD0C147E99
|
||||
:180E8800FE223E0032F530C29E0ECD6014CDD1093BE5CDA4143EE5CDB2
|
||||
:180EA0005208C1DAAA0B237EB72BC5CAF10C362CC3B80EE52A8C31F6D4
|
||||
:180EB800AF327D31E3C3C40ECDD1092CCDBE11E3D57EFE2CCAEC0E3A4E
|
||||
:180ED0007D31B7C2590F3E3FCDDC09CD5208D1C1DAAA0B237EB72BC5BC
|
||||
:180EE800CAF10CD53A5D31B7CA160FCD5B0B5747FE22CA0A0F3A7D312C
|
||||
:180F0000B757CA070F163A062C2BCD6314EB21210FE3D5C3240DCD5BEA
|
||||
:180F18000BCDB11AE3CD021AE12BCD5B0BCA2D0FFE2CC2730EE32BCDC5
|
||||
:180F30005B0BC2C00ED13A7D31B7EBC2810BD5B621480FC4A114E1C9E4
|
||||
:180F48003F45787472612069676E6F7265640D0A00CDF20CB7C2720F6A
|
||||
:180F6000237E23B61E06CA1707235E2356EB227931EBCD5B0BFE83C2E1
|
||||
:180F7800590FC3EC0E110000C4BE11227E31CDAC06C20907F9D57E2307
|
||||
:180F9000F5D5CDE819E3E5CD5517E1CD021AE1CDF919E5CD251AE1C193
|
||||
:180FA80090CDF919CAB80FEB220C316960C3170BF92A7E317EFE2CC2FD
|
||||
:180FC0001B0BCD5B0BCD800FCDDA0FF6373A5D318FB7E8C31507CDD10E
|
||||
:180FD80009282B1600D50E01CDE006CD51102280312A8031C178FE786D
|
||||
:180FF000D4CB0F7E1600D6B3DA1210FE03D21210FE0117AABA57DA037F
|
||||
:1810080007227531CD5B0BC3F60F7AB7C239117E227531D6ACD8FE0724
|
||||
:18102000D05F3A5D313DB37BCA971507835F21F505197856BAD023CD7B
|
||||
:18103800CB0FC501E90FC5434ACDDB1958514E234623C52A7531C3DD3D
|
||||
:181050000FAF325D31CD5B0B1E24CA1707DAB11ACDF90BD2B810FE2679
|
||||
:181068002012CD5B0BFE48CAF51EFE42CA651F1E02CA1707FEACCA518D
|
||||
:1810800010FE2ECAB11AFEADCAA710FE22CA6014FEAACA9911FEA7CA72
|
||||
:18109800C413D6B6D2C910CDD60FCDD10929C9167DCDDD0F2A8031E5DB
|
||||
:1810B000CDD319CDCB0FE1C9CDBE11E5EB2294313A5D31B7CCE819E19E
|
||||
:1810C800C90600074FC5CD5B0B79FE31DAF010CDD60FCDD1092CCDCC53
|
||||
:1810E0000FEB2A9431E3E5EBCD2917EBE3C3F810CD9F10E311B310D5AE
|
||||
:1810F800015404094E236669E915FEADC8FE2DC814FE2BC8FEACC82B38
|
||||
:18111000C9F6AFF5CDCB0FCD0D0CF1EBC1E3EBCDEB19F5CD0D0CF1C10E
|
||||
:1811280079218213C23411A34F78A2E9B34F78B2E9214B113A5D311F0B
|
||||
:181140007A175F166478BAD0C33A104D1179B71FC1D1F5CDCD0F218F91
|
||||
:1811580011E5CA251AAF325D31D5CDE4157E23234E2346D1C5F5CDE8BB
|
||||
:1811700015CDF919F157E17BB2C87AD601D8AFBB3CD0151D0ABE230396
|
||||
:18118800CA77113FC3B5193C8FC1A0C6FF9FC3BC19165ACDDD0FCDCB44
|
||||
:1811A0000FCD0D0C7B2F4F7A2FCD8213C1C3E90F2BCD5B0BC8CDD109F5
|
||||
:1811B8002C01B011C5F6AF325C3146CDF90BDA0307AF4F325D31CD5B27
|
||||
:1811D0000BDADA11CDF90BDAE7114FCD5B0BDADB11CDF90BD2DB11D6E7
|
||||
:1811E80024C2F6113C325D310F814FCD5B0B3A7B313DCAA312F2061248
|
||||
:181200007ED628CA7B12AF327B31E550592A8E31CDCB09119031CAEBD7
|
||||
:18121800182A8831EB2A8631CDCB09CA3912799623C22E12789623CA12
|
||||
:181230006D1223232323C32012E1E3D511BB10CDCB09D1CA7012E3E5AB
|
||||
:18124800C50106002A8A31E509C1E5CDCF06E1228A3160692288312B1A
|
||||
:181260003600CDCB09C25F12D173237223EBE1C9329731219F06229465
|
||||
:1812780031E1C9E52A5C31E357D5C5CD010CC1F1EBE3E5EB3C577EFEDA
|
||||
:181290002CCA8112CDD10929228031E1225C311E00D511E5F52A8831C9
|
||||
:1812A8003E19EB2A8A31EBCDCB09CADB127EB923C2BD127EB8235E23FF
|
||||
:1812C0005623C2A9123A5C31B7C20C07F1444DCAEB1896CA39131E10A4
|
||||
:1812D800C31707110400F1CA220C712370234FCDE00623232275317177
|
||||
:1812F000233A5C311779010B00D2FE12C10371237023F5E5CD961AEB51
|
||||
:18130800E1F13DC2F612F5424BEB19DAF806CDE906228A312B3600CDCF
|
||||
:18132000CB09C21C1303572A75315EEB2909EB2B2B73237223F1DA5DB7
|
||||
:1813380013474F7E2316E15E235623E3F5CDCB09D2D612E5CD961AD1FC
|
||||
:1813500019F13D444DC23E132929C109EB2A8031C92A8A31EB210000FE
|
||||
:18136800393A5D31B7CA7D13CDE415CDE4142A0A31EB2A73317D934F53
|
||||
:181380007C9A41501E00215D31730690C3C1193A5B3147AFC38313CD59
|
||||
:181398001A14CD0C1401F20CC5D5CDD10928CDBE11E5EB2B562B5EE163
|
||||
:1813B000CDCB0FCDD10929CDD109B4444DE3712370C35914CD1A14D5DB
|
||||
:1813C800CD9F10CDCB0FE35E2356237AB3CA0F077E23666FE52A8E31BC
|
||||
:1813E000E3228E312A9231E52A9031E5219031D5CD021AE1CDC80F2B3F
|
||||
:1813F800CD5B0BC20307E1229031E1229231E1228E31E1C9E52A0C319C
|
||||
:18141000237CB5E1C01E16C31707CDD109A73E80327B31B647CDC31132
|
||||
:18142800C3CB0FCDCB0FCD4F1BCD5F14CDE415013F16C57E2323E5CD9A
|
||||
:18144000BA14E14E2346CD5314E56FCDD715D1C9CDBA14216F31E5779B
|
||||
:181458002323732372E1C92B062250E50EFF237E0CB7CA7514BACA753F
|
||||
:1814700014B8C26614FE22CC5B0BE323EB79CD5314116F312A613122DD
|
||||
:1814880094313E01325D31CD051ACDCB09226131E17EC01E1EC317070B
|
||||
:1814A00023CD5F14CDE415CDF9191C1DC80ACDDC09FE0DCC0D0E03C3B7
|
||||
:1814B800AB14B70EF1F52A0A31EB2A73312F4F06FF0923CDCB09DAD892
|
||||
:1814D0001422733123EBF1C9F11E1ACA1707BFF501BC14C52A5F31222B
|
||||
:1814E8007331210000E52A0A31E5216331EB2A6131EBCDCB0901F51406
|
||||
:18150000C249152A8631EB2A8831EBCDCB09CA1C157E2323B7CD4C15D4
|
||||
:18151800C30615C1EB2A8A31EBCDCB09CA7215CDF9197BE509B7F21B63
|
||||
:1815300015227531E14E0600090923EB2A7531EBCDCB09CA1C15013BDE
|
||||
:1815480015C5F6807E23235E235623F0B7C8444D2A7331CDCB09606945
|
||||
:18156000D8E1E3CDCB09E3E56069D0C1F1F1E5D5C5C9D1E17DB4C82B14
|
||||
:18157800462B4EE52B2B6E26000950592B444D2A7331CDD206E1712377
|
||||
:181590007069602BC3E714C5E52A9431E3CD5110E3CDCC0F7EE52A94CB
|
||||
:1815A80031E5861E1CDA1707CD5014D1CDE815E3CDE715E52A7131EB49
|
||||
:1815C000CDCE15CDCE1521E60FE3E5C38114E1E37E23234E23466F2CA3
|
||||
:1815D8002DC80A120313C3D815CDCC0F2A9431EBCD0216EBC0D5505994
|
||||
:1815F0001B4E2A7331CDCB09C200164709227331E1C92A61312B462B1B
|
||||
:181608004E2B2BCDCB09C0226131C9019213C5CDE115AF57325D317ED6
|
||||
:18162000B7C9019213C5CD1716CA220C23235E23561AC93E01CD501465
|
||||
:18163800CD2C172A713173C1C38114CDDC16AFE34FE57EB8DA511678BE
|
||||
:18165000110E00C5CDBA14C1E1E5232346236668060009444DCD53142B
|
||||
:181668006FCDD715D1CDE815C38114CDDC16D1D51A90C34716EB7ECDEA
|
||||
:18168000E1160405CA220CC51EFFFE29CA9616CDD1092CCD2917CDD15D
|
||||
:181698000929F1E3014916C53DBE0600D04F7E91BB47D843C9CD171600
|
||||
:1816B000CACA175F23237E23666FE5194672E3C57EFE24C2CB16CDF5F9
|
||||
:1816C8001E180DFE25C2D516CD651F1803CDB11AC1E170C9EBCDD10986
|
||||
:1816E00029C1D1C543C9CD2C1732EF30CDEE30C39213CD1617C3B6300F
|
||||
:1816F800CD1617F51E002BCD5B0BCA0C17CDD1092CCD2917C1CDEE30F6
|
||||
:18171000ABA0CA0D17C9CD291732EF3032B730CDD1092CC32917CD5B4A
|
||||
:181728000BCDC80FCD070C7AB7C2220C2BCD5B0B7BC9CD0D0C1AC39202
|
||||
:1817400013CDC80FCD0D0CD5CDD1092CCD2917D112C921281CCDF9194F
|
||||
:18175800C36417CDF91921C1D1CDD31978B7C83A9731B7CAEB1990D210
|
||||
:181770007E172F3CEBCDDB19EBCDEB19C1D1FE19D0F5CD101A67F1CD6F
|
||||
:181788002918B4219431F2A417CD0918D2EA172334CA12072E01CD3F8B
|
||||
:1817A00018C3EA17AF90477E9B5F237E9A57237E994FDC15186863AFB9
|
||||
:1817B8004779B7C2D7174A54656F78D608FEE0C2B817AF329731C90544
|
||||
:1817D000297A1757798F4FF2CF17785C45B7CAEA172197318677D2CAA4
|
||||
:1817E80017C878219731B7FCFC1746237EE680A94FC3EB191CC014C027
|
||||
:181800000CC00E8034C0C312077E835F237E8A57237E894FC921983198
|
||||
:181818007E2F77AF6F90477D9B5F7D9A577D994FC90600D608DA38187E
|
||||
:18183000435A510E00C32B18C6096FAF2DC8791F4F7A1F577B1F5F7874
|
||||
:181848001F47C33B180000008103AA561980F122768045AA3882CDAAC6
|
||||
:1818600019B7EA220C2197317E01358011F30490F570D5C5CD6417C1CB
|
||||
:18187800D104CD0019214D18CD5B17215118CDF21C018080110000CD94
|
||||
:181890006417F1CD251B01318011187221C1D1CDAA19C82E00CD6819F3
|
||||
:1818A8007932A631EB22A731010000505821B517E521C118E5E52194CD
|
||||
:1818C000317E23B7CAED18E52E081F6779D2DB18E52AA73119EBE13AD3
|
||||
:1818D800A631891F4F7A1F577B1F5F781F472D7CC2CA18E1C9435A517E
|
||||
:1818F0004FC9CDDB19012084110000CDEB19C1D1CDAA19CA06072EFF5A
|
||||
:18190800CD681934342B7E32C2302B7E32BE302B7E32BA3041EBAF4F8C
|
||||
:18192000575F32C530E5C57DCDB930DE003FD2381932C530F1F137D2A3
|
||||
:18193800C1E1793C3D1FFAEB17177B175F7A175779174F297817473AE0
|
||||
:18195000C5301732C53079B2B3C22519E521973135E1C22519C31207AE
|
||||
:1819680078B7CA8C197D219731AE80471FA878F28B19C68077CAEB188F
|
||||
:18198000CD101A772BC9CDAA192FE1B7E1F2CA17C31207CDF61978B7FB
|
||||
:18199800C8C602DA120747CD641721973134C0C312073A9731B7C83AB1
|
||||
:1819B0009631FE2F179FC03CC9CDAA1906881100002197314F700600D3
|
||||
:1819C80023368017C3B217CDAA19F02196317EEE8077C9EB2A9431E33A
|
||||
:1819E000E52A9631E3E5EBC9CDF919EB2294316069229631EBC92194D1
|
||||
:1819F800315E2356234E234623C911943106041A77132305C2071AC9B1
|
||||
:181A10002196317E07371F773F1F2323777907371F4F1FAEC978B7CAB5
|
||||
:181A2800AA1921B319E5CDAA1979C8219631AE79F8CD3F1A1FA9C9235F
|
||||
:181A400078BEC02B79BEC02B7ABEC02B7B96C0E1E1C9474F575FB7C801
|
||||
:181A5800E5CDF619CD101AAE67FC761A3E9890CD29187C17DCFC170621
|
||||
:181A700000DC1518E1C91B7AA33CC00BC92197317EFE983A9431D07E59
|
||||
:181A8800CD521A36987BF57917CDB217F1C921000078B1C83E1029DA8C
|
||||
:181AA000D612EB29EBD2AC1A09DAD6123DC29E1AC9FE2DF5CABD1AFEA5
|
||||
:181AB8002BCABD1A2BCDCA1747575F2F4FCD5B0BDA0E1BFE2ECAE91AC7
|
||||
:181AD000FE45C2ED1ACD5B0BCD0111CD5B0BDA301B14C2ED1AAF935F0A
|
||||
:181AE8000C0CCAC51AE57B90F4061BF2FC1AF5CDF218F13CC2F01AD182
|
||||
:181B0000F1CCD319EBC9C8F5CD9319F13DC9D557788947C5E5D5CD93F0
|
||||
:181B180019F1D630CD251BE1C1D1C3C51ACDDB19CDBC19C1D1C3641750
|
||||
:181B30007B0707830786D6305FC3DB1AE5219B06CDA114E1EBAF0698A5
|
||||
:181B4800CDC11921A014E5219931E5CDAA193620F25D1B362D23363018
|
||||
:181B6000CA131CE5FCD319AFF5CD191C01439111F84FCD251AB7E28AA5
|
||||
:181B78001BF1CD071BF5C36C1BCDF218F13CF5CD191CCD52173CCD528F
|
||||
:181B90001ACDEB19010603F1813CFAA61BFE08D2A61B3C473E023D3D09
|
||||
:181BA800E1F5112C1C05C2B71B362E2336302305362ECC001AC5E5D57F
|
||||
:181BC000CDF619E1062F047B965F237A9E5723799E4F2B2BD2C61BCDB6
|
||||
:181BD800091823CDEB19EBE17023C10DC2B71B05CAF71B2B7EFE30CA9D
|
||||
:181BF000EB1BFE2EC4001AF1CA161C364523362BF2071C362D2F3C06F8
|
||||
:181C08002F04D60AD2091CC63A237023772371E1C901749411F723CD4E
|
||||
:181C2000251AB7E1E2811BE900000080A08601102700E8030064000041
|
||||
:181C38000A000001000021D319E3E9CDDB1921281CCDE819C1D1CDAAB3
|
||||
:181C50001978CA911CF25C1CB7CA0607B7CACB17D5C579F67FCDF619B5
|
||||
:181C6800F2791CD5C5CD7D1AC1D1F5CD251AE17C1FE1229631E122946F
|
||||
:181C800031DC3E1CCCD319D5C5CD5E18C1D1CD9F18CDDB1901388111AE
|
||||
:181C98003BAACD9F183A9731FE88D28619CD7D1AC680C602DA8619F5F2
|
||||
:181CB000214D18CD5517CD9618F1C1D1F5CD6117CDD31921D11CCD0190
|
||||
:181CC8001D110000C14AC39F1808402E9474704F2E776E02887AE6A077
|
||||
:181CE0002A7C50AAAA7EFFFF7F7F0000808100000081CDDB19119D181F
|
||||
:181CF800D5E5CDF619CD9F18E1CDDB197E23CDE81906F1C1D13DC8D546
|
||||
:181D1000C5F5E5CD9F18E1CDF919E5CD6417E1C30A1DCDAA1921C93036
|
||||
:181D2800FA831D21EA30CDE81921C930C886E6070600772387874F09A5
|
||||
:181D4000CDF919CD9F183AC8303CE6030600FE018832C83021871D87CE
|
||||
:181D5800874F09CD5517CDF6197B59EE4F4F36802B46368021C73034F6
|
||||
:181D70007ED6ABC27A1D770C151CCDB51721EA30C3021A772B772B77E1
|
||||
:181D8800C35E1D68B1466899E9926910D1756821E11DCD5517CDDB19EA
|
||||
:181DA00001498311DB0FCDEB19C1D1CD0019CDDB19CD7D1AC1D1CD6135
|
||||
:181DB8001721E51DCD5B17CDAA1937F2CD1DCD5217CDAA19B7F5F4D3BE
|
||||
:181DD0001921E51DCD5517F1D4D31921E91DC3F21CDB0F498100000029
|
||||
:181DE8007F05BAD71E866426998758342387E05DA586DA0F4983CDDB85
|
||||
:181E000019CD9D1DC1E1CDDB19EBCDEB19CD971DC3FE18CDAA19FC3EE7
|
||||
:181E18001CFCD3193A9731FE81DA301E0100815159CD0019215B17E57B
|
||||
:181E3000213A1ECDF21C21E11DC9094AD73B78026E847BFEC12F7C7434
|
||||
:181E4800319A7D843D5A7DC87F917EE4BB4C7E6CAAAA7F00000081C95A
|
||||
:181E6000D7C93E0CC39C1FCD29177B32F230C9CDC80FCD0D0CED53F69D
|
||||
:181E780030ED53F830C9CD0D0CD5E146237EC38313CDC80FCD0D0CD5B6
|
||||
:181E9000CDD1092CCDC80FCD0D0CE3732372E1C9CDCB0FCD0D0CC521D5
|
||||
:181EA80099317AFE00280CCDD81E78FE302802702371237BCDD81E7A3A
|
||||
:181EC000FE00200578FE30280270237123AF772377C1219931C331147C
|
||||
:181ED80047E60FFE0A3802C607C6304F780F0F0F0FE60FFE0A3802C6B1
|
||||
:181EF00007C63047C9EB210000CD0E1FDA2E1F1805CD0E1F381F2929E0
|
||||
:181F08002929B56F18F3131AFE20CA0E1FD630D8FE0A3805D607FE0AF6
|
||||
:181F2000D8FE103FC9EB7A4BE5CD8213E1C91E26C31707CDCB0FCD0D74
|
||||
:181F38000CC521993106110578FE012808CB13CB1230F41804CB13CB6E
|
||||
:181F5000123E30CE0077230520F3AF772377C1219931C33114EB2100F9
|
||||
:181F680000CD821FDA901FD63029B56FCD821F30F6EB7A4BE5CD82138C
|
||||
:181F8000E1C9131AFE20CA821FFE30D8FE323FC91E28C31707DD21FF87
|
||||
:181F9800FFC36703C30800C300003E0032FD30C36E03ED45F5A0C1B866
|
||||
:091FB0003E00C9CDDC09C3030E9B
|
||||
:00000001FF
|
||||
File diff suppressed because it is too large
Load Diff
@@ -69,7 +69,6 @@ SD_LBA2 .EQU 08CH
|
||||
primaryIO .ds 1
|
||||
secNo .ds 1
|
||||
dmaAddr .ds 2
|
||||
InitTxtB .ds 2
|
||||
|
||||
lba0 .DB 00h
|
||||
lba1 .DB 00h
|
||||
@@ -169,25 +168,6 @@ conoutB1: CALL CKACIA1 ; See if ACIA channel B is finished transmitting
|
||||
OUT (ACIA1_D),A ; OUTput the character
|
||||
RET
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; Non blocking console output routine
|
||||
; On return Z flag is 0, if the character could be written, else 1
|
||||
; Use the "primaryIO" flag to determine which output port to send a character.
|
||||
;------------------------------------------------------------------------------
|
||||
nbconoutB:
|
||||
PUSH AF
|
||||
|
||||
nbconoutB1: CALL CKACIA1 ; See if ACIA channel B has finished transmitting
|
||||
JR NZ, nbconoutB2 ; Ready to write
|
||||
POP AF ; Remove the parameter we don't need
|
||||
AND $00 ; Indicate failure
|
||||
RET ; Return if ACIA flag signals not ready
|
||||
nbconoutB2:
|
||||
POP AF ; RETrieve character
|
||||
OUT (ACIA1_D),A ; OUTput the character
|
||||
OR $ff ; Indicate success
|
||||
RET
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; I/O status check routine
|
||||
; Use the "primaryIO" flag to determine which port to check.
|
||||
@@ -269,25 +249,17 @@ M_INIT LD SP,M_STACK ; Set the Stack Pointer
|
||||
LD (primaryIO),A
|
||||
LD HL,INITTXT
|
||||
CALL M_PRINT
|
||||
; On Display B we need to take care that it does not hang.
|
||||
LD A,$01
|
||||
LD (primaryIO),A
|
||||
LD HL,INITTXT
|
||||
LD (InitTxtB),HL
|
||||
CALL M_PRINT
|
||||
|
||||
printInitB: LD HL,(InitTxtB)
|
||||
LD A,(HL) ; Get character
|
||||
OR A ; Is it $00 ?
|
||||
JR Z, waitForSpace
|
||||
CALL nbconoutB ; Print it
|
||||
JR Z, waitForSpace ; If we can't write, don't increment
|
||||
INC HL
|
||||
LD (InitTxtB),HL ; Store pointer into message for next round
|
||||
JP printInitB
|
||||
; Wait until space is in one of the buffers to determine the active console
|
||||
|
||||
waitForSpace:
|
||||
|
||||
CALL ckincharA
|
||||
JR Z,chkSpaceB
|
||||
jr Z,notInA
|
||||
LD A,$00
|
||||
LD (primaryIO),A
|
||||
CALL conin
|
||||
@@ -295,25 +267,22 @@ waitForSpace:
|
||||
JP NZ, waitForSpace
|
||||
JR spacePressed
|
||||
|
||||
chkSpaceB:
|
||||
notInA:
|
||||
CALL ckincharB
|
||||
JR Z,printInitB ; If no key pressed, try to continue writing the init message on B
|
||||
JR Z,waitForSpace
|
||||
LD A,$01
|
||||
LD (primaryIO),A
|
||||
CALL conin
|
||||
CP ' '
|
||||
JP NZ, printInitB ; If space not pressed, try to continue writing the init message on B
|
||||
JP NZ, waitForSpace
|
||||
JR spacePressed
|
||||
|
||||
spacePressed:
|
||||
|
||||
; Clear message on both consoles
|
||||
LD A,$0C
|
||||
CALL conoutA
|
||||
CALL nbconoutB
|
||||
|
||||
;; We only clear the message on the active console,
|
||||
;; because trying to write on a console not connected could
|
||||
;; make the system freeze.
|
||||
CALL conoutB
|
||||
|
||||
; primaryIO is now set to the channel where SPACE was pressed
|
||||
|
||||
@@ -686,7 +655,7 @@ CKSUMERR .BYTE "Checksum error"
|
||||
|
||||
INITTXT
|
||||
.BYTE $0C
|
||||
.TEXT "Press [space] to activate the console."
|
||||
.TEXT "Press [SPACE] to activate console"
|
||||
.BYTE $0D,$0A, $00
|
||||
|
||||
LDETXT
|
||||
|
||||
4317
Z80 CPM and bootloader (basmon)/source/intprt.asm
Normal file
4317
Z80 CPM and bootloader (basmon)/source/intprt.asm
Normal file
File diff suppressed because it is too large
Load Diff
693
Z80 CPM and bootloader (basmon)/source/mon.asm
Normal file
693
Z80 CPM and bootloader (basmon)/source/mon.asm
Normal file
@@ -0,0 +1,693 @@
|
||||
;==================================================================================
|
||||
; Contents of this file are copyright Grant Searle
|
||||
; HEX routines from Joel Owens.
|
||||
;
|
||||
; You have permission to use this for NON COMMERCIAL USE ONLY
|
||||
; If you wish to use it elsewhere, please include an acknowledgement to myself.
|
||||
;
|
||||
; http://searle.hostei.com/grant/index.html
|
||||
;
|
||||
; eMail: home.micros01@btinternet.com
|
||||
;
|
||||
; If the above don't work, please perform an Internet search to see if I have
|
||||
; updated the web page hosting service.
|
||||
;
|
||||
;==================================================================================
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
;
|
||||
; Z80 Monitor Rom
|
||||
;
|
||||
;------------------------------------------------------------------------------
|
||||
; General Equates
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
;CR .EQU 0DH
|
||||
;LF .EQU 0AH
|
||||
;ESC .EQU 1BH
|
||||
;CTRLC .EQU 03H
|
||||
M_CLS .EQU 0CH
|
||||
|
||||
|
||||
loadAddr .EQU 0D000h ; CP/M load address
|
||||
numSecs .EQU 24 ; Number of 512 sectors to be loaded
|
||||
|
||||
|
||||
RTS_HIGH .EQU 0D5H
|
||||
RTS_LOW .EQU 095H
|
||||
|
||||
ACIA0_D .EQU $81
|
||||
ACIA0_C .EQU $80
|
||||
ACIA1_D .EQU $83
|
||||
ACIA1_C .EQU $82
|
||||
|
||||
SD_DATA .EQU 088H
|
||||
SD_CONTROL .EQU 089H
|
||||
SD_STATUS .EQU 089H
|
||||
SD_LBA0 .EQU 08AH
|
||||
SD_LBA1 .EQU 08BH
|
||||
SD_LBA2 .EQU 08CH
|
||||
|
||||
.ORG $3000
|
||||
|
||||
primaryIO .ds 1
|
||||
secNo .ds 1
|
||||
dmaAddr .ds 2
|
||||
InitTxtB .ds 2
|
||||
|
||||
lba0 .DB 00h
|
||||
lba1 .DB 00h
|
||||
lba2 .DB 00h
|
||||
lba3 .DB 00h
|
||||
|
||||
stackSpace .ds 32
|
||||
M_STACK .EQU $ ; Stack top
|
||||
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; START OF MONITOR ROM
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
MON .ORG $0000 ; MONITOR ROM RESET VECTOR
|
||||
;------------------------------------------------------------------------------
|
||||
; Reset
|
||||
;------------------------------------------------------------------------------
|
||||
RST00 DI ;Disable INTerrupts
|
||||
JP M_INIT ;Initialize Hardware and go
|
||||
NOP
|
||||
NOP
|
||||
NOP
|
||||
NOP
|
||||
;------------------------------------------------------------------------------
|
||||
; TX a character over RS232 wait for TXDONE first.
|
||||
;------------------------------------------------------------------------------
|
||||
RST08 JP conout
|
||||
NOP
|
||||
NOP
|
||||
NOP
|
||||
NOP
|
||||
NOP
|
||||
;------------------------------------------------------------------------------
|
||||
; RX a character from buffer wait until char ready.
|
||||
;------------------------------------------------------------------------------
|
||||
RST10 JP conin
|
||||
NOP
|
||||
NOP
|
||||
NOP
|
||||
NOP
|
||||
NOP
|
||||
;------------------------------------------------------------------------------
|
||||
; Check input buffer status
|
||||
;------------------------------------------------------------------------------
|
||||
RST18 JP CKINCHAR
|
||||
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; Console input routine
|
||||
; Use the "primaryIO" flag to determine which input port to monitor.
|
||||
;------------------------------------------------------------------------------
|
||||
conin:
|
||||
LD A,(primaryIO)
|
||||
CP 0
|
||||
JR NZ,coninB
|
||||
coninA:
|
||||
|
||||
waitForCharA:
|
||||
call ckincharA
|
||||
JR Z, waitForCharA
|
||||
IN A,(ACIA0_D)
|
||||
RET ; Char ready in A
|
||||
|
||||
coninB:
|
||||
|
||||
waitForCharB:
|
||||
call ckincharB
|
||||
JR Z, waitForCharB
|
||||
IN A,(ACIA1_D)
|
||||
RET ; Char ready in A
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; Console output routine
|
||||
; Use the "primaryIO" flag to determine which output port to send a character.
|
||||
;------------------------------------------------------------------------------
|
||||
conout: PUSH AF ; Store character
|
||||
LD A,(primaryIO)
|
||||
CP 0
|
||||
JR NZ,conoutB1
|
||||
JR conoutA1
|
||||
conoutA:
|
||||
PUSH AF
|
||||
|
||||
conoutA1: CALL CKACIA0 ; See if ACIA channel A is finished transmitting
|
||||
JR Z,conoutA1 ; Loop until ACIA flag signals ready
|
||||
POP AF ; RETrieve character
|
||||
OUT (ACIA0_D),A ; OUTput the character
|
||||
RET
|
||||
|
||||
conoutB:
|
||||
PUSH AF
|
||||
|
||||
conoutB1: CALL CKACIA1 ; See if ACIA channel B is finished transmitting
|
||||
JR Z,conoutB1 ; Loop until ACIA flag signals ready
|
||||
POP AF ; RETrieve character
|
||||
OUT (ACIA1_D),A ; OUTput the character
|
||||
RET
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; Non blocking console output routine
|
||||
; On return Z flag is 0, if the character could be written, else 1
|
||||
; Use the "primaryIO" flag to determine which output port to send a character.
|
||||
;------------------------------------------------------------------------------
|
||||
nbconoutB:
|
||||
PUSH AF
|
||||
|
||||
nbconoutB1: CALL CKACIA1 ; See if ACIA channel B has finished transmitting
|
||||
JR NZ, nbconoutB2 ; Ready to write
|
||||
POP AF ; Remove the parameter we don't need
|
||||
AND $00 ; Indicate failure
|
||||
RET ; Return if ACIA flag signals not ready
|
||||
nbconoutB2:
|
||||
POP AF ; RETrieve character
|
||||
OUT (ACIA1_D),A ; OUTput the character
|
||||
OR $ff ; Indicate success
|
||||
RET
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; I/O status check routine
|
||||
; Use the "primaryIO" flag to determine which port to check.
|
||||
;------------------------------------------------------------------------------
|
||||
CKACIA0
|
||||
IN A,(ACIA0_C) ; Status byte D1=TX Buff Empty, D0=RX char ready
|
||||
RRCA ; Rotates RX status into Carry Flag,
|
||||
BIT 0,A ; Set Zero flag if still transmitting character
|
||||
RET
|
||||
|
||||
CKACIA1
|
||||
IN A,(ACIA1_C) ; Status byte D1=TX Buff Empty, D0=RX char ready
|
||||
RRCA ; Rotates RX status into Carry Flag,
|
||||
BIT 0,A ; Set Zero flag if still transmitting character
|
||||
RET
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; Check if there is a character in the input buffer
|
||||
; Use the "primaryIO" flag to determine which port to check.
|
||||
;------------------------------------------------------------------------------
|
||||
CKINCHAR
|
||||
LD A,(primaryIO)
|
||||
CP 0
|
||||
JR NZ,ckincharB
|
||||
|
||||
ckincharA:
|
||||
|
||||
IN A,(ACIA0_C) ; Status byte
|
||||
AND $01
|
||||
CP $0 ; Z flag set if no char
|
||||
RET
|
||||
|
||||
ckincharB:
|
||||
|
||||
IN A,(ACIA1_C) ; Status byte
|
||||
AND $01
|
||||
CP $0 ; Z flag set if no char
|
||||
RET
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; Filtered Character I/O
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
RDCHR RST 10H
|
||||
CP LF
|
||||
JR Z,RDCHR ; Ignore LF
|
||||
CP ESC
|
||||
JR NZ,RDCHR1
|
||||
LD A,CTRLC ; Change ESC to CTRL-C
|
||||
RDCHR1 RET
|
||||
|
||||
WRCHR CP CR
|
||||
JR Z,WRCRLF ; When CR, write CRLF
|
||||
CP M_CLS
|
||||
JR Z,WR ; Allow write of "CLS"
|
||||
CP ' ' ; Don't write out any other control codes
|
||||
JR C,NOWR ; ie. < space
|
||||
WR RST 08H
|
||||
NOWR RET
|
||||
|
||||
WRCRLF LD A,CR
|
||||
RST 08H
|
||||
LD A,LF
|
||||
RST 08H
|
||||
LD A,CR
|
||||
RET
|
||||
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; Initialise hardware and start main loop
|
||||
;------------------------------------------------------------------------------
|
||||
M_INIT LD SP,M_STACK ; Set the Stack Pointer
|
||||
|
||||
LD A,RTS_LOW
|
||||
OUT (ACIA0_C),A ; Initialise ACIA0
|
||||
OUT (ACIA1_C),A ; Initialise ACIA1
|
||||
; Display the "Press space to start" message on both consoles
|
||||
LD A,$00
|
||||
LD (primaryIO),A
|
||||
LD HL,INITTXT
|
||||
CALL M_PRINT
|
||||
; On Display B we need to take care that it does not hang.
|
||||
LD HL,INITTXT
|
||||
LD (InitTxtB),HL
|
||||
|
||||
printInitB: LD HL,(InitTxtB)
|
||||
LD A,(HL) ; Get character
|
||||
OR A ; Is it $00 ?
|
||||
JR Z, waitForSpace
|
||||
CALL nbconoutB ; Print it
|
||||
JR Z, waitForSpace ; If we can't write, don't increment
|
||||
INC HL
|
||||
LD (InitTxtB),HL ; Store pointer into message for next round
|
||||
JP printInitB
|
||||
; Wait until space is in one of the buffers to determine the active console
|
||||
waitForSpace:
|
||||
CALL ckincharA
|
||||
JR Z,chkSpaceB
|
||||
LD A,$00
|
||||
LD (primaryIO),A
|
||||
CALL conin
|
||||
CP ' '
|
||||
JP NZ, waitForSpace
|
||||
JR spacePressed
|
||||
|
||||
chkSpaceB:
|
||||
CALL ckincharB
|
||||
JR Z,printInitB ; If no key pressed, try to continue writing the init message on B
|
||||
LD A,$01
|
||||
LD (primaryIO),A
|
||||
CALL conin
|
||||
CP ' '
|
||||
JP NZ, printInitB ; If space not pressed, try to continue writing the init message on B
|
||||
|
||||
spacePressed:
|
||||
|
||||
; Clear message on both consoles
|
||||
LD A,$0C
|
||||
CALL conoutA
|
||||
CALL nbconoutB
|
||||
|
||||
;; We only clear the message on the active console,
|
||||
;; because trying to write on a console not connected could
|
||||
;; make the system freeze.
|
||||
|
||||
; primaryIO is now set to the channel where SPACE was pressed
|
||||
CALL TXCRLF ; TXCRLF
|
||||
LD HL,M_SIGNON ; Print SIGNON message
|
||||
CALL M_PRINT
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; Monitor command loop
|
||||
;------------------------------------------------------------------------------
|
||||
MAIN LD HL,MAIN ; Save entry point for Monitor
|
||||
PUSH HL ; This is the return address
|
||||
MAIN0 CALL TXCRLF ; Entry point for Monitor, Normal
|
||||
LD A,'>' ; Get a ">"
|
||||
RST 08H ; print it
|
||||
|
||||
MAIN1 CALL RDCHR ; Get a character from the input port
|
||||
CP ' ' ; <spc> or less?
|
||||
JR C,MAIN1 ; Go back
|
||||
|
||||
CP ':' ; ":"?
|
||||
JP Z,LOAD ; First character of a HEX load
|
||||
|
||||
CALL WRCHR ; Print char on console
|
||||
|
||||
AND $5F ; Make character uppercase
|
||||
|
||||
CP 'I'
|
||||
JP Z,INTERPRT
|
||||
|
||||
CP 'G'
|
||||
JP Z,M_GOTO
|
||||
|
||||
CP 'X'
|
||||
JP Z,CPMLOAD
|
||||
|
||||
LD A,'?' ; Get a "?"
|
||||
RST 08H ; Print it
|
||||
JR MAIN0
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; Print string of characters to Serial A until byte=$00, WITH CR, LF
|
||||
;------------------------------------------------------------------------------
|
||||
M_PRINT LD A,(HL) ; Get character
|
||||
OR A ; Is it $00 ?
|
||||
RET Z ; Then RETurn on terminator
|
||||
RST 08H ; Print it
|
||||
INC HL ; Next Character
|
||||
JR M_PRINT ; Continue until $00
|
||||
|
||||
|
||||
TXCRLF LD A,$0D ;
|
||||
RST 08H ; Print character
|
||||
LD A,$0A ;
|
||||
RST 08H ; Print character
|
||||
RET
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; Get a character from the console, must be $20-$7F to be valid (no control characters)
|
||||
; <Ctrl-c> and <SPACE> breaks with the Zero Flag set
|
||||
;------------------------------------------------------------------------------
|
||||
M_GETCHR CALL RDCHR ; RX a Character
|
||||
CP $03 ; <ctrl-c> User break?
|
||||
RET Z
|
||||
CP $20 ; <space> or better?
|
||||
JR C,M_GETCHR ; Do it again until we get something usable
|
||||
RET
|
||||
;------------------------------------------------------------------------------
|
||||
; Gets two ASCII characters from the console (assuming them to be HEX 0-9 A-F)
|
||||
; Moves them into B and C, converts them into a byte value in A and updates a
|
||||
; Checksum value in E
|
||||
;------------------------------------------------------------------------------
|
||||
GET2 CALL M_GETCHR ; Get us a valid character to work with
|
||||
LD B,A ; Load it in B
|
||||
CALL M_GETCHR ; Get us another character
|
||||
LD C,A ; load it in C
|
||||
CALL BCTOA ; Convert ASCII to byte
|
||||
LD C,A ; Build the checksum
|
||||
LD A,E
|
||||
SUB C ; The checksum should always equal zero when checked
|
||||
LD E,A ; Save the checksum back where it came from
|
||||
LD A,C ; Retrieve the byte and go back
|
||||
RET
|
||||
;------------------------------------------------------------------------------
|
||||
; Gets four Hex characters from the console, converts them to values in HL
|
||||
;------------------------------------------------------------------------------
|
||||
GETHL LD HL,$0000 ; Gets xxxx but sets Carry Flag on any Terminator
|
||||
CALL ECHO ; RX a Character
|
||||
CP $0D ; <CR>?
|
||||
JR NZ,GETX2 ; other key
|
||||
SETCY SCF ; Set Carry Flag
|
||||
RET ; and Return to main program
|
||||
;------------------------------------------------------------------------------
|
||||
; This routine converts last four hex characters (0-9 A-F) user types into a value in HL
|
||||
; Rotates the old out and replaces with the new until the user hits a terminating character
|
||||
;------------------------------------------------------------------------------
|
||||
GETX LD HL,$0000 ; CLEAR HL
|
||||
GETX1 CALL ECHO ; RX a character from the console
|
||||
CP $0D ; <CR>
|
||||
RET Z ; quit
|
||||
CP $2C ; <,> can be used to safely quit for multiple entries
|
||||
RET Z ; (Like filling both DE and HL from the user)
|
||||
GETX2 CP $03 ; Likewise, a <ctrl-C> will terminate clean, too, but
|
||||
JR Z,SETCY ; It also sets the Carry Flag for testing later.
|
||||
ADD HL,HL ; Otherwise, rotate the previous low nibble to high
|
||||
ADD HL,HL ; rather slowly
|
||||
ADD HL,HL ; until we get to the top
|
||||
ADD HL,HL ; and then we can continue on.
|
||||
SUB $30 ; Convert ASCII to byte value
|
||||
CP $0A ; Are we in the 0-9 range?
|
||||
JR C,GETX3 ; Then we just need to sub $30, but if it is A-F
|
||||
SUB $07 ; We need to take off 7 more to get the value down to
|
||||
GETX3 AND $0F ; to the right hex value
|
||||
ADD A,L ; Add the high nibble to the low
|
||||
LD L,A ; Move the byte back to A
|
||||
JR GETX1 ; and go back for next character until he terminates
|
||||
;------------------------------------------------------------------------------
|
||||
; Convert ASCII characters in B C registers to a byte value in A
|
||||
;------------------------------------------------------------------------------
|
||||
BCTOA LD A,B ; Move the hi order byte to A
|
||||
SUB $30 ; Take it down from Ascii
|
||||
CP $0A ; Are we in the 0-9 range here?
|
||||
JR C,BCTOA1 ; If so, get the next nybble
|
||||
SUB $07 ; But if A-F, take it down some more
|
||||
BCTOA1 RLCA ; Rotate the nybble from low to high
|
||||
RLCA ; One bit at a time
|
||||
RLCA ; Until we
|
||||
RLCA ; Get there with it
|
||||
LD B,A ; Save the converted high nybble
|
||||
LD A,C ; Now get the low order byte
|
||||
SUB $30 ; Convert it down from Ascii
|
||||
CP $0A ; 0-9 at this point?
|
||||
JR C,BCTOA2 ; Good enough then, but
|
||||
SUB $07 ; Take off 7 more if it's A-F
|
||||
BCTOA2 ADD A,B ; Add in the high order nybble
|
||||
RET
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; Get a character and echo it back to the user
|
||||
;------------------------------------------------------------------------------
|
||||
ECHO CALL RDCHR
|
||||
CALL WRCHR
|
||||
RET
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; GOTO command
|
||||
;------------------------------------------------------------------------------
|
||||
M_GOTO CALL GETHL ; ENTRY POINT FOR <G>oto addr. Get XXXX from user.
|
||||
RET C ; Return if invalid
|
||||
PUSH HL
|
||||
RET ; Jump to HL address value
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; LOAD Intel Hex format file from the console.
|
||||
; [Intel Hex Format is:
|
||||
; 1) Colon (Frame 0)
|
||||
; 2) Record Length Field (Frames 1 and 2)
|
||||
; 3) Load Address Field (Frames 3,4,5,6)
|
||||
; 4) Record Type Field (Frames 7 and 8)
|
||||
; 5) Data Field (Frames 9 to 9+2*(Record Length)-1
|
||||
; 6) Checksum Field - Sum of all byte values from Record Length to and
|
||||
; including Checksum Field = 0 ]
|
||||
;------------------------------------------------------------------------------
|
||||
LOAD LD E,0 ; First two Characters is the Record Length Field
|
||||
CALL GET2 ; Get us two characters into BC, convert it to a byte <A>
|
||||
LD D,A ; Load Record Length count into D
|
||||
CALL GET2 ; Get next two characters, Memory Load Address <H>
|
||||
LD H,A ; put value in H register.
|
||||
CALL GET2 ; Get next two characters, Memory Load Address <L>
|
||||
LD L,A ; put value in L register.
|
||||
CALL GET2 ; Get next two characters, Record Field Type
|
||||
CP $01 ; Record Field Type 00 is Data, 01 is End of File
|
||||
JR NZ,LOAD2 ; Must be the end of that file
|
||||
CALL GET2 ; Get next two characters, assemble into byte
|
||||
LD A,E ; Recall the Checksum byte
|
||||
AND A ; Is it Zero?
|
||||
JR Z,LOAD00 ; Print footer reached message
|
||||
JR LOADERR ; Checksums don't add up, Error out
|
||||
|
||||
LOAD2 LD A,D ; Retrieve line character counter
|
||||
AND A ; Are we done with this line?
|
||||
JR Z,LOAD3 ; Get two more ascii characters, build a byte and checksum
|
||||
CALL GET2 ; Get next two chars, convert to byte in A, checksum it
|
||||
LD (HL),A ; Move converted byte in A to memory location
|
||||
INC HL ; Increment pointer to next memory location
|
||||
LD A,'.' ; Print out a "." for every byte loaded
|
||||
RST 08H ;
|
||||
DEC D ; Decrement line character counter
|
||||
JR LOAD2 ; and keep loading into memory until line is complete
|
||||
|
||||
LOAD3 CALL GET2 ; Get two chars, build byte and checksum
|
||||
LD A,E ; Check the checksum value
|
||||
AND A ; Is it zero?
|
||||
RET Z
|
||||
|
||||
LOADERR LD HL,CKSUMERR ; Get "Checksum Error" message
|
||||
CALL M_PRINT ; Print Message from (HL) and terminate the load
|
||||
RET
|
||||
|
||||
LOAD00 LD HL,LDETXT ; Print load complete message
|
||||
CALL M_PRINT
|
||||
RET
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; Start Interpreter
|
||||
;------------------------------------------------------------------------------
|
||||
INTERPRT
|
||||
JP STARTINT
|
||||
RET
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; CP/M load command
|
||||
;------------------------------------------------------------------------------
|
||||
CPMLOAD
|
||||
|
||||
LD HL,CPMTXT
|
||||
CALL M_PRINT
|
||||
CALL M_GETCHR
|
||||
RET Z ; Cancel if CTRL-C
|
||||
AND $5F ; uppercase
|
||||
CP 'Y'
|
||||
JP Z,CPMLOAD2
|
||||
RET
|
||||
CPMTXT
|
||||
.BYTE $0D,$0A
|
||||
.TEXT "Boot CP/M?"
|
||||
.BYTE $00
|
||||
|
||||
CPMTXT2
|
||||
.BYTE $0D,$0A
|
||||
.TEXT "Loading CP/M"
|
||||
.BYTE $0D,$0A,$00
|
||||
|
||||
CPMLOAD2
|
||||
LD HL,CPMTXT2
|
||||
CALL M_PRINT
|
||||
|
||||
LD B,numSecs
|
||||
|
||||
LD A,0
|
||||
LD (lba0),A
|
||||
ld (lba1),A
|
||||
ld (lba2),A
|
||||
ld (lba3),A
|
||||
|
||||
LD HL,loadAddr
|
||||
LD (dmaAddr),HL
|
||||
processSectors:
|
||||
|
||||
call readhst
|
||||
|
||||
LD DE,0200H
|
||||
LD HL,(dmaAddr)
|
||||
ADD HL,DE
|
||||
LD (dmaAddr),HL
|
||||
LD A,(lba0)
|
||||
INC A
|
||||
LD (lba0),A
|
||||
|
||||
djnz processSectors
|
||||
|
||||
; Start CP/M using entry at top of BIOS
|
||||
; The current active console stream ID is pushed onto the stack
|
||||
; to allow the CBIOS to pick it up
|
||||
; 0 = ACIA0, 1 = ACIA1
|
||||
|
||||
ld A,(primaryIO)
|
||||
PUSH AF
|
||||
ld HL,($FFFE)
|
||||
jp (HL)
|
||||
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; ROUTINES AS USED IN BIOS
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
;================================================================================================
|
||||
; Convert track/head/sector into LBA for physical access to the disk
|
||||
;================================================================================================
|
||||
setLBAaddr:
|
||||
; Transfer LBA to disk (LBA3 not used on SD card)
|
||||
LD A,(lba2)
|
||||
OUT (SD_LBA2),A
|
||||
LD A,(lba1)
|
||||
OUT (SD_LBA1),A
|
||||
LD A,(lba0)
|
||||
OUT (SD_LBA0),A
|
||||
RET
|
||||
|
||||
;================================================================================================
|
||||
; Read physical sector from host
|
||||
;================================================================================================
|
||||
|
||||
readhst:
|
||||
PUSH AF
|
||||
PUSH BC
|
||||
PUSH HL
|
||||
|
||||
rdWait1: IN A,(SD_STATUS)
|
||||
CP 128
|
||||
JR NZ,rdWait1
|
||||
|
||||
CALL setLBAaddr
|
||||
|
||||
LD A,$00 ; 00 = Read block
|
||||
OUT (SD_CONTROL),A
|
||||
|
||||
LD c,4
|
||||
; LD HL,hstbuf
|
||||
rd4secs:
|
||||
LD b,128
|
||||
rdByte:
|
||||
|
||||
rdWait2: IN A,(SD_STATUS)
|
||||
CP 224 ; Read byte waiting
|
||||
JR NZ,rdWait2
|
||||
|
||||
IN A,(SD_DATA)
|
||||
|
||||
LD (HL),A
|
||||
INC HL
|
||||
dec b
|
||||
JR NZ, rdByte
|
||||
dec c
|
||||
JR NZ,rd4secs
|
||||
|
||||
POP HL
|
||||
POP BC
|
||||
POP AF
|
||||
|
||||
; XOR a
|
||||
; ld (erflag),a
|
||||
RET
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; END OF ROUTINES AS USED IN BIOS
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
|
||||
M_SIGNON .BYTE "CP/M Boot ROM 2.0"
|
||||
; .BYTE " based on design by G. Searle"
|
||||
; .BYTE $0D,$0A
|
||||
.BYTE $0D,$0A
|
||||
.TEXT "I-Strt Intrp"
|
||||
.BYTE $0D,$0A
|
||||
.TEXT "X-Boot CP/M"
|
||||
.BYTE $0D,$0A
|
||||
.TEXT ":nnnn-Load I rcrd"
|
||||
.BYTE $0D,$0A
|
||||
.TEXT "Gnnnn-R loc"
|
||||
.BYTE $0D,$0A
|
||||
.BYTE $00
|
||||
|
||||
M_BASTXT
|
||||
.BYTE $0D,$0A
|
||||
.TEXT "Cold or warm?"
|
||||
.BYTE $0D,$0A,$00
|
||||
|
||||
CKSUMERR .BYTE "Checksum error"
|
||||
.BYTE $0D,$0A,$00
|
||||
|
||||
INITTXT
|
||||
.BYTE $0C
|
||||
.TEXT "Press [space] to activate console."
|
||||
.BYTE $0D,$0A, $00
|
||||
|
||||
LDETXT
|
||||
.TEXT "Complete"
|
||||
.BYTE $0D,$0A, $00
|
||||
|
||||
; ==========================================================================================================================
|
||||
; GENERAL EQUATES
|
||||
|
||||
CTRLC .EQU 03H ; Control "C"
|
||||
CTRLG .EQU 07H ; Control "G"
|
||||
BKSP .EQU 08H ; Back space
|
||||
LF .EQU 0AH ; Line feed
|
||||
CS .EQU 0CH ; Clear screen
|
||||
CR .EQU 0DH ; Carriage return
|
||||
CTRLO .EQU 0FH ; Control "O"
|
||||
CTRLQ .EQU 11H ; Control "Q"
|
||||
CTRLR .EQU 12H ; Control "R"
|
||||
CTRLS .EQU 13H ; Control "S"
|
||||
CTRLU .EQU 15H ; Control "U"
|
||||
ESC .EQU 1BH ; Escape
|
||||
DEL .EQU 7FH ; Delete
|
||||
|
||||
|
||||
;===========================================================================================================================
|
||||
|
||||
; NASCOM ROM BASIC Ver 4.7,
|
||||
; used to be here, removed to get rid of the '(C) 1978 Microsoft'
|
||||
|
||||
STARTINT:
|
||||
#INCLUDE "SOURCE\\INTPRT.ASM"
|
||||
.end
|
||||
5089
Z80 CPM and bootloader (basmon)/source/mon.lst
Normal file
5089
Z80 CPM and bootloader (basmon)/source/mon.lst
Normal file
File diff suppressed because it is too large
Load Diff
BIN
Z80 CPM and bootloader (basmon)/tasm manual.pdf
Normal file
BIN
Z80 CPM and bootloader (basmon)/tasm manual.pdf
Normal file
Binary file not shown.
222
Z80 CPM and bootloader (basmon)/tasm65.tab
Normal file
222
Z80 CPM and bootloader (basmon)/tasm65.tab
Normal file
@@ -0,0 +1,222 @@
|
||||
"TASM 6502 Assembler. "
|
||||
/****************************************************************************
|
||||
/* $Id: tasm65.tab 1.1 1993/07/31 01:12:40 toma Exp $
|
||||
/****************************************************************************
|
||||
/* This is the instruction set definition table for the 6502 version of TASM.
|
||||
/* Thomas N. Anderson, Speech Technology Incorported, June 1987.
|
||||
/* Note that there are two classes of extended instructions beyond
|
||||
/* the standard set. The classes are assigned bits as follows:
|
||||
/* bit 0 = standard set
|
||||
/* bit 1 = extended instructions for R65C02
|
||||
/* bit 2 = extended instructions for R65C00/21
|
||||
/*
|
||||
/*INSTR ARGS OPCODE BYTES MOD CLASS SHIFT OR */
|
||||
/*-------------------------------------------*/
|
||||
ADC #* 69 2 NOP 1
|
||||
ADC (*,X) 61 2 NOP 1
|
||||
ADC (*),Y 71 2 NOP 1
|
||||
ADC (*) 72 2 NOP 2
|
||||
ADC *,X 7D 3 ZP 1
|
||||
ADC *,Y 79 3 NOP 1
|
||||
ADC * 6D 3 ZP 1
|
||||
|
||||
AND #* 29 2 NOP 1
|
||||
AND (*,X) 21 2 NOP 1
|
||||
AND (*),Y 31 2 NOP 1
|
||||
AND (*) 32 2 NOP 2
|
||||
AND *,X 3D 3 ZP 1
|
||||
AND *,Y 39 3 NOP 1
|
||||
AND * 2D 3 ZP 1
|
||||
|
||||
ASL A 0A 1 NOP 1
|
||||
ASL *,X 1E 3 ZP 1
|
||||
ASL * 0E 3 ZP 1
|
||||
|
||||
BBR0 *,* 0f 3 CR 6
|
||||
BBR1 *,* 1f 3 CR 6
|
||||
BBR2 *,* 2f 3 CR 6
|
||||
BBR3 *,* 3f 3 CR 6
|
||||
BBR4 *,* 4f 3 CR 6
|
||||
BBR5 *,* 5f 3 CR 6
|
||||
BBR6 *,* 6f 3 CR 6
|
||||
BBR7 *,* 7f 3 CR 6
|
||||
|
||||
BBS0 *,* 8f 3 CR 6
|
||||
BBS1 *,* 9f 3 CR 6
|
||||
BBS2 *,* af 3 CR 6
|
||||
BBS3 *,* bf 3 CR 6
|
||||
BBS4 *,* cf 3 CR 6
|
||||
BBS5 *,* df 3 CR 6
|
||||
BBS6 *,* ef 3 CR 6
|
||||
BBS7 *,* ff 3 CR 6
|
||||
|
||||
BCC * 90 2 R1 1
|
||||
BCS * B0 2 R1 1
|
||||
BEQ * F0 2 R1 1
|
||||
BMI * 30 2 R1 1
|
||||
BNE * D0 2 R1 1
|
||||
BPL * 10 2 R1 1
|
||||
BRA * 80 2 R1 6
|
||||
BVC * 50 2 R1 1
|
||||
BVS * 70 2 R1 1
|
||||
|
||||
BIT #* 89 2 NOP 2
|
||||
BIT *,X 3C 3 ZP 2
|
||||
BIT * 2C 3 ZP 1
|
||||
|
||||
BRK "" 00 1 NOP 1
|
||||
|
||||
CLC "" 18 1 NOP 1
|
||||
CLD "" D8 1 NOP 1
|
||||
CLI "" 58 1 NOP 1
|
||||
CLV "" B8 1 NOP 1
|
||||
|
||||
CMP #* C9 2 NOP 1
|
||||
CMP (*,X) C1 2 NOP 1
|
||||
CMP (*),Y D1 2 NOP 1
|
||||
CMP (*) D2 2 NOP 2
|
||||
CMP *,X DD 3 ZP 1
|
||||
CMP *,Y D9 3 NOP 1
|
||||
CMP * CD 3 ZP 1
|
||||
|
||||
CPX #* E0 2 NOP 1
|
||||
CPX * EC 3 ZP 1
|
||||
|
||||
CPY #* C0 2 NOP 1
|
||||
CPY * CC 3 ZP 1
|
||||
|
||||
DEC A 3A 1 NOP 2
|
||||
DEC *,X DE 3 ZP 1
|
||||
DEC * CE 3 ZP 1
|
||||
|
||||
DEX "" CA 1 NOP 1
|
||||
DEY "" 88 1 NOP 1
|
||||
|
||||
EOR #* 49 2 NOP 1
|
||||
EOR (*,X) 41 2 NOP 1
|
||||
EOR (*),Y 51 2 NOP 1
|
||||
EOR (*) 52 2 NOP 2
|
||||
EOR *,X 5D 3 ZP 1
|
||||
EOR *,Y 59 3 NOP 1
|
||||
EOR * 4D 3 ZP 1
|
||||
|
||||
INC A 1A 1 NOP 2
|
||||
INC *,X FE 3 ZP 1
|
||||
INC * EE 3 ZP 1
|
||||
|
||||
INX "" E8 1 NOP 1
|
||||
INY "" C8 1 NOP 1
|
||||
|
||||
JMP (*,X) 7C 3 NOP 2
|
||||
JMP (*) 6C 3 NOP 1
|
||||
JMP * 4C 3 NOP 1
|
||||
|
||||
JSR * 20 3 NOP 1
|
||||
|
||||
LDA #* A9 2 NOP 1
|
||||
LDA (*,X) A1 2 NOP 1
|
||||
LDA (*),Y B1 2 NOP 1
|
||||
LDA (*) B2 2 NOP 2
|
||||
LDA *,X BD 3 ZP 1
|
||||
LDA *,Y B9 3 NOP 1
|
||||
LDA * AD 3 ZP 1
|
||||
|
||||
LDX #* A2 2 NOP 1
|
||||
LDX *,Y BE 3 ZP 1
|
||||
LDX * AE 3 ZP 1
|
||||
|
||||
LDY #* A0 2 NOP 1
|
||||
LDY *,X BC 3 ZP 1
|
||||
LDY * AC 3 ZP 1
|
||||
|
||||
LSR A 4A 1 NOP 1
|
||||
LSR *,X 5E 3 ZP 1
|
||||
LSR * 4E 3 ZP 1
|
||||
|
||||
MUL "" 02 1 NOP 4 /* R65C00/21 only*/
|
||||
|
||||
NOP "" EA 1 NOP 1
|
||||
|
||||
ORA #* 09 2 NOP 1
|
||||
ORA (*,X) 01 2 NOP 1
|
||||
ORA (*),Y 11 2 NOP 1
|
||||
ORA (*) 12 2 NOP 2
|
||||
ORA *,X 1D 3 ZP 1
|
||||
ORA *,Y 19 3 NOP 1
|
||||
ORA * 0D 3 ZP 1
|
||||
|
||||
PHA "" 48 1 NOP 1
|
||||
PHP "" 08 1 NOP 1
|
||||
PHX "" DA 1 NOP 6
|
||||
PHY "" 5A 1 NOP 6
|
||||
PLA "" 68 1 NOP 1
|
||||
PLP "" 28 1 NOP 1
|
||||
PLX "" FA 1 NOP 6
|
||||
PLY "" 7A 1 NOP 6
|
||||
|
||||
RMB0 * 07 2 NOP 6
|
||||
RMB1 * 17 2 NOP 6
|
||||
RMB2 * 27 2 NOP 6
|
||||
RMB3 * 37 2 NOP 6
|
||||
RMB4 * 47 2 NOP 6
|
||||
RMB5 * 57 2 NOP 6
|
||||
RMB6 * 67 2 NOP 6
|
||||
RMB7 * 77 2 NOP 6
|
||||
|
||||
ROL A 2A 1 NOP 1
|
||||
ROL *,X 3E 3 ZP 1
|
||||
ROL * 2E 3 ZP 1
|
||||
|
||||
ROR A 6A 1 NOP 1
|
||||
ROR *,X 7E 3 ZP 1
|
||||
ROR * 6E 3 ZP 1
|
||||
|
||||
RTI "" 40 1 NOP 1
|
||||
RTS "" 60 1 NOP 1
|
||||
|
||||
SBC #* E9 2 NOP 1
|
||||
SBC (*,X) E1 2 NOP 1
|
||||
SBC (*),Y F1 2 NOP 1
|
||||
SBC (*) F2 2 NOP 2
|
||||
SBC *,X FD 3 ZP 1
|
||||
SBC *,Y F9 3 NOP 1
|
||||
SBC * ED 3 ZP 1
|
||||
|
||||
SEC "" 38 1 NOP 1
|
||||
SED "" F8 1 NOP 1
|
||||
SEI "" 78 1 NOP 1
|
||||
|
||||
SMB0 * 87 2 NOP 6
|
||||
SMB1 * 97 2 NOP 6
|
||||
SMB2 * a7 2 NOP 6
|
||||
SMB3 * b7 2 NOP 6
|
||||
SMB4 * c7 2 NOP 6
|
||||
SMB5 * d7 2 NOP 6
|
||||
SMB6 * e7 2 NOP 6
|
||||
SMB7 * f7 2 NOP 6
|
||||
|
||||
STA (*,X) 81 2 NOP 1
|
||||
STA (*),Y 91 2 NOP 1
|
||||
STA (*) 92 2 NOP 2
|
||||
STA *,X 9D 3 ZP 1
|
||||
STA *,Y 99 3 NOP 1
|
||||
STA * 8D 3 ZP 1
|
||||
|
||||
STX *,Y 96 2 ZP 1
|
||||
STX * 8E 3 ZP 1
|
||||
|
||||
STY *,X 94 2 NOP 1
|
||||
STY * 8C 3 ZP 1
|
||||
|
||||
STZ *,X 9e 3 ZP 2
|
||||
STZ * 9c 3 ZP 2
|
||||
|
||||
TAX "" AA 1 NOP 1
|
||||
TAY "" A8 1 NOP 1
|
||||
TRB * 1c 3 ZP 2
|
||||
TSB * 0c 3 ZP 2
|
||||
TSX "" BA 1 NOP 1
|
||||
TXA "" 8A 1 NOP 1
|
||||
TXS "" 9A 1 NOP 1
|
||||
TYA "" 98 1 NOP 1
|
||||
|
||||
257
Z80 CPM and bootloader (basmon)/tasm85.tab
Normal file
257
Z80 CPM and bootloader (basmon)/tasm85.tab
Normal file
@@ -0,0 +1,257 @@
|
||||
"TASM 8085 Assembler. "
|
||||
/****************************************************************************
|
||||
/* $Id: tasm85.tab 1.1 1993/07/31 01:12:40 toma Exp $
|
||||
/****************************************************************************
|
||||
/* This is the instruction set definition table for the 8085 version of TASM.
|
||||
/* Thomas N. Anderson, Speech Technology Incorporated
|
||||
/* This table authored and submitted by Gary Kirk Bach.
|
||||
/*
|
||||
/*INSTR ARGS OPCODE BYTES MOD CLASS */
|
||||
/*-----------------*/
|
||||
ACI * CE 2 NOP 1
|
||||
ADC B 88 1 NOP 1
|
||||
ADC C 89 1 NOP 1
|
||||
ADC D 8A 1 NOP 1
|
||||
ADC E 8B 1 NOP 1
|
||||
ADC H 8C 1 NOP 1
|
||||
ADC L 8D 1 NOP 1
|
||||
ADC M 8E 1 NOP 1
|
||||
ADC A 8F 1 NOP 1
|
||||
ADD B 80 1 NOP 1
|
||||
ADD C 81 1 NOP 1
|
||||
ADD D 82 1 NOP 1
|
||||
ADD E 83 1 NOP 1
|
||||
ADD H 84 1 NOP 1
|
||||
ADD L 85 1 NOP 1
|
||||
ADD M 86 1 NOP 1
|
||||
ADD A 87 1 NOP 1
|
||||
ADI * C6 2 NOP 1
|
||||
ANA B A0 1 NOP 1
|
||||
ANA C A1 1 NOP 1
|
||||
ANA D A2 1 NOP 1
|
||||
ANA E A3 1 NOP 1
|
||||
ANA H A4 1 NOP 1
|
||||
ANA L A5 1 NOP 1
|
||||
ANA M A6 1 NOP 1
|
||||
ANA A A7 1 NOP 1
|
||||
ANI * E6 2 NOP 1
|
||||
CALL * CD 3 NOP 1
|
||||
CC * DC 3 NOP 1
|
||||
CM * FC 3 NOP 1
|
||||
CMA "" 2F 1 NOP 1
|
||||
CMC "" 3F 1 NOP 1
|
||||
CMP B B8 1 NOP 1
|
||||
CMP C B9 1 NOP 1
|
||||
CMP D BA 1 NOP 1
|
||||
CMP E BB 1 NOP 1
|
||||
CMP H BC 1 NOP 1
|
||||
CMP L BD 1 NOP 1
|
||||
CMP M BE 1 NOP 1
|
||||
CMP A BF 1 NOP 1
|
||||
CNC * D4 3 NOP 1
|
||||
CNZ * C4 3 NOP 1
|
||||
CP * F4 3 NOP 1
|
||||
CPE * EC 3 NOP 1
|
||||
CPI * FE 2 NOP 1
|
||||
CPO * E4 3 NOP 1
|
||||
CZ * CC 3 NOP 1
|
||||
DAA "" 27 1 NOP 1
|
||||
DAD B 09 1 NOP 1
|
||||
DAD D 19 1 NOP 1
|
||||
DAD H 29 1 NOP 1
|
||||
DAD SP 39 1 NOP 1
|
||||
DCR B 05 1 NOP 1
|
||||
DCR C 0D 1 NOP 1
|
||||
DCR D 15 1 NOP 1
|
||||
DCR E 1D 1 NOP 1
|
||||
DCR H 25 1 NOP 1
|
||||
DCR L 2D 1 NOP 1
|
||||
DCR M 35 1 NOP 1
|
||||
DCR A 3D 1 NOP 1
|
||||
DCX B 0B 1 NOP 1
|
||||
DCX D 1B 1 NOP 1
|
||||
DCX H 2B 1 NOP 1
|
||||
DCX SP 3B 1 NOP 1
|
||||
DI "" F3 1 NOP 1
|
||||
EI "" FB 1 NOP 1
|
||||
HLT "" 76 1 NOP 1
|
||||
IN * DB 2 NOP 1
|
||||
INR B 04 1 NOP 1
|
||||
INR C 0C 1 NOP 1
|
||||
INR D 14 1 NOP 1
|
||||
INR E 1C 1 NOP 1
|
||||
INR H 24 1 NOP 1
|
||||
INR L 2C 1 NOP 1
|
||||
INR M 34 1 NOP 1
|
||||
INR A 3C 1 NOP 1
|
||||
INX B 03 1 NOP 1
|
||||
INX D 13 1 NOP 1
|
||||
INX H 23 1 NOP 1
|
||||
INX SP 33 1 NOP 1
|
||||
JC * DA 3 NOP 1
|
||||
JM * FA 3 NOP 1
|
||||
JMP * C3 3 NOP 1
|
||||
JNC * D2 3 NOP 1
|
||||
JNZ * C2 3 NOP 1
|
||||
JP * F2 3 NOP 1
|
||||
JPE * EA 3 NOP 1
|
||||
JPO * E2 3 NOP 1
|
||||
JZ * CA 3 NOP 1
|
||||
LDA * 3A 3 NOP 1
|
||||
LDAX B 0A 1 NOP 1
|
||||
LDAX D 1A 1 NOP 1
|
||||
LHLD * 2A 3 NOP 1
|
||||
LXI B,* 01 3 NOP 1
|
||||
LXI D,* 11 3 NOP 1
|
||||
LXI H,* 21 3 NOP 1
|
||||
LXI SP,* 31 3 NOP 1
|
||||
MOV B,B 40 1 NOP 1
|
||||
MOV B,C 41 1 NOP 1
|
||||
MOV B,D 42 1 NOP 1
|
||||
MOV B,E 43 1 NOP 1
|
||||
MOV B,H 44 1 NOP 1
|
||||
MOV B,L 45 1 NOP 1
|
||||
MOV B,M 46 1 NOP 1
|
||||
MOV B,A 47 1 NOP 1
|
||||
MOV C,B 48 1 NOP 1
|
||||
MOV C,C 49 1 NOP 1
|
||||
MOV C,D 4A 1 NOP 1
|
||||
MOV C,E 4B 1 NOP 1
|
||||
MOV C,H 4C 1 NOP 1
|
||||
MOV C,L 4D 1 NOP 1
|
||||
MOV C,M 4E 1 NOP 1
|
||||
MOV C,A 4F 1 NOP 1
|
||||
MOV D,B 50 1 NOP 1
|
||||
MOV D,C 51 1 NOP 1
|
||||
MOV D,D 52 1 NOP 1
|
||||
MOV D,E 53 1 NOP 1
|
||||
MOV D,H 54 1 NOP 1
|
||||
MOV D,L 55 1 NOP 1
|
||||
MOV D,M 56 1 NOP 1
|
||||
MOV D,A 57 1 NOP 1
|
||||
MOV E,B 58 1 NOP 1
|
||||
MOV E,C 59 1 NOP 1
|
||||
MOV E,D 5A 1 NOP 1
|
||||
MOV E,E 5B 1 NOP 1
|
||||
MOV E,H 5C 1 NOP 1
|
||||
MOV E,L 5D 1 NOP 1
|
||||
MOV E,M 5E 1 NOP 1
|
||||
MOV E,A 5F 1 NOP 1
|
||||
MOV H,B 60 1 NOP 1
|
||||
MOV H,C 61 1 NOP 1
|
||||
MOV H,D 62 1 NOP 1
|
||||
MOV H,E 63 1 NOP 1
|
||||
MOV H,H 64 1 NOP 1
|
||||
MOV H,L 65 1 NOP 1
|
||||
MOV H,M 66 1 NOP 1
|
||||
MOV H,A 67 1 NOP 1
|
||||
MOV L,B 68 1 NOP 1
|
||||
MOV L,C 69 1 NOP 1
|
||||
MOV L,D 6A 1 NOP 1
|
||||
MOV L,E 6B 1 NOP 1
|
||||
MOV L,H 6C 1 NOP 1
|
||||
MOV L,L 6D 1 NOP 1
|
||||
MOV L,M 6E 1 NOP 1
|
||||
MOV L,A 6F 1 NOP 1
|
||||
MOV M,B 70 1 NOP 1
|
||||
MOV M,C 71 1 NOP 1
|
||||
MOV M,D 72 1 NOP 1
|
||||
MOV M,E 73 1 NOP 1
|
||||
MOV M,H 74 1 NOP 1
|
||||
MOV M,L 75 1 NOP 1
|
||||
MOV M,A 77 1 NOP 1
|
||||
MOV A,B 78 1 NOP 1
|
||||
MOV A,C 79 1 NOP 1
|
||||
MOV A,D 7A 1 NOP 1
|
||||
MOV A,E 7B 1 NOP 1
|
||||
MOV A,H 7C 1 NOP 1
|
||||
MOV A,L 7D 1 NOP 1
|
||||
MOV A,M 7E 1 NOP 1
|
||||
MOV A,A 7F 1 NOP 1
|
||||
MVI B,* 06 2 NOP 1
|
||||
MVI C,* 0E 2 NOP 1
|
||||
MVI D,* 16 2 NOP 1
|
||||
MVI E,* 1E 2 NOP 1
|
||||
MVI H,* 26 2 NOP 1
|
||||
MVI L,* 2E 2 NOP 1
|
||||
MVI M,* 36 2 NOP 1
|
||||
MVI A,* 3E 2 NOP 1
|
||||
NOP "" 00 1 NOP 1
|
||||
ORA B B0 1 NOP 1
|
||||
ORA C B1 1 NOP 1
|
||||
ORA D B2 1 NOP 1
|
||||
ORA E B3 1 NOP 1
|
||||
ORA H B4 1 NOP 1
|
||||
ORA L B5 1 NOP 1
|
||||
ORA M B6 1 NOP 1
|
||||
ORA A B7 1 NOP 1
|
||||
ORI * F6 2 NOP 1
|
||||
OUT * D3 2 NOP 1
|
||||
PCHL "" E9 1 NOP 1
|
||||
POP B C1 1 NOP 1
|
||||
POP D D1 1 NOP 1
|
||||
POP H E1 1 NOP 1
|
||||
POP PSW F1 1 NOP 1
|
||||
PUSH B C5 1 NOP 1
|
||||
PUSH D D5 1 NOP 1
|
||||
PUSH H E5 1 NOP 1
|
||||
PUSH PSW F5 1 NOP 1
|
||||
RAL "" 17 1 NOP 1
|
||||
RAR "" 1F 1 NOP 1
|
||||
RC "" D8 1 NOP 1
|
||||
RET "" C9 1 NOP 1
|
||||
RIM "" 20 1 NOP 1
|
||||
RLC "" 07 1 NOP 1
|
||||
RM "" F8 1 NOP 1
|
||||
RNC "" D0 1 NOP 1
|
||||
RNZ "" C0 1 NOP 1
|
||||
RP "" F0 1 NOP 1
|
||||
RPE "" E8 1 NOP 1
|
||||
RPO "" E0 1 NOP 1
|
||||
RRC "" 0F 1 NOP 1
|
||||
RST 0 C7 1 NOP 1
|
||||
RST 1 CF 1 NOP 1
|
||||
RST 2 D7 1 NOP 1
|
||||
RST 3 DF 1 NOP 1
|
||||
RST 4 E7 1 NOP 1
|
||||
RST 5 EF 1 NOP 1
|
||||
RST 6 F7 1 NOP 1
|
||||
RST 7 FF 1 NOP 1
|
||||
RZ "" C8 1 NOP 1
|
||||
SBB B 98 1 NOP 1
|
||||
SBB C 99 1 NOP 1
|
||||
SBB D 9A 1 NOP 1
|
||||
SBB E 9B 1 NOP 1
|
||||
SBB H 9C 1 NOP 1
|
||||
SBB L 9D 1 NOP 1
|
||||
SBB M 9E 1 NOP 1
|
||||
SBB A 9F 1 NOP 1
|
||||
SBI * DE 2 NOP 1
|
||||
SHLD * 22 3 NOP 1
|
||||
SIM "" 30 1 NOP 1
|
||||
SPHL "" F9 1 NOP 1
|
||||
STA * 32 3 NOP 1
|
||||
STAX B 02 1 NOP 1
|
||||
STAX D 12 1 NOP 1
|
||||
STC "" 37 1 NOP 1
|
||||
SUB B 90 1 NOP 1
|
||||
SUB C 91 1 NOP 1
|
||||
SUB D 92 1 NOP 1
|
||||
SUB E 93 1 NOP 1
|
||||
SUB H 94 1 NOP 1
|
||||
SUB L 95 1 NOP 1
|
||||
SUB M 96 1 NOP 1
|
||||
SUB A 97 1 NOP 1
|
||||
SUI * D6 2 NOP 1
|
||||
XCHG "" EB 1 NOP 1
|
||||
XRA B A8 1 NOP 1
|
||||
XRA C A9 1 NOP 1
|
||||
XRA D AA 1 NOP 1
|
||||
XRA E AB 1 NOP 1
|
||||
XRA H AC 1 NOP 1
|
||||
XRA L AD 1 NOP 1
|
||||
XRA M AE 1 NOP 1
|
||||
XRA A AF 1 NOP 1
|
||||
XRI * EE 2 NOP 1
|
||||
XTHL "" E3 1 NOP 1
|
||||
|
||||
2
Z80 CPM and bootloader (basmon)/tasmrun.bat
Normal file
2
Z80 CPM and bootloader (basmon)/tasmrun.bat
Normal file
@@ -0,0 +1,2 @@
|
||||
@echo off
|
||||
C:\winevdm\otvdm.exe tasm.exe %*
|
||||
2232
Z80 CPM and bootloader (basmon)/z80dis.py
Normal file
2232
Z80 CPM and bootloader (basmon)/z80dis.py
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1 +1 @@
|
||||
`define BUILD_DATE "241202"
|
||||
`define BUILD_DATE "241205"
|
||||
BIN
releases/MultiComp_20241205.rbf
Normal file
BIN
releases/MultiComp_20241205.rbf
Normal file
Binary file not shown.
Reference in New Issue
Block a user