1
0
mirror of https://github.com/Gehstock/Mist_FPGA.git synced 2026-04-18 16:17:42 +00:00

Moon Patrol Cleanup

This commit is contained in:
Marcel
2024-03-01 17:08:19 +01:00
parent 543d4c00cd
commit e2343a11c4
80 changed files with 5024 additions and 5218 deletions

View File

@@ -1,2 +0,0 @@
build_id.vhd
Output/

View File

@@ -1,6 +1,6 @@
---------------------------------------------------------------------------------
--
-- Arcade: Moon Patrol port to MiST by Gehstock
-- Arcade: Moon Patrol port to MiST
-- 19 December 2017
--
---------------------------------------------------------------------------------

View File

@@ -18,7 +18,7 @@
#
# Quartus II 64-Bit
# Version 13.1.4 Build 182 03/12/2014 SJ Web Edition
# Date created = 18:52:55 March 05, 2019
# Date created = 16:56:58 March 01, 2024
#
# -------------------------------------------------------------------------- #
#
@@ -41,10 +41,62 @@
# ========================
set_global_assignment -name ORIGINAL_QUARTUS_VERSION "12.1 SP1"
set_global_assignment -name PROJECT_CREATION_TIME_DATE "09:07:52 FEBRUARY 01, 2013"
set_global_assignment -name LAST_QUARTUS_VERSION "13.1 SP4.26"
set_global_assignment -name LAST_QUARTUS_VERSION 13.1
set_global_assignment -name PROJECT_OUTPUT_DIRECTORY output_files
set_global_assignment -name SMART_RECOMPILE ON
set_global_assignment -name PRE_FLOW_SCRIPT_FILE "quartus_sh:src/build_id.tcl"
set_global_assignment -name PRE_FLOW_SCRIPT_FILE "quartus_sh:rtl/build_id.tcl"
set_global_assignment -name SYSTEMVERILOG_FILE rtl/mpatrol.sv
set_global_assignment -name VHDL_FILE rtl/mpatrol_top.vhd
set_global_assignment -name VHDL_FILE rtl/pace.vhd
set_global_assignment -name VHDL_FILE rtl/pace_pkg.vhd
set_global_assignment -name VHDL_FILE rtl/platform.vhd
set_global_assignment -name VHDL_FILE rtl/platform_pkg.vhd
set_global_assignment -name VHDL_FILE rtl/platform_variant_pkg.vhd
set_global_assignment -name VHDL_FILE rtl/target_pkg.vhd
set_global_assignment -name VHDL_FILE rtl/project_pkg.vhd
set_global_assignment -name VHDL_FILE rtl/moon_patrol_sound_board.vhd
set_global_assignment -name VHDL_FILE rtl/video_controller_pkg.vhd
set_global_assignment -name VHDL_FILE rtl/sprite_pkg.vhd
set_global_assignment -name VHDL_FILE rtl/Graphics.vhd
set_global_assignment -name VHDL_FILE rtl/clk_div.vhd
set_global_assignment -name VHDL_FILE rtl/Z80.vhd
set_global_assignment -name VHDL_FILE rtl/sprom.vhd
set_global_assignment -name VHDL_FILE rtl/dprom_2r.vhd
set_global_assignment -name VHDL_FILE rtl/dpram.vhd
set_global_assignment -name VHDL_FILE rtl/spram.vhd
set_global_assignment -name VHDL_FILE rtl/iremm52_video_controller.vhd
set_global_assignment -name VHDL_FILE rtl/video_mixer.vhd
set_global_assignment -name VHDL_FILE rtl/bitmapctl_e.vhd
set_global_assignment -name VHDL_FILE rtl/bitmap1_ctl.vhd
set_global_assignment -name VHDL_FILE rtl/bitmap2_ctl.vhd
set_global_assignment -name VHDL_FILE rtl/bitmap3_ctl.vhd
set_global_assignment -name VHDL_FILE rtl/tilemapctl_e.vhd
set_global_assignment -name VHDL_FILE rtl/tilemapctl.vhd
set_global_assignment -name VHDL_FILE rtl/video_controller_pkg_body.vhd
set_global_assignment -name VHDL_FILE rtl/video_controller.vhd
set_global_assignment -name VHDL_FILE rtl/spritectl.vhd
set_global_assignment -name VHDL_FILE rtl/sprite_pkg_body.vhd
set_global_assignment -name VHDL_FILE rtl/sprite_array.vhd
set_global_assignment -name VHDL_FILE rtl/spritereg.vhd
set_global_assignment -name VHDL_FILE rtl/pll_mist.vhd
set_global_assignment -name VHDL_FILE "rtl/roms/mpa-1.3m.vhd"
set_global_assignment -name VHDL_FILE "rtl/roms/mpa-2.3l.vhd"
set_global_assignment -name VHDL_FILE "rtl/roms/mpa-3.3k.vhd"
set_global_assignment -name VHDL_FILE "rtl/roms/mpa-4.3j.vhd"
set_global_assignment -name VHDL_FILE "rtl/roms/mpe-4.3f.vhd"
set_global_assignment -name VHDL_FILE "rtl/roms/mpe-5.3e.vhd"
set_global_assignment -name VHDL_FILE "rtl/roms/mpe-1.3l.vhd"
set_global_assignment -name VHDL_FILE "rtl/roms/mpe-2.3k.vhd"
set_global_assignment -name VHDL_FILE "rtl/roms/mpe-3.3h.vhd"
set_global_assignment -name VHDL_FILE "rtl/roms/mpb-2.3m.vhd"
set_global_assignment -name VHDL_FILE "rtl/roms/mpb-1.3n.vhd"
set_global_assignment -name VHDL_FILE "rtl/roms/mp-s1.1a.vhd"
set_global_assignment -name QIP_FILE ../../../common/mist/mist.qip
set_global_assignment -name QIP_FILE ../../../common/CPU/T80/T80.qip
set_global_assignment -name VHDL_FILE ../../../common/CPU/6800/cpu68.vhd
set_global_assignment -name VHDL_FILE ../../../common/Sound/ym2149/vol_table_array.vhd
set_global_assignment -name VHDL_FILE ../../../common/Sound/ym2149/YM2149.vhd
set_global_assignment -name QIP_FILE ../../../common/Sound/jt5205/jt5205.qip
# Pin & Location Assignments
# ==========================
@@ -82,34 +134,6 @@ set_location_assignment PIN_91 -to SPI_SS3
set_location_assignment PIN_90 -to SPI_SS4
set_location_assignment PIN_13 -to CONF_DATA0
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_R[5]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_R[4]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_R[3]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_R[2]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_R[1]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_R[0]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_G[5]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_G[4]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_G[3]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_G[2]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_G[1]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_G[0]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_B[5]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_B[4]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_B[3]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_B[2]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_B[1]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_B[0]
set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to VGA_HS
set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to VGA_VS
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to LED
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to AUDIO_R
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to AUDIO_L
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to SPI_DO
# Classic Timing Assignments
# ==========================
set_global_assignment -name MIN_CORE_JUNCTION_TEMP 0
@@ -132,9 +156,11 @@ set_global_assignment -name SEARCH_PATH src/platform/m52/ -tag from_archive
set_global_assignment -name SEARCH_PATH src/platform/m52/mpatrol/ -tag from_archive
set_global_assignment -name SEARCH_PATH src/platform/m52/mpatrol/roms/ -tag from_archive
set_global_assignment -name SEARCH_PATH src/target/mist/ -tag from_archive
set_global_assignment -name TOP_LEVEL_ENTITY mpatrol
set_global_assignment -name VERILOG_INPUT_VERSION SYSTEMVERILOG_2005
set_global_assignment -name VERILOG_SHOW_LMF_MAPPING_MESSAGES OFF
set_global_assignment -name DEVICE_FILTER_PACKAGE TQFP
set_global_assignment -name DEVICE_FILTER_SPEED_GRADE 8
set_global_assignment -name TOP_LEVEL_ENTITY mpatrol
# Fitter Assignments
# ==================
@@ -146,6 +172,8 @@ set_global_assignment -name RESERVE_DATA1_AFTER_CONFIGURATION "USE AS REGULAR IO
set_global_assignment -name RESERVE_FLASH_NCE_AFTER_CONFIGURATION "USE AS REGULAR IO"
set_global_assignment -name RESERVE_DCLK_AFTER_CONFIGURATION "USE AS REGULAR IO"
set_global_assignment -name STRATIX_DEVICE_IO_STANDARD "3.3-V LVTTL"
set_global_assignment -name CYCLONEIII_CONFIGURATION_SCHEME "PASSIVE SERIAL"
set_global_assignment -name FORCE_CONFIGURATION_VCCIO ON
# Assembler Assignments
# =====================
@@ -157,6 +185,11 @@ set_global_assignment -name GENERATE_RBF_FILE ON
set_global_assignment -name ENABLE_SIGNALTAP OFF
set_global_assignment -name USE_SIGNALTAP_FILE Output/snd.stp
# Power Estimation Assignments
# ============================
set_global_assignment -name POWER_PRESET_COOLING_SOLUTION "NO HEAT SINK WITH STILL AIR"
set_global_assignment -name POWER_BOARD_THERMAL_MODEL "NONE (CONSERVATIVE)"
# Advanced I/O Timing Assignments
# ===============================
set_global_assignment -name OUTPUT_IO_TIMING_NEAR_END_VMEAS "HALF VCCIO" -rise
@@ -167,70 +200,45 @@ set_global_assignment -name OUTPUT_IO_TIMING_FAR_END_VMEAS "HALF SIGNAL SWING" -
# ---------------------
# start ENTITY(mpatrol)
# Fitter Assignments
# ==================
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_R[5]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_R[4]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_R[3]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_R[2]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_R[1]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_R[0]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_G[5]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_G[4]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_G[3]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_G[2]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_G[1]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_G[0]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_B[5]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_B[4]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_B[3]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_B[2]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_B[1]
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to VGA_B[0]
set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to VGA_HS
set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to VGA_VS
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to LED
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to AUDIO_R
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to AUDIO_L
set_instance_assignment -name CURRENT_STRENGTH_NEW 4MA -to SPI_DO
# start DESIGN_PARTITION(Top)
# ---------------------------
# Incremental Compilation Assignments
# ===================================
set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Top
set_global_assignment -name PARTITION_FITTER_PRESERVATION_LEVEL PLACEMENT_AND_ROUTING -section_id Top
set_global_assignment -name PARTITION_COLOR 16764057 -section_id Top
set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Top
set_global_assignment -name PARTITION_FITTER_PRESERVATION_LEVEL PLACEMENT_AND_ROUTING -section_id Top
set_global_assignment -name PARTITION_COLOR 16764057 -section_id Top
# end DESIGN_PARTITION(Top)
# -------------------------
# end ENTITY(mpatrol)
# -------------------
set_global_assignment -name DEVICE_FILTER_PACKAGE TQFP
set_global_assignment -name DEVICE_FILTER_SPEED_GRADE 8
set_global_assignment -name CYCLONEIII_CONFIGURATION_SCHEME "PASSIVE SERIAL"
set_global_assignment -name FORCE_CONFIGURATION_VCCIO ON
set_global_assignment -name POWER_PRESET_COOLING_SOLUTION "NO HEAT SINK WITH STILL AIR"
set_global_assignment -name POWER_BOARD_THERMAL_MODEL "NONE (CONSERVATIVE)"
set_global_assignment -name VHDL_FILE src/bitmapctl_e.vhd
set_global_assignment -name VHDL_FILE src/tilemapctl_e.vhd
set_global_assignment -name VHDL_FILE src/target_pkg.vhd
set_global_assignment -name VHDL_FILE src/project_pkg.vhd
set_global_assignment -name VHDL_FILE src/platform_pkg.vhd
set_global_assignment -name VHDL_FILE src/mpatrol.vhd
set_global_assignment -name VHDL_FILE src/video_mixer.vhd
set_global_assignment -name VHDL_FILE src/platform_variant_pkg.vhd
set_global_assignment -name VHDL_FILE src/spritereg.vhd
set_global_assignment -name VHDL_FILE src/spritectl.vhd
set_global_assignment -name VHDL_FILE src/sprite_pkg_body.vhd
set_global_assignment -name VHDL_FILE src/sprite_pkg.vhd
set_global_assignment -name VHDL_FILE src/video_controller_pkg_body.vhd
set_global_assignment -name VHDL_FILE src/video_controller_pkg.vhd
set_global_assignment -name VHDL_FILE src/iremm52_video_controller.vhd
set_global_assignment -name VHDL_FILE src/video_controller.vhd
set_global_assignment -name VHDL_FILE src/moon_patrol_sound_board.vhd
set_global_assignment -name VHDL_FILE src/moon_patrol_sound_prog.vhd
set_global_assignment -name VHDL_FILE src/Z80.vhd
set_global_assignment -name VHDL_FILE src/tilemapctl.vhd
set_global_assignment -name VHDL_FILE src/sprom.vhd
set_global_assignment -name VHDL_FILE src/spram.vhd
set_global_assignment -name VHDL_FILE src/platform.vhd
set_global_assignment -name VHDL_FILE src/pace_pkg.vhd
set_global_assignment -name VHDL_FILE src/pace.vhd
set_global_assignment -name VHDL_FILE src/Inputs.VHD
set_global_assignment -name VHDL_FILE src/input_mapper.vhd
set_global_assignment -name VHDL_FILE src/Graphics.VHD
set_global_assignment -name VHDL_FILE src/dprom_2r.vhd
set_global_assignment -name VHDL_FILE src/dpram.vhd
set_global_assignment -name VHDL_FILE src/clk_div.vhd
set_global_assignment -name VHDL_FILE src/bitmap3_ctl.vhd
set_global_assignment -name VHDL_FILE src/bitmap2_ctl.vhd
set_global_assignment -name VHDL_FILE src/bitmap1_ctl.vhd
set_global_assignment -name VHDL_FILE src/i82c55.vhd
set_global_assignment -name VERILOG_FILE src/keyboard.v
set_global_assignment -name VHDL_FILE src/sprite_array.vhd
set_global_assignment -name QIP_FILE src/Clock.qip
set_global_assignment -name QIP_FILE src/pll_aud.qip
set_global_assignment -name VHDL_FILE src/build_id.vhd
set_global_assignment -name QIP_FILE ../../../common/mist/mist.qip
set_global_assignment -name QIP_FILE ../../../common/CPU/T80/T80.qip
set_global_assignment -name VHDL_FILE ../../../common/CPU/6800/cpu68.vhd
set_global_assignment -name VHDL_FILE ../../../common/Sound/ym2149/vol_table_array.vhd
set_global_assignment -name VHDL_FILE ../../../common/Sound/ym2149/YM2149.vhd
set_global_assignment -name QIP_FILE ../../../common/Sound/jt5205/jt5205.qip
set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top

View File

@@ -1,36 +1,35 @@
# ================================================================================
#
# Build ID VHDL Module Script
# Build ID Verilog Module Script
# Jeff Wiencrot - 8/1/2011
#
# Generates a VHDL module that contains a timestamp,
# Generates a Verilog module that contains a timestamp,
# from the current build. These values are available from the build_date, build_time,
# physical_address, and host_name output ports of the build_id module in the build_id.v
# Verilog source file.
#
# ================================================================================
proc generateBuildID_VHDL {} {
proc generateBuildID_Verilog {} {
# Get the timestamp (see: http://www.altera.com/support/examples/tcl/tcl-date-time-stamp.html)
set buildDate [ clock format [ clock seconds ] -format %y%m%d ]
set buildTime [ clock format [ clock seconds ] -format %H%M%S ]
# Create a Verilog file for output
set outputFileName "src/build_id.vhd"
set outputFileName "rtl/build_id.v"
set outputFile [open $outputFileName "w"]
# Output the Verilog source
puts $outputFile "package build_id is"
puts $outputFile "constant BUILD_DATE : string := \"$buildDate\";"
puts $outputFile "constant BUILD_TIME : string := \"$buildTime\";"
puts $outputFile "end build_id;"
puts $outputFile "`define BUILD_DATE \"$buildDate\""
puts $outputFile "`define BUILD_TIME \"$buildTime\""
close $outputFile
# Send confirmation message to the Messages window
post_message "Generated build identification VHDL module: [pwd]/$outputFileName"
post_message "Generated build identification Verilog module: [pwd]/$outputFileName"
post_message "Date: $buildDate"
post_message "Time: $buildTime"
}
# Comment out this line to prevent the process from automatically executing when the file is sourced:
generateBuildID_VHDL
generateBuildID_Verilog

View File

@@ -257,7 +257,7 @@ port map(
-- rom_do <= snd_rom_do;
-- cpu program rom
cpu_prog_rom : entity work.moon_patrol_sound_prog
cpu_prog_rom : entity work.mp_s11a
port map(
clk => clock_E,
addr => cpu_addr(11 downto 0),

View File

@@ -0,0 +1,184 @@
module mpatrol(
output LED,
output [5:0] VGA_R,
output [5:0] VGA_G,
output [5:0] VGA_B,
output VGA_HS,
output VGA_VS,
output AUDIO_L,
output AUDIO_R,
input SPI_SCK,
output SPI_DO,
input SPI_DI,
input SPI_SS2,
input SPI_SS3,
input CONF_DATA0,
input CLOCK_27
);
`include "rtl/build_id.v"
`define CORE_NAME "MPATROL"
localparam CONF_STR = {
"MPATROL;;",
"O1,Video Timing,Original,Pal 50Hz;",
"O34,Scanlines,Off,25%,50%,75%;",
"O56,Bonus Life,10/30/50K,20/40/60K,10K,Never;",
"O7,Demo mode,Off,On;",
// "O9,Service,Off,On;",
"OA,Blending,Off,On;",
"OBC,Lives,5,3,2,1;",
"OD,Invulnerability,Off,On;",
"OE,Coin Mode,Free Play,1C_4P;",
"T0,Reset;",
"V,v1.0.",`BUILD_DATE
};
wire [1:0] scanlines = status[4:3];
wire blend = status[10];
wire pal = status[1];
wire service = status[9];
assign LED = 1;
assign AUDIO_R = AUDIO_L;
wire clk_sys, clk_aud, clk_vid;
wire pll_locked;
pll_mist pll(
.inclk0(CLOCK_27),
.areset(0),
.c0(clk_vid),//36
.c1(clk_sys),//6
.c2(clk_aud),//3.75 0.895000
.locked(pll_locked)
);
wire [63:0] status;
wire [1:0] buttons;
wire [1:0] switches;
wire [15:0] joystick_0;
wire [15:0] joystick_1;
wire scandoublerD;
wire ypbpr;
wire no_csync;
wire key_pressed;
wire [7:0] key_code;
wire key_strobe;
user_io #(
.STRLEN(($size(CONF_STR)>>3)))
user_io(
.clk_sys (clk_vid ),
.conf_str (CONF_STR ),
.SPI_CLK (SPI_SCK ),
.SPI_SS_IO (CONF_DATA0 ),
.SPI_MISO (SPI_DO ),
.SPI_MOSI (SPI_DI ),
.buttons (buttons ),
.switches (switches ),
.scandoubler_disable (scandoublerD ),
.ypbpr (ypbpr ),
.no_csync (no_csync ),
.key_strobe (key_strobe ),
.key_pressed (key_pressed ),
.key_code (key_code ),
.joystick_0 (joystick_0 ),
.joystick_1 (joystick_1 ),
.status (status )
);
wire ioctl_downl;
wire [7:0] ioctl_index;
wire ioctl_wr;
wire [24:0] ioctl_addr;
wire [7:0] ioctl_dout;
data_io data_io (
.clk_sys ( clk_vid ),
.SPI_SCK ( SPI_SCK ),
.SPI_SS2 ( SPI_SS2 ),
.SPI_DI ( SPI_DI ),
.ioctl_download( ioctl_downl ),
.ioctl_index ( ioctl_index ),
.ioctl_wr ( ioctl_wr ),
.ioctl_addr ( ioctl_addr ),
.ioctl_dout ( ioctl_dout )
);
wire [11:0] audio;
wire hs, vs, hb, vb;
wire blankn = ~(hb | vb);
wire [3:0] r, g, b;
mpatrol_top mpatrol_top(
.clk_sys ( clk_sys ),
.clk_vid ( clk_vid ),
.clk_aud ( clk_aud ),
.reset ( status[0] | buttons[1] ),
.AUDIO ( audio ),
.IN0 ({4'b1111, ~m_coin1, ~service, ~m_two_players, ~m_one_player}),
.IN1 ({~m_fireA, 1'b1, ~m_fireB, 3'b111, ~m_left, ~m_right}),
.IN2 ({~m_fire2A, 1'b1, ~m_fire2B, 3'b111, ~m_left2, ~m_right2}),
.DIP1 ({4'b1111, ~status[6], ~status[5], ~status[12], ~status[11]}),
.DIP2 ({1'b1, ~status[13], 3'b111, ~status[14], 1'b1, 1'b1}),//cheat, nu, nu, nu, coinmode, cab, flip
.VBLANK ( vb ),
.HBLANK ( hb ),
.VSYNC ( vs ),
.HSYNC ( hs ),
.R ( r ),
.G ( g ),
.B ( b ),
.PAL ( pal )
);
mist_video #(.COLOR_DEPTH(4), .SD_HCNT_WIDTH(10)) mist_video(
.clk_sys ( clk_vid ),
.SPI_SCK ( SPI_SCK ),
.SPI_SS3 ( SPI_SS3 ),
.SPI_DI ( SPI_DI ),
.R ( blankn ? r : 0 ),
.G ( blankn ? g : 0 ),
.B ( blankn ? b : 0 ),
.HSync ( hs ),
.VSync ( vs ),
.VGA_R ( VGA_R ),
.VGA_G ( VGA_G ),
.VGA_B ( VGA_B ),
.VGA_VS ( VGA_VS ),
.VGA_HS ( VGA_HS ),
.scandoubler_disable( scandoublerD ),
.scanlines ( scanlines ),
.ypbpr ( ypbpr ),
.no_csync ( no_csync ),
.ce_divider ( 1'b0 ),
.blend ( blend )
);
dac #(
.C_bits(12))
dac(
.clk_i(clk_vid),
.res_n_i(1'b1),
.dac_i(audio),
.dac_o(AUDIO_L)
);
wire m_up, m_down, m_left, m_right, m_fireA, m_fireB, m_fireC, m_fireD, m_fireE, m_fireF;
wire m_up2, m_down2, m_left2, m_right2, m_fire2A, m_fire2B, m_fire2C, m_fire2D, m_fire2E, m_fire2F;
wire m_tilt, m_coin1, m_coin2, m_coin3, m_coin4, m_one_player, m_two_players, m_three_players, m_four_players;
arcade_inputs inputs (
.clk ( clk_vid ),
.key_strobe ( key_strobe ),
.key_pressed ( key_pressed ),
.key_code ( key_code ),
.joystick_0 ( joystick_0 ),
.joystick_1 ( joystick_1 ),
.joyswap ( 1'b0 ),
.oneplayer ( 1'b0 ),
.controls ( {m_tilt, m_coin4, m_coin3, m_coin2, m_coin1, m_four_players, m_three_players, m_two_players, m_one_player} ),
.player1 ( {m_fireF, m_fireE, m_fireD, m_fireC, m_fireB, m_fireA, m_up, m_down, m_left, m_right} ),
.player2 ( {m_fire2F, m_fire2E, m_fire2D, m_fire2C, m_fire2B, m_fire2A, m_up2, m_down2, m_left2, m_right2} )
);
endmodule

View File

@@ -0,0 +1,146 @@
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
use ieee.numeric_std.all;
library work;
use work.pace_pkg.all;
use work.video_controller_pkg.all;
use work.project_pkg.all;
use work.platform_pkg.all;
use work.target_pkg.all;
entity mpatrol_top is
port(
clk_sys : in std_logic;--6
clk_vid : in std_logic;--24
clk_aud : in std_logic;-- 3.58/4
reset : in std_logic;
dn_addr : in std_logic_vector(15 downto 0);
dn_data : in std_logic_vector(7 downto 0);
dn_wr : in std_logic;
AUDIO : out std_logic_vector(11 downto 0);
IN0 : in std_logic_vector(7 downto 0);
IN1 : in std_logic_vector(7 downto 0);
IN2 : in std_logic_vector(7 downto 0);
DIP1 : in std_logic_vector(7 downto 0);
DIP2 : in std_logic_vector(7 downto 0);
VBLANK : out std_logic;
HBLANK : out std_logic;
VSYNC : out std_logic;
HSYNC : out std_logic;
R : out std_logic_vector(3 downto 0);
G : out std_logic_vector(3 downto 0);
B : out std_logic_vector(3 downto 0);
PAL : in std_logic--;
-- rst_aud : out std_logic
);
end mpatrol_top;
architecture SYN of mpatrol_top is
signal init : std_logic := '1';
signal clkrst_i : from_CLKRST_t;
signal buttons_i : from_BUTTONS_t;
signal switches_i : from_SWITCHES_t;
signal leds_o : to_LEDS_t;
signal inputs_i : from_INPUTS_t;
signal video_i : from_VIDEO_t;
signal video_o : to_VIDEO_t;
signal project_i : from_PROJECT_IO_t;
signal project_o : to_PROJECT_IO_t;
signal platform_i : from_PLATFORM_IO_t;
signal platform_o : to_PLATFORM_IO_t;
signal target_i : from_TARGET_IO_t;
signal target_o : to_TARGET_IO_t;
signal sound_data : std_logic_vector(7 downto 0);
signal rst_audD : std_logic;
signal rst_aud : std_logic;
begin
clkrst_i.clk(0) <= clk_sys;
clkrst_i.clk(1) <= clk_sys;
-- clkrst_i.arst <= reset;
-- clkrst_i.arst_n <= not clkrst_i.arst;
process (clk_sys)
variable count : std_logic_vector (11 downto 0) := (others => '0');
begin
if rising_edge(clk_sys) then
if count = X"FFF" then
init <= '0';
else
count := count + 1;
init <= '1';
end if;
end if;
end process;
process (clk_sys) begin
if rising_edge(clk_sys) then
clkrst_i.arst <= init or reset;
clkrst_i.arst_n <= not clkrst_i.arst;
end if;
end process;
process (clk_aud) begin
if rising_edge(clk_aud) then
rst_audD <= clkrst_i.arst;
rst_aud <= rst_audD;
end if;
end process;
GEN_RESETS : for i in 0 to 3 generate
process (clkrst_i)
variable rst_r : std_logic_vector(2 downto 0) := (others => '0');
begin
if clkrst_i.arst = '1' then
rst_r := (others => '1');
elsif rising_edge(clkrst_i.clk(i)) then
rst_r := rst_r(rst_r'left-1 downto 0) & '0';
end if;
clkrst_i.rst(i) <= rst_r(rst_r'left);
end process;
end generate GEN_RESETS;
video_i.clk <= clkrst_i.clk(1); -- by convention
video_i.clk_ena <= '1';
video_i.reset <= clkrst_i.rst(1);
R <= video_o.rgb.r(9 downto 6);
G <= video_o.rgb.g(9 downto 6);
B <= video_o.rgb.b(9 downto 6);
HSYNC <= video_o.hsync;
VSYNC <= video_o.vsync;
HBLANK <= video_o.hblank;
VBLANK <= video_o.vblank;
pace_inst : entity work.pace
port map (
clkrst_i => clkrst_i,
palmode => PAL,
buttons_i => buttons_i,
switches_i => (others => '1'),
IN0 => IN0,
IN1 => IN1,
IN2 => IN2,
DIP1 => DIP1,
DIP2 => DIP2,
leds_o => open,
inputs_i => inputs_i,
video_i => video_i,
video_o => video_o,
sound_data_o => sound_data
);
moon_patrol_sound_board : entity work.moon_patrol_sound_board
port map(
clock_E => clk_aud,
areset => rst_aud,
select_sound => sound_data,
audio_out => AUDIO
);
end SYN;

View File

@@ -16,7 +16,11 @@ entity PACE is
-- clocks and resets
clkrst_i : in from_CLKRST_t;
palmode : in std_logic;
IN0 : in std_logic_vector(7 downto 0);
IN1 : in std_logic_vector(7 downto 0);
IN2 : in std_logic_vector(7 downto 0);
DIP1 : in std_logic_vector(7 downto 0);
DIP2 : in std_logic_vector(7 downto 0);
-- misc I/O
buttons_i : in from_BUTTONS_t;
switches_i : in from_SWITCHES_t;
@@ -31,11 +35,6 @@ entity PACE is
sound_data_o : out std_logic_vector(7 downto 0)
-- custom i/o
-- project_i : in from_PROJECT_IO_t;
-- project_o : out to_PROJECT_IO_t;
-- platform_i : in from_PLATFORM_IO_t;
-- platform_o : out to_PLATFORM_IO_t
);
end entity PACE;
@@ -62,24 +61,6 @@ architecture SYN of PACE is
begin
inputs_inst : entity work.inputs
generic map
(
NUM_DIPS => PACE_NUM_SWITCHES,
NUM_INPUTS => 6,
CLK_1US_DIV => CLK_1US_COUNTS
)
port map
(
clk => clkrst_i.clk(0),
reset => clkrst_i.rst(0),
ps2clk => inputs_i.ps2_kclk,
ps2data => inputs_i.ps2_kdat,
jamma => inputs_i.jamma_n,
dips => switches_i,
inputs => mapped_inputs
);
platform_inst : entity work.platform
generic map
@@ -92,29 +73,33 @@ begin
clkrst_i => clkrst_i,
-- misc inputs and outputs
buttons_i => buttons_i,
switches_i => switches_i,
leds_o => leds_o,
buttons_i => buttons_i,
switches_i => switches_i,
leds_o => leds_o,
-- controller inputs
inputs_i => mapped_inputs,
inputs_i => mapped_inputs,
IN0 => IN0,
IN1 => IN1,
IN2 => IN2,
DIP1 => DIP1,
DIP2 => DIP2,
-- graphics
bitmap_i => from_bitmap_ctl,
bitmap_o => to_bitmap_ctl,
bitmap_i => from_bitmap_ctl,
bitmap_o => to_bitmap_ctl,
tilemap_i => from_tilemap_ctl,
tilemap_o => to_tilemap_ctl,
tilemap_i => from_tilemap_ctl,
tilemap_o => to_tilemap_ctl,
sprite_reg_o => to_sprite_reg,
sprite_i => from_sprite_ctl,
sprite_o => to_sprite_ctl,
spr0_hit => spr0_hit,
sprite_reg_o => to_sprite_reg,
sprite_i => from_sprite_ctl,
sprite_o => to_sprite_ctl,
spr0_hit => spr0_hit,
graphics_i => from_graphics,
graphics_o => to_graphics,
graphics_i => from_graphics,
graphics_o => to_graphics,
sound_data_o => sound_data_o
sound_data_o => sound_data_o
);
graphics_inst : entity work.Graphics

View File

@@ -28,7 +28,11 @@ entity platform is
-- controller inputs
inputs_i : in from_MAPPED_INPUTS_t(0 to NUM_INPUT_BYTES-1);
-- graphics
IN0 : in std_logic_vector(7 downto 0);
IN1 : in std_logic_vector(7 downto 0);
IN2 : in std_logic_vector(7 downto 0);
DIP1 : in std_logic_vector(7 downto 0);
DIP2 : in std_logic_vector(7 downto 0);
bitmap_i : in from_BITMAP_CTL_a(1 to 3);
bitmap_o : out to_BITMAP_CTL_a(1 to 3);
@@ -90,16 +94,25 @@ architecture SYN of platform is
signal sprite_cs : std_logic;
-- misc signals
signal in_cs : std_logic;
signal in_d_o : std_logic_vector(7 downto 0);
signal in_cs : std_logic;
signal in_d_o : std_logic_vector(7 downto 0);
signal prot_cs : std_logic;
signal prot_d_o : std_logic_vector(7 downto 0);
signal prot_d_o : std_logic_vector(7 downto 0);
-- other signals
signal rst_platform : std_logic;
signal pause : std_logic;
signal rot_en : std_logic;
signal rst_platform : std_logic;
signal pause : std_logic;
signal rot_en : std_logic;
signal vblank_int : std_logic;
type rom_d_a is array(0 to 4) of std_logic_vector(7 downto 0);
signal rom_d : rom_d_a;
type gfx_rom_d_a is array(0 to 1) of std_logic_vector(7 downto 0);
signal chr_rom_d : gfx_rom_d_a;
signal spr_rom_left : gfx_rom_d_a;
signal spr_rom_right : gfx_rom_d_a;
begin
-- handle special keys
@@ -303,12 +316,7 @@ begin
nmi => '0'
);
end block BLK_CPU;
BLK_INTERRUPTS : block
signal vblank_int : std_logic;
begin
process (clk_sys, rst_sys)
variable vblank_r : std_logic_vector(3 downto 0);
@@ -338,126 +346,119 @@ begin
-- generate INT
cpu_irq <= vblank_int;
end block BLK_INTERRUPTS;
BLK_INPUTS : block
begin
in_d_o <= inputs_i(0).d when cpu_a(2 downto 0) = "000" else
inputs_i(1).d when cpu_a(2 downto 0) = "001" else
inputs_i(2).d when cpu_a(2 downto 0) = "010" else
inputs_i(3).d when cpu_a(2 downto 0) = "011" else
inputs_i(4).d when cpu_a(2 downto 0) = "100" else
in_d_o <= IN0 when cpu_a(2 downto 0) = "000" else
IN1 when cpu_a(2 downto 0) = "001" else
IN2 when cpu_a(2 downto 0) = "010" else
DIP1 when cpu_a(2 downto 0) = "011" else
DIP2 when cpu_a(2 downto 0) = "100" else
X"FF";
end block BLK_INPUTS;
BLK_CPU_ROMS : block
type rom_d_a is array(0 to 4) of std_logic_vector(7 downto 0);
signal rom_d : rom_d_a;
begin
rom_d_o <= rom_d(0) when cpu_a(M52_ROM_WIDTHAD+1 downto M52_ROM_WIDTHAD) = "00" else
rom_d(1) when cpu_a(M52_ROM_WIDTHAD+1 downto M52_ROM_WIDTHAD) = "01" else
rom_d(2) when cpu_a(M52_ROM_WIDTHAD+1 downto M52_ROM_WIDTHAD) = "10" else
rom_d_o <= rom_d(0) when cpu_a(13 downto 12) = "00" else
rom_d(1) when cpu_a(13 downto 12) = "01" else
rom_d(2) when cpu_a(13 downto 12) = "10" else
rom_d(3);
GEN_CPU_ROMS : for i in M52_ROM'range generate
rom_inst : entity work.sprom
generic map
(
init_file => PLATFORM_VARIANT_SRC_DIR & "roms/" &
M52_ROM(i) & ".hex",
widthad_a => M52_ROM_WIDTHAD
)
port map
(
clock => clk_sys,
address => cpu_a(M52_ROM_WIDTHAD-1 downto 0),
q => rom_d(i)
);
end generate GEN_CPU_ROMS;
end block BLK_CPU_ROMS;
BLK_GFX_ROMS : block
type gfx_rom_d_a is array(0 to 1) of std_logic_vector(7 downto 0);
signal chr_rom_d : gfx_rom_d_a;
signal spr_rom_left : gfx_rom_d_a;
signal spr_rom_right : gfx_rom_d_a;
begin
GEN_CHAR_ROMS : for i in M52_CHAR_ROM'range generate
char_rom_inst : entity work.sprom
generic map
(
init_file => PLATFORM_VARIANT_SRC_DIR & "roms/" &
M52_CHAR_ROM(i) & ".hex",
widthad_a => 12
)
port map
(
clock => clk_video,
address => tilemap_i(1).tile_a(11 downto 0),
q => chr_rom_d(i)
);
end generate GEN_CHAR_ROMS;
rom1 : entity work.mpa_13m
port map(
clk => clk_sys,
addr => cpu_a(11 downto 0),
data => rom_d(0)
);
tilemap_o(1).tile_d(15 downto 0) <= chr_rom_d(0) & chr_rom_d(1);
rom2 : entity work.mpa_23l
port map(
clk => clk_sys,
addr => cpu_a(11 downto 0),
data => rom_d(1)
);
GEN_SPRITE_ROMS : for i in M52_SPRITE_ROM'range generate
sprite_rom_inst : entity work.dprom_2r
generic map
(
init_file => PLATFORM_VARIANT_SRC_DIR & "roms/" &
M52_SPRITE_ROM(i) & ".hex",
widthad_a => 12,
widthad_b => 12
)
port map
(
clock => clk_video,
address_a(11 downto 5) => sprite_i.a(11 downto 5),
address_a(4) => '0',
address_a(3 downto 0) => sprite_i.a(3 downto 0),
q_a => spr_rom_left(i),
address_b(11 downto 5) => sprite_i.a(11 downto 5),
address_b(4) => '1',
address_b(3 downto 0) => sprite_i.a(3 downto 0),
q_b => spr_rom_right(i)
);
end generate GEN_SPRITE_ROMS;
rom3 : entity work.mpa_33k
port map(
clk => clk_sys,
addr => cpu_a(11 downto 0),
data => rom_d(2)
);
rom4 : entity work.mpa_43j
port map(
clk => clk_sys,
addr => cpu_a(11 downto 0),
data => rom_d(3)
);
--Char
rom5 : entity work.mpe_43f
port map(
clk => clk_video,
addr => tilemap_i(1).tile_a(11 downto 0),
data => chr_rom_d(1)
);
rom6 : entity work.mpe_53e
port map(
clk => clk_video,
addr => tilemap_i(1).tile_a(11 downto 0),
data => chr_rom_d(0)
);
tilemap_o(1).tile_d(15 downto 0) <= chr_rom_d(0) & chr_rom_d(1);
rom71 : entity work.mpb_23m
port map(
clk => clk_video,
addr => sprite_i.a(11 downto 5) & '0' & sprite_i.a(3 downto 0),
data => spr_rom_left(0)
);
rom72 : entity work.mpb_23m
port map(
clk => clk_video,
addr => sprite_i.a(11 downto 5) & '1' & sprite_i.a(3 downto 0),
data => spr_rom_right(0)
);
rom81 : entity work.mpb_13n
port map(
clk => clk_video,
addr => sprite_i.a(11 downto 5) & '0' & sprite_i.a(3 downto 0),
data => spr_rom_left(1)
);
rom82 : entity work.mpb_13n
port map(
clk => clk_video,
addr => sprite_i.a(11 downto 5) & '1' & sprite_i.a(3 downto 0),
data => spr_rom_right(1)
);
sprite_o.d(sprite_o.d'left downto 32) <= (others => '0');
sprite_o.d(31 downto 0) <= spr_rom_left(0) & spr_rom_right(0) &
spr_rom_left(1) & spr_rom_right(1);
GEN_BG_ROMS : for i in M52_BG_ROM'range generate
bg_rom_inst : entity work.sprom
generic map
(
init_file => PLATFORM_VARIANT_SRC_DIR & "roms/" &
M52_BG_ROM(i) & ".hex",
widthad_a => 12
)
port map
(
clock => clk_video,
address => bitmap_i(1+i).a(11 downto 0),
q => bitmap_o(1+i).d(7 downto 0)
);
bitmap_o(1+i).d(15 downto 8) <= (others => '0');
end generate GEN_BG_ROMS;
end block BLK_GFX_ROMS;
rom9 : entity work.mpe_13l
port map(
clk => clk_video,
addr => bitmap_i(3).a(11 downto 0),
data => bitmap_o(3).d(7 downto 0)
);
-- wren_a *MUST* be GND for CYCLONEII_SAFE_WRITE=VERIFIED_SAFE
vram_inst : entity work.dpram
rom10 : entity work.mpe_23k
port map(
clk => clk_video,
addr => bitmap_i(2).a(11 downto 0),
data => bitmap_o(2).d(7 downto 0)
);
rom11 : entity work.mpe_33h
port map(
clk => clk_video,
addr => bitmap_i(1).a(11 downto 0),
data => bitmap_o(1).d(7 downto 0)
);
vram_inst : entity work.dpram
generic map
(
init_file => "",
@@ -479,8 +480,7 @@ begin
);
tilemap_o(1).map_d(15 downto 8) <= (others => '0');
-- wren_a *MUST* be GND for CYCLONEII_SAFE_WRITE=VERIFIED_SAFE
cram_inst : entity work.dpram
cram_inst : entity work.dpram
generic map
(
init_file => "",
@@ -503,7 +503,7 @@ begin
tilemap_o(1).attr_d(15 downto 8) <= (others => '0');
wram_inst : entity work.spram
wram_inst : entity work.spram
generic map
(
widthad_a => 11

View File

@@ -17,23 +17,23 @@ package platform_variant_pkg is
-- Platform-specific constants (optional)
--
constant PLATFORM_VARIANT : string := "mpatrol";
-- constant PLATFORM_VARIANT : string := "mpatrol";
constant PLATFORM_VARIANT_SRC_DIR : string := "";
type rom_a is array (natural range <>) of string;
constant M52_ROM : rom_a(0 to 3) :=
(
0 => "mpa-1.3m",
1 => "mpa-2.3l",
2 => "mpa-3.3k",
3 => "mpa-4.3j"
);
constant M52_ROM_WIDTHAD : natural := 12;
-- constant M52_ROM : rom_a(0 to 3) :=
-- (
-- 0 => "mpa-1.3m",
-- 1 => "mpa-2.3l",
-- 2 => "mpa-3.3k",
-- 3 => "mpa-4.3j"
-- );
-- constant M52_ROM_WIDTHAD : natural := 12;
constant M52_CHAR_ROM : rom_a(0 to 1) :=
(
0 => "mpe-5.3e",
1 => "mpe-4.3f"
);
-- constant M52_CHAR_ROM : rom_a(0 to 1) :=
-- (
-- 0 => "mpe-5.3e",
-- 1 => "mpe-4.3f"
-- );
constant M52_SPRITE_ROM : rom_a(0 to 1) :=
(
@@ -41,12 +41,12 @@ package platform_variant_pkg is
1 => "mpb-1.3n"
);
constant M52_BG_ROM : rom_a(0 to 2) :=
(
2 => "mpe-1.3l", -- mountains
1 => "mpe-2.3k", -- hills
0 => "mpe-3.3h" -- cityscape
);
-- constant M52_BG_ROM : rom_a(0 to 2) :=
-- (
-- 2 => "mpe-1.3l", -- mountains
-- 1 => "mpe-2.3k", -- hills
-- 0 => "mpe-3.3h" -- cityscape
-- );
constant tile_pal : pal_a(0 to 127) :=
(

View File

@@ -4,7 +4,7 @@
-- MODULE: altpll
-- ============================================================
-- File Name: Clock.vhd
-- File Name: pll_mist.vhd
-- Megafunction Name(s):
-- altpll
--
@@ -14,7 +14,7 @@
-- ************************************************************
-- THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
--
-- 13.1.4 Build 182 03/12/2014 Patches 4.26 SJ Web Edition
-- 13.1.4 Build 182 03/12/2014 SJ Web Edition
-- ************************************************************
@@ -39,27 +39,30 @@ USE ieee.std_logic_1164.all;
LIBRARY altera_mf;
USE altera_mf.all;
ENTITY Clock IS
ENTITY pll_mist IS
PORT
(
areset : IN STD_LOGIC := '0';
inclk0 : IN STD_LOGIC := '0';
c0 : OUT STD_LOGIC ;
c1 : OUT STD_LOGIC ;
c2 : OUT STD_LOGIC
c2 : OUT STD_LOGIC ;
locked : OUT STD_LOGIC
);
END Clock;
END pll_mist;
ARCHITECTURE SYN OF clock IS
ARCHITECTURE SYN OF pll_mist IS
SIGNAL sub_wire0 : STD_LOGIC_VECTOR (4 DOWNTO 0);
SIGNAL sub_wire1 : STD_LOGIC ;
SIGNAL sub_wire2 : STD_LOGIC ;
SIGNAL sub_wire3 : STD_LOGIC ;
SIGNAL sub_wire4 : STD_LOGIC ;
SIGNAL sub_wire5 : STD_LOGIC_VECTOR (1 DOWNTO 0);
SIGNAL sub_wire6_bv : BIT_VECTOR (0 DOWNTO 0);
SIGNAL sub_wire6 : STD_LOGIC_VECTOR (0 DOWNTO 0);
SIGNAL sub_wire5 : STD_LOGIC ;
SIGNAL sub_wire6 : STD_LOGIC_VECTOR (1 DOWNTO 0);
SIGNAL sub_wire7_bv : BIT_VECTOR (0 DOWNTO 0);
SIGNAL sub_wire7 : STD_LOGIC_VECTOR (0 DOWNTO 0);
@@ -126,50 +129,54 @@ ARCHITECTURE SYN OF clock IS
port_extclk1 : STRING;
port_extclk2 : STRING;
port_extclk3 : STRING;
self_reset_on_loss_lock : STRING;
width_clock : NATURAL
);
PORT (
areset : IN STD_LOGIC ;
clk : OUT STD_LOGIC_VECTOR (4 DOWNTO 0);
inclk : IN STD_LOGIC_VECTOR (1 DOWNTO 0)
inclk : IN STD_LOGIC_VECTOR (1 DOWNTO 0);
locked : OUT STD_LOGIC
);
END COMPONENT;
BEGIN
sub_wire6_bv(0 DOWNTO 0) <= "0";
sub_wire6 <= To_stdlogicvector(sub_wire6_bv);
sub_wire3 <= sub_wire0(2);
sub_wire2 <= sub_wire0(0);
sub_wire7_bv(0 DOWNTO 0) <= "0";
sub_wire7 <= To_stdlogicvector(sub_wire7_bv);
sub_wire4 <= sub_wire0(2);
sub_wire3 <= sub_wire0(0);
sub_wire1 <= sub_wire0(1);
c1 <= sub_wire1;
c0 <= sub_wire2;
c2 <= sub_wire3;
sub_wire4 <= inclk0;
sub_wire5 <= sub_wire6(0 DOWNTO 0) & sub_wire4;
locked <= sub_wire2;
c0 <= sub_wire3;
c2 <= sub_wire4;
sub_wire5 <= inclk0;
sub_wire6 <= sub_wire7(0 DOWNTO 0) & sub_wire5;
altpll_component : altpll
GENERIC MAP (
bandwidth_type => "AUTO",
clk0_divide_by => 9,
clk0_duty_cycle => 50,
clk0_multiply_by => 2,
clk0_multiply_by => 8,
clk0_phase_shift => "0",
clk1_divide_by => 9,
clk1_divide_by => 1075,
clk1_duty_cycle => 50,
clk1_multiply_by => 8,
clk1_multiply_by => 239,
clk1_phase_shift => "0",
clk2_divide_by => 9,
clk2_divide_by => 603,
clk2_duty_cycle => 50,
clk2_multiply_by => 8,
clk2_multiply_by => 20,
clk2_phase_shift => "0",
compensate_clock => "CLK0",
inclk0_input_frequency => 37037,
intended_device_family => "Cyclone III",
lpm_hint => "CBX_MODULE_PREFIX=Clock",
lpm_hint => "CBX_MODULE_PREFIX=pll_mist",
lpm_type => "altpll",
operation_mode => "NORMAL",
pll_type => "AUTO",
port_activeclock => "PORT_UNUSED",
port_areset => "PORT_UNUSED",
port_areset => "PORT_USED",
port_clkbad0 => "PORT_UNUSED",
port_clkbad1 => "PORT_UNUSED",
port_clkloss => "PORT_UNUSED",
@@ -178,7 +185,7 @@ BEGIN
port_fbin => "PORT_UNUSED",
port_inclk0 => "PORT_USED",
port_inclk1 => "PORT_UNUSED",
port_locked => "PORT_UNUSED",
port_locked => "PORT_USED",
port_pfdena => "PORT_UNUSED",
port_phasecounterselect => "PORT_UNUSED",
port_phasedone => "PORT_UNUSED",
@@ -209,11 +216,14 @@ BEGIN
port_extclk1 => "PORT_UNUSED",
port_extclk2 => "PORT_UNUSED",
port_extclk3 => "PORT_UNUSED",
self_reset_on_loss_lock => "OFF",
width_clock => 5
)
PORT MAP (
inclk => sub_wire5,
clk => sub_wire0
areset => areset,
inclk => sub_wire6,
clk => sub_wire0,
locked => sub_wire2
);
@@ -240,14 +250,14 @@ END SYN;
-- Retrieval info: PRIVATE: CUR_FBIN_CLK STRING "c0"
-- Retrieval info: PRIVATE: DEVICE_SPEED_GRADE STRING "8"
-- Retrieval info: PRIVATE: DIV_FACTOR0 NUMERIC "9"
-- Retrieval info: PRIVATE: DIV_FACTOR1 NUMERIC "9"
-- Retrieval info: PRIVATE: DIV_FACTOR2 NUMERIC "20"
-- Retrieval info: PRIVATE: DIV_FACTOR1 NUMERIC "1075"
-- Retrieval info: PRIVATE: DIV_FACTOR2 NUMERIC "603"
-- Retrieval info: PRIVATE: DUTY_CYCLE0 STRING "50.00000000"
-- Retrieval info: PRIVATE: DUTY_CYCLE1 STRING "50.00000000"
-- Retrieval info: PRIVATE: DUTY_CYCLE2 STRING "50.00000000"
-- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE0 STRING "6.000000"
-- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE1 STRING "24.000000"
-- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE2 STRING "24.000000"
-- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE0 STRING "24.000000"
-- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE1 STRING "6.002791"
-- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE2 STRING "0.895522"
-- Retrieval info: PRIVATE: EXPLICIT_SWITCHOVER_COUNTER STRING "0"
-- Retrieval info: PRIVATE: EXT_FEEDBACK_RADIO STRING "0"
-- Retrieval info: PRIVATE: GLOCKED_COUNTER_EDIT_CHANGED STRING "1"
@@ -263,27 +273,27 @@ END SYN;
-- Retrieval info: PRIVATE: INCLK1_FREQ_UNIT_COMBO STRING "MHz"
-- Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone III"
-- Retrieval info: PRIVATE: INT_FEEDBACK__MODE_RADIO STRING "1"
-- Retrieval info: PRIVATE: LOCKED_OUTPUT_CHECK STRING "0"
-- Retrieval info: PRIVATE: LOCKED_OUTPUT_CHECK STRING "1"
-- Retrieval info: PRIVATE: LONG_SCAN_RADIO STRING "1"
-- Retrieval info: PRIVATE: LVDS_MODE_DATA_RATE STRING "Not Available"
-- Retrieval info: PRIVATE: LVDS_MODE_DATA_RATE_DIRTY NUMERIC "0"
-- Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT0 STRING "deg"
-- Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT1 STRING "ps"
-- Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT2 STRING "deg"
-- Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT2 STRING "ps"
-- Retrieval info: PRIVATE: MIG_DEVICE_SPEED_GRADE STRING "Any"
-- Retrieval info: PRIVATE: MIRROR_CLK0 STRING "0"
-- Retrieval info: PRIVATE: MIRROR_CLK1 STRING "0"
-- Retrieval info: PRIVATE: MIRROR_CLK2 STRING "0"
-- Retrieval info: PRIVATE: MULT_FACTOR0 NUMERIC "2"
-- Retrieval info: PRIVATE: MULT_FACTOR1 NUMERIC "8"
-- Retrieval info: PRIVATE: MULT_FACTOR2 NUMERIC "37"
-- Retrieval info: PRIVATE: MULT_FACTOR0 NUMERIC "8"
-- Retrieval info: PRIVATE: MULT_FACTOR1 NUMERIC "239"
-- Retrieval info: PRIVATE: MULT_FACTOR2 NUMERIC "20"
-- Retrieval info: PRIVATE: NORMAL_MODE_RADIO STRING "1"
-- Retrieval info: PRIVATE: OUTPUT_FREQ0 STRING "6.00000000"
-- Retrieval info: PRIVATE: OUTPUT_FREQ1 STRING "24.00000000"
-- Retrieval info: PRIVATE: OUTPUT_FREQ2 STRING "24.00000000"
-- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE0 STRING "1"
-- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE1 STRING "1"
-- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE2 STRING "1"
-- Retrieval info: PRIVATE: OUTPUT_FREQ0 STRING "24.00000000"
-- Retrieval info: PRIVATE: OUTPUT_FREQ1 STRING "6.00000000"
-- Retrieval info: PRIVATE: OUTPUT_FREQ2 STRING "0.89500000"
-- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE0 STRING "0"
-- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE1 STRING "0"
-- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE2 STRING "0"
-- Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT0 STRING "MHz"
-- Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT1 STRING "MHz"
-- Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT2 STRING "MHz"
@@ -295,9 +305,9 @@ END SYN;
-- Retrieval info: PRIVATE: PHASE_SHIFT_STEP_ENABLED_CHECK STRING "0"
-- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT0 STRING "deg"
-- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT1 STRING "ps"
-- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT2 STRING "deg"
-- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT2 STRING "ps"
-- Retrieval info: PRIVATE: PLL_ADVANCED_PARAM_CHECK STRING "0"
-- Retrieval info: PRIVATE: PLL_ARESET_CHECK STRING "0"
-- Retrieval info: PRIVATE: PLL_ARESET_CHECK STRING "1"
-- Retrieval info: PRIVATE: PLL_AUTOPLL_CHECK NUMERIC "1"
-- Retrieval info: PRIVATE: PLL_ENHPLL_CHECK NUMERIC "0"
-- Retrieval info: PRIVATE: PLL_FASTPLL_CHECK NUMERIC "0"
@@ -306,7 +316,7 @@ END SYN;
-- Retrieval info: PRIVATE: PLL_PFDENA_CHECK STRING "0"
-- Retrieval info: PRIVATE: PLL_TARGET_HARCOPY_CHECK NUMERIC "0"
-- Retrieval info: PRIVATE: PRIMARY_CLK_COMBO STRING "inclk0"
-- Retrieval info: PRIVATE: RECONFIG_FILE STRING "Clock.mif"
-- Retrieval info: PRIVATE: RECONFIG_FILE STRING "pll_mist.mif"
-- Retrieval info: PRIVATE: SACN_INPUTS_CHECK STRING "0"
-- Retrieval info: PRIVATE: SCAN_FEATURE_ENABLED STRING "1"
-- Retrieval info: PRIVATE: SELF_RESET_LOCK_LOSS STRING "0"
@@ -335,15 +345,15 @@ END SYN;
-- Retrieval info: CONSTANT: BANDWIDTH_TYPE STRING "AUTO"
-- Retrieval info: CONSTANT: CLK0_DIVIDE_BY NUMERIC "9"
-- Retrieval info: CONSTANT: CLK0_DUTY_CYCLE NUMERIC "50"
-- Retrieval info: CONSTANT: CLK0_MULTIPLY_BY NUMERIC "2"
-- Retrieval info: CONSTANT: CLK0_MULTIPLY_BY NUMERIC "8"
-- Retrieval info: CONSTANT: CLK0_PHASE_SHIFT STRING "0"
-- Retrieval info: CONSTANT: CLK1_DIVIDE_BY NUMERIC "9"
-- Retrieval info: CONSTANT: CLK1_DIVIDE_BY NUMERIC "1075"
-- Retrieval info: CONSTANT: CLK1_DUTY_CYCLE NUMERIC "50"
-- Retrieval info: CONSTANT: CLK1_MULTIPLY_BY NUMERIC "8"
-- Retrieval info: CONSTANT: CLK1_MULTIPLY_BY NUMERIC "239"
-- Retrieval info: CONSTANT: CLK1_PHASE_SHIFT STRING "0"
-- Retrieval info: CONSTANT: CLK2_DIVIDE_BY NUMERIC "9"
-- Retrieval info: CONSTANT: CLK2_DIVIDE_BY NUMERIC "603"
-- Retrieval info: CONSTANT: CLK2_DUTY_CYCLE NUMERIC "50"
-- Retrieval info: CONSTANT: CLK2_MULTIPLY_BY NUMERIC "8"
-- Retrieval info: CONSTANT: CLK2_MULTIPLY_BY NUMERIC "20"
-- Retrieval info: CONSTANT: CLK2_PHASE_SHIFT STRING "0"
-- Retrieval info: CONSTANT: COMPENSATE_CLOCK STRING "CLK0"
-- Retrieval info: CONSTANT: INCLK0_INPUT_FREQUENCY NUMERIC "37037"
@@ -352,7 +362,7 @@ END SYN;
-- Retrieval info: CONSTANT: OPERATION_MODE STRING "NORMAL"
-- Retrieval info: CONSTANT: PLL_TYPE STRING "AUTO"
-- Retrieval info: CONSTANT: PORT_ACTIVECLOCK STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_ARESET STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_ARESET STRING "PORT_USED"
-- Retrieval info: CONSTANT: PORT_CLKBAD0 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_CLKBAD1 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_CLKLOSS STRING "PORT_UNUSED"
@@ -361,7 +371,7 @@ END SYN;
-- Retrieval info: CONSTANT: PORT_FBIN STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_INCLK0 STRING "PORT_USED"
-- Retrieval info: CONSTANT: PORT_INCLK1 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_LOCKED STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_LOCKED STRING "PORT_USED"
-- Retrieval info: CONSTANT: PORT_PFDENA STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_PHASECOUNTERSELECT STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_PHASEDONE STRING "PORT_UNUSED"
@@ -392,23 +402,28 @@ END SYN;
-- Retrieval info: CONSTANT: PORT_extclk1 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_extclk2 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_extclk3 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: SELF_RESET_ON_LOSS_LOCK STRING "OFF"
-- Retrieval info: CONSTANT: WIDTH_CLOCK NUMERIC "5"
-- Retrieval info: USED_PORT: @clk 0 0 5 0 OUTPUT_CLK_EXT VCC "@clk[4..0]"
-- Retrieval info: USED_PORT: @inclk 0 0 2 0 INPUT_CLK_EXT VCC "@inclk[1..0]"
-- Retrieval info: USED_PORT: areset 0 0 0 0 INPUT GND "areset"
-- Retrieval info: USED_PORT: c0 0 0 0 0 OUTPUT_CLK_EXT VCC "c0"
-- Retrieval info: USED_PORT: c1 0 0 0 0 OUTPUT_CLK_EXT VCC "c1"
-- Retrieval info: USED_PORT: c2 0 0 0 0 OUTPUT_CLK_EXT VCC "c2"
-- Retrieval info: USED_PORT: inclk0 0 0 0 0 INPUT_CLK_EXT GND "inclk0"
-- Retrieval info: USED_PORT: locked 0 0 0 0 OUTPUT GND "locked"
-- Retrieval info: CONNECT: @areset 0 0 0 0 areset 0 0 0 0
-- Retrieval info: CONNECT: @inclk 0 0 1 1 GND 0 0 0 0
-- Retrieval info: CONNECT: @inclk 0 0 1 0 inclk0 0 0 0 0
-- Retrieval info: CONNECT: c0 0 0 0 0 @clk 0 0 1 0
-- Retrieval info: CONNECT: c1 0 0 0 0 @clk 0 0 1 1
-- Retrieval info: CONNECT: c2 0 0 0 0 @clk 0 0 1 2
-- Retrieval info: GEN_FILE: TYPE_NORMAL Clock.vhd TRUE
-- Retrieval info: GEN_FILE: TYPE_NORMAL Clock.ppf TRUE
-- Retrieval info: GEN_FILE: TYPE_NORMAL Clock.inc FALSE
-- Retrieval info: GEN_FILE: TYPE_NORMAL Clock.cmp FALSE
-- Retrieval info: GEN_FILE: TYPE_NORMAL Clock.bsf FALSE
-- Retrieval info: GEN_FILE: TYPE_NORMAL Clock_inst.vhd FALSE
-- Retrieval info: CONNECT: locked 0 0 0 0 @locked 0 0 0 0
-- Retrieval info: GEN_FILE: TYPE_NORMAL pll_mist.vhd TRUE
-- Retrieval info: GEN_FILE: TYPE_NORMAL pll_mist.ppf TRUE
-- Retrieval info: GEN_FILE: TYPE_NORMAL pll_mist.inc FALSE
-- Retrieval info: GEN_FILE: TYPE_NORMAL pll_mist.cmp FALSE
-- Retrieval info: GEN_FILE: TYPE_NORMAL pll_mist.bsf FALSE
-- Retrieval info: GEN_FILE: TYPE_NORMAL pll_mist_inst.vhd FALSE
-- Retrieval info: LIB_FILE: altera_mf
-- Retrieval info: CBX_MODULE_PREFIX: ON

View File

@@ -1,7 +1,7 @@
library ieee;
use ieee.std_logic_1164.all,ieee.numeric_std.all;
entity moon_patrol_sound_prog is
entity mp_s11a is
port (
clk : in std_logic;
addr : in std_logic_vector(11 downto 0);
@@ -9,7 +9,7 @@ port (
);
end entity;
architecture prom of moon_patrol_sound_prog is
architecture prom of mp_s11a is
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
signal rom_data: rom := (
X"88",X"08",X"14",X"3F",X"8D",X"51",X"0C",X"24",X"E0",X"91",X"00",X"F9",X"3A",X"1A",X"80",X"C2",

View File

@@ -0,0 +1,278 @@
library ieee;
use ieee.std_logic_1164.all,ieee.numeric_std.all;
entity mpa_13m is
port (
clk : in std_logic;
addr : in std_logic_vector(11 downto 0);
data : out std_logic_vector(7 downto 0)
);
end entity;
architecture prom of mpa_13m is
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
signal rom_data: rom := (
X"F3",X"31",X"00",X"E8",X"ED",X"56",X"3A",X"04",X"D0",X"A7",X"F2",X"00",X"33",X"CD",X"F4",X"05",
X"CD",X"F2",X"06",X"CD",X"29",X"0D",X"C3",X"68",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"87",X"5F",X"16",X"00",X"19",X"5E",X"23",X"56",
X"EB",X"E9",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"D9",X"CD",X"6D",X"05",X"21",X"4E",X"E0",
X"34",X"7E",X"23",X"E6",X"0F",X"20",X"01",X"34",X"23",X"35",X"23",X"35",X"3A",X"04",X"D0",X"A7",
X"FA",X"93",X"00",X"21",X"4E",X"E0",X"34",X"01",X"03",X"00",X"21",X"4E",X"E0",X"35",X"10",X"FE",
X"0D",X"20",X"FB",X"D9",X"08",X"FB",X"FB",X"C9",X"FB",X"CD",X"8A",X"0B",X"3E",X"01",X"32",X"4D",
X"E0",X"32",X"0F",X"E5",X"3C",X"32",X"08",X"E5",X"C3",X"B7",X"0B",X"06",X"00",X"AF",X"32",X"4D",
X"E0",X"21",X"46",X"E0",X"70",X"FB",X"CD",X"45",X"07",X"CD",X"8A",X"0B",X"C3",X"B7",X"0B",X"06",
X"04",X"18",X"EA",X"CD",X"CB",X"05",X"3A",X"00",X"D0",X"2F",X"32",X"53",X"E0",X"CB",X"4F",X"28",
X"15",X"3A",X"04",X"D0",X"CB",X"67",X"20",X"0E",X"21",X"46",X"E0",X"CB",X"4E",X"20",X"07",X"3A",
X"00",X"D0",X"E6",X"01",X"20",X"F9",X"3A",X"04",X"D0",X"CB",X"5F",X"20",X"06",X"21",X"F3",X"E0",
X"34",X"CB",X"46",X"FD",X"E5",X"DD",X"E5",X"CD",X"0E",X"04",X"3A",X"41",X"E0",X"A7",X"20",X"05",
X"3E",X"02",X"32",X"48",X"E0",X"21",X"46",X"E0",X"46",X"CB",X"78",X"20",X"15",X"CB",X"48",X"20",
X"1B",X"3A",X"48",X"E0",X"A7",X"20",X"1D",X"CB",X"50",X"20",X"11",X"3A",X"47",X"E0",X"A7",X"C2",
X"8F",X"00",X"CB",X"40",X"28",X"06",X"CD",X"7A",X"04",X"CD",X"EC",X"01",X"DD",X"E1",X"FD",X"E1",
X"D9",X"08",X"FB",X"C9",X"36",X"02",X"31",X"00",X"E8",X"FB",X"CD",X"29",X"0D",X"CD",X"33",X"05",
X"28",X"FB",X"CD",X"38",X"0B",X"C3",X"B7",X"0B",X"31",X"00",X"E8",X"21",X"46",X"E0",X"35",X"FB",
X"F2",X"68",X"00",X"CD",X"96",X"0B",X"AF",X"32",X"A6",X"E1",X"21",X"15",X"E5",X"35",X"28",X"1B",
X"CD",X"D5",X"06",X"21",X"46",X"E0",X"CB",X"66",X"CA",X"B7",X"0B",X"CD",X"03",X"06",X"3A",X"15",
X"E5",X"A7",X"C2",X"B7",X"0B",X"CD",X"03",X"06",X"C3",X"B7",X"0B",X"3E",X"1B",X"CD",X"75",X"0D",
X"21",X"46",X"E0",X"CB",X"66",X"28",X"1F",X"21",X"ED",X"2A",X"CD",X"4E",X"03",X"3A",X"46",X"E0",
X"1F",X"1F",X"1F",X"E6",X"01",X"3C",X"CD",X"BD",X"03",X"CD",X"03",X"06",X"CD",X"E4",X"05",X"3A",
X"15",X"E5",X"A7",X"C2",X"B7",X"0B",X"21",X"02",X"2B",X"CD",X"4E",X"03",X"CD",X"1C",X"06",X"28",
X"03",X"CD",X"03",X"06",X"CD",X"E8",X"05",X"CD",X"29",X"0D",X"21",X"2A",X"2A",X"CD",X"00",X"03",
X"3E",X"11",X"A7",X"28",X"3D",X"3D",X"27",X"32",X"54",X"E0",X"11",X"33",X"82",X"0E",X"02",X"CD",
X"AE",X"03",X"3E",X"40",X"32",X"50",X"E0",X"3A",X"50",X"E0",X"A7",X"3A",X"54",X"E0",X"28",X"E2",
X"3A",X"48",X"E0",X"A7",X"20",X"0B",X"21",X"57",X"2C",X"CD",X"74",X"03",X"CD",X"27",X"05",X"18",
X"E6",X"CD",X"33",X"05",X"28",X"E1",X"CD",X"DA",X"01",X"CD",X"DA",X"01",X"CD",X"BF",X"0C",X"C3",
X"B7",X"0B",X"F3",X"AF",X"32",X"46",X"E0",X"C3",X"68",X"00",X"3A",X"40",X"E0",X"32",X"15",X"E5",
X"21",X"00",X"00",X"22",X"00",X"E5",X"22",X"02",X"E5",X"C3",X"03",X"06",X"DD",X"21",X"00",X"E3",
X"3E",X"20",X"32",X"E8",X"E0",X"DD",X"7E",X"00",X"3D",X"FA",X"00",X"02",X"21",X"0C",X"02",X"EF",
X"11",X"10",X"00",X"DD",X"19",X"21",X"E8",X"E0",X"35",X"20",X"EA",X"C9",X"11",X"13",X"31",X"13",
X"70",X"13",X"88",X"13",X"BC",X"13",X"C2",X"13",X"EB",X"13",X"21",X"14",X"09",X"18",X"E0",X"15",
X"FA",X"15",X"2D",X"16",X"2D",X"16",X"49",X"16",X"5D",X"16",X"8F",X"16",X"3D",X"19",X"57",X"19",
X"5E",X"19",X"D1",X"19",X"2F",X"1A",X"44",X"1A",X"92",X"1A",X"B9",X"1A",X"F0",X"1A",X"01",X"1B",
X"27",X"1B",X"33",X"14",X"E0",X"18",X"AA",X"1E",X"28",X"1F",X"AC",X"20",X"C4",X"20",X"AA",X"1E",
X"28",X"1F",X"00",X"20",X"1A",X"20",X"A4",X"1E",X"28",X"1F",X"4D",X"20",X"9C",X"20",X"23",X"1D",
X"F3",X"1D",X"51",X"1E",X"9B",X"1E",X"9B",X"1C",X"BC",X"1C",X"14",X"1E",X"29",X"1E",X"CD",X"DC",
X"0D",X"CD",X"0D",X"21",X"CD",X"3A",X"1B",X"CD",X"C7",X"1B",X"CD",X"A7",X"12",X"CD",X"E7",X"12",
X"CD",X"DC",X"0D",X"3A",X"CF",X"E1",X"21",X"D0",X"E1",X"BE",X"28",X"E2",X"5F",X"16",X"E6",X"DD",
X"21",X"00",X"00",X"DD",X"19",X"DD",X"4E",X"00",X"CB",X"21",X"20",X"11",X"21",X"CF",X"E1",X"BE",
X"20",X"03",X"C6",X"04",X"77",X"DD",X"E5",X"C1",X"79",X"C6",X"04",X"18",X"D9",X"06",X"00",X"DD",
X"70",X"00",X"DD",X"7E",X"01",X"21",X"A5",X"02",X"E5",X"21",X"D3",X"02",X"09",X"4E",X"23",X"66",
X"69",X"E9",X"21",X"D0",X"E1",X"6E",X"26",X"E6",X"71",X"23",X"77",X"23",X"73",X"23",X"72",X"2C",
X"7D",X"32",X"D0",X"E1",X"C9",X"22",X"06",X"FA",X"02",X"ED",X"02",X"22",X"03",X"2F",X"03",X"67",
X"03",X"61",X"03",X"37",X"03",X"A6",X"0D",X"01",X"12",X"18",X"12",X"00",X"00",X"3A",X"4E",X"E0",
X"DD",X"86",X"01",X"DD",X"77",X"01",X"DD",X"36",X"00",X"04",X"DD",X"6E",X"02",X"DD",X"66",X"03",
X"CD",X"DB",X"03",X"7E",X"06",X"12",X"FE",X"26",X"28",X"06",X"06",X"30",X"FE",X"27",X"20",X"0D",
X"23",X"78",X"32",X"50",X"E0",X"3A",X"50",X"E0",X"A7",X"20",X"FA",X"18",X"E6",X"CD",X"C9",X"03",
X"18",X"E1",X"3A",X"4E",X"E0",X"DD",X"BE",X"01",X"28",X"05",X"DD",X"36",X"00",X"04",X"C9",X"DD",
X"6E",X"02",X"DD",X"66",X"03",X"18",X"44",X"3A",X"50",X"E0",X"A7",X"20",X"0C",X"CD",X"2F",X"03",
X"DD",X"35",X"01",X"C8",X"3E",X"04",X"32",X"50",X"E0",X"DD",X"36",X"00",X"07",X"C9",X"CD",X"DB",
X"03",X"CD",X"C9",X"03",X"3E",X"03",X"32",X"50",X"E0",X"3A",X"50",X"E0",X"A7",X"20",X"FA",X"18",
X"F0",X"3A",X"50",X"E0",X"A7",X"20",X"08",X"3E",X"04",X"32",X"50",X"E0",X"CD",X"FA",X"02",X"DD",
X"36",X"00",X"08",X"C9",X"3A",X"4E",X"E0",X"CB",X"67",X"20",X"85",X"CD",X"DB",X"03",X"7E",X"23",
X"FE",X"21",X"C8",X"FE",X"23",X"28",X"09",X"FE",X"22",X"28",X"F0",X"AF",X"12",X"13",X"18",X"EE",
X"23",X"18",X"EB",X"7E",X"13",X"E6",X"0F",X"28",X"04",X"1B",X"CD",X"A6",X"03",X"2B",X"7E",X"1F",
X"1F",X"1F",X"1F",X"CD",X"A7",X"03",X"7E",X"E6",X"0F",X"C6",X"30",X"12",X"13",X"C9",X"FD",X"21",
X"00",X"04",X"FD",X"19",X"F5",X"1F",X"1F",X"1F",X"1F",X"CD",X"BD",X"03",X"F1",X"E6",X"0F",X"C6",
X"30",X"12",X"FD",X"71",X"00",X"13",X"FD",X"23",X"C9",X"7E",X"23",X"FE",X"21",X"28",X"33",X"FE",
X"23",X"28",X"12",X"FE",X"25",X"28",X"2D",X"FE",X"22",X"20",X"E6",X"5E",X"23",X"56",X"23",X"FD",
X"21",X"00",X"04",X"FD",X"19",X"4E",X"23",X"3A",X"F9",X"E0",X"A7",X"C8",X"79",X"A7",X"C8",X"FE",
X"03",X"38",X"0B",X"FE",X"06",X"28",X"03",X"FE",X"09",X"C0",X"C6",X"05",X"4F",X"C9",X"C6",X"0B",
X"4F",X"C9",X"E1",X"C9",X"46",X"23",X"7E",X"23",X"CD",X"C1",X"03",X"10",X"FB",X"C9",X"21",X"3E",
X"E0",X"11",X"41",X"E0",X"3A",X"00",X"D0",X"01",X"02",X"00",X"CD",X"34",X"04",X"21",X"3F",X"E0",
X"13",X"3A",X"02",X"D0",X"1F",X"F6",X"04",X"0E",X"20",X"CD",X"34",X"04",X"3A",X"4C",X"E0",X"B0",
X"32",X"01",X"D0",X"C9",X"1F",X"1F",X"1F",X"CB",X"16",X"1F",X"CB",X"16",X"7E",X"E6",X"55",X"FE",
X"54",X"28",X"0E",X"7E",X"E6",X"AA",X"C0",X"21",X"ED",X"E0",X"34",X"7E",X"E6",X"0F",X"C0",X"18",
X"19",X"78",X"B1",X"47",X"3E",X"13",X"CD",X"7D",X"0D",X"1A",X"FE",X"01",X"28",X"11",X"FE",X"08",
X"30",X"0B",X"21",X"47",X"E0",X"34",X"BE",X"C0",X"AF",X"77",X"3C",X"18",X"02",X"D6",X"08",X"21",
X"48",X"E0",X"86",X"27",X"30",X"02",X"3E",X"99",X"77",X"C9",X"3A",X"46",X"E0",X"07",X"30",X"5B",
X"11",X"01",X"D0",X"CB",X"67",X"28",X"07",X"3A",X"43",X"E0",X"3D",X"28",X"01",X"13",X"21",X"4A",
X"E0",X"7E",X"23",X"77",X"2B",X"1A",X"2F",X"77",X"2B",X"E6",X"03",X"77",X"C9",X"3A",X"0B",X"E5",
X"2A",X"F7",X"E0",X"BE",X"20",X"13",X"23",X"7E",X"54",X"5D",X"23",X"22",X"F7",X"E0",X"A7",X"28",
X"04",X"FE",X"FF",X"20",X"D9",X"32",X"E0",X"E1",X"C9",X"21",X"4A",X"E0",X"3A",X"E0",X"E1",X"A7",
X"28",X"13",X"3A",X"4E",X"E0",X"07",X"47",X"E6",X"01",X"3C",X"32",X"49",X"E0",X"78",X"E6",X"1E",
X"20",X"03",X"36",X"20",X"C9",X"7E",X"36",X"FF",X"23",X"77",X"C9",X"21",X"4D",X"E0",X"3A",X"4E",
X"E0",X"47",X"7E",X"A7",X"28",X"B7",X"FE",X"50",X"28",X"1D",X"CB",X"18",X"38",X"05",X"CB",X"18",
X"38",X"01",X"34",X"0E",X"02",X"21",X"49",X"E0",X"FE",X"18",X"38",X"01",X"0D",X"71",X"23",X"36",
X"00",X"FE",X"B0",X"D8",X"C3",X"7B",X"00",X"21",X"00",X"E3",X"7E",X"FE",X"04",X"20",X"0C",X"3A",
X"09",X"E3",X"17",X"D8",X"36",X"08",X"0E",X"0A",X"C3",X"C2",X"02",X"FE",X"08",X"C8",X"21",X"4A",
X"E0",X"36",X"20",X"23",X"36",X"00",X"C9",X"21",X"E2",X"2A",X"CD",X"00",X"03",X"3A",X"48",X"E0",
X"C3",X"AE",X"03",X"21",X"D1",X"2A",X"CD",X"74",X"03",X"CD",X"27",X"05",X"21",X"86",X"2A",X"3A",
X"48",X"E0",X"3D",X"28",X"03",X"21",X"97",X"2A",X"CD",X"00",X"03",X"3A",X"53",X"E0",X"E6",X"03",
X"C8",X"1F",X"3A",X"48",X"E0",X"06",X"80",X"38",X"06",X"D6",X"01",X"27",X"C8",X"06",X"90",X"D6",
X"01",X"27",X"F3",X"32",X"48",X"E0",X"78",X"32",X"46",X"E0",X"3C",X"FB",X"C9",X"21",X"00",X"E1",
X"11",X"40",X"C8",X"01",X"40",X"00",X"ED",X"B0",X"1E",X"20",X"0E",X"20",X"ED",X"B0",X"1E",X"C0",
X"0E",X"40",X"ED",X"B0",X"11",X"A0",X"C8",X"0E",X"20",X"ED",X"B0",X"0E",X"1C",X"7E",X"06",X"04",
X"ED",X"79",X"0C",X"10",X"FB",X"23",X"3A",X"C3",X"E1",X"A7",X"28",X"2B",X"7E",X"E6",X"7F",X"01",
X"40",X"00",X"CB",X"3F",X"30",X"01",X"04",X"20",X"F9",X"7E",X"07",X"E6",X"01",X"A8",X"5F",X"ED",
X"A3",X"3A",X"00",X"88",X"E6",X"07",X"BB",X"C2",X"C3",X"00",X"0E",X"80",X"ED",X"A3",X"0E",X"60",
X"ED",X"A3",X"0E",X"A0",X"ED",X"A3",X"7E",X"2F",X"D3",X"C0",X"C9",X"2A",X"DD",X"E1",X"7D",X"BC",
X"C8",X"26",X"E0",X"7E",X"32",X"00",X"D0",X"CB",X"FF",X"32",X"00",X"D0",X"7D",X"3C",X"E6",X"07",
X"32",X"DD",X"E1",X"C9",X"3E",X"40",X"18",X"02",X"3E",X"C0",X"32",X"50",X"E0",X"3A",X"50",X"E0",
X"A7",X"20",X"FA",X"C9",X"21",X"00",X"E0",X"01",X"00",X"07",X"36",X"00",X"23",X"0B",X"78",X"B1",
X"20",X"F8",X"C9",X"21",X"46",X"E0",X"7E",X"EE",X"08",X"77",X"21",X"00",X"E5",X"11",X"18",X"E5",
X"06",X"18",X"1A",X"4F",X"7E",X"12",X"71",X"23",X"13",X"10",X"F7",X"C9",X"3A",X"46",X"E0",X"CB",
X"5F",X"C9",X"4F",X"81",X"81",X"4F",X"06",X"00",X"21",X"0C",X"2A",X"09",X"3A",X"46",X"E0",X"A7",
X"F0",X"11",X"00",X"E5",X"06",X"03",X"A7",X"1A",X"8E",X"27",X"12",X"13",X"23",X"10",X"F8",X"CD",
X"AF",X"06",X"06",X"03",X"11",X"00",X"E5",X"21",X"08",X"E0",X"A7",X"1A",X"9E",X"23",X"13",X"10",
X"FA",X"38",X"15",X"2A",X"00",X"E5",X"22",X"08",X"E0",X"3A",X"02",X"E5",X"32",X"0A",X"E0",X"3A",
X"0E",X"E5",X"32",X"0B",X"E0",X"CD",X"85",X"06",X"11",X"84",X"80",X"CD",X"1C",X"06",X"28",X"03",
X"11",X"A4",X"80",X"21",X"02",X"E5",X"0E",X"01",X"CD",X"E7",X"03",X"06",X"03",X"7E",X"CD",X"AE",
X"03",X"2B",X"10",X"F9",X"C9",X"21",X"0B",X"E0",X"7E",X"0E",X"09",X"FE",X"1B",X"38",X"04",X"D6",
X"1A",X"0E",X"06",X"C6",X"40",X"32",X"4A",X"80",X"3A",X"F9",X"E0",X"1F",X"79",X"30",X"02",X"C6",
X"05",X"32",X"4A",X"84",X"11",X"43",X"80",X"0E",X"09",X"CD",X"E7",X"03",X"2B",X"18",X"CC",X"2A",
X"01",X"E5",X"3A",X"45",X"E0",X"3D",X"F8",X"3D",X"28",X"01",X"24",X"CB",X"2C",X"25",X"3C",X"7C",
X"20",X"05",X"A7",X"28",X"02",X"3E",X"FE",X"21",X"03",X"E5",X"BE",X"C0",X"7E",X"FE",X"03",X"C8",
X"34",X"21",X"15",X"E5",X"34",X"3A",X"15",X"E5",X"3D",X"28",X"03",X"4F",X"3E",X"01",X"21",X"7C",
X"80",X"CD",X"EC",X"06",X"CD",X"EC",X"06",X"28",X"03",X"79",X"C6",X"30",X"77",X"23",X"A7",X"C8",
X"3C",X"C9",X"21",X"40",X"E0",X"3A",X"03",X"D0",X"47",X"3C",X"E6",X"03",X"20",X"02",X"3E",X"05",
X"77",X"23",X"78",X"0F",X"0F",X"47",X"E6",X"03",X"32",X"45",X"E0",X"3A",X"04",X"D0",X"CB",X"57",
X"78",X"28",X"1F",X"1F",X"1F",X"ED",X"44",X"E6",X"0F",X"CB",X"5F",X"28",X"01",X"3C",X"77",X"23",
X"77",X"3A",X"04",X"D0",X"2F",X"1F",X"47",X"E6",X"01",X"23",X"77",X"78",X"1F",X"E6",X"01",X"23",
X"77",X"C9",X"1F",X"1F",X"2F",X"47",X"3C",X"E6",X"03",X"77",X"78",X"1F",X"1F",X"E6",X"03",X"FE",
X"02",X"DE",X"F5",X"18",X"DA",X"CD",X"29",X"0D",X"21",X"97",X"2C",X"CD",X"00",X"03",X"CD",X"27",
X"05",X"21",X"57",X"2C",X"CD",X"4E",X"03",X"11",X"54",X"E0",X"01",X"20",X"00",X"3A",X"44",X"E0",
X"A7",X"20",X"34",X"CD",X"9F",X"07",X"CD",X"E8",X"07",X"7E",X"FE",X"32",X"20",X"20",X"3E",X"53",
X"32",X"5F",X"E0",X"32",X"68",X"E0",X"21",X"62",X"E0",X"7E",X"87",X"D6",X"30",X"FE",X"3A",X"38",
X"06",X"D6",X"0A",X"77",X"2B",X"3E",X"31",X"77",X"21",X"54",X"E0",X"CD",X"4E",X"03",X"3A",X"47",
X"E0",X"A7",X"20",X"FA",X"C3",X"E8",X"05",X"CD",X"D3",X"07",X"CD",X"DD",X"07",X"18",X"E9",X"21",
X"67",X"2C",X"ED",X"B0",X"21",X"57",X"E0",X"3A",X"41",X"E0",X"11",X"08",X"00",X"FE",X"08",X"38",
X"12",X"C6",X"28",X"77",X"19",X"36",X"53",X"23",X"23",X"23",X"36",X"31",X"11",X"06",X"00",X"19",
X"36",X"00",X"C9",X"3D",X"C8",X"11",X"0B",X"00",X"19",X"C6",X"31",X"77",X"11",X"06",X"00",X"19",
X"36",X"53",X"C9",X"21",X"7D",X"2C",X"ED",X"B0",X"21",X"5B",X"E0",X"18",X"CA",X"CD",X"E8",X"07",
X"21",X"5B",X"E0",X"3A",X"42",X"E0",X"18",X"C2",X"21",X"54",X"E0",X"CD",X"4E",X"03",X"2A",X"54",
X"E0",X"11",X"40",X"00",X"19",X"22",X"54",X"E0",X"21",X"57",X"E0",X"34",X"C9",X"21",X"77",X"E2",
X"06",X"07",X"7E",X"A7",X"28",X"0B",X"2B",X"10",X"F9",X"C9",X"21",X"61",X"E2",X"06",X"12",X"18",
X"F1",X"34",X"7D",X"D6",X"50",X"87",X"87",X"DD",X"77",X"01",X"C9",X"DD",X"7E",X"07",X"E6",X"F8",
X"6F",X"26",X"20",X"29",X"29",X"DD",X"7E",X"03",X"1F",X"57",X"1F",X"1F",X"E6",X"1F",X"85",X"6F",
X"C9",X"3A",X"00",X"E3",X"FE",X"06",X"30",X"7A",X"3A",X"E2",X"E1",X"DD",X"96",X"0F",X"ED",X"44",
X"DD",X"77",X"03",X"FE",X"E0",X"38",X"6D",X"DD",X"4E",X"0B",X"0D",X"20",X"6B",X"FE",X"E8",X"30",
X"67",X"E1",X"DD",X"36",X"00",X"00",X"DD",X"7E",X"0D",X"37",X"17",X"D8",X"37",X"17",X"21",X"18",
X"2E",X"30",X"01",X"24",X"5F",X"16",X"00",X"19",X"46",X"DD",X"5E",X"01",X"16",X"E1",X"78",X"17",
X"30",X"10",X"06",X"01",X"17",X"38",X"27",X"7B",X"FE",X"60",X"38",X"06",X"62",X"D6",X"5E",X"6F",
X"36",X"00",X"FD",X"21",X"00",X"00",X"FD",X"19",X"7B",X"1F",X"1F",X"E6",X"3F",X"C6",X"50",X"6F",
X"26",X"E2",X"11",X"04",X"00",X"FD",X"72",X"02",X"FD",X"19",X"10",X"F9",X"72",X"C9",X"CD",X"82",
X"08",X"21",X"74",X"E1",X"01",X"00",X"18",X"71",X"23",X"10",X"FC",X"21",X"D1",X"E1",X"70",X"23",
X"70",X"C9",X"E1",X"C9",X"DD",X"36",X"0B",X"01",X"DD",X"7E",X"0D",X"07",X"D8",X"17",X"21",X"18",
X"2E",X"30",X"01",X"24",X"5F",X"16",X"00",X"19",X"DD",X"5E",X"01",X"16",X"E1",X"FD",X"21",X"00",
X"00",X"FD",X"19",X"56",X"23",X"5E",X"23",X"4E",X"06",X"00",X"21",X"F5",X"08",X"09",X"4E",X"23",
X"66",X"69",X"DD",X"4E",X"03",X"DD",X"7E",X"07",X"CD",X"ED",X"08",X"AF",X"E9",X"2F",X"47",X"3A",
X"3C",X"E0",X"80",X"47",X"C9",X"69",X"09",X"5A",X"09",X"CF",X"09",X"CD",X"09",X"F5",X"0A",X"43",
X"09",X"E2",X"0A",X"90",X"0A",X"56",X"0A",X"B7",X"0A",X"52",X"0A",X"9F",X"0A",X"C9",X"09",X"25",
X"0B",X"76",X"09",X"97",X"09",X"BA",X"09",X"1E",X"0A",X"44",X"0A",X"34",X"09",X"25",X"09",X"1D",
X"0B",X"B0",X"09",X"83",X"09",X"DD",X"34",X"0A",X"DD",X"7E",X"0A",X"E6",X"1F",X"FE",X"0B",X"38",
X"38",X"1C",X"18",X"35",X"3A",X"4E",X"E0",X"E6",X"03",X"28",X"01",X"14",X"CD",X"69",X"09",X"16",
X"3B",X"18",X"1B",X"FD",X"21",X"A4",X"E1",X"FD",X"77",X"0A",X"FD",X"77",X"0E",X"FD",X"77",X"12",
X"FD",X"77",X"16",X"CD",X"95",X"0A",X"3E",X"F8",X"80",X"47",X"CD",X"69",X"09",X"14",X"3E",X"10",
X"81",X"4F",X"21",X"04",X"00",X"EB",X"FD",X"19",X"EB",X"DD",X"7E",X"0B",X"A7",X"79",X"20",X"35",
X"C6",X"08",X"FE",X"20",X"38",X"35",X"FD",X"70",X"00",X"FD",X"73",X"01",X"FD",X"72",X"02",X"FD",
X"71",X"03",X"C9",X"DD",X"7E",X"08",X"1E",X"07",X"CB",X"3F",X"CB",X"13",X"C6",X"7A",X"57",X"78",
X"FE",X"80",X"D2",X"25",X"0B",X"18",X"DF",X"3E",X"08",X"80",X"47",X"FD",X"21",X"74",X"E1",X"79",
X"FE",X"F8",X"D0",X"18",X"D1",X"C6",X"08",X"FE",X"F0",X"38",X"CB",X"FD",X"36",X"02",X"00",X"C9",
X"3A",X"4E",X"E0",X"CB",X"57",X"28",X"BF",X"14",X"18",X"BC",X"3E",X"0E",X"80",X"60",X"47",X"2E",
X"01",X"CD",X"E4",X"09",X"11",X"08",X"76",X"18",X"11",X"3E",X"0A",X"18",X"02",X"3E",X"05",X"80",
X"60",X"47",X"2E",X"01",X"CD",X"E4",X"09",X"11",X"08",X"71",X"44",X"21",X"08",X"00",X"EB",X"FD",
X"19",X"EB",X"2E",X"00",X"CD",X"69",X"09",X"FD",X"70",X"04",X"2D",X"20",X"29",X"3E",X"40",X"AB",
X"FD",X"77",X"05",X"3E",X"08",X"FD",X"72",X"06",X"81",X"FD",X"77",X"07",X"C6",X"08",X"FE",X"F8",
X"30",X"0A",X"FE",X"20",X"D0",X"DD",X"7E",X"0B",X"A7",X"28",X"06",X"C9",X"DD",X"7E",X"0B",X"A7",
X"C8",X"FD",X"36",X"06",X"00",X"C9",X"14",X"FD",X"73",X"05",X"3E",X"10",X"18",X"D7",X"C5",X"D5",
X"21",X"02",X"08",X"09",X"44",X"4D",X"79",X"C6",X"08",X"FE",X"D0",X"30",X"11",X"CD",X"83",X"09",
X"11",X"04",X"00",X"FD",X"19",X"D1",X"C1",X"2E",X"00",X"FD",X"75",X"0A",X"18",X"A6",X"FD",X"36",
X"02",X"00",X"18",X"EC",X"32",X"A6",X"E1",X"32",X"AA",X"E1",X"32",X"AE",X"E1",X"CD",X"95",X"0A",
X"18",X"10",X"3E",X"18",X"18",X"02",X"3E",X"0D",X"FD",X"21",X"74",X"E1",X"80",X"47",X"3E",X"F8",
X"81",X"4F",X"AF",X"CD",X"6F",X"0A",X"EB",X"11",X"08",X"00",X"FD",X"19",X"EB",X"3E",X"10",X"81",
X"6F",X"FD",X"77",X"03",X"FD",X"77",X"07",X"FD",X"70",X"00",X"3E",X"F0",X"80",X"FD",X"77",X"04",
X"FD",X"73",X"01",X"FD",X"73",X"05",X"FD",X"72",X"02",X"14",X"14",X"FD",X"72",X"06",X"15",X"C9",
X"CD",X"95",X"0A",X"18",X"CD",X"3A",X"F9",X"E0",X"1F",X"D0",X"7B",X"F6",X"0C",X"5F",X"C9",X"FD",
X"21",X"74",X"E1",X"FD",X"36",X"0A",X"00",X"FD",X"36",X"0E",X"00",X"3E",X"18",X"80",X"47",X"AF",
X"CD",X"6F",X"0A",X"FD",X"72",X"06",X"C9",X"3E",X"18",X"80",X"47",X"FD",X"21",X"74",X"E1",X"3E",
X"F8",X"CD",X"CD",X"0A",X"21",X"0C",X"00",X"EB",X"FD",X"19",X"EB",X"3E",X"08",X"CD",X"6F",X"0A",
X"FD",X"75",X"0B",X"D6",X"10",X"FD",X"77",X"08",X"FD",X"77",X"09",X"7A",X"C6",X"03",X"FD",X"77",
X"0A",X"C9",X"FD",X"21",X"A4",X"E1",X"FD",X"77",X"06",X"CD",X"95",X"0A",X"21",X"08",X"F8",X"09",
X"44",X"4D",X"C3",X"76",X"09",X"FD",X"21",X"A4",X"E1",X"FD",X"36",X"1A",X"00",X"CD",X"95",X"0A",
X"3E",X"F8",X"CD",X"13",X"0B",X"3E",X"08",X"CD",X"0C",X"0B",X"3E",X"18",X"EB",X"11",X"08",X"00",
X"FD",X"19",X"EB",X"CD",X"6F",X"0A",X"7A",X"C6",X"02",X"FD",X"77",X"06",X"C9",X"3A",X"4E",X"E0",
X"CB",X"4F",X"28",X"01",X"1C",X"CD",X"76",X"09",X"DD",X"7E",X"01",X"FE",X"60",X"D8",X"EB",X"11",
X"A0",X"FF",X"FD",X"19",X"EB",X"C3",X"76",X"09",X"CD",X"8E",X"0C",X"CD",X"BF",X"0C",X"3A",X"04",
X"D0",X"CB",X"6F",X"C0",X"21",X"A9",X"2A",X"CD",X"00",X"03",X"3E",X"FF",X"32",X"51",X"E0",X"21",
X"53",X"E0",X"7E",X"4E",X"A9",X"A1",X"1F",X"38",X"08",X"3A",X"51",X"E0",X"47",X"79",X"10",X"F3",
X"C9",X"21",X"0E",X"E5",X"7E",X"3C",X"FE",X"34",X"30",X"E0",X"77",X"2A",X"16",X"E5",X"46",X"23",
X"7E",X"E6",X"7F",X"23",X"FE",X"06",X"20",X"F6",X"78",X"32",X"0B",X"E5",X"22",X"16",X"E5",X"32",
X"23",X"E5",X"22",X"2E",X"E5",X"CD",X"12",X"0D",X"18",X"C0",X"CD",X"B1",X"0C",X"21",X"94",X"26",
X"22",X"16",X"E5",X"C3",X"BF",X"0C",X"2A",X"16",X"E5",X"2B",X"7E",X"2B",X"E6",X"7F",X"FE",X"06",
X"20",X"F7",X"11",X"DC",X"E1",X"EB",X"7E",X"36",X"00",X"EB",X"A7",X"20",X"EC",X"7E",X"32",X"0B",
X"E5",X"23",X"23",X"22",X"16",X"E5",X"C9",X"21",X"00",X"E1",X"01",X"00",X"04",X"CD",X"FA",X"05",
X"DD",X"21",X"00",X"E3",X"DD",X"36",X"00",X"01",X"DD",X"36",X"10",X"09",X"DD",X"36",X"01",X"B0",
X"DD",X"36",X"21",X"A0",X"DD",X"21",X"70",X"E3",X"3E",X"60",X"06",X"09",X"11",X"10",X"00",X"DD",
X"77",X"01",X"DD",X"19",X"C6",X"04",X"10",X"F7",X"CD",X"96",X"0B",X"2B",X"46",X"3E",X"04",X"21",
X"00",X"C0",X"05",X"F2",X"FA",X"0B",X"3E",X"07",X"26",X"A8",X"32",X"14",X"E5",X"22",X"06",X"E3",
X"3E",X"02",X"32",X"08",X"E5",X"CD",X"8D",X"0D",X"3A",X"13",X"E5",X"3D",X"FE",X"05",X"CE",X"00",
X"06",X"FB",X"1F",X"38",X"01",X"04",X"78",X"32",X"C5",X"E1",X"CD",X"81",X"29",X"A7",X"20",X"5F",
X"21",X"0F",X"E5",X"CB",X"46",X"20",X"58",X"34",X"3A",X"10",X"E5",X"A7",X"28",X"58",X"21",X"5F",
X"2A",X"CD",X"00",X"03",X"3A",X"10",X"E5",X"FE",X"04",X"38",X"02",X"3E",X"03",X"C6",X"30",X"32",
X"56",X"81",X"3E",X"1C",X"CD",X"6F",X"0D",X"3E",X"40",X"32",X"0A",X"E3",X"0E",X"68",X"21",X"B6",
X"30",X"46",X"CB",X"78",X"20",X"14",X"23",X"5E",X"23",X"7E",X"23",X"EB",X"26",X"83",X"71",X"26",
X"87",X"70",X"0C",X"2C",X"BD",X"20",X"F5",X"EB",X"18",X"E7",X"3E",X"D3",X"21",X"D8",X"30",X"11",
X"10",X"E2",X"46",X"CB",X"78",X"20",X"08",X"12",X"13",X"10",X"FC",X"3C",X"23",X"18",X"F3",X"21",
X"46",X"E0",X"34",X"C3",X"6E",X"02",X"21",X"47",X"2A",X"CD",X"00",X"03",X"18",X"B4",X"AF",X"32",
X"4D",X"E0",X"CD",X"95",X"0C",X"CD",X"03",X"06",X"21",X"00",X"E5",X"01",X"16",X"00",X"CD",X"FA",
X"05",X"32",X"0F",X"E5",X"3A",X"40",X"E0",X"32",X"15",X"E5",X"21",X"62",X"21",X"22",X"16",X"E5",
X"C9",X"21",X"DE",X"26",X"22",X"F7",X"E0",X"21",X"03",X"E5",X"01",X"11",X"00",X"18",X"DF",X"CD",
X"29",X"0D",X"21",X"21",X"84",X"0E",X"06",X"3A",X"0E",X"E5",X"FE",X"1A",X"3E",X"00",X"38",X"01",
X"3C",X"32",X"F9",X"E0",X"C5",X"0E",X"01",X"CD",X"E7",X"03",X"79",X"C1",X"06",X"1E",X"77",X"23",
X"10",X"FC",X"23",X"23",X"0D",X"20",X"F5",X"21",X"0F",X"2B",X"CD",X"00",X"03",X"CD",X"68",X"06",
X"CD",X"85",X"06",X"3A",X"46",X"E0",X"CB",X"67",X"28",X"0F",X"CD",X"03",X"06",X"CD",X"68",X"06",
X"CD",X"03",X"06",X"21",X"72",X"2B",X"CD",X"00",X"03",X"CD",X"D5",X"06",X"CD",X"2C",X"21",X"CD",
X"8A",X"29",X"3A",X"0E",X"E5",X"0E",X"02",X"FE",X"1A",X"38",X"04",X"D6",X"1A",X"0E",X"07",X"C6",
X"40",X"32",X"52",X"80",X"79",X"32",X"52",X"84",X"C9",X"21",X"00",X"80",X"01",X"00",X"08",X"CD",
X"FA",X"05",X"21",X"00",X"E1",X"01",X"C6",X"00",X"CD",X"FA",X"05",X"3A",X"43",X"E0",X"3D",X"28",
X"09",X"21",X"46",X"E0",X"AF",X"CB",X"5E",X"28",X"01",X"3C",X"32",X"4C",X"E0",X"21",X"04",X"D0",
X"AE",X"21",X"3C",X"E0",X"36",X"EF",X"16",X"FF",X"1F",X"30",X"03",X"14",X"36",X"F1",X"23",X"72",
X"01",X"00",X"40",X"AF",X"ED",X"79",X"0C",X"10",X"FB",X"F3",X"CD",X"7D",X"0D",X"FB",X"C9",X"F3",
X"CD",X"75",X"0D",X"FB",X"C9",X"E5",X"21",X"46",X"E0",X"CB",X"7E",X"E1",X"F0",X"E5",X"2A",X"DE",
X"E1",X"26",X"E0",X"77",X"7D",X"3C",X"E6",X"07",X"32",X"DE",X"E1",X"E1",X"C9",X"CD",X"48",X"29",
X"CD",X"C2",X"0C",X"06",X"20",X"C5",X"CD",X"06",X"11",X"21",X"E2",X"E1",X"7E",X"C6",X"08",X"77",
X"C1",X"10",X"F2",X"C3",X"3B",X"0D",X"DD",X"5E",X"02",X"DD",X"56",X"03",X"01",X"4A",X"30",X"81",
X"4F",X"0A",X"4F",X"EB",X"11",X"20",X"00",X"7E",X"A7",X"20",X"03",X"19",X"18",X"F9",X"22",X"54",
X"E0",X"0A",X"03",X"3D",X"C8",X"F2",X"CD",X"0D",X"3C",X"77",X"19",X"18",X"F4",X"3A",X"54",X"E0",
X"3C",X"6F",X"E6",X"1F",X"20",X"E8",X"7D",X"D6",X"20",X"6F",X"18",X"E2",X"CD",X"5B",X"12",X"3A",
X"E2",X"E1",X"21",X"09",X"E5",X"47",X"AE",X"E6",X"F8",X"C8",X"78",X"E6",X"F8",X"77",X"CD",X"06",
X"11",X"3A",X"4D",X"E0",X"A7",X"C0",X"21",X"0B",X"E5",X"34",X"7E",X"5F",X"A7",X"28",X"07",X"E6",
X"1F",X"20",X"03",X"CD",X"D6",X"29",X"7B",X"2A",X"16",X"E5",X"BE",X"20",X"0B",X"23",X"7E",X"E6",
X"7F",X"32",X"D7",X"E1",X"23",X"22",X"16",X"E5",X"21",X"D7",X"E1",X"7E",X"3D",X"F8",X"36",X"00",
X"FE",X"18",X"D2",X"45",X"0F",X"FE",X"17",X"28",X"26",X"D6",X"06",X"FA",X"8A",X"0E",X"D6",X"07",
X"FA",X"F0",X"0E",X"87",X"87",X"87",X"5F",X"16",X"00",X"FD",X"21",X"00",X"10",X"FD",X"19",X"CD",
X"93",X"0E",X"FD",X"7E",X"06",X"A7",X"28",X"03",X"CD",X"FD",X"07",X"DD",X"71",X"00",X"C9",X"3E",
X"19",X"32",X"70",X"E3",X"C9",X"3E",X"01",X"32",X"DC",X"E1",X"2A",X"E4",X"E0",X"7D",X"E6",X"1F",
X"F6",X"C0",X"6F",X"36",X"0A",X"01",X"20",X"00",X"5D",X"09",X"36",X"0B",X"7B",X"3D",X"E6",X"1F",
X"F6",X"C0",X"6F",X"CD",X"81",X"29",X"C6",X"41",X"77",X"22",X"DA",X"E1",X"09",X"36",X"F2",X"01",
X"E0",X"03",X"09",X"3A",X"F9",X"E0",X"C6",X"05",X"77",X"C9",X"3C",X"28",X"C8",X"C6",X"05",X"32",
X"08",X"E5",X"C9",X"FD",X"7E",X"00",X"FE",X"02",X"28",X"1B",X"FE",X"07",X"38",X"1C",X"16",X"00",
X"FD",X"5E",X"05",X"DD",X"21",X"70",X"E3",X"FD",X"46",X"04",X"DD",X"7E",X"00",X"A7",X"28",X"13",
X"DD",X"19",X"10",X"F6",X"C9",X"21",X"D7",X"E1",X"36",X"11",X"11",X"F0",X"FF",X"DD",X"21",X"F0",
X"E4",X"18",X"E4",X"FD",X"7E",X"00",X"DD",X"77",X"0C",X"FD",X"7E",X"01",X"DD",X"77",X"0D",X"3A",
X"09",X"E5",X"D6",X"02",X"DD",X"77",X"0F",X"CD",X"3D",X"15",X"FD",X"86",X"03",X"DD",X"77",X"07",
X"DD",X"36",X"0B",X"00",X"DD",X"36",X"03",X"00",X"DD",X"36",X"0E",X"00",X"FD",X"4E",X"02",X"C9",
X"3C",X"CA",X"40",X"0F",X"F5",X"FD",X"21",X"4E",X"10",X"CD",X"BA",X"0E",X"F1",X"C6",X"86",X"DD",
X"77",X"0D",X"DD",X"71",X"00",X"21",X"4A",X"30",X"85",X"C6",X"80",X"6F",X"6E",X"FD",X"2A",X"E4",
X"E0",X"11",X"20",X"00",X"7E",X"23",X"3D",X"F2",X"22",X"0F",X"3C",X"FD",X"77",X"00",X"FD",X"19",
X"18",X"F2",X"C8",X"22",X"E6",X"E0",X"3D",X"28",X"11",X"FD",X"21",X"55",X"10",X"CD",X"9E",X"0E",
X"DD",X"36",X"0A",X"00",X"DD",X"34",X"0E",X"DD",X"71",X"00",X"3E",X"0D",X"32",X"D7",X"E1",X"C9",
X"2A",X"E6",X"E0",X"18",X"C8",X"D6",X"1F",X"FA",X"B7",X"0F",X"21",X"C5",X"E1",X"0E",X"FF",X"23",
X"0C",X"D6",X"08",X"F2",X"4F",X"0F",X"C6",X"08",X"28",X"10",X"77",X"23",X"23",X"23",X"77",X"23",
X"23",X"23",X"77",X"0D",X"F8",X"21",X"D6",X"E1",X"34",X"C9",X"77",X"FD",X"21",X"70",X"E3",X"11",
X"10",X"00",X"06",X"19",X"0D",X"FA",X"A5",X"0F",X"FD",X"7E",X"00",X"D6",X"22",X"FE",X"06",X"30",
X"19",X"6F",X"CB",X"4D",X"20",X"14",X"61",X"FD",X"7E",X"0D",X"FE",X"2A",X"20",X"01",X"24",X"25",
X"20",X"08",X"CB",X"55",X"20",X"09",X"FD",X"36",X"00",X"24",X"FD",X"19",X"10",X"DA",X"C9",X"FD",
X"36",X"0F",X"01",X"18",X"F5",X"FD",X"7E",X"00",X"D6",X"1E",X"FE",X"02",X"30",X"04",X"FD",X"36",
X"00",X"24",X"FD",X"19",X"10",X"EF",X"C9",X"C6",X"08",X"FE",X"04",X"30",X"08",X"21",X"0B",X"E5",
X"46",X"23",X"70",X"23",X"77",X"3A",X"D5",X"E1",X"A7",X"C8",X"5F",X"16",X"00",X"FD",X"21",X"FF",
X"E3",X"FD",X"19",X"21",X"70",X"E3",X"1E",X"10",X"01",X"3A",X"05",X"7E",X"A7",X"CA",X"5D",X"10",
X"19",X"10",X"F8",X"C9",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"A5");
begin
process(clk)
begin
if rising_edge(clk) then
data <= rom_data(to_integer(unsigned(addr)));
end if;
end process;
end architecture;

View File

@@ -0,0 +1,278 @@
library ieee;
use ieee.std_logic_1164.all,ieee.numeric_std.all;
entity mpa_23l is
port (
clk : in std_logic;
addr : in std_logic_vector(11 downto 0);
data : out std_logic_vector(7 downto 0)
);
end entity;
architecture prom of mpa_23l is
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
signal rom_data: rom := (
X"00",X"0E",X"12",X"F0",X"10",X"00",X"01",X"00",X"01",X"0F",X"12",X"F0",X"10",X"00",X"01",X"00",
X"02",X"10",X"12",X"F0",X"10",X"00",X"01",X"00",X"03",X"11",X"12",X"F0",X"10",X"00",X"01",X"00",
X"0D",X"25",X"12",X"FD",X"06",X"10",X"00",X"00",X"0A",X"21",X"1D",X"F0",X"05",X"10",X"00",X"00",
X"04",X"12",X"16",X"F4",X"18",X"10",X"01",X"00",X"05",X"16",X"16",X"F2",X"18",X"10",X"01",X"00",
X"06",X"1B",X"16",X"F0",X"18",X"10",X"01",X"00",X"0B",X"23",X"17",X"F0",X"01",X"20",X"00",X"00",
X"13",X"00",X"10",X"00",X"00",X"00",X"4A",X"14",X"00",X"03",X"40",X"00",X"00",X"EB",X"DD",X"21",
X"00",X"00",X"DD",X"19",X"DD",X"71",X"0D",X"DD",X"36",X"09",X"00",X"DD",X"36",X"08",X"00",X"FD",
X"56",X"07",X"DD",X"72",X"07",X"FD",X"7E",X"00",X"D6",X"1E",X"FE",X"0A",X"D0",X"CB",X"4F",X"C0",
X"FD",X"7E",X"03",X"D6",X"10",X"FE",X"E0",X"D0",X"79",X"FE",X"3A",X"28",X"36",X"CD",X"92",X"20",
X"ED",X"5F",X"E6",X"7F",X"47",X"3A",X"03",X"E3",X"80",X"D6",X"2F",X"4F",X"DD",X"96",X"03",X"C6",
X"08",X"FE",X"11",X"79",X"30",X"03",X"EE",X"10",X"4F",X"FD",X"BE",X"03",X"17",X"DD",X"77",X"0C",
X"79",X"CD",X"38",X"15",X"92",X"1F",X"1F",X"1F",X"E6",X"1F",X"C6",X"02",X"41",X"CB",X"38",X"0E",
X"2E",X"18",X"0F",X"01",X"2A",X"8F",X"CB",X"3A",X"CB",X"3A",X"CB",X"3A",X"3A",X"14",X"E5",X"EE",
X"1F",X"92",X"21",X"00",X"31",X"85",X"6F",X"56",X"FD",X"7E",X"03",X"DD",X"77",X"03",X"CB",X"3F",
X"90",X"30",X"02",X"ED",X"44",X"1E",X"FF",X"1C",X"92",X"30",X"FC",X"82",X"DD",X"73",X"05",X"06",
X"08",X"CB",X"27",X"BA",X"CB",X"13",X"CB",X"43",X"20",X"01",X"92",X"10",X"F4",X"7B",X"2F",X"DD",
X"77",X"04",X"DD",X"71",X"00",X"C9",X"21",X"D9",X"E1",X"7E",X"A7",X"C2",X"9A",X"11",X"3A",X"08",
X"E5",X"FE",X"03",X"30",X"79",X"47",X"05",X"21",X"B4",X"2C",X"3A",X"E2",X"E1",X"1F",X"1F",X"1F",
X"E6",X"1F",X"85",X"10",X"02",X"C6",X"20",X"6F",X"4E",X"3A",X"E2",X"E1",X"1F",X"1F",X"1F",X"E6",
X"1F",X"5F",X"16",X"83",X"FD",X"21",X"00",X"04",X"FD",X"19",X"EB",X"11",X"20",X"00",X"06",X"07",
X"3A",X"14",X"E5",X"B8",X"28",X"07",X"36",X"00",X"19",X"FD",X"19",X"10",X"F6",X"22",X"E4",X"E0",
X"71",X"FD",X"36",X"00",X"04",X"19",X"FD",X"19",X"36",X"F3",X"FD",X"36",X"00",X"04",X"10",X"F5",
X"3A",X"E2",X"E1",X"1F",X"1F",X"E6",X"3E",X"C6",X"00",X"6F",X"26",X"E2",X"3A",X"14",X"E5",X"EE",
X"1F",X"57",X"FD",X"21",X"24",X"2C",X"FD",X"09",X"FD",X"7E",X"00",X"5F",X"E6",X"70",X"07",X"B2",
X"07",X"07",X"07",X"77",X"E6",X"F8",X"57",X"7B",X"E6",X"07",X"B2",X"23",X"77",X"C9",X"87",X"C6",
X"7A",X"77",X"87",X"28",X"02",X"3E",X"0A",X"32",X"D8",X"E1",X"4E",X"CB",X"19",X"D8",X"CB",X"19",
X"21",X"D8",X"E1",X"35",X"F2",X"B6",X"11",X"36",X"0B",X"3A",X"14",X"E5",X"38",X"3C",X"FE",X"07",
X"28",X"3E",X"3E",X"0B",X"18",X"27",X"7E",X"21",X"14",X"E5",X"30",X"1C",X"A7",X"20",X"01",X"35",
X"C6",X"F3",X"FE",X"FC",X"38",X"02",X"D6",X"0C",X"4F",X"C6",X"03",X"FA",X"C9",X"11",X"C2",X"29",
X"11",X"79",X"D6",X"10",X"4F",X"C3",X"29",X"11",X"FE",X"09",X"20",X"01",X"34",X"2F",X"C6",X"F2",
X"FE",X"F0",X"30",X"02",X"C6",X"0C",X"4F",X"C3",X"29",X"11",X"FE",X"04",X"3E",X"0B",X"20",X"D0",
X"21",X"D9",X"E1",X"34",X"2A",X"E1",X"E1",X"22",X"F1",X"E0",X"21",X"00",X"00",X"22",X"EF",X"E0",
X"C9",X"21",X"44",X"2D",X"ED",X"53",X"EB",X"E0",X"22",X"E9",X"E0",X"3A",X"4E",X"E0",X"C6",X"03",
X"DD",X"77",X"01",X"DD",X"36",X"00",X"0B",X"C9",X"3A",X"4E",X"E0",X"DD",X"BE",X"01",X"20",X"F3",
X"2A",X"EB",X"E0",X"23",X"22",X"EB",X"E0",X"2B",X"EB",X"FD",X"21",X"00",X"04",X"FD",X"19",X"2A",
X"E9",X"E0",X"01",X"20",X"00",X"7E",X"23",X"3D",X"FE",X"03",X"38",X"0D",X"3C",X"12",X"FD",X"36",
X"00",X"80",X"EB",X"09",X"EB",X"FD",X"09",X"18",X"EC",X"3D",X"FA",X"55",X"12",X"28",X"B9",X"5E",
X"23",X"56",X"23",X"18",X"AF",X"21",X"97",X"2C",X"C3",X"00",X"03",X"3A",X"0D",X"E5",X"3D",X"F8",
X"21",X"AB",X"2C",X"3A",X"4E",X"E0",X"E6",X"3F",X"28",X"1B",X"E6",X"1F",X"C0",X"CD",X"7B",X"03",
X"CD",X"88",X"12",X"36",X"02",X"EB",X"36",X"12",X"21",X"0B",X"E5",X"7E",X"23",X"96",X"FE",X"40",
X"D8",X"23",X"36",X"00",X"C9",X"CD",X"00",X"03",X"3A",X"0D",X"E5",X"21",X"55",X"80",X"01",X"02",
X"13",X"11",X"20",X"00",X"3D",X"28",X"08",X"19",X"0C",X"05",X"3D",X"28",X"02",X"04",X"19",X"70",
X"11",X"00",X"04",X"EB",X"19",X"71",X"C9",X"21",X"70",X"E3",X"11",X"10",X"00",X"01",X"02",X"19",
X"7E",X"FE",X"14",X"28",X"2A",X"FE",X"1E",X"38",X"1B",X"FE",X"20",X"38",X"08",X"FE",X"22",X"38",
X"13",X"FE",X"2A",X"30",X"0F",X"3A",X"DF",X"E1",X"1F",X"1F",X"D8",X"79",X"32",X"DF",X"E1",X"C6",
X"15",X"C3",X"6F",X"0D",X"19",X"10",X"D9",X"3A",X"DF",X"E1",X"A7",X"C8",X"AF",X"18",X"ED",X"3A",
X"DF",X"E1",X"1F",X"0D",X"30",X"E5",X"C9",X"3A",X"DC",X"E1",X"A7",X"C8",X"3A",X"4E",X"E0",X"E6",
X"0F",X"28",X"04",X"E6",X"07",X"C0",X"3C",X"3C",X"4F",X"2A",X"DA",X"E1",X"7E",X"D6",X"5A",X"28",
X"0A",X"3C",X"06",X"04",X"C6",X"05",X"28",X"03",X"10",X"FA",X"C9",X"11",X"00",X"04",X"19",X"71",
X"C9",X"21",X"00",X"40",X"22",X"02",X"E3",X"3A",X"4E",X"E0",X"E6",X"03",X"20",X"48",X"DD",X"35",
X"0A",X"F2",X"66",X"13",X"21",X"5F",X"2A",X"CD",X"7B",X"03",X"3E",X"18",X"CD",X"75",X"0D",X"18",
X"29",X"CD",X"48",X"15",X"07",X"07",X"30",X"2B",X"2A",X"1A",X"E3",X"11",X"79",X"FF",X"19",X"7C",
X"A7",X"20",X"05",X"7D",X"FE",X"D1",X"38",X"02",X"3E",X"D1",X"5F",X"CB",X"3B",X"83",X"2F",X"6F",
X"3E",X"FF",X"DE",X"00",X"67",X"2B",X"67",X"22",X"08",X"E3",X"DD",X"34",X"00",X"CD",X"76",X"15",
X"C3",X"B8",X"08",X"CD",X"8A",X"14",X"CD",X"33",X"15",X"D6",X"1C",X"32",X"07",X"E3",X"18",X"ED",
X"DD",X"34",X"00",X"3E",X"14",X"CD",X"75",X"0D",X"CD",X"48",X"15",X"2A",X"0E",X"E3",X"CD",X"A4",
X"14",X"CD",X"33",X"15",X"D6",X"1E",X"18",X"E3",X"CD",X"48",X"15",X"2A",X"0E",X"E3",X"CD",X"A4",
X"14",X"2A",X"06",X"E3",X"ED",X"5B",X"08",X"E3",X"19",X"22",X"06",X"E3",X"21",X"0C",X"00",X"19",
X"22",X"08",X"E3",X"CB",X"14",X"38",X"0F",X"CD",X"33",X"15",X"D6",X"1D",X"47",X"3A",X"07",X"E3",
X"B8",X"38",X"03",X"DD",X"34",X"00",X"CD",X"AC",X"15",X"C3",X"B8",X"08",X"DD",X"36",X"00",X"02",
X"18",X"B6",X"2A",X"02",X"E3",X"ED",X"5B",X"04",X"E3",X"19",X"22",X"02",X"E3",X"2A",X"06",X"E3",
X"ED",X"5B",X"08",X"E3",X"19",X"22",X"06",X"E3",X"CD",X"B8",X"08",X"DD",X"35",X"0A",X"C0",X"DD",
X"34",X"00",X"DD",X"36",X"0D",X"03",X"3E",X"1F",X"C3",X"75",X"0D",X"AF",X"32",X"A2",X"E1",X"DD",
X"35",X"0A",X"F0",X"DD",X"7E",X"0D",X"FE",X"09",X"D2",X"18",X"01",X"FE",X"05",X"38",X"0B",X"CD",
X"B8",X"08",X"DD",X"34",X"0D",X"DD",X"36",X"0A",X"0E",X"C9",X"DD",X"CB",X"0A",X"4E",X"C0",X"EE",
X"07",X"DD",X"77",X"0D",X"DD",X"7E",X"0A",X"FE",X"C0",X"D2",X"B8",X"08",X"DD",X"36",X"0D",X"05",
X"C9",X"DD",X"35",X"0A",X"DD",X"7E",X"0A",X"FE",X"50",X"D0",X"21",X"4D",X"E0",X"34",X"DD",X"36",
X"00",X"04",X"C9",X"CD",X"DB",X"20",X"22",X"D6",X"E0",X"7C",X"D6",X"08",X"FE",X"F0",X"D2",X"52",
X"08",X"2A",X"D8",X"E0",X"23",X"CB",X"7C",X"20",X"02",X"2B",X"2B",X"22",X"D8",X"E0",X"2A",X"DA",
X"E0",X"ED",X"5B",X"DC",X"E0",X"19",X"4C",X"22",X"DA",X"E0",X"21",X"24",X"00",X"19",X"22",X"DC",
X"E0",X"CB",X"14",X"38",X"1F",X"C6",X"0B",X"CD",X"38",X"15",X"D6",X"08",X"B9",X"30",X"15",X"ED",
X"5B",X"DC",X"E0",X"21",X"00",X"00",X"ED",X"52",X"CB",X"3A",X"CB",X"1B",X"CB",X"3A",X"CB",X"1B",
X"19",X"22",X"DC",X"E0",X"CD",X"B8",X"08",X"C3",X"EF",X"20",X"3A",X"49",X"E0",X"87",X"21",X"28",
X"30",X"85",X"6F",X"5E",X"23",X"66",X"2E",X"00",X"22",X"0E",X"E3",X"AF",X"CB",X"13",X"17",X"57",
X"ED",X"53",X"1C",X"E3",X"ED",X"5B",X"02",X"E3",X"AF",X"ED",X"52",X"4F",X"7C",X"30",X"03",X"ED",
X"44",X"0C",X"FE",X"18",X"38",X"02",X"3E",X"18",X"21",X"30",X"30",X"85",X"6F",X"5E",X"16",X"00",
X"2A",X"04",X"E3",X"7C",X"A7",X"F2",X"D4",X"14",X"0D",X"20",X"11",X"2F",X"67",X"7D",X"2F",X"6F",
X"23",X"EB",X"18",X"03",X"0D",X"28",X"57",X"A7",X"ED",X"52",X"30",X"52",X"11",X"02",X"00",X"3A",
X"4E",X"E0",X"1F",X"2A",X"04",X"E3",X"ED",X"5A",X"22",X"04",X"E3",X"ED",X"5B",X"02",X"E3",X"19",
X"22",X"02",X"E3",X"54",X"21",X"DC",X"E1",X"7E",X"3D",X"C0",X"3A",X"0B",X"E5",X"87",X"87",X"87",
X"C6",X"08",X"82",X"D0",X"36",X"00",X"21",X"0E",X"E5",X"34",X"7E",X"06",X"09",X"FE",X"19",X"28",
X"0F",X"38",X"01",X"3D",X"D6",X"05",X"CA",X"C0",X"27",X"10",X"F9",X"FE",X"06",X"CA",X"C0",X"27",
X"3E",X"10",X"CD",X"75",X"0D",X"AF",X"0E",X"01",X"CD",X"C2",X"02",X"C3",X"12",X"0D",X"11",X"FD",
X"FF",X"18",X"AC",X"3A",X"03",X"E3",X"C6",X"20",X"47",X"3A",X"E2",X"E1",X"80",X"C6",X"06",X"CB",
X"3F",X"CB",X"3F",X"6F",X"26",X"E2",X"7E",X"C9",X"2A",X"4A",X"E0",X"7C",X"AD",X"A5",X"07",X"D0",
X"4F",X"3A",X"20",X"E3",X"A7",X"20",X"05",X"3E",X"0A",X"32",X"20",X"E3",X"21",X"30",X"E3",X"06",
X"04",X"11",X"10",X"00",X"7E",X"A7",X"28",X"05",X"19",X"10",X"F9",X"79",X"C9",X"36",X"0E",X"3E",
X"12",X"CD",X"75",X"0D",X"79",X"C9",X"3A",X"03",X"E3",X"4F",X"C6",X"04",X"CD",X"38",X"15",X"D6",
X"09",X"CD",X"C9",X"15",X"7A",X"EE",X"03",X"57",X"3E",X"09",X"CD",X"92",X"15",X"2C",X"14",X"14",
X"3E",X"0D",X"81",X"4F",X"2C",X"2C",X"7D",X"E6",X"3F",X"6F",X"7E",X"D6",X"09",X"CD",X"ED",X"08",
X"47",X"FD",X"23",X"FD",X"23",X"FD",X"23",X"FD",X"23",X"C3",X"76",X"09",X"3A",X"03",X"E3",X"4F",
X"3A",X"07",X"E3",X"C6",X"11",X"CD",X"C9",X"15",X"7A",X"EE",X"03",X"57",X"3E",X"09",X"CD",X"C5",
X"15",X"14",X"14",X"3E",X"0D",X"81",X"4F",X"18",X"D8",X"0C",X"CD",X"ED",X"08",X"47",X"11",X"00",
X"05",X"3A",X"E2",X"E1",X"CB",X"67",X"20",X"01",X"14",X"FD",X"21",X"A4",X"E1",X"C3",X"76",X"09",
X"DD",X"36",X"0A",X"0C",X"3A",X"07",X"E3",X"C6",X"0A",X"32",X"27",X"E3",X"2A",X"02",X"E3",X"11",
X"00",X"1C",X"19",X"22",X"22",X"E3",X"DD",X"34",X"00",X"C9",X"DD",X"35",X"0A",X"28",X"19",X"2A",
X"22",X"E3",X"11",X"5D",X"04",X"19",X"22",X"22",X"E3",X"DD",X"7E",X"0A",X"1F",X"3E",X"09",X"38",
X"01",X"3C",X"DD",X"77",X"0D",X"C3",X"B8",X"08",X"DD",X"34",X"00",X"DD",X"36",X"0A",X"03",X"DD",
X"36",X"0D",X"0B",X"3A",X"E2",X"E1",X"DD",X"86",X"03",X"DD",X"77",X"0F",X"C9",X"CD",X"31",X"08",
X"DD",X"35",X"0A",X"F0",X"DD",X"7E",X"0D",X"FE",X"0D",X"CA",X"52",X"08",X"FE",X"29",X"CA",X"52",
X"08",X"DD",X"34",X"0D",X"DD",X"36",X"0A",X"03",X"C9",X"3A",X"03",X"E3",X"C6",X"0A",X"DD",X"77",
X"03",X"3A",X"07",X"E3",X"C6",X"02",X"DD",X"77",X"07",X"DD",X"34",X"00",X"C9",X"3A",X"00",X"E3",
X"FE",X"06",X"30",X"2B",X"DD",X"7E",X"07",X"D6",X"03",X"FE",X"3A",X"38",X"22",X"DD",X"77",X"07",
X"CD",X"1B",X"08",X"DD",X"7E",X"07",X"1F",X"1F",X"1F",X"7A",X"17",X"E6",X"07",X"F6",X"60",X"77",
X"11",X"00",X"04",X"19",X"36",X"00",X"1F",X"D0",X"11",X"20",X"FC",X"19",X"36",X"00",X"C9",X"CD",
X"1B",X"08",X"36",X"00",X"DD",X"36",X"00",X"00",X"C9",X"DD",X"4E",X"03",X"DD",X"7E",X"0C",X"87",
X"87",X"87",X"21",X"1C",X"31",X"85",X"6F",X"3A",X"20",X"E3",X"11",X"04",X"F8",X"D6",X"0B",X"28",
X"06",X"3D",X"20",X"17",X"11",X"0A",X"F0",X"3A",X"23",X"E3",X"82",X"91",X"FE",X"E8",X"38",X"0B",
X"3A",X"27",X"E3",X"DD",X"96",X"07",X"86",X"83",X"F2",X"4E",X"17",X"DD",X"7E",X"0C",X"A7",X"F8",
X"23",X"3A",X"03",X"E3",X"91",X"86",X"23",X"46",X"23",X"B8",X"38",X"05",X"96",X"30",X"01",X"AF",
X"80",X"23",X"BE",X"D2",X"C4",X"17",X"23",X"46",X"23",X"86",X"6F",X"24",X"3A",X"07",X"E3",X"86",
X"DD",X"96",X"07",X"3D",X"80",X"F8",X"3A",X"04",X"D0",X"CB",X"77",X"C8",X"E1",X"3E",X"07",X"32",
X"00",X"E3",X"3E",X"03",X"32",X"0D",X"E3",X"AF",X"32",X"0A",X"E3",X"32",X"B0",X"E3",X"32",X"72",
X"E1",X"CD",X"52",X"08",X"06",X"03",X"3A",X"07",X"E3",X"C6",X"14",X"4F",X"3A",X"03",X"E3",X"21",
X"D3",X"E1",X"34",X"21",X"C0",X"E3",X"FD",X"21",X"DF",X"30",X"36",X"1C",X"23",X"23",X"23",X"77",
X"C6",X"10",X"CD",X"F8",X"17",X"71",X"CD",X"F8",X"17",X"23",X"23",X"FD",X"5E",X"00",X"73",X"FD",
X"23",X"23",X"23",X"23",X"10",X"E4",X"CD",X"A1",X"08",X"3E",X"1F",X"C3",X"75",X"0D",X"3A",X"E2",
X"E1",X"DD",X"86",X"03",X"32",X"2F",X"E3",X"3E",X"0D",X"32",X"20",X"E3",X"3E",X"26",X"32",X"2D",
X"E3",X"3E",X"03",X"32",X"2A",X"E3",X"3E",X"01",X"CD",X"75",X"0D",X"11",X"07",X"00",X"19",X"7E",
X"E6",X"0F",X"0E",X"01",X"FE",X"0E",X"30",X"07",X"CD",X"C2",X"02",X"E1",X"C3",X"52",X"08",X"20",
X"13",X"CD",X"F0",X"17",X"C6",X"05",X"DD",X"77",X"08",X"CD",X"C2",X"02",X"DD",X"34",X"00",X"DD",
X"36",X"0A",X"00",X"C9",X"CD",X"56",X"08",X"CD",X"F0",X"17",X"21",X"10",X"FB",X"C6",X"06",X"DD",
X"77",X"08",X"E5",X"CD",X"C2",X"02",X"E1",X"DD",X"7E",X"07",X"84",X"DD",X"77",X"07",X"DD",X"7E",
X"03",X"85",X"DD",X"77",X"03",X"DD",X"36",X"0D",X"54",X"DD",X"36",X"00",X"21",X"DD",X"36",X"0A",
X"3B",X"C3",X"56",X"08",X"47",X"DD",X"7E",X"0C",X"C6",X"80",X"4F",X"FE",X"8B",X"28",X"1B",X"FE",
X"8E",X"28",X"17",X"78",X"96",X"FE",X"04",X"D0",X"DD",X"71",X"0C",X"23",X"23",X"23",X"7E",X"1F",
X"1F",X"1F",X"1F",X"E6",X"0F",X"0E",X"01",X"C3",X"C2",X"02",X"78",X"FE",X"FC",X"30",X"E9",X"C9",
X"ED",X"5F",X"E6",X"03",X"C0",X"3E",X"02",X"C9",X"23",X"FD",X"5E",X"00",X"73",X"23",X"FD",X"5E",
X"01",X"73",X"23",X"23",X"FD",X"23",X"FD",X"23",X"C9",X"3A",X"00",X"E3",X"FE",X"06",X"D0",X"FE",
X"01",X"26",X"00",X"28",X"76",X"2A",X"1C",X"E3",X"ED",X"5B",X"1A",X"E3",X"7A",X"A7",X"FA",X"23",
X"18",X"ED",X"52",X"21",X"03",X"00",X"30",X"03",X"21",X"FE",X"FF",X"3A",X"4E",X"E0",X"1F",X"38",
X"01",X"1D",X"19",X"22",X"1A",X"E3",X"ED",X"5B",X"04",X"E3",X"A7",X"ED",X"52",X"22",X"14",X"E3",
X"EB",X"2A",X"E1",X"E1",X"19",X"22",X"E1",X"E1",X"3A",X"D9",X"E1",X"1F",X"30",X"3D",X"2A",X"EF",
X"E0",X"19",X"7C",X"C6",X"06",X"FE",X"0C",X"38",X"17",X"D6",X"12",X"67",X"E5",X"21",X"3F",X"E2",
X"11",X"42",X"E2",X"01",X"40",X"00",X"ED",X"B8",X"21",X"42",X"E2",X"0E",X"03",X"ED",X"B8",X"E1",
X"22",X"EF",X"E0",X"ED",X"5B",X"F1",X"E0",X"19",X"3A",X"08",X"E5",X"FE",X"03",X"30",X"0C",X"3A",
X"E2",X"E1",X"94",X"FE",X"F4",X"38",X"04",X"AF",X"32",X"D9",X"E1",X"7C",X"2F",X"21",X"3D",X"E0",
X"86",X"32",X"C0",X"E1",X"2A",X"14",X"E3",X"54",X"5D",X"CB",X"3C",X"CB",X"1D",X"19",X"CB",X"3C",
X"CB",X"1D",X"CB",X"3C",X"CB",X"1D",X"EB",X"2A",X"04",X"E5",X"19",X"22",X"04",X"E5",X"7C",X"2F",
X"32",X"C1",X"E1",X"CB",X"3A",X"CB",X"1B",X"2A",X"06",X"E5",X"19",X"22",X"06",X"E5",X"7C",X"2F",
X"32",X"C2",X"E1",X"CD",X"33",X"15",X"FE",X"C4",X"30",X"02",X"3E",X"C4",X"C6",X"28",X"30",X"01",
X"AF",X"47",X"C6",X"94",X"32",X"C3",X"E1",X"CB",X"28",X"78",X"C6",X"72",X"32",X"C4",X"E1",X"C9",
X"CD",X"31",X"08",X"CD",X"99",X"16",X"DD",X"35",X"0A",X"F0",X"DD",X"34",X"0A",X"DD",X"7E",X"03",
X"FE",X"E0",X"D0",X"DD",X"7E",X"0C",X"17",X"D8",X"3A",X"C0",X"E3",X"A7",X"C0",X"FD",X"21",X"70",
X"E3",X"11",X"10",X"00",X"06",X"05",X"FD",X"7E",X"00",X"FE",X"1D",X"20",X"0D",X"FD",X"7E",X"0C",
X"17",X"38",X"07",X"DD",X"7E",X"03",X"FD",X"96",X"03",X"D8",X"FD",X"19",X"10",X"E8",X"DD",X"7E",
X"07",X"FD",X"77",X"07",X"DD",X"7E",X"0F",X"D6",X"04",X"FD",X"77",X"0F",X"FD",X"36",X"00",X"11",
X"FD",X"36",X"0D",X"22",X"FD",X"36",X"0C",X"0C",X"DD",X"36",X"0A",X"43",X"C9",X"3A",X"00",X"E3",
X"FE",X"06",X"D0",X"DD",X"7E",X"04",X"C6",X"DD",X"DD",X"77",X"04",X"30",X"03",X"DD",X"35",X"0F",
X"CD",X"38",X"08",X"CD",X"99",X"16",X"C9",X"CD",X"31",X"08",X"CD",X"99",X"16",X"C9",X"CD",X"31",
X"08",X"DD",X"7E",X"0C",X"A7",X"C0",X"DD",X"7E",X"0D",X"07",X"07",X"E6",X"1C",X"21",X"00",X"2E",
X"85",X"6F",X"3A",X"03",X"E3",X"DD",X"96",X"03",X"86",X"23",X"BE",X"30",X"45",X"47",X"3A",X"00",
X"E3",X"FE",X"04",X"C8",X"3A",X"04",X"D0",X"CB",X"77",X"C8",X"78",X"46",X"0E",X"02",X"CB",X"38",
X"50",X"CB",X"38",X"BA",X"38",X"04",X"78",X"82",X"47",X"0D",X"DD",X"7E",X"03",X"80",X"D6",X"1C",
X"32",X"03",X"E3",X"79",X"32",X"0D",X"E3",X"3D",X"3D",X"32",X"05",X"E3",X"3E",X"80",X"32",X"04",
X"E3",X"23",X"7E",X"32",X"0A",X"E3",X"21",X"00",X"02",X"22",X"08",X"E3",X"3E",X"06",X"32",X"00",
X"E3",X"C9",X"96",X"FE",X"04",X"D0",X"DD",X"34",X"0C",X"23",X"23",X"7E",X"0E",X"01",X"C3",X"C2",
X"02",X"DD",X"35",X"0A",X"F2",X"0D",X"1A",X"DD",X"7E",X"0E",X"47",X"3C",X"0E",X"07",X"FE",X"06",
X"38",X"0B",X"3A",X"4E",X"E0",X"E6",X"30",X"20",X"02",X"3E",X"30",X"4F",X"AF",X"DD",X"77",X"0E",
X"DD",X"71",X"0A",X"78",X"FE",X"04",X"38",X"04",X"EE",X"07",X"3D",X"47",X"C6",X"06",X"DD",X"46",
X"0C",X"04",X"FA",X"08",X"1A",X"DD",X"77",X"0C",X"C6",X"45",X"DD",X"77",X"0D",X"3A",X"20",X"E3",
X"FE",X"0F",X"38",X"0E",X"C0",X"3A",X"03",X"E3",X"DD",X"96",X"03",X"C6",X"10",X"FE",X"30",X"DA",
X"FD",X"16",X"CD",X"38",X"08",X"DD",X"7E",X"0C",X"FE",X"06",X"C8",X"CD",X"99",X"16",X"C9",X"CD",
X"31",X"08",X"DD",X"35",X"0A",X"F0",X"DD",X"7E",X"0D",X"FE",X"4A",X"C8",X"DD",X"35",X"0D",X"DD",
X"36",X"0A",X"07",X"C9",X"3A",X"00",X"E3",X"FE",X"06",X"D0",X"DD",X"35",X"0E",X"F2",X"66",X"1A",
X"DD",X"36",X"0E",X"06",X"DD",X"7E",X"0D",X"3D",X"01",X"03",X"00",X"21",X"8E",X"1A",X"ED",X"B1",
X"20",X"01",X"7E",X"DD",X"77",X"0D",X"DD",X"7E",X"04",X"C6",X"C0",X"DD",X"77",X"04",X"30",X"03",
X"DD",X"35",X"0F",X"CD",X"38",X"08",X"DD",X"7E",X"0C",X"D6",X"04",X"CB",X"27",X"C6",X"0C",X"4F",
X"DD",X"7E",X"03",X"CD",X"38",X"15",X"91",X"DD",X"77",X"07",X"CD",X"99",X"16",X"C9",X"11",X"15",
X"1A",X"20",X"DD",X"36",X"0B",X"01",X"3A",X"00",X"E3",X"FE",X"06",X"D0",X"2A",X"72",X"E3",X"7C",
X"FE",X"08",X"28",X"09",X"11",X"70",X"00",X"19",X"22",X"72",X"E3",X"18",X"2C",X"DD",X"36",X"0A",
X"00",X"DD",X"34",X"00",X"DD",X"36",X"0E",X"80",X"C9",X"3A",X"4E",X"E0",X"1F",X"D8",X"3A",X"00",
X"E3",X"FE",X"06",X"D0",X"3A",X"4E",X"E0",X"47",X"E6",X"03",X"20",X"0D",X"DD",X"34",X"03",X"CB",
X"68",X"28",X"06",X"DD",X"35",X"03",X"DD",X"35",X"03",X"3A",X"4E",X"E0",X"E6",X"07",X"20",X"0D",
X"DD",X"7E",X"03",X"C6",X"18",X"CD",X"38",X"15",X"D6",X"10",X"DD",X"77",X"07",X"C3",X"B8",X"08",
X"DD",X"35",X"0E",X"20",X"CF",X"DD",X"36",X"0A",X"58",X"DD",X"34",X"00",X"DD",X"36",X"0D",X"52",
X"C9",X"DD",X"35",X"0A",X"28",X"15",X"2A",X"72",X"E3",X"11",X"80",X"01",X"19",X"22",X"72",X"E3",
X"7C",X"FE",X"F0",X"D2",X"52",X"08",X"CD",X"99",X"16",X"18",X"BE",X"DD",X"34",X"00",X"DD",X"36",
X"0A",X"6E",X"DD",X"36",X"0D",X"23",X"C9",X"CD",X"99",X"16",X"DD",X"35",X"0A",X"20",X"95",X"DD",
X"35",X"00",X"DD",X"35",X"0B",X"DD",X"36",X"0D",X"52",X"C9",X"21",X"EE",X"E0",X"3A",X"4E",X"E0",
X"96",X"F8",X"01",X"00",X"10",X"ED",X"5F",X"E6",X"F0",X"26",X"E4",X"51",X"59",X"6F",X"7E",X"D6",
X"1E",X"FE",X"0A",X"30",X"0A",X"CB",X"4F",X"20",X"06",X"FE",X"04",X"38",X"63",X"0C",X"5D",X"7D",
X"C6",X"10",X"10",X"E9",X"ED",X"53",X"D4",X"E1",X"0D",X"F8",X"3A",X"10",X"E5",X"E6",X"03",X"FE",
X"01",X"89",X"4F",X"FE",X"09",X"DA",X"7A",X"1B",X"0E",X"08",X"21",X"FF",X"2F",X"09",X"4E",X"06",
X"05",X"21",X"70",X"E3",X"11",X"00",X"00",X"7E",X"A7",X"28",X"39",X"D6",X"2F",X"20",X"01",X"14",
X"7D",X"C6",X"10",X"6F",X"10",X"F1",X"7A",X"B9",X"D0",X"1C",X"1D",X"C8",X"ED",X"5F",X"E6",X"0F",
X"C6",X"19",X"21",X"4E",X"E0",X"86",X"32",X"EE",X"E0",X"16",X"00",X"DD",X"21",X"00",X"E3",X"DD",
X"19",X"21",X"D4",X"E1",X"5E",X"FD",X"21",X"00",X"E4",X"FD",X"19",X"0E",X"3B",X"C3",X"64",X"10",
X"55",X"14",X"18",X"9B",X"5D",X"18",X"C9",X"3A",X"4E",X"E0",X"21",X"52",X"E0",X"AE",X"E6",X"1F",
X"C0",X"ED",X"5F",X"77",X"21",X"C6",X"E1",X"06",X"03",X"7E",X"A7",X"20",X"04",X"23",X"10",X"F9",
X"C9",X"DD",X"21",X"00",X"E4",X"04",X"78",X"48",X"06",X"10",X"FE",X"04",X"28",X"0F",X"3A",X"D6",
X"E1",X"3D",X"FA",X"FD",X"1B",X"0D",X"0D",X"DD",X"21",X"70",X"E3",X"06",X"05",X"11",X"10",X"00",
X"DD",X"7E",X"00",X"A7",X"28",X"05",X"DD",X"19",X"10",X"F6",X"C9",X"35",X"79",X"FE",X"02",X"30",
X"43",X"ED",X"5F",X"E6",X"1F",X"C6",X"20",X"DD",X"77",X"0F",X"21",X"D6",X"E1",X"35",X"ED",X"5F",
X"E6",X"1E",X"5F",X"16",X"00",X"FE",X"0E",X"3E",X"82",X"38",X"04",X"ED",X"5F",X"E6",X"80",X"DD",
X"77",X"0C",X"21",X"08",X"30",X"19",X"7E",X"DD",X"77",X"07",X"23",X"7E",X"DD",X"77",X"03",X"06",
X"00",X"21",X"59",X"1C",X"09",X"09",X"7E",X"DD",X"77",X"0D",X"DD",X"36",X"0E",X"00",X"23",X"7E",
X"DD",X"77",X"00",X"C9",X"CD",X"0A",X"08",X"18",X"C5",X"2B",X"26",X"2A",X"26",X"2B",X"22",X"2A",
X"22",X"31",X"1E",X"DD",X"7E",X"0D",X"FE",X"2B",X"D8",X"DD",X"CB",X"0E",X"7E",X"20",X"18",X"DD",
X"35",X"0E",X"F0",X"DD",X"34",X"0D",X"FE",X"2F",X"28",X"1C",X"FE",X"34",X"20",X"04",X"DD",X"36",
X"0D",X"31",X"DD",X"36",X"0E",X"08",X"C9",X"DD",X"34",X"0E",X"F8",X"DD",X"35",X"0D",X"FE",X"2C",
X"28",X"F0",X"FE",X"32",X"28",X"EC",X"DD",X"36",X"0E",X"F8",X"C9",X"DD",X"6E",X"04",X"DD",X"66",
X"05",X"CB",X"3C",X"CB",X"1D",X"DD",X"CB",X"0C",X"46",X"28",X"07",X"EB",X"21",X"00",X"00",X"A7",
X"ED",X"52",X"DD",X"75",X"04",X"DD",X"74",X"05",X"DD",X"34",X"00",X"C9",X"0E",X"3D",X"DD",X"7E",
X"09",X"A7",X"20",X"13",X"0E",X"3B",X"DD",X"46",X"05",X"CB",X"10",X"30",X"02",X"0E",X"50",X"DD",
X"7E",X"08",X"FE",X"60",X"38",X"01",X"0C",X"DD",X"71",X"0D",X"CD",X"FB",X"20",X"7C",X"FE",X"06",
X"DA",X"52",X"08",X"01",X"05",X"00",X"22",X"D6",X"E0",X"7C",X"2A",X"DC",X"E0",X"09",X"22",X"DC",
X"E0",X"ED",X"5B",X"DA",X"E0",X"19",X"22",X"DA",X"E0",X"54",X"CD",X"38",X"15",X"D6",X"08",X"BA",
X"CD",X"EF",X"20",X"30",X"35",X"DD",X"77",X"07",X"DD",X"34",X"00",X"DD",X"36",X"0B",X"00",X"DD",
X"7E",X"00",X"FE",X"2A",X"3E",X"03",X"20",X"05",X"DD",X"36",X"00",X"30",X"3D",X"CD",X"75",X"0D",
X"C3",X"56",X"08",X"CD",X"DB",X"20",X"ED",X"5B",X"14",X"E3",X"CB",X"2A",X"CB",X"1B",X"ED",X"52",
X"11",X"8E",X"00",X"ED",X"52",X"01",X"10",X"00",X"18",X"AC",X"3A",X"00",X"E3",X"FE",X"06",X"D2",
X"B8",X"08",X"21",X"05",X"06",X"DD",X"7E",X"00",X"FE",X"2A",X"30",X"03",X"21",X"0B",X"02",X"FD",
X"21",X"30",X"E3",X"11",X"10",X"00",X"06",X"04",X"FD",X"7E",X"00",X"FE",X"0F",X"20",X"14",X"FD",
X"7E",X"07",X"DD",X"96",X"07",X"FE",X"0A",X"30",X"0A",X"FD",X"7E",X"03",X"DD",X"96",X"03",X"94",
X"BD",X"38",X"2B",X"FD",X"19",X"10",X"E1",X"3A",X"07",X"E3",X"DD",X"96",X"07",X"FE",X"F0",X"DA",
X"B8",X"08",X"57",X"3A",X"03",X"E3",X"DD",X"96",X"03",X"D6",X"04",X"FE",X"EA",X"DA",X"B8",X"08",
X"3A",X"04",X"D0",X"CB",X"77",X"CA",X"B8",X"08",X"CD",X"52",X"08",X"C3",X"FD",X"16",X"FD",X"34",
X"00",X"DD",X"7E",X"0D",X"FE",X"37",X"38",X"11",X"DD",X"36",X"0C",X"00",X"DD",X"36",X"00",X"2D",
X"DD",X"36",X"0A",X"0A",X"DD",X"36",X"0D",X"4F",X"C9",X"21",X"C9",X"E1",X"01",X"01",X"05",X"FE",
X"31",X"30",X"07",X"23",X"05",X"FE",X"2A",X"28",X"01",X"23",X"3E",X"11",X"CD",X"75",X"0D",X"35",
X"20",X"08",X"23",X"23",X"23",X"7E",X"FE",X"03",X"30",X"11",X"DD",X"36",X"00",X"20",X"DD",X"36",
X"0A",X"06",X"DD",X"36",X"0D",X"37",X"78",X"CD",X"C2",X"02",X"C9",X"21",X"00",X"FC",X"D6",X"02",
X"C3",X"9D",X"17",X"DD",X"36",X"0D",X"3E",X"CD",X"23",X"16",X"D6",X"03",X"E6",X"F8",X"C6",X"06",
X"DD",X"77",X"0F",X"21",X"D1",X"E1",X"7E",X"A7",X"28",X"13",X"23",X"36",X"01",X"23",X"7E",X"A7",
X"C8",X"C3",X"52",X"08",X"DD",X"36",X"0D",X"43",X"CD",X"23",X"16",X"18",X"E6",X"34",X"DD",X"34",
X"00",X"DD",X"36",X"0A",X"04",X"CD",X"31",X"08",X"C9",X"21",X"D2",X"E1",X"7E",X"23",X"B6",X"A7",
X"C2",X"52",X"08",X"DD",X"7E",X"03",X"FE",X"F8",X"D2",X"52",X"08",X"DD",X"35",X"0A",X"20",X"E5",
X"DD",X"7E",X"0D",X"FE",X"49",X"CA",X"52",X"08",X"DD",X"34",X"0D",X"DD",X"36",X"0A",X"05",X"18",
X"D4",X"3A",X"D3",X"E1",X"A7",X"C2",X"52",X"08",X"DD",X"35",X"0A",X"20",X"C8",X"DD",X"7E",X"0D",
X"FE",X"42",X"30",X"1F",X"DD",X"34",X"0D",X"FE",X"3F",X"20",X"12",X"DD",X"7E",X"0F",X"1F",X"1F",
X"1F",X"E6",X"1F",X"5F",X"16",X"83",X"0E",X"09",X"3E",X"01",X"CD",X"C2",X"02",X"DD",X"36",X"0A",
X"02",X"18",X"A2",X"DD",X"7E",X"07",X"C6",X"08",X"DD",X"77",X"07",X"CD",X"56",X"08",X"DD",X"36",
X"0C",X"00",X"DD",X"36",X"0D",X"81",X"DD",X"36",X"00",X"13",X"C9",X"DD",X"35",X"0A",X"CA",X"52",
X"08",X"C3",X"B8",X"08",X"DD",X"35",X"0F",X"CA",X"4D",X"20",X"DD",X"34",X"00",X"DD",X"7E",X"0C",
X"CB",X"27",X"28",X"3D",X"3F",X"1F",X"E6",X"80",X"DD",X"77",X"0C",X"4F",X"ED",X"5F",X"E6",X"3F",
X"5F",X"16",X"00",X"21",X"26",X"01",X"19",X"0C",X"F2",X"D2",X"1E",X"EB",X"A7",X"21",X"00",X"00",
X"ED",X"52",X"DD",X"74",X"05",X"DD",X"75",X"04",X"EE",X"3F",X"D6",X"20",X"87",X"DD",X"77",X"08",
X"3E",X"00",X"DE",X"00",X"DD",X"77",X"09",X"ED",X"5F",X"E6",X"7F",X"C6",X"20",X"DD",X"77",X"0A",
X"C9",X"06",X"01",X"DD",X"7E",X"07",X"FE",X"44",X"38",X"0C",X"06",X"03",X"FE",X"58",X"30",X"06",
X"ED",X"5F",X"E6",X"02",X"3C",X"47",X"78",X"DD",X"86",X"0C",X"DD",X"77",X"0C",X"ED",X"5F",X"E6",
X"0F",X"C6",X"24",X"DD",X"77",X"0B",X"21",X"66",X"01",X"DD",X"75",X"04",X"DD",X"74",X"05",X"DD",
X"36",X"08",X"00",X"DD",X"36",X"09",X"00",X"C9",X"CD",X"63",X"1C",X"CD",X"DB",X"20",X"DD",X"7E",
X"0C",X"CB",X"27",X"20",X"52",X"DD",X"35",X"0A",X"28",X"49",X"2A",X"D6",X"E0",X"ED",X"5B",X"D8",
X"E0",X"19",X"7A",X"ED",X"5B",X"04",X"E3",X"ED",X"52",X"22",X"D6",X"E0",X"17",X"38",X"2F",X"DD",
X"7E",X"0D",X"06",X"A0",X"D6",X"2A",X"28",X"08",X"06",X"80",X"D6",X"07",X"38",X"02",X"06",X"D0",
X"7C",X"B8",X"30",X"1F",X"2A",X"DA",X"E0",X"ED",X"5B",X"DC",X"E0",X"19",X"22",X"DA",X"E0",X"7C",
X"FE",X"38",X"38",X"0F",X"FE",X"70",X"30",X"0B",X"CD",X"EF",X"20",X"C3",X"4C",X"1D",X"7C",X"FE",
X"16",X"30",X"E1",X"DD",X"35",X"00",X"C9",X"2A",X"D8",X"E0",X"DD",X"5E",X"0B",X"16",X"00",X"A7",
X"ED",X"52",X"22",X"D8",X"E0",X"30",X"16",X"DD",X"7E",X"03",X"D6",X"30",X"FE",X"40",X"3E",X"00",
X"30",X"04",X"ED",X"5F",X"E6",X"80",X"DD",X"86",X"0C",X"3C",X"DD",X"77",X"0C",X"EB",X"2A",X"D6",
X"E0",X"ED",X"52",X"DD",X"7E",X"0C",X"07",X"38",X"02",X"19",X"19",X"ED",X"5B",X"04",X"E3",X"ED",
X"52",X"22",X"D6",X"E0",X"2A",X"DC",X"E0",X"DD",X"5E",X"0B",X"16",X"00",X"0F",X"3D",X"0F",X"30",
X"1A",X"A7",X"ED",X"52",X"38",X"AD",X"22",X"DC",X"E0",X"EB",X"2A",X"DA",X"E0",X"A7",X"ED",X"52",
X"0F",X"38",X"02",X"19",X"19",X"22",X"DA",X"E0",X"C3",X"78",X"1F",X"19",X"18",X"E8",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00");
begin
process(clk)
begin
if rising_edge(clk) then
data <= rom_data(to_integer(unsigned(addr)));
end if;
end process;
end architecture;

View File

@@ -0,0 +1,278 @@
library ieee;
use ieee.std_logic_1164.all,ieee.numeric_std.all;
entity mpa_33k is
port (
clk : in std_logic;
addr : in std_logic_vector(11 downto 0);
data : out std_logic_vector(7 downto 0)
);
end entity;
architecture prom of mpa_33k is
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
signal rom_data: rom := (
X"DD",X"34",X"00",X"DD",X"7E",X"0C",X"E6",X"7F",X"C8",X"CD",X"28",X"1F",X"DD",X"7E",X"00",X"FE",
X"25",X"CA",X"83",X"1F",X"FE",X"24",X"CA",X"AA",X"1E",X"C9",X"CD",X"63",X"1C",X"CD",X"DB",X"20",
X"22",X"D6",X"E0",X"7C",X"D6",X"08",X"FE",X"F0",X"D2",X"52",X"08",X"ED",X"5B",X"DC",X"E0",X"2A",
X"DA",X"E0",X"19",X"22",X"DA",X"E0",X"7C",X"FE",X"30",X"DA",X"52",X"08",X"7A",X"A7",X"FA",X"78",
X"1F",X"21",X"00",X"00",X"A7",X"ED",X"52",X"22",X"DC",X"E0",X"C3",X"78",X"1F",X"3A",X"03",X"E3",
X"16",X"00",X"C6",X"10",X"DD",X"96",X"03",X"30",X"03",X"ED",X"44",X"15",X"1F",X"1F",X"1F",X"E6",
X"1E",X"4F",X"06",X"00",X"21",X"24",X"2D",X"09",X"FE",X"12",X"38",X"01",X"04",X"7E",X"CB",X"7A",
X"28",X"06",X"2F",X"5F",X"78",X"2F",X"47",X"7B",X"DD",X"77",X"04",X"DD",X"70",X"05",X"23",X"5E",
X"16",X"00",X"79",X"FE",X"0A",X"30",X"01",X"14",X"DD",X"72",X"09",X"DD",X"73",X"08",X"DD",X"36",
X"00",X"29",X"2A",X"1A",X"E3",X"DD",X"75",X"0B",X"DD",X"74",X"0F",X"C9",X"CD",X"63",X"1C",X"CD",
X"FB",X"20",X"22",X"D6",X"E0",X"7C",X"2A",X"DC",X"E0",X"C3",X"F1",X"1C",X"DD",X"35",X"0A",X"C2",
X"B8",X"08",X"DD",X"36",X"0A",X"06",X"DD",X"7E",X"0D",X"FE",X"39",X"D2",X"52",X"08",X"DD",X"34",
X"0D",X"C3",X"B8",X"08",X"DD",X"35",X"0A",X"C2",X"B8",X"08",X"DD",X"7E",X"07",X"FE",X"80",X"D2",
X"52",X"08",X"06",X"80",X"DD",X"36",X"00",X"00",X"C3",X"69",X"08",X"DD",X"E5",X"E1",X"11",X"D4",
X"E0",X"01",X"0A",X"00",X"ED",X"B0",X"ED",X"5B",X"D6",X"E0",X"2A",X"D8",X"E0",X"19",X"C9",X"DD",
X"E5",X"D1",X"21",X"D4",X"E0",X"01",X"0A",X"00",X"ED",X"B0",X"C9",X"CD",X"DB",X"20",X"EB",X"DD",
X"6E",X"0B",X"DD",X"66",X"0F",X"ED",X"4B",X"1A",X"E3",X"ED",X"42",X"19",X"C9",X"21",X"51",X"E0",
X"3A",X"00",X"E3",X"3D",X"28",X"11",X"7E",X"A7",X"F0",X"21",X"11",X"E5",X"3E",X"01",X"86",X"27",
X"77",X"23",X"7E",X"CE",X"00",X"27",X"77",X"3E",X"37",X"32",X"51",X"E0",X"11",X"90",X"80",X"FD",
X"21",X"90",X"84",X"0E",X"02",X"CD",X"E7",X"03",X"3A",X"12",X"E5",X"CD",X"BD",X"03",X"3A",X"11",
X"E5",X"C3",X"AE",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"06",X"01",X"03",X"34",X"07",X"49",X"08",X"63",X"0F",X"73",X"07",X"80",X"19",X"92",X"0F",
X"A0",X"06",X"A1",X"03",X"A2",X"2A",X"E0",X"32",X"FF",X"28",X"0F",X"0F",X"3F",X"30",X"40",X"06",
X"41",X"03",X"42",X"2A",X"4C",X"0F",X"92",X"0F",X"9F",X"28",X"A5",X"07",X"B8",X"0F",X"CD",X"0F",
X"E0",X"06",X"E1",X"03",X"00",X"19",X"01",X"08",X"14",X"07",X"20",X"33",X"4F",X"0F",X"7F",X"30",
X"80",X"06",X"81",X"03",X"82",X"22",X"9C",X"1C",X"B6",X"1C",X"C0",X"2A",X"D9",X"1C",X"DF",X"20",
X"03",X"0F",X"08",X"28",X"16",X"07",X"20",X"06",X"21",X"03",X"3C",X"22",X"52",X"1C",X"60",X"32",
X"6E",X"1C",X"7F",X"20",X"A6",X"08",X"B7",X"0F",X"BF",X"30",X"C0",X"06",X"C1",X"03",X"C4",X"08",
X"D3",X"0A",X"E6",X"0E",X"F6",X"0F",X"0C",X"10",X"1C",X"0F",X"2D",X"0E",X"39",X"07",X"4A",X"0F",
X"5B",X"0F",X"60",X"06",X"61",X"03",X"6E",X"19",X"6F",X"09",X"82",X"0F",X"8F",X"09",X"A0",X"2B",
X"A2",X"0F",X"B1",X"0F",X"FF",X"28",X"00",X"06",X"01",X"03",X"02",X"22",X"14",X"1C",X"28",X"1C",
X"40",X"2A",X"54",X"1C",X"5F",X"20",X"9F",X"28",X"A0",X"06",X"A1",X"03",X"A2",X"23",X"A6",X"1C",
X"D3",X"1C",X"E9",X"0F",X"F7",X"0A",X"FF",X"20",X"07",X"10",X"17",X"0E",X"29",X"10",X"35",X"0A",
X"40",X"06",X"41",X"02",X"42",X"1A",X"60",X"03",X"6F",X"12",X"78",X"12",X"88",X"12",X"92",X"12",
X"A3",X"12",X"A4",X"12",X"B1",X"12",X"C2",X"12",X"CD",X"12",X"CE",X"12",X"D9",X"12",X"E0",X"06",
X"E1",X"03",X"EB",X"12",X"FA",X"12",X"06",X"12",X"07",X"12",X"14",X"12",X"23",X"12",X"2C",X"12",
X"37",X"12",X"42",X"12",X"56",X"12",X"57",X"12",X"65",X"12",X"6E",X"12",X"7A",X"12",X"80",X"06",
X"81",X"03",X"85",X"12",X"86",X"12",X"91",X"12",X"92",X"12",X"A3",X"12",X"A4",X"12",X"AE",X"12",
X"B8",X"12",X"B9",X"12",X"CA",X"12",X"CB",X"12",X"D7",X"12",X"E3",X"12",X"F3",X"12",X"00",X"19",
X"20",X"06",X"21",X"03",X"22",X"2C",X"60",X"33",X"9F",X"28",X"BF",X"30",X"C0",X"06",X"C1",X"03",
X"C2",X"24",X"D5",X"1C",X"EA",X"1C",X"00",X"33",X"05",X"1C",X"18",X"1C",X"31",X"1C",X"3F",X"20",
X"48",X"30",X"60",X"06",X"61",X"03",X"7B",X"24",X"87",X"1C",X"99",X"1C",X"A0",X"2B",X"AE",X"1C",
X"C5",X"1C",X"D7",X"1C",X"DF",X"20",X"E0",X"28",X"00",X"06",X"01",X"04",X"13",X"14",X"1E",X"16",
X"2D",X"16",X"2F",X"16",X"3A",X"15",X"4C",X"16",X"4E",X"16",X"58",X"16",X"66",X"16",X"68",X"16",
X"72",X"02",X"73",X"14",X"7E",X"16",X"80",X"19",X"A0",X"86",X"A1",X"03",X"A2",X"34",X"C7",X"0F",
X"EC",X"10",X"0F",X"0A",X"1F",X"30",X"2A",X"10",X"40",X"86",X"41",X"02",X"42",X"19",X"60",X"32",
X"61",X"05",X"80",X"2A",X"BF",X"30",X"C0",X"02",X"DF",X"28",X"E0",X"06",X"E1",X"03",X"E2",X"2B",
X"00",X"23",X"01",X"03",X"2A",X"1C",X"3F",X"28",X"45",X"1C",X"57",X"1C",X"6C",X"1C",X"6D",X"20",
X"80",X"06",X"81",X"02",X"A0",X"03",X"A8",X"10",X"B4",X"0A",X"C5",X"07",X"DC",X"0F",X"E3",X"09",
X"F2",X"07",X"0A",X"10",X"0D",X"09",X"1C",X"08",X"20",X"06",X"21",X"03",X"2C",X"0F",X"2F",X"0F",
X"32",X"0A",X"45",X"13",X"54",X"13",X"66",X"13",X"77",X"0A",X"8A",X"13",X"98",X"13",X"A7",X"13",
X"B4",X"13",X"C0",X"06",X"C1",X"03",X"C5",X"09",X"D4",X"0A",X"E0",X"02",X"E7",X"0A",X"F5",X"09",
X"00",X"04",X"1C",X"16",X"2A",X"15",X"2C",X"15",X"35",X"16",X"3D",X"14",X"40",X"02",X"48",X"14",
X"4A",X"14",X"60",X"86",X"61",X"02",X"62",X"19",X"80",X"03",X"81",X"2C",X"A0",X"33",X"DF",X"28",
X"FF",X"30",X"00",X"86",X"01",X"03",X"02",X"2C",X"40",X"23",X"57",X"1C",X"5F",X"28",X"6C",X"1C",
X"83",X"1C",X"9A",X"1C",X"A0",X"86",X"A1",X"03",X"A2",X"23",X"AE",X"1C",X"C5",X"1C",X"D5",X"1C",
X"E0",X"33",X"E8",X"1C",X"F5",X"0F",X"FF",X"20",X"0A",X"09",X"1C",X"0A",X"28",X"30",X"32",X"10",
X"40",X"06",X"42",X"02",X"5B",X"2B",X"60",X"03",X"80",X"33",X"9F",X"28",X"D0",X"30",X"E0",X"06",
X"E1",X"03",X"E2",X"1B",X"20",X"17",X"60",X"18",X"80",X"06",X"81",X"03",X"C6",X"13",X"D2",X"0F",
X"DD",X"0F",X"EE",X"0E",X"FC",X"0A",X"01",X"13",X"0D",X"09",X"20",X"06",X"21",X"03",X"22",X"13",
X"2B",X"13",X"39",X"13",X"49",X"13",X"4C",X"0A",X"5C",X"0F",X"6A",X"0F",X"79",X"13",X"84",X"13",
X"86",X"0A",X"95",X"0F",X"A4",X"13",X"B3",X"13",X"B5",X"09",X"C0",X"06",X"C1",X"02",X"C2",X"19",
X"E0",X"03",X"E1",X"2C",X"EA",X"07",X"F9",X"09",X"07",X"0A",X"19",X"0F",X"2A",X"0F",X"39",X"09",
X"48",X"28",X"54",X"0F",X"60",X"06",X"61",X"03",X"7B",X"23",X"84",X"1C",X"92",X"1C",X"A0",X"23",
X"A3",X"1C",X"B3",X"1C",X"C3",X"1C",X"DC",X"1C",X"EF",X"1C",X"FF",X"20",X"00",X"06",X"01",X"03",
X"07",X"10",X"0A",X"0A",X"1A",X"0F",X"2C",X"09",X"32",X"0F",X"41",X"07",X"4F",X"08",X"5C",X"0F",
X"63",X"09",X"70",X"07",X"7D",X"0E",X"80",X"19",X"A0",X"06",X"A1",X"03",X"A2",X"24",X"AF",X"1C",
X"BC",X"1C",X"C0",X"2C",X"CA",X"1C",X"D9",X"1C",X"E8",X"1C",X"F6",X"1C",X"FF",X"28",X"05",X"0A",
X"10",X"1C",X"11",X"20",X"25",X"0C",X"32",X"0F",X"35",X"0C",X"40",X"06",X"41",X"03",X"42",X"19",
X"60",X"33",X"80",X"2B",X"83",X"0A",X"92",X"07",X"BF",X"30",X"C6",X"0F",X"C9",X"0A",X"D9",X"09",
X"DF",X"28",X"E0",X"06",X"E1",X"03",X"E2",X"24",X"EA",X"1C",X"04",X"0A",X"14",X"0F",X"1C",X"1C",
X"24",X"20",X"34",X"09",X"45",X"0F",X"49",X"0F",X"4B",X"0C",X"58",X"0C",X"67",X"0C",X"75",X"0C",
X"7A",X"0F",X"80",X"06",X"81",X"02",X"90",X"04",X"AD",X"16",X"B7",X"15",X"BE",X"14",X"C5",X"16",
X"C7",X"16",X"D4",X"14",X"DB",X"15",X"E6",X"14",X"E8",X"14",X"E9",X"16",X"F0",X"14",X"F1",X"16",
X"F2",X"14",X"02",X"15",X"04",X"15",X"0E",X"16",X"0F",X"02",X"10",X"14",X"13",X"16",X"17",X"14",
X"19",X"14",X"20",X"86",X"21",X"03",X"22",X"19",X"40",X"2C",X"41",X"33",X"42",X"03",X"BE",X"28",
X"BF",X"30",X"C0",X"86",X"C1",X"03",X"C2",X"1A",X"E8",X"12",X"F2",X"12",X"F4",X"12",X"FD",X"12",
X"08",X"12",X"13",X"12",X"22",X"12",X"23",X"12",X"2E",X"12",X"36",X"12",X"42",X"12",X"4E",X"12",
X"57",X"12",X"60",X"86",X"61",X"03",X"65",X"12",X"67",X"12",X"72",X"12",X"7A",X"12",X"83",X"12",
X"8F",X"12",X"97",X"12",X"A2",X"12",X"AB",X"12",X"B7",X"12",X"C2",X"12",X"D0",X"12",X"D8",X"12",
X"E4",X"12",X"00",X"86",X"01",X"03",X"20",X"25",X"25",X"09",X"33",X"1C",X"40",X"2C",X"48",X"10",
X"54",X"1C",X"65",X"0F",X"6F",X"1C",X"7F",X"20",X"80",X"02",X"88",X"28",X"A0",X"86",X"A1",X"05",
X"BB",X"35",X"C0",X"2C",X"DF",X"02",X"FF",X"30",X"0A",X"10",X"19",X"0A",X"1F",X"28",X"20",X"03",
X"29",X"0F",X"2C",X"0A",X"32",X"0F",X"3A",X"0F",X"40",X"06",X"41",X"02",X"47",X"0F",X"4A",X"0A",
X"50",X"0F",X"60",X"03",X"65",X"07",X"79",X"08",X"80",X"17",X"8A",X"0A",X"A0",X"18",X"C8",X"09",
X"E0",X"06",X"E1",X"03",X"EF",X"10",X"F4",X"0F",X"F7",X"0A",X"06",X"0F",X"11",X"10",X"14",X"09",
X"1A",X"1A",X"3A",X"12",X"42",X"12",X"44",X"12",X"4E",X"12",X"57",X"12",X"59",X"12",X"63",X"12",
X"6B",X"12",X"80",X"06",X"81",X"02",X"8F",X"13",X"92",X"0A",X"A0",X"03",X"A5",X"10",X"A8",X"07",
X"B2",X"0F",X"B5",X"0F",X"C5",X"13",X"D4",X"09",X"E4",X"0F",X"E6",X"0C",X"F4",X"0C",X"04",X"10",
X"06",X"0C",X"13",X"0C",X"20",X"06",X"21",X"03",X"22",X"10",X"23",X"19",X"28",X"10",X"2A",X"0A",
X"3B",X"10",X"40",X"25",X"41",X"33",X"4A",X"1C",X"55",X"1C",X"65",X"1C",X"74",X"1C",X"82",X"0F",
X"88",X"1C",X"95",X"0F",X"A5",X"1C",X"A8",X"30",X"B1",X"1C",X"B2",X"20",X"BE",X"0F",X"C0",X"06",
X"C1",X"02",X"C2",X"1B",X"CA",X"10",X"E0",X"03",X"E6",X"0A",X"F0",X"17",X"03",X"08",X"12",X"18",
X"13",X"09",X"40",X"1A",X"4A",X"0A",X"60",X"06",X"61",X"03",X"74",X"12",X"85",X"12",X"87",X"12",
X"92",X"12",X"94",X"12",X"A9",X"12",X"AA",X"12",X"B4",X"10",X"BD",X"12",X"C3",X"12",X"CC",X"0F",
X"D5",X"12",X"D7",X"12",X"E5",X"12",X"E7",X"12",X"F4",X"12",X"00",X"06",X"01",X"02",X"02",X"25",
X"03",X"2C",X"0A",X"1C",X"17",X"1C",X"20",X"03",X"27",X"10",X"37",X"1C",X"48",X"1C",X"59",X"1C",
X"6A",X"0A",X"79",X"1C",X"80",X"28",X"8D",X"0F",X"90",X"1C",X"91",X"20",X"A0",X"06",X"A1",X"03",
X"AD",X"0C",X"B2",X"0F",X"BB",X"0C",X"CB",X"0C",X"D8",X"0F",X"E5",X"0F",X"E7",X"10",X"F1",X"0F",
X"F9",X"0F",X"08",X"0C",X"0D",X"0F",X"16",X"0C",X"20",X"19",X"25",X"0F",X"28",X"09",X"36",X"10",
X"40",X"06",X"41",X"02",X"42",X"25",X"4A",X"1C",X"5A",X"0F",X"60",X"03",X"61",X"2C",X"65",X"10",
X"79",X"1C",X"88",X"1C",X"94",X"1C",X"A2",X"1C",X"AE",X"1C",X"BB",X"1C",X"BF",X"20",X"CA",X"0F",
X"D0",X"28",X"DC",X"10",X"E0",X"06",X"E1",X"03",X"E8",X"0F",X"EA",X"10",X"EC",X"0A",X"F9",X"0F",
X"08",X"13",X"0A",X"07",X"17",X"0F",X"1A",X"0A",X"2A",X"0C",X"37",X"10",X"3C",X"0C",X"43",X"02",
X"80",X"06",X"00",X"06",X"20",X"03",X"28",X"10",X"34",X"0A",X"47",X"0C",X"55",X"0C",X"5A",X"0F",
X"63",X"09",X"72",X"07",X"85",X"13",X"94",X"13",X"A0",X"06",X"A1",X"04",X"B3",X"14",X"BF",X"16",
X"CD",X"16",X"DA",X"15",X"EC",X"16",X"EE",X"16",X"F8",X"16",X"F9",X"03",X"00",X"2B",X"20",X"23",
X"40",X"86",X"4A",X"1C",X"50",X"28",X"65",X"1C",X"77",X"1C",X"7E",X"05",X"7F",X"20",X"80",X"33",
X"C8",X"03",X"CF",X"30",X"E0",X"06",X"00",X"17",X"20",X"18",X"6A",X"0A",X"73",X"07",X"01",X"02",
X"20",X"01",X"34",X"C0",X"3A",X"C2",X"48",X"20",X"54",X"C2",X"59",X"20",X"64",X"C2",X"69",X"E2",
X"6D",X"C2",X"76",X"22",X"82",X"20",X"90",X"C0",X"96",X"C0",X"9C",X"C0",X"A2",X"C0",X"BE",X"C1",
X"CB",X"C0",X"D8",X"20",X"E6",X"C2",X"F4",X"22",X"00",X"C2",X"05",X"FF",X"4D",X"00",X"4E",X"02",
X"5E",X"22",X"77",X"22",X"8A",X"22",X"8B",X"FF",X"D8",X"00",X"E0",X"02",X"45",X"22",X"55",X"C2",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"21",X"46",X"E0",X"35",X"FB",X"78",X"32",X"13",X"E5",X"FE",X"05",X"CA",X"D2",X"27",X"A7",X"C2",
X"5E",X"28",X"CD",X"FA",X"29",X"3E",X"1E",X"CD",X"75",X"0D",X"21",X"0F",X"E5",X"36",X"00",X"23",
X"34",X"CD",X"48",X"29",X"CD",X"E8",X"05",X"21",X"24",X"2C",X"CD",X"00",X"03",X"CD",X"BA",X"28",
X"21",X"0C",X"2C",X"CD",X"00",X"03",X"3A",X"13",X"E5",X"17",X"17",X"17",X"17",X"26",X"00",X"E6",
X"F0",X"6F",X"20",X"01",X"24",X"22",X"98",X"E0",X"CD",X"71",X"29",X"2A",X"96",X"E0",X"56",X"2B",
X"5E",X"2A",X"11",X"E5",X"A7",X"ED",X"52",X"30",X"0E",X"19",X"EB",X"2A",X"96",X"E0",X"72",X"2B",
X"73",X"21",X"39",X"2C",X"CD",X"4E",X"03",X"2A",X"94",X"E0",X"ED",X"5B",X"11",X"E5",X"7D",X"D6",
X"01",X"27",X"6F",X"30",X"01",X"25",X"22",X"94",X"E0",X"A7",X"ED",X"52",X"38",X"50",X"CD",X"68",
X"29",X"2A",X"98",X"E0",X"7D",X"C6",X"01",X"27",X"6F",X"30",X"01",X"24",X"22",X"98",X"E0",X"CD",
X"71",X"29",X"3E",X"10",X"CD",X"75",X"0D",X"3E",X"0C",X"CD",X"EA",X"05",X"18",X"C9",X"3E",X"1D",
X"CD",X"75",X"0D",X"CD",X"D6",X"29",X"CD",X"12",X"0D",X"CD",X"48",X"29",X"3E",X"30",X"CD",X"EA",
X"05",X"CD",X"BA",X"28",X"38",X"0D",X"21",X"E4",X"2B",X"CD",X"4E",X"03",X"3A",X"F9",X"E0",X"3C",
X"C3",X"F9",X"27",X"21",X"F9",X"2B",X"CD",X"4E",X"03",X"CD",X"E8",X"05",X"18",X"0E",X"CD",X"E8",
X"05",X"11",X"01",X"E5",X"21",X"98",X"E0",X"06",X"02",X"CD",X"36",X"06",X"21",X"00",X"00",X"22",
X"11",X"E5",X"21",X"13",X"E5",X"7E",X"A7",X"C2",X"B7",X"0B",X"36",X"05",X"21",X"A2",X"23",X"22",
X"16",X"E5",X"3E",X"1A",X"32",X"0E",X"E5",X"C3",X"B7",X"0B",X"CD",X"E8",X"05",X"CD",X"5A",X"29",
X"3A",X"10",X"E5",X"D6",X"02",X"28",X"07",X"3E",X"0A",X"FA",X"CE",X"28",X"3E",X"05",X"5F",X"3A",
X"13",X"E5",X"01",X"80",X"00",X"FE",X"08",X"30",X"09",X"01",X"00",X"01",X"FE",X"03",X"30",X"02",
X"0E",X"20",X"ED",X"43",X"94",X"E0",X"83",X"87",X"5F",X"FE",X"0A",X"20",X"09",X"3A",X"10",X"E5",
X"FE",X"03",X"28",X"02",X"1E",X"14",X"16",X"00",X"21",X"0C",X"E0",X"19",X"7E",X"23",X"22",X"96",
X"E0",X"B6",X"20",X"03",X"70",X"2B",X"71",X"21",X"79",X"2B",X"CD",X"4E",X"03",X"CD",X"81",X"29",
X"A7",X"20",X"02",X"3E",X"1A",X"C6",X"40",X"1B",X"1B",X"12",X"21",X"94",X"2B",X"CD",X"4E",X"03",
X"21",X"12",X"E5",X"13",X"CD",X"9A",X"03",X"21",X"B0",X"2B",X"CD",X"4E",X"03",X"CD",X"68",X"29",
X"21",X"CC",X"2B",X"CD",X"4E",X"03",X"2A",X"96",X"E0",X"13",X"CD",X"9A",X"03",X"2A",X"94",X"E0",
X"ED",X"5B",X"11",X"E5",X"A7",X"ED",X"52",X"C9",X"21",X"00",X"E1",X"01",X"A4",X"00",X"CD",X"FA",
X"05",X"01",X"20",X"02",X"21",X"E0",X"80",X"C3",X"FA",X"05",X"21",X"00",X"E1",X"01",X"C6",X"00",
X"CD",X"FA",X"05",X"01",X"20",X"03",X"18",X"EC",X"11",X"D9",X"81",X"21",X"95",X"E0",X"C3",X"9A",
X"03",X"21",X"99",X"E0",X"11",X"97",X"82",X"CD",X"93",X"03",X"EB",X"36",X"30",X"23",X"36",X"30",
X"C9",X"3A",X"0E",X"E5",X"FE",X"1A",X"D8",X"D6",X"1A",X"C9",X"21",X"CC",X"80",X"11",X"CC",X"84",
X"01",X"02",X"10",X"CD",X"E7",X"03",X"79",X"36",X"21",X"12",X"23",X"13",X"10",X"F9",X"21",X"CC",
X"80",X"06",X"05",X"34",X"23",X"23",X"23",X"10",X"FA",X"36",X"1B",X"CD",X"81",X"29",X"21",X"CC",
X"80",X"06",X"05",X"FE",X"05",X"38",X"0C",X"16",X"03",X"36",X"29",X"23",X"15",X"20",X"FA",X"D6",
X"05",X"10",X"F0",X"57",X"87",X"87",X"82",X"5F",X"FE",X"08",X"38",X"10",X"28",X"01",X"3D",X"36",
X"29",X"23",X"D6",X"08",X"18",X"F2",X"2A",X"F4",X"E0",X"3A",X"F6",X"E0",X"3C",X"57",X"C6",X"21",
X"CB",X"66",X"28",X"07",X"D6",X"06",X"FE",X"20",X"20",X"01",X"3D",X"77",X"7A",X"FE",X"08",X"38",
X"02",X"AF",X"2C",X"32",X"F6",X"E0",X"22",X"F4",X"E0",X"C9",X"21",X"CC",X"80",X"06",X"0F",X"36",
X"29",X"23",X"10",X"FB",X"36",X"1F",X"3E",X"5A",X"32",X"52",X"80",X"C9",X"00",X"00",X"00",X"20",
X"00",X"00",X"50",X"00",X"00",X"80",X"00",X"00",X"00",X"01",X"00",X"00",X"02",X"00",X"00",X"03",
X"00",X"00",X"05",X"00",X"00",X"08",X"00",X"00",X"10",X"00",X"08",X"81",X"08",X"54",X"4F",X"20",
X"43",X"4F",X"55",X"4E",X"54",X"49",X"4E",X"55",X"45",X"20",X"47",X"41",X"4D",X"45",X"22",X"2D",
X"82",X"08",X"54",X"49",X"4D",X"45",X"21",X"46",X"81",X"08",X"42",X"45",X"47",X"49",X"4E",X"4E",
X"45",X"52",X"20",X"43",X"4F",X"55",X"52",X"53",X"45",X"20",X"47",X"4F",X"20",X"5B",X"21",X"46",
X"81",X"00",X"43",X"48",X"41",X"4D",X"50",X"49",X"4F",X"4E",X"20",X"43",X"4F",X"55",X"52",X"53",
X"45",X"20",X"31",X"20",X"47",X"4F",X"20",X"5B",X"21",X"4C",X"82",X"00",X"46",X"52",X"45",X"45",
X"20",X"50",X"4C",X"41",X"59",X"21",X"EA",X"81",X"00",X"4F",X"4E",X"4C",X"59",X"20",X"31",X"20",
X"50",X"4C",X"41",X"59",X"45",X"52",X"21",X"EA",X"81",X"00",X"31",X"20",X"4F",X"52",X"20",X"32",
X"20",X"50",X"4C",X"41",X"59",X"45",X"52",X"53",X"21",X"06",X"82",X"00",X"50",X"49",X"43",X"54",
X"55",X"52",X"45",X"20",X"4E",X"55",X"4D",X"42",X"45",X"52",X"20",X"53",X"45",X"54",X"22",X"4A",
X"82",X"00",X"4E",X"45",X"58",X"54",X"20",X"31",X"50",X"20",X"42",X"55",X"54",X"54",X"4F",X"4E",
X"21",X"6A",X"81",X"00",X"20",X"50",X"55",X"53",X"48",X"20",X"42",X"55",X"54",X"54",X"4F",X"4E",
X"20",X"21",X"D4",X"83",X"00",X"43",X"52",X"45",X"44",X"49",X"54",X"20",X"21",X"88",X"81",X"00",
X"47",X"41",X"4D",X"45",X"20",X"4F",X"56",X"45",X"52",X"20",X"50",X"4C",X"41",X"59",X"45",X"52",
X"20",X"21",X"0C",X"82",X"00",X"47",X"41",X"4D",X"45",X"20",X"4F",X"56",X"45",X"52",X"21",X"2B",
X"80",X"02",X"04",X"25",X"0F",X"14",X"05",X"22",X"41",X"80",X"01",X"0C",X"0D",X"25",X"06",X"00",
X"22",X"49",X"80",X"09",X"3F",X"22",X"4B",X"80",X"02",X"06",X"50",X"4F",X"49",X"4E",X"54",X"25",
X"04",X"00",X"12",X"25",X"05",X"00",X"07",X"22",X"6B",X"80",X"02",X"06",X"25",X"09",X"00",X"12",
X"25",X"05",X"00",X"07",X"22",X"8B",X"80",X"02",X"06",X"0E",X"0F",X"10",X"11",X"25",X"05",X"00",
X"12",X"25",X"05",X"00",X"07",X"22",X"AB",X"80",X"02",X"08",X"16",X"15",X"15",X"17",X"15",X"15",
X"18",X"15",X"15",X"19",X"15",X"15",X"1A",X"15",X"15",X"09",X"22",X"81",X"80",X"01",X"31",X"50",
X"3F",X"21",X"A1",X"80",X"01",X"32",X"50",X"3F",X"21",X"25",X"81",X"01",X"54",X"49",X"4D",X"45",
X"20",X"54",X"4F",X"20",X"52",X"45",X"41",X"43",X"48",X"20",X"50",X"4F",X"49",X"4E",X"54",X"20",
X"5E",X"00",X"5E",X"21",X"84",X"81",X"00",X"59",X"4F",X"55",X"52",X"20",X"54",X"49",X"4D",X"45",
X"20",X"20",X"20",X"20",X"20",X"20",X"20",X"20",X"20",X"20",X"22",X"97",X"81",X"01",X"5D",X"21",
X"C4",X"81",X"00",X"54",X"48",X"45",X"20",X"41",X"56",X"45",X"52",X"41",X"47",X"45",X"20",X"54",
X"49",X"4D",X"45",X"20",X"20",X"20",X"22",X"D7",X"81",X"01",X"5D",X"21",X"04",X"82",X"01",X"54",
X"4F",X"50",X"20",X"52",X"45",X"43",X"4F",X"52",X"44",X"20",X"20",X"20",X"20",X"20",X"20",X"20",
X"20",X"20",X"5D",X"21",X"85",X"82",X"00",X"47",X"4F",X"4F",X"44",X"20",X"42",X"4F",X"4E",X"55",
X"53",X"20",X"50",X"4F",X"49",X"4E",X"54",X"53",X"21",X"67",X"82",X"00",X"53",X"4F",X"52",X"52",
X"59",X"20",X"4E",X"4F",X"20",X"42",X"4F",X"4E",X"55",X"53",X"5B",X"21",X"65",X"82",X"01",X"53",
X"50",X"45",X"43",X"49",X"41",X"4C",X"20",X"42",X"4F",X"4E",X"55",X"53",X"20",X"50",X"4F",X"49",
X"4E",X"54",X"53",X"21",X"25",X"81",X"00",X"43",X"4F",X"4E",X"47",X"52",X"41",X"54",X"55",X"4C",
X"41",X"54",X"49",X"4F",X"4E",X"53",X"20",X"5B",X"21",X"E5",X"82",X"01",X"59",X"4F",X"55",X"20",
X"48",X"41",X"56",X"45",X"20",X"42",X"52",X"4F",X"4B",X"45",X"4E",X"20",X"41",X"20",X"52",X"45",
X"43",X"4F",X"52",X"44",X"20",X"5B",X"21",X"6A",X"81",X"00",X"49",X"4E",X"53",X"45",X"52",X"54",
X"20",X"43",X"4F",X"49",X"4E",X"20",X"21",X"C7",X"81",X"00",X"31",X"20",X"50",X"4C",X"41",X"59",
X"45",X"52",X"20",X"20",X"20",X"31",X"20",X"43",X"4F",X"49",X"4E",X"20",X"21",X"C5",X"81",X"00",
X"41",X"20",X"5F",X"20",X"31",X"20",X"50",X"4C",X"41",X"59",X"45",X"52",X"20",X"20",X"20",X"31",
X"20",X"43",X"4F",X"49",X"4E",X"20",X"21",X"C8",X"82",X"00",X"5C",X"31",X"39",X"38",X"32",X"20",
X"49",X"52",X"45",X"4D",X"20",X"43",X"4F",X"52",X"50",X"2F",X"21",X"76",X"80",X"02",X"3A",X"3B",
X"3C",X"3D",X"3E",X"21",X"F0",X"F0",X"ED",X"F0",X"F0",X"FB",X"FB",X"FB",X"F0",X"E8",X"F0",X"F0",
X"F0",X"EE",X"F0",X"F0",X"F0",X"F0",X"E0",X"F0",X"F0",X"FB",X"FB",X"FB",X"F0",X"F0",X"F0",X"F2",
X"F2",X"F0",X"F0",X"F0",X"E9",X"F2",X"EF",X"E3",X"D2",X"FC",X"FD",X"FE",X"E0",X"D4",X"D3",X"EB",
X"FF",X"D5",X"F1",X"E5",X"E2",X"D0",X"D6",X"E6",X"D7",X"F0",X"E1",X"D8",X"F9",X"FB",X"F0",X"F2",
X"D9",X"EC",X"FC",X"D1",X"34",X"32",X"32",X"43",X"34",X"23",X"32",X"11",X"23",X"01",X"00",X"00",
X"00",X"00",X"00",X"00",X"12",X"12",X"12",X"24",X"77",X"21",X"10",X"56",X"21",X"10",X"34",X"21",
X"23",X"23",X"21",X"31",X"22",X"21",X"11",X"00",X"77",X"77",X"66",X"65",X"55",X"44",X"43",X"33",
X"43",X"33",X"21",X"31",X"00",X"9A",X"51",X"98",X"8D",X"5F",X"B6",X"30",X"D2",X"06",X"E3",X"E3",
X"EF",X"C7",X"F7",X"B0",X"FC",X"9E",X"00",X"8E",X"03",X"82",X"06",X"77",X"07",X"6E",X"08",X"66",
X"09",X"5F",X"0A",X"59",X"03",X"48",X"81",X"B0",X"B1",X"B2",X"B3",X"B4",X"02",X"B5",X"B6",X"B7",
X"B8",X"02",X"B9",X"BA",X"BB",X"BC",X"BD",X"02",X"BE",X"BF",X"C0",X"C1",X"C2",X"02",X"C3",X"C4",
X"C5",X"C6",X"BD",X"02",X"03",X"6D",X"81",X"C7",X"C8",X"C9",X"CA",X"02",X"CB",X"BF",X"CC",X"02",
X"CD",X"BC",X"CE",X"CF",X"02",X"D0",X"D1",X"D2",X"CA",X"02",X"D3",X"D4",X"D5",X"C2",X"02",X"D6",
X"D7",X"BC",X"BD",X"02",X"D8",X"C0",X"C1",X"C2",X"02",X"D9",X"BC",X"C5",X"DA",X"02",X"DB",X"C1",
X"DC",X"02",X"03",X"06",X"82",X"B0",X"B1",X"B2",X"B3",X"B4",X"02",X"DD",X"DE",X"DF",X"B8",X"02",
X"E0",X"E1",X"E2",X"02",X"E3",X"E4",X"E5",X"02",X"00",X"E6",X"B2",X"E7",X"E8",X"02",X"00",X"E9",
X"EA",X"EB",X"EC",X"02",X"00",X"ED",X"EE",X"EF",X"B4",X"02",X"00",X"F0",X"F1",X"F2",X"02",X"F3",
X"F4",X"F5",X"BF",X"02",X"F7",X"F8",X"F9",X"B0",X"FA",X"02",X"00",X"B2",X"B3",X"FB",X"FC",X"02",
X"00",X"FD",X"B8",X"02",X"00",X"FE",X"BC",X"CE",X"CF",X"02",X"00",X"D0",X"D1",X"D2",X"CA",X"02",
X"00",X"D3",X"D4",X"D5",X"C2",X"02",X"00",X"D6",X"D7",X"BC",X"BD",X"02",X"C5",X"BF",X"C0",X"FF",
X"EC",X"02",X"C3",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"19",X"2F",X"08",X"02",X"18",X"2F",X"08",X"02",X"15",X"38",X"0D",X"04",X"15",X"38",X"0D",X"04",
X"15",X"42",X"10",X"04",X"15",X"33",X"10",X"00",X"01",X"00",X"0E",X"04",X"09",X"00",X"24",X"04",
X"0D",X"00",X"24",X"04",X"11",X"01",X"08",X"06",X"17",X"01",X"08",X"06",X"1D",X"01",X"08",X"06",
X"23",X"01",X"0A",X"02",X"25",X"01",X"0A",X"02",X"27",X"01",X"0C",X"01",X"28",X"01",X"1C",X"01",
X"29",X"01",X"1C",X"01",X"2A",X"01",X"1C",X"01",X"2B",X"01",X"1C",X"01",X"2C",X"01",X"1C",X"01",
X"2D",X"04",X"00",X"01",X"2E",X"04",X"00",X"01",X"2F",X"04",X"00",X"01",X"30",X"04",X"00",X"01",
X"31",X"04",X"00",X"01",X"31",X"84",X"00",X"01",X"31",X"C4",X"00",X"01",X"31",X"44",X"00",X"01",
X"32",X"04",X"00",X"01",X"33",X"04",X"00",X"01",X"34",X"04",X"00",X"01",X"33",X"C4",X"00",X"01",
X"34",X"C4",X"00",X"01",X"36",X"04",X"00",X"01",X"36",X"84",X"00",X"01",X"37",X"04",X"00",X"01",
X"36",X"C4",X"00",X"01",X"36",X"44",X"00",X"01",X"37",X"C4",X"00",X"01",X"38",X"09",X"00",X"01",
X"39",X"00",X"00",X"01",X"3A",X"09",X"02",X"02",X"05",X"00",X"2C",X"01",X"3D",X"0A",X"28",X"01",
X"3E",X"01",X"00",X"01",X"3F",X"01",X"00",X"01",X"40",X"01",X"00",X"01",X"41",X"01",X"00",X"01",
X"42",X"07",X"1A",X"80",X"45",X"07",X"1A",X"80",X"46",X"07",X"1A",X"80",X"47",X"07",X"1A",X"80",
X"47",X"47",X"1A",X"80",X"46",X"47",X"1A",X"80",X"45",X"47",X"1A",X"80",X"43",X"07",X"1A",X"01",
X"44",X"07",X"1A",X"01",X"43",X"87",X"1A",X"01",X"44",X"47",X"1A",X"01",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"48",X"01",X"1A",X"80",X"49",X"01",X"1A",X"80",X"4A",X"01",X"1A",X"80",
X"35",X"0A",X"2A",X"80",X"4B",X"01",X"1A",X"80",X"4C",X"01",X"1A",X"80",X"4D",X"01",X"1A",X"80",
X"4E",X"01",X"00",X"C0",X"4F",X"01",X"10",X"C0",X"53",X"01",X"10",X"C0",X"57",X"01",X"10",X"C0",
X"5B",X"01",X"12",X"C0",X"61",X"03",X"1E",X"C0",X"62",X"03",X"1E",X"C0",X"63",X"03",X"1E",X"C0",
X"64",X"03",X"14",X"C0",X"68",X"03",X"14",X"C0",X"6C",X"03",X"16",X"C0",X"6E",X"03",X"16",X"C0",
X"78",X"08",X"22",X"02",X"70",X"02",X"04",X"04",X"73",X"02",X"06",X"04",X"74",X"02",X"18",X"04",
X"75",X"02",X"20",X"04",X"7A",X"01",X"1A",X"80",X"4B",X"41",X"1A",X"80",X"4C",X"41",X"1A",X"80",
X"7B",X"09",X"26",X"02",X"07",X"00",X"2C",X"01",X"7D",X"0E",X"2E",X"01",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"A3");
begin
process(clk)
begin
if rising_edge(clk) then
data <= rom_data(to_integer(unsigned(addr)));
end if;
end process;
end architecture;

View File

@@ -0,0 +1,278 @@
library ieee;
use ieee.std_logic_1164.all,ieee.numeric_std.all;
entity mpa_43j is
port (
clk : in std_logic;
addr : in std_logic_vector(11 downto 0);
data : out std_logic_vector(7 downto 0)
);
end entity;
architecture prom of mpa_43j is
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
signal rom_data: rom := (
X"01",X"02",X"02",X"03",X"03",X"04",X"04",X"05",X"60",X"01",X"58",X"01",X"50",X"01",X"48",X"01",
X"40",X"01",X"38",X"01",X"39",X"10",X"39",X"20",X"39",X"30",X"39",X"48",X"39",X"60",X"39",X"70",
X"39",X"80",X"39",X"98",X"39",X"B0",X"39",X"D0",X"B4",X"38",X"FF",X"58",X"8E",X"28",X"B4",X"38",
X"00",X"19",X"24",X"2C",X"33",X"39",X"3E",X"43",X"48",X"4C",X"50",X"54",X"58",X"5B",X"5F",X"62",
X"65",X"68",X"6B",X"6E",X"71",X"74",X"77",X"79",X"7C",X"7E",X"50",X"5E",X"6B",X"87",X"87",X"A2",
X"A2",X"A3",X"02",X"00",X"A4",X"A5",X"02",X"00",X"A6",X"A7",X"02",X"A8",X"A9",X"01",X"AA",X"02",
X"AB",X"AC",X"AD",X"02",X"00",X"AE",X"AF",X"02",X"B0",X"B1",X"01",X"B2",X"B3",X"B4",X"02",X"00",
X"B5",X"B6",X"B7",X"02",X"00",X"00",X"00",X"B8",X"B9",X"02",X"00",X"00",X"00",X"BA",X"02",X"00",
X"BB",X"BC",X"BD",X"02",X"BE",X"BF",X"01",X"C0",X"C1",X"02",X"00",X"C2",X"C3",X"C4",X"02",X"00",
X"00",X"00",X"C5",X"C6",X"02",X"00",X"00",X"00",X"C7",X"C8",X"02",X"00",X"C9",X"CA",X"CB",X"02",
X"CC",X"01",X"DA",X"DB",X"DC",X"02",X"00",X"00",X"F0",X"03",X"00",X"00",X"F0",X"02",X"00",X"00",
X"F0",X"02",X"DD",X"DE",X"DF",X"01",X"0F",X"04",X"05",X"0F",X"24",X"27",X"0F",X"43",X"48",X"11",
X"48",X"4E",X"12",X"4E",X"53",X"10",X"63",X"68",X"13",X"68",X"6C",X"0F",X"6C",X"6D",X"14",X"6D",
X"6E",X"12",X"6E",X"74",X"10",X"89",X"8E",X"FF",X"0C",X"03",X"03",X"03",X"02",X"01",X"FF",X"3B",
X"FF",X"70",X"FC",X"24",X"B9",X"FF",X"10",X"FC",X"24",X"3B",X"01",X"A0",X"FC",X"53",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"07",X"0A",X"0D",X"0F",X"11",X"13",X"15",X"16",X"18",X"19",X"1A",X"1B",X"1D",X"1E",X"1F",X"20",
X"21",X"22",X"23",X"24",X"25",X"26",X"27",X"28",X"28",X"28",X"28",X"28",X"FF",X"1F",X"01",X"1C",
X"04",X"0C",X"00",X"24",X"02",X"1D",X"05",X"20",X"08",X"0C",X"04",X"34",X"05",X"21",X"06",X"07",
X"07",X"0C",X"0C",X"14",X"05",X"1E",X"08",X"1E",X"0F",X"0C",X"12",X"34",X"02",X"1B",X"03",X"1A",
X"06",X"10",X"21",X"42",X"02",X"1D",X"04",X"1D",X"08",X"0F",X"27",X"42",X"05",X"20",X"06",X"20",
X"0B",X"0C",X"2F",X"42",X"09",X"16",X"02",X"22",X"06",X"1C",X"3A",X"4E",X"0E",X"19",X"03",X"26",
X"07",X"1C",X"40",X"4E",X"12",X"1D",X"05",X"2A",X"0A",X"1C",X"47",X"4E",X"05",X"20",X"05",X"26",
X"08",X"0C",X"51",X"45",X"05",X"19",X"05",X"1F",X"11",X"0C",X"58",X"7F",X"08",X"1E",X"04",X"1E",
X"09",X"0C",X"69",X"00",X"00",X"1B",X"16",X"1C",X"17",X"1A",X"72",X"20",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"02",X"04",X"03",X"01",X"01",X"03",X"04",X"06",X"07",X"08",X"07",X"05",X"02",X"04",X"06",X"08",
X"09",X"0B",X"01",X"03",X"04",X"06",X"07",X"09",X"0A",X"0C",X"0D",X"0C",X"0A",X"08",X"07",X"05",
X"03",X"01",X"02",X"04",X"05",X"04",X"02",X"01",X"03",X"05",X"06",X"08",X"07",X"05",X"03",X"02",
X"04",X"06",X"08",X"0A",X"0B",X"0D",X"0B",X"09",X"07",X"05",X"01",X"02",X"03",X"02",X"02",X"01",
X"04",X"06",X"07",X"08",X"06",X"04",X"01",X"02",X"04",X"06",X"08",X"0A",X"0C",X"0B",X"0A",X"05",
X"02",X"03",X"07",X"09",X"0A",X"0C",X"0B",X"09",X"03",X"03",X"07",X"09",X"09",X"0B",X"0A",X"0A",
X"0A",X"09",X"08",X"08",X"07",X"06",X"06",X"04",X"04",X"02",X"04",X"05",X"07",X"08",X"07",X"05",
X"03",X"00",X"02",X"02",X"02",X"02",X"02",X"F8",X"F8",X"F8",X"F8",X"F8",X"F8",X"F8",X"02",X"02",
X"02",X"02",X"02",X"F8",X"F8",X"F8",X"F8",X"F8",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"3E",X"FF",X"D3",X"C0",X"32",X"C5",X"E1",X"21",X"00",X"E1",X"36",X"00",X"54",X"5D",X"13",X"01",
X"CF",X"00",X"ED",X"B0",X"3E",X"01",X"57",X"01",X"00",X"08",X"21",X"00",X"E0",X"7A",X"77",X"5E",
X"BB",X"C2",X"BB",X"34",X"23",X"0B",X"79",X"B0",X"20",X"F3",X"7A",X"07",X"30",X"E8",X"16",X"55",
X"7A",X"01",X"00",X"08",X"21",X"00",X"E0",X"77",X"23",X"3C",X"5F",X"0B",X"79",X"B0",X"28",X"09",
X"7B",X"FE",X"AB",X"20",X"F2",X"3E",X"55",X"18",X"EE",X"7A",X"01",X"00",X"08",X"21",X"00",X"E0",
X"BE",X"20",X"19",X"23",X"3C",X"5F",X"0B",X"79",X"B0",X"28",X"09",X"7B",X"FE",X"AB",X"20",X"F0",
X"3E",X"55",X"18",X"EC",X"14",X"7A",X"FE",X"AB",X"20",X"C6",X"18",X"09",X"5E",X"57",X"AF",X"C3",
X"BB",X"34",X"7A",X"18",X"DE",X"31",X"00",X"E8",X"3E",X"01",X"57",X"01",X"00",X"08",X"21",X"00",
X"80",X"7A",X"77",X"5E",X"BB",X"28",X"08",X"CD",X"3B",X"35",X"CB",X"4F",X"CA",X"F5",X"33",X"23",
X"0B",X"79",X"B0",X"20",X"EC",X"7A",X"07",X"30",X"E1",X"16",X"55",X"7A",X"01",X"00",X"08",X"21",
X"00",X"80",X"77",X"23",X"3C",X"5F",X"0B",X"79",X"B0",X"28",X"09",X"7B",X"FE",X"AB",X"20",X"F2",
X"3E",X"55",X"18",X"EE",X"7A",X"01",X"00",X"08",X"21",X"00",X"80",X"BE",X"20",X"19",X"23",X"3C",
X"5F",X"0B",X"79",X"B0",X"28",X"09",X"7B",X"FE",X"AB",X"20",X"F0",X"3E",X"55",X"18",X"EC",X"14",
X"7A",X"FE",X"AB",X"20",X"C6",X"18",X"0D",X"5E",X"57",X"CD",X"37",X"35",X"CB",X"4F",X"CA",X"F5",
X"33",X"7A",X"18",X"DA",X"DD",X"21",X"EB",X"33",X"C3",X"B1",X"35",X"21",X"66",X"3A",X"DD",X"21",
X"F5",X"33",X"C3",X"65",X"34",X"21",X"00",X"E1",X"36",X"00",X"54",X"5D",X"13",X"01",X"CF",X"00",
X"ED",X"B0",X"21",X"00",X"00",X"AF",X"32",X"00",X"E7",X"06",X"00",X"0E",X"10",X"AF",X"AE",X"23",
X"10",X"FC",X"0D",X"20",X"F9",X"E5",X"CD",X"35",X"34",X"E1",X"3A",X"00",X"E7",X"3C",X"FE",X"04",
X"20",X"E4",X"AF",X"D3",X"1C",X"FB",X"3A",X"00",X"D0",X"CB",X"4F",X"20",X"F9",X"3E",X"03",X"32",
X"01",X"E7",X"C3",X"CD",X"35",X"F5",X"FE",X"FF",X"28",X"02",X"0E",X"08",X"21",X"86",X"3A",X"09",
X"EB",X"3A",X"00",X"E7",X"0F",X"0F",X"4F",X"21",X"C4",X"80",X"09",X"E5",X"EB",X"0E",X"08",X"ED",
X"B0",X"13",X"13",X"D5",X"FD",X"E1",X"DD",X"E1",X"F1",X"CD",X"9A",X"34",X"3A",X"00",X"E7",X"C6",
X"30",X"DD",X"77",X"03",X"C9",X"7E",X"23",X"FE",X"00",X"28",X"0B",X"5E",X"23",X"56",X"23",X"4F",
X"06",X"00",X"ED",X"B0",X"18",X"EF",X"DD",X"E9",X"0F",X"0F",X"0F",X"0F",X"E6",X"0F",X"C6",X"30",
X"FE",X"3A",X"38",X"02",X"C6",X"07",X"FD",X"77",X"00",X"DD",X"E9",X"E6",X"0F",X"C6",X"30",X"FE",
X"3A",X"38",X"02",X"C6",X"07",X"FD",X"77",X"01",X"DD",X"E9",X"F5",X"0F",X"0F",X"0F",X"0F",X"E6",
X"0F",X"C6",X"30",X"FE",X"3A",X"38",X"02",X"C6",X"07",X"FD",X"77",X"00",X"F1",X"E6",X"0F",X"C6",
X"30",X"FE",X"3A",X"38",X"02",X"C6",X"07",X"FD",X"77",X"01",X"C9",X"08",X"D9",X"DD",X"21",X"C4",
X"34",X"C3",X"B1",X"35",X"21",X"72",X"3A",X"DD",X"21",X"CE",X"34",X"C3",X"65",X"34",X"D9",X"FD",
X"21",X"8F",X"80",X"DD",X"21",X"DB",X"34",X"7C",X"C3",X"78",X"34",X"DD",X"21",X"E3",X"34",X"7C",
X"C3",X"8B",X"34",X"FD",X"23",X"FD",X"23",X"DD",X"21",X"EF",X"34",X"7D",X"C3",X"78",X"34",X"DD",
X"21",X"F7",X"34",X"7D",X"C3",X"8B",X"34",X"FD",X"21",X"95",X"80",X"DD",X"21",X"03",X"35",X"7A",
X"C3",X"78",X"34",X"DD",X"21",X"0B",X"35",X"7A",X"C3",X"8B",X"34",X"FD",X"21",X"99",X"80",X"DD",
X"21",X"17",X"35",X"7B",X"C3",X"78",X"34",X"7B",X"DD",X"21",X"1F",X"35",X"C3",X"8B",X"34",X"3A",
X"00",X"D0",X"CB",X"47",X"CA",X"2F",X"35",X"CB",X"4F",X"20",X"F4",X"08",X"C3",X"F5",X"33",X"08",
X"B7",X"CA",X"72",X"33",X"C3",X"24",X"33",X"E5",X"D9",X"18",X"09",X"E5",X"D9",X"DD",X"21",X"44",
X"35",X"C3",X"B1",X"35",X"21",X"00",X"80",X"11",X"00",X"E0",X"01",X"A0",X"04",X"ED",X"B0",X"21",
X"00",X"80",X"36",X"00",X"54",X"5D",X"13",X"01",X"9F",X"04",X"ED",X"B0",X"21",X"72",X"3A",X"DD",
X"21",X"66",X"35",X"C3",X"65",X"34",X"D9",X"FD",X"21",X"8F",X"80",X"7C",X"CD",X"9A",X"34",X"FD",
X"23",X"FD",X"23",X"7D",X"CD",X"9A",X"34",X"FD",X"21",X"95",X"80",X"7A",X"CD",X"9A",X"34",X"FD",
X"21",X"99",X"80",X"7B",X"CD",X"9A",X"34",X"E1",X"3A",X"00",X"D0",X"CB",X"47",X"28",X"06",X"CB",
X"4F",X"28",X"10",X"18",X"F3",X"D9",X"21",X"00",X"E0",X"11",X"00",X"80",X"01",X"A0",X"04",X"ED",
X"B0",X"D9",X"C9",X"21",X"A0",X"84",X"36",X"00",X"54",X"5D",X"13",X"01",X"5F",X"03",X"ED",X"B0",
X"C9",X"21",X"00",X"84",X"01",X"FF",X"03",X"36",X"00",X"54",X"5D",X"13",X"ED",X"B0",X"21",X"00",
X"80",X"01",X"FF",X"03",X"36",X"00",X"54",X"5D",X"13",X"ED",X"B0",X"DD",X"E9",X"CD",X"AD",X"38",
X"21",X"BF",X"3E",X"CD",X"08",X"39",X"3A",X"01",X"E7",X"06",X"02",X"CD",X"1C",X"39",X"3A",X"00",
X"D0",X"CB",X"47",X"20",X"14",X"3A",X"01",X"E7",X"07",X"4F",X"06",X"00",X"DD",X"21",X"96",X"3A",
X"DD",X"09",X"DD",X"6E",X"00",X"DD",X"66",X"01",X"E9",X"DD",X"21",X"02",X"E7",X"CD",X"DD",X"38",
X"47",X"E6",X"55",X"FE",X"55",X"28",X"09",X"78",X"E6",X"AA",X"FE",X"AA",X"28",X"13",X"18",X"CE",
X"DD",X"36",X"00",X"55",X"DD",X"36",X"01",X"08",X"DD",X"36",X"02",X"01",X"CD",X"32",X"36",X"18",
X"BD",X"DD",X"36",X"00",X"AA",X"DD",X"36",X"01",X"03",X"DD",X"36",X"02",X"FF",X"CD",X"32",X"36",
X"18",X"AC",X"DD",X"56",X"00",X"1E",X"02",X"CD",X"C8",X"38",X"28",X"0E",X"CD",X"4E",X"36",X"DD",
X"56",X"00",X"1E",X"01",X"CD",X"C8",X"38",X"20",X"F3",X"C9",X"CD",X"4E",X"36",X"C9",X"3A",X"01",
X"E7",X"DD",X"BE",X"01",X"C8",X"06",X"00",X"CD",X"1C",X"39",X"DD",X"86",X"02",X"32",X"01",X"E7",
X"06",X"02",X"CD",X"1C",X"39",X"C9",X"CD",X"AD",X"38",X"21",X"10",X"3B",X"CD",X"08",X"39",X"3A",
X"03",X"D0",X"21",X"CB",X"80",X"CD",X"B2",X"36",X"3A",X"04",X"D0",X"21",X"0B",X"81",X"CD",X"B2",
X"36",X"DD",X"21",X"AC",X"3A",X"FD",X"21",X"A8",X"3A",X"3A",X"03",X"D0",X"EE",X"FF",X"06",X"02",
X"CD",X"C6",X"36",X"DD",X"21",X"F8",X"3A",X"FD",X"21",X"F4",X"3A",X"3A",X"04",X"D0",X"EE",X"FF",
X"06",X"01",X"CD",X"C5",X"36",X"CD",X"EC",X"36",X"3A",X"00",X"D0",X"CB",X"4F",X"20",X"C0",X"C3",
X"CD",X"35",X"EE",X"FF",X"06",X"08",X"0F",X"38",X"04",X"36",X"30",X"18",X"02",X"36",X"31",X"23",
X"23",X"10",X"F3",X"C9",X"0F",X"0F",X"4F",X"C5",X"DD",X"A6",X"00",X"DD",X"86",X"01",X"DD",X"23",
X"DD",X"23",X"4F",X"06",X"00",X"FD",X"6E",X"00",X"FD",X"66",X"01",X"09",X"4E",X"FD",X"6E",X"02",
X"FD",X"66",X"03",X"09",X"CD",X"11",X"39",X"C1",X"79",X"10",X"D9",X"C9",X"3A",X"04",X"D0",X"CB",
X"57",X"CA",X"06",X"37",X"21",X"77",X"3B",X"CD",X"08",X"39",X"DD",X"21",X"99",X"3B",X"FD",X"21",
X"9B",X"3B",X"06",X"01",X"18",X"10",X"21",X"7F",X"3C",X"CD",X"08",X"39",X"DD",X"21",X"92",X"3C",
X"FD",X"21",X"96",X"3C",X"06",X"02",X"3A",X"03",X"D0",X"EE",X"FF",X"0F",X"0F",X"CD",X"C4",X"36",
X"C9",X"AF",X"32",X"0F",X"E7",X"67",X"6F",X"22",X"0D",X"E7",X"CD",X"AD",X"38",X"21",X"22",X"3D",
X"CD",X"08",X"39",X"3A",X"00",X"D0",X"21",X"CB",X"80",X"CD",X"B2",X"36",X"3A",X"01",X"D0",X"21",
X"0B",X"81",X"CD",X"B2",X"36",X"3A",X"02",X"D0",X"21",X"4B",X"81",X"CD",X"B2",X"36",X"CD",X"8C",
X"37",X"3A",X"0D",X"E7",X"21",X"8C",X"81",X"CD",X"7A",X"37",X"23",X"3A",X"0E",X"E7",X"CD",X"7A",
X"37",X"3A",X"00",X"D0",X"CB",X"4F",X"20",X"CB",X"3A",X"01",X"D0",X"CB",X"4F",X"20",X"C4",X"CD",
X"AD",X"38",X"3E",X"01",X"CD",X"3C",X"39",X"C3",X"CD",X"35",X"F5",X"0F",X"0F",X"0F",X"0F",X"E6",
X"0F",X"C6",X"30",X"77",X"23",X"F1",X"E6",X"0F",X"C6",X"30",X"77",X"C9",X"21",X"0F",X"E7",X"3A",
X"4E",X"E0",X"E6",X"C0",X"BE",X"C8",X"32",X"0F",X"E7",X"3A",X"0E",X"E7",X"C6",X"01",X"27",X"32",
X"0E",X"E7",X"D0",X"3A",X"0D",X"E7",X"C6",X"01",X"27",X"32",X"0D",X"E7",X"C9",X"2A",X"53",X"3D",
X"22",X"06",X"E7",X"21",X"68",X"3D",X"FD",X"21",X"57",X"3D",X"CD",X"C0",X"37",X"C3",X"CD",X"35",
X"FD",X"22",X"0B",X"E7",X"E5",X"CD",X"AD",X"38",X"E1",X"CD",X"08",X"39",X"DD",X"21",X"08",X"E7",
X"3E",X"01",X"32",X"05",X"E7",X"06",X"02",X"CD",X"23",X"39",X"3E",X"01",X"0E",X"40",X"CD",X"3E",
X"39",X"CD",X"72",X"38",X"CD",X"7D",X"38",X"3E",X"FF",X"32",X"11",X"E7",X"3A",X"00",X"D0",X"CB",
X"4F",X"28",X"4A",X"CD",X"F2",X"38",X"E6",X"AA",X"FE",X"2A",X"28",X"13",X"CD",X"DD",X"38",X"47",
X"E6",X"55",X"FE",X"55",X"28",X"11",X"78",X"E6",X"AA",X"FE",X"AA",X"28",X"1D",X"18",X"DD",X"CD",
X"72",X"38",X"CD",X"7D",X"38",X"18",X"D5",X"DD",X"36",X"00",X"55",X"3A",X"06",X"E7",X"DD",X"77",
X"01",X"DD",X"36",X"02",X"01",X"CD",X"4F",X"38",X"18",X"C2",X"DD",X"36",X"00",X"AA",X"3A",X"07",
X"E7",X"DD",X"77",X"01",X"DD",X"36",X"02",X"FF",X"CD",X"4F",X"38",X"18",X"AF",X"CD",X"72",X"38",
X"3E",X"01",X"0E",X"20",X"CD",X"3E",X"39",X"3A",X"00",X"D0",X"CB",X"4F",X"20",X"9E",X"C9",X"CD",
X"72",X"38",X"DD",X"56",X"00",X"1E",X"02",X"CD",X"C8",X"38",X"28",X"0F",X"CD",X"95",X"38",X"DD",
X"56",X"00",X"1E",X"01",X"CD",X"C8",X"38",X"20",X"F3",X"18",X"03",X"CD",X"95",X"38",X"CD",X"7D",
X"38",X"C9",X"3E",X"00",X"32",X"00",X"D0",X"CB",X"FF",X"32",X"00",X"D0",X"C9",X"3A",X"05",X"E7",
X"4F",X"06",X"00",X"FD",X"2A",X"0B",X"E7",X"FD",X"09",X"FD",X"7E",X"00",X"32",X"00",X"D0",X"CB",
X"FF",X"32",X"00",X"D0",X"C9",X"3A",X"05",X"E7",X"DD",X"BE",X"01",X"C8",X"06",X"00",X"CD",X"23",
X"39",X"DD",X"86",X"02",X"32",X"05",X"E7",X"06",X"02",X"CD",X"23",X"39",X"C9",X"21",X"00",X"80",
X"01",X"FF",X"03",X"36",X"00",X"54",X"5D",X"13",X"ED",X"B0",X"21",X"00",X"84",X"01",X"FF",X"03",
X"36",X"00",X"54",X"5D",X"13",X"ED",X"B0",X"C9",X"0E",X"00",X"06",X"0C",X"CD",X"E2",X"38",X"A2",
X"C8",X"10",X"F9",X"0D",X"20",X"F4",X"1D",X"20",X"EF",X"3E",X"FF",X"A2",X"C9",X"CD",X"E2",X"38",
X"18",X"1F",X"21",X"10",X"E7",X"3A",X"01",X"D0",X"1F",X"CB",X"16",X"1F",X"CB",X"16",X"7E",X"EE",
X"FF",X"C9",X"21",X"11",X"E7",X"3A",X"00",X"D0",X"1F",X"CB",X"16",X"1F",X"CB",X"16",X"7E",X"EE",
X"FF",X"F5",X"AF",X"3D",X"20",X"FD",X"F1",X"C9",X"7E",X"FE",X"00",X"C8",X"CD",X"11",X"39",X"18",
X"F7",X"4E",X"06",X"00",X"23",X"5E",X"23",X"56",X"23",X"ED",X"B0",X"C9",X"4F",X"D6",X"03",X"07",
X"3C",X"18",X"01",X"4F",X"C5",X"0E",X"64",X"06",X"00",X"60",X"07",X"07",X"07",X"6F",X"29",X"29",
X"09",X"EB",X"21",X"00",X"84",X"19",X"C1",X"70",X"23",X"70",X"79",X"C9",X"0E",X"00",X"06",X"00",
X"10",X"FE",X"0D",X"20",X"F9",X"3D",X"20",X"F4",X"C9",X"C5",X"0E",X"00",X"06",X"00",X"10",X"FE",
X"F5",X"3A",X"00",X"D0",X"CB",X"4F",X"28",X"09",X"F1",X"0D",X"20",X"F0",X"3D",X"20",X"EB",X"C1",
X"C9",X"F1",X"C1",X"06",X"01",X"C9",X"CD",X"AD",X"38",X"11",X"00",X"E1",X"21",X"6D",X"3E",X"01",
X"10",X"00",X"ED",X"B0",X"11",X"60",X"E1",X"21",X"7D",X"3E",X"01",X"10",X"00",X"ED",X"B0",X"3A",
X"00",X"D0",X"CB",X"4F",X"20",X"F9",X"21",X"00",X"E1",X"36",X"00",X"54",X"5D",X"13",X"01",X"BF",
X"00",X"ED",X"B0",X"C3",X"CD",X"35",X"3E",X"01",X"32",X"12",X"E7",X"AF",X"32",X"11",X"E7",X"18",
X"2A",X"3A",X"00",X"D0",X"CB",X"4F",X"CA",X"CD",X"35",X"CD",X"F2",X"38",X"E6",X"AA",X"FE",X"2A",
X"20",X"EF",X"3A",X"12",X"E7",X"3C",X"32",X"12",X"E7",X"FE",X"01",X"28",X"0E",X"FE",X"02",X"CA",
X"E8",X"39",X"FE",X"03",X"CA",X"13",X"3A",X"D6",X"03",X"18",X"EB",X"CD",X"AD",X"38",X"21",X"1C",
X"81",X"06",X"1A",X"3E",X"5A",X"77",X"2B",X"3D",X"10",X"FB",X"21",X"0C",X"82",X"06",X"0A",X"3E",
X"39",X"77",X"2B",X"3D",X"10",X"FB",X"18",X"B9",X"CD",X"BA",X"38",X"21",X"20",X"80",X"36",X"F3",
X"54",X"5D",X"13",X"01",X"BF",X"03",X"ED",X"B0",X"21",X"8D",X"3E",X"06",X"0A",X"C5",X"5E",X"23",
X"56",X"23",X"46",X"23",X"4E",X"23",X"7E",X"23",X"EB",X"CD",X"23",X"3A",X"EB",X"C1",X"10",X"ED",
X"C3",X"A1",X"39",X"21",X"20",X"84",X"36",X"0C",X"54",X"5D",X"13",X"01",X"BF",X"03",X"ED",X"B0",
X"C3",X"A1",X"39",X"C5",X"E5",X"77",X"23",X"10",X"FC",X"E1",X"0E",X"20",X"09",X"C1",X"0D",X"20",
X"F2",X"C9",X"CD",X"AD",X"38",X"21",X"20",X"80",X"0E",X"1E",X"06",X"0F",X"C5",X"06",X"00",X"36",
X"94",X"54",X"5D",X"23",X"36",X"93",X"23",X"EB",X"ED",X"B0",X"EB",X"0E",X"1E",X"36",X"96",X"54",
X"5D",X"23",X"36",X"95",X"23",X"EB",X"ED",X"B0",X"EB",X"C1",X"10",X"E0",X"3A",X"00",X"D0",X"CB",
X"4F",X"20",X"F9",X"C3",X"CD",X"35",X"08",X"84",X"80",X"52",X"41",X"4D",X"00",X"00",X"00",X"4F",
X"4B",X"00",X"10",X"84",X"80",X"52",X"41",X"4D",X"00",X"00",X"00",X"4E",X"47",X"00",X"00",X"5D",
X"00",X"00",X"00",X"00",X"5D",X"00",X"52",X"4F",X"4D",X"00",X"00",X"00",X"4F",X"4B",X"52",X"4F",
X"4D",X"00",X"00",X"00",X"4E",X"47",X"00",X"00",X"00",X"00",X"00",X"00",X"66",X"36",X"21",X"37",
X"AD",X"37",X"66",X"39",X"96",X"39",X"32",X"3A",X"B0",X"3A",X"B8",X"3A",X"03",X"00",X"03",X"04",
X"00",X"04",X"08",X"0C",X"10",X"1B",X"26",X"31",X"01",X"73",X"81",X"35",X"01",X"73",X"81",X"33",
X"01",X"73",X"81",X"32",X"01",X"73",X"81",X"31",X"08",X"ED",X"81",X"31",X"30",X"00",X"33",X"30",
X"00",X"35",X"30",X"08",X"ED",X"81",X"32",X"30",X"00",X"34",X"30",X"00",X"36",X"30",X"08",X"ED",
X"81",X"00",X"00",X"00",X"00",X"00",X"00",X"31",X"30",X"08",X"ED",X"81",X"00",X"00",X"00",X"00",
X"00",X"00",X"4E",X"4F",X"FA",X"3A",X"FC",X"3A",X"01",X"00",X"00",X"0A",X"07",X"B1",X"82",X"54",
X"41",X"42",X"4C",X"45",X"00",X"00",X"07",X"B1",X"82",X"55",X"50",X"52",X"49",X"47",X"48",X"54",
X"16",X"84",X"80",X"44",X"49",X"50",X"00",X"53",X"57",X"00",X"31",X"00",X"32",X"00",X"33",X"00",
X"34",X"00",X"35",X"00",X"36",X"00",X"37",X"00",X"38",X"03",X"C6",X"80",X"53",X"57",X"31",X"03",
X"06",X"81",X"53",X"57",X"32",X"0B",X"64",X"81",X"50",X"41",X"54",X"52",X"4F",X"4C",X"00",X"43",
X"41",X"52",X"53",X"0D",X"A4",X"81",X"45",X"58",X"54",X"45",X"4E",X"44",X"00",X"50",X"4F",X"49",
X"4E",X"54",X"53",X"08",X"F6",X"81",X"54",X"48",X"4F",X"55",X"53",X"41",X"4E",X"44",X"09",X"24",
X"82",X"43",X"4F",X"49",X"4E",X"00",X"4D",X"4F",X"44",X"45",X"09",X"A4",X"82",X"42",X"4F",X"44",
X"59",X"00",X"54",X"59",X"50",X"45",X"00",X"01",X"2E",X"82",X"00",X"1A",X"64",X"82",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0F",X"00",X"9F",X"3B",X"AF",X"3B",X"00",
X"10",X"20",X"30",X"40",X"50",X"60",X"60",X"70",X"80",X"90",X"A0",X"B0",X"60",X"60",X"C0",X"0D",
X"31",X"82",X"31",X"43",X"4F",X"49",X"4E",X"00",X"00",X"31",X"50",X"4C",X"41",X"59",X"00",X"0D",
X"31",X"82",X"32",X"43",X"4F",X"49",X"4E",X"53",X"00",X"31",X"50",X"4C",X"41",X"59",X"00",X"0D",
X"31",X"82",X"33",X"43",X"4F",X"49",X"4E",X"53",X"00",X"31",X"50",X"4C",X"41",X"59",X"00",X"0D",
X"31",X"82",X"34",X"43",X"4F",X"49",X"4E",X"53",X"00",X"31",X"50",X"4C",X"41",X"59",X"00",X"0D",
X"31",X"82",X"35",X"43",X"4F",X"49",X"4E",X"53",X"00",X"31",X"50",X"4C",X"41",X"59",X"00",X"0D",
X"31",X"82",X"36",X"43",X"4F",X"49",X"4E",X"53",X"00",X"31",X"50",X"4C",X"41",X"59",X"00",X"0D",
X"31",X"82",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0D",
X"31",X"82",X"31",X"43",X"4F",X"49",X"4E",X"00",X"00",X"32",X"50",X"4C",X"41",X"59",X"53",X"0D",
X"31",X"82",X"31",X"43",X"4F",X"49",X"4E",X"00",X"00",X"33",X"50",X"4C",X"41",X"59",X"53",X"0D",
X"31",X"82",X"31",X"43",X"4F",X"49",X"4E",X"00",X"00",X"34",X"50",X"4C",X"41",X"59",X"53",X"0D",
X"31",X"82",X"31",X"43",X"4F",X"49",X"4E",X"00",X"00",X"35",X"50",X"4C",X"41",X"59",X"53",X"0D",
X"31",X"82",X"31",X"43",X"4F",X"49",X"4E",X"00",X"00",X"36",X"50",X"4C",X"41",X"59",X"53",X"0D",
X"31",X"82",X"00",X"46",X"52",X"45",X"45",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",
X"2E",X"82",X"41",X"0B",X"64",X"82",X"43",X"4F",X"49",X"4E",X"00",X"4D",X"4F",X"44",X"45",X"00",
X"42",X"00",X"03",X"00",X"03",X"04",X"9A",X"3C",X"A2",X"3C",X"00",X"10",X"20",X"30",X"40",X"50",
X"60",X"70",X"0D",X"31",X"82",X"31",X"43",X"4F",X"49",X"4E",X"00",X"00",X"31",X"50",X"4C",X"41",
X"59",X"00",X"0D",X"31",X"82",X"32",X"43",X"4F",X"49",X"4E",X"53",X"00",X"31",X"50",X"4C",X"41",
X"59",X"00",X"0D",X"31",X"82",X"33",X"43",X"4F",X"49",X"4E",X"53",X"00",X"31",X"50",X"4C",X"41",
X"59",X"00",X"0D",X"31",X"82",X"00",X"46",X"52",X"45",X"45",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"0D",X"71",X"82",X"31",X"43",X"4F",X"49",X"4E",X"00",X"00",X"32",X"50",X"4C",X"41",
X"59",X"53",X"0D",X"71",X"82",X"31",X"43",X"4F",X"49",X"4E",X"00",X"00",X"33",X"50",X"4C",X"41",
X"59",X"53",X"0D",X"71",X"82",X"31",X"43",X"4F",X"49",X"4E",X"00",X"00",X"35",X"50",X"4C",X"41",
X"59",X"53",X"0D",X"71",X"82",X"31",X"43",X"4F",X"49",X"4E",X"00",X"00",X"36",X"50",X"4C",X"41",
X"59",X"53",X"0F",X"8B",X"80",X"31",X"00",X"32",X"00",X"33",X"00",X"34",X"00",X"35",X"00",X"36",
X"00",X"37",X"00",X"38",X"04",X"C4",X"80",X"4B",X"45",X"59",X"30",X"04",X"04",X"81",X"4B",X"45",
X"59",X"31",X"04",X"44",X"81",X"4B",X"45",X"59",X"32",X"06",X"84",X"81",X"54",X"49",X"4D",X"49",
X"4E",X"47",X"00",X"0E",X"01",X"00",X"00",X"00",X"01",X"10",X"11",X"12",X"13",X"14",X"16",X"17",
X"18",X"1B",X"1C",X"1D",X"1E",X"1F",X"00",X"00",X"0B",X"27",X"80",X"53",X"00",X"4F",X"00",X"55",
X"00",X"4E",X"00",X"44",X"00",X"53",X"0E",X"44",X"81",X"30",X"37",X"00",X"53",X"50",X"41",X"43",
X"45",X"00",X"50",X"4C",X"41",X"4E",X"54",X"0D",X"64",X"81",X"30",X"38",X"00",X"55",X"46",X"4F",
X"00",X"46",X"4C",X"59",X"49",X"4E",X"47",X"0C",X"84",X"80",X"30",X"31",X"00",X"45",X"58",X"50",
X"4C",X"4F",X"53",X"49",X"4F",X"4E",X"0E",X"E4",X"80",X"30",X"34",X"00",X"43",X"41",X"52",X"00",
X"4D",X"49",X"53",X"53",X"49",X"4C",X"45",X"10",X"C4",X"80",X"30",X"33",X"00",X"55",X"46",X"4F",
X"00",X"45",X"58",X"50",X"4C",X"4F",X"53",X"49",X"4F",X"4E",X"10",X"A4",X"80",X"30",X"32",X"00",
X"50",X"4F",X"49",X"4E",X"54",X"00",X"50",X"41",X"53",X"53",X"41",X"47",X"45",X"07",X"04",X"81",
X"30",X"35",X"00",X"43",X"4F",X"49",X"4E",X"0B",X"24",X"81",X"30",X"36",X"00",X"43",X"41",X"52",
X"00",X"4A",X"55",X"4D",X"50",X"14",X"84",X"81",X"30",X"39",X"00",X"42",X"41",X"43",X"4B",X"00",
X"47",X"52",X"4F",X"55",X"4E",X"44",X"00",X"4D",X"55",X"53",X"49",X"43",X"0F",X"A4",X"81",X"31",
X"30",X"00",X"45",X"4E",X"44",X"49",X"4E",X"47",X"00",X"4D",X"55",X"53",X"49",X"43",X"10",X"C4",
X"81",X"31",X"31",X"00",X"4F",X"50",X"45",X"4E",X"49",X"4E",X"47",X"00",X"4D",X"55",X"53",X"49",
X"43",X"0F",X"E4",X"81",X"31",X"32",X"00",X"53",X"54",X"45",X"50",X"00",X"50",X"41",X"53",X"53",
X"41",X"47",X"45",X"11",X"04",X"82",X"31",X"33",X"00",X"43",X"4F",X"4E",X"47",X"52",X"41",X"54",
X"55",X"4C",X"41",X"54",X"49",X"4F",X"4E",X"10",X"24",X"82",X"31",X"34",X"00",X"43",X"41",X"52",
X"00",X"45",X"58",X"50",X"4C",X"4F",X"53",X"49",X"4F",X"4E",X"00",X"00",X"00",X"A8",X"01",X"38",
X"60",X"A8",X"41",X"38",X"98",X"90",X"81",X"38",X"60",X"90",X"C1",X"38",X"98",X"68",X"01",X"38",
X"60",X"68",X"41",X"38",X"98",X"50",X"81",X"38",X"60",X"50",X"C1",X"38",X"98",X"20",X"84",X"20",
X"07",X"00",X"00",X"87",X"20",X"07",X"08",X"00",X"85",X"20",X"08",X"02",X"00",X"86",X"05",X"08",
X"05",X"05",X"86",X"04",X"08",X"0C",X"09",X"86",X"05",X"08",X"06",X"0E",X"86",X"04",X"08",X"04",
X"12",X"86",X"05",X"08",X"03",X"17",X"86",X"04",X"08",X"00",X"1B",X"86",X"05",X"08",X"08",X"0E",
X"84",X"80",X"30",X"31",X"00",X"00",X"44",X"49",X"50",X"00",X"53",X"57",X"49",X"54",X"43",X"48",
X"0C",X"C4",X"80",X"30",X"32",X"00",X"00",X"49",X"3F",X"4F",X"00",X"50",X"4F",X"52",X"54",X"0A",
X"04",X"81",X"30",X"33",X"00",X"00",X"53",X"4F",X"55",X"4E",X"44",X"53",X"0D",X"44",X"81",X"30",
X"34",X"00",X"00",X"43",X"48",X"41",X"52",X"41",X"43",X"54",X"45",X"52",X"09",X"84",X"81",X"30",
X"35",X"00",X"00",X"43",X"4F",X"4C",X"4F",X"52",X"0F",X"C4",X"81",X"30",X"36",X"00",X"00",X"42",
X"45",X"41",X"4D",X"00",X"41",X"44",X"4A",X"55",X"53",X"54",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03");
begin
process(clk)
begin
if rising_edge(clk) then
data <= rom_data(to_integer(unsigned(addr)));
end if;
end process;
end architecture;

View File

@@ -0,0 +1,278 @@
library ieee;
use ieee.std_logic_1164.all,ieee.numeric_std.all;
entity mpb_13n is
port (
clk : in std_logic;
addr : in std_logic_vector(11 downto 0);
data : out std_logic_vector(7 downto 0)
);
end entity;
architecture prom of mpb_13n is
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
signal rom_data: rom := (
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"01",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"A0",X"A0",X"A0",X"00",X"A0",X"A0",X"B8",X"F0",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"1F",X"7F",X"FF",X"F8",X"03",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"C0",X"00",X"FE",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"40",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"F2",X"1E",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"18",X"7E",X"7E",X"FF",X"FF",X"FF",X"7E",X"7E",X"18",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"18",X"7E",X"7E",X"FF",X"FF",X"FF",X"7E",X"7E",X"18",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"30",X"78",X"78",X"FC",X"FC",X"78",X"78",X"30",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"30",X"78",X"78",X"FC",X"FC",X"78",X"78",X"30",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"04",X"00",X"03",X"01",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"03",X"03",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"0C",X"3E",X"78",X"F3",X"E7",X"EC",X"C8",X"00",X"01",X"01",X"03",X"03",X"01",
X"00",X"00",X"00",X"20",X"70",X"F8",X"E0",X"40",X"40",X"00",X"80",X"C0",X"E0",X"F0",X"F0",X"E0",
X"03",X"06",X"00",X"00",X"00",X"01",X"03",X"07",X"07",X"07",X"07",X"03",X"01",X"00",X"00",X"00",
X"C3",X"87",X"0F",X"0F",X"0F",X"CF",X"E7",X"E3",X"F0",X"F0",X"E0",X"E0",X"C0",X"00",X"00",X"00",
X"81",X"C0",X"C0",X"E0",X"E0",X"C0",X"C0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"E0",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0E",X"1F",X"3F",X"3F",X"3F",X"3F",
X"00",X"00",X"00",X"08",X"00",X"12",X"B0",X"E8",X"38",X"1C",X"04",X"00",X"00",X"80",X"8E",X"1F",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"1E",X"1F",X"0F",X"03",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"E0",X"E0",
X"1F",X"0E",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"3F",X"3F",X"3F",X"3F",X"1F",X"0E",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"02",X"83",X"80",X"00",X"00",X"00",X"02",X"07",X"07",X"0F",X"0F",X"07",X"07",X"03",X"00",X"00",
X"20",X"80",X"E0",X"70",X"78",X"30",X"10",X"00",X"80",X"C0",X"C0",X"80",X"80",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"06",X"01",X"01",X"00",X"00",X"00",X"00",X"00",X"60",X"19",X"07",X"03",
X"02",X"01",X"21",X"11",X"10",X"08",X"0D",X"CF",X"E7",X"7F",X"7F",X"FF",X"FC",X"F0",X"C0",X"80",
X"00",X"00",X"10",X"10",X"89",X"89",X"0B",X"1F",X"1F",X"BE",X"1C",X"08",X"00",X"00",X"00",X"00",
X"40",X"44",X"82",X"82",X"8E",X"DF",X"FF",X"FF",X"81",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"08",X"08",X"10",X"10",X"30",X"60",X"E1",X"F3",X"FF",X"7F",X"3F",X"0F",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"40",X"40",X"80",X"00",X"80",X"80",X"C6",X"F8",X"E0",X"80",X"80",
X"03",X"01",X"01",X"03",X"07",X"1D",X"61",X"01",X"00",X"03",X"03",X"04",X"08",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"C0",X"C0",X"F3",X"7F",X"38",X"30",X"10",X"20",X"20",
X"00",X"00",X"00",X"00",X"00",X"00",X"40",X"E0",X"E0",X"F9",X"FF",X"7F",X"12",X"10",X"08",X"08",
X"00",X"00",X"00",X"00",X"00",X"00",X"3C",X"7E",X"7E",X"FF",X"BD",X"39",X"10",X"10",X"20",X"20",
X"03",X"03",X"03",X"03",X"07",X"07",X"0E",X"1C",X"1C",X"3E",X"F6",X"F3",X"60",X"20",X"20",X"10",
X"C0",X"80",X"00",X"80",X"C0",X"60",X"20",X"18",X"00",X"00",X"00",X"00",X"80",X"80",X"40",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0C",X"1F",X"1F",X"3F",X"3F",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"30",X"7C",X"FD",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C7",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"C0",X"F0",X"F8",X"FC",X"FC",X"FE",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"1F",X"3F",X"3F",X"3F",X"1F",X"0F",X"07",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"B1",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",X"F0",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"FE",X"FC",X"FC",X"F8",X"F0",X"F8",X"F8",X"30",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"03",X"33",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"E6",X"EF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"18",X"3C",X"7D",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"E0",X"EC",X"FE",X"FE",X"FC",X"FC",X"F8",X"FC",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"7F",X"3F",X"7F",X"FF",X"FF",X"7D",X"38",X"30",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"7C",X"78",X"30",X"00",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F7",X"F3",X"E0",X"60",X"00",X"00",X"00",X"00",X"00",X"00",
X"FE",X"FE",X"FE",X"FC",X"D8",X"C0",X"C0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"01",X"03",X"0F",X"1F",X"1F",X"1F",X"0F",X"0F",X"06",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"8E",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"30",X"00",X"00",X"00",
X"00",X"00",X"00",X"30",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"C6",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"C0",X"F0",X"F8",X"F8",X"F8",X"F0",X"F0",X"30",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"01",X"07",X"0F",X"1F",X"1F",X"1F",X"0F",X"03",X"01",X"01",X"00",X"00",
X"00",X"00",X"00",X"00",X"9C",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F3",X"C0",X"00",X"00",
X"00",X"00",X"00",X"70",X"FC",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FB",X"60",X"00",X"00",
X"00",X"00",X"00",X"00",X"C0",X"E0",X"F0",X"F0",X"F0",X"F0",X"E0",X"E0",X"40",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"0C",X"3F",X"7F",X"7F",X"3F",X"0C",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"F0",X"FC",X"FE",X"FE",X"F4",X"C0",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"2C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"20",X"70",X"F0",X"60",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"32",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"60",X"F0",X"70",X"20",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"60",X"F0",X"F8",X"F8",X"F8",X"F0",X"60",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"01",X"03",X"03",X"03",X"01",X"03",X"01",X"01",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"D0",X"F8",X"FC",X"F8",X"FC",X"FC",X"FC",X"FC",X"F8",X"D0",X"00",X"00",X"00",X"00",
X"00",X"03",X"07",X"07",X"0F",X"0F",X"07",X"0F",X"0F",X"0F",X"07",X"03",X"03",X"01",X"00",X"00",
X"F0",X"FC",X"FE",X"FE",X"FF",X"FF",X"FF",X"FF",X"FE",X"FF",X"FF",X"FE",X"FC",X"B8",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"18",X"38",X"78",X"78",X"7C",X"FE",X"FE",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"0E",X"1F",X"1F",X"1F",X"7F",X"7F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"60",X"E0",X"E0",X"E0",X"E0",X"F0",X"F0",X"F0",X"F8",X"FC",X"FC",
X"00",X"03",X"03",X"07",X"07",X"0F",X"0F",X"3F",X"3F",X"7F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"C0",X"E0",X"E0",X"F0",X"E0",X"E0",X"F0",X"F0",X"F0",X"E0",X"F0",X"F0",X"F8",X"FC",X"FE",
X"07",X"07",X"0F",X"1F",X"1F",X"3F",X"3F",X"3F",X"3F",X"7F",X"7F",X"7F",X"7F",X"FF",X"FF",X"FF",
X"00",X"00",X"80",X"80",X"80",X"80",X"E0",X"F0",X"F0",X"F0",X"F0",X"F8",X"F8",X"F8",X"F8",X"F8",
X"00",X"00",X"00",X"00",X"01",X"03",X"07",X"07",X"07",X"07",X"03",X"01",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"80",X"C0",X"E0",X"E0",X"E0",X"E0",X"C0",X"80",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"03",X"0F",X"0F",X"1F",X"1F",X"1F",X"1F",X"1F",X"0F",X"0F",X"03",X"00",X"00",
X"00",X"00",X"00",X"80",X"E0",X"E0",X"F0",X"F0",X"F0",X"F0",X"F0",X"E0",X"E0",X"80",X"00",X"00",
X"00",X"00",X"00",X"03",X"0F",X"0F",X"1F",X"1F",X"1F",X"1F",X"1F",X"0F",X"0F",X"03",X"00",X"00",
X"00",X"00",X"00",X"80",X"E0",X"E0",X"F0",X"F0",X"F0",X"F0",X"F0",X"E0",X"E0",X"80",X"00",X"00",
X"00",X"00",X"00",X"03",X"0F",X"0F",X"1F",X"1F",X"1F",X"1F",X"1F",X"0F",X"0F",X"03",X"00",X"00",
X"00",X"00",X"00",X"80",X"E0",X"E0",X"F0",X"F0",X"F0",X"F0",X"F0",X"E0",X"E0",X"80",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"03",X"0F",X"0F",X"1F",X"1F",X"3F",X"3F",X"3F",X"3F",X"3F",X"3F",X"1F",X"1F",X"0F",X"0F",X"03",
X"C0",X"F0",X"F0",X"F8",X"F8",X"FC",X"FC",X"FC",X"FC",X"FC",X"FC",X"F8",X"F8",X"F0",X"F0",X"C0",
X"03",X"0F",X"0F",X"1F",X"1F",X"3F",X"3F",X"3F",X"3F",X"3F",X"3F",X"1F",X"1F",X"0F",X"0F",X"03",
X"C0",X"F0",X"F0",X"F8",X"F8",X"FC",X"FC",X"FC",X"FC",X"FC",X"FC",X"F8",X"F8",X"F0",X"F0",X"C0",
X"03",X"07",X"FF",X"FF",X"0F",X"0F",X"00",X"03",X"37",X"7B",X"CE",X"84",X"84",X"CE",X"7B",X"31",
X"E0",X"F0",X"F0",X"F8",X"F8",X"F8",X"00",X"C0",X"E6",X"DE",X"73",X"21",X"21",X"73",X"DE",X"8C",
X"00",X"00",X"3C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"78",X"7E",X"3F",X"1E",X"0C",X"00",X"3C",X"3C",X"00",X"07",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"0C",X"1F",X"1F",X"3F",X"00",X"00",X"01",X"00",X"03",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"80",X"C0",X"80",X"00",X"F8",X"F8",X"00",X"C0",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0",X"E0",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"84",X"84",X"FC",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"01",X"03",X"07",X"07",X"0F",X"0F",X"07",X"01",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"80",X"E0",X"E0",X"F0",X"F0",X"F0",X"E0",X"C0",X"00",X"00",X"00",X"00",
X"00",X"00",X"02",X"07",X"0F",X"1F",X"3F",X"3F",X"1F",X"1F",X"1F",X"0F",X"03",X"01",X"00",X"00",
X"00",X"00",X"C0",X"C0",X"E0",X"F0",X"E0",X"F0",X"F0",X"F0",X"E0",X"E0",X"80",X"00",X"00",X"00",
X"00",X"00",X"00",X"01",X"07",X"0F",X"0F",X"1F",X"1F",X"1F",X"0F",X"1F",X"06",X"00",X"00",X"00",
X"00",X"00",X"00",X"80",X"E0",X"F0",X"F8",X"F8",X"F8",X"F0",X"F8",X"F0",X"40",X"00",X"00",X"00",
X"00",X"00",X"00",X"0D",X"0F",X"3F",X"3F",X"3F",X"7F",X"3F",X"1F",X"1F",X"0F",X"03",X"00",X"00",
X"00",X"00",X"60",X"F0",X"F8",X"FC",X"FC",X"FC",X"F8",X"F8",X"FC",X"F8",X"F8",X"20",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"00",X"3C",X"7F",X"FC",X"38",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"78",X"FC",X"7E",X"38",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"00",X"00",X"10",X"01",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"20",X"00",X"00",X"00",X"A0",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"01",X"08",X"00",X"00",X"00",X"02",X"01",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"10",X"00",X"00",X"10",X"10",X"00",X"00",X"00",X"40",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"03",X"0F",X"3F",X"FF",X"FF",X"3F",X"07",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"C0",X"F0",X"FC",X"FF",X"FF",X"FC",X"E0",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"03",X"0F",X"3F",X"FF",X"FF",X"3F",X"07",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"C0",X"F0",X"FC",X"FF",X"FF",X"FC",X"E0",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"03",X"0F",X"3F",X"FF",X"FF",X"3F",X"07",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"C0",X"F0",X"FC",X"FF",X"FF",X"FC",X"E0",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"01",X"03",X"07",X"03",X"01",X"03",X"02",X"04",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"10",X"60",X"C0",X"C0",X"E0",X"80",X"80",X"40",X"40",X"20",X"00",X"00",
X"00",X"08",X"04",X"00",X"00",X"06",X"03",X"07",X"2F",X"0F",X"1B",X"23",X"49",X"21",X"02",X"00",
X"00",X"00",X"00",X"00",X"00",X"E0",X"80",X"C0",X"E0",X"80",X"80",X"00",X"80",X"40",X"00",X"00",
X"02",X"81",X"44",X"32",X"09",X"0D",X"07",X"03",X"07",X"4D",X"00",X"00",X"00",X"00",X"00",X"00",
X"02",X"20",X"88",X"B0",X"E1",X"F4",X"F8",X"F0",X"A6",X"10",X"8C",X"02",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"04",X"02",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"40",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"01",X"01",X"01",X"01",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"14",X"0F",X"5C",X"30",X"E6",X"2F",X"DF",X"0F",X"07",X"03",X"01",X"00",X"00",X"00",X"00",
X"00",X"A0",X"C0",X"E4",X"38",X"8D",X"E6",X"F7",X"E0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"0F",X"2F",X"39",X"F0",X"C0",X"82",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"F4",X"FE",X"9F",X"0F",X"03",X"41",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"C0",
X"03",X"07",X"07",X"06",X"0E",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"0F",X"1F",X"3F",X"3C",X"78",X"3C",X"0E",X"07",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"E0",X"F8",X"FC",X"FC",X"3E",X"78",X"E0",X"C0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"E0",X"60",X"70",X"38",X"18",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"07",X"07",X"03",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"27",X"3F",X"3F",X"FF",X"F9",X"F0",X"E0",X"C5",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"60",X"FB",X"FF",X"7F",X"1F",X"0B",X"82",X"A0",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"C0",X"C0",X"E0",X"E0",
X"0F",X"0E",X"1E",X"1E",X"3C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"87",X"1F",X"3F",X"3F",X"7F",X"7F",X"1F",X"0F",X"07",X"02",X"00",X"00",X"00",X"00",X"00",X"00",
X"F0",X"F8",X"F8",X"FC",X"FE",X"FC",X"F8",X"F0",X"E0",X"E0",X"C0",X"80",X"00",X"00",X"00",X"00",
X"F0",X"7C",X"FC",X"3C",X"1E",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"09",X"05",X"07",X"07",X"0F",X"0F",X"1F",X"1F",X"7D",
X"08",X"04",X"0D",X"8F",X"5F",X"FF",X"FF",X"FF",X"FF",X"EF",X"F7",X"F2",X"E0",X"E0",X"C0",X"00",
X"20",X"40",X"E0",X"F8",X"FC",X"FE",X"FF",X"FF",X"DF",X"BF",X"3F",X"1D",X"0B",X"07",X"03",X"01",
X"00",X"00",X"00",X"00",X"00",X"40",X"80",X"90",X"E0",X"E0",X"E0",X"F4",X"F8",X"F8",X"F8",X"BC",
X"3E",X"3E",X"3E",X"1C",X"70",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"01",X"08",X"05",X"0F",X"1F",X"07",X"02",X"04",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"90",X"A0",X"F0",X"E0",X"C0",X"C0",X"A0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"78",X"3C",X"3C",X"1A",X"0E",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"01",X"00",X"00",X"01",X"01",X"03",X"0B",X"07",X"07",X"0F",X"0F",X"1F",
X"01",X"27",X"1F",X"3F",X"3F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"FC",X"F8",
X"20",X"E4",X"F8",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"3F",X"0F",
X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"80",X"D0",X"E0",X"E0",X"F0",X"F0",X"F8",X"F8",X"F8",
X"1F",X"1F",X"1F",X"0F",X"07",X"03",X"03",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"C0",X"E0",X"F0",X"F4",X"FC",X"FE",X"FF",X"FF",X"7F",X"3F",X"3F",X"0F",X"03",X"01",X"01",X"00",
X"03",X"0F",X"1F",X"3F",X"7F",X"FF",X"FF",X"FF",X"FE",X"FC",X"F8",X"F8",X"F0",X"C0",X"80",X"00",
X"F8",X"F0",X"E0",X"E0",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"02",X"01",X"21",X"14",X"14",X"42",X"22",X"14",X"98",X"38",X"04",X"80",X"00",X"00",
X"00",X"00",X"00",X"50",X"00",X"A4",X"28",X"40",X"42",X"44",X"2C",X"01",X"02",X"0C",X"00",X"00",
X"00",X"00",X"10",X"10",X"09",X"0D",X"86",X"10",X"48",X"08",X"08",X"04",X"00",X"00",X"00",X"00",
X"80",X"00",X"80",X"80",X"04",X"A8",X"48",X"11",X"10",X"12",X"24",X"00",X"00",X"00",X"00",X"00",
X"01",X"25",X"10",X"09",X"09",X"45",X"47",X"2E",X"32",X"80",X"10",X"00",X"00",X"08",X"00",X"00",
X"00",X"10",X"94",X"A0",X"E2",X"F4",X"34",X"1D",X"0E",X"04",X"08",X"00",X"00",X"08",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"00",X"04",X"82",X"52",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"40",X"41",X"82",X"CA",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"08",X"07",X"01",X"00",X"12",X"28",X"06",X"04",X"00",X"00",X"00",X"00",
X"51",X"29",X"BB",X"5F",X"3F",X"BE",X"FC",X"98",X"08",X"04",X"00",X"00",X"00",X"00",X"00",X"00",
X"D4",X"DC",X"FE",X"FC",X"99",X"1A",X"0E",X"0C",X"12",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"80",X"00",X"00",X"00",X"80",X"00",X"00",X"20",X"D0",X"80",X"80",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"04",X"01",X"01",X"01",X"08",X"08",X"04",X"24",X"14",X"95",X"55",X"4F",X"2F",X"BF",X"7F",X"7F",
X"00",X"00",X"00",X"00",X"80",X"88",X"C2",X"42",X"C4",X"CC",X"CC",X"D8",X"F8",X"F9",X"FE",X"FC",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"08",X"26",X"03",X"23",X"10",X"08",X"08",X"F7",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"7F",X"FF",X"7F",X"3C",X"B8",X"38",X"0C",X"88",X"08",X"04",X"00",X"00",X"10",X"00",X"20",X"00",
X"FE",X"FC",X"FF",X"7F",X"26",X"20",X"10",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"00",X"00",
X"00",X"40",X"80",X"00",X"20",X"40",X"00",X"00",X"10",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"18",X"3F",X"7F",X"EF",X"8D",X"18",X"11",X"01",X"02",X"00",X"00",X"00",X"00",
X"00",X"20",X"10",X"20",X"00",X"F0",X"F0",X"E0",X"E0",X"C0",X"80",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"08",X"18",X"00",X"00",X"00",X"18",X"38",X"30",X"91",X"81",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"40",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"04",X"03",X"03",X"01",X"00",X"18",X"7C",X"FF",X"8F",X"3F",X"3C",X"61",X"01",X"03",X"02",
X"80",X"40",X"40",X"60",X"60",X"20",X"00",X"00",X"80",X"F0",X"F0",X"F0",X"E0",X"C0",X"00",X"00",
X"01",X"08",X"04",X"0C",X"03",X"01",X"00",X"18",X"7C",X"FF",X"8F",X"3F",X"3C",X"61",X"01",X"03",
X"00",X"80",X"C0",X"40",X"60",X"60",X"20",X"00",X"00",X"80",X"E0",X"F0",X"F0",X"E0",X"C0",X"00",
X"01",X"08",X"04",X"06",X"02",X"07",X"01",X"00",X"18",X"7C",X"7F",X"CF",X"9F",X"1C",X"31",X"21",
X"00",X"80",X"C0",X"C0",X"60",X"60",X"60",X"20",X"00",X"00",X"80",X"E0",X"F0",X"F0",X"E0",X"C0",
X"00",X"00",X"03",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"00",X"00",
X"00",X"00",X"C0",X"40",X"40",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"02",X"04",X"01",X"08",X"02",X"00",X"04",X"02",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"80",X"00",X"20",X"00",X"A0",X"00",X"40",X"80",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0C",X"3E",X"FF",X"1E",X"0C",X"00",X"00",X"00",
X"00",X"00",X"00",X"78",X"7E",X"3F",X"1E",X"0C",X"00",X"3C",X"3C",X"00",X"07",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0E",X"3F",X"06",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"78",X"7E",X"3F",X"1E",X"0C",X"00",X"3C",X"3C",X"00",X"07",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"18",X"25",X"05",X"09",X"05",X"25",X"18",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C6",X"29",X"29",X"29",X"29",X"29",X"C6",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"18",X"25",X"25",X"19",X"25",X"25",X"18",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C6",X"29",X"29",X"29",X"29",X"29",X"C6",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00");
begin
process(clk)
begin
if rising_edge(clk) then
data <= rom_data(to_integer(unsigned(addr)));
end if;
end process;
end architecture;

View File

@@ -0,0 +1,278 @@
library ieee;
use ieee.std_logic_1164.all,ieee.numeric_std.all;
entity mpb_23m is
port (
clk : in std_logic;
addr : in std_logic_vector(11 downto 0);
data : out std_logic_vector(7 downto 0)
);
end entity;
architecture prom of mpb_23m is
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
signal rom_data: rom := (
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0E",
X"00",X"00",X"00",X"00",X"00",X"40",X"40",X"40",X"40",X"40",X"40",X"41",X"43",X"4F",X"47",X"0F",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"7E",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"C0",X"F0",X"01",
X"3F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"7F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"FC",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"0D",X"E1",X"FC",X"FC",X"FC",X"FC",X"F8",X"F8",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"08",X"40",X"02",X"18",X"98",X"19",X"00",X"24",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"10",X"02",X"40",X"18",X"19",X"98",X"00",X"42",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"48",X"00",X"30",X"B4",X"00",X"48",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"20",X"00",X"00",X"B4",X"30",X"00",X"00",X"10",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"04",X"02",X"02",X"01",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"03",X"03",X"0F",X"0F",X"0F",X"0F",X"1F",X"3F",X"1F",X"9F",X"BF",
X"00",X"00",X"00",X"7C",X"FF",X"FF",X"FC",X"F8",X"F3",X"F7",X"FF",X"FE",X"FE",X"FC",X"FE",X"FE",
X"00",X"00",X"10",X"98",X"88",X"00",X"10",X"B8",X"F8",X"F8",X"F0",X"30",X"10",X"00",X"10",X"00",
X"00",X"01",X"0F",X"1F",X"1F",X"3E",X"3C",X"3C",X"38",X"18",X"1C",X"00",X"00",X"00",X"00",X"00",
X"3C",X"7C",X"F0",X"F0",X"F8",X"B0",X"10",X"02",X"90",X"00",X"00",X"00",X"40",X"00",X"00",X"00",
X"FC",X"30",X"20",X"20",X"00",X"00",X"40",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"0F",X"1F",X"3F",X"3F",X"15",X"00",X"20",X"0C",X"0C",X"20",
X"00",X"00",X"00",X"02",X"04",X"04",X"08",X"10",X"C0",X"E3",X"FB",X"FF",X"FF",X"FF",X"F3",X"F0",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"30",X"7C",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"C0",X"C0",X"E0",X"E0",
X"00",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"20",X"0C",X"2C",X"00",X"01",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"FD",X"FC",X"7F",X"FF",X"FF",X"7F",X"3F",X"18",X"00",X"03",X"0B",X"00",X"00",X"02",X"00",X"00",
X"C0",X"70",X"10",X"80",X"84",X"CC",X"E8",X"F0",X"60",X"20",X"40",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"0F",X"3F",X"7F",
X"00",X"00",X"00",X"20",X"20",X"20",X"E0",X"E0",X"E0",X"41",X"E3",X"EF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"C0",X"F0",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"FF",X"7F",X"7F",X"3F",X"3F",X"0C",X"00",X"00",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"BF",X"1F",X"1F",X"06",X"00",X"00",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"C3",X"81",X"81",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"FC",X"FC",X"FC",X"FC",X"F8",X"F8",X"F0",X"E0",X"E0",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"1D",
X"00",X"01",X"02",X"12",X"11",X"09",X"CD",X"67",X"37",X"7F",X"7F",X"33",X"60",X"E0",X"C0",X"C7",
X"04",X"08",X"08",X"10",X"10",X"38",X"B8",X"FD",X"FF",X"CF",X"83",X"02",X"00",X"00",X"60",X"F9",
X"02",X"84",X"44",X"44",X"42",X"66",X"F7",X"FF",X"FF",X"C8",X"00",X"00",X"18",X"7D",X"FF",X"FF",
X"00",X"00",X"04",X"04",X"08",X"18",X"70",X"E1",X"FB",X"7F",X"3E",X"0F",X"07",X"C3",X"E3",X"E1",
X"00",X"00",X"00",X"00",X"00",X"10",X"60",X"80",X"00",X"00",X"60",X"98",X"00",X"80",X"C0",X"F0",
X"00",X"00",X"00",X"01",X"01",X"03",X"06",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"00",
X"E7",X"4F",X"4F",X"C7",X"E3",X"B0",X"18",X"3E",X"3F",X"37",X"63",X"41",X"41",X"82",X"02",X"00",
X"FF",X"FF",X"FF",X"CF",X"87",X"00",X"00",X"4E",X"FF",X"FF",X"3B",X"10",X"10",X"20",X"20",X"20",
X"FF",X"FF",X"FF",X"BB",X"00",X"00",X"03",X"0F",X"1F",X"FF",X"EF",X"CB",X"C9",X"44",X"44",X"20",
X"F1",X"F3",X"E3",X"47",X"0F",X"06",X"07",X"CF",X"FD",X"7C",X"38",X"1C",X"04",X"02",X"01",X"01",
X"88",X"00",X"80",X"C0",X"E0",X"60",X"10",X"80",X"C0",X"C0",X"20",X"20",X"10",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"07",X"0F",X"07",X"0E",X"1E",X"1F",
X"00",X"00",X"01",X"0B",X"1F",X"1F",X"3F",X"7E",X"FE",X"FC",X"CC",X"00",X"00",X"01",X"03",X"07",
X"00",X"00",X"C1",X"F3",X"FF",X"FF",X"FF",X"3F",X"19",X"10",X"00",X"00",X"60",X"F9",X"FF",X"FF",
X"00",X"80",X"C0",X"F3",X"FF",X"FF",X"E7",X"C3",X"82",X"00",X"00",X"00",X"E3",X"CF",X"FF",X"FF",
X"00",X"00",X"00",X"B0",X"F8",X"FC",X"FE",X"3E",X"1F",X"13",X"01",X"01",X"83",X"C3",X"C7",X"83",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"C0",X"E0",X"F0",X"F0",X"E0",X"F0",
X"1F",X"0F",X"1F",X"0F",X"07",X"07",X"03",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"87",X"C3",X"80",X"00",X"00",X"82",X"C7",X"CF",X"FF",X"7F",X"7F",X"3F",X"33",X"00",X"00",X"00",
X"FF",X"7F",X"3F",X"0D",X"00",X"00",X"00",X"00",X"83",X"87",X"CF",X"FF",X"FF",X"F3",X"20",X"00",
X"FF",X"FF",X"FD",X"D8",X"00",X"00",X"08",X"0C",X"1F",X"9F",X"FF",X"FE",X"FC",X"60",X"00",X"00",
X"E1",X"C1",X"81",X"03",X"27",X"3F",X"3F",X"7F",X"FE",X"FC",X"F0",X"E0",X"60",X"00",X"00",X"00",
X"F0",X"E0",X"E0",X"C0",X"C0",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"03",X"07",X"07",X"77",X"7E",X"7C",X"F0",X"E0",X"E1",X"E1",X"70",X"70",X"39",X"3F",X"1F",X"0D",
X"00",X"CE",X"FF",X"FF",X"71",X"00",X"68",X"FF",X"FF",X"99",X"00",X"00",X"CF",X"FF",X"F3",X"80",
X"39",X"FF",X"FF",X"CF",X"00",X"00",X"CF",X"FF",X"FF",X"CF",X"00",X"00",X"39",X"FF",X"EF",X"C3",
X"80",X"C0",X"F0",X"FC",X"FE",X"3E",X"0F",X"87",X"C6",X"06",X"0C",X"0E",X"CE",X"FC",X"F0",X"30",
X"00",X"00",X"00",X"00",X"01",X"07",X"0F",X"1F",X"1F",X"1F",X"0F",X"03",X"01",X"01",X"00",X"00",
X"00",X"00",X"00",X"00",X"9C",X"FF",X"E7",X"80",X"00",X"91",X"FF",X"FF",X"F3",X"C0",X"00",X"00",
X"00",X"00",X"00",X"70",X"FC",X"FF",X"93",X"01",X"00",X"81",X"93",X"FF",X"FB",X"60",X"00",X"00",
X"00",X"00",X"00",X"00",X"C0",X"E0",X"F0",X"F0",X"F0",X"F0",X"E0",X"E0",X"40",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"0C",X"3F",X"70",X"73",X"3F",X"0C",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"F0",X"BC",X"0E",X"1E",X"F4",X"C0",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"20",X"70",X"F0",X"60",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"60",X"F0",X"70",X"20",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"60",X"F0",X"F0",X"60",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"01",X"03",X"03",X"01",X"03",X"03",X"01",X"01",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"B0",X"F8",X"FC",X"FC",X"FE",X"FC",X"FC",X"FC",X"F8",X"98",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"08",X"18",X"28",X"00",X"02",X"26",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"02",X"00",X"08",X"00",X"01",X"03",X"06",X"80",X"10",X"21",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"60",X"E0",X"E0",X"E0",X"20",X"30",X"70",X"D0",X"18",X"3C",X"1C",
X"00",X"03",X"00",X"00",X"04",X"08",X"08",X"00",X"00",X"00",X"04",X"08",X"00",X"82",X"C0",X"80",
X"00",X"C0",X"E0",X"60",X"70",X"20",X"60",X"50",X"10",X"30",X"20",X"30",X"30",X"78",X"3C",X"7E",
X"07",X"07",X"03",X"07",X"09",X"01",X"02",X"02",X"04",X"00",X"00",X"04",X"08",X"00",X"00",X"00",
X"00",X"00",X"80",X"80",X"80",X"80",X"E0",X"30",X"30",X"50",X"10",X"28",X"48",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"01",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"08",X"04",X"02",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"08",X"08",X"08",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"80",X"40",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"03",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"C0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"08",X"08",X"08",X"08",X"04",X"02",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"03",X"04",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"FE",X"FF",X"00",X"00",X"03",X"00",X"01",X"04",X"31",X"7B",X"7B",X"31",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"00",X"80",X"20",X"8C",X"DE",X"DE",X"8C",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"78",X"7E",X"3F",X"1F",X"0F",X"1F",X"0F",X"0F",X"1F",X"07",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"30",X"E0",X"E0",X"C0",X"FF",X"FF",X"FF",X"FF",X"03",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"70",X"FC",X"F0",X"F0",X"F0",X"C0",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0",X"E0",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"78",X"78",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"C0",X"C0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"01",X"03",X"07",X"07",X"03",X"01",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"C0",X"C0",X"C0",X"80",X"00",X"00",X"00",X"00",X"00",
X"00",X"03",X"0F",X"1E",X"38",X"71",X"73",X"27",X"67",X"63",X"70",X"60",X"39",X"1F",X"06",X"00",
X"00",X"C0",X"F0",X"7C",X"1C",X"8E",X"C6",X"E4",X"E4",X"CE",X"86",X"0C",X"BC",X"F8",X"C0",X"00",
X"06",X"0F",X"3F",X"32",X"70",X"46",X"CF",X"CF",X"87",X"CF",X"66",X"E0",X"70",X"3C",X"1F",X"07",
X"C0",X"F0",X"9C",X"0C",X"46",X"E2",X"F3",X"E2",X"F7",X"F7",X"C3",X"06",X"06",X"DC",X"F8",X"B0",
X"00",X"00",X"00",X"00",X"01",X"07",X"0F",X"0F",X"03",X"00",X"00",X"38",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"C0",X"E0",X"E0",X"80",X"00",X"00",X"38",X"00",X"00",X"00",X"00",
X"00",X"01",X"03",X"07",X"07",X"07",X"03",X"05",X"18",X"3C",X"7E",X"7F",X"7E",X"3C",X"18",X"00",
X"00",X"80",X"C0",X"E0",X"E0",X"E0",X"C0",X"A0",X"18",X"3C",X"7E",X"FE",X"7E",X"3C",X"18",X"00",
X"00",X"00",X"00",X"00",X"18",X"3D",X"7E",X"7E",X"7E",X"3C",X"1A",X"01",X"00",X"00",X"00",X"00",
X"30",X"78",X"FC",X"FC",X"FC",X"78",X"30",X"10",X"10",X"30",X"78",X"FC",X"FC",X"FC",X"78",X"30",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"1C",X"03",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0C",X"03",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"03",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"09",X"04",X"02",X"00",X"20",X"C0",X"18",X"23",X"02",X"04",X"00",X"00",X"00",
X"00",X"00",X"80",X"00",X"10",X"60",X"C0",X"40",X"00",X"10",X"00",X"50",X"40",X"20",X"00",X"00",
X"00",X"00",X"00",X"20",X"11",X"09",X"24",X"00",X"20",X"0A",X"1A",X"23",X"49",X"11",X"02",X"00",
X"00",X"00",X"40",X"80",X"8C",X"10",X"60",X"00",X"08",X"40",X"A0",X"10",X"40",X"20",X"00",X"00",
X"02",X"81",X"24",X"32",X"08",X"00",X"B8",X"6C",X"00",X"02",X"07",X"1D",X"20",X"40",X"89",X"10",
X"02",X"20",X"88",X"B0",X"E1",X"74",X"38",X"10",X"40",X"E0",X"7C",X"D2",X"88",X"84",X"00",X"10",
X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"03",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"E0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"04",X"03",X"03",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"80",X"40",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"05",X"03",X"03",X"03",X"01",X"01",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"40",X"80",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"14",X"0F",X"5C",X"30",X"E0",X"40",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"A0",X"C0",X"E4",X"38",X"0D",X"06",X"07",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"01",X"05",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"02",X"4F",X"2F",X"39",X"F0",X"C0",X"80",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"C0",X"F4",X"FE",X"9F",X"0F",X"03",X"01",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"C0",X"D0",
X"03",X"07",X"07",X"06",X"0E",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"E0",X"60",X"70",X"38",X"18",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"04",X"02",X"02",X"01",X"00",X"20",X"14",X"03",X"07",X"07",X"53",
X"04",X"04",X"40",X"42",X"22",X"20",X"04",X"02",X"57",X"3F",X"3F",X"FF",X"F9",X"F0",X"E0",X"C0",
X"10",X"00",X"20",X"22",X"02",X"04",X"44",X"20",X"60",X"FB",X"FF",X"7F",X"1F",X"0B",X"02",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"20",X"80",X"00",X"20",X"C4",X"C8",X"C0",X"E0",X"EA",
X"0F",X"0E",X"1E",X"1E",X"3C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"F0",X"7C",X"FC",X"3C",X"1E",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"09",X"05",X"07",X"07",X"0F",X"0F",X"1F",X"1F",X"7F",
X"08",X"04",X"0D",X"8F",X"5F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"20",X"40",X"E0",X"F8",X"FC",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"40",X"80",X"90",X"E0",X"E0",X"E0",X"F4",X"F8",X"F8",X"F8",X"FC",
X"3F",X"3F",X"3F",X"1F",X"7F",X"03",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"FF",X"FE",X"F7",X"FA",X"F0",X"E0",X"F8",X"FD",X"FB",X"7F",X"5F",X"1F",X"0F",X"03",X"01",X"01",
X"FF",X"FF",X"6F",X"5F",X"0F",X"1F",X"3F",X"3E",X"5E",X"F4",X"F0",X"E0",X"C0",X"80",X"80",X"00",
X"F8",X"FC",X"FC",X"FE",X"FE",X"C0",X"C0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"04",X"03",X"03",X"01",X"03",X"43",X"27",
X"00",X"00",X"00",X"01",X"00",X"01",X"21",X"13",X"1B",X"1F",X"1F",X"BF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"04",X"08",X"98",X"D8",X"FE",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"20",X"60",X"E0",X"C0",X"E0",X"F2",
X"3F",X"1F",X"1F",X"1F",X"1F",X"1F",X"BF",X"7F",X"7F",X"3F",X"7F",X"7F",X"7F",X"7F",X"FF",X"FC",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"FC",X"F0",X"D0",X"C0",X"80",X"00",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"9F",X"0F",X"01",X"00",X"00",X"00",
X"F4",X"FC",X"F8",X"F8",X"FD",X"FE",X"FC",X"FC",X"FD",X"FE",X"FE",X"FE",X"FE",X"7F",X"3F",X"0F",
X"70",X"20",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"04",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"20",X"10",X"10",X"40",X"21",X"13",X"1F",X"3F",X"1F",X"3F",X"3F",X"1D",
X"00",X"00",X"00",X"50",X"00",X"20",X"20",X"40",X"C0",X"C0",X"F0",X"F9",X"FA",X"FC",X"F8",X"DC",
X"00",X"00",X"00",X"00",X"01",X"01",X"81",X"03",X"47",X"67",X"F7",X"FB",X"7F",X"7F",X"3F",X"7B",
X"80",X"00",X"80",X"80",X"00",X"80",X"80",X"C8",X"E0",X"E2",X"C4",X"EC",X"DE",X"FE",X"FE",X"CC",
X"00",X"04",X"00",X"00",X"00",X"40",X"40",X"21",X"3D",X"9F",X"7F",X"FF",X"FF",X"FF",X"7B",X"39",
X"00",X"00",X"04",X"00",X"00",X"00",X"C0",X"E1",X"F0",X"F8",X"FE",X"FF",X"FF",X"FF",X"FF",X"46",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"00",X"04",X"02",X"12",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"08",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"08",X"07",X"01",X"00",X"10",X"29",X"07",X"07",X"03",X"03",X"01",X"00",
X"11",X"09",X"8B",X"4F",X"2F",X"BF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F7",X"FB",X"FB",X"71",
X"10",X"10",X"B2",X"F4",X"F9",X"FA",X"FE",X"FC",X"FE",X"FE",X"FE",X"FF",X"F7",X"EF",X"CF",X"9E",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"10",X"10",X"10",X"08",X"08",X"89",X"45",X"45",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"40",X"40",X"80",X"80",X"88",X"11",X"22",X"64",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"08",X"06",X"03",X"03",X"03",X"07",X"07",X"0F",X"0F",X"07",X"07",X"03",X"03",X"01",X"00",
X"67",X"37",X"37",X"1F",X"BF",X"BF",X"BF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FB",X"BB",X"71",
X"E6",X"F8",X"F9",X"FF",X"FE",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"DF",X"8E",
X"00",X"40",X"80",X"00",X"20",X"40",X"80",X"80",X"D0",X"C0",X"80",X"80",X"80",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"03",X"03",X"03",X"02",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0",X"60",X"F8",X"F8",X"F4",X"FE",
X"01",X"01",X"00",X"18",X"2E",X"7E",X"7E",X"3D",X"7F",X"6F",X"36",X"00",X"00",X"00",X"00",X"00",
X"FE",X"FC",X"D8",X"30",X"00",X"02",X"07",X"0D",X"0F",X"06",X"66",X"B0",X"F8",X"78",X"60",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"03",X"05",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"A0",X"E0",
X"0F",X"0F",X"07",X"02",X"01",X"00",X"08",X"1C",X"1A",X"2E",X"3E",X"18",X"00",X"00",X"00",X"00",
X"D0",X"F0",X"F0",X"E0",X"C0",X"18",X"3E",X"3E",X"5D",X"7F",X"7F",X"36",X"0E",X"04",X"00",X"00",
X"01",X"0F",X"1F",X"07",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"B0",X"F0",X"F0",X"F0",X"F0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"07",X"1F",X"3F",X"79",
X"00",X"7E",X"7E",X"7E",X"7E",X"7E",X"7E",X"3C",X"7E",X"7E",X"FF",X"FF",X"FF",X"FF",X"E7",X"C3",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"E0",X"F8",X"FC",X"9E",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"04",X"03",X"03",X"07",X"0F",X"07",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"80",X"40",X"40",X"60",X"60",X"E0",X"F0",X"F0",X"70",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"01",X"08",X"04",X"06",X"03",X"07",X"0F",X"07",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"80",X"C0",X"40",X"60",X"60",X"E0",X"F0",X"F0",X"70",X"10",X"00",X"00",X"00",X"00",X"00",
X"01",X"08",X"04",X"06",X"02",X"07",X"07",X"0F",X"07",X"03",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"80",X"C0",X"C0",X"60",X"60",X"60",X"E0",X"F0",X"F0",X"70",X"10",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"07",X"1F",X"3F",X"79",
X"7E",X"7E",X"7E",X"7E",X"7E",X"3C",X"3C",X"7E",X"7E",X"7E",X"FF",X"FF",X"FF",X"FF",X"E7",X"C3",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"E0",X"F8",X"FC",X"9E",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"07",X"1F",X"3F",X"79",
X"00",X"00",X"20",X"64",X"7E",X"3C",X"3C",X"7E",X"7E",X"7E",X"FF",X"FF",X"FF",X"FF",X"E7",X"C3",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"E0",X"F8",X"FC",X"9E",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"06",X"0F",X"06",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"78",X"7E",X"3F",X"1F",X"0F",X"1F",X"0F",X"0F",X"1F",X"07",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"06",X"0F",X"06",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"78",X"7E",X"3F",X"1F",X"0F",X"1F",X"0F",X"0F",X"1F",X"07",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"3C",X"21",X"21",X"39",X"05",X"05",X"38",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C6",X"29",X"29",X"29",X"29",X"29",X"C6",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"98",X"A5",X"A5",X"A5",X"A5",X"A5",X"98",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C6",X"29",X"29",X"29",X"29",X"29",X"C6",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00");
begin
process(clk)
begin
if rising_edge(clk) then
data <= rom_data(to_integer(unsigned(addr)));
end if;
end process;
end architecture;

View File

@@ -0,0 +1,278 @@
library ieee;
use ieee.std_logic_1164.all,ieee.numeric_std.all;
entity mpe_13l is
port (
clk : in std_logic;
addr : in std_logic_vector(11 downto 0);
data : out std_logic_vector(7 downto 0)
);
end entity;
architecture prom of mpe_13l is
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
signal rom_data: rom := (
X"00",X"00",X"00",X"00",X"40",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"CC",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"76",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"60",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"CC",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"76",X"60",X"00",X"00",
X"00",X"00",X"00",X"00",X"60",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"EE",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FE",X"F0",X"00",X"00",
X"00",X"00",X"00",X"00",X"70",X"11",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"EE",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"F0",X"00",X"00",
X"00",X"00",X"00",X"00",X"70",X"33",X"88",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"FF",
X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"F7",X"F1",X"00",X"00",
X"00",X"00",X"00",X"00",X"F1",X"33",X"CC",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"FF",
X"80",X"88",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"F6",X"F3",X"00",X"00",
X"00",X"00",X"00",X"00",X"F1",X"77",X"CC",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"F6",
X"C0",X"88",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"FF",X"F7",X"00",X"00",
X"00",X"00",X"00",X"00",X"F1",X"FF",X"E6",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"F7",
X"D1",X"88",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"FF",X"FF",X"00",X"00",
X"00",X"00",X"00",X"10",X"F1",X"FF",X"EE",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"FF",
X"F3",X"88",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"30",X"FF",X"FE",X"00",X"00",
X"00",X"00",X"00",X"10",X"F3",X"FB",X"EE",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"10",X"FF",
X"F1",X"88",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"31",X"FF",X"FC",X"00",X"00",
X"00",X"00",X"00",X"30",X"F3",X"F9",X"FE",X"00",X"00",X"00",X"00",X"11",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"00",X"00",X"00",X"00",X"0F",X"10",X"FE",
X"F3",X"CC",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"70",X"FF",X"F8",X"00",X"00",
X"00",X"00",X"00",X"F0",X"F3",X"FD",X"FA",X"00",X"00",X"00",X"00",X"11",X"98",X"80",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"00",X"00",X"00",X"08",X"0F",X"30",X"FE",
X"F7",X"CC",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"CC",X"71",X"FF",X"F8",X"C0",X"00",
X"00",X"00",X"00",X"F0",X"F1",X"FF",X"F0",X"00",X"00",X"00",X"00",X"33",X"B8",X"80",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"88",X"00",X"00",X"08",X"09",X"30",X"FF",
X"F3",X"CC",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"CC",X"F8",X"FF",X"FC",X"C0",X"00",
X"00",X"00",X"00",X"F0",X"F1",X"FF",X"F0",X"00",X"00",X"00",X"00",X"33",X"E8",X"C0",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"A8",X"00",X"00",X"09",X"0C",X"30",X"FF",
X"F3",X"CC",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"F8",X"FF",X"FE",X"C0",X"00",
X"00",X"00",X"10",X"F0",X"F3",X"FF",X"F0",X"00",X"00",X"00",X"00",X"77",X"F8",X"C0",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"75",X"EC",X"00",X"00",X"09",X"08",X"71",X"FF",
X"FB",X"CC",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"F7",X"FC",X"F7",X"FC",X"E0",X"00",
X"00",X"00",X"30",X"F0",X"F1",X"FF",X"F8",X"00",X"00",X"00",X"00",X"77",X"F0",X"C0",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"75",X"FC",X"00",X"00",X"09",X"08",X"71",X"FF",
X"FB",X"CC",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"F7",X"FC",X"F7",X"F8",X"E0",X"00",
X"00",X"10",X"30",X"F0",X"F1",X"FF",X"F8",X"80",X"00",X"00",X"00",X"77",X"F0",X"E0",X"00",X"00",
X"00",X"33",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FC",X"80",X"00",X"0B",X"08",X"70",X"FE",
X"FF",X"CC",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"66",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"F7",X"FE",X"FF",X"F8",X"E0",X"00",
X"00",X"30",X"B0",X"F0",X"F3",X"FF",X"F8",X"80",X"00",X"00",X"00",X"FF",X"F8",X"E0",X"00",X"00",
X"00",X"33",X"88",X"00",X"00",X"00",X"00",X"00",X"F7",X"F8",X"80",X"00",X"0B",X"0C",X"70",X"FE",
X"FF",X"C4",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"EE",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"F7",X"FE",X"FF",X"FC",X"E0",X"00",
X"00",X"30",X"F0",X"FD",X"FB",X"FF",X"FC",X"80",X"00",X"00",X"00",X"FF",X"F8",X"E0",X"00",X"00",
X"00",X"33",X"88",X"00",X"00",X"00",X"00",X"00",X"F3",X"F8",X"80",X"00",X"06",X"0C",X"71",X"FE",
X"F7",X"C4",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"EE",X"CC",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"F7",X"FC",X"FF",X"FC",X"E0",X"00",
X"00",X"F0",X"F0",X"FF",X"FD",X"FF",X"FC",X"C4",X"00",X"11",X"11",X"FF",X"F8",X"E0",X"00",X"00",
X"00",X"77",X"C0",X"00",X"00",X"00",X"00",X"00",X"F7",X"FC",X"C0",X"80",X"00",X"04",X"71",X"FF",
X"F6",X"D5",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"F7",X"C4",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"F3",X"FE",X"FF",X"F8",X"E0",X"00",
X"00",X"F0",X"F0",X"F7",X"FE",X"FF",X"FC",X"C4",X"00",X"33",X"BB",X"FB",X"F0",X"E0",X"00",X"00",
X"00",X"FF",X"C0",X"00",X"00",X"00",X"00",X"D0",X"F3",X"FD",X"D0",X"80",X"00",X"02",X"70",X"FF",
X"F6",X"D5",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"F7",X"C4",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"F3",X"FF",X"FF",X"F0",X"E0",X"00",
X"30",X"F0",X"F0",X"FB",X"FF",X"FF",X"FF",X"E0",X"00",X"33",X"FF",X"F7",X"F0",X"F4",X"00",X"00",
X"00",X"FF",X"C8",X"00",X"00",X"00",X"10",X"F0",X"F3",X"FD",X"F8",X"80",X"00",X"00",X"70",X"FF",
X"F6",X"DD",X"CC",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"CC",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"22",X"F7",X"FF",X"FF",X"F0",X"F0",X"00",
X"70",X"F0",X"F3",X"FD",X"FF",X"FF",X"FF",X"E8",X"00",X"77",X"FF",X"FF",X"F8",X"FC",X"00",X"00",
X"11",X"FE",X"C0",X"00",X"00",X"00",X"10",X"F4",X"F7",X"FF",X"FC",X"80",X"00",X"00",X"78",X"FF",
X"FE",X"FF",X"CC",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FB",X"CC",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"F7",X"F7",X"FE",X"F0",X"F0",X"80",
X"71",X"F8",X"F7",X"FF",X"FF",X"FF",X"FF",X"F0",X"33",X"FF",X"FF",X"FD",X"F0",X"F8",X"00",X"00",
X"11",X"FC",X"E0",X"C0",X"00",X"00",X"10",X"FC",X"FF",X"FF",X"FC",X"C0",X"00",X"00",X"F3",X"FE",
X"FE",X"FF",X"EE",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FB",X"CC",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"F7",X"F7",X"FE",X"F0",X"F0",X"E0",
X"FF",X"FA",X"F7",X"FF",X"FF",X"FF",X"FF",X"F1",X"FF",X"FD",X"FF",X"FC",X"F1",X"F0",X"C0",X"00",
X"33",X"F8",X"E0",X"C0",X"00",X"00",X"11",X"FE",X"FF",X"FF",X"FD",X"C4",X"00",X"00",X"F3",X"FE",
X"FF",X"FF",X"EE",X"00",X"00",X"00",X"66",X"00",X"00",X"00",X"33",X"FF",X"FF",X"CC",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"F7",X"F7",X"FF",X"F0",X"F1",X"F1",
X"FF",X"F2",X"FF",X"FF",X"FF",X"FF",X"FE",X"F3",X"FF",X"F0",X"FF",X"FE",X"F0",X"F0",X"C0",X"00",
X"33",X"F8",X"E0",X"E0",X"00",X"00",X"33",X"FF",X"F7",X"FF",X"FF",X"F8",X"00",X"33",X"F3",X"FE",
X"FF",X"FF",X"FF",X"88",X"00",X"00",X"77",X"66",X"00",X"00",X"33",X"FF",X"FF",X"CC",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FB",X"FF",X"F3",X"F3",X"FD",
X"FF",X"F3",X"FF",X"FF",X"FF",X"FF",X"FC",X"F7",X"FE",X"F0",X"FF",X"FF",X"F0",X"F0",X"E0",X"00",
X"BB",X"FE",X"E0",X"E0",X"00",X"00",X"33",X"FF",X"FF",X"FF",X"FF",X"F8",X"00",X"FF",X"F7",X"FF",
X"FF",X"FF",X"FF",X"88",X"00",X"00",X"77",X"EC",X"00",X"00",X"33",X"FF",X"FF",X"CC",X"00",X"00",
X"00",X"11",X"CC",X"00",X"00",X"00",X"00",X"00",X"11",X"FD",X"FF",X"FB",X"FE",X"F7",X"F7",X"FB",
X"FE",X"F7",X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",X"F8",X"F0",X"F7",X"FE",X"F0",X"F0",X"E0",X"11",
X"FF",X"FC",X"F0",X"E0",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",X"88",X"FF",X"F7",X"FF",
X"FF",X"FC",X"FF",X"88",X"00",X"11",X"FF",X"EC",X"00",X"00",X"33",X"FF",X"FD",X"CC",X"00",X"00",
X"00",X"11",X"CC",X"00",X"00",X"00",X"00",X"00",X"11",X"FC",X"FF",X"FF",X"FD",X"FE",X"FF",X"F7",
X"FD",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FB",X"FC",X"F8",X"FF",X"F8",X"F0",X"F1",X"F0",X"11",
X"FF",X"FC",X"FC",X"F1",X"00",X"00",X"FF",X"FF",X"FD",X"FF",X"FF",X"F2",X"88",X"FF",X"F7",X"FF",
X"FF",X"F8",X"F3",X"88",X"00",X"11",X"FF",X"EA",X"00",X"00",X"77",X"FF",X"FF",X"EC",X"00",X"00",
X"00",X"11",X"FE",X"00",X"00",X"00",X"00",X"00",X"11",X"FC",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FB",X"FF",X"FF",X"FF",X"FF",X"FF",X"F7",X"FF",X"FD",X"F9",X"FF",X"FE",X"F6",X"F3",X"F8",X"11",
X"FF",X"F9",X"F9",X"F9",X"80",X"11",X"FF",X"F7",X"FD",X"FF",X"FE",X"F5",X"99",X"FF",X"FB",X"FF",
X"FF",X"F0",X"F3",X"88",X"00",X"30",X"FF",X"EE",X"00",X"00",X"77",X"FB",X"FF",X"E8",X"00",X"00",
X"00",X"11",X"FE",X"C0",X"00",X"00",X"00",X"00",X"11",X"FD",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FD",X"FF",X"FD",X"FF",X"F3",X"FC",X"33",
X"FF",X"F7",X"F9",X"FB",X"80",X"11",X"FF",X"F1",X"FF",X"F8",X"FE",X"F5",X"99",X"FF",X"FF",X"FF",
X"FE",X"F0",X"F0",X"EE",X"00",X"31",X"FF",X"EE",X"00",X"00",X"77",X"FB",X"FF",X"EA",X"00",X"00",
X"00",X"11",X"FE",X"C0",X"00",X"00",X"00",X"00",X"11",X"F9",X"FF",X"FF",X"F7",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FC",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"FF",X"F9",X"FF",X"F7",X"FE",X"B3",
X"FE",X"FF",X"FF",X"FB",X"80",X"11",X"FE",X"F0",X"F3",X"FF",X"FE",X"FF",X"99",X"FF",X"FF",X"FF",
X"FF",X"F1",X"F5",X"EE",X"00",X"31",X"FF",X"FE",X"00",X"00",X"FF",X"FE",X"F7",X"E6",X"00",X"00",
X"10",X"F3",X"FD",X"F0",X"00",X"00",X"00",X"00",X"17",X"FD",X"FF",X"FF",X"FB",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F7",X"FF",X"FF",X"FF",X"F7",
X"FF",X"FF",X"FF",X"F3",X"C0",X"73",X"FE",X"F0",X"F3",X"FF",X"FC",X"FF",X"BB",X"FF",X"FC",X"F7",
X"FF",X"F1",X"FF",X"EE",X"00",X"F1",X"FF",X"FC",X"00",X"00",X"FF",X"FE",X"FF",X"FF",X"00",X"00",
X"10",X"F3",X"FB",X"F0",X"00",X"00",X"00",X"11",X"F9",X"FF",X"FF",X"FD",X"FC",X"F3",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F3",
X"FF",X"FF",X"FE",X"FF",X"C0",X"73",X"FC",X"F4",X"FB",X"FF",X"FB",X"FF",X"BB",X"FF",X"FF",X"F7",
X"FF",X"FB",X"FF",X"FF",X"88",X"F3",X"FF",X"FC",X"00",X"10",X"FF",X"FE",X"FF",X"FF",X"C0",X"00",
X"10",X"F7",X"FF",X"F4",X"80",X"00",X"00",X"32",X"F8",X"FF",X"FF",X"F9",X"FE",X"F1",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FD",
X"FF",X"FF",X"FF",X"FF",X"C8",X"F7",X"FC",X"F4",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FB",
X"FF",X"FB",X"FF",X"FF",X"98",X"FD",X"FF",X"F0",X"00",X"30",X"FF",X"FE",X"F7",X"FF",X"C0",X"00",
X"70",X"FF",X"FF",X"FC",X"80",X"00",X"00",X"74",X"F9",X"F7",X"FF",X"FF",X"FF",X"F0",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",
X"FF",X"FF",X"FD",X"FF",X"E8",X"F7",X"F8",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FD",
X"FF",X"FB",X"FF",X"FF",X"F8",X"FE",X"FE",X"FC",X"E0",X"30",X"FF",X"F7",X"FF",X"FF",X"C0",X"00",
X"70",X"FF",X"F7",X"FC",X"80",X"00",X"00",X"F8",X"FB",X"F7",X"FF",X"FF",X"FF",X"FA",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FD",X"FF",X"FC",X"F7",X"F2",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"F9",X"FF",X"FD",X"FE",X"E0",X"30",X"FF",X"F7",X"FF",X"FE",X"C4",X"00",
X"71",X"F7",X"F7",X"FD",X"80",X"10",X"CC",X"F2",X"FB",X"F7",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"F9",X"FB",X"FF",X"FC",X"F7",X"FF",X"FF",X"F7",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FD",X"FF",X"FF",X"FD",X"FF",X"FF",X"FF",X"F0",X"74",X"FF",X"F3",X"FF",X"FE",X"F7",X"00",
X"F1",X"F3",X"FB",X"FB",X"80",X"10",X"FF",X"FF",X"F3",X"FB",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FB",X"FF",X"FC",X"FF",X"FF",X"FF",X"FB",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"F6",X"F0",X"F8",X"FF",X"F7",X"FF",X"FC",X"F7",X"CC",
X"F3",X"F7",X"FF",X"FB",X"C0",X"30",X"FF",X"FF",X"F3",X"FD",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"FE",X"F0",X"F0",X"FF",X"F7",X"FF",X"FB",X"FF",X"FF",
X"FB",X"FB",X"FF",X"F7",X"FB",X"F9",X"FF",X"FF",X"FB",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",X"F0",X"F0",X"FC",X"F3",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"F7",X"FF",X"FF",X"F7",X"FF",X"FD",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"F7",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F9",X"F4",X"F5",X"FC",X"F7",X"FF",X"FF",X"FF",X"FE",
X"FF",X"FF",X"FF",X"FF",X"FF",X"F7",X"FF",X"FF",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F7",X"F6",X"F7",X"FC",X"FF",X"FF",X"FF",X"FF",X"FD",
X"FF",X"FF",X"FF",X"FF",X"FF",X"F7",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"FF",X"FC",X"F7",X"FF",X"FF",X"FF",X"FB",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",X"FF",X"F8",X"F7",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FB",X"FF",X"F8",X"F7",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F8",X"F1",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",X"F0",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",X"F3",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",X"F7",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",X"F1",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",X"F0",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",X"F3",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F4",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F7",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FB",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F1",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"F0",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F3",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FB",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF");
begin
process(clk)
begin
if rising_edge(clk) then
data <= rom_data(to_integer(unsigned(addr)));
end if;
end process;
end architecture;

View File

@@ -0,0 +1,278 @@
library ieee;
use ieee.std_logic_1164.all,ieee.numeric_std.all;
entity mpe_23k is
port (
clk : in std_logic;
addr : in std_logic_vector(11 downto 0);
data : out std_logic_vector(7 downto 0)
);
end entity;
architecture prom of mpe_23k is
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
signal rom_data: rom := (
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",
X"00",X"00",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"EC",
X"00",X"30",X"F0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",
X"C0",X"F0",X"FF",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",
X"FC",X"F3",X"FF",X"C8",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"FF",X"FF",
X"FC",X"F3",X"FF",X"F8",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",
X"F0",X"FF",X"FF",X"F0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"FF",X"FF",X"FC",
X"FF",X"FF",X"FF",X"F0",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"F3",
X"FF",X"FF",X"FF",X"F0",X"F0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"10",X"F0",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FE",X"F0",X"F0",X"F0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"98",X"F4",X"80",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FC",X"FF",
X"FF",X"FF",X"FE",X"F0",X"F0",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FC",X"FE",X"C0",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"FF",X"FF",X"FF",X"F3",X"FF",
X"FF",X"FF",X"FF",X"FC",X"F0",X"F0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"C0",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FC",X"F0",X"F0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"E8",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"FC",X"FF",X"FF",
X"FF",X"FF",X"FF",X"F0",X"F0",X"F0",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"FD",X"FF",X"FF",X"F0",X"80",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FE",X"F0",X"F0",X"F0",X"F0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"F9",X"FF",X"FE",X"F2",X"80",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FC",X"F0",X"F0",X"F0",X"F0",X"F0",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"C0",
X"00",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FB",X"FF",X"F9",X"FE",X"C0",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"80",X"00",X"00",X"00",X"00",X"00",X"10",X"E0",
X"70",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"F7",X"FF",X"F0",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FC",X"F0",X"F0",X"F0",X"F7",X"F0",X"F0",X"F0",X"00",X"00",X"00",X"00",X"00",X"33",X"F8",
X"F0",X"F8",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"FE",X"FF",X"FF",X"FF",X"FF",X"F0",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"33",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"F8",X"F0",X"F0",X"F1",X"FF",X"FC",X"F0",X"F0",X"C0",X"00",X"00",X"00",X"00",X"FF",X"FE",
X"F1",X"FC",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"FD",X"FF",X"FF",X"FF",X"FE",X"F0",X"80",X"00",
X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"F8",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FC",X"F0",X"F0",X"F0",X"F7",X"FF",X"F8",X"F0",X"F0",X"F0",X"00",X"00",X"00",X"00",X"FF",X"FF",
X"F3",X"FF",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"F9",X"FF",X"FF",X"FF",X"FC",X"F0",X"C0",X"00",
X"00",X"00",X"00",X"00",X"FF",X"FF",X"F1",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"F0",X"F0",X"F0",X"F1",X"FF",X"FF",X"F0",X"F0",X"F0",X"F0",X"C0",X"00",X"00",X"33",X"FF",X"FF",
X"F7",X"FF",X"F8",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"F3",X"FF",X"FF",X"FF",X"F3",X"F0",X"F0",X"00",
X"00",X"00",X"FF",X"FF",X"FF",X"F8",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",
X"F3",X"FE",X"F6",X"F7",X"FF",X"FE",X"F0",X"F0",X"F0",X"F7",X"F0",X"00",X"00",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FC",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"00",
X"E0",X"00",X"00",X"00",X"00",X"00",X"11",X"FC",X"FF",X"FF",X"FC",X"FF",X"FF",X"FC",X"F0",X"C0",
X"00",X"FF",X"FF",X"FF",X"FC",X"F1",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F3",
X"FF",X"FF",X"FF",X"FF",X"FF",X"F8",X"F3",X"F6",X"F1",X"FE",X"F0",X"E0",X"33",X"FF",X"FF",X"FF",
X"FF",X"FF",X"F8",X"F0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"CC",
X"F0",X"00",X"00",X"00",X"00",X"00",X"33",X"F9",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",X"F0",X"E0",
X"FF",X"FF",X"FF",X"FC",X"F1",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F9",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FE",X"F0",X"FF",X"FF",X"F7",X"FC",X"F0",X"F0",X"FF",X"FF",X"FF",X"FF",
X"F3",X"FF",X"F0",X"F0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FE",
X"F4",X"80",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"F0",X"F0",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F8",X"F7",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"F9",X"FF",X"FF",X"FF",X"FF",X"FF",X"F8",X"F3",X"FF",X"FF",X"FF",X"FC",
X"FF",X"FC",X"F1",X"FC",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",
X"FE",X"E0",X"00",X"00",X"00",X"33",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",X"F5",X"FF",X"FF",
X"FF",X"FE",X"F3",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"F0",X"F7",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FC",X"F7",X"FE",X"F0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"FF",X"FF",
X"FC",X"F0",X"80",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"F3",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"F0",X"FF",X"FC",X"F0",X"E0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"FF",
X"F8",X"F0",X"C0",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",X"F3",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F8",X"FF",X"FF",X"FF",X"FF",X"F3",X"FF",
X"FC",X"F3",X"FF",X"F0",X"F0",X"F0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",
X"F0",X"F3",X"F0",X"00",X"33",X"FC",X"FF",X"FF",X"FF",X"FF",X"F3",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"F1",X"FF",X"FF",X"FF",X"FC",X"FF",X"FF",
X"FF",X"FF",X"FE",X"F0",X"F0",X"F0",X"E0",X"00",X"00",X"00",X"00",X"00",X"33",X"FF",X"FF",X"FF",
X"F1",X"F7",X"FE",X"C0",X"77",X"F3",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F1",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FC",X"F0",X"F0",X"F0",X"F0",X"00",X"00",X"00",X"00",X"00",X"33",X"FF",X"FF",X"F0",
X"F3",X"FF",X"FC",X"F3",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",X"FF",X"FF",X"FC",X"FF",X"FE",X"F7",X"FF",X"FF",
X"FF",X"FF",X"F8",X"F0",X"F0",X"F0",X"F0",X"80",X"00",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FC",
X"FF",X"FF",X"F3",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",X"F3",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"F0",X"F0",X"F0",X"F0",X"F0",X"E0",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FC",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F8",X"F7",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FC",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"C0",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",X"FE",X"F3",X"FF",X"FF",X"FF",
X"FF",X"F0",X"F0",X"F0",X"F6",X"F0",X"F0",X"F0",X"F0",X"F3",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F3",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FC",X"F0",X"F0",X"FC",X"FF",X"FB",X"F2",X"F0",X"F0",X"F0",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"F8",X"F0",X"F1",X"FF",X"FF",X"FF",X"FF",X"F8",X"F0",X"F0",X"F3",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",
X"F1",X"FE",X"F7",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",X"F0",X"F0",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F8",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",X"F2",X"F0",X"F0",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"F7",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",X"FF",X"FC",X"FF",X"F3",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",X"F3",X"FF",X"FF",X"FF",X"FC",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"F1",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F9",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF");
begin
process(clk)
begin
if rising_edge(clk) then
data <= rom_data(to_integer(unsigned(addr)));
end if;
end process;
end architecture;

View File

@@ -0,0 +1,278 @@
library ieee;
use ieee.std_logic_1164.all,ieee.numeric_std.all;
entity mpe_33h is
port (
clk : in std_logic;
addr : in std_logic_vector(11 downto 0);
data : out std_logic_vector(7 downto 0)
);
end entity;
architecture prom of mpe_33h is
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
signal rom_data: rom := (
X"00",X"00",X"00",X"11",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"44",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"44",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"11",X"00",X"00",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"44",X"02",X"00",X"00",X"00",X"00",
X"00",X"00",X"44",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"11",X"11",X"8F",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"44",X"02",X"00",X"00",X"00",X"00",
X"00",X"00",X"44",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"11",X"77",X"EF",X"0D",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"44",X"02",X"00",X"00",X"00",X"00",
X"00",X"00",X"44",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"FF",X"FF",X"0F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"44",X"02",X"00",X"00",X"00",X"00",
X"00",X"11",X"FF",X"8F",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"11",X"FD",X"FB",X"87",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"44",X"02",X"04",X"00",X"00",X"00",
X"00",X"33",X"FF",X"CF",X"0C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"11",X"FF",X"FF",X"8F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"22",X"44",X"02",X"04",X"00",X"00",X"00",
X"00",X"FF",X"FF",X"FF",X"0F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"11",X"F3",X"F3",X"C3",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"22",X"44",X"02",X"04",X"00",X"00",X"00",
X"11",X"FF",X"FF",X"EF",X"0F",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"33",X"FF",X"FF",X"8F",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"22",X"33",X"0C",X"04",X"00",X"00",X"11",
X"FF",X"FF",X"FF",X"8F",X"0F",X"0F",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"33",X"FF",X"FF",X"CF",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"22",X"FF",X"8F",X"04",X"00",X"00",X"33",
X"FF",X"FF",X"FF",X"FF",X"8F",X"0F",X"0C",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"33",X"FF",X"FF",X"CF",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"11",X"FF",X"EF",X"08",X"00",X"00",X"33",
X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"0C",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"44",X"32",X"FC",X"FD",X"E9",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"11",X"FF",X"FF",X"08",X"00",X"00",X"33",
X"F5",X"F5",X"F5",X"FA",X"FA",X"5A",X"0C",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"0C",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"44",X"33",X"FF",X"FF",X"CF",X"08",X"00",X"00",X"00",X"00",X"88",X"11",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"22",X"01",X"00",X"33",X"F5",X"FA",X"0C",X"00",X"00",X"11",
X"F5",X"F5",X"F5",X"FA",X"FA",X"5A",X"08",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"FF",X"8F",X"08",X"00",X"00",X"00",X"00",
X"00",X"00",X"44",X"33",X"FF",X"FF",X"CF",X"08",X"00",X"00",X"00",X"00",X"88",X"11",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"22",X"01",X"00",X"77",X"FF",X"FF",X"0E",X"00",X"00",X"33",
X"FF",X"FF",X"FF",X"FF",X"FF",X"8F",X"0C",X"00",X"00",X"00",X"00",X"00",X"05",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"FF",X"EF",X"0C",X"00",X"00",X"00",X"00",
X"00",X"00",X"44",X"11",X"F1",X"F1",X"E1",X"00",X"00",X"00",X"00",X"00",X"44",X"22",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"22",X"01",X"00",X"77",X"FF",X"EF",X"0E",X"00",X"00",X"77",
X"F8",X"FC",X"F3",X"FC",X"F3",X"E1",X"0E",X"00",X"00",X"00",X"00",X"00",X"05",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"FF",X"0E",X"00",X"00",X"00",X"00",
X"00",X"00",X"44",X"11",X"F1",X"F1",X"E1",X"00",X"00",X"00",X"00",X"00",X"44",X"22",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"22",X"01",X"00",X"77",X"FF",X"CF",X"0E",X"00",X"00",X"77",
X"FF",X"FF",X"FF",X"FF",X"FF",X"EF",X"0E",X"00",X"00",X"00",X"00",X"00",X"05",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"FF",X"0E",X"00",X"00",X"00",X"00",
X"00",X"00",X"44",X"32",X"FF",X"FF",X"CF",X"08",X"00",X"00",X"00",X"00",X"22",X"44",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"22",X"11",X"00",X"33",X"FF",X"FF",X"0C",X"00",X"11",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"08",X"00",X"00",X"00",X"00",X"05",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"8F",X"00",X"00",X"00",X"00",
X"00",X"00",X"44",X"11",X"FF",X"FF",X"CF",X"08",X"00",X"00",X"00",X"00",X"22",X"44",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"22",X"06",X"00",X"32",X"7D",X"B6",X"84",X"00",X"11",X"F0",
X"FC",X"F0",X"FC",X"F3",X"F0",X"F3",X"F0",X"08",X"00",X"00",X"00",X"00",X"05",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"0F",X"00",X"00",X"00",X"00",
X"00",X"00",X"55",X"FF",X"FF",X"FF",X"EF",X"08",X"00",X"00",X"00",X"00",X"22",X"44",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"FF",X"08",X"33",X"FF",X"FF",X"0C",X"00",X"11",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"8F",X"08",X"00",X"00",X"00",X"00",X"EF",X"08",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"EF",X"0F",X"08",X"00",X"00",X"00",
X"00",X"00",X"33",X"FF",X"FF",X"FF",X"EF",X"08",X"00",X"00",X"00",X"00",X"11",X"88",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"EF",X"0C",X"33",X"FF",X"FF",X"0C",X"00",X"33",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"8F",X"0C",X"00",X"00",X"00",X"11",X"FF",X"0C",X"00",X"00",
X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"F5",X"F5",X"FA",X"5A",X"08",X"00",X"00",X"00",
X"00",X"00",X"77",X"FF",X"FF",X"FF",X"EF",X"08",X"00",X"00",X"00",X"33",X"11",X"88",X"CC",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"F6",X"0E",X"77",X"FF",X"FF",X"8E",X"00",X"77",X"FF",
X"ED",X"ED",X"FF",X"FF",X"B7",X"B7",X"CF",X"0E",X"00",X"00",X"00",X"33",X"FF",X"8E",X"00",X"00",
X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"CF",X"0F",X"08",X"00",X"00",X"00",
X"00",X"00",X"77",X"FF",X"FF",X"FF",X"CF",X"08",X"00",X"00",X"00",X"77",X"99",X"99",X"EE",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"0E",X"77",X"FF",X"FF",X"8E",X"00",X"77",X"FF",
X"ED",X"ED",X"FF",X"FF",X"B7",X"B7",X"8F",X"0E",X"00",X"00",X"00",X"77",X"FF",X"8F",X"00",X"00",
X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"FE",X"FD",X"F6",X"F7",X"CF",X"08",X"00",X"00",X"00",X"77",X"99",X"99",X"EE",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"32",X"76",X"04",X"77",X"FF",X"FF",X"8E",X"00",X"33",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"EF",X"0F",X"0C",X"00",X"00",X"00",X"74",X"FD",X"EF",X"00",X"00",
X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"0F",X"08",X"00",X"00",X"00",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"8F",X"08",X"00",X"00",X"00",X"33",X"11",X"88",X"CC",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"0E",X"75",X"FA",X"F5",X"CA",X"00",X"33",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"EF",X"0F",X"0C",X"00",X"00",X"00",X"77",X"FF",X"FF",X"00",X"02",
X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"8F",X"08",X"00",X"00",X"00",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"EF",X"0E",X"00",X"00",X"00",X"11",X"33",X"CC",X"88",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"8F",X"77",X"FF",X"FF",X"CF",X"00",X"00",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",X"00",X"00",X"00",X"00",X"FF",X"FF",X"CF",X"08",X"02",
X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FC",X"F4",X"F2",X"C3",X"00",X"00",X"00",X"00",
X"00",X"00",X"FF",X"F6",X"FD",X"FF",X"EF",X"0F",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"CF",X"08",
X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"EF",X"FF",X"FF",X"FF",X"CF",X"08",X"00",X"11",
X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"08",X"00",X"00",X"00",X"00",X"FA",X"F8",X"2F",X"08",X"02",
X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"8F",X"00",X"00",X"00",X"00",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"00",X"00",X"33",X"FB",X"FD",X"FB",X"FD",X"0C",
X"00",X"00",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"EF",X"FF",X"FF",X"FF",X"EF",X"0E",X"00",X"00",
X"77",X"B7",X"B6",X"6D",X"FC",X"0E",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"CF",X"08",X"02",
X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"FF",X"0E",X"00",X"00",X"00",X"00",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"F7",X"A5",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"8F",
X"00",X"00",X"00",X"00",X"11",X"FC",X"7D",X"F4",X"7F",X"FF",X"FF",X"FF",X"FF",X"0E",X"00",X"00",
X"33",X"FF",X"FF",X"FF",X"FF",X"0C",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"CF",X"08",X"02",
X"0E",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"FF",X"0E",X"00",X"00",X"00",X"00",
X"00",X"00",X"FE",X"FF",X"F6",X"FF",X"FF",X"8F",X"00",X"11",X"ED",X"ED",X"FC",X"B7",X"F3",X"C3",
X"08",X"00",X"00",X"00",X"11",X"F8",X"7D",X"F4",X"3F",X"FF",X"FF",X"FF",X"FF",X"0E",X"00",X"00",
X"33",X"FF",X"FF",X"FF",X"EF",X"0C",X"00",X"00",X"00",X"00",X"11",X"FF",X"FF",X"EF",X"0C",X"11",
X"8F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"FF",X"CF",X"0C",X"00",X"00",X"00",X"00",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FD",X"8F",X"00",X"33",X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",
X"0C",X"00",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"BF",X"BF",X"FA",X"FD",X"8F",X"00",X"00",
X"33",X"FF",X"FF",X"FF",X"8F",X"0C",X"00",X"00",X"00",X"00",X"33",X"FF",X"FF",X"8F",X"0C",X"33",
X"CF",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"FF",X"8F",X"08",X"00",X"00",X"00",X"00",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"8F",X"00",X"33",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"0C",X"00",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"D3",X"D3",X"FF",X"FF",X"8F",X"00",X"00",
X"33",X"FF",X"F7",X"8F",X"0F",X"0C",X"00",X"00",X"00",X"00",X"77",X"FF",X"FF",X"EF",X"0C",X"77",
X"EF",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"0C",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"8F",X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"0E",X"00",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"FB",X"FB",X"FF",X"FF",X"8F",X"00",X"00",
X"33",X"FF",X"FF",X"EF",X"0F",X"08",X"00",X"00",X"00",X"00",X"77",X"FF",X"FF",X"EF",X"0E",X"77",
X"EF",X"0C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"74",X"C2",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"FF",X"FF",X"EF",X"FF",X"FF",X"0F",X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",
X"0E",X"00",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"8F",X"00",X"00",
X"11",X"FF",X"FF",X"FF",X"8F",X"08",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"DE",X"FF",
X"E9",X"0C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"8E",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"FF",X"FF",X"EF",X"7F",X"F6",X"4B",X"00",X"77",X"D3",X"DB",X"DB",X"DB",X"DB",X"F8",
X"0E",X"00",X"00",X"00",X"11",X"B6",X"6D",X"FB",X"B7",X"FF",X"FF",X"F6",X"F6",X"8F",X"00",X"00",
X"33",X"FF",X"FF",X"FF",X"CF",X"0C",X"00",X"00",X"00",X"00",X"FC",X"FD",X"F9",X"FB",X"FF",X"FC",
X"F9",X"0C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"0E",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"FF",X"FF",X"EF",X"FF",X"FF",X"8F",X"00",X"77",X"DB",X"DB",X"DB",X"DB",X"DB",X"E9",
X"0E",X"00",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"00",X"00",
X"33",X"FF",X"FF",X"FF",X"CF",X"0C",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",
X"FF",X"0C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"8E",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"FF",X"FF",X"EF",X"FF",X"FF",X"0F",X"00",X"33",X"FF",X"FF",X"FF",X"FF",X"FF",X"EF",
X"0C",X"00",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0E",X"00",X"00",
X"33",X"FF",X"FF",X"FF",X"CF",X"0C",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"0C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"8E",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"77",X"FF",X"CF",X"FF",X"FF",X"0E",X"00",X"33",X"FF",X"FF",X"FF",X"FF",X"FF",X"EF",
X"0C",X"00",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"BF",X"FF",X"FF",X"CF",X"0E",X"00",X"00",
X"77",X"FF",X"FF",X"FF",X"EF",X"0E",X"00",X"00",X"00",X"00",X"FE",X"FA",X"FA",X"FA",X"DF",X"FF",
X"FB",X"0C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"CE",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"77",X"FF",X"3F",X"FF",X"EF",X"0E",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",
X"08",X"00",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"BF",X"FF",X"FF",X"CF",X"0E",X"00",X"00",
X"77",X"FF",X"FF",X"FF",X"CF",X"0E",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"BF",X"F9",
X"FF",X"0C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"8E",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"11",X"FF",X"FF",X"FF",X"CF",X"08",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",
X"08",X"00",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"1F",X"FF",X"FF",X"CF",X"08",X"00",X"00",
X"77",X"FF",X"FF",X"FF",X"8F",X"0E",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"BF",X"FF",
X"EF",X"0C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"8E",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"FC",X"FC",X"FC",X"E9",X"08",X"00",X"00",X"33",X"FF",X"EF",X"2F",X"0F",X"0C",
X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"EF",X"0F",X"FF",X"FF",X"CF",X"00",X"00",X"00",
X"77",X"FF",X"FF",X"FF",X"0F",X"0E",X"00",X"00",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"7F",X"FF",
X"EF",X"0C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"8E",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"FF",X"FF",X"FF",X"CF",X"08",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"EF",X"08",
X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"F9",X"0F",X"0F",X"7F",X"FF",X"8E",X"00",X"00",X"00",
X"77",X"FF",X"FF",X"FF",X"CF",X"0E",X"00",X"00",X"00",X"00",X"77",X"FF",X"0F",X"0F",X"7F",X"F5",
X"C7",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"CE",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"11",X"FF",X"FF",X"FF",X"CF",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"CF",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"CF",X"3F",X"FF",X"CF",X"0E",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"EF",X"0F",X"00",X"00",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"3F",X"FF",
X"CF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"8F",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"11",X"FF",X"FF",X"FF",X"8F",X"00",X"00",X"00",X"00",X"77",X"FF",X"FF",X"8E",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"EF",X"FF",X"FF",X"CF",X"0E",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",X"00",X"00",X"00",X"00",X"11",X"FF",X"FF",X"EF",X"7F",X"FF",
X"CF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"11",X"FF",X"8F",X"08",X"00",X"00",X"00",X"00",
X"00",X"00",X"33",X"FF",X"FF",X"FF",X"8F",X"00",X"00",X"00",X"00",X"77",X"FF",X"EF",X"0E",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"EF",X"FF",X"FF",X"CF",X"0E",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"0F",X"0F",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"CF",X"7F",X"EF",
X"8F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"8E",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"77",X"FF",X"FF",X"FF",X"8E",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"8F",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"8F",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"CF",X"0F",X"0F",X"00",X"00",X"00",X"00",X"00",X"FF",X"7F",X"0F",X"FF",X"EF",
X"8F",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"FF",X"33",X"8C",X"0F",X"0C",X"00",X"00",X"00",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"0E",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"CF",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"EF",X"0F",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"8F",X"0F",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"CF",X"FF",X"EF",
X"0E",X"00",X"00",X"00",X"00",X"00",X"00",X"33",X"FF",X"AA",X"1D",X"CF",X"0C",X"00",X"00",X"00",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"0E",X"00",X"00",X"00",X"00",X"FD",X"FA",X"F5",X"CF",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"FE",X"F7",X"F8",X"E7",X"0F",X"0F",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"EF",X"0F",X"0F",
X"0C",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"88",X"11",X"FF",X"0F",X"00",X"00",X"00",
X"00",X"00",X"F8",X"F1",X"F8",X"F8",X"0F",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"8F",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"0F",X"0E",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"EF",X"0F",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"EF",X"0F",X"0F",
X"08",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"0E",X"00",X"00",
X"00",X"33",X"FF",X"FF",X"FF",X"FF",X"0F",X"0C",X"00",X"00",X"11",X"FF",X"FF",X"CF",X"0F",X"08",
X"00",X"00",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0E",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"CF",
X"08",X"00",X"00",X"00",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"FF",X"8F",X"0F",X"00",X"00",
X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"0F",X"0E",X"00",X"00",X"33",X"FF",X"FF",X"FF",X"0F",X"0C",
X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"8F",X"0F",X"00",X"00",X"00",X"00",X"00",X"FF",X"F7",X"FD",X"FF",X"CF",
X"08",X"00",X"00",X"00",X"00",X"00",X"76",X"F6",X"F6",X"F4",X"F2",X"F6",X"96",X"86",X"00",X"00",
X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"0F",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"CF",X"0E",
X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"EF",X"0F",X"08",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"EF",X"0F",X"00",X"00",X"00",X"00",X"FF",X"FF",X"F7",X"FD",X"0F",X"0F",
X"0F",X"08",X"00",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",X"08",X"00",
X"00",X"FF",X"F1",X"F8",X"FE",X"F3",X"F8",X"0F",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"EF",X"0E",
X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",X"08",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"00",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"FF",X"8F",
X"0F",X"0E",X"00",X"00",X"00",X"11",X"FA",X"FA",X"FA",X"FA",X"F5",X"F5",X"E5",X"A5",X"08",X"00",
X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",
X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"EF",X"0C",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"EF",X"0F",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"EF",
X"0F",X"0F",X"0C",X"00",X"00",X"11",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"AF",X"AF",X"08",X"00",
X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"CF",X"0E",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"EF",X"0F",
X"00",X"00",X"33",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0C",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"8F",X"0F",X"0C",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"8F",X"0F",X"0E",X"00",
X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"8F",X"0E",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",
X"00",X"00",X"33",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"8F",X"0F",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"8F",X"0C",X"00",X"00",X"77",X"FF",X"F9",X"FC",X"F0",X"F0",X"CF",X"0F",X"0F",X"0E",X"00",
X"00",X"77",X"FF",X"FF",X"F0",X"F3",X"0F",X"0E",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"8F",X"0F",
X"00",X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"0F",X"0F",X"00",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"CF",X"0C",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"8F",X"0E",X"00",
X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"0F",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"EF",X"0F",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"8F",X"0F",X"00",X"00",X"00",X"11",X"FD",X"F9",X"0F",X"0F",X"0F",X"0F",
X"0F",X"0F",X"0C",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",X"00",
X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"0F",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"8F",X"0F",X"08",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",X"00",
X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",X"00",X"00",X"77",X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",
X"3F",X"EF",X"0F",X"08",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"EF",X"0F",X"00",
X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"EF",X"0F",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"EF",X"0F",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"8F",X"0F",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"EF",X"0F",X"0C",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"EF",X"0F",X"00",
X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"8F",X"0F",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"0F",X"0C",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",X"00",
X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"EF",X"0F",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"8F",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"0F",X"0F",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"0F",X"0C",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",X"00",
X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"8F",X"0F",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"CF",X"0F",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",X"00",X"00",
X"FF",X"FF",X"FF",X"EF",X"0F",X"0F",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"0F",X"0C",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"8F",X"0F",X"00",
X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"0F",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"8F",X"0F",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"CF",X"00",X"00",
X"FF",X"FF",X"FF",X"CF",X"0F",X"0F",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"EF",X"0F",X"0C",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"0F",X"00");
begin
process(clk)
begin
if rising_edge(clk) then
data <= rom_data(to_integer(unsigned(addr)));
end if;
end process;
end architecture;

View File

@@ -0,0 +1,278 @@
library ieee;
use ieee.std_logic_1164.all,ieee.numeric_std.all;
entity mpe_43f is
port (
clk : in std_logic;
addr : in std_logic_vector(11 downto 0);
data : out std_logic_vector(7 downto 0)
);
end entity;
architecture prom of mpe_43f is
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
signal rom_data: rom := (
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"11",X"7F",X"FF",X"9C",X"08",X"00",
X"00",X"E0",X"F8",X"FC",X"FC",X"C8",X"40",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",X"F0",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"0F",
X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",
X"F0",X"F0",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"0F",X"FF",X"F1",X"FD",X"FB",X"F7",X"F1",
X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"30",X"78",X"FC",X"FC",X"FC",X"78",X"30",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"FF",X"DF",X"EF",X"07",X"EF",X"DF",X"00",X"00",X"FF",X"1F",X"7F",X"3F",X"7F",X"1F",
X"00",X"00",X"FF",X"1F",X"BF",X"BF",X"BF",X"7F",X"00",X"00",X"FF",X"1F",X"5F",X"5F",X"5F",X"1F",
X"00",X"00",X"FF",X"1F",X"BF",X"BF",X"BF",X"BF",X"FF",X"07",X"07",X"07",X"07",X"FF",X"FF",X"FF",
X"FF",X"07",X"07",X"07",X"07",X"FF",X"FF",X"FF",X"FF",X"07",X"07",X"07",X"07",X"FF",X"FF",X"FF",
X"FF",X"07",X"07",X"07",X"07",X"FF",X"FF",X"FF",X"FF",X"07",X"07",X"07",X"07",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",
X"FF",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",
X"FF",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",
X"FF",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",
X"FF",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"03",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"3C",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"1C",X"36",X"63",X"63",X"7F",X"63",X"63",
X"00",X"7E",X"63",X"63",X"7E",X"63",X"63",X"7E",X"00",X"1E",X"33",X"60",X"60",X"60",X"33",X"1E",
X"00",X"7C",X"66",X"63",X"63",X"63",X"66",X"7C",X"00",X"7E",X"60",X"60",X"7C",X"60",X"60",X"7F",
X"00",X"7F",X"60",X"60",X"7E",X"60",X"60",X"60",X"00",X"1F",X"30",X"60",X"67",X"63",X"33",X"1F",
X"00",X"63",X"63",X"63",X"7F",X"63",X"63",X"63",X"00",X"7E",X"18",X"18",X"18",X"18",X"18",X"7E",
X"00",X"03",X"03",X"03",X"03",X"03",X"63",X"3C",X"00",X"63",X"66",X"6C",X"78",X"7C",X"6E",X"67",
X"00",X"60",X"60",X"60",X"60",X"60",X"60",X"7F",X"00",X"63",X"77",X"7F",X"7F",X"6B",X"63",X"63",
X"00",X"63",X"73",X"7B",X"7F",X"6F",X"67",X"63",X"00",X"3E",X"63",X"63",X"63",X"63",X"63",X"3E",
X"00",X"7E",X"63",X"63",X"63",X"7E",X"60",X"60",X"00",X"3E",X"63",X"63",X"63",X"6B",X"67",X"3D",
X"00",X"7E",X"63",X"63",X"67",X"7C",X"6E",X"67",X"00",X"3C",X"66",X"60",X"3E",X"03",X"63",X"3E",
X"00",X"7E",X"18",X"18",X"18",X"18",X"18",X"18",X"00",X"63",X"63",X"63",X"63",X"63",X"63",X"3E",
X"00",X"63",X"63",X"63",X"77",X"3E",X"1C",X"08",X"00",X"63",X"63",X"6B",X"7F",X"7F",X"77",X"63",
X"00",X"63",X"77",X"3E",X"1C",X"3E",X"77",X"63",X"00",X"66",X"66",X"66",X"3C",X"18",X"18",X"18",
X"00",X"7E",X"7E",X"0C",X"18",X"30",X"7E",X"7E",X"03",X"07",X"06",X"0C",X"08",X"00",X"60",X"60",
X"3C",X"42",X"99",X"A1",X"A5",X"99",X"42",X"3C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"55",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"40",X"40",X"40",X"40",X"40",X"40",X"40",X"40",X"50",X"50",X"50",X"50",X"50",X"50",X"40",X"40",
X"00",X"00",X"00",X"00",X"07",X"03",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"E0",X"F8",X"FC",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"55",X"00",
X"00",X"33",X"73",X"73",X"00",X"00",X"00",X"00",X"7E",X"7F",X"7F",X"3F",X"1F",X"0F",X"1F",X"0F",
X"00",X"00",X"80",X"80",X"C0",X"C1",X"E1",X"E3",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"1F",X"01",X"03",
X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"C0",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"07",X"0F",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"80",X"E0",X"F8",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"0F",X"3F",X"FF",X"FF",X"FF",X"FF",X"0F",X"07",X"07",X"C7",X"FF",X"FF",X"FF",X"FF",
X"F0",X"F0",X"F8",X"FF",X"FF",X"FF",X"FF",X"FF",X"66",X"00",X"00",X"C0",X"E0",X"F0",X"F0",X"F8",
X"66",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"66",X"00",X"00",X"00",X"00",X"00",X"00",X"70",
X"66",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"67",X"03",X"01",X"03",X"03",X"00",X"01",X"03",
X"66",X"00",X"00",X"03",X"07",X"1F",X"3F",X"3F",X"C0",X"C0",X"E1",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"07",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"C3",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"C0",X"FC",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"F8",X"FF",X"FF",X"FF",X"FF",
X"00",X"03",X"0F",X"3F",X"FF",X"FF",X"FF",X"FF",X"C0",X"F1",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FC",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"01",X"C7",X"FF",X"FF",X"FF",X"FF",X"FF",
X"C7",X"F7",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"C0",X"C0",X"C0",X"C0",X"80",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"00",X"00",X"7E",X"FE",
X"FC",X"FC",X"FC",X"FC",X"F8",X"F8",X"F8",X"F8",X"FC",X"FC",X"FC",X"FC",X"F8",X"F8",X"F8",X"F8",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"3F",X"3F",X"3F",X"3F",X"7E",X"7E",X"7E",X"7E",X"F0",X"F0",X"F0",X"F0",X"E0",X"E0",X"E0",X"E0",
X"00",X"00",X"C0",X"F0",X"F8",X"F8",X"FC",X"FC",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"80",X"80",X"C0",X"C0",X"E0",X"F0",X"F8",X"F8",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"01",X"01",X"0F",X"1F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"03",X"03",X"07",X"0F",X"0F",X"0F",X"0F",X"1F",X"BF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"C0",X"F0",X"FC",X"FE",X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"80",
X"C0",X"F0",X"F0",X"F0",X"F0",X"F8",X"F8",X"FC",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"01",X"01",X"03",X"07",X"0F",X"0F",X"0F",X"9F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"03",X"07",X"0F",X"0F",X"1F",X"3F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"F0",X"F0",X"F0",X"F8",X"FC",X"FC",X"FE",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"80",
X"80",X"E0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F8",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"80",X"81",X"81",X"C3",X"E7",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"01",X"0F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"01",X"01",X"03",X"03",
X"07",X"07",X"0F",X"1F",X"3F",X"3F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"1F",X"1F",X"3F",X"3F",X"7F",X"7F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"F0",X"F0",X"F0",X"FC",X"FC",X"FE",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"98",X"FC",X"FC",X"FC",X"FC",X"FC",X"FC",X"FC",X"FC",
X"FE",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"80",X"80",X"C0",X"C0",X"F0",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"03",X"03",X"07",X"07",X"0F",X"1F",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"01",X"0F",X"0F",X"1F",X"1F",X"1F",X"1F",
X"1F",X"1F",X"3F",X"3F",X"3F",X"3F",X"3F",X"7F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"1F",X"3F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F7",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"F8",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"0F",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"0F",X"3F",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"03",X"1F",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"C0",X"FC",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"E1",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"07",X"3F",X"FF",X"FF",X"FF",X"FF",X"80",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"E0",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"F8",X"FC",X"FC",X"FC",X"FC",X"FC",X"FC",X"FC",X"FE",X"FE",X"FE",X"FE",X"FE",X"FE",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"1F",X"3F",X"3F",X"3F",X"3F",X"3F",X"3F",X"3F",
X"3F",X"3F",X"7F",X"7F",X"7F",X"7F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"FC",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"F0",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"E0",X"FC",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"80",X"E0",X"F8",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"F0",X"00",X"C3",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"0F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"F0",X"FF",X"FF",
X"00",X"3F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"1F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"F0",X"FF",X"FF",X"FF",X"FF",X"00",X"3E",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"FC",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"E0",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"03",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"03",X"0F",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"0F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"0F",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"0F",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"C3",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"C7",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"3F",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"03",X"0F",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"01",X"01",X"01",X"01",X"03",X"03",X"03",X"03",X"07",X"07",X"07",X"07",X"0F",X"0F",X"0F",X"0F",
X"1F",X"1F",X"1F",X"1F",X"3F",X"3F",X"3F",X"3F",X"7E",X"7E",X"7E",X"7E",X"FC",X"FC",X"FC",X"FC",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"F8",X"F8",X"FC",X"FC",X"FE",X"FE",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"CF",X"CF",X"C7",X"C7",X"83",X"83",X"80",X"80",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"03",X"0F",X"0F",
X"BF",X"BF",X"FF",X"FF",X"FD",X"FD",X"F1",X"F1",X"C3",X"C3",X"03",X"03",X"07",X"07",X"07",X"07",
X"0F",X"0F",X"0F",X"0F",X"1F",X"1F",X"1F",X"1F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"3F",X"3F",X"FF",X"FF",X"FE",X"FE",X"FE",X"FE",X"FC",X"FC",X"FC",X"FC",X"F8",X"F8",X"F8",X"F8",
X"F0",X"F0",X"F0",X"F0",X"E0",X"E0",X"E0",X"E0",X"C0",X"C0",X"C0",X"C0",X"80",X"80",X"80",X"80",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"03",X"07",X"0F",X"1F",X"1F",X"1F",X"1F",X"3F",X"3F",X"3F",X"3F",X"7E",X"7E",X"7E",X"7E",
X"FF",X"FF",X"FF",X"7F",X"7F",X"7F",X"3F",X"1F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"E1",
X"80",X"00",X"00",X"00",X"01",X"01",X"01",X"03",X"0F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"F0",X"F8",X"FC",X"FC",X"FE",X"FE",X"FE",X"FE",
X"F0",X"F0",X"F0",X"F0",X"E0",X"C0",X"80",X"00",X"00",X"00",X"01",X"03",X"07",X"07",X"07",X"07",
X"3F",X"3F",X"3F",X"1F",X"1F",X"1F",X"0F",X"07",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"3F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F8",X"E0",X"C0",X"C0",X"C0",X"80",X"80",X"80",X"80",
X"C3",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FC",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"7F",
X"3F",X"3F",X"3F",X"3F",X"7E",X"7E",X"7E",X"FE",X"FC",X"FC",X"FC",X"FC",X"F8",X"F0",X"E0",X"80",
X"00",X"00",X"00",X"00",X"81",X"81",X"81",X"81",X"03",X"03",X"03",X"03",X"07",X"07",X"07",X"07",
X"FC",X"FC",X"FD",X"FF",X"FF",X"FF",X"FC",X"F8",X"3C",X"FF",X"FF",X"FF",X"FF",X"0F",X"07",X"07",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"C0",X"E0",X"E0",X"E0",X"E0",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",
X"E0",X"E0",X"E0",X"E0",X"C0",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"01",X"00",X"00",X"00",X"01",X"03",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"C0",X"F0",X"FC",X"FE",X"FE",X"FE",X"FE",X"FE",
X"FE",X"FE",X"FE",X"FE",X"FC",X"FC",X"FC",X"FC",X"F8",X"F8",X"E0",X"00",X"00",X"00",X"00",X"00",
X"00",X"01",X"03",X"07",X"0F",X"0F",X"0F",X"0F",X"7F",X"7F",X"7F",X"3F",X"3F",X"3F",X"1F",X"07",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",
X"C0",X"80",X"80",X"80",X"00",X"00",X"00",X"01",X"87",X"FF",X"FF",X"FF",X"FF",X"FF",X"FE",X"FC",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E7",X"F7",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"7F",X"7F",X"7F",X"7F",X"FF",X"FF",X"FF",X"FF",X"FE",X"FE",X"FE",X"FE",X"FC",X"FC",X"FC",X"FC",
X"E0",X"E0",X"E0",X"E0",X"C0",X"C0",X"C0",X"C0",X"80",X"80",X"80",X"80",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"01",X"01",X"01",X"01",X"00",X"00",X"00",X"00",X"07",X"07",X"07",X"07",
X"7F",X"7F",X"7F",X"7F",X"FF",X"FF",X"FF",X"FF",X"3F",X"3F",X"3F",X"3F",X"7E",X"7E",X"7E",X"7E",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"E0",X"E0",X"E0",X"E0",
X"F8",X"F8",X"F8",X"F8",X"F0",X"F0",X"F0",X"F0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"F8",X"F8",X"F8",X"F8",X"F0",X"F0",X"F0",X"F0",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"87",X"9F",X"BF",X"FF",X"FF",X"FF",X"C0",X"00",
X"80",X"80",X"81",X"03",X"07",X"07",X"07",X"07",X"FE",X"FE",X"FE",X"FE",X"FC",X"FC",X"FC",X"FC");
begin
process(clk)
begin
if rising_edge(clk) then
data <= rom_data(to_integer(unsigned(addr)));
end if;
end process;
end architecture;

View File

@@ -0,0 +1,278 @@
library ieee;
use ieee.std_logic_1164.all,ieee.numeric_std.all;
entity mpe_53e is
port (
clk : in std_logic;
addr : in std_logic_vector(11 downto 0);
data : out std_logic_vector(7 downto 0)
);
end entity;
architecture prom of mpe_53e is
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
signal rom_data: rom := (
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"10",X"10",X"00",X"63",X"F7",X"63",
X"00",X"00",X"70",X"00",X"00",X"30",X"B0",X"30",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"F0",X"F0",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"0F",
X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"F0",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",
X"F0",X"F0",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"0F",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"01",X"21",X"13",X"1B",X"1F",X"0F",X"0D",X"00",X"00",X"08",X"90",X"B0",X"F0",X"E0",X"60",
X"00",X"FC",X"30",X"30",X"30",X"30",X"30",X"30",X"00",X"FC",X"30",X"30",X"30",X"30",X"30",X"FC",
X"00",X"C6",X"EE",X"FE",X"FE",X"D6",X"C6",X"C6",X"00",X"FC",X"C0",X"C0",X"F8",X"C0",X"C0",X"FE",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"30",X"78",X"FC",X"FC",X"FC",X"78",X"30",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"0F",X"0F",X"0F",X"0F",X"FF",X"FF",X"FF",
X"FF",X"8F",X"8F",X"8F",X"8F",X"FF",X"FF",X"FF",X"FF",X"CF",X"CF",X"CF",X"CF",X"FF",X"FF",X"FF",
X"FF",X"EF",X"EF",X"EF",X"EF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",
X"FF",X"80",X"80",X"80",X"80",X"FF",X"FF",X"FF",X"FF",X"C0",X"C0",X"C0",X"C0",X"FF",X"FF",X"FF",
X"FF",X"E0",X"E0",X"E0",X"E0",X"FF",X"FF",X"FF",X"FF",X"F0",X"F0",X"F0",X"F0",X"FF",X"FF",X"FF",
X"FF",X"F8",X"F8",X"F8",X"F8",X"FF",X"FF",X"FF",X"FF",X"FC",X"FC",X"FC",X"FC",X"FF",X"FF",X"FF",
X"FF",X"FE",X"FE",X"FE",X"FE",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"1C",X"26",X"63",X"63",X"63",X"32",X"1C",X"00",X"18",X"38",X"18",X"18",X"18",X"18",X"7E",
X"00",X"3E",X"63",X"47",X"1E",X"3C",X"70",X"7F",X"00",X"3F",X"06",X"0C",X"1E",X"03",X"63",X"3E",
X"00",X"0E",X"1E",X"36",X"66",X"7F",X"06",X"06",X"00",X"7C",X"60",X"7C",X"06",X"06",X"66",X"3C",
X"00",X"1E",X"30",X"60",X"7E",X"63",X"63",X"3E",X"00",X"7F",X"63",X"06",X"0C",X"18",X"18",X"18",
X"00",X"3C",X"62",X"72",X"3C",X"4F",X"43",X"3E",X"00",X"3E",X"63",X"63",X"3F",X"03",X"06",X"3C",
X"00",X"38",X"6D",X"61",X"61",X"6D",X"39",X"00",X"00",X"E6",X"B6",X"B6",X"F6",X"B6",X"B3",X"00",
X"00",X"DE",X"CC",X"CC",X"CC",X"CC",X"8C",X"00",X"00",X"F3",X"6C",X"6C",X"6C",X"6C",X"F3",X"00",
X"00",X"93",X"DB",X"DF",X"DF",X"DB",X"99",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"3C",X"7E",X"7E",X"7E",X"7E",X"3C",X"00",X"00",X"00",X"10",X"00",X"00",X"00",X"10",X"00",
X"00",X"00",X"14",X"14",X"14",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"80",X"80",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"80",X"80",
X"20",X"20",X"20",X"20",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"20",X"20",X"20",X"20",
X"08",X"08",X"08",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"08",X"08",X"08",X"08",
X"02",X"02",X"02",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"02",X"02",X"02",X"02",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"07",X"1F",X"3F",
X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"E0",X"F8",X"FC",
X"00",X"00",X"01",X"01",X"03",X"03",X"06",X"07",X"7F",X"FF",X"FF",X"FF",X"FF",X"FF",X"AF",X"FF",
X"FF",X"CC",X"8C",X"8C",X"FF",X"FF",X"FF",X"FF",X"FE",X"CF",X"C7",X"C3",X"FF",X"FF",X"FF",X"FF",
X"00",X"00",X"80",X"80",X"C0",X"C0",X"E0",X"E0",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"F0",X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"F0",
X"0F",X"08",X"10",X"00",X"00",X"00",X"00",X"00",X"FF",X"7F",X"1F",X"07",X"00",X"00",X"00",X"00",
X"FF",X"FF",X"F0",X"C0",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"3C",X"00",X"00",X"00",X"00",
X"F3",X"F3",X"FB",X"38",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"3F",X"1F",X"0F",X"0F",X"07",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"8F",
X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"99",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",
X"FF",X"FF",X"FF",X"FC",X"F8",X"E0",X"C0",X"C0",X"FF",X"FF",X"1E",X"00",X"00",X"00",X"00",X"00",
X"FF",X"F8",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"3C",X"00",X"00",X"00",X"00",X"00",X"00",
X"FF",X"3F",X"03",X"00",X"00",X"00",X"00",X"00",X"FF",X"FF",X"FF",X"07",X"00",X"00",X"00",X"00",
X"FC",X"FC",X"F0",X"C0",X"00",X"00",X"00",X"00",X"3F",X"0E",X"00",X"00",X"00",X"00",X"00",X"00",
X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"FE",X"38",X"00",X"00",X"00",X"00",X"00",
X"3F",X"0E",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"80",X"80",X"80",X"80",X"80",X"80",X"80",
X"FF",X"01",X"01",X"01",X"01",X"01",X"01",X"01",X"80",X"80",X"80",X"80",X"80",X"80",X"80",X"FF",
X"01",X"01",X"01",X"01",X"01",X"01",X"01",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"C0",X"70",X"18",X"18",X"24",X"00",X"01",X"06",X"00",X"00",X"00",X"00",X"00",X"00",
X"80",X"80",X"40",X"40",X"80",X"10",X"18",X"20",X"06",X"01",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"01",X"01",X"0E",X"10",X"60",X"80",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"02",X"02",X"04",X"0A",X"08",X"08",X"08",X"18",X"A4",X"C0",X"90",X"00",X"80",X"00",
X"00",X"00",X"40",X"30",X"0C",X"06",X"05",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",
X"40",X"30",X"00",X"10",X"00",X"08",X"08",X"04",X"08",X"01",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"01",X"00",X"02",X"05",X"08",X"08",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"03",X"04",X"08",X"08",X"14",X"20",X"60",X"C0",X"20",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"30",X"10",X"10",X"28",X"04",X"04",X"02",X"02",X"05",X"01",X"00",X"00",X"00",X"00",
X"00",X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"80",
X"80",X"60",X"30",X"30",X"10",X"10",X"10",X"10",X"00",X"03",X"01",X"01",X"00",X"01",X"00",X"00",
X"00",X"00",X"80",X"81",X"81",X"02",X"26",X"1C",X"10",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"01",X"0E",X"F0",X"08",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"02",X"02",
X"05",X"04",X"08",X"18",X"30",X"20",X"C0",X"C0",X"A0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"18",X"10",X"30",X"20",X"40",X"40",X"40",X"A0",X"80",X"80",X"00",X"00",X"80",X"00",
X"00",X"00",X"30",X"10",X"00",X"0C",X"04",X"0A",X"02",X"01",X"01",X"01",X"01",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"18",X"38",X"44",X"04",X"04",X"04",X"00",X"00",X"00",
X"02",X"02",X"01",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"40",X"40",X"90",
X"0F",X"04",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"02",X"06",X"04",X"08",X"10",X"E0",
X"10",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"0C",X"08",X"18",X"10",X"00",X"10",
X"10",X"10",X"28",X"20",X"20",X"20",X"20",X"60",X"40",X"80",X"40",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"10",X"30",X"60",X"40",X"C0",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"18",X"3C",X"0C",X"14",X"04",X"04",X"00",X"00",X"02",X"02",X"04",X"00",X"00",X"01",
X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"18",X"3C",X"30",X"20",X"30",X"28",
X"20",X"20",X"40",X"40",X"20",X"00",X"40",X"C0",X"A0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"01",X"01",X"03",X"02",X"02",X"02",
X"7E",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"06",X"02",X"03",X"01",X"01",X"00",X"00",
X"00",X"00",X"00",X"00",X"30",X"20",X"20",X"20",X"60",X"40",X"40",X"40",X"C0",X"80",X"80",X"80",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"C0",
X"40",X"40",X"00",X"00",X"02",X"02",X"0E",X"08",X"38",X"20",X"E0",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"01",X"01",X"01",X"01",X"03",X"02",X"02",X"02",X"06",X"04",X"04",X"04",
X"0C",X"08",X"08",X"08",X"18",X"10",X"10",X"10",X"30",X"20",X"20",X"20",X"60",X"40",X"40",X"40",
X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"80",X"80",X"80",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"01",X"01",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"1E",
X"70",X"C0",X"80",X"80",X"80",X"00",X"00",X"80",X"F0",X"00",X"00",X"00",X"00",X"00",X"00",X"01",
X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"06",X"02",X"03",X"01",X"01",X"01",X"01",
X"0C",X"08",X"08",X"08",X"18",X"30",X"60",X"C0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"07",X"1C",X"30",X"20",X"20",X"60",X"40",X"40",X"60",
X"3C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"00",X"00",X"80",
X"00",X"00",X"00",X"00",X"01",X"01",X"01",X"01",X"03",X"02",X"02",X"02",X"06",X"0C",X"18",X"70",
X"00",X"80",X"80",X"C0",X"40",X"40",X"40",X"40",X"C0",X"80",X"80",X"80",X"80",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"06",X"00",X"00",X"00",X"00",X"00",X"F0",X"80",X"00",
X"3F",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"C0",X"60",X"30",X"10",X"10",X"10",X"10",
X"C0",X"80",X"80",X"80",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0F",
X"18",X"10",X"10",X"10",X"30",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FF",X"80",X"80",X"80",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"FE",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"01",X"01",
X"01",X"01",X"01",X"01",X"03",X"02",X"02",X"02",X"06",X"04",X"1C",X"F0",X"80",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"07",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"0F",
X"38",X"60",X"40",X"40",X"C0",X"80",X"80",X"C0",X"78",X"00",X"00",X"00",X"00",X"00",X"01",X"03",
X"FE",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"01",X"01",X"01",X"03",X"02",X"02",X"02",
X"00",X"10",X"10",X"10",X"30",X"20",X"20",X"20",X"60",X"40",X"40",X"40",X"C0",X"80",X"80",X"80",
X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"40",X"00",X"00",X"00",X"01",X"01",X"01",X"01",
X"FC",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"10",X"10",X"10",
X"00",X"04",X"04",X"04",X"0C",X"08",X"08",X"08",X"F8",X"80",X"80",X"80",X"80",X"00",X"00",X"00",
X"01",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"06",X"04",X"04",X"04",X"0C",X"08",X"08",X"08",
X"F8",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"3F",X"E0",
X"00",X"40",X"40",X"C0",X"80",X"80",X"80",X"00",X"00",X"01",X"01",X"01",X"03",X"02",X"02",X"02");
begin
process(clk)
begin
if rising_edge(clk) then
data <= rom_data(to_integer(unsigned(addr)));
end if;
end process;
end architecture;

View File

@@ -1,4 +0,0 @@
set_global_assignment -name IP_TOOL_NAME "ALTPLL"
set_global_assignment -name IP_TOOL_VERSION "13.1"
set_global_assignment -name VHDL_FILE [file join $::quartus(qip_path) "Clock.vhd"]
set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "Clock.ppf"]

View File

@@ -1,85 +0,0 @@
Library IEEE;
Use IEEE.std_logic_1164.all;
library work;
use work.pace_pkg.all;
entity inputs is
generic
(
NUM_DIPS : integer := 8;
NUM_INPUTS : integer := 2;
CLK_1US_DIV : natural := 30
);
port
(
clk : in std_logic;
reset : in std_logic;
ps2clk : in std_logic;
ps2data : in std_logic;
jamma : in from_JAMMA_t;
dips : in std_logic_vector(NUM_DIPS-1 downto 0);
inputs : out from_MAPPED_INPUTS_t(0 to NUM_INPUTS-1)
);
end entity inputs;
architecture SYN of inputs is
signal reset_n : std_logic;
signal tick_1us : std_logic;
signal ps2_reset : std_logic;
signal ps2_press : std_logic;
signal ps2_release : std_logic;
signal ps2_scancode : std_logic_vector(7 downto 0);
begin
reset_n <= not reset;
-- ps2clk <= 'Z';
-- ps2data <= 'Z';
inputmapper_inst : entity work.inputmapper
generic map
(
NUM_DIPS => NUM_DIPS,
NUM_INPUTS => NUM_INPUTS
)
port map
(
clk => clk,
rst_n => reset_n,
reset => ps2_reset,
key_down => ps2_press,
key_up => ps2_release,
data => ps2_scancode,
jamma => jamma,
dips => dips,
inputs => inputs
);
process (clk, reset)
variable count : integer range 0 to CLK_1US_DIV := 0;
begin
if reset = '1' then
count := 0;
tick_1us <= '0';
elsif rising_edge(clk) then
tick_1us <= '0';
count := count + 1;
if count = CLK_1US_DIV then
count := 0;
tick_1us <= '1';
end if;
end if;
end process;
end architecture SYN;

View File

@@ -1,48 +0,0 @@
-------------------------------------------------------------------------------
--
-- Delta-Sigma DAC
--
-- Refer to Xilinx Application Note XAPP154.
--
-- This DAC requires an external RC low-pass filter:
--
-- dac_o 0---XXXXX---+---0 analog audio
-- 3k3 |
-- === 4n7
-- |
-- GND
--
-------------------------------------------------------------------------------
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
entity dac is
generic (
C_bits : integer := 12
);
port (
clk_i : in std_logic;
res_n_i : in std_logic;
dac_i : in std_logic_vector(C_bits-1 downto 0);
dac_o : out std_logic
);
end dac;
architecture rtl of dac is
signal sig_in: unsigned(C_bits downto 0);
begin
seq: process(clk_i, res_n_i)
begin
if res_n_i = '0' then
sig_in <= to_unsigned(2**C_bits, sig_in'length);
dac_o <= '0';
elsif rising_edge(clk_i) then
-- not dac_i(C_bits-1) effectively adds 0x8..0 to dac_i
--sig_in <= sig_in + unsigned(sig_in(C_bits) & (not dac_i(C_bits-1)) & dac_i(C_bits-2 downto 0));
sig_in <= sig_in + unsigned(sig_in(C_bits) & dac_i);
dac_o <= sig_in(C_bits);
end if;
end process seq;
end rtl;

View File

@@ -1,84 +0,0 @@
-- -----------------------------------------------------------------------
--
-- Syntiac's generic VHDL support files.
--
-- -----------------------------------------------------------------------
-- Copyright 2005-2008 by Peter Wendrich (pwsoft@syntiac.com)
-- http://www.syntiac.com/fpga64.html
--
-- Modified April 2016 by Dar (darfpga@aol.fr)
-- http://darfpga.blogspot.fr
-- Remove address register when writing
--
-- -----------------------------------------------------------------------
--
-- gen_rwram.vhd
--
-- -----------------------------------------------------------------------
--
-- generic ram.
--
-- -----------------------------------------------------------------------
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.numeric_std.ALL;
-- -----------------------------------------------------------------------
entity gen_ram is
generic (
dWidth : integer := 8;
aWidth : integer := 10
);
port (
clk : in std_logic;
we : in std_logic;
addr : in std_logic_vector((aWidth-1) downto 0);
d : in std_logic_vector((dWidth-1) downto 0);
q : out std_logic_vector((dWidth-1) downto 0)
);
end entity;
-- -----------------------------------------------------------------------
architecture rtl of gen_ram is
subtype addressRange is integer range 0 to ((2**aWidth)-1);
type ramDef is array(addressRange) of std_logic_vector((dWidth-1) downto 0);
signal ram: ramDef;
signal rAddrReg : std_logic_vector((aWidth-1) downto 0);
signal qReg : std_logic_vector((dWidth-1) downto 0);
begin
-- -----------------------------------------------------------------------
-- Signals to entity interface
-- -----------------------------------------------------------------------
-- q <= qReg;
-- -----------------------------------------------------------------------
-- Memory write
-- -----------------------------------------------------------------------
process(clk)
begin
if rising_edge(clk) then
if we = '1' then
ram(to_integer(unsigned(addr))) <= d;
end if;
end if;
end process;
-- -----------------------------------------------------------------------
-- Memory read
-- -----------------------------------------------------------------------
process(clk)
begin
if rising_edge(clk) then
-- qReg <= ram(to_integer(unsigned(rAddrReg)));
-- rAddrReg <= addr;
---- qReg <= ram(to_integer(unsigned(addr)));
q <= ram(to_integer(unsigned(addr)));
end if;
end process;
--q <= ram(to_integer(unsigned(addr)));
end architecture;

View File

@@ -1,686 +0,0 @@
--
-- A simulation model of Scramble hardware
-- Copyright (c) MikeJ - Feb 2007
--
-- All rights reserved
--
-- Redistribution and use in source and synthezised forms, with or without
-- modification, are permitted provided that the following conditions are met:
--
-- Redistributions of source code must retain the above copyright notice,
-- this list of conditions and the following disclaimer.
--
-- Redistributions in synthesized form must reproduce the above copyright
-- notice, this list of conditions and the following disclaimer in the
-- documentation and/or other materials provided with the distribution.
--
-- Neither the name of the author nor the names of other contributors may
-- be used to endorse or promote products derived from this software without
-- specific prior written permission.
--
-- THIS CODE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
-- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE
-- LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-- CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-- ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-- POSSIBILITY OF SUCH DAMAGE.
--
-- You are responsible for any legal issues arising from your use of this code.
--
-- The latest version of this file can be found at: www.fpgaarcade.com
--
-- Email support@fpgaarcade.com
--
-- Revision list
--
-- version 001 initial release
--
library ieee ;
use ieee.std_logic_1164.all ;
use ieee.std_logic_unsigned.all;
use ieee.numeric_std.all;
entity I82C55 is
port (
I_ADDR : in std_logic_vector(1 downto 0); -- A1-A0
I_DATA : in std_logic_vector(7 downto 0); -- D7-D0
O_DATA : out std_logic_vector(7 downto 0);
O_DATA_OE_L : out std_logic;
I_CS_L : in std_logic;
I_RD_L : in std_logic;
I_WR_L : in std_logic;
I_PA : in std_logic_vector(7 downto 0);
O_PA : out std_logic_vector(7 downto 0);
O_PA_OE_L : out std_logic_vector(7 downto 0);
I_PB : in std_logic_vector(7 downto 0);
O_PB : out std_logic_vector(7 downto 0);
O_PB_OE_L : out std_logic_vector(7 downto 0);
I_PC : in std_logic_vector(7 downto 0);
O_PC : out std_logic_vector(7 downto 0);
O_PC_OE_L : out std_logic_vector(7 downto 0);
RESET : in std_logic;
ENA : in std_logic; -- (CPU) clk enable
CLK : in std_logic
);
end;
architecture RTL of I82C55 is
-- registers
signal bit_mask : std_logic_vector(7 downto 0);
signal r_porta : std_logic_vector(7 downto 0);
signal r_portb : std_logic_vector(7 downto 0);
signal r_portc : std_logic_vector(7 downto 0);
signal r_control : std_logic_vector(7 downto 0);
--
signal porta_we : std_logic;
signal portb_we : std_logic;
signal porta_re : std_logic;
signal portb_re : std_logic;
--
signal porta_we_t1 : std_logic;
signal portb_we_t1 : std_logic;
signal porta_re_t1 : std_logic;
signal portb_re_t1 : std_logic;
--
signal porta_we_rising : boolean;
signal portb_we_rising : boolean;
signal porta_re_rising : boolean;
signal portb_re_rising : boolean;
--
signal groupa_mode : std_logic_vector(1 downto 0); -- port a/c upper
signal groupb_mode : std_logic; -- port b/c lower
--
signal porta_read : std_logic_vector(7 downto 0);
signal portb_read : std_logic_vector(7 downto 0);
signal portc_read : std_logic_vector(7 downto 0);
signal control_read : std_logic_vector(7 downto 0);
signal mode_clear : std_logic;
--
signal a_inte1 : std_logic;
signal a_inte2 : std_logic;
signal b_inte : std_logic;
--
signal a_intr : std_logic;
signal a_obf_l : std_logic;
signal a_ibf : std_logic;
signal a_ack_l : std_logic;
signal a_stb_l : std_logic;
signal a_ack_l_t1 : std_logic;
signal a_stb_l_t1 : std_logic;
--
signal b_intr : std_logic;
signal b_obf_l : std_logic;
signal b_ibf : std_logic;
signal b_ack_l : std_logic;
signal b_stb_l : std_logic;
signal b_ack_l_t1 : std_logic;
signal b_stb_l_t1 : std_logic;
--
signal a_ack_l_rising : boolean;
signal a_stb_l_rising : boolean;
signal b_ack_l_rising : boolean;
signal b_stb_l_rising : boolean;
--
signal porta_ipreg : std_logic_vector(7 downto 0);
signal portb_ipreg : std_logic_vector(7 downto 0);
begin
--
-- mode 0 - basic input/output
-- mode 1 - strobed input/output
-- mode 2/3 - bi-directional bus
--
-- control word (write)
--
-- D7 mode set flag 1 = active
-- D6..5 GROUPA mode selection (mode 0,1,2)
-- D4 GROUPA porta 1 = input, 0 = output
-- D3 GROUPA portc upper 1 = input, 0 = output
-- D2 GROUPB mode selection (mode 0 ,1)
-- D1 GROUPB portb 1 = input, 0 = output
-- D0 GROUPB portc lower 1 = input, 0 = output
--
-- D7 bit set/reset 0 = active
-- D6..4 x
-- D3..1 bit select
-- d0 1 = set, 0 - reset
--
-- all output registers including status are reset when mode is changed
--1. Port A:
--All Modes: Output data is cleared, input data is not cleared.
--2. Port B:
--Mode 0: Output data is cleared, input data is not cleared.
--Mode 1 and 2: Both output and input data are cleared.
--3. Port C:
--Mode 0:Output data is cleared, input data is not cleared.
--Mode 1 and 2: IBF and INTR are cleared and OBF# is set.
--Outputs in Port C which are not used for handshaking or interrupt signals are cleared.
--Inputs such as STB#, ACK#, or "spare" inputs are not affected. The interrupts for Ports A and B are disabled.
p_bit_mask : process(I_DATA)
begin
bit_mask <= x"01";
case I_DATA(3 downto 1) is
when "000" => bit_mask <= x"01";
when "001" => bit_mask <= x"02";
when "010" => bit_mask <= x"04";
when "011" => bit_mask <= x"08";
when "100" => bit_mask <= x"10";
when "101" => bit_mask <= x"20";
when "110" => bit_mask <= x"40";
when "111" => bit_mask <= x"80";
when others => null;
end case;
end process;
p_write_reg_reset : process(RESET, CLK)
variable r_portc_masked : std_logic_vector(7 downto 0);
variable r_portc_setclr : std_logic_vector(7 downto 0);
begin
if (RESET = '1') then
r_porta <= x"00";
r_portb <= x"00";
r_portc <= x"00";
r_control <= x"9B"; -- 10011011
mode_clear <= '1';
elsif rising_edge(CLK) then
r_portc_masked := (not bit_mask) and r_portc;
for i in 0 to 7 loop
r_portc_setclr(i) := bit_mask(i) and I_DATA(0);
end loop;
if (ENA = '1') then
mode_clear <= '0';
if (I_CS_L = '0') and (I_WR_L = '0') then
case I_ADDR is
when "00" => r_porta <= I_DATA;
when "01" => r_portb <= I_DATA;
when "10" => r_portc <= I_DATA;
when "11" => if (I_DATA(7) = '0') then -- set/clr
r_portc <= r_portc_masked or r_portc_setclr;
else
--mode_clear <= '1';
--r_porta <= x"00";
--r_portb <= x"00"; -- clear port b input reg
--r_portc <= x"00"; -- clear control sigs
r_control <= I_DATA; -- load new mode
end if;
when others => null;
end case;
end if;
end if;
end if;
end process;
p_decode_control : process(r_control)
begin
groupa_mode <= r_control(6 downto 5);
groupb_mode <= r_control(2);
end process;
p_oe : process(I_CS_L, I_RD_L)
begin
O_DATA_OE_L <= '1';
if (I_CS_L = '0') and (I_RD_L = '0') then
O_DATA_OE_L <= '0';
end if;
end process;
p_read : process(I_ADDR, porta_read, portb_read, portc_read, control_read)
begin
O_DATA <= x"00"; -- default
--if (I_CS_L = '0') and (I_RD_L = '0') then -- not required
case I_ADDR is
when "00" => O_DATA <= porta_read;
when "01" => O_DATA <= portb_read;
when "10" => O_DATA <= portc_read;
when "11" => O_DATA <= control_read;
when others => null;
end case;
--end if;
end process;
control_read(7) <= '1'; -- always 1
control_read(6 downto 0) <= r_control(6 downto 0);
p_rw_control : process(I_CS_L, I_RD_L, I_WR_L, I_ADDR)
begin
porta_we <= '0';
portb_we <= '0';
porta_re <= '0';
portb_re <= '0';
if (I_CS_L = '0') and (I_ADDR = "00") then
porta_we <= not I_WR_L;
porta_re <= not I_RD_L;
end if;
if (I_CS_L = '0') and (I_ADDR = "01") then
portb_we <= not I_WR_L;
portb_re <= not I_RD_L;
end if;
end process;
p_rw_control_reg : process
begin
wait until rising_edge(CLK);
if (ENA = '1') then
porta_we_t1 <= porta_we;
portb_we_t1 <= portb_we;
porta_re_t1 <= porta_re;
portb_re_t1 <= portb_re;
a_stb_l_t1 <= a_stb_l;
a_ack_l_t1 <= a_ack_l;
b_stb_l_t1 <= b_stb_l;
b_ack_l_t1 <= b_ack_l;
end if;
end process;
porta_we_rising <= (porta_we = '0') and (porta_we_t1 = '1'); -- falling as inverted
portb_we_rising <= (portb_we = '0') and (portb_we_t1 = '1'); -- "
porta_re_rising <= (porta_re = '0') and (porta_re_t1 = '1'); -- falling as inverted
portb_re_rising <= (portb_re = '0') and (portb_re_t1 = '1'); -- "
--
a_stb_l_rising <= (a_stb_l = '1') and (a_stb_l_t1 = '0');
a_ack_l_rising <= (a_ack_l = '1') and (a_ack_l_t1 = '0');
b_stb_l_rising <= (b_stb_l = '1') and (b_stb_l_t1 = '0');
b_ack_l_rising <= (b_ack_l = '1') and (b_ack_l_t1 = '0');
--
-- GROUP A
-- in mode 1
--
-- d4=1 (porta = input)
-- pc7,6 io (d3=1 input, d3=0 output)
-- pc5 output a_ibf
-- pc4 input a_stb_l
-- pc3 output a_intr
--
-- d4=0 (porta = output)
-- pc7 output a_obf_l
-- pc6 input a_ack_l
-- pc5,4 io (d3=1 input, d3=0 output)
-- pc3 output a_intr
--
-- GROUP B
-- in mode 1
-- d1=1 (portb = input)
-- pc2 input b_stb_l
-- pc1 output b_ibf
-- pc0 output b_intr
--
-- d1=0 (portb = output)
-- pc2 input b_ack_l
-- pc1 output b_obf_l
-- pc0 output b_intr
-- WHEN AN INPUT
--
-- stb_l a low on this input latches input data
-- ibf a high on this output indicates data latched. set by stb_l and reset by rising edge of RD_L
-- intr a high on this output indicates interrupt. set by stb_l high, ibf high and inte high. reset by falling edge of RD_L
-- inte A controlled by bit/set PC4
-- inte B controlled by bit/set PC2
-- WHEN AN OUTPUT
--
-- obf_l output will go low when cpu has written data
-- ack_l input - a low on this clears obf_l
-- intr output set when ack_l is high, obf_l is high and inte is one. reset by falling edge of WR_L
-- inte A controlled by bit/set PC6
-- inte B controlled by bit/set PC2
-- GROUP A
-- in mode 2
--
-- porta = IO
--
-- control bits 2..0 still control groupb/c lower 2..0
--
--
-- PC7 output a_obf
-- PC6 input a_ack_l
-- PC5 output a_ibf
-- PC4 input a_stb_l
-- PC3 is still interrupt out
p_control_flags : process(RESET, CLK)
variable we : boolean;
variable set1 : boolean;
variable set2 : boolean;
begin
if (RESET = '1') then
a_obf_l <= '1';
a_inte1 <= '0';
a_ibf <= '0';
a_inte2 <= '0';
a_intr <= '0';
--
b_inte <= '0';
b_obf_l <= '1';
b_ibf <= '0';
b_intr <= '0';
elsif rising_edge(CLK) then
we := (I_CS_L = '0') and (I_WR_L = '0') and (I_ADDR = "11") and (I_DATA(7) = '0');
if (ENA = '1') then
if (mode_clear = '1') then
a_obf_l <= '1';
a_inte1 <= '0';
a_ibf <= '0';
a_inte2 <= '0';
a_intr <= '0';
--
b_inte <= '0';
b_obf_l <= '1';
b_ibf <= '0';
b_intr <= '0';
else
if (bit_mask(7) = '1') and we then
a_obf_l <= I_DATA(0);
else
if porta_we_rising then
a_obf_l <= '0';
elsif (a_ack_l = '0') then
a_obf_l <= '1';
end if;
end if;
--
if (bit_mask(6) = '1') and we then a_inte1 <= I_DATA(0); end if; -- bus set when mode1 & input?
--
if (bit_mask(5) = '1') and we then
a_ibf <= I_DATA(0);
else
if porta_re_rising then
a_ibf <= '0';
elsif (a_stb_l = '0') then
a_ibf <= '1';
end if;
end if;
--
if (bit_mask(4) = '1') and we then a_inte2 <= I_DATA(0); end if; -- bus set when mode1 & output?
--
set1 := a_ack_l_rising and (a_obf_l = '1') and (a_inte1 = '1');
set2 := a_stb_l_rising and (a_ibf = '1') and (a_inte2 = '1');
--
if (bit_mask(3) = '1') and we then
a_intr <= I_DATA(0);
else
if (groupa_mode(1) = '1') then
if (porta_we = '1') or (porta_re = '1') then
a_intr <= '0';
elsif set1 or set2 then
a_intr <= '1';
end if;
else
if (r_control(4) = '0') then -- output
if (porta_we = '1') then -- falling ?
a_intr <= '0';
elsif set1 then
a_intr <= '1';
end if;
elsif (r_control(4) = '1') then -- input
if (porta_re = '1') then -- falling ?
a_intr <= '0';
elsif set2 then
a_intr <= '1';
end if;
end if;
end if;
end if;
--
if (bit_mask(2) = '1') and we then b_inte <= I_DATA(0); end if; -- bus set?
if (bit_mask(1) = '1') and we then
b_obf_l <= I_DATA(0);
else
if (r_control(1) = '0') then -- output
if portb_we_rising then
b_obf_l <= '0';
elsif (b_ack_l = '0') then
b_obf_l <= '1';
end if;
else
if portb_re_rising then
b_ibf <= '0';
elsif (b_stb_l = '0') then
b_ibf <= '1';
end if;
end if;
end if;
if (bit_mask(0) = '1') and we then
b_intr <= I_DATA(0);
else
if (r_control(1) = '0') then -- output
if (portb_we = '1') then -- falling ?
b_intr <= '0';
elsif b_ack_l_rising and (b_obf_l = '1') and (b_inte = '1') then
b_intr <= '1';
end if;
else
if (portb_re = '1') then -- falling ?
b_intr <= '0';
elsif b_stb_l_rising and (b_ibf = '1') and (b_inte = '1') then
b_intr <= '1';
end if;
end if;
end if;
end if;
end if;
end if;
end process;
p_porta : process(r_porta, r_control, groupa_mode, r_porta, I_PA, porta_ipreg, a_ack_l)
begin
-- D4 GROUPA porta 1 = input, 0 = output
O_PA <= x"FF"; -- if not driven, float high
O_PA_OE_L <= x"FF";
porta_read <= x"00";
if (groupa_mode = "00") then -- simple io
if (r_control(4) = '0') then -- output
O_PA <= r_porta;
O_PA_OE_L <= x"00";
end if;
porta_read <= I_PA;
elsif (groupa_mode = "01") then -- strobed
if (r_control(4) = '0') then -- output
O_PA <= r_porta;
O_PA_OE_L <= x"00";
end if;
porta_read <= porta_ipreg;
else -- if (groupa_mode(1) = '1') then -- bi dir
if (a_ack_l = '0') then -- output enable
O_PA <= r_porta;
O_PA_OE_L <= x"00";
end if;
porta_read <= porta_ipreg; -- latched data
end if;
end process;
p_portb : process(r_portb, r_control, groupb_mode, r_portb, I_PB, portb_ipreg)
begin
O_PB <= x"FF"; -- if not driven, float high
O_PB_OE_L <= x"FF";
portb_read <= x"00";
if (groupb_mode = '0') then -- simple io
if (r_control(1) = '0') then -- output
O_PB <= r_portb;
O_PB_OE_L <= x"00";
end if;
portb_read <= I_PB;
else -- strobed mode
if (r_control(1) = '0') then -- output
O_PB <= r_portb;
O_PB_OE_L <= x"00";
end if;
portb_read <= portb_ipreg;
end if;
end process;
p_portc_out : process(r_portc, r_control, groupa_mode, groupb_mode,
a_obf_l, a_ibf, a_intr,b_obf_l, b_ibf, b_intr)
begin
O_PC <= x"FF"; -- if not driven, float high
O_PC_OE_L <= x"FF";
-- bits 7..4
if (groupa_mode = "00") then -- simple io
if (r_control(3) = '0') then -- output
O_PC (7 downto 4) <= r_portc(7 downto 4);
O_PC_OE_L(7 downto 4) <= x"0";
end if;
elsif (groupa_mode = "01") then -- mode1
if (r_control(4) = '0') then -- port a output
O_PC (7) <= a_obf_l;
O_PC_OE_L(7) <= '0';
-- 6 is ack_l input
if (r_control(3) = '0') then -- port c output
O_PC (5 downto 4) <= r_portc(5 downto 4);
O_PC_OE_L(5 downto 4) <= "00";
end if;
else -- port a input
if (r_control(3) = '0') then -- port c output
O_PC (7 downto 6) <= r_portc(7 downto 6);
O_PC_OE_L(7 downto 6) <= "00";
end if;
O_PC (5) <= a_ibf;
O_PC_OE_L(5) <= '0';
-- 4 is stb_l input
end if;
else -- if (groupa_mode(1) = '1') then -- mode2
O_PC (7) <= a_obf_l;
O_PC_OE_L(7) <= '0';
-- 6 is ack_l input
O_PC (5) <= a_ibf;
O_PC_OE_L(5) <= '0';
-- 4 is stb_l input
end if;
-- bit 3 (controlled by group a)
if (groupa_mode = "00") then -- group a steals this bit
--if (groupb_mode = '0') then -- we will let bit 3 be driven, data sheet is a bit confused about this
if (r_control(0) = '0') then -- ouput (note, groupb control bit)
O_PC (3) <= r_portc(3);
O_PC_OE_L(3) <= '0';
end if;
--
else -- stolen
O_PC (3) <= a_intr;
O_PC_OE_L(3) <= '0';
end if;
-- bits 2..0
if (groupb_mode = '0') then -- simple io
if (r_control(0) = '0') then -- output
O_PC (2 downto 0) <= r_portc(2 downto 0);
O_PC_OE_L(2 downto 0) <= "000";
end if;
else
-- mode 1
-- 2 is input
if (r_control(1) = '0') then -- output
O_PC (1) <= b_obf_l;
O_PC_OE_L(1) <= '0';
else -- input
O_PC (1) <= b_ibf;
O_PC_OE_L(1) <= '0';
end if;
O_PC (0) <= b_intr;
O_PC_OE_L(0) <= '0';
end if;
end process;
p_portc_in : process(r_portc, I_PC, r_control, groupa_mode, groupb_mode, a_ibf, b_obf_l,
a_obf_l, a_inte1, a_inte2, a_intr, b_inte, b_ibf, b_intr)
begin
portc_read <= x"00";
a_stb_l <= '1';
a_ack_l <= '1';
b_stb_l <= '1';
b_ack_l <= '1';
if (groupa_mode = "01") then -- mode1 or 2
if (r_control(4) = '0') then -- port a output
a_ack_l <= I_PC(6);
else -- port a input
a_stb_l <= I_PC(4);
end if;
elsif (groupa_mode(1) = '1') then -- mode 2
a_ack_l <= I_PC(6);
a_stb_l <= I_PC(4);
end if;
if (groupb_mode = '1') then
if (r_control(1) = '0') then -- output
b_ack_l <= I_PC(2);
else -- input
b_stb_l <= I_PC(2);
end if;
end if;
if (groupa_mode = "00") then -- simple io
portc_read(7 downto 3) <= I_PC(7 downto 3);
elsif (groupa_mode = "01") then
if (r_control(4) = '0') then -- port a output
portc_read(7 downto 3) <= a_obf_l & a_inte1 & I_PC(5 downto 4) & a_intr;
else -- input
portc_read(7 downto 3) <= I_PC(7 downto 6) & a_ibf & a_inte2 & a_intr;
end if;
else -- mode 2
portc_read(7 downto 3) <= a_obf_l & a_inte1 & a_ibf & a_inte2 & a_intr;
end if;
if (groupb_mode = '0') then -- simple io
portc_read(2 downto 0) <= I_PC(2 downto 0);
else
if (r_control(1) = '0') then -- output
portc_read(2 downto 0) <= b_inte & b_obf_l & b_intr;
else -- input
portc_read(2 downto 0) <= b_inte & b_ibf & b_intr;
end if;
end if;
end process;
p_ipreg : process
begin
wait until rising_edge(CLK);
-- pc4 input a_stb_l
-- pc2 input b_stb_l
if (ENA = '1') then
if (a_stb_l = '0') then
porta_ipreg <= I_PA;
end if;
if (mode_clear = '1') then
portb_ipreg <= (others => '0');
elsif (b_stb_l = '0') then
portb_ipreg <= I_PB;
end if;
end if;
end process;
end architecture RTL;

View File

@@ -1,90 +0,0 @@
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.std_logic_unsigned.all;
library work;
use work.pace_pkg.all;
entity inputmapper is
generic
(
NUM_DIPS : integer := 8;
NUM_INPUTS : integer := 2
);
port
(
clk : in std_logic;
rst_n : in std_logic;
-- inputs from keyboard controller
reset : in std_logic;
key_down : in std_logic;
key_up : in std_logic;
data : in std_logic_vector(7 downto 0);
-- inputs from jamma connector
jamma : in from_JAMMA_t;
-- user outputs
dips : in std_logic_vector(NUM_DIPS-1 downto 0);
inputs : out from_MAPPED_INPUTS_t(0 to NUM_INPUTS-1)
);
end inputmapper;
architecture SYN of inputmapper is
begin
process (clk, rst_n, dips)
variable jamma_v : from_MAPPED_INPUTS_t(0 to NUM_INPUTS-1);
variable keybd_v : from_MAPPED_INPUTS_t(0 to NUM_INPUTS-1);
begin
-- note: all inputs are active LOW
if rst_n = '0' then
for i in 0 to NUM_INPUTS-1 loop
jamma_v(i).d := (others =>'1');
keybd_v(i).d := (others =>'0');
end loop;
elsif rising_edge (clk) then
-- handle JAMMA inputs
jamma_v(0).d(0) := jamma.p(1).start;
jamma_v(0).d(1) := jamma.p(2).start;
jamma_v(0).d(2) := jamma.service;
jamma_v(0).d(3) := jamma.coin(1) and jamma.p(1).button(3);
jamma_v(1).d(0) := jamma.p(1).right;
jamma_v(1).d(1) := jamma.p(1).left;
jamma_v(1).d(2) := jamma.p(1).down;
jamma_v(1).d(3) := jamma.p(1).up;
jamma_v(1).d(5) := jamma.p(1).button(2);
jamma_v(1).d(7) := jamma.p(1).button(1);
jamma_v(2).d(4) := jamma.coin(2);
-- this is PS/2 reset only
if (reset = '1') then
for i in 0 to NUM_INPUTS-2 loop
keybd_v(i).d := (others =>'1');
end loop;
keybd_v(NUM_INPUTS-1).d := (others =>'0');
end if;
end if; -- rising_edge (clk)
-- assign outputs
inputs(0).d <= jamma_v(0).d and not keybd_v(0).d;
inputs(1).d <= jamma_v(1).d and not keybd_v(1).d;
inputs(2).d <= jamma_v(2).d and not keybd_v(2).d;
inputs(3).d <= dips(7 downto 0); --"11111111"; -- 1C/1C, 10/30/50K, 3 lives
inputs(4).d <= dips(15 downto 8);--"11111100";
-- activate service which is only checked on startup
-- inputs(4).d <= "01111100";
inputs(NUM_INPUTS-1).d <= keybd_v(NUM_INPUTS-1).d;
end process;
end architecture SYN;

View File

@@ -1,80 +0,0 @@
module keyboard
(
input clk,
input reset,
input ps2_kbd_clk,
input ps2_kbd_data,
output reg[9:0] joystick
);
reg [11:0] shift_reg = 12'hFFF;
wire[11:0] kdata = {ps2_kbd_data,shift_reg[11:1]};
wire [7:0] kcode = kdata[9:2];
reg release_btn = 0;
reg [7:0] code;
reg input_strobe = 0;
always @(negedge clk) begin
reg old_reset = 0;
old_reset <= reset;
if(~old_reset & reset)begin
joystick <= 0;
end
if(input_strobe) begin
case(code)
'h16: joystick[1] <= ~release_btn; // 1
'h1E: joystick[2] <= ~release_btn; // 2
'h75: joystick[4] <= ~release_btn; // arrow up
'h72: joystick[5] <= ~release_btn; // arrow down
'h6B: joystick[6] <= ~release_btn; // arrow left
'h74: joystick[7] <= ~release_btn; // arrow right
'h29: joystick[0] <= ~release_btn; // Space
'h11: joystick[8] <= ~release_btn; // Left Alt
'h0d: joystick[9] <= ~release_btn; // Tab
'h76: joystick[3] <= ~release_btn; // Escape
endcase
end
end
always @(posedge clk) begin
reg [3:0] prev_clk = 0;
reg old_reset = 0;
reg action = 0;
old_reset <= reset;
input_strobe <= 0;
if(~old_reset & reset)begin
prev_clk <= 0;
shift_reg <= 12'hFFF;
end else begin
prev_clk <= {ps2_kbd_clk,prev_clk[3:1]};
if(prev_clk == 1) begin
if (kdata[11] & ^kdata[10:2] & ~kdata[1] & kdata[0]) begin
shift_reg <= 12'hFFF;
if (kcode == 8'he0) ;
// Extended key code follows
else if (kcode == 8'hf0)
// Release code follows
action <= 1;
else begin
// Cancel extended/release flags for next time
action <= 0;
release_btn <= action;
code <= kcode;
input_strobe <= 1;
end
end else begin
shift_reg <= kdata;
end
end
end
end
endmodule

View File

@@ -1,311 +0,0 @@
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
use ieee.numeric_std.all;
library work;
use work.pace_pkg.all;
use work.video_controller_pkg.all;
use work.build_id.all;
use work.mist.all;
entity mpatrol is
port
(
CLOCK_27 : in std_logic;
SPI_SCK : in std_logic;
SPI_DI : in std_logic;
SPI_SS2 : in std_logic;
SPI_SS3 : in std_logic;
SPI_SS4 : in std_logic;
SPI_DO : out std_logic;
LED : out std_logic;
CONF_DATA0 : in std_logic;
AUDIO_L : out std_logic;
AUDIO_R : out std_logic;
VGA_VS : out std_logic;
VGA_HS : out std_logic;
VGA_R : out std_logic_vector(5 downto 0);
VGA_G : out std_logic_vector(5 downto 0);
VGA_B : out std_logic_vector(5 downto 0)
);
end mpatrol;
architecture SYN of mpatrol is
signal init : std_logic := '1';
signal clk_sys : std_logic;
signal clk_aud : std_logic;
signal clk_dac : std_logic;
signal clk_vid : std_logic;
signal rst_audD : std_logic;
signal rst_aud : std_logic;
signal clkrst_i : from_CLKRST_t;
signal buttons_i : from_BUTTONS_t;
signal switches_i : from_SWITCHES_t;
signal leds_o : to_LEDS_t;
signal inputs_i : from_INPUTS_t;
signal video_i : from_VIDEO_t;
signal video_o : to_VIDEO_t;
--MIST
signal audio : std_logic;
signal status : std_logic_vector(63 downto 0);
signal joystick1 : std_logic_vector(31 downto 0);
signal joystick2 : std_logic_vector(31 downto 0);
signal joystick : std_logic_vector(7 downto 0);
signal kbd_joy : std_logic_vector(9 downto 0);
signal switches : std_logic_vector(1 downto 0);
signal buttons : std_logic_vector(1 downto 0);
signal ps2_kbd_clk : std_logic;
signal ps2_kbd_data : std_logic;
signal scandoubler_disable : std_logic;
signal ypbpr : std_logic;
signal no_csync : std_logic;
signal reset : std_logic;
signal audio_out : std_logic_vector(11 downto 0);
signal sound_data : std_logic_vector(7 downto 0);
constant CONF_STR : string :=
"MPATROL;;"&
"O12,Scandoubler Fx,None,CRT 25%,CRT 50%,CRT 75%;"&
"OB,Video timings,Original,PAL;"&
"O34,Patrol cars,5,3,2,1;"&
"O56,New car at,10/30/50K,20/40/60K,10K,Never;"&
"OA,Freeze,Disable,Enable;"&
"O7,Demo mode,Off,On;"&
"O8,Sector selection,Off,On;"&
"O9,Test mode,Off,On;"&
"T0,Reset;"&
"V,v"&BUILD_DATE;
-- convert string to std_logic_vector to be given to user_io
function to_slv(s: string) return std_logic_vector is
constant ss: string(1 to s'length) := s;
variable rval: std_logic_vector(1 to 8 * s'length);
variable p: integer;
variable c: integer;
begin
for i in ss'range loop
p := 8 * i;
c := character'pos(ss(i));
rval(p - 7 to p) := std_logic_vector(to_unsigned(c,8));
end loop;
return rval;
end function;
component keyboard
port (
clk :in STD_LOGIC;
reset :in STD_LOGIC;
ps2_kbd_clk :in STD_LOGIC;
ps2_kbd_data :in STD_LOGIC;
joystick :out STD_LOGIC_VECTOR(9 downto 0));
end component;
begin
--CLOCK
Clock_inst : entity work.Clock
port map (
inclk0 => CLOCK_27,
c0 => clk_sys, -- 6
c1 => clk_vid -- 24
);
pll_aud_inst : entity work.pll_aud
port map (
inclk0 => CLOCK_27,
c0 => clk_aud, -- 3.58/4
c1 => clk_dac -- clk_aud * 100
);
clkrst_i.clk(0) <= clk_sys;
clkrst_i.clk(1) <= clk_sys;
video_i.clk <= clk_sys;
video_i.clk_ena <= '1';
video_i.reset <= clkrst_i.rst(1);
--RESET
process (clk_sys)
variable count : std_logic_vector (11 downto 0) := (others => '0');
begin
if rising_edge(clk_sys) then
if count = X"FFF" then
init <= '0';
else
count := count + 1;
init <= '1';
end if;
end if;
end process;
process (clk_sys) begin
if rising_edge(clk_sys) then
clkrst_i.arst <= init or status(0) or buttons(1);
clkrst_i.arst_n <= not clkrst_i.arst;
end if;
end process;
process (clk_aud) begin
if rising_edge(clk_aud) then
rst_audD <= clkrst_i.arst;
rst_aud <= rst_audD;
end if;
end process;
GEN_RESETS : for i in 0 to 3 generate
process (clkrst_i)
variable rst_r : std_logic_vector(2 downto 0) := (others => '0');
begin
if clkrst_i.arst = '1' then
rst_r := (others => '1');
elsif rising_edge(clkrst_i.clk(i)) then
rst_r := rst_r(rst_r'left-1 downto 0) & '0';
end if;
clkrst_i.rst(i) <= rst_r(rst_r'left);
end process;
end generate GEN_RESETS;
user_io_inst : user_io
generic map (STRLEN => CONF_STR'length)
port map (
clk_sys => clk_sys,
conf_str => to_slv(CONF_STR),
SPI_CLK => SPI_SCK,
SPI_SS_IO => CONF_DATA0,
SPI_MOSI => SPI_DI,
SPI_MISO => SPI_DO,
switches => switches,
buttons => buttons,
scandoubler_disable => scandoubler_disable,
ypbpr => ypbpr,
no_csync => no_csync,
joystick_1 => joystick2,
joystick_0 => joystick1,
status => status,
ps2_kbd_clk => ps2_kbd_clk,
ps2_kbd_data => ps2_kbd_data
);
u_keyboard : keyboard
port map(
clk => clk_sys,
reset => '0',
ps2_kbd_clk => ps2_kbd_clk,
ps2_kbd_data => ps2_kbd_data,
joystick => kbd_joy
);
joystick <= joystick1(7 downto 0) or joystick2(7 downto 0);
inputs_i.jamma_n.coin(1) <= not (joystick(6) or kbd_joy(3));--ESC
inputs_i.jamma_n.p(1).start <= not (kbd_joy(1) or joystick1(7));--KB 1
inputs_i.jamma_n.p(1).up <= not (joystick(3) or kbd_joy(4));
inputs_i.jamma_n.p(1).down <= not (joystick(2) or kbd_joy(5));
inputs_i.jamma_n.p(1).left <= not (joystick(1) or kbd_joy(6));
inputs_i.jamma_n.p(1).right <= not (joystick(0) or kbd_joy(7));
inputs_i.jamma_n.p(1).button(1) <= not (joystick(4) or kbd_joy(0));--Fire
inputs_i.jamma_n.p(1).button(2) <= not (joystick(5) or kbd_joy(8) or joystick(3) or kbd_joy(4));--Jump
inputs_i.jamma_n.p(1).button(3) <= '1';
inputs_i.jamma_n.p(1).button(4) <= '1';
inputs_i.jamma_n.p(1).button(5) <= '1';
inputs_i.jamma_n.p(2).start <= not (kbd_joy(2) or joystick2(7));--KB 2
inputs_i.jamma_n.p(2).up <= not (joystick(3) or kbd_joy(4));
inputs_i.jamma_n.p(2).down <= not (joystick(2) or kbd_joy(5));
inputs_i.jamma_n.p(2).left <= not (joystick(1) or kbd_joy(6));
inputs_i.jamma_n.p(2).right <= not (joystick(0) or kbd_joy(7));
inputs_i.jamma_n.p(2).button(1) <= not (joystick(4) or kbd_joy(0));--Fire
inputs_i.jamma_n.p(2).button(2) <= not (joystick(5) or kbd_joy(8) or joystick(3) or kbd_joy(4)); --Jump
inputs_i.jamma_n.p(2).button(3) <= '1';
inputs_i.jamma_n.p(2).button(4) <= '1';
inputs_i.jamma_n.p(2).button(5) <= '1';
-- not currently wired to any inputs
inputs_i.jamma_n.coin_cnt <= (others => '1');
inputs_i.jamma_n.coin(2) <= '1';
inputs_i.jamma_n.service <= '1';
inputs_i.jamma_n.tilt <= '1';
inputs_i.jamma_n.test <= '1';
LED <= '1';
moon_patrol_sound_board : entity work.moon_patrol_sound_board
port map(
clock_E => clk_aud,
areset => rst_aud,
select_sound => sound_data,
audio_out => audio_out,
dbg_cpu_addr => open
);
dac : entity work.dac
generic map (
C_bits => 12
)
port map (
clk_i => clk_dac,
res_n_i => not rst_aud,
dac_i => audio_out,
dac_o => audio
);
AUDIO_R <= audio;
AUDIO_L <= audio;
switches_i(15) <= not status(9); -- Test mode
switches_i(14) <= not status(7);
switches_i(13) <= not status(8); -- Sector select
switches_i(12) <= not status(10);-- Freeze enable
switches_i(11 downto 8) <= "1100";
switches_i( 7 downto 4) <= "1111";
switches_i( 1 downto 0) <= not status(4 downto 3); -- Patrol cars
switches_i( 3 downto 2) <= not status(6 downto 5); -- New car
pace_inst : entity work.pace
port map (
clkrst_i => clkrst_i,
palmode => status(11),
buttons_i => buttons_i,
switches_i => switches_i,
leds_o => open,
inputs_i => inputs_i,
video_i => video_i,
video_o => video_o,
sound_data_o => sound_data
);
mist_video: work.mist.mist_video
generic map (
SD_HCNT_WIDTH => 10
)
port map (
clk_sys => clk_vid,
scanlines => status(2 downto 1),
scandoubler_disable => scandoubler_disable,
ypbpr => ypbpr,
no_csync => no_csync,
rotate => "00",
ce_divider => "001",
SPI_SCK => SPI_SCK,
SPI_SS3 => SPI_SS3,
SPI_DI => SPI_DI,
HSync => not video_o.hsync,
VSync => not video_o.vsync,
R => video_o.rgb.r(9 downto 4),
G => video_o.rgb.g(9 downto 4),
B => video_o.rgb.b(9 downto 4),
VGA_HS => VGA_HS,
VGA_VS => VGA_VS,
VGA_R => VGA_R,
VGA_G => VGA_G,
VGA_B => VGA_B
);
end SYN;

View File

@@ -1,50 +0,0 @@
library work;
package body pace_pkg is
function NULL_TO_FLASH return to_FLASH_t is
begin
return ((others => '0'), (others => '0'), '0', '0', '0');
end NULL_TO_FLASH;
function NULL_TO_SRAM return to_SRAM_t is
begin
return ((others => '0'), (others => '0'), (others => '0'), '0', '0', '0');
end NULL_TO_SRAM;
function NULL_TO_AUDIO return to_AUDIO_t is
begin
return ('0', (others => '0'), (others => '0'));
end NULL_TO_AUDIO;
function NULL_TO_SPI return to_SPI_t is
begin
return (others => '0');
end NULL_TO_SPI;
function NULL_TO_SERIAL return to_SERIAL_t is
begin
return (others => '0');
end NULL_TO_SERIAL;
function NULL_TO_SOUND return to_SOUND_t is
begin
return ((others => '0'), (others => '0'), '0', '0');
end NULL_TO_SOUND;
function NULL_FROM_OSD return from_OSD_t is
begin
return (others => (others => '0'));
end NULL_FROM_OSD;
function NULL_TO_OSD return to_OSD_t is
begin
return ('0', (others => '0'), (others => '0'), '0');
end NULL_TO_OSD;
function NULL_TO_GP return to_GP_t is
begin
return ((others => '0'), (others => '0'));
end NULL_TO_GP;
end package body pace_pkg;

View File

@@ -1,4 +0,0 @@
set_global_assignment -name IP_TOOL_NAME "ALTPLL"
set_global_assignment -name IP_TOOL_VERSION "13.1"
set_global_assignment -name VHDL_FILE [file join $::quartus(qip_path) "pll_aud.vhd"]
set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "pll_aud.ppf"]

View File

@@ -1,397 +0,0 @@
-- megafunction wizard: %ALTPLL%
-- GENERATION: STANDARD
-- VERSION: WM1.0
-- MODULE: altpll
-- ============================================================
-- File Name: pll_aud.vhd
-- Megafunction Name(s):
-- altpll
--
-- Simulation Library Files(s):
-- altera_mf
-- ============================================================
-- ************************************************************
-- THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
--
-- 13.1.4 Build 182 03/12/2014 Patches 4.26 SJ Web Edition
-- ************************************************************
--Copyright (C) 1991-2014 Altera Corporation
--Your use of Altera 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 Altera Program License
--Subscription Agreement, Altera 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 Altera and sold by
--Altera 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.all;
ENTITY pll_aud IS
PORT
(
areset : IN STD_LOGIC := '0';
inclk0 : IN STD_LOGIC := '0';
c0 : OUT STD_LOGIC ;
c1 : OUT STD_LOGIC ;
locked : OUT STD_LOGIC
);
END pll_aud;
ARCHITECTURE SYN OF pll_aud IS
SIGNAL sub_wire0 : STD_LOGIC_VECTOR (4 DOWNTO 0);
SIGNAL sub_wire1 : STD_LOGIC ;
SIGNAL sub_wire2 : STD_LOGIC ;
SIGNAL sub_wire3 : STD_LOGIC ;
SIGNAL sub_wire4 : STD_LOGIC ;
SIGNAL sub_wire5 : STD_LOGIC_VECTOR (1 DOWNTO 0);
SIGNAL sub_wire6_bv : BIT_VECTOR (0 DOWNTO 0);
SIGNAL sub_wire6 : STD_LOGIC_VECTOR (0 DOWNTO 0);
COMPONENT altpll
GENERIC (
bandwidth_type : STRING;
clk0_divide_by : NATURAL;
clk0_duty_cycle : NATURAL;
clk0_multiply_by : NATURAL;
clk0_phase_shift : STRING;
clk1_divide_by : NATURAL;
clk1_duty_cycle : NATURAL;
clk1_multiply_by : NATURAL;
clk1_phase_shift : STRING;
compensate_clock : STRING;
inclk0_input_frequency : NATURAL;
intended_device_family : STRING;
lpm_hint : STRING;
lpm_type : STRING;
operation_mode : STRING;
pll_type : STRING;
port_activeclock : STRING;
port_areset : STRING;
port_clkbad0 : STRING;
port_clkbad1 : STRING;
port_clkloss : STRING;
port_clkswitch : STRING;
port_configupdate : STRING;
port_fbin : STRING;
port_inclk0 : STRING;
port_inclk1 : STRING;
port_locked : STRING;
port_pfdena : STRING;
port_phasecounterselect : STRING;
port_phasedone : STRING;
port_phasestep : STRING;
port_phaseupdown : STRING;
port_pllena : STRING;
port_scanaclr : STRING;
port_scanclk : STRING;
port_scanclkena : STRING;
port_scandata : STRING;
port_scandataout : STRING;
port_scandone : STRING;
port_scanread : STRING;
port_scanwrite : STRING;
port_clk0 : STRING;
port_clk1 : STRING;
port_clk2 : STRING;
port_clk3 : STRING;
port_clk4 : STRING;
port_clk5 : STRING;
port_clkena0 : STRING;
port_clkena1 : STRING;
port_clkena2 : STRING;
port_clkena3 : STRING;
port_clkena4 : STRING;
port_clkena5 : STRING;
port_extclk0 : STRING;
port_extclk1 : STRING;
port_extclk2 : STRING;
port_extclk3 : STRING;
self_reset_on_loss_lock : STRING;
width_clock : NATURAL
);
PORT (
areset : IN STD_LOGIC ;
clk : OUT STD_LOGIC_VECTOR (4 DOWNTO 0);
inclk : IN STD_LOGIC_VECTOR (1 DOWNTO 0);
locked : OUT STD_LOGIC
);
END COMPONENT;
BEGIN
sub_wire6_bv(0 DOWNTO 0) <= "0";
sub_wire6 <= To_stdlogicvector(sub_wire6_bv);
sub_wire3 <= sub_wire0(0);
sub_wire1 <= sub_wire0(1);
c1 <= sub_wire1;
locked <= sub_wire2;
c0 <= sub_wire3;
sub_wire4 <= inclk0;
sub_wire5 <= sub_wire6(0 DOWNTO 0) & sub_wire4;
altpll_component : altpll
GENERIC MAP (
bandwidth_type => "AUTO",
clk0_divide_by => 5400,
clk0_duty_cycle => 50,
clk0_multiply_by => 179,
clk0_phase_shift => "0",
clk1_divide_by => 54,
clk1_duty_cycle => 50,
clk1_multiply_by => 179,
clk1_phase_shift => "0",
compensate_clock => "CLK0",
inclk0_input_frequency => 37037,
intended_device_family => "Cyclone III",
lpm_hint => "CBX_MODULE_PREFIX=pll_aud",
lpm_type => "altpll",
operation_mode => "NORMAL",
pll_type => "AUTO",
port_activeclock => "PORT_UNUSED",
port_areset => "PORT_USED",
port_clkbad0 => "PORT_UNUSED",
port_clkbad1 => "PORT_UNUSED",
port_clkloss => "PORT_UNUSED",
port_clkswitch => "PORT_UNUSED",
port_configupdate => "PORT_UNUSED",
port_fbin => "PORT_UNUSED",
port_inclk0 => "PORT_USED",
port_inclk1 => "PORT_UNUSED",
port_locked => "PORT_USED",
port_pfdena => "PORT_UNUSED",
port_phasecounterselect => "PORT_UNUSED",
port_phasedone => "PORT_UNUSED",
port_phasestep => "PORT_UNUSED",
port_phaseupdown => "PORT_UNUSED",
port_pllena => "PORT_UNUSED",
port_scanaclr => "PORT_UNUSED",
port_scanclk => "PORT_UNUSED",
port_scanclkena => "PORT_UNUSED",
port_scandata => "PORT_UNUSED",
port_scandataout => "PORT_UNUSED",
port_scandone => "PORT_UNUSED",
port_scanread => "PORT_UNUSED",
port_scanwrite => "PORT_UNUSED",
port_clk0 => "PORT_USED",
port_clk1 => "PORT_USED",
port_clk2 => "PORT_UNUSED",
port_clk3 => "PORT_UNUSED",
port_clk4 => "PORT_UNUSED",
port_clk5 => "PORT_UNUSED",
port_clkena0 => "PORT_UNUSED",
port_clkena1 => "PORT_UNUSED",
port_clkena2 => "PORT_UNUSED",
port_clkena3 => "PORT_UNUSED",
port_clkena4 => "PORT_UNUSED",
port_clkena5 => "PORT_UNUSED",
port_extclk0 => "PORT_UNUSED",
port_extclk1 => "PORT_UNUSED",
port_extclk2 => "PORT_UNUSED",
port_extclk3 => "PORT_UNUSED",
self_reset_on_loss_lock => "OFF",
width_clock => 5
)
PORT MAP (
areset => areset,
inclk => sub_wire5,
clk => sub_wire0,
locked => sub_wire2
);
END SYN;
-- ============================================================
-- CNX file retrieval info
-- ============================================================
-- Retrieval info: PRIVATE: ACTIVECLK_CHECK STRING "0"
-- Retrieval info: PRIVATE: BANDWIDTH STRING "1.000"
-- Retrieval info: PRIVATE: BANDWIDTH_FEATURE_ENABLED STRING "1"
-- Retrieval info: PRIVATE: BANDWIDTH_FREQ_UNIT STRING "MHz"
-- Retrieval info: PRIVATE: BANDWIDTH_PRESET STRING "Low"
-- Retrieval info: PRIVATE: BANDWIDTH_USE_AUTO STRING "1"
-- Retrieval info: PRIVATE: BANDWIDTH_USE_PRESET STRING "0"
-- Retrieval info: PRIVATE: CLKBAD_SWITCHOVER_CHECK STRING "0"
-- Retrieval info: PRIVATE: CLKLOSS_CHECK STRING "0"
-- Retrieval info: PRIVATE: CLKSWITCH_CHECK STRING "0"
-- Retrieval info: PRIVATE: CNX_NO_COMPENSATE_RADIO STRING "0"
-- Retrieval info: PRIVATE: CREATE_CLKBAD_CHECK STRING "0"
-- Retrieval info: PRIVATE: CREATE_INCLK1_CHECK STRING "0"
-- Retrieval info: PRIVATE: CUR_DEDICATED_CLK STRING "c0"
-- Retrieval info: PRIVATE: CUR_FBIN_CLK STRING "c0"
-- Retrieval info: PRIVATE: DEVICE_SPEED_GRADE STRING "8"
-- Retrieval info: PRIVATE: DIV_FACTOR0 NUMERIC "1"
-- Retrieval info: PRIVATE: DIV_FACTOR1 NUMERIC "1"
-- Retrieval info: PRIVATE: DUTY_CYCLE0 STRING "50.00000000"
-- Retrieval info: PRIVATE: DUTY_CYCLE1 STRING "50.00000000"
-- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE0 STRING "0.895000"
-- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE1 STRING "89.500000"
-- Retrieval info: PRIVATE: EXPLICIT_SWITCHOVER_COUNTER STRING "0"
-- Retrieval info: PRIVATE: EXT_FEEDBACK_RADIO STRING "0"
-- Retrieval info: PRIVATE: GLOCKED_COUNTER_EDIT_CHANGED STRING "1"
-- Retrieval info: PRIVATE: GLOCKED_FEATURE_ENABLED STRING "0"
-- Retrieval info: PRIVATE: GLOCKED_MODE_CHECK STRING "0"
-- Retrieval info: PRIVATE: GLOCK_COUNTER_EDIT NUMERIC "1048575"
-- Retrieval info: PRIVATE: HAS_MANUAL_SWITCHOVER STRING "1"
-- Retrieval info: PRIVATE: INCLK0_FREQ_EDIT STRING "27.000"
-- Retrieval info: PRIVATE: INCLK0_FREQ_UNIT_COMBO STRING "MHz"
-- Retrieval info: PRIVATE: INCLK1_FREQ_EDIT STRING "100.000"
-- Retrieval info: PRIVATE: INCLK1_FREQ_EDIT_CHANGED STRING "1"
-- Retrieval info: PRIVATE: INCLK1_FREQ_UNIT_CHANGED STRING "1"
-- Retrieval info: PRIVATE: INCLK1_FREQ_UNIT_COMBO STRING "MHz"
-- Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone III"
-- Retrieval info: PRIVATE: INT_FEEDBACK__MODE_RADIO STRING "1"
-- Retrieval info: PRIVATE: LOCKED_OUTPUT_CHECK STRING "1"
-- Retrieval info: PRIVATE: LONG_SCAN_RADIO STRING "1"
-- Retrieval info: PRIVATE: LVDS_MODE_DATA_RATE STRING "Not Available"
-- Retrieval info: PRIVATE: LVDS_MODE_DATA_RATE_DIRTY NUMERIC "0"
-- Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT0 STRING "deg"
-- Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT1 STRING "deg"
-- Retrieval info: PRIVATE: MIG_DEVICE_SPEED_GRADE STRING "Any"
-- Retrieval info: PRIVATE: MIRROR_CLK0 STRING "0"
-- Retrieval info: PRIVATE: MIRROR_CLK1 STRING "0"
-- Retrieval info: PRIVATE: MULT_FACTOR0 NUMERIC "1"
-- Retrieval info: PRIVATE: MULT_FACTOR1 NUMERIC "1"
-- Retrieval info: PRIVATE: NORMAL_MODE_RADIO STRING "1"
-- Retrieval info: PRIVATE: OUTPUT_FREQ0 STRING "0.89500000"
-- Retrieval info: PRIVATE: OUTPUT_FREQ1 STRING "89.50000000"
-- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE0 STRING "1"
-- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE1 STRING "1"
-- Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT0 STRING "MHz"
-- Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT1 STRING "MHz"
-- Retrieval info: PRIVATE: PHASE_RECONFIG_FEATURE_ENABLED STRING "1"
-- Retrieval info: PRIVATE: PHASE_RECONFIG_INPUTS_CHECK STRING "0"
-- Retrieval info: PRIVATE: PHASE_SHIFT0 STRING "0.00000000"
-- Retrieval info: PRIVATE: PHASE_SHIFT1 STRING "0.00000000"
-- Retrieval info: PRIVATE: PHASE_SHIFT_STEP_ENABLED_CHECK STRING "0"
-- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT0 STRING "deg"
-- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT1 STRING "deg"
-- Retrieval info: PRIVATE: PLL_ADVANCED_PARAM_CHECK STRING "0"
-- Retrieval info: PRIVATE: PLL_ARESET_CHECK STRING "1"
-- Retrieval info: PRIVATE: PLL_AUTOPLL_CHECK NUMERIC "1"
-- Retrieval info: PRIVATE: PLL_ENHPLL_CHECK NUMERIC "0"
-- Retrieval info: PRIVATE: PLL_FASTPLL_CHECK NUMERIC "0"
-- Retrieval info: PRIVATE: PLL_FBMIMIC_CHECK STRING "0"
-- Retrieval info: PRIVATE: PLL_LVDS_PLL_CHECK NUMERIC "0"
-- Retrieval info: PRIVATE: PLL_PFDENA_CHECK STRING "0"
-- Retrieval info: PRIVATE: PLL_TARGET_HARCOPY_CHECK NUMERIC "0"
-- Retrieval info: PRIVATE: PRIMARY_CLK_COMBO STRING "inclk0"
-- Retrieval info: PRIVATE: RECONFIG_FILE STRING "pll_aud.mif"
-- Retrieval info: PRIVATE: SACN_INPUTS_CHECK STRING "0"
-- Retrieval info: PRIVATE: SCAN_FEATURE_ENABLED STRING "1"
-- Retrieval info: PRIVATE: SELF_RESET_LOCK_LOSS STRING "0"
-- Retrieval info: PRIVATE: SHORT_SCAN_RADIO STRING "0"
-- Retrieval info: PRIVATE: SPREAD_FEATURE_ENABLED STRING "0"
-- Retrieval info: PRIVATE: SPREAD_FREQ STRING "50.000"
-- Retrieval info: PRIVATE: SPREAD_FREQ_UNIT STRING "KHz"
-- Retrieval info: PRIVATE: SPREAD_PERCENT STRING "0.500"
-- Retrieval info: PRIVATE: SPREAD_USE STRING "0"
-- Retrieval info: PRIVATE: SRC_SYNCH_COMP_RADIO STRING "0"
-- Retrieval info: PRIVATE: STICKY_CLK0 STRING "1"
-- Retrieval info: PRIVATE: STICKY_CLK1 STRING "1"
-- Retrieval info: PRIVATE: SWITCHOVER_COUNT_EDIT NUMERIC "1"
-- Retrieval info: PRIVATE: SWITCHOVER_FEATURE_ENABLED STRING "1"
-- Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0"
-- Retrieval info: PRIVATE: USE_CLK0 STRING "1"
-- Retrieval info: PRIVATE: USE_CLK1 STRING "1"
-- Retrieval info: PRIVATE: USE_CLKENA0 STRING "0"
-- Retrieval info: PRIVATE: USE_CLKENA1 STRING "0"
-- Retrieval info: PRIVATE: USE_MIL_SPEED_GRADE NUMERIC "0"
-- Retrieval info: PRIVATE: ZERO_DELAY_RADIO STRING "0"
-- Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all
-- Retrieval info: CONSTANT: BANDWIDTH_TYPE STRING "AUTO"
-- Retrieval info: CONSTANT: CLK0_DIVIDE_BY NUMERIC "5400"
-- Retrieval info: CONSTANT: CLK0_DUTY_CYCLE NUMERIC "50"
-- Retrieval info: CONSTANT: CLK0_MULTIPLY_BY NUMERIC "179"
-- Retrieval info: CONSTANT: CLK0_PHASE_SHIFT STRING "0"
-- Retrieval info: CONSTANT: CLK1_DIVIDE_BY NUMERIC "54"
-- Retrieval info: CONSTANT: CLK1_DUTY_CYCLE NUMERIC "50"
-- Retrieval info: CONSTANT: CLK1_MULTIPLY_BY NUMERIC "179"
-- Retrieval info: CONSTANT: CLK1_PHASE_SHIFT STRING "0"
-- Retrieval info: CONSTANT: COMPENSATE_CLOCK STRING "CLK0"
-- Retrieval info: CONSTANT: INCLK0_INPUT_FREQUENCY NUMERIC "37037"
-- Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone III"
-- Retrieval info: CONSTANT: LPM_TYPE STRING "altpll"
-- Retrieval info: CONSTANT: OPERATION_MODE STRING "NORMAL"
-- Retrieval info: CONSTANT: PLL_TYPE STRING "AUTO"
-- Retrieval info: CONSTANT: PORT_ACTIVECLOCK STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_ARESET STRING "PORT_USED"
-- Retrieval info: CONSTANT: PORT_CLKBAD0 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_CLKBAD1 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_CLKLOSS STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_CLKSWITCH STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_CONFIGUPDATE STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_FBIN STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_INCLK0 STRING "PORT_USED"
-- Retrieval info: CONSTANT: PORT_INCLK1 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_LOCKED STRING "PORT_USED"
-- Retrieval info: CONSTANT: PORT_PFDENA STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_PHASECOUNTERSELECT STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_PHASEDONE STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_PHASESTEP STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_PHASEUPDOWN STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_PLLENA STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_SCANACLR STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_SCANCLK STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_SCANCLKENA STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_SCANDATA STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_SCANDATAOUT STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_SCANDONE STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_SCANREAD STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_SCANWRITE STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_clk0 STRING "PORT_USED"
-- Retrieval info: CONSTANT: PORT_clk1 STRING "PORT_USED"
-- Retrieval info: CONSTANT: PORT_clk2 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_clk3 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_clk4 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_clk5 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_clkena0 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_clkena1 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_clkena2 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_clkena3 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_clkena4 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_clkena5 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_extclk0 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_extclk1 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_extclk2 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: PORT_extclk3 STRING "PORT_UNUSED"
-- Retrieval info: CONSTANT: SELF_RESET_ON_LOSS_LOCK STRING "OFF"
-- Retrieval info: CONSTANT: WIDTH_CLOCK NUMERIC "5"
-- Retrieval info: USED_PORT: @clk 0 0 5 0 OUTPUT_CLK_EXT VCC "@clk[4..0]"
-- Retrieval info: USED_PORT: @inclk 0 0 2 0 INPUT_CLK_EXT VCC "@inclk[1..0]"
-- Retrieval info: USED_PORT: areset 0 0 0 0 INPUT GND "areset"
-- Retrieval info: USED_PORT: c0 0 0 0 0 OUTPUT_CLK_EXT VCC "c0"
-- Retrieval info: USED_PORT: c1 0 0 0 0 OUTPUT_CLK_EXT VCC "c1"
-- Retrieval info: USED_PORT: inclk0 0 0 0 0 INPUT_CLK_EXT GND "inclk0"
-- Retrieval info: USED_PORT: locked 0 0 0 0 OUTPUT GND "locked"
-- Retrieval info: CONNECT: @areset 0 0 0 0 areset 0 0 0 0
-- Retrieval info: CONNECT: @inclk 0 0 1 1 GND 0 0 0 0
-- Retrieval info: CONNECT: @inclk 0 0 1 0 inclk0 0 0 0 0
-- Retrieval info: CONNECT: c0 0 0 0 0 @clk 0 0 1 0
-- Retrieval info: CONNECT: c1 0 0 0 0 @clk 0 0 1 1
-- Retrieval info: CONNECT: locked 0 0 0 0 @locked 0 0 0 0
-- Retrieval info: GEN_FILE: TYPE_NORMAL pll_aud.vhd TRUE
-- Retrieval info: GEN_FILE: TYPE_NORMAL pll_aud.ppf TRUE
-- Retrieval info: GEN_FILE: TYPE_NORMAL pll_aud.inc FALSE
-- Retrieval info: GEN_FILE: TYPE_NORMAL pll_aud.cmp FALSE
-- Retrieval info: GEN_FILE: TYPE_NORMAL pll_aud.bsf FALSE
-- Retrieval info: GEN_FILE: TYPE_NORMAL pll_aud_inst.vhd FALSE
-- Retrieval info: LIB_FILE: altera_mf
-- Retrieval info: CBX_MODULE_PREFIX: ON

View File

@@ -1,257 +0,0 @@
:10000000F33100E8ED563A04D0A7F20033CDF40501
:10001000CDF206CD290DC3680000000000000000ED
:100020000000000000000000875F1600195E2356E4
:10003000EBE900000000000008D9CD6D05214EE07D
:10004000347E23E60F200134233523353A04D0A72C
:10005000FA9300214EE034010300214EE03510FEFA
:100060000D20FBD908FBFBC9FBCD8A0B3E01324DAD
:10007000E0320FE53C3208E5C3B70B0600AF324D66
:10008000E02146E070FBCD4507CD8A0BC3B70B06D8
:100090000418EACDCB053A00D02F3253E0CB4F28DD
:1000A000153A04D0CB67200E2146E0CB4E20073A0C
:1000B00000D0E60120F93A04D0CB5F200621F3E01E
:1000C00034CB46FDE5DDE5CD0E043A41E0A7200541
:1000D0003E023248E02146E046CB782015CB48204E
:1000E0001B3A48E0A7201DCB5020113A47E0A7C299
:1000F0008F00CB402806CD7A04CDEC01DDE1FDE197
:10010000D908FBC936023100E8FBCD290DCD3305F6
:1001100028FBCD380BC3B70B3100E82146E035FB97
:10012000F26800CD960BAF32A6E12115E535281B0C
:10013000CDD5062146E0CB66CAB70BCD03063A15EE
:10014000E5A7C2B70BCD0306C3B70B3E1BCD750D9C
:100150002146E0CB66281F21ED2ACD4E033A46E02A
:100160001F1F1FE6013CCDBD03CD0306CDE4053ABC
:1001700015E5A7C2B70B21022BCD4E03CD1C0628D7
:1001800003CD0306CDE805CD290D212A2ACD000394
:100190003E11A7283D3D273254E01133820E02CD97
:1001A000AE033E403250E03A50E0A73A54E028E235
:1001B0003A48E0A7200B21572CCD7403CD27051812
:1001C000E6CD330528E1CDDA01CDDA01CDBF0CC390
:1001D000B70BF3AF3246E0C368003A40E03215E5B2
:1001E0002100002200E52202E5C30306DD2100E331
:1001F0003E2032E8E0DD7E003DFA0002210C02EFF5
:10020000111000DD1921E8E03520EAC9111331137E
:1002100070138813BC13C213EB1321140918E015D3
:10022000FA152D162D1649165D168F163D195719FC
:100230005E19D1192F1A441A921AB91AF01A011B11
:10024000271B3314E018AA1E281FAC20C420AA1EA6
:10025000281F00201A20A41E281F4D209C20231D8B
:10026000F31D511E9B1E9B1CBC1C141E291ECDDCA5
:100270000DCD0D21CD3A1BCDC71BCDA712CDE71259
:10028000CDDC0D3ACFE121D0E1BE28E25F16E6DDFC
:10029000210000DD19DD4E00CB21201121CFE1BE70
:1002A0002003C60477DDE5C179C60418D90600DD50
:1002B0007000DD7E0121A502E521D302094E2366EF
:1002C00069E921D0E16E26E6712377237323722C2E
:1002D0007D32D0E1C92206FA02ED0222032F036724
:1002E0000361033703A60D0112181200003A4EE015
:1002F000DD8601DD7701DD360004DD6E02DD66039B
:10030000CDDB037E0612FE2628060630FE27200DD2
:1003100023783250E03A50E0A720FA18E6CDC9031E
:1003200018E13A4EE0DDBE012805DD360004C9DDE6
:100330006E02DD660318443A50E0A7200CCD2F036F
:10034000DD3501C83E043250E0DD360007C9CDDBA3
:1003500003CDC9033E033250E03A50E0A720FA181B
:10036000F03A50E0A720083E043250E0CDFA02DD1A
:10037000360008C93A4EE0CB672085CDDB037E23EB
:10038000FE21C8FE232809FE2228F0AF121318EE22
:100390002318EB7E13E60F28041BCDA6032B7E1F2C
:1003A0001F1F1FCDA7037EE60FC6301213C9FD2104
:1003B0000004FD19F51F1F1F1FCDBD03F1E60FC679
:1003C0003012FD710013FD23C97E23FE212833FE68
:1003D000232812FE25282DFE2220E65E235623FD2B
:1003E000210004FD194E233AF9E0A7C879A7C8FEF9
:1003F00003380BFE062803FE09C0C6054FC9C60B0D
:100400004FC9E1C946237E23CDC10310FBC9213E5C
:10041000E01141E03A00D0010200CD3404213FE078
:10042000133A02D01FF6040E20CD34043A4CE0B04B
:100430003201D0C91F1F1FCB161FCB167EE655FEFB
:1004400054280E7EE6AAC021EDE0347EE60FC018E7
:100450001978B1473E13CD7D0D1AFE012811FE0813
:10046000300B2147E034BEC0AF773C1802D60821DC
:1004700048E0862730023E9977C93A46E007305B6C
:100480001101D0CB6728073A43E03D280113214AE8
:10049000E07E23772B1A2F772BE60377C93A0BE5FB
:1004A0002AF7E0BE2013237E545D2322F7E0A7281D
:1004B00004FEFF20D932E0E1C9214AE03AE0E1A799
:1004C00028133A4EE00747E6013C3249E078E61E41
:1004D00020033620C97E36FF2377C9214DE03A4EEE
:1004E000E0477EA728B7FE50281DCB183805CB184B
:1004F0003801340E022149E0FE1838010D7123360F
:1005000000FEB0D8C37B002100E37EFE04200C3A3D
:1005100009E317D836080E0AC3C202FE08C8214AEA
:10052000E03620233600C921E22ACD00033A48E014
:10053000C3AE0321D12ACD7403CD270521862A3AE3
:1005400048E03D280321972ACD00033A53E0E60313
:10055000C81F3A48E006803806D60127C80690D65C
:100560000127F33248E0783246E03CFBC92100E144
:100570001140C8014000EDB01E200E20EDB01EC09D
:100580000E40EDB011A0C80E20EDB00E1C7E06048A
:10059000ED790C10FB233AC3E1A7282B7EE67F01FF
:1005A0004000CB3F30010420F97E07E601A85FED53
:1005B000A33A0088E607BBC2C3000E80EDA30E601D
:1005C000EDA30EA0EDA37E2FD3C0C92ADDE17DBC33
:1005D000C826E07E3200D0CBFF3200D07D3CE6075B
:1005E00032DDE1C93E4018023EC03250E03A50E0F0
:1005F000A720FAC92100E00100073600230B78B1DB
:1006000020F8C92146E07EEE08772100E51118E5C3
:1006100006181A4F7E1271231310F7C93A46E0CB21
:100620005FC94F81814F0600210C2A093A46E0A795
:10063000F01100E50603A71A8E2712132310F8CD38
:10064000AF0606031100E52108E0A71A9E23131048
:10065000FA38152A00E52208E03A02E5320AE03AC3
:100660000EE5320BE0CD8506118480CD1C062803F3
:1006700011A4802102E50E01CDE70306037ECDAE75
:10068000032B10F9C9210BE07E0E09FE1B3804D69E
:100690001A0E06C640324A803AF9E01F793002C687
:1006A00005324A841143800E09CDE7032B18CC2A6A
:1006B00001E53A45E03DF83D280124CB2C253C7C62
:1006C0002005A728023EFE2103E5BEC07EFE03C82A
:1006D000342115E5343A15E53D28034F3E01217CD0
:1006E00080CDEC06CDEC06280379C6307723A7C869
:1006F0003CC92140E03A03D0473CE60320023E05D6
:100700007723780F0F47E6033245E03A04D0CB5702
:1007100078281F1F1FED44E60FCB5F28013C77238D
:10072000773A04D02F1F47E6012377781FE601238D
:1007300077C91F1F2F473CE60377781F1FE603FE8C
:1007400002DEF518DACD290D21972CCD0003CD2737
:100750000521572CCD4E031154E00120003A44E00E
:10076000A72034CD9F07CDE8077EFE3220203E53E0
:10077000325FE03268E02162E07E87D630FE3A38B0
:1007800006D60A772B3E31772154E0CD4E033A4707
:10079000E0A720FAC3E805CDD307CDDD0718E9218E
:1007A000672CEDB02157E03A41E0110800FE08380F
:1007B00012C6287719365323232336311106001920
:1007C0003600C93DC8110B0019C631771106001952
:1007D0003653C9217D2CEDB0215BE018CACDE80766
:1007E000215BE03A42E018C22154E0CD4E032A5486
:1007F000E0114000192254E02157E034C92177E28A
:1008000006077EA7280B2B10F9C92161E2061218F2
:10081000F1347DD6508787DD7701C9DD7E07E6F8A4
:100820006F26202929DD7E031F571F1FE61F856FB6
:10083000C93A00E3FE06307A3AE2E1DD960FED4474
:10084000DD7703FEE0386DDD4E0B0D206BFEE830EA
:1008500067E1DD360000DD7E0D3717D83717211828
:100860002E3001245F16001946DD5E0116E178176F
:10087000301006011738277BFE60380662D65E6F9F
:100880003600FD210000FD197B1F1FE63FC6506F9B
:1008900026E2110400FD7202FD1910F972C9CD8221
:1008A000082174E1010018712310FC21D1E17023AB
:1008B00070C9E1C9DD360B01DD7E0D07D81721189F
:1008C0002E3001245F160019DD5E0116E1FD2100C6
:1008D00000FD1956235E234E060021F508094E231C
:1008E0006669DD4E03DD7E07CDED08AFE92F473A9F
:1008F0003CE08047C969095A09CF09CD09F50A4387
:1009000009E20A900A560AB70A520A9F0AC909253B
:100910000B76099709BA091E0A440A340925091DEC
:100920000BB0098309DD340ADD7E0AE61FFE0B38B1
:10093000381C18353A4EE0E603280114CD69091633
:100940003B181BFD21A4E1FD770AFD770EFD771210
:10095000FD7716CD950A3EF88047CD6909143E1003
:10096000814F210400EBFD19EBDD7E0BA7792035CB
:10097000C608FE203835FD7000FD7301FD7202FDD2
:100980007103C9DD7E081E07CB3FCB13C67A5778AB
:10099000FE80D2250B18DF3E088047FD2174E179E7
:1009A000FEF8D018D1C608FEF038CBFD360200C9DB
:1009B0003A4EE0CB5728BF1418BC3E0E8060472E3D
:1009C00001CDE40911087618113E0A18023E05808F
:1009D00060472E01CDE40911087144210800EBFDA8
:1009E00019EB2E00CD6909FD70042D20293E40AB86
:1009F000FD77053E08FD720681FD7707C608FEF803
:100A0000300AFE20D0DD7E0BA72806C9DD7E0BA7AD
:100A1000C8FD360600C914FD73053E1018D7C5D5AC
:100A200021020809444D79C608FED03011CD830952
:100A3000110400FD19D1C12E00FD750A18A6FD365E
:100A4000020018EC32A6E132AAE132AEE1CD950AFD
:100A500018103E1818023E0DFD2174E180473EF843
:100A6000814FAFCD6F0AEB110800FD19EB3E1081ED
:100A70006FFD7703FD7707FD70003EF080FD770482
:100A8000FD7301FD7305FD72021414FD720615C994
:100A9000CD950A18CD3AF9E01FD07BF60C5FC9FD61
:100AA0002174E1FD360A00FD360E003E188047AF86
:100AB000CD6F0AFD7206C93E188047FD2174E13EE4
:100AC000F8CDCD0A210C00EBFD19EB3E08CD6F0AE5
:100AD000FD750BD610FD7708FD77097AC603FD7703
:100AE0000AC9FD21A4E1FD7706CD950A2108F80980
:100AF000444DC37609FD21A4E1FD361A00CD950AC7
:100B00003EF8CD130B3E08CD0C0B3E18EB11080040
:100B1000FD19EBCD6F0A7AC602FD7706C93A4EE0A1
:100B2000CB4F28011CCD7609DD7E01FE60D8EB118C
:100B3000A0FFFD19EBC37609CD8E0CCDBF0C3A0496
:100B4000D0CB6FC021A92ACD00033EFF3251E02156
:100B500053E07E4EA9A11F38083A51E0477910F3BF
:100B6000C9210EE57E3CFE3430E0772A16E54623A7
:100B70007EE67F23FE0620F678320BE52216E5326C
:100B800023E5222EE5CD120D18C0CDB10C219426FF
:100B90002216E5C3BF0C2A16E52B7E2BE67FFE0648
:100BA00020F711DCE1EB7E3600EBA720EC7E320B68
:100BB000E523232216E5C92100E1010004CDFA0551
:100BC000DD2100E3DD360001DD361009DD3601B040
:100BD000DD3621A0DD2170E33E600609111000DD45
:100BE0007701DD19C60410F7CD960B2B463E042184
:100BF00000C005F2FA0B3E0726A83214E52206E3F0
:100C00003E023208E5CD8D0D3A13E53DFE05CE00DE
:100C100006FB1F3801047832C5E1CD8129A7205F8A
:100C2000210FE5CB462058343A10E5A72858215F1C
:100C30002ACD00033A10E5FE0438023E03C63032E6
:100C400056813E1CCD6F0D3E40320AE30E6821B640
:100C50003046CB782014235E237E23EB2683712637
:100C600087700C2CBD20F5EB18E73ED321D830114E
:100C700010E246CB782008121310FC3C2318F32115
:100C800046E034C36E0221472ACD000318B4AF32C8
:100C90004DE0CD950CCD03062100E5011600CDFAFF
:100CA00005320FE53A40E03215E52162212216E5D2
:100CB000C921DE2622F7E02103E501110018DFCD6E
:100CC000290D2121840E063A0EE5FE1A3E00380158
:100CD0003C32F9E0C50E01CDE70379C1061E77234A
:100CE00010FC23230D20F5210F2BCD0003CD68062A
:100CF000CD85063A46E0CB67280FCD0306CD6806C2
:100D0000CD030621722BCD0003CDD506CD2C21CDF0
:100D10008A293A0EE50E02FE1A3804D61A0E07C6C4
:100D20004032528079325284C9210080010008CDBE
:100D3000FA052100E101C600CDFA053A43E03D285D
:100D4000092146E0AFCB5E28013C324CE02104D0C3
:100D5000AE213CE036EF16FF1F30031436F123724C
:100D6000010040AFED790C10FBF3CD7D0DFBC9F315
:100D7000CD750DFBC9E52146E0CB7EE1F0E52ADE2D
:100D8000E126E0777D3CE60732DEE1E1C9CD482986
:100D9000CDC20C0620C5CD061121E2E17EC6087742
:100DA000C110F2C33B0DDD5E02DD5603014A308106
:100DB0004F0A4FEB1120007EA720031918F9225487
:100DC000E00A033DC8F2CD0D3C771918F43A54E01F
:100DD0003C6FE61F20E87DD6206F18E2CD5B123A0B
:100DE000E2E12109E547AEE6F8C878E6F877CD06F6
:100DF000113A4DE0A7C0210BE5347E5FA72807E636
:100E00001F2003CDD6297B2A16E5BE200B237EE6C4
:100E10007F32D7E1232216E521D7E17E3DF8360067
:100E2000FE18D2450FFE172826D606FA8A0ED607D8
:100E3000FAF00E8787875F1600FD210010FD19CD9F
:100E4000930EFD7E06A72803CDFD07DD7100C93E88
:100E5000193270E3C93E0132DCE12AE4E07DE61F8D
:100E6000F6C06F360A0120005D09360B7B3DE61F98
:100E7000F6C06FCD8129C6417722DAE10936F20149
:100E8000E003093AF9E0C60577C93C28C8C605322F
:100E900008E5C9FD7E00FE02281BFE07381C16006F
:100EA000FD5E05DD2170E3FD4604DD7E00A728130D
:100EB000DD1910F6C921D7E1361111F0FFDD21F05F
:100EC000E418E4FD7E00DD770CFD7E01DD770D3A50
:100ED00009E5D602DD770FCD3D15FD8603DD7707E9
:100EE000DD360B00DD360300DD360E00FD4E02C997
:100EF0003CCA400FF5FD214E10CDBA0EF1C686DD7D
:100F0000770DDD7100214A3085C6806F6EFD2AE4C1
:100F1000E01120007E233DF2220F3CFD7700FD19F9
:100F200018F2C822E6E03D2811FD215510CD9E0E95
:100F3000DD360A00DD340EDD71003E0D32D7E1C929
:100F40002AE6E018C8D61FFAB70F21C5E10EFF2325
:100F50000CD608F24F0FC6082810772323237723D7
:100F60002323770DF821D6E134C977FD2170E311F1
:100F7000100006190DFAA50FFD7E00D622FE0630E0
:100F8000196FCB4D201461FD7E0DFE2A2001242512
:100F90002008CB552009FD360024FD1910DAC9FDC3
:100FA000360F0118F5FD7E00D61EFE023004FD3618
:100FB0000024FD1910EFC9C608FE043008210BE516
:100FC00046237023773AD5E1A7C85F1600FD21FFBD
:100FD000E3FD192170E31E10013A057EA7CA5D10DA
:100FE0001910F8C900000000000000000000000017
:100FF000000000000000000000000000000000A54C
:00000001FF

View File

@@ -1,257 +0,0 @@
:10000000000E12F010000100010F12F010000100AC
:10001000021012F010000100031112F01000010094
:100020000D2512FD061000000A211DF0051000002C
:10003000041216F418100100051616F2181001002B
:10004000061B16F0181001000B2317F0012000000A
:100050001300100000004A140003400000EBDD21F3
:100060000000DD19DD710DDD360900DD360800FD0B
:100070005607DD7207FD7E00D61EFE0AD0CB4FC0AC
:10008000FD7E03D610FEE0D079FE3A2836CD9220D0
:10009000ED5FE67F473A03E380D62F4FDD9603C638
:1000A00008FE11793003EE104FFDBE0317DD770C0B
:1000B00079CD3815921F1F1FE61FC60241CB380E9F
:1000C0002E180F012A8FCB3ACB3ACB3A3A14E5EEF1
:1000D0001F92210031856F56FD7E03DD7703CB3FF4
:1000E000903002ED441EFF1C9230FC82DD73050649
:1000F00008CB27BACB13CB4320019210F47B2FDD22
:100100007704DD7100C921D9E17EA7C29A113A08AE
:10011000E5FE033079470521B42C3AE2E11F1F1FA9
:10012000E61F851002C6206F4E3AE2E11F1F1FE650
:100130001F5F1683FD210004FD19EB112000060747
:100140003A14E5B82807360019FD1910F622E4E044
:1001500071FD36000419FD1936F3FD36000410F563
:100160003AE2E11F1FE63EC6006F26E23A14E5EED2
:100170001F57FD21242CFD09FD7E005FE67007B2AC
:1001800007070777E6F8577BE607B22377C987C6E4
:100190007A778728023E0A32D8E14ECB19D8CB199C
:1001A00021D8E135F2B611360B3A14E5383CFE079A
:1001B000283E3E0B18277E2114E5301CA720013570
:1001C000C6F3FEFC3802D60C4FC603FAC911C22989
:1001D0001179D6104FC32911FE092001342FC6F220
:1001E000FEF03002C60C4FC32911FE043E0B20D096
:1001F00021D9E1342AE1E122F1E021000022EFE0FF
:10020000C921442DED53EBE022E9E03A4EE0C6036C
:10021000DD7701DD36000BC93A4EE0DDBE0120F38B
:100220002AEBE02322EBE02BEBFD210004FD192A51
:10023000E9E00120007E233DFE03380D3C12FD362F
:100240000080EB09EBFD0918EC3DFA551228B95E68
:1002500023562318AF21972CC300033A0DE53DF830
:1002600021AB2C3A4EE0E63F281BE61FC0CD7B03B6
:10027000CD88123602EB3612210BE57E2396FE4026
:10028000D8233600C9CD00033A0DE521558001027F
:10029000131120003D2808190C053D28020419708F
:1002A000110004EB1971C92170E31110000102194A
:1002B0007EFE14282AFE1E381BFE203808FE223837
:1002C00013FE2A300F3ADFE11F1FD87932DFE1C673
:1002D00015C36F0D1910D93ADFE1A7C8AF18ED3A71
:1002E000DFE11F0D30E5C93ADCE1A7C83A4EE0E690
:1002F0000F2804E607C03C3C4F2ADAE17ED65A2894
:100300000A3C0604C605280310FAC9110004197135
:10031000C92100402202E33A4EE0E6032048DD35E1
:100320000AF26613215F2ACD7B033E18CD750D18A6
:1003300029CD48150707302B2A1AE31179FF197CBC
:10034000A720057DFED138023ED15FCB3B832F6FC6
:100350003EFFDE00672B672208E3DD3400CD761513
:10036000C3B808CD8A14CD3315D61C3207E318ED77
:10037000DD34003E14CD750DCD48152A0EE3CDA415
:1003800014CD3315D61E18E3CD48152A0EE3CDA49F
:10039000142A06E3ED5B08E3192206E3210C001999
:1003A0002208E3CB14380FCD3315D61D473A07E3A7
:1003B000B83803DD3400CDAC15C3B808DD36000213
:1003C00018B62A02E3ED5B04E3192202E32A06E3EE
:1003D000ED5B08E3192206E3CDB808DD350AC0DD80
:1003E0003400DD360D033E1FC3750DAF32A2E1DDD3
:1003F000350AF0DD7E0DFE09D21801FE05380BCD61
:10040000B808DD340DDD360A0EC9DDCB0A4EC0EE6C
:1004100007DD770DDD7E0AFEC0D2B808DD360D059A
:10042000C9DD350ADD7E0AFE50D0214DE034DD36CF
:100430000004C9CDDB2022D6E07CD608FEF0D252E3
:10044000082AD8E023CB7C20022B2B22D8E02ADA02
:10045000E0ED5BDCE0194C22DAE02124001922DC1B
:10046000E0CB14381FC60BCD3815D608B93015EDC2
:100470005BDCE0210000ED52CB3ACB1BCB3ACB1B2F
:100480001922DCE0CDB808C3EF203A49E0872128E3
:1004900030856F5E23662E00220EE3AFCB13175715
:1004A000ED531CE3ED5B02E3AFED524F7C3003ED07
:1004B000440CFE1838023E18213030856F5E16005D
:1004C0002A04E37CA7F2D4140D20112F677D2F6F2F
:1004D00023EB18030D2857A7ED5230521102003AB2
:1004E0004EE01F2A04E3ED5A2204E3ED5B02E31918
:1004F0002202E35421DCE17E3DC03A0BE587878789
:10050000C60882D03600210EE5347E0609FE192881
:100510000F38013DD605CAC02710F9FE06CAC0270C
:100520003E10CD750DAF0E01CDC202C3120D11FDEF
:10053000FF18AC3A03E3C620473AE2E180C606CB97
:100540003FCB3F6F26E27EC92A4AE07CADA507D0AB
:100550004F3A20E3A720053E0A3220E32130E3068C
:10056000041110007EA728051910F979C9360E3E2E
:1005700012CD750D79C93A03E34FC604CD3815D6AF
:1005800009CDC9157AEE03573E09CD92152C1414E6
:100590003E0D814F2C2C7DE63F6F7ED609CDED08B8
:1005A00047FD23FD23FD23FD23C376093A03E34FD3
:1005B0003A07E3C611CDC9157AEE03573E09CDC5FA
:1005C0001514143E0D814F18D80CCDED08471100BD
:1005D000053AE2E1CB67200114FD21A4E1C37609CD
:1005E000DD360A0C3A07E3C60A3227E32A02E31192
:1005F000001C192222E3DD3400C9DD350A28192A3E
:1006000022E3115D04192222E3DD7E0A1F3E093830
:10061000013CDD770DC3B808DD3400DD360A03DDAB
:10062000360D0B3AE2E1DD8603DD770FC9CD3108E7
:10063000DD350AF0DD7E0DFE0DCA5208FE29CA52D4
:1006400008DD340DDD360A03C93A03E3C60ADD7757
:10065000033A07E3C602DD7707DD3400C93A00E359
:10066000FE06302BDD7E07D603FE3A3822DD770703
:10067000CD1B08DD7E071F1F1F7A17E607F6607780
:100680001100041936001FD01120FC193600C9CD05
:100690001B083600DD360000C9DD4E03DD7E0C8709
:1006A0008787211C31856F3A20E31104F8D60B2887
:1006B000063D2017110AF03A23E38291FEE8380B39
:1006C0003A27E3DD96078683F24E17DD7E0CA7F806
:1006D000233A03E39186234623B83805963001AFC9
:1006E0008023BED2C417234623866F243A07E386AD
:1006F000DD96073D80F83A04D0CB77C8E13E07325B
:1007000000E33E03320DE3AF320AE332B0E332726C
:10071000E1CD520806033A07E3C6144F3A03E3213A
:10072000D3E13421C0E3FD21DF30361C23232377BE
:10073000C610CDF81771CDF8172323FD5E0073FDA9
:100740002323232310E4CDA1083E1FC3750D3AE2F5
:10075000E1DD8603322FE33E0D3220E33E26322DCB
:10076000E33E03322AE33E01CD750D110700197EE9
:10077000E60F0E01FE0E3007CDC202E1C352082083
:1007800013CDF017C605DD7708CDC202DD3400DDDC
:10079000360A00C9CD5608CDF0172110FBC606DD7C
:1007A0007708E5CDC202E1DD7E0784DD7707DD7ED7
:1007B0000385DD7703DD360D54DD360021DD360A95
:1007C0003BC3560847DD7E0CC6804FFE8B281BFEC0
:1007D0008E28177896FE04D0DD710C2323237E1F0C
:1007E0001F1F1FE60F0E01C3C20278FEFC30E9C9CD
:1007F000ED5FE603C03E02C923FD5E007323FD5E8C
:1008000001732323FD23FD23C93A00E3FE06D0FE36
:1008100001260028762A1CE3ED5B1AE37AA7FA2367
:1008200018ED52210300300321FEFF3A4EE01F383D
:10083000011D19221AE3ED5B04E3A7ED522214E334
:10084000EB2AE1E11922E1E13AD9E11F303D2AEF3B
:10085000E0197CC606FE0C3817D61267E5213FE288
:100860001142E2014000EDB82142E20E03EDB8E191
:1008700022EFE0ED5BF1E0193A08E5FE03300C3AB7
:10088000E2E194FEF43804AF32D9E17C2F213DE05F
:100890008632C0E12A14E3545DCB3CCB1D19CB3C1E
:1008A000CB1DCB3CCB1DEB2A04E5192204E57C2FA4
:1008B00032C1E1CB3ACB1B2A06E5192206E57C2F93
:1008C00032C2E1CD3315FEC430023EC4C628300129
:1008D000AF47C69432C3E1CB2878C67232C4E1C9AF
:1008E000CD3108CD9916DD350AF0DD340ADD7E0301
:1008F000FEE0D0DD7E0C17D83AC0E3A7C0FD217022
:10090000E31110000605FD7E00FE1D200DFD7E0C8E
:10091000173807DD7E03FD9603D8FD1910E8DD7E4C
:1009200007FD7707DD7E0FD604FD770FFD3600113A
:10093000FD360D22FD360C0CDD360A43C93A00E3C4
:10094000FE06D0DD7E04C6DDDD77043003DD350F25
:10095000CD3808CD9916C9CD3108CD9916C9CD31FC
:1009600008DD7E0CA7C0DD7E0D0707E61C21002EEA
:10097000856F3A03E3DD96038623BE3045473A0090
:10098000E3FE04C83A04D0CB77C878460E02CB38D1
:1009900050CB38BA38047882470DDD7E0380D61CF0
:1009A0003203E379320DE33D3D3205E33E8032040C
:1009B000E3237E320AE32100022208E33E063200EE
:1009C000E3C996FE04D0DD340C23237E0E01C3C29E
:1009D00002DD350AF20D1ADD7E0E473C0E07FE06DB
:1009E000380B3A4EE0E63020023E304FAFDD770E56
:1009F000DD710A78FE043804EE073D47C606DD4681
:100A00000C04FA081ADD770CC645DD770D3A20E3B1
:100A1000FE0F380EC03A03E3DD9603C610FE30DA4F
:100A2000FD16CD3808DD7E0CFE06C8CD9916C9CD61
:100A30003108DD350AF0DD7E0DFE4AC8DD350DDDFD
:100A4000360A07C93A00E3FE06D0DD350EF2661A13
:100A5000DD360E06DD7E0D3D010300218E1AEDB15F
:100A600020017EDD770DDD7E04C6C0DD7704300316
:100A7000DD350FCD3808DD7E0CD604CB27C60C4FF4
:100A8000DD7E03CD381591DD7707CD9916C9111597
:100A90001A20DD360B013A00E3FE06D02A72E37C11
:100AA000FE082809117000192272E3182CDD360A9D
:100AB00000DD3400DD360E80C93A4EE01FD83A0022
:100AC000E3FE06D03A4EE047E603200DDD3403CBCB
:100AD000682806DD3503DD35033A4EE0E607200DD4
:100AE000DD7E03C618CD3815D610DD7707C3B808EC
:100AF000DD350E20CFDD360A58DD3400DD360D52EF
:100B0000C9DD350A28152A72E3118001192272E322
:100B10007CFEF0D25208CD991618BEDD3400DD36C9
:100B20000A6EDD360D23C9CD9916DD350A2095DD17
:100B30003500DD350BDD360D52C921EEE03A4EE0D1
:100B400096F8010010ED5FE6F026E451596F7ED66D
:100B50001EFE0A300ACB4F2006FE0438630C5D7D72
:100B6000C61010E9ED53D4E10DF83A10E5E603FEA6
:100B700001894FFE09DA7A1B0E0821FF2F094E0664
:100B8000052170E31100007EA72839D62F2001141B
:100B90007DC6106F10F17AB9D01C1DC8ED5FE60F4D
:100BA000C619214EE08632EEE01600DD2100E3DDBD
:100BB0001921D4E15EFD2100E4FD190E3BC3641050
:100BC0005514189B5D18C93A4EE02152E0AEE61F5D
:100BD000C0ED5F7721C6E106037EA720042310F94C
:100BE000C9DD2100E40478480610FE04280F3AD637
:100BF000E13DFAFD1B0D0DDD2170E306051110002E
:100C0000DD7E00A72805DD1910F6C93579FE023012
:100C100043ED5FE61FC620DD770F21D6E135ED5F9E
:100C2000E61E5F1600FE0E3E823804ED5FE680DDB4
:100C3000770C210830197EDD7707237EDD770306E8
:100C40000021591C09097EDD770DDD360E00237E5B
:100C5000DD7700C9CD0A0818C52B262A262B222AA3
:100C600022311EDD7E0DFE2BD8DDCB0E7E2018DD61
:100C7000350EF0DD340DFE2F281CFE342004DD3649
:100C80000D31DD360E08C9DD340EF8DD350DFE2CD4
:100C900028F0FE3228ECDD360EF8C9DD6E04DD6684
:100CA00005CB3CCB1DDDCB0C462807EB210000A774
:100CB000ED52DD7504DD7405DD3400C90E3DDD7EC9
:100CC00009A720130E3BDD4605CB1030020E50DD88
:100CD0007E08FE6038010CDD710DCDFB207CFE0628
:100CE000DA520801050022D6E07C2ADCE00922DC89
:100CF000E0ED5BDAE01922DAE054CD3815D608BA17
:100D0000CDEF203035DD7707DD3400DD360B00DD3B
:100D10007E00FE2A3E032005DD3600303DCD750DF8
:100D2000C35608CDDB20ED5B14E3CB2ACB1BED5281
:100D3000118E00ED5201100018AC3A00E3FE06D20D
:100D4000B808210506DD7E00FE2A3003210B02FDD6
:100D50002130E31110000604FD7E00FE0F2014FD7B
:100D60007E07DD9607FE0A300AFD7E03DD960394BA
:100D7000BD382BFD1910E13A07E3DD9607FEF0DAE6
:100D8000B808573A03E3DD9603D604FEEADAB8085A
:100D90003A04D0CB77CAB808CD5208C3FD16FD344B
:100DA00000DD7E0DFE373811DD360C00DD36002DFE
:100DB000DD360A0ADD360D4FC921C9E1010105FE04
:100DC0003130072305FE2A2801233E11CD750D354C
:100DD00020082323237EFE033011DD360020DD367C
:100DE0000A06DD360D3778CDC202C92100FCD602D5
:100DF000C39D17DD360D3ECD2316D603E6F8C60695
:100E0000DD770F21D1E17EA72813233601237EA7AA
:100E1000C8C35208DD360D43CD231618E634DD3441
:100E200000DD360A04CD3108C921D2E17E23B6A700
:100E3000C25208DD7E03FEF8D25208DD350A20E5F5
:100E4000DD7E0DFE49CA5208DD340DDD360A051877
:100E5000D43AD3E1A7C25208DD350A20C8DD7E0DA1
:100E6000FE42301FDD340DFE3F2012DD7E0F1F1FBE
:100E70001FE61F5F16830E093E01CDC202DD360A52
:100E80000218A2DD7E07C608DD7707CD5608DD36DD
:100E90000C00DD360D81DD360013C9DD350ACA527E
:100EA00008C3B808DD350FCA4D20DD3400DD7E0CE7
:100EB000CB27283D3F1FE680DD770C4FED5FE63FF7
:100EC0005F1600212601190CF2D21EEBA7210000AB
:100ED000ED52DD7405DD7504EE3FD62087DD770821
:100EE0003E00DE00DD7709ED5FE67FC620DD770A94
:100EF000C90601DD7E07FE44380C0603FE583006A5
:100F0000ED5FE6023C4778DD860CDD770CED5FE6B1
:100F10000FC624DD770B216601DD7504DD7405DD68
:100F2000360800DD360900C9CD631CCDDB20DD7E2F
:100F30000CCB272052DD350A28492AD6E0ED5BD8B4
:100F4000E0197AED5B04E3ED5222D6E017382FDD8D
:100F50007E0D06A0D62A28080680D607380206D0BD
:100F60007CB8301F2ADAE0ED5BDCE01922DAE07CA5
:100F7000FE38380FFE70300BCDEF20C34C1D7CFEC9
:100F80001630E1DD3500C92AD8E0DD5E0B1600A77A
:100F9000ED5222D8E03016DD7E03D630FE403E0012
:100FA0003004ED5FE680DD860C3CDD770CEB2AD665
:100FB000E0ED52DD7E0C0738021919ED5B04E3ED1C
:100FC0005222D6E02ADCE0DD5E0B16000F3D0F302A
:100FD0001AA7ED5238AD22DCE0EB2ADAE0A7ED5299
:100FE0000F3802191922DAE0C3781F1918E8000037
:100FF00000000000000000000000000000000000F1
:00000001FF

View File

@@ -1,257 +0,0 @@
:10000000DD3400DD7E0CE67FC8CD281FDD7E00FEDE
:1000100025CA831FFE24CAAA1EC9CD631CCDDB20BE
:1000200022D6E07CD608FEF0D25208ED5BDCE02A56
:10003000DAE01922DAE07CFE30DA52087AA7FA78A0
:100040001F210000A7ED5222DCE0C3781F3A03E332
:100050001600C610DD96033003ED44151F1F1FE682
:100060001E4F060021242D09FE123801047ECB7A92
:1000700028062F5F782F477BDD7704DD7005235E30
:10008000160079FE0A300114DD7209DD7308DD36D1
:1000900000292A1AE3DD750BDD740FC9CD631CCD71
:1000A000FB2022D6E07C2ADCE0C3F11CDD350AC24D
:1000B000B808DD360A06DD7E0DFE39D25208DD3481
:1000C0000DC3B808DD350AC2B808DD7E07FE80D250
:1000D00052080680DD360000C36908DDE5E111D471
:1000E000E0010A00EDB0ED5BD6E02AD8E019C9DDE9
:1000F000E5D121D4E0010A00EDB0C9CDDB20EBDD74
:100100006E0BDD660FED4B1AE3ED4219C92151E08C
:100110003A00E33D28117EA7F02111E53E01862734
:1001200077237ECE0027773E373251E0119080FD55
:100130002190840E02CDE7033A12E5CDBD033A11BA
:10014000E5C3AE0300000000000000000000000056
:10015000000000000000000000000000000000009F
:100160000006010334074908630F73078019920FD3
:10017000A006A103A22AE032FF280F0F3F3040065D
:100180004103422A4C0F920F9F28A507B80FCD0FAD
:10019000E006E10300190108140720334F0F7F30F8
:1001A0008006810382229C1CB61CC02AD91CDF2039
:1001B000030F08281607200621033C22521C603238
:1001C0006E1C7F20A608B70FBF30C006C103C4084D
:1001D000D30AE60EF60F0C101C0F2D0E39074A0F2E
:1001E0005B0F600661036E196F09820F8F09A02BE8
:1001F000A20FB10FFF28000601030222141C281CC5
:10020000402A541C5F209F28A006A103A223A61CFD
:10021000D31CE90FF70AFF200710170E2910350A23
:1002200040064102421A60036F127812881292123D
:10023000A312A412B112C212CD12CE12D912E0062C
:10024000E103EB12FA1206120712141223122C12F7
:10025000371242125612571265126E127A12800627
:1002600081038512861291129212A312A412AE1269
:10027000B812B912CA12CB12D712E312F312001934
:1002800020062103222C60339F28BF30C006C10303
:10029000C224D51CEA1C0033051C181C311C3F204D
:1002A0004830600661037B24871C991CA02BAE1C80
:1002B000C51CD71CDF20E0280006010413141E16FD
:1002C0002D162F163A154C164E1658166616681629
:1002D000720273147E168019A086A103A234C70F80
:1002E000EC100F0A1F302A1040864102421960327A
:1002F0006105802ABF30C002DF28E006E103E22B5F
:10030000002301032A1C3F28451C571C6C1C6D2030
:1003100080068102A003A810B40AC507DC0FE30918
:10032000F2070A100D091C08200621032C0F2F0FBD
:10033000320A451354136613770A8A139813A713C6
:10034000B413C006C103C509D40AE002E70AF509DF
:1003500000041C162A152C1535163D1440024814AD
:100360004A146086610262198003812CA033DF2861
:10037000FF3000860103022C4023571C5F286C1CB1
:10038000831C9A1CA086A103A223AE1CC51CD51CED
:10039000E033E81CF50FFF200A091C0A2830321050
:1003A000400642025B2B600380339F28D030E0067A
:1003B000E103E21B2017601880068103C613D20FE9
:1003C000DD0FEE0EFC0A01130D0920062103221396
:1003D0002B13391349134C0A5C0F6A0F79138413DA
:1003E000860A950FA413B313B509C006C102C2193A
:1003F000E003E12CEA07F909070A190F2A0F390966
:100400004828540F600661037B23841C921CA023A0
:10041000A31CB31CC31CDC1CEF1CFF200006010343
:1004200007100A0A1A0F2C09320F41074F085C0FF8
:10043000630970077D0E8019A006A103A224AF1CDA
:10044000BC1CC02CCA1CD91CE81CF61CFF28050AC1
:10045000101C1120250C320F350C400641034219A7
:100460006033802B830A9207BF30C60FC90AD909AF
:10047000DF28E006E103E224EA1C040A140F1C1C36
:1004800024203409450F490F4B0C580C670C750C90
:100490007A0F800681029004AD16B715BE14C516FA
:1004A000C716D414DB15E614E814E916F014F11697
:1004B000F214021504150E160F0210141316171459
:1004C0001914208621032219402C41334203BE28EF
:1004D000BF30C086C103C21AE812F212F412FD1234
:1004E00008121312221223122E12361242124E1228
:1004F0005712608661036512671272127A128312B4
:100500008F129712A212AB12B712C212D012D812C7
:10051000E4120086010320252509331C402C4810D5
:10052000541C650F6F1C7F2080028828A086A105BF
:10053000BB35C02CDF02FF300A10190A1F28200328
:10054000290F2C0A320F3A0F40064102470F4A0A80
:10055000500F60036507790880178A0AA018C80938
:10056000E006E103EF10F40FF70A060F111014096B
:100570001A1A3A12421244124E12571259126312A8
:100580006B12800681028F13920AA003A510A807A0
:10059000B20FB50FC513D409E40FE60CF40C041028
:1005A000060C130C200621032210231928102A0AF6
:1005B0003B10402541334A1C551C651C741C820F9E
:1005C000881C950FA51CA830B11CB220BE0FC00618
:1005D000C102C21BCA10E003E60AF0170308121892
:1005E0001309401A4A0A60066103741285128712C1
:1005F00092129412A912AA12B410BD12C312CC0FF7
:10060000D512D712E512E712F412000601020225F4
:10061000032C0A1C171C20032710371C481C591CCC
:100620006A0A791C80288D0F901C9120A006A103D6
:10063000AD0CB20FBB0CCB0CD80FE50FE710F10FD0
:10064000F90F080C0D0F160C2019250F280936106C
:100650004006410242254A1C5A0F6003612C651076
:10066000791C881C941CA21CAE1CBB1CBF20CA0F8A
:10067000D028DC10E006E103E80FEA10EC0AF90FDD
:1006800008130A07170F1A0A2A0C37103C0C4302EA
:100690008006000620032810340A470C550C5A0F18
:1006A0006309720785139413A006A104B314BF163F
:1006B000CD16DA15EC16EE16F816F903002B2023EA
:1006C00040864A1C5028651C771C7E057F2080339D
:1006D000C803CF30E006001720186A0A730701022A
:1006E000200134C03AC2482054C2592064C269E291
:1006F0006DC27622822090C096C09CC0A2C0BEC1AE
:10070000CBC0D820E6C2F42200C205FF4D004E0245
:100710005E2277228A228BFFD800E002452255C252
:1007200000000000000000000000000000000000C9
:1007300000000000000000000000000000000000B9
:1007400000000000000000000000000000000000A9
:100750000000000000000000000000000000000099
:100760000000000000000000000000000000000089
:100770000000000000000000000000000000000079
:100780000000000000000000000000000000000069
:100790000000000000000000000000000000000059
:1007A0000000000000000000000000000000000049
:1007B0000000000000000000000000000000000039
:1007C0002146E035FB783213E5FE05CAD227A7C2E1
:1007D0005E28CDFA293E1ECD750D210FE53600238A
:1007E00034CD4829CDE80521242CCD0003CDBA28ED
:1007F000210C2CCD00033A13E5171717172600E636
:10080000F06F2001242298E0CD71292A96E0562B22
:100810005E2A11E5A7ED52300E19EB2A96E0722BF5
:100820007321392CCD4E032A94E0ED5B11E57DD682
:1008300001276F3001252294E0A7ED523850CD6892
:10084000292A98E07DC601276F3001242298E0CD47
:1008500071293E10CD750D3E0CCDEA0518C93E1D1F
:10086000CD750DCDD629CD120DCD48293E30CDEA1E
:1008700005CDBA28380D21E42BCD4E033AF9E03CE2
:10088000C3F92721F92BCD4E03CDE805180ECDE88D
:10089000051101E52198E00602CD3606210000226F
:1008A00011E52113E57EA7C2B70B360521A223224D
:1008B00016E53E1A320EE5C3B70BCDE805CD5A2931
:1008C0003A10E5D60228073E0AFACE283E055F3ADE
:1008D00013E5018000FE083009010001FE0330022B
:1008E0000E20ED4394E083875FFE0A20093A10E56D
:1008F000FE0328021E141600210CE0197E23229606
:10090000E0B62003702B7121792BCD4E03CD8129C8
:10091000A720023E1AC6401B1B1221942BCD4E036A
:100920002112E513CD9A0321B02BCD4E03CD6829BA
:1009300021CC2BCD4E032A96E013CD9A032A94E0C6
:10094000ED5B11E5A7ED52C92100E101A400CDFA4C
:100950000501200221E080C3FA052100E101C60063
:10096000CDFA0501200318EC11D9812195E0C39A35
:10097000032199E0119782CD9303EB363023363073
:10098000C93A0EE5FE1AD8D61AC921CC8011CC84FA
:10099000010210CDE70379362112231310F921CC7F
:1009A0008006053423232310FA361BCD812921CC60
:1009B000800605FE05380C16033629231520FAD6C5
:1009C0000510F0578787825FFE08381028013D36F2
:1009D0002923D60818F22AF4E03AF6E03C57C6215B
:1009E000CB662807D606FE2020013D777AFE083820
:1009F00002AF2C32F6E022F4E0C921CC80060F369B
:100A0000292310FB361F3E5A325280C900000020B5
:100A10000000500000800000000100000200000300
:100A200000000500000800001000088108544F2055
:100A3000434F554E54494E55452047414D45222D73
:100A4000820854494D4521468108424547494E4E4A
:100A5000455220434F5552534520474F205B214676
:100A600081004348414D50494F4E20434F5552530A
:100A700045203120474F205B214C8200465245459E
:100A800020504C415921EA81004F4E4C59203120D1
:100A9000504C4159455221EA810031204F522032B9
:100AA00020504C415945525321068200504943542D
:100AB000555245204E554D42455220534554224AE9
:100AC00082004E45585420315020425554544F4EC8
:100AD000216A8100205055534820425554544F4EAE
:100AE0002021D48300435245444954202188810069
:100AF00047414D45204F56455220504C4159455293
:100B000020210C820047414D45204F564552212B54
:100B1000800204250F1405224180010C0D250600DA
:100B2000224980093F224B800206504F494E5425EE
:100B300004001225050007226B8002062509001219
:100B400025050007228B8002060E0F1011250500D7
:100B5000122505000722AB8002081615151715157A
:100B60001815151915151A1515092281800131500E
:100B70003F21A1800132503F2125810154494D453B
:100B800020544F20524541434820504F494E542055
:100B90005E005E21848100594F55522054494D45D5
:100BA00020202020202020202020229781015D214C
:100BB000C481005448452041564552414745205480
:100BC000494D4520202022D781015D210482015416
:100BD0004F50205245434F524420202020202020B7
:100BE00020205D21858200474F4F4420424F4E55C3
:100BF0005320504F494E545321678200534F525255
:100C000059204E4F20424F4E55535B216582015370
:100C100050454349414C20424F4E555320504F4977
:100C20004E545321258100434F4E47524154554C59
:100C30004154494F4E53205B21E58201594F5520C5
:100C4000484156452042524F4B454E204120524587
:100C5000434F5244205B216A8100494E5345525410
:100C600020434F494E2021C781003120504C41592B
:100C700045522020203120434F494E2021C581007C
:100C800041205F203120504C4159455220202031D5
:100C900020434F494E2021C882005C313938322030
:100CA0004952454D20434F52502F217680023A3B06
:100CB0003C3D3E21F0F0EDF0F0FBFBFBF0E8F0F006
:100CC000F0EEF0F0F0F0E0F0F0FBFBFBF0F0F0F213
:100CD000F2F0F0F0E9F2EFE3D2FCFDFEE0D4D3EB6A
:100CE000FFD5F1E5E2D0D6E6D7F0E1D8F9FBF0F296
:100CF000D9ECFCD1343232433423321123010000C9
:100D00000000000012121224772110562110342105
:100D1000232321312221110077776665554443331F
:100D200043332131009A51988D5FB630D206E3E308
:100D3000EFC7F7B0FC9E008E03820677076E086649
:100D4000095F0A59034881B0B1B2B3B402B5B6B76E
:100D5000B802B9BABBBCBD02BEBFC0C1C202C3C4E7
:100D6000C5C6BD02036D81C7C8C9CA02CBBFCC02CC
:100D7000CDBCCECF02D0D1D2CA02D3D4D5C202D6F6
:100D8000D7BCBD02D8C0C1C202D9BCC5DA02DBC122
:100D9000DC02030682B0B1B2B3B402DDDEDFB8021A
:100DA000E0E1E202E3E4E50200E6B2E7E80200E99E
:100DB000EAEBEC0200EDEEEFB40200F0F1F202F328
:100DC000F4F5BF02F7F8F9B0FA0200B2B3FBFC0287
:100DD00000FDB80200FEBCCECF0200D0D1D2CA02C4
:100DE00000D3D4D5C20200D6D7BCBD02C5BFC0FF58
:100DF000EC02C30100000000000000000000000041
:100E0000192F0802182F080215380D0415380D0483
:100E1000154210041533100001000E0409002404CB
:100E20000D00240411010806170108061D0108061B
:100E300023010A0225010A0227010C0128011C01D5
:100E400029011C012A011C012B011C012C011C0180
:100E50002D0400012E0400012F04000130040001C4
:100E6000310400013184000131C40001314400012A
:100E700032040001330400013404000133C40001D2
:100E800034C4000136040001368400013704000137
:100E900036C400013644000137C40001380900019E
:100EA000390000013A09020205002C013D0A28011F
:100EB0003E0100013F01000140010001410100012C
:100EC00042071A8045071A8046071A8047071A808A
:100ED00047471A8046471A8045471A8043071A0138
:100EE00044071A0143871A0144471A010000000011
:100EF0000000000048011A8049011A804A011A8046
:100F0000350A2A804B011A804C011A804D011A8043
:100F10004E0100C04F0110C0530110C0570110C056
:100F20005B0112C061031EC062031EC063031EC0CA
:100F3000640314C0680314C06C0316C06E0316C0AB
:100F40007808220270020404730206047402180472
:100F5000750220047A011A804B411A804C411A8094
:100F60007B09260207002C017D0E2E0100000000E7
:100F70000000000000000000000000000000000071
:100F80000000000000000000000000000000000061
:100F90000000000000000000000000000000000051
:100FA0000000000000000000000000000000000041
:100FB0000000000000000000000000000000000031
:100FC0000000000000000000000000000000000021
:100FD0000000000000000000000000000000000011
:100FE0000000000000000000000000000000000001
:100FF000000000000000000000000000000000A34E
:00000001FF

View File

@@ -1,257 +0,0 @@
:100000000102020303040405600158015001480184
:100010004001380139103920393039483960397098
:100020003980399839B039D0B438FF588E28B4386F
:100030000019242C33393E43484C5054585B5F62BE
:1000400065686B6E717477797C7E505E6B8787A272
:10005000A2A30200A4A50200A6A702A8A901AA02C1
:10006000ABACAD0200AEAF02B0B101B2B3B40200AE
:10007000B5B6B702000000B8B902000000BA02002D
:10008000BBBCBD02BEBF01C0C10200C2C3C40200EE
:100090000000C5C602000000C7C80200C9CACB02E2
:1000A000CC01DADBDC020000F0030000F00200000B
:1000B000F002DDDEDF010F04050F24270F43481196
:1000C000484E124E5310636813686C0F6C6D146DBC
:1000D0006E126E7410898EFF0C0303030201FF3B46
:1000E000FF70FC24B9FF10FC243B01A0FC5300006E
:1000F0000000000000000000000000000000000000
:10010000070A0D0F1113151618191A1B1D1E1F2093
:10011000212223242526272828282828FF1F011CE0
:10012000040C0024021D0520080C043405210607D8
:10013000070C0C14051E081E0F0C1234021B031AA8
:1001400006102142021D041D080F2742052006202B
:100150000B0C2F4209160222061C3A4E0E190326DA
:10016000071C404E121D052A0A1C474E0520052675
:10017000080C51450519051F110C587F081E041E57
:10018000090C6900001B161C171A722000000000E1
:10019000000000000000000000000000000000005F
:1001A000000000000000000000000000000000004F
:1001B000000000000000000000000000000000003F
:1001C000000000000000000000000000000000002F
:1001D000000000000000000000000000000000001F
:1001E000000000000000000000000000000000000F
:1001F00000000000000000000000000000000000FF
:1002000002040301010304060708070502040608A7
:10021000090B0103040607090A0C0D0C0A0807055F
:100220000301020405040201030506080705030291
:100230000406080A0B0D0B0907050102030202015F
:1002400004060708060401020406080A0C0B0A0546
:10025000020307090A0C0B0903030709090B0A0A21
:100260000A0908080706060404020405070807052A
:1002700003000202020202F8F8F8F8F8F8F80202A5
:10028000020202F8F8F8F8F802000000000000008E
:10029000000000000000000000000000000000005E
:1002A000000000000000000000000000000000004E
:1002B000000000000000000000000000000000003E
:1002C000000000000000000000000000000000002E
:1002D000000000000000000000000000000000001E
:1002E000000000000000000000000000000000000E
:1002F00000000000000000000000000000000000FE
:100300003EFFD3C032C5E12100E13600545D130148
:10031000CF00EDB03E01570100082100E07A775E82
:10032000BBC2BB34230B79B020F37A0730E81655F3
:100330007A0100082100E077233C5F0B79B028099F
:100340007BFEAB20F23E5518EE7A0100082100E05A
:10035000BE2019233C5F0B79B028097BFEAB20F04F
:100360003E5518EC147AFEAB20C618095E57AFC391
:10037000BB347A18DE3100E83E0157010008210045
:10038000807A775EBB2808CD3B35CB4FCAF5332347
:100390000B79B020EC7A0730E116557A010008217C
:1003A000008077233C5F0B79B028097BFEAB20F2FD
:1003B0003E5518EE7A010008210080BE2019233C2A
:1003C0005F0B79B028097BFEAB20F03E5518EC148A
:1003D0007AFEAB20C6180D5E57CD3735CB4FCAF528
:1003E000337A18DADD21EB33C3B13521663ADD21EA
:1003F000F533C365342100E13600545D1301CF00AD
:10040000EDB0210000AF3200E706000E10AFAE23C2
:1004100010FC0D20F9E5CD3534E13A00E73CFE044F
:1004200020E4AFD31CFB3A00D0CB4F20F93E03327F
:1004300001E7C3CD35F5FEFF28020E0821863A09F3
:10044000EB3A00E70F0F4F21C48009E5EB0E08EDF2
:10045000B01313D5FDE1DDE1F1CD9A343A00E7C6E2
:1004600030DD7703C97E23FE00280B5E2356234F21
:100470000600EDB018EFDDE90F0F0F0FE60FC630E5
:10048000FE3A3802C607FD7700DDE9E60FC630FE0A
:100490003A3802C607FD7701DDE9F50F0F0F0FE6C9
:1004A0000FC630FE3A3802C607FD7700F1E60FC6E8
:1004B00030FE3A3802C607FD7701C908D9DD21C4EC
:1004C00034C3B13521723ADD21CE34C36534D9FD50
:1004D000218F80DD21DB347CC37834DD21E3347C63
:1004E000C38B34FD23FD23DD21EF347DC37834DD60
:1004F00021F7347DC38B34FD219580DD2103357ACE
:10050000C37834DD210B357AC38B34FD219980DD2E
:100510002117357BC378347BDD211F35C38B343AFB
:1005200000D0CB47CA2F35CB4F20F408C3F5330892
:10053000B7CA7233C32433E5D91809E5D9DD21449C
:1005400035C3B1352100801100E001A004EDB021D8
:1005500000803600545D13019F04EDB021723ADD36
:10056000216635C36534D9FD218F807CCD9A34FD59
:1005700023FD237DCD9A34FD2195807ACD9A34FDDB
:100580002199807BCD9A34E13A00D0CB472806CB25
:100590004F281018F3D92100E011008001A004EDCC
:1005A000B0D9C921A0843600545D13015F03EDB0BA
:1005B000C921008401FF033600545D13EDB0210012
:1005C0008001FF033600545D13EDB0DDE9CDAD3899
:1005D00021BF3ECD08393A01E70602CD1C393A0069
:1005E000D0CB4720143A01E7074F0600DD21963AA9
:1005F000DD09DD6E00DD6601E9DD2102E7CDDD38D4
:1006000047E655FE55280978E6AAFEAA281318CE13
:10061000DD360055DD360108DD360201CD323618F3
:10062000BDDD3600AADD360103DD3602FFCD3236F0
:1006300018ACDD56001E02CDC838280ECD4E36DD72
:1006400056001E01CDC83820F3C9CD4E36C93A0137
:10065000E7DDBE01C80600CD1C39DD86023201E7A8
:100660000602CD1C39C9CDAD3821103BCD08393A31
:1006700003D021CB80CDB2363A04D0210B81CDB24C
:1006800036DD21AC3AFD21A83A3A03D0EEFF06024E
:10069000CDC636DD21F83AFD21F43A3A04D0EEFF1A
:1006A0000601CDC536CDEC363A00D0CB4F20C0C3C5
:1006B000CD35EEFF06080F380436301802363123E8
:1006C0002310F3C90F0F4FC5DDA600DD8601DD2322
:1006D000DD234F0600FD6E00FD6601094EFD6E0232
:1006E000FD660309CD1139C17910D9C93A04D0CBBF
:1006F00057CA063721773BCD0839DD21993BFD21CB
:100700009B3B06011810217F3CCD0839DD21923C2E
:10071000FD21963C06023A03D0EEFF0F0FCDC43602
:10072000C9AF320FE7676F220DE7CDAD3821223D0B
:10073000CD08393A00D021CB80CDB2363A01D02154
:100740000B81CDB2363A02D0214B81CDB236CD8C61
:10075000373A0DE7218C81CD7A37233A0EE7CD7AEF
:10076000373A00D0CB4F20CB3A01D0CB4F20C4CD6D
:10077000AD383E01CD3C39C3CD35F50F0F0F0FE637
:100780000FC6307723F1E60FC63077C9210FE73A5D
:100790004EE0E6C0BEC8320FE73A0EE7C601273288
:1007A0000EE7D03A0DE7C60127320DE7C92A533DBF
:1007B0002206E721683DFD21573DCDC037C3CD3529
:1007C000FD220BE7E5CDAD38E1CD0839DD2108E7A5
:1007D0003E013205E70602CD23393E010E40CD3EF3
:1007E00039CD7238CD7D383EFF3211E73A00D0CB9B
:1007F0004F284ACDF238E6AAFE2A2813CDDD384725
:10080000E655FE55281178E6AAFEAA281D18DDCD6A
:100810007238CD7D3818D5DD3600553A06E7DD77DC
:1008200001DD360201CD4F3818C2DD3600AA3A0785
:10083000E7DD7701DD3602FFCD4F3818AFCD7238D6
:100840003E010E20CD3E393A00D0CB4F209EC9CD7F
:100850007238DD56001E02CDC838280FCD9538DD20
:1008600056001E01CDC83820F31803CD9538CD7D34
:1008700038C93E003200D0CBFF3200D0C93A05E77C
:100880004F0600FD2A0BE7FD09FD7E003200D0CBAC
:10089000FF3200D0C93A05E7DDBE01C80600CD230E
:1008A00039DD86023205E70602CD2339C9210080F1
:1008B00001FF033600545D13EDB021008401FF03F6
:1008C0003600545D13EDB0C90E00060CCDE238A21F
:1008D000C810F90D20F41D20EF3EFFA2C9CDE2386B
:1008E000181F2110E73A01D01FCB161FCB167EEE42
:1008F000FFC92111E73A00D01FCB161FCB167EEEA1
:10090000FFF5AF3D20FDF1C97EFE00C8CD113918BD
:10091000F74E0600235E235623EDB0C94FD60307DA
:100920003C18014FC50E640600600707076F2929B0
:1009300009EB21008419C170237079C90E000600EB
:1009400010FE0D20F93D20F4C9C50E00060010FE72
:10095000F53A00D0CB4F2809F10D20F03D20EBC136
:10096000C9F1C10601C9CDAD381100E1216D3E01CB
:100970001000EDB01160E1217D3E011000EDB03AB4
:1009800000D0CB4F20F92100E13600545D1301BFA8
:1009900000EDB0C3CD353E013212E7AF3211E7189A
:1009A0002A3A00D0CB4FCACD35CDF238E6AAFE2A7E
:1009B00020EF3A12E73C3212E7FE01280EFE02CA8F
:1009C000E839FE03CA133AD60318EBCDAD38211C23
:1009D00081061A3E5A772B3D10FB210C82060A3EF7
:1009E00039772B3D10FB18B9CDBA3821208036F36A
:1009F000545D1301BF03EDB0218D3E060AC55E2391
:100A0000562346234E237E23EBCD233AEBC110ED34
:100A1000C3A139212084360C545D1301BF03EDB00E
:100A2000C3A139C5E5772310FCE10E2009C10D20D3
:100A3000F2C9CDAD382120800E1E060FC506003646
:100A400094545D23369323EBEDB0EB0E1E36965493
:100A50005D23369523EBEDB0EBC110E03A00D0CB2F
:100A60004F20F9C3CD3508848052414D0000004F1E
:100A70004B0010848052414D0000004E4700005D45
:100A8000000000005D00524F4D0000004F4B524FE0
:100A90004D0000004E470000000000006636213780
:100AA000AD3766399639323AB03AB83A03000304A2
:100AB0000004080C101B263101738135017381334A
:100AC000017381320173813108ED8131300033309F
:100AD00000353008ED81323000343000363008ED1A
:100AE00081000000000000313008ED8100000000AE
:100AF00000004E4FFA3AFC3A0100000A07B1825456
:100B000041424C45000007B1825550524947485474
:100B1000168480444950005357003100320033009E
:100B200034003500360037003803C6805357310390
:100B300006815357320B6481504154524F4C00434D
:100B40004152530DA481455854454E4400504F49DD
:100B50004E545308F68154484F5553414E4409248E
:100B600082434F494E004D4F444509A482424F44B1
:100B700059005459504500012E82001A6482000029
:100B80000000000000000000000000000000000065
:100B90000000000000000000000F009F3BAF3B0082
:100BA00010203040506060708090A0B06060C00D38
:100BB000318231434F494E000031504C4159000DB4
:100BC000318232434F494E530031504C4159000D50
:100BD000318233434F494E530031504C4159000D3F
:100BE000318234434F494E530031504C4159000D2E
:100BF000318235434F494E530031504C4159000D1D
:100C0000318236434F494E530031504C4159000D0B
:100C10003182000000000000000000000000000D14
:100C2000318231434F494E000032504C4159530DEF
:100C3000318231434F494E000033504C4159530DDE
:100C4000318231434F494E000034504C4159530DCD
:100C5000318231434F494E000035504C4159530DBC
:100C6000318231434F494E000036504C4159530DAB
:100C7000318200465245450000000000000000019E
:100C80002E82410B6482434F494E004D4F44450034
:100C90004200030003049A3CA23C00102030405064
:100CA00060700D318231434F494E000031504C414C
:100CB00059000D318232434F494E530031504C415F
:100CC00059000D318233434F494E530031504C414E
:100CD00059000D31820046524545000000000000D9
:100CE00000000D718231434F494E000032504C419B
:100CF00059530D718231434F494E000033504C41DE
:100D000059530D718231434F494E000035504C41CB
:100D100059530D718231434F494E000036504C41BA
:100D200059530F8B803100320033003400350036C8
:100D30000037003804C4804B4559300404814B45CA
:100D400059310444814B45593206848154494D49F7
:100D50004E47000E01000000011011121314161767
:100D6000181B1C1D1E1F00000B278053004F005531
:100D7000004E004400530E4481303700535041432D
:100D80004500504C414E540D648130380055464F5B
:100D900000464C59494E470C84803031004558502C
:100DA0004C4F53494F4E0EE48030340043415200C3
:100DB0004D495353494C4510C48030330055464F7C
:100DC000004558504C4F53494F4E10A480303200CC
:100DD000504F494E540050415353414745070481F9
:100DE000303500434F494E0B248130360043415289
:100DF000004A554D501484813039004241434B0024
:100E000047524F554E44004D555349430FA481312D
:100E10003000454E44494E47004D5553494310C498
:100E2000813131004F50454E494E47004D55534991
:100E3000430FE48131320053544550005041535325
:100E4000414745110482313300434F4E47524154CC
:100E5000554C4154494F4E10248231340043415285
:100E6000004558504C4F53494F4E000000A80138E0
:100E700060A84138989081386090C13898680138EE
:100E800060684138985081386050C138982084207B
:100E90000700008720070800852008020086050853
:100EA00005058604080C09860508060E8604080454
:100EB000128605080317860408001B860508080E1D
:100EC000848030310000444950005357495443480E
:100ED0000CC48030320000493F4F00504F52540A3A
:100EE000048130330000534F554E44530D4481303C
:100EF00034000043484152414354455209848130F3
:100F0000350000434F4C4F520FC481303600004231
:100F100045414D0041444A55535400000000000033
:100F200000000000000000000000000000000000C1
:100F300000000000000000000000000000000000B1
:100F400000000000000000000000000000000000A1
:100F50000000000000000000000000000000000091
:100F60000000000000000000000000000000000081
:100F70000000000000000000000000000000000071
:100F80000000000000000000000000000000000061
:100F90000000000000000000000000000000000051
:100FA0000000000000000000000000000000000041
:100FB0000000000000000000000000000000000031
:100FC0000000000000000000000000000000000021
:100FD0000000000000000000000000000000000011
:100FE0000000000000000000000000000000000001
:100FF00000000000000000000000000000000003EE
:00000001FF

View File

@@ -1,257 +0,0 @@
:1000000000000000000000000000000000000000F0
:1000100000000000000000000000000000000000E0
:1000200000000000000000000000000000000301CC
:100030000000000000000000A0A0A000A0A0B8F0F8
:1000400000000000000000000000001F7FFFF80318
:1000500000000000000000000000000080C000FE62
:100060000000000000000000000000000000000090
:100070004000000000000000000000000000000040
:10008000030000000000000000000000000000006D
:10009000F21E000000000000000000000000000050
:1000A000187E7EFFFFFF7E7E18000000000000002B
:1000B0000000000000000000000000000000000040
:1000C000187E7EFFFFFF7E7E18000000000000000B
:1000D0000000000000000000000000000000000020
:1000E00000307878FCFC78783000000000000000D8
:1000F0000000000000000000000000000000000000
:1001000000307878FCFC78783000000000000000B7
:1001100000000000000000000000000000000000DF
:1001200000000000000000000000000104000301C6
:1001300000000000000000010103030000000000B7
:100140000000000C3E78F3E7ECC800010103030156
:100150000000002070F8E040400080C0E0F0F0E0D7
:100160000306000000010307070707030100000062
:10017000C3870F0F0FCFE7E3F0F0E0E0C00000000F
:1001800081C0C0E0E0C0C0800000000000000000AE
:10019000E0C00000000000000000000000000000BF
:1001A000000000000000000000000E1F3F3F3F3F26
:1001B000000000080012B0E8381C040000808E1F08
:1001C00000000000000000000000081E1F0F0300D8
:1001D0000000000000000000000000008080E0E05F
:1001E0001F0E0000000000000000000000000000E2
:1001F0003F3F3F3F1F0E00000000000000000000D6
:100200000283800000000207070F0F0707030000AA
:100210002080E0707830100080C0C0808000000036
:100220000000000006010100000000006019070343
:100230000201211110080DCFE77F7FFFFCF0C08085
:100240000000101089890B1F1FBE1C080000000051
:10025000404482828EDFFFFF81000000000000002A
:1002600000080810103060E1F3FF7F3F0F0000002E
:100270000000000000404080008080C6F8E08080E0
:1002800003010103071D61010003030408000000CE
:1002900000000000008080C0C0F37F3830102020B4
:1002A00000000000000040E0E0F9FF7F12100808A5
:1002B0000000000000003C7E7EFFBD3910102020B1
:1002C0000303030307070E1C1C3EF6F360202010F7
:1002D000C0800080C06020180000000080804000C6
:1002E000000000000000000000000000000000000E
:1002F00000000000000000000000000C1F1F3F3F36
:10030000000000000000000000307CFDFFFFFFFF48
:10031000000000000000000000C7FFFFFFFFFFFF1C
:1003200000000000000000000080C0F0F8FCFCFEAF
:1003300000000000000000000000000000000000BD
:1003400000000000000000000000000000000000AD
:100350001F3F3F3F1F0F070100000000000000008B
:10036000FFFFFFFFFFFFFFB10000000000000000E3
:10037000FFFFFFFFFFFFFCF0E000000000000000B7
:10038000FEFCFCF8F0F8F83000000000000000006F
:10039000000000000000000000000000000000005D
:1003A000000000000000000000000000000101004B
:1003B0000000000000000001010333FFFFFFFFFF0A
:1003C00000000000000000C0E6EFFFFFFFFFFFFF9E
:1003D000000000000000183C7DFFFFFFFFFFFFFF53
:1003E00000000000000000C0E0ECFEFEFCFCF8FC99
:1003F00000000000000000000000000000000000FD
:1004000000000000000000000000000000000000EC
:100410007F3F7FFFFF7D38300000000000000000BC
:10042000FFFFFFFFFFFFFFFF7C78300000000000B0
:10043000FFFFFFFFFFFFF7F3E06000000000000098
:10044000FEFEFEFCD8C0C0800000000000000000DE
:10045000000000000000000000000000000000009C
:100460000000000001030F1F1F1F0F0F06000000F8
:10047000000000008EFFFFFFFFFFFFFF30000000C5
:1004800000000030FFFFFFFFFFFFFFFFC60000007E
:100490000000000000C0F0F8F8F8F0F030000000B4
:1004A0000000000001070F1F1F1F0F0301010000C4
:1004B000000000009CFFFFFFFFFFFFFFF3C00000F4
:1004C00000000070FCFFFFFFFFFFFFFFFB6000006C
:1004D00000000000C0E0F0F0F0F0E0E040000000BC
:1004E00000000000000C3F7F7F3F0C000000000078
:1004F0000000000000F0FCFEFEF4C0000000000060
:10050000000000000000022C0000000000000000BD
:1005100000000000002070F06000000000000000FB
:100520000000000000000432000000000000000095
:10053000000000000060F0702000000000000000DB
:1005400000000000000001010000000000000000A9
:100550000000000060F0F8F8F8F060000000000013
:10056000000000010303030103010100000000007B
:100570000000D0F8FCF8FCFCFCFCF8D00000000007
:10058000000307070F0F070F0F0F070303010000FA
:10059000F0FCFEFEFFFFFFFFFEFFFFFEFCB80000C9
:1005A000000000000000000000183878787CFEFE93
:1005B000000000000000000000000000000000003B
:1005C000000000000E1F1F1F7F7F7FFFFFFFFFFF48
:1005D000000000000060E0E0E0E0F0F0F0F8FCFC7B
:1005E00000030307070F0F3F3F7F7FFFFFFFFFFF62
:1005F00000C0E0E0F0E0E0F0F0F0E0F0F0F8FCFE49
:1006000007070F1F1F3F3F3F3F7F7F7F7FFFFFFF9A
:10061000000080808080E0F0F0F0F0F8F8F8F8F862
:1006200000000000010307070707030100000000A6
:100630000000000080C0E0E0E0E0C08000000000BA
:10064000000000030F0F1F1F1F1F1F0F0F030000CD
:1006500000000080E0E0F0F0F0F0F0E0E08000006A
:10066000000000030F0F1F1F1F1F1F0F0F030000AD
:1006700000000080E0E0F0F0F0F0F0E0E08000004A
:10068000000000030F0F1F1F1F1F1F0F0F0300008D
:1006900000000080E0E0F0F0F0F0F0E0E08000002A
:1006A0000000000000000000010000000000000049
:1006B00000000000000080000000000000000000BA
:1006C000030F0F1F1F3F3F3F3F3F3F1F1F0F0F03F2
:1006D000C0F0F0F8F8FCFCFCFCFCFCF8F8F0F0C012
:1006E000030F0F1F1F3F3F3F3F3F3F1F1F0F0F03D2
:1006F000C0F0F0F8F8FCFCFCFCFCFCF8F8F0F0C0F2
:100700000307FFFF0F0F0003377BCE8484CE7B31BE
:10071000E0F0F0F8F8F800C0E6DE73212173DE8C1B
:1007200000003C000000000000000000000000008D
:1007300000000000000000000000000000000000B9
:1007400000000000000000000000000000000000A9
:10075000000000787E3F1E0C003C3C0007000000BB
:10076000000000000C1F1F3F0000010003000000FC
:10077000000000000080C08000F8F800C000000009
:10078000000000000000000000E0E00000000000A9
:100790000000000000000000000000000000000059
:1007A0008484FC0000000000000000000000000045
:1007B0000000000000000000000000000000000039
:1007C00000000000010307070F0F070100000000F1
:1007D0000000000080E0E0F0F0F0E0C00000000069
:1007E000000002070F1F3F3F1F1F1F0F03010000E4
:1007F0000000C0C0E0F0E0F0F0F0E0E080000000B9
:1008000000000001070F0F1F1F1F0F1F0600000031
:1008100000000080E0F0F8F8F8F0F8F04000000088
:100820000000000D0F3F3F3F7F3F1F1F0F030000E1
:10083000000060F0F8FCFCFCF8F8FCF8F820000080
:1008400000000000000002003C7FFC3800000000B7
:10085000000000000000800078FC7E3800000000EE
:100860000000000000000004000010010000000073
:100870000000000000800020000000A00000000038
:10088000000000000001080000000201000000005C
:1008900000000000100000101000000040000000E8
:1008A00000000000030F3FFFFF3F070000000000B3
:1008B00000000000C0F0FCFFFFFCE00000000000B2
:1008C00000000000030F3FFFFF3F07000000000093
:1008D00000000000C0F0FCFFFFFCE0000000000092
:1008E00000000000030F3FFFFF3F07000000000073
:1008F00000000000C0F0FCFFFFFCE0000000000072
:1009000000000000000103070301030204000000CF
:10091000000000001060C0C0E08080404020000067
:1009200000080400000603072F0F1B2349210200C3
:100930000000000000E080C0E080800080400000F7
:1009400002814432090D0703074D0000000000003A
:10095000022088B0E1F4F8F0A6108C02000000003C
:100960000000000000000003000000000000000084
:1009700000000000000000E0000000000000000097
:100980000000000000040201000000000000000060
:100990000000000000000000804000000000000097
:1009A0000000000000010101010101000000000041
:1009B0000000000000000000000000000000000037
:1009C00000140F5C30E62FDF0F070301000000006A
:1009D00000A0C0E4388DE6F7E080000000000000D1
:1009E0000000000000000000000000000000010105
:1009F000000000000000000000020F2F39F0C0824C
:100A0000000000000000000000C0F4FE9F0F034142
:100A10000000000000000000000000000000C0C056
:100A2000030707060E0000000000000000000000A1
:100A30000F1F3F3C783C0E07020000000000000042
:100A4000E0F8FCFC3E78E0C0800000000000000000
:100A5000E060703818000000000000000000000096
:100A60000000000000000000000000000307070372
:100A70000000000000000002273F3FFFF9F0E0C542
:100A8000000000000000002060FBFF7F1F0B82A021
:100A90000000000000000000000000C0C0C0E0E056
:100AA0000F0E1E1E3C0000000000000000000000B1
:100AB000871F3F3F7F7F1F0F0702000000000000DD
:100AC000F0F8F8FCFEFCF8F0E0E0C0800000000068
:100AD000F07CFC3C1E000000000000000000000054
:100AE00000000000000000090507070F0F1F1F7D11
:100AF00008040D8F5FFFFFFFFFEFF7F2E0E0C0009B
:100B00002040E0F8FCFEFFFFDFBF3F1D0B070301A5
:100B10000000000000408090E0E0E0F4F8F8F8BC4D
:100B20003E3E3E1C7000000000000000000000007F
:100B3000000108050F1F070204000000000000006C
:100B4000000090A0F0E0C0C0A00000000000000085
:100B5000783C3C1A0E00000000000000000000007D
:100B60000000000000000000000000000000000085
:100B70000000000000000000000000000000010074
:100B80000000000000000000000000000000200045
:100B90000000000000000000000000000000000055
:100BA000000000000100000101030B07070F0F1FE9
:100BB00001271F3F3FFFFFFFFFFFFFFFFFFEFCF886
:100BC00020E4F8FEFFFFFFFFFFFFFFFFFFFF3F0FE7
:100BD0000000000000808080D0E0E0F0F0F8F8F83D
:100BE0001F1F1F0F0703030100000000000000008B
:100BF000C0E0F0F4FCFEFFFF7F3F3F0F0301010068
:100C0000030F1F3F7FFFFFFFFEFCF8F8F0C08000DE
:100C1000F8F0E0E0C000000000000000000000006C
:100C200000000201211414422214983804800000AC
:100C30000000005000A4284042442C01020C000097
:100C400000001010090D861048080804000000007C
:100C50008000808004A848111012240000000000C9
:100C6000012510090945472E3280100000080000B8
:100C7000001094A0E2F4341D0E04080000080000E7
:100C80000000000000000000000000000000000064
:100C9000000000000000000000000010000482526C
:100CA000000000000000000000008080404182CA77
:100CB0000000000000000000000000000000000034
:100CC00000000000080701001228060400000000D0
:100CD0005129BB5F3FBEFC980804000000000000E3
:100CE000D4DCFEFC991A0E0C12000000000000007B
:100CF00000008000000080000020D0808000000004
:100D000000000000000000000000000000000000E3
:100D100004010101080804241495554F2FBF7F7F5B
:100D2000000000008088C242C4CCCCD8F8F9FEFC98
:100D300000000000000000000000000000000000B3
:100D40000008260323100808F70000000000000038
:100D50007FFF7F3CB8380C8808040000100020009A
:100D6000FEFCFF7F262010000000000000100000A5
:100D70000040800020400000100000000000000043
:100D80000000000000000000000000000000000063
:100D90000000000000000000000000000000000053
:100DA0000000000000000000000000000000000043
:100DB0000000000000000000000000000000000033
:100DC0000000000000000000000000000000000023
:100DD0000000000000000000000000000000000013
:100DE0000000000000000000000000000000000003
:100DF00000000000000000000000000000000000F3
:100E0000000000183F7FEF8D181101020000000064
:100E10000020102000F0F0E0E0C0800000000000A2
:100E200000000000000002000000000001000000BF
:100E30000000000008180000001838309181000000
:100E400000000000000040000000000080000000E2
:100E50000000000000000000000000000000000092
:100E6000000403030100187CFF8F3F3C6101030273
:100E7000804040606020000080F0F0F0E0C00000A2
:100E80000108040C030100187CFF8F3F3C61010343
:100E90000080C040606020000080E0F0F0E0C00012
:100EA0000108040602070100187C7FCF9F1C312136
:100EB0000080C0C060606020000080E0F0F0E0C012
:100EC000000003020000000000000000010000001C
:100ED0000000000000000000000000000100000011
:100EE0000000C04040000000000000008000000042
:100EF00000000000000000000000000000000000F2
:100F000000000000000000000000000000000000E1
:100F100000000000000000000000000000000000D1
:100F20000000000000000000000000008000000041
:100F300000000000000000000000000000000000B1
:100F4000000000000204010802000402000000008A
:100F50000000000080002000A00040800000000091
:100F600000000000000000000C3EFF1E0C0000000E
:100F7000000000787E3F1E0C003C3C000700000093
:100F80000000000000000000000E3F06000000000E
:100F9000000000787E3F1E0C003C3C000700000073
:100FA00000000000000000000018250509052518B4
:100FB000000000000000000000C62929292929C6D8
:100FC0000000000000000000001825251925251844
:100FD000000000000000000000C62929292929C6B8
:100FE0000000000000000000000000000000000001
:100FF00000000000000000000000000000000000F1
:00000001FF

View File

@@ -1,257 +0,0 @@
:1000000000000000000000000000000000000000F0
:1000100000000000000000000000000000000000E0
:100020000000000000000000000000000000000EC2
:10003000000000000040404040404041434F470F17
:10004000000000000000000000007EFFFFFFFFFF37
:1000500000000000000000000000000080C0F0016F
:100060003F7FFFFFFFFFFF7F000000000000000058
:10007000FFFFFFFFFFFFFFFF000000000000000088
:10008000FCFFFFFFFFFFFFFF00000000000000007B
:100090000DE1FCFCFCFCF8F8000000000000000092
:1000A0000840021898190024000000000000000019
:1000B0000000000000000000000000000000000040
:1000C00010024018199800420800000000000000CB
:1000D0000000000000000000000000000000000020
:1000E0000000480030B4004800000000000000009C
:1000F0000000000000000000000000000000000000
:1001000000200000B43000001000000000000000DB
:1001100000000000000000000000000000000000DF
:1001200000000000000000000004040202010000C2
:10013000000000000003030F0F0F0F1F3F1F9FBFA2
:100140000000007CFFFFFCF8F3F7FFFEFEFCFEFE64
:1001500000001098880010B8F8F8F0301000100077
:1001600000010F1F1F3E3C3C38181C00000000001F
:100170003C7CF0F0F8B0100290000000400000005D
:10018000FC302020000040000000000000000000C3
:1001900000800000000000000000000000000000DF
:1001A0000000000000000F1F3F3F1500200C0C2036
:1001B0000000000204040810C0E3FBFFFFFFF3F09F
:1001C0000000000000000000307CFFFFFFFFFFFF89
:1001D0000000000000000000000000C0C0C0E0E01F
:1001E000000200000000000000000000000000000D
:1001F000200C2C000108000000000000000000009E
:10020000FDFC7FFFFF7F3F1800030B000002000092
:10021000C070108084CCE8F0602040000000000036
:1002200000000000000000000000000000000000CE
:10023000000000000000000000000000030F3F7FEE
:10024000000000202020E0E0E041E3EFFFFFFFFF9F
:1002500000000000000000007FFFFFFFFFFFFFFF26
:100260000000000000000000000080C0F0FFFFFF61
:10027000000000000000000000000000000000007E
:10028000000000000000000000000000000000006E
:10029000FFFFFFFFFF7F7F3F3F0C000000000000DB
:1002A000FFFFFFFFFFFFBF1F1F0600000000000051
:1002B000FFFFFFFFFFFFC38181000000000000007F
:1002C000FCFCFCFCF8F8F0E0E0C0000000000000DE
:1002D000000000000000000000000000000000001E
:1002E0000000000000000003000000000000031DEB
:1002F000000102121109CD67377F7F3360E0C0C76C
:10030000040808101038B8FDFFCF8302000060F920
:10031000028444444266F7FFFFC80000187DFFFFD7
:1003200000000404081870E1FB7F3E0F07C3E3E1FF
:100330000000000000106080000060980080C0F0A5
:100340000000000101030608000000000000010099
:10035000E74F4FC7E3B0183E3F3763414182020089
:10036000FFFFFFCF8700004EFFFF3B101020202033
:10037000FFFFFFBB0000030F1FFFEFCBC94444206A
:10038000F1F3E3470F0607CFFD7C381C040201019F
:10039000880080C0E0601080C0C0202010000000F5
:1003A00000000000000000000002070F070E1E1FE3
:1003B0000000010B1F1F3F7EFEFCCC000001030765
:1003C0000000C1F3FFFFFF3F1910000060F9FFFFBD
:1003D0000080C0F3FFFFE7C382000000E3CFFFFF10
:1003E000000000B0F8FCFE3E1F13010183C3C78369
:1003F00000000000000000008080C0E0F0F0E0F0AD
:100400001F0F1F0F0707030100000000000000007E
:1004100087C380000082C7CFFF7F7F3F330000008B
:10042000FF7F3F0D000000008387CFFFFFF3200018
:10043000FFFFFDD80000080C1F9FFFFEFC600000BE
:10044000E1C18103273F3F7FFEFCF0E06000000038
:10045000F0E0E0C0C080800000000000000000006C
:10046000030707777E7CF0E0E1E17070393F1F0DF4
:1004700000CEFFFF710068FFFF990000CFFFF380FF
:1004800039FFFFCF0000CFFFFFCF000039FFEFC3E0
:1004900080C0F0FCFE3E0F87C6060C0ECEFCF0308E
:1004A0000000000001070F1F1F1F0F0301010000C4
:1004B000000000009CFFE7800091FFFFF3C00000F8
:1004C00000000070FCFF9301008193FFFB600000BF
:1004D00000000000C0E0F0F0F0F0E0E040000000BC
:1004E00000000000000C3F70733F0C000000000093
:1004F0000000000000F0BC0E1EF4C0000000000070
:1005000000000000000000200000000000000000CB
:1005100000000000002070F06000000000000000FB
:1005200000000000000004000000000000000000C7
:10053000000000000060F0702000000000000000DB
:1005400000000000000000000000000000000000AB
:10055000000000000000000000000000000000009B
:10056000000000000000000000000000000000008B
:1005700000000000000060F0F060000000000000DB
:10058000000000010303010303010100000000005B
:100590000000B0F8FCFCFEFCFCFCF8980000000039
:1005A00000000000000000000008081828000226D3
:1005B000000000000000000000000000000000003B
:1005C0000000000002000800010306801021000066
:1005D000000000000060E0E0E0203070D0183C1C1B
:1005E0000003000004080800000004080082C08026
:1005F00000C0E060702060501030203030783C7EC9
:1006000007070307090102020400000408000000B4
:10061000000080808080E0303050102848000000CA
:1006200000000000000000000201000000000000C7
:1006300000000000000000000000000000000000BA
:100640000000000000000000080804020000000094
:10065000000000000000000000000000000000009A
:10066000000000000000040808080000000000006E
:10067000000000000000000000000000000000007A
:100680000000000000030000000000000000000067
:10069000000000000080400000000000000000009A
:1006A0000000000000000103010000000000000045
:1006B00000000000000080C080000000000000007A
:1006C00000000000000008080808080402000000FC
:1006D000000000000000000000000000000000001A
:1006E00000000003040800000000000000000000FB
:1006F000000000C00000000000000000000000003A
:100700000000FEFF000003000104317B7B3100008C
:10071000000000000000C00080208CDEDE8C0000A5
:1007200000000000000000000000000000000000C9
:1007300000000000000000000000000000000000B9
:1007400000000000000000000000000000000000A9
:10075000000000787E3F1F0F1F0F0F1F07000000D3
:100760000000000030E0E0C0FFFFFFFF03000000DA
:100770000000000000000070FCF0F0F0C00000007D
:10078000000000000000000000E0E00000000000A9
:100790000000000000000000000000000000000059
:1007A0007878000000000000000000000000000059
:1007B0000000000000000000000000000000000039
:1007C0000000000000000101010000000000000026
:1007D00000000000000080C0C08000000000000099
:1007E00000000000000103070703010000000000F3
:1007F00000000000008080C0C0C080000000000039
:1008000000030F1E3871732767637060391F06007D
:1008100000C0F07C1C8EC6E4E4CE860CBCF8C000A0
:10082000060F3F327046CFCF87CF66E0703C1F0780
:10083000C0F09C0C46E2F3E2F7F7C30606DCF8B022
:100840000000000001070F0F030000380000000047
:100850000000000000C0E0E0800000380000000060
:100860000001030707070305183C7E7F7E3C180044
:100870000080C0E0E0E0C0A0183C7EFE7E3C180096
:1008800000000000183D7E7E7E3C1A010000000042
:100890003078FCFCFC783010103078FCFCFC7830B0
:1008A00000000000000000001C0300000000000029
:1008B0000000000000000000000000000000000038
:1008C00000000000000000000C0300000000000019
:1008D0000000000000000000008000000000000098
:1008E0000000000000000000040300000000000001
:1008F000000000000000000000C000000000000038
:100900000000000904020020C018230204000000B7
:10091000000080001060C040001000504020000027
:100920000000002011092400200A1A2349110200A6
:10093000000040808C1060000840A01040200000A3
:10094000028124320800B86C0002071D2040891083
:10095000022088B0E174381040E07CD28884001016
:100960000000000000000103010000000000000082
:1009700000000000000080E0800000000000000097
:10098000000000000004030303000000000000005A
:100990000000000000008080804000000000000097
:1009A0000000000000050303030101000000000037
:1009B0000000000000408080800000000000000077
:1009C00000140F5C30E040C0000000000000000098
:1009D00000A0C0E4380D0607000000000000000081
:1009E0000000000000000000000000000100010500
:1009F000000000000000000004024F2F39F0C0800A
:100A0000000000000000000020C0F4FE9F0F030162
:100A10000000000000000000000000800000C0D0C6
:100A2000030707060E0000000000000000000000A1
:100A300000000000000000000000000000000000B6
:100A400000000000000000000000000000000000A6
:100A5000E060703818000000000000000000000096
:100A600000000000000402020100201403070753E5
:100A70000404404222200402573F3FFFF9F0E0C047
:100A8000100020220204442060FBFF7F1F0B0200A5
:100A90000000000000001020800020C4C8C0E0EA70
:100AA0000F0E1E1E3C0000000000000000000000B1
:100AB00080000000000000000000000000000000B6
:100AC0000000000000000000000000000000000026
:100AD000F07CFC3C1E000000000000000000000054
:100AE00000000000000000090507070F0F1F1F7F0F
:100AF00008040D8F5FFFFFFFFFFFFFFFFFFFFFFFFA
:100B00002040E0F8FCFEFFFFFFFFFFFFFFFFFFFFBD
:100B10000000000000408090E0E0E0F4F8F8F8FC0D
:100B20003F3F3F1F7F030100000000000000000066
:100B3000FFFEF7FAF0E0F8FDFB7F5F1F0F030101F6
:100B4000FFFF6F5F0F1F3F3E5EF4F0E0C08080004C
:100B5000F8FCFCFEFEC0C0800000000000000000A9
:100B6000000000000000000000040303010343270D
:100B700000000001000121131B1F1FBFFFFFFFFF2B
:100B80000000000000040898D8FEFEFFFFFFFFFFF2
:100B9000000000000000000000102060E0C0E0F253
:100BA0003F1F1F1F1F1FBF7F7F3F7F7F7F7FFFFC78
:100BB000FFFFFFFFFFFFFFFFFFFEFCF0D0C0800044
:100BC000FFFFFFFFFFFFFFFFFFFF9F0F0100000080
:100BD000F4FCF8F8FDFEFCFCFDFEFEFEFE7F3F0F80
:100BE0007020000000000000000000000000000075
:100BF00000000000000000000000000000000000F5
:100C000000000000000000000000000000000000E4
:100C100004000000000000000000000000000000D0
:100C2000000000002010104021131F3F1F3F3F1DF8
:100C30000000005000202040C0C0F0F9FAFCF8DCB1
:100C400000000000010181034767F7FB7F7F3F7BC6
:100C500080008080008080C8E0E2C4ECDEFEFECC34
:100C600000040000004040213D9F7FFFFFFF7B39D3
:100C7000000004000000C0E1F0F8FEFFFFFFFF46A7
:100C80000000000000000000000000000000000064
:100C9000000000000000000000000010000402122C
:100CA000000000000000000000000000000000083C
:100CB0000000000000000000000000000000000034
:100CC00000000000080701001029070703030100C6
:100CD00011098B4F2FBFFFFFFFFFFFFFF7FBFB71DA
:100CE0001010B2F4F9FAFEFCFEFEFEFFF7EFCF9E05
:100CF00000000000000000000000000000000000F4
:100D000000000000000000000000000000000000E3
:100D10000000000000000020101010080889454560
:100D20000000000000000000404080808811226424
:100D300000000000000000000000000000000000B3
:100D400000080603030307070F0F0707030301004B
:100D50006737371FBFBFBFFFFFFFFFFFFFFBBB7141
:100D6000E6F8F9FFFEFEFFFFFFFFFFFFFFFFDF8E4C
:100D70000040800020408080D0C080808000000043
:100D80000000000000000000000000010303030257
:100D900000000000000000000000E060F8F8F4FE31
:100DA000010100182E7E7E3D7F6F3600000000009E
:100DB000FEFCD8300002070D0F0666B0F878600020
:100DC000000000000000000000000000000103051A
:100DD00000000000000000000000000000C0A0E0D3
:100DE0000F0F07020100081C1A2E3E180000000019
:100DF000D0F0F0E0C0183E3E5D7F7F360E0400006C
:100E0000010F1F07000000000000000000000000AC
:100E1000B0F0F0F0F0000000000000000000000062
:100E2000000000000000000000000001071F3F79E3
:100E3000007E7E7E7E7E7E3C7E7EFFFFFFFFE7C3E0
:100E4000000000000000000000000080E0F8FC9EB0
:100E50000000000000000000000000000000000092
:100E600000040303070F0703000000000000000058
:100E70008040406060E0F0F0700000000000000082
:100E80000108040603070F0703000000000000002C
:100E90000080C0406060E0F0F070100000000000D2
:100EA000010804060207070F070300000000000006
:100EB0000080C0C0606060E0F0F0701000000000D2
:100EC000000000000000000000000001071F3F7943
:100ED0007E7E7E7E7E3C3C7E7E7EFFFFFFFFE7C304
:100EE000000000000000000000000080E0F8FC9E10
:100EF00000000000000000000000000000000000F2
:100F0000000000000000000000000001071F3F7902
:100F1000000020647E3C3C7E7E7EFFFFFFFFE7C337
:100F2000000000000000000000000080E0F8FC9ECF
:100F300000000000000000000000000000000000B1
:100F400000000000000000000000000000000000A1
:100F50000000000000000000000000000000000091
:100F6000000000000000000000060F060000000066
:100F7000000000787E3F1F0F1F0F0F1F07000000AB
:100F8000000000000000000000060F060000000046
:100F9000000000787E3F1F0F1F0F0F1F070000008B
:100FA0000000000000000000003C21213905053848
:100FB000000000000000000000C62929292929C6D8
:100FC00000000000000000000098A5A5A5A5A598B8
:100FD000000000000000000000C62929292929C6B8
:100FE0000000000000000000000000000000000001
:100FF00000000000000000000000000000000000F1
:00000001FF

View File

@@ -1,257 +0,0 @@
:1000000000000000400000000000000000000000B0
:10001000000000000000000000000000000000CC14
:1000200000000000000000000000000000000000D0
:10003000000000000000000000000000760000004A
:100040000000000060000000000000000000000050
:10005000000000000000000000000000000000CCD4
:100060000000000000000000000000000000000090
:1000700000000000000000000000000076600000AA
:100080000000000060000000000000000000000010
:10009000000000000000000000000000000011EE61
:1000A0000000000000000000000000000000000050
:1000B000000000000000000000000000FEF0000052
:1000C00000000000701100000000000000000000AF
:1000D000000000000000000000000000000011EE21
:1000E0000000000000000000000000000000000010
:1000F000000000000000000000000000FFF0000011
:1001000000000000703388000000000000000000C4
:10011000000000000000000000000000000010FFD0
:10012000800000000000000000000000000000004F
:10013000000000000000000000000011F7F10000C6
:1001400000000000F133CC000000000000000000BF
:10015000000000000000000000000000000010FF90
:100160008088000000000000000000000000000087
:10017000000000000000000000000011F6F3000085
:1001800000000000F177CC0000000000000000003B
:10019000000000000000000000000000000010F659
:1001A000C088000000000000000000000000000007
:1001B000000000000000000000000011FFF7000038
:1001C00000000000F1FFE600000000000000000059
:1001D000000000000000000000000000000010F718
:1001E000D1880000000000000000000000000000B6
:1001F000000000000000000000000011FFFF0000F0
:1002000000000010F1FFEE00000000000000000000
:10021000000000000000000000000000000010FFCF
:10022000F388000000000000000000000000000053
:10023000000000000000000000000030FFFE000091
:1002400000000010F3FBEE000000000000000000C2
:10025000000000000000000000000000000310FF8C
:10026000F188000000000000000000000000000015
:10027000000000000000000000000031FFFC000052
:1002800000000030F3F9FE00000000110000000043
:10029000000000000000000033000000000F10FE0E
:1002A000F3CC00000000000000000000000000008F
:1002B000000000000000000000000070FFF80000D7
:1002C000000000F0F3FDFA0000000011988000002B
:1002D000000000000000000033000000080F30FEA6
:1002E000F7CC00000000000000000000000000004B
:1002F00000000000000000000000CC71FFF8C0000A
:10030000000000F0F1FFF00000000033B8800000B2
:10031000000000000000000033880000080930FFE2
:10032000F3CC00000000000000000000000000000E
:1003300000000000000000000000CCF8FFFCC0003E
:10034000000000F0F1FFF00000000033E8C0000002
:10035000000000000000000033A80000090C30FF7E
:10036000F3CC000000000000000000770000000057
:1003700000000000000000000000FFF8FFFEC000C9
:10038000000010F0F3FFF00000000077F8C000005C
:10039000000000000000000075EC0000090871FF7B
:1003A000FBCC00000000000000000077000000000F
:1003B00000000000000000000000F7FCF7FCE00077
:1003C000000030F0F1FFF80000000077F0C00000FE
:1003D000000000000000000075FC0000090871FF2B
:1003E000FBCC0000000000000000007700000000CF
:1003F00000000000000000000000F7FCF7F8E0003B
:10040000001030F0F1FFF88000000077F0E000000D
:10041000003300000000000077FC80000B0870FE35
:10042000FFCC000000000000000000776600000024
:1004300000000000000000000000F7FEFFF8E000F0
:100440000030B0F0F3FFF880000000FFF8E000009B
:100450000033880000000000F7F880000B0C70FEED
:10046000FFC400000000000000000077EE00000064
:1004700000000000000000000000F7FEFFFCE000AC
:100480000030F0FDFBFFFC80000000FFF8E0000002
:100490000033880000000000F3F88000060C71FEB5
:1004A000F7C400000000000000000077EECC000060
:1004B00000000000000000000000F7FCFFFCE0006E
:1004C00000F0F0FFFDFFFCC4001111FFF8E0000098
:1004D0000077C00000000000F7FCC080000471FF3E
:1004E000F6D5000000000000000000FFF7C4000087
:1004F00000000000000000000000F3FEFFF8E00034
:1005000000F0F0F7FEFFFCC40033BBFBF0E000009E
:1005100000FFC000000000D0F3FDD080000270FF9B
:10052000F6D5000000000000000000FFF7C4000046
:1005300000000000000000000000F3FFFFF0E000FA
:1005400030F0F0FBFFFFFFE00033FFF7F0F40000B6
:1005500000FFC800000010F0F3FDF880000070FFFD
:10056000F6DDCC0000000000000000FFFFCC000022
:1005700000000000000000000022F7FFFFF0F00084
:1005800070F0F3FDFFFFFFE80077FFFFF8FC0000CD
:1005900011FEC000000010F4F7FFFC80000078FF9F
:1005A000FEFFCC0000000000000000FFFBCC0000BC
:1005B00000000000000000000033F7F7FEF0F080BC
:1005C00071F8F7FFFFFFFFF033FFFFFDF0F80000C9
:1005D00011FCE0C0000010FCFFFFFCC00000F3FEB7
:1005E000FEFFEE0000000000000000FFFBCC00005A
:1005F00000000000000000000033F7F7FEF0F0E01C
:10060000FFFAF7FFFFFFFFF1FFFDFFFCF1F0C00075
:1006100033F8E0C0000011FEFFFFFDC40000F3FE50
:10062000FFFFEE0000006600000033FFFFCC00007B
:1006300000000000000000000033F7F7FFF0F1F1C8
:10064000FFF2FFFFFFFFFEF3FFF0FFFEF0F0C00040
:1006500033F8E0E0000033FFF7FFFFF80033F3FE6C
:10066000FFFFFF8800007766000033FFFFCC00002B
:10067000000000000000000000FFFFFBFFF3F3FD9F
:10068000FFF3FFFFFFFFFCF7FEF0FFFFF0F0E000DD
:10069000BBFEE0E0000033FFFFFFFFF800FFF7FFC5
:1006A000FFFFFF88000077EC000033FFFFCC000065
:1006B0000011CC000000000011FDFFFBFEF7F7FB6E
:1006C000FEF7FFFFFFFFFFFCF8F0F7FEF0F0E01190
:1006D000FFFCF0E00000FFFFFFFFFFFC88FFF7FFDB
:1006E000FFFCFF880011FFEC000033FFFDCC000091
:1006F0000011CC000000000011FCFFFFFDFEFFF721
:10070000FDFFFFFFFFFFFFFBFCF8FFF8F0F1F0112A
:10071000FFFCFCF10000FFFFFDFFFFF288FFF7FF89
:10072000FFF8F3880011FFEA000077FFFFEC0000FC
:100730000011FE000000000011FCFFFFFFFFFFFFA3
:10074000FBFFFFFFFFFFF7FFFDF9FFFEF6F3F811D8
:10075000FFF9F9F98011FFF7FDFFFEF599FFFBFFA7
:10076000FFF0F3880030FFEE000077FBFFE80000A9
:100770000011FEC00000000011FDFFFFFFFFFFFFA2
:10078000FFFFFFFFFFFFFFFFFFFDFFFDFFF3FC3358
:10079000FFF7F9FB8011FFF1FFF8FEF599FFFFFF6E
:1007A000FEF0F0EE0031FFEE000077FBFFEA000004
:1007B0000011FEC00000000011F9FFFFF7FFFFFF6E
:1007C000FFFFFFFCFFFFFFFFFFFEFFF9FFF7FEB398
:1007D000FEFFFFFB8011FEF0F3FFFEFF99FFFFFF1E
:1007E000FFF1F5EE0031FFFE0000FFFEF7E600002E
:1007F00010F3FDF00000000017FDFFFFFBFFFFFFFF
:10080000FFFFFFFFFFFFFFFFFFFFFFF7FFFFFFF708
:10081000FFFFFFF3C073FEF0F3FFFCFFBBFFFCF72D
:10082000FFF1FFEE00F1FFFC0000FFFEFFFF000004
:1008300010F3FBF000000011F9FFFFFDFCF3FFFFD8
:10084000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3C4
:10085000FFFFFEFFC073FCF4FBFFFBFFBBFFFFF7D6
:10086000FFFBFFFF88F3FFFC0010FFFEFFFFC0004F
:1008700010F7FFF480000032F8FFFFF9FEF1FFFFF0
:10088000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7A
:10089000FFFFFFFFC8F7FCF4FFFFFFFFFFFFFFFBB9
:1008A000FFFBFFFF98FDFFF00030FFFEF7FFC000E9
:1008B00070FFFFFC80000074F9F7FFFFFFF0FFFFFF
:1008C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE39
:1008D000FFFFFDFFE8F7F8FEFFFFFFFFFFFFFFFD53
:1008E000FFFBFFFFF8FEFEFCE030FFF7FFFFC0005C
:1008F00070FFF7FC800000F8FBF7FFFFFFFAFFFF37
:10090000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7
:10091000FFFFFDFFFCF7F2FEFFFFFFFFFFFFFFFF02
:10092000FFFFFFFFF9FFFDFEE030FFF7FFFEC40011
:1009300071F7F7FD8010CCF2FBF7FFFFFFFFFFFF21
:10094000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7
:10095000FFF9FBFFFCF7FFFFF7FFFFFFFFFFFFFFC4
:10096000FFFDFFFFFDFFFFFFF074FFF3FFFEF70049
:10097000F1F3FBFB8010FFFFF3FBFFFFFFFFFFFF27
:10098000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77
:10099000FFFFFBFFFCFFFFFFFBFFFFFFFFFFFFFF72
:1009A000FFFEFFFFFFFFFFF6F0F8FFF7FFFCF7CCBD
:1009B000F3F7FFFBC030FFFFF3FDFFFFFFFFFFFF7B
:1009C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37
:1009D000FFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFF28
:1009E000FFFFFFFFFFFFFEFEF0F0FFF7FFFBFFFF43
:1009F000FBFBFFF7FBF9FFFFFBFFFFFFFFFFFFFF25
:100A0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6
:100A1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6
:100A2000FFFFFFFFFFFFFFFCF0F0FCF3FFFFFFFF06
:100A3000FFFFFFF7FFFFF7FFFDFFFFFFFFFFFFFFD8
:100A4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6
:100A5000FFFFFFFFFFF7FFFFFFFFFFFFFFFFFFFFAE
:100A6000FFFFFFFFFFFFFFF9F4F5FCF7FFFFFFFEBD
:100A7000FFFFFFFFFFF7FFFFFEFFFFFFFFFFFFFF8F
:100A8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76
:100A9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66
:100AA000FFFFFFFFFFFFFFF7F6F7FCFFFFFFFFFD74
:100AB000FFFFFFFFFFF7FFFFFFFFFFFFFFFFFFFF4E
:100AC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36
:100AD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26
:100AE000FFFFFFFFFFFFFFFFFEFFFCF7FFFFFFFB26
:100AF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06
:100B0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5
:100B1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5
:100B2000FFFFFFFFFFFFFFFFFCFFF8F7FFFFFFFFE7
:100B3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5
:100B4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5
:100B5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5
:100B6000FFFFFFFFFFFFFFFFFBFFF8F7FFFFFFFFA8
:100B7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85
:100B8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75
:100B9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF65
:100BA000FFFFFFFFFFFFFFFFFFFFF8F1FFFFFFFF6A
:100BB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45
:100BC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35
:100BD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25
:100BE000FFFFFFFFFFFFFFFFFFFFF0F0FFFFFFFF33
:100BF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05
:100C0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4
:100C1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4
:100C2000FFFFFFFFFFFFFFFFFFFFF0F3FFFFFFFFEF
:100C3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4
:100C4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4
:100C5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4
:100C6000FFFFFFFFFFFFFFFFFFFFF0F7FFFFFFFFAB
:100C7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84
:100C8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74
:100C9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64
:100CA000FFFFFFFFFFFFFFFFFFFFF0F1FFFFFFFF71
:100CB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44
:100CC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34
:100CD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24
:100CE000FFFFFFFFFFFFFFFFFFFFF0F0FFFFFFFF32
:100CF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04
:100D0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3
:100D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3
:100D2000FFFFFFFFFFFFFFFFFFFFF0F3FFFFFFFFEE
:100D3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3
:100D4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3
:100D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3
:100D6000FFFFFFFFFFFFFFFFFFFFF4FFFFFFFFFF9E
:100D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83
:100D8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF73
:100D9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63
:100DA000FFFFFFFFFFFFFFFFFFFFF7FFFFFFFFFF5B
:100DB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF43
:100DC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF33
:100DD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23
:100DE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13
:100DF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03
:100E0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2
:100E1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2
:100E2000FFFFFFFFFFFFFFFFFFFFFFFBFFFFFFFFD6
:100E3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2
:100E4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB2
:100E5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2
:100E6000FFFFFFFFFFFFFFFFFFFFFFF1FFFFFFFFA0
:100E7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF82
:100E8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72
:100E9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62
:100EA000FFFFFFFFFFFFFFFFFFFFFEF0FFFFFFFF62
:100EB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF42
:100EC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32
:100ED000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22
:100EE000FFFFFFFFFFFFFFFFFFFFFFF3FFFFFFFF1E
:100EF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF02
:100F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1
:100F1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1
:100F2000FFFFFFFFFFFFFFFFFFFFFFFBFFFFFFFFD5
:100F3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1
:100F4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1
:100F5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1
:100F6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91
:100F7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81
:100F8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71
:100F9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61
:100FA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51
:100FB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41
:100FC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF31
:100FD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF21
:100FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11
:100FF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01
:00000001FF

View File

@@ -1,257 +0,0 @@
:1000000000000000000000000000000000000000F0
:1000100000000000000000000000000000000000E0
:1000200000000000000000000000000000000000D0
:1000300000000000000000000000000000000000C0
:1000400000000000000000000000000000000000B0
:1000500000000000000000000000000000000000A0
:100060000000000000000000000000000000000090
:100070000000000000000000000000000000000080
:10008000000000000000000000000000000000C0B0
:100090000000E00000000000000000000000000080
:1000A0000000000000000000000000000000000050
:1000B0000000000000000000000000000000000040
:1000C000000000000000000000000000000011EC33
:1000D0000030F00000000000000000000000000000
:1000E0000000000000000000000000000000000010
:1000F0000000000000000000000000000000000000
:10010000000000000000000000000000000077FF79
:10011000C0F0FFC000000000000000000000000070
:1001200000000000000000000000000000000000CF
:1001300000000000000000000000000000000000BF
:100140000000000000000000000000000000FFFFB1
:10015000FCF3FFC8000000000000000000000000E9
:10016000000000000000000000000000000000008F
:10017000000000000000000000000000000000007F
:100180000000000000000000000000000033FFFF3E
:10019000FCF3FFF800000000000000000000000079
:1001A000000000000000000000000000000000004F
:1001B000000000000000000000000000000000003F
:1001C00000000000000000000000000000FFFFFF32
:1001D000F0FFFFF000000000000000000000000041
:1001E000000000000000000000000000000000000F
:1001F00000000000000000000000000000000000FF
:1002000000000000000000000000000033FFFFFCC1
:10021000FFFFFFF0C0000000000000000000000031
:1002200000000000000000000000000000000000CE
:100230000000000000000000000000C000000000FE
:10024000000000000000000000000000FFFFFFF3BE
:10025000FFFFFFF0F00000000000000000000000C1
:10026000000000000000000000000000000000008E
:100270000000000000000000003310F0000000004B
:10028000000000000000000000000011FFFFFFFF61
:10029000FFFEF0F0F0000000000000000000000091
:1002A000000000000000000000000000000000004E
:1002B0000000000000000000003398F480000000FF
:1002C0000000000000000000000000FFFFFFFCFF36
:1002D000FFFFFEF0F0C00000000000000000000082
:1002E000000000000000000000000000000000000E
:1002F00000000000000000000077FCFEC0000000CD
:100300000000000000000000000033FFFFFFF3FFCB
:10031000FFFFFFFCF0F00000000000000000000004
:1003200000000000000000000000000000000000CD
:10033000000000000000000000FFFFFFC000000000
:1003400000000000000000000000FFFFFFFFFFFFB3
:10035000FFFFFFFCF0F08000000000000000000044
:10036000000000000000000000000000000000008D
:10037000000000000000000000FFFFFFE800000098
:1003800000000000000000000077FFFFFFFCFFFFFF
:10039000FFFFFFF0F0F0E0000000000000000000B0
:1003A000000000000000000000000000000000004D
:1003B000000000000000000011FDFFFFF0800000C1
:1003C000000000000000000011FFFFFFFFFFFFFF23
:1003D000FFFFFEF0F0F0F0800000000000000000E1
:1003E000000000000000000000000000000000000D
:1003F000000000000000000033F9FFFEF280000062
:100400000000000000000000FFFFFFFFFFFFFFFFF4
:10041000FFFFFCF0F0F0F0F000000000000010C062
:1004200000C000000000000000000000000000000C
:10043000000000000000000077FBFFF9FEC0000094
:100440000000000000000077FFFFFFFFFFFFFFFF3D
:10045000FFFFF0F0F0F0F0F080000000000010E08E
:1004600070E000000000000000000000000000003C
:100470000000000000000000FFFFFFF7FFF0000099
:1004800000000000000033FFFFFFFFFFFFFFFFFF42
:10049000FFFCF0F0F0F7F0F0F0000000000033F89F
:1004A000F0F8000000000000000000000000000064
:1004B0000000000000000011FEFFFFFFFFF0000041
:1004C000000000000033FFFFFFFFFFFFFFFFFFFF03
:1004D000FFF8F0F0F1FFFCF0F0C000000000FFFEBC
:1004E000F1FCC0000000000000000000000000005F
:1004F0000000000000000033FDFFFFFFFEF0800061
:100500000000000000FFFFF8FFFFFFFFFFFFFFFFFD
:10051000FCF0F0F0F7FFF8F0F0F000000000FFFF53
:10052000F3FFE000000000000000000000000000F9
:100530000000000000000077F9FFFFFFFCF0C000A2
:1005400000000000FFFFF1FFFFFFFFFFFFFFFFFFC5
:10055000F0F0F0F1FFFFF0F0F0F0C0000033FFFF2B
:10056000F7FFF8000000000000000000000000009D
:1005700000000000000000FFF3FFFFFFF3F0F000B9
:100580000000FFFFFFF8FFFFFFFFFFFFFFFFFFFC83
:10059000F3FEF6F7FFFEF0F0F0F7F00000FFFFFFCC
:1005A000FFFFFCC00000000000000000000033005E
:1005B000E0000000000011FCFFFFFCFFFFFCF0C0AA
:1005C00000FFFFFFFCF1FFFFFFFFFFFFFFFFFFF357
:1005D000FFFFFFFFFFF8F3F6F1FEF0E033FFFFFF50
:1005E000FFFFF8F00000000000000000000033CC26
:1005F000F0000000000033F9FFFFFFFFFFF0F0E024
:10060000FFFFFFFCF1FFFFFFFFFFFFF9FFFFFFFF11
:10061000FFFFFFFFFEF0FFFFF7FCF0F0FFFFFFFF23
:10062000F3FFF0F080000000000000000000FFFE7B
:10063000F48000000000FFFFFFFFFFFFFEF0F0FF6F
:10064000FFFFFFFFFFFFFFFFFFFFF8F7FFFFFFFFC9
:10065000FFFFFFFFF9FFFFFFFFFFF8F3FFFFFFFCC6
:10066000FFFCF1FCE0000000000000000000FFFFC4
:10067000FEE000000033FFFFFFFFFFFFFCF5FFFF80
:10068000FFFEF3FFFFFFFFFFFFFFFFFFFFFFFFFF87
:10069000FFFFFFFFFFFFFFFFFFFEF0F7FFFFFFFF82
:1006A000FFFCF7FEF0800000000000000011FFFFDB
:1006B000FCF080000077FFFFFFFFFFFFF0FFFFFF70
:1006C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3A
:1006D000FFFFFFFFFFFFFFFFFFFEF3FFFFFFFFFF37
:1006E000FFF0FFFCF0E00000000000000077FFFFDB
:1006F000F8F0C00000FFFFFFFFFFFCF3FFFFFFFF6C
:10070000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9
:10071000FFFFFFFFFFFFFFFFFFF8FFFFFFFFF3FFFC
:10072000FCF3FFF0F0F080000000000000FFFFFF8E
:10073000F0F3F00033FCFFFFFFFFF3FFFFFFFFFFCD
:10074000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB9
:10075000FFFFFFFFFFFFFFFFFEF1FFFFFFFCFFFFBB
:10076000FFFFFEF0F0F0E0000000000033FFFFFFAD
:10077000F1F7FEC077F3FFFFFFFFFFFFFFFFFFFF73
:10078000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79
:10079000FFFFFFFFFFFFFFFFF1FFFFFFFFFFFFFF77
:1007A000FFFFFCF0F0F0F0000000000033FFFFF06E
:1007B000F3FFFCF3FFFFFFFFFFFFFFFFFFFFFFFF64
:1007C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF39
:1007D000FFFFFFFFFFFFFFFCFFFFFCFFFEF7FFFF38
:1007E000FFFFF8F0F0F0F08000000011FFFFFFFCC9
:1007F000FFFFF3FFFFFFFFFFFFFFFFFFFFFFFFFF15
:10080000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8
:10081000FFFFFFFFFFFFFFFFFFFFF0F3FFFFFFFF03
:10082000FFFFF0F0F0F0F0E0000011FFFFFFFFFF2E
:10083000FFFCFFFFFFFFFFFFFFFFFFFFFFFFFFFFCB
:10084000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8
:10085000FFFFFFFFFFFFFFFFFFFFF8F7FFFFFFFFB7
:10086000FFFCF0F0F0F0F0F0C000FFFFFFFFFFFF33
:10087000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF88
:10088000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF78
:10089000FFFFFFFFFFFFFFFFFFFFFCFEF3FFFFFF78
:1008A000FFF0F0F0F6F0F0F0F0F3FFFFFFFFFFFFD6
:1008B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF48
:1008C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF38
:1008D000FFFFFFFFFFFFFFFFFFFFF3FFFFFFFFFF34
:1008E000FCF0F0FCFFFBF2F0F0F0FFFFFFFFFFFF7A
:1008F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF08
:10090000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7
:10091000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7
:10092000F8F0F1FFFFFFFFF8F0F0F3FFFFFFFFFF2C
:10093000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7
:10094000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7
:10095000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEA8
:10096000F1FEF7FFFFFFFFFFF0F0F0FFFFFFFFFFDB
:10097000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87
:10098000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77
:10099000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86E
:1009A000FFFFFFFFFFFFFFFFFCF2F0F0FFFFFFFF85
:1009B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF47
:1009C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37
:1009D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFEF730
:1009E000FFFFFFFFFFFFFFFFF0FFFCFFF3FFFFFF35
:1009F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF07
:100A0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6
:100A1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6
:100A2000FFFFFFFFFFFFFFFCF3FFFFFFFCFFFFFFE8
:100A3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6
:100A4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6
:100A5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6
:100A6000FFFFFFFFFFFFFEF1FFFFFFFFFFFFFFFFA5
:100A7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86
:100A8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76
:100A9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66
:100AA000FFFFFFFFFFFFF9FFFFFFFFFFFFFFFFFF5C
:100AB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF46
:100AC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36
:100AD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26
:100AE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF16
:100AF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06
:100B0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5
:100B1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5
:100B2000FFFFFFFFFFFCFFFFFFFFFFFFFFFFFFFFD8
:100B3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5
:100B4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5
:100B5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5
:100B6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF95
:100B7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85
:100B8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75
:100B9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF65
:100BA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF55
:100BB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45
:100BC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35
:100BD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25
:100BE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF15
:100BF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05
:100C0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4
:100C1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4
:100C2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4
:100C3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4
:100C4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4
:100C5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4
:100C6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94
:100C7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84
:100C8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74
:100C9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64
:100CA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF54
:100CB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44
:100CC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34
:100CD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24
:100CE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14
:100CF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04
:100D0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3
:100D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3
:100D2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3
:100D3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3
:100D4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3
:100D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3
:100D6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF93
:100D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83
:100D8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF73
:100D9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63
:100DA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF53
:100DB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF43
:100DC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF33
:100DD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF23
:100DE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF13
:100DF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF03
:100E0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2
:100E1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2
:100E2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2
:100E3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC2
:100E4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB2
:100E5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2
:100E6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92
:100E7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF82
:100E8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72
:100E9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF62
:100EA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF52
:100EB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF42
:100EC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32
:100ED000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22
:100EE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF12
:100EF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF02
:100F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1
:100F1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1
:100F2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD1
:100F3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC1
:100F4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB1
:100F5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA1
:100F6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF91
:100F7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81
:100F8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF71
:100F9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF61
:100FA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51
:100FB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF41
:100FC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF31
:100FD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF21
:100FE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11
:100FF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF01
:00000001FF

View File

@@ -1,257 +0,0 @@
:1000000000000011000000000000000000000000DF
:10001000000000000000000000004400000000009C
:10002000000044020000000000000000000000008A
:1000300000000000000000000000000000000000C0
:10004000000000110000010000000000000000009E
:10005000000000000000000000004402000000005A
:10006000000044020000000000000000000000004A
:100070000000000000000000000000000000000080
:1000800000000011118F01000000000000000000BE
:10009000000000000000000000004402000000001A
:1000A000000044020000000000000000000000000A
:1000B0000000000000000000000000000000000040
:1000C0000000001177EF0D000000000000000000AC
:1000D00000000000000000000000440200000000DA
:1000E00000004402000000000000000000000000CA
:1000F0000000000000000000000000000000000000
:1001000000000000FFFF0F000000000000000000E2
:100110000000000000000000000044020000000099
:100120000011FF8F08000000000000000000000028
:1001300000000000000000000000000000000000BF
:1001400000000011FDFB870000000000000000001F
:100150000000000000000000000044020400000055
:100160000033FFCF0C000000000000000000000082
:10017000000000000000000000000000000000007F
:1001800000000011FFFF8F000000000000000000D1
:1001900000000000000000000022440204000000F3
:1001A00000FFFFFF0F000000000000000000000043
:1001B000000000000000000000000000000000003F
:1001C00000000011F3F3C300000000000000000075
:1001D00000000000000000000022440204000000B3
:1001E00011FFFFEF0F0800000000000000000000FA
:1001F00000000000000000000000000000000000FF
:1002000000000033FFFF8F08000000000000000026
:1002100000000000000000010022330C0400001167
:10022000FFFFFF8F0F0F080000000000000000001C
:1002300000000000000000000000000000000000BE
:1002400000000033FFFFCF080000000000000000A6
:1002500000000000000000010022FF8F04000033B6
:10026000FFFFFFFF8F0F0C000000000001000000E7
:10027000000000000000000000000000000000007E
:1002800000000033FFFFCF08000000000000000066
:1002900000000000000000010011FFEF0800003323
:1002A000FFFFFFFFFF0F0C00000000000100000037
:1002B000000000000000000000000000000000003E
:1002C00000004432FCFDE9080000000000000000CE
:1002D00000000000000000010011FFFF08000033D3
:1002E000F5F5F5FAFA5A0C000000000001000000D4
:1002F000000000000000000000330C0000000000BF
:1003000000004433FFFFCF08000000008811000008
:1003100000000000000022010033F5FA0C0000117B
:10032000F5F5F5FAFA5A0800000000000100000097
:10033000000000000000000011FF8F080000000016
:1003400000004433FFFFCF080000000088110000C8
:1003500000000000000022010077FFFF0E000033C4
:10036000FFFFFFFFFF8F0C000000000005000000F2
:10037000000000000000000033FFEF0C0000000050
:1003800000004411F1F1E1000000000044220000EF
:1003900000000000000022010077FFEF0E00007750
:1003A000F8FCF3FCF3E10E00000000000500000083
:1003B000000000000000000077FFFF0E00000000BA
:1003C00000004411F1F1E1000000000044220000AF
:1003D00000000000000022010077FFCF0E00007730
:1003E000FFFFFFFFFFEF0E00000000000500000010
:1003F000000000000000000077FFFF0E000000007A
:1004000000004432FFFFCF0800000000224400003B
:1004100000000000000022110033FFFF0C0011FF5C
:10042000FFFFFFFFFFFF0F080000000005000000B6
:100430000000000000000000FFFFFF8F0000000030
:1004400000004411FFFFCF0800000000224400001C
:10045000000000000000220600327DB6840011F08A
:10046000FCF0FCF3F0F3F0080000000005000000D1
:100470000000000000000000FFFFFF0F0000000070
:10048000000055FFFFFFEF080000000022440000BD
:1004900000000000000011FF0833FFFF0C0011FFF7
:1004A000FFFFFFFFFFFF8F0800000000EF080000C4
:1004B0000000000000000000FFFFEF0F0800000038
:1004C000000033FFFFFFEF0800000000118800006C
:1004D00000000000000033EF0C33FFFF0C0033FF7F
:1004E000FFFFFFFFFFFF8F0C00000011FF0C00005B
:1004F0000200000000000000F5F5FA5A08000000B4
:10050000000077FFFFFFEF08000000331188CC00E8
:1005100000000000000077F60E77FFFF8E0077FFE7
:10052000EDEDFFFFB7B7CF0E00000033FF8E0000E8
:100530000200000000000000FFFFCF0F08000000D5
:10054000000077FFFFFFCF08000000779999EE00C9
:1005500000000000000077FF0E77FFFF8E0077FF9E
:10056000EDEDFFFFB7B78F0E00000077FF8F0000A3
:100570000200000000000000000000000000000079
:100580000000FEFDF6F7CF08000000779999EE0015
:1005900000000000000032760477FFFF8E0033FF7A
:1005A000FFFFFFFFFFEF0F0C00000074FDEF0000E6
:1005B0000200000000000000FFFFFF0F0800000025
:1005C0000000FFFFFFFF8F08000000331188CC0000
:1005D00000000000000077FF0E75FAF5CA0033FF37
:1005E000FFFFFFFFFFEF0F0C00000077FFFF00028F
:1005F0000200000000000000FFFFFF8F0800000065
:100600000000FFFFFFFFEF0E0000001133CC880059
:10061000000000000000FFFF8F77FFFFCF0000FF0A
:10062000FFFFFFFFFFCF0F00000000FFFFCF08021A
:100630000200000000000000FCF4F2C30000000013
:100640000000FFF6FDFFEF0F000011FFFFFFCF08D6
:100650000000000000FFFFFFEFFFFFFFCF080011C9
:10066000FFFFFFFFFF0F0800000000FAF82F08024D
:100670000200000000000000FFFFFF8F00000000EC
:100680000000FFFFFFFFFF0F000033FBFDFBFD0C31
:100690000000000011FFFFFFEFFFFFFFEF0E000063
:1006A00077B7B66DFC0E0000000000FFFFCF080218
:1006B000020000000000000077FFFF0E00000000B5
:1006C0000000FFFFFFFFF7A50000FFFFFFFFFF8F08
:1006D0000000000011FC7DF47FFFFFFFFF0E000013
:1006E00033FFFFFFFF0C0000000000FFFFCF0802F8
:1006F0000E0000000000000077FFFF0E0000000069
:100700000000FEFFF6FFFF8F0011EDEDFCB7F3C315
:100710000800000011F87DF43FFFFFFFFF0E00000E
:1007200033FFFFFFEF0C0000000011FFFFEF0C1183
:100730008F0000000000000033FFCF0C000000001D
:100740000000FFFFFFFFFD8F0033FFFFFFFFFFCF24
:100750000C00000011FFFFFFFFBFBFFAFD8F00007C
:1007600033FFFFFF8F0C0000000033FFFF8F0C33BF
:10077000CF0800000000000011FF8F0800000000FB
:100780000000FFFFFFFFFF8F0033FFFFFFFFFFFFB2
:100790000C00000011FFFFFFFFD3D3FFFF8F00000D
:1007A00033FFF78F0F0C0000000077FFFFEF0C778F
:1007B000EF0800000000000000330C000000000003
:1007C0000000FFFFFFFFFF8F0077FFFFFFFFFFFF2E
:1007D0000E00000011FFFFFFFFFBFBFFFF8F00007B
:1007E00033FFFFEF0F080000000077FFFFEF0E77E9
:1007F000EF0C0000000000000074C20000000000C8
:100800000000FFFFEFFFFF0F0077FFFFFFFFFFCFAD
:100810000E00000011FFFFFFFFFFFFFFFF8F000032
:1008200011FFFFFF8F0800000000FFFFFFFFDEFF4A
:10083000E90C00000000000000778E0000000000BE
:100840000000FFFFEF7FF64B0077D3DBDBDBDBF84D
:100850000E00000011B66DFBB7FFFFF6F68F00002B
:1008600033FFFFFFCF0C00000000FCFDF9FBFFFC95
:10087000F90C00000000000000770E0000000000EE
:100880000000FFFFEFFFFF8F0077DBDBDBDBDBE947
:100890000E00000011FFFFFFFFFFFFFFFF0F000032
:1008A00033FFFFFFCF0C00000000FFFFFFFFFFFC46
:1008B000FF0C00000000000000778E000000000028
:1008C0000000FFFFEFFFFF0F0033FFFFFFFFFFEF11
:1008D0000C00000011FFFFFFFFFFFFFFFF0E0000F5
:1008E00033FFFFFFCF0C00000000FFFFFFFFFFFF03
:1008F000FF0C00000000000000778E0000000000E8
:10090000000077FFCFFFFF0E0033FFFFFFFFFFEF79
:100910000C00000011FFFFFFFFBFFFFFCF0E000024
:1009200077FFFFFFEF0E00000000FEFAFAFADFFF8C
:10093000FB0C0000000000000077CE00000000006B
:10094000000077FF3FFFEF0E0011FFFFFFFFFFCF1B
:100950000800000011FFFFFFFFBFFFFFCF0E0000E8
:1009600077FFFFFFCF0E00000000FFFFFFFFBFF982
:10097000FF0C00000000000000778E000000000067
:10098000000011FFFFFFCF080011FFFFFFFFFF0F67
:100990000800000011FFFFFFFF1FFFFFCF0800004E
:1009A00077FFFFFF8F0E00000000FFFFFFFFBFFF7C
:1009B000EF0C00000000000000778E000000000037
:1009C000000000FCFCFCE908000033FFEF2F0F0CD7
:1009D0000000000000FFFFFFEF0FFFFFCF0000004F
:1009E00077FFFFFF0F0E0000000077FFFFFF7FFF84
:1009F000EF0C00000000000000778E0000000000F7
:100A0000000000FFFFFFCF08000011FFFFFFEF080D
:100A1000000000000000FFF90F0F7FFF8E000000B4
:100A200077FFFFFFCF0E0000000077FF0F0F7FF56D
:100A3000C7080000000000000077CE0000000000A2
:100A4000000011FFFFFFCF00000000FFFFFFCF00FD
:100A5000000000000000FFFFCF3FFFCF0E000000AE
:100A6000FFFFFFFFEF0F0000000011FFFFFF3FFF40
:100A7000CF0000000000000000FF8F000000000019
:100A8000000011FFFFFF8F0000000077FFFF8E00C6
:100A900000000000000077FFEFFFFFCF0E00000016
:100AA000FFFFFFFFCF0F0000000011FFFFEF7FFFF0
:100AB000CF0000000000000011FF8F0800000000C0
:100AC000000033FFFFFF8F0000000077FFEF0E00F4
:100AD00000000000000077FFEFFFFFCF0E000000D6
:100AE000FFFFFFFF0F0F0000000000FFFFCF7FEFB1
:100AF0008F0000000000000000778E000000000062
:100B0000000077FFFFFF8E00000000FFFFFF8F0057
:100B100000000000000077FFFFFFFF8F00000000D3
:100B2000FFFFFFCF0F0F0000000000FF7F0FFFEF60
:100B30008F00000000000033FF338C0F0C0000001A
:100B40000000FFFFFFFF0E00000000FFFFFFCF00CF
:100B500000000000000077FFFFFFEF0F0000000023
:100B6000FFFFFFFF8F0F000000000077FFCFFFEFB8
:100B70000E00000000000033FFAA1DCF0C00000093
:100B80000000FFFFFFFF0E00000000FDFAF5CF00A0
:100B9000000000000000FEF7F8E70F0F0000000063
:100BA000FFFFFFFFFF0F000000000077FFEF0F0FB8
:100BB0000C000000000000FFFF8811FF0F00000084
:100BC0000000F8F1F8F80F00000000FFFFFF8F00B1
:100BD000000000000000FFFFFFFF0F0E00000000FC
:100BE000FFFFFFFFEF0F0000000000FFFFEF0F0F00
:100BF00008000000000077FFFFFFFFFF0F0E00005E
:100C00000033FFFFFFFF0F0C000011FFFFCF0F08A5
:100C10000000000077FFFFFFFFFFFF0E0000000055
:100C2000FFFFFFFFCF0F0000000000FFFFFFFFCF1F
:100C300008000000000077FFFFFFFFFF8F0F00009C
:100C40000077FFFFFFFF0F0E000033FFFFFF0F0CC9
:100C5000000000FFFFFFFFFFFFFFFFCF0F000000BE
:100C6000FFFFFFFF8F0F0000000000FFF7FDFFCF29
:100C700008000000000076F6F6F4F2F69686000012
:100C800000FFFFFFFFFF0F0F000077FFFFFFCF0EFA
:100C9000000000FFFFFFFFFFFFFFFFEF0F08000056
:100CA000FFFFFFFFEF0F00000000FFFFF7FD0F0F3A
:100CB0000F0800000011FFFFFFFFFFFFCF0F08002C
:100CC00000FFF1F8FEF3F80F000077FFFFFFEF0ED3
:100CD000000011FFFFFFFFFFFFFFFFFFCF08000035
:100CE000FFFFFFFFFF0F00000077FFFFFFFFFF8FF9
:100CF0000F0E00000011FAFAFAFAF5F5E5A5080062
:100D000000FFFFFFFFFFCF0F0000FFFFFFFFCF0F30
:100D1000000011FFFFFFFFFFFFFFFFFFEF0C0000D0
:100D2000FFFFFFFFEF0F000000FFFFFFFFFFFFEFE0
:100D30000F0F0C000011FFFFFFFFFFFFAFAF080018
:100D40000077FFFFFFFFCF0E0000FFFFFFFFEF0F59
:100D5000000033FFFFFFFFFFFFFFFFFFFF0C00005E
:100D6000FFFFFFFFCF0F000000FFFFFFFFFFFFFFB0
:100D70008F0F0C000077FFFFFFFFFFFF8F0F0E00AC
:100D80000077FFFFFFFF8F0E0000FFFFFFFFCF0F79
:100D9000000033FFFFFFFFFFFFFFFFFFFF0F00001B
:100DA000FFFFFFFF8F0F000000FFFFFFFFFFFFFFB0
:100DB000FF8F0C000077FFF9FCF0F0CF0F0F0E0053
:100DC0000077FFFFF0F30F0E0000FFFFFFFF8F0F14
:100DD000000077FFFFFFFFFFFFFFFFFFFF0F000097
:100DE000FFFFFFFF0F0F00000077FFFFFFFFFFFF78
:100DF000FFCF0C000077FFFFFFFFFFFFFF8F0E000C
:100E000000FFFFFFFFFF0F0F0000FFFFFFFFEF0FCF
:100E10000000FFFFFFFFFFFFFFFFFFFFFF0F0000CE
:100E2000FFFFFFFF8F0F00000011FDF90F0F0F0FE5
:100E30000F0F0C0000FFFFFFFFFFFFFFFFCF0F00B2
:100E400000FFFFFFFFFF0F0F0000FFFFFFFFCF0FAF
:100E50000000FFFFFFFFFFFFFFFFFFFFFF0F00008E
:100E6000FFFFFFFFCF0F000077FFFFFFFFFFFFFF38
:100E7000FF8F0F0800FFFFFFFFFFFFFFFFCF0F00F7
:100E800000FFFFFFFFFFFF0F0000FFFFFFFFCF0F7F
:100E90000000FFFFFFFFFFFFFFFFFFFFFF0F00004E
:100EA000FFFFFFFFCF0F000077FFFFFFFFFFCF0F18
:100EB0003FEF0F0800FFFFFFFFFFFFFFFFEF0F00F7
:100EC00000FFFFFFFFFFEF0F0000FFFFFFFFEF0F2F
:100ED0000000FFFFFFFFFFFFFFFFFFFFFF0F00000E
:100EE000FFFFFFFF8F0F0000FFFFFFFFFFFFFFFF70
:100EF000FFEF0F0C00FFFFFFFFFFFFFFFFEF0F00F3
:100F000000FFFFFFFFFFCF0F0000FFFFFFFFCF0F2E
:100F10000000FFFFFFFFFFFFFFFFFFFFFF0F0000CD
:100F2000FFFFFFFF8F0F0000FFFFFFFFFFFFFFFF2F
:100F3000FFFF0F0C00FFFFFFFFFFFFFFFFCF0F00C2
:100F400000FFFFFFFFFFCF0F0000FFFFFFFFEF0FCE
:100F50000000FFFFFFFFFFFFFFFFFFFFFF8F00000D
:100F6000FFFFFFFF0F0F0000FFFFFFFFFFFFFFFF6F
:100F7000FFFF0F0C00FFFFFFFFFFFFFFFFCF0F0082
:100F800000FFFFFFFFFF8F0F0000FFFFFFFFCF0FEE
:100F90000000FFFFFFFFFFFFFFFFFFFFFFCF00008D
:100FA000FFFFFFEF0F0F0000FFFFFFFFFFFFFFFF3F
:100FB000FFFF0F0C00FFFFFFFFFFFFFFFF8F0F0082
:100FC00000FFFFFFFFFF0F0F0000FFFFFFFF8F0F6E
:100FD0000000FFFFFFFFFFFFFFFFFFFFFFCF00004D
:100FE000FFFFFFCF0F0F0000FFFFFFFFFFFFFFFF1F
:100FF000FFEF0F0C00FFFFFFFFFFFFFFFF0F0F00D2
:00000001FF

View File

@@ -1,257 +0,0 @@
:1000000000000000000000000010117FFF9C0800AD
:1000100000E0F8FCFCC84000000000000000000008
:10002000FFFFFFFFFFFFF0F0FFFFFFFFFFFF0F0FDE
:10003000F0F0F0F0F0F0F0F00F0F0F0F0F0F0F0FC8
:10004000F0F0FFFFFFFFFFFF0F0FFFF1FDFBF7F1E8
:100050007F7F7F7F7F7F7F7F7FFFFFFFFFFFFFFF30
:100060000000000000000000000000000000000090
:100070000000000000000000000000000000000080
:100080000000000000000000000000000000000070
:10009000003078FCFCFC783000000000000000001C
:1000A000FFFFFFFFFFFF00000000FFFFFFFFFFFF5C
:1000B0000000FFDFEF07EFDF0000FF1F7F3F7F1F24
:1000C0000000FF1FBFBFBF7F0000FF1F5F5F5F1FFC
:1000D0000000FF1FBFBFBFBFFF07070707FFFFFFEE
:1000E000FF07070707FFFFFFFF07070707FFFFFFE0
:1000F000FF07070707FFFFFFFF07070707FFFFFFD0
:100100000000000000000000FF00000000FFFFFFF3
:10011000FF00000000FFFFFFFF00000000FFFFFFE7
:10012000FF00000000FFFFFFFF00000000FFFFFFD7
:10013000FF00000000FFFFFFFF00000000FFFFFFC7
:10014000FF00000000FFFFFFFF00000000FFFFFFB7
:10015000000000000000000000000000000000009F
:10016000000000000000000000000000000000008F
:100170000000000000000000000000000000030379
:10018000000000000000000000000000000000006F
:10019000000000000000000000000000000000005F
:1001A000000000000000000000000000000000004F
:1001B000000000000000000000000000000000003F
:1001C000000000000000000000000000000000002F
:1001D000000000000000000000000000000000001F
:1001E000000000000000000000000000000000000F
:1001F000000000000000000000000000003C0000C3
:100200000000000000000000001C3663637F636391
:10021000007E63637E63637E001E33606060331E16
:10022000007C66636363667C007E60607C60607FE8
:10023000007F60607E606060001F30606763331F16
:10024000006363637F636363007E18181818187E69
:10025000000303030303633C0063666C787C6E67F2
:10026000006060606060607F0063777F7F6B6363C6
:100270000063737B7F6F6763003E63636363633E0A
:10028000007E6363637E6060003E6363636B673D13
:10029000007E6363677C6E67003C66603E03633E7E
:1002A000007E181818181818006363636363633EB0
:1002B00000636363773E1C080063636B7F7F776333
:1002C0000063773E1C3E7763006666663C1818182C
:1002D000007E7E0C18307E7E0307060C08006060EE
:1002E0003C4299A1A599423C00000000000000009A
:1002F00000000000000000000000000055000000A9
:1003000000000000000000000000000000000000ED
:1003100000000000000000000000000000000000DD
:1003200000000000000000000000000000000000CD
:1003300000000000000000000000000000000000BD
:10034000404040404040404050505050505040404D
:1003500000000000070301000000000000E0F8FCBE
:100360000000000000000001000000000000550037
:1003700000337373000000007E7F7F3F1F0F1F0F4D
:1003800000008080C0C1E1E300000000FF00000029
:1003900000000000FF00000000000000FF0000005F
:1003A00000000000FF00000000000000FF1F01032C
:1003B00000000000FFFFFFFF00000000008080C081
:1003C000000000000000000000000000000000002D
:1003D000000000000000000000000000000000001D
:1003E00000070FFFFFFFFFFF0080E0F8FFFFFFFFA8
:1003F00000000F3FFFFFFFFF0F0707C7FFFFFFFFD3
:10040000F0F0F8FFFFFFFFFF660000C0E0F0F0F83B
:1004100066000000000000006600000000000070A0
:1004200066000000000000006703010303000103F1
:1004300066000003071F3F3FC0C0E1FFFFFFFFFF53
:100440000007FFFFFFFFFFFF00C3FFFFFFFFFFFFEE
:1004500000C0FCFFFFFFFFFF000000F8FFFFFFFFF1
:1004600000030F3FFFFFFFFFC0F1FFFFFFFFFFFF94
:10047000FCFFFFFFFFFFFFFF0001C7FFFFFFFFFFC4
:10048000C7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFBC
:10049000C0C0C0C080FFFFFF0000000000000000DF
:1004A000000000000000000000000000000000004C
:1004B000000000000000000000FFFFFF00007EFEC3
:1004C000FCFCFCFCF8F8F8F8FCFCFCFCF8F8F8F88C
:1004D000000000000000000000000000000000001C
:1004E000000000000000000000000000000000000C
:1004F00000000000000000000000000000000000FC
:100500003F3F3F3F7E7E7E7EF0F0F0F0E0E0E0E0B7
:100510000000C0F0F8F8FCFCFFFFFFFFFFFFFFFF4B
:100520008080C0C0E0F0F8F8FEFFFFFFFFFFFFFF94
:100530000000000001010F1F7FFFFFFFFFFFFFFF13
:1005400000000303070F0F0F0F1FBFFFFFFFFFFF89
:100550000000C0F0FCFEFFFF0000000000008080F3
:10056000C0F0F0F0F0F8F8FCFEFFFFFFFFFFFFFF28
:100570000000010103070F0F0F9FFFFFFFFFFFFFA9
:10058000000003070F0F1F3F7FFFFFFFFFFFFFFF6D
:100590000000F0F0F0F8FCFCFEFEFFFFFFFFFFFFA5
:1005A000FFFFFFFFFFFFFFFF0000000000808080D3
:1005B00080E0F0F0F0F0F0F0F8FFFFFFFFFFFFFF4A
:1005C0000000808181C3E7FFFFFFFFFFFFFFFFFF08
:1005D000010FFFFFFFFFFFFF000000000101030309
:1005E00007070F1F3F3FFFFFFFFFFFFFFFFFFFFF5B
:1005F00000001F1F3F3F7F7F7FFFFFFFFFFFFFFFC9
:100600000000F0F0F0FCFCFEFEFFFFFFFFFFFFFF2D
:100610000000000000808098FCFCFCFCFCFCFCFC62
:10062000FEFEFFFFFFFFFFFF0000008080C0C0F064
:10063000FFFFFFFFFFFFFFFF00030307070F1FFF81
:10064000FFFFFFFFFFFFFFFF00010F0F1F1F1F1F17
:100650001F1F3F3F3F3F3F7F7FFFFFFFFFFFFFFF2A
:1006600000001F3F7FFFFFFFFFFFFFF7FFFFFFFFC0
:10067000FFFFFF7FFFFFFFFFFFFFFFFFFFFFFFFF0A
:10068000000000F8FFFFFFFF00000FFFFFFFFFFF6C
:1006900000000F3FFFFFFFFF0000031FFFFFFFFFF2
:1006A0000000C0FCFFFFFFFF0000E1FFFFFFFFFFB6
:1006B0000000073FFFFFFFFF80FFFFFFFFFFFFFF7F
:1006C0000000E0FFFFFFFFFFF0FFFFFFFFFFFFFF66
:1006D0000000F8FCFCFCFCFCFCFCFEFEFEFEFEFE4A
:1006E000FFFFFFFFFFFFFFFF1F3F3F3F3F3F3F3F3A
:1006F0003F3F7F7F7F7F7FFFFFFFFFFFFFFFFFFF0A
:1007000000FCFFFFFFFFFFFF00F0FFFFFFFFFFFF09
:1007100000E0FCFFFFFFFFFF0080E0F8FFFFFFFFAE
:1007200000000000000000F000C3FFFFFFFFFFFF1C
:100730000FFFFFFFFFFFFFFF0000000000F0FFFFC3
:10074000003FFFFFFFFFFFFF1F7FFFFFFFFFFFFFD8
:10075000000000F0FFFFFFFF003EFFFFFFFFFFFF75
:100760000000FCFFFFFFFFFF0000E0FFFFFFFFFFB7
:10077000000003FFFFFFFFFF00030FFFFFFFFFFF6E
:100780000000FFFFFFFFFFFF000FFFFFFFFFFFFF66
:1007900000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68
:1007A000000000000000000F00000000000000FF3B
:1007B000000000000000FFFF00000000000FFFFF2E
:1007C0000000000000FFFFFF00000000FFFFFFFF30
:1007D0000000000FFFFFFFFF000000FFFFFFFFFF13
:1007E000000000C3FFFFFFFF000000C7FFFFFFFF87
:1007F00000003FFFFFFFFFFF00030FFFFFFFFFFFB2
:100800000000000000000000FFFFFFFFFFFFFFFFF0
:10081000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8
:10082000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD8
:10083000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC8
:10084000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB8
:10085000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA8
:10086000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF98
:10087000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF88
:10088000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF78
:10089000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF68
:1008A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF58
:1008B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF48
:1008C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF38
:1008D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF28
:1008E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF18
:1008F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF08
:10090000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7
:10091000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7
:10092000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD7
:10093000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7
:10094000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB7
:10095000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA7
:10096000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF97
:10097000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87
:10098000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF77
:10099000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67
:1009A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF57
:1009B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF47
:1009C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF37
:1009D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27
:1009E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF17
:1009F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF07
:100A0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6
:100A1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE6
:100A2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6
:100A3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC6
:100A4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB6
:100A5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6
:100A6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF96
:100A7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF86
:100A8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76
:100A9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF66
:100AA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF56
:100AB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF46
:100AC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF36
:100AD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF26
:100AE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF16
:100AF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF06
:100B0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5
:100B1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5
:100B2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD5
:100B3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC5
:100B4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB5
:100B5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA5
:100B6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF95
:100B7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85
:100B8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF75
:100B9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF65
:100BA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF55
:100BB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45
:100BC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF35
:100BD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF25
:100BE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF15
:100BF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF05
:100C0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF4
:100C1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE4
:100C2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD4
:100C3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC4
:100C4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB4
:100C5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA4
:100C6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94
:100C7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF84
:100C8000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74
:100C9000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF64
:100CA000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF54
:100CB000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF44
:100CC000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF34
:100CD000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF24
:100CE000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14
:100CF000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF04
:100D0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3
:100D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3
:100D2000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3
:100D3000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3
:100D4000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB3
:100D5000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA3
:100D6000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF93
:100D7000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF83
:100D80000101010103030303070707070F0F0F0FFB
:100D90001F1F1F1F3F3F3F3F7E7E7E7EFCFCFCFCF3
:100DA0000000000000000000F8F8FCFCFEFEFFFF61
:100DB000FFFFFFFFCFCFC7C7838380800000000005
:100DC00000000000000000000000000003030F0FFF
:100DD000BFBFFFFFFDFDF1F1C3C303030707070713
:100DE0000F0F0F0F1F1F1F1F00000000000000004B
:100DF0003F3FFFFFFEFEFEFEFCFCFCFCF8F8F8F8AF
:100E0000F0F0F0F0E0E0E0E0C0C0C0C080808080A2
:100E100000000000000000000000000000000000D2
:100E20000003070F1F1F1F1F3F3F3F3F7E7E7E7E39
:100E3000FFFFFF7F7F7F3F1FFFFFFFFFFFFFFFE100
:100E400080000000010101030FFFFFFFFFFFFFFE15
:100E50000000000000000000F0F8FCFCFEFEFEFEBA
:100E6000F0F0F0F0E0C08000000001030707070782
:100E70003F3F3F1F1F1F0F07000000000000000042
:100E80003FFFFFFFFFFFFFF8E0C0C0C08080808011
:100E9000C3FFFFFFFFFFFFFFFCFEFFFFFFFFFF7F22
:100EA0003F3F3F3F7E7E7EFEFCFCFCFCF8F0E08096
:100EB0000000000081818181030303030707070706
:100EC000FCFCFDFFFFFFFCF83CFFFFFFFF0F0707E7
:100ED0000000000000000000000080C0E0E0E0E052
:100EE0000000000000000000FFFFFFFFFFFFFFF019
:100EF000E0E0E0E0C0FFFFFFFFFFFFFF00000000B9
:100F0000FFFFFFFFFFFFFF010000000103FFFFFFE6
:100F1000FFFFFFFF00000000C0F0FCFEFEFEFEFE33
:100F2000FEFEFEFEFCFCFCFCF8F8E0000000000009
:100F3000000103070F0F0F0F7F7F7F3F3F3F1F070A
:100F400000000000000000007FFFFFFFFFFFFFF038
:100F5000C08080800000000187FFFFFFFFFFFEFCD4
:100F60000000000000000000E7F7FFFFFFFFFFFFA9
:100F70007F7F7F7FFFFFFFFFFEFEFEFEFCFCFCFC91
:100F8000E0E0E0E0C0C0C0C08080808000000000E1
:100F90000000000001010101000000000707070731
:100FA0007F7F7F7FFFFFFFFF3F3F3F3F7E7E7E7E55
:100FB000000000000000000000000000E0E0E0E0B1
:100FC000F8F8F8F8F0F0F0F0000000000000000081
:100FD0000000000000000000F8F8F8F8F0F0F0F071
:100FE0000000000000000000879FBFFFFFFFC0005F
:100FF0008080810307070707FEFEFEFEFCFCFCFC69
:00000001FF

View File

@@ -1,257 +0,0 @@
:100000000000000000000000001010100063F76303
:10001000000070000030B030000000000000000060
:10002000FFFFFFFFFFFFF0F0FFFFFFFFFFFF0F0FDE
:10003000F0F0F0F0F0F0F0F00F0F0F0F0F0F0F0FC8
:10004000F0F0FFFFFFFFFFFF0F0FFFFFFFFFFFFFBE
:1000500000000000000000000000000000000000A0
:10006000000121131B1F0F0D00000890B0F0E0608D
:1000700000FC30303030303000FC3030303030FC7C
:1000800000C6EEFEFED6C6C600FCC0C0F8C0C0FE6C
:100090000000000000000000003078FCFCFC78301C
:1000A000FFFFFFFFFFFF00000000FFFFFFFFFFFF5C
:1000B0000000FFFFFFFFFFFF0000FFFFFFFFFFFF4C
:1000C0000000FFFFFFFFFFFF0000FFFFFFFFFFFF3C
:1000D0000000FFFFFFFFFFFFFF0F0F0F0FFFFFFFEE
:1000E000FF8F8F8F8FFFFFFFFFCFCFCFCFFFFFFFA0
:1000F000FFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFF50
:100100000000000000000000FF00000000FFFFFFF3
:10011000FF80808080FFFFFFFFC0C0C0C0FFFFFFE7
:10012000FFE0E0E0E0FFFFFFFFF0F0F0F0FFFFFF97
:10013000FFF8F8F8F8FFFFFFFFFCFCFCFCFFFFFFF7
:10014000FFFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFC3
:10015000000000000000000000000000000000009F
:10016000000000000000000000000000000000008F
:10017000000000000000000000000000000000007F
:10018000001C26636363321C001838181818187E88
:10019000003E63471E3C707F003F060C1E03633E1B
:1001A000000E1E36667F0606007C607C0606663CF6
:1001B000001E30607E63633E007F63060C181818D3
:1001C000003C62723C4F433E003E63633F03063C8B
:1001D00000386D61616D390000E6B6B6F6B6B30061
:1001E00000DECCCCCCCC8C0000F36C6C6C6CF300DF
:1001F0000093DBDFDFDB990000000000000000005F
:1002000000000000000000000000000000000000EE
:1002100000000000000000000000000000000000DE
:1002200000000000000000000000000000000000CE
:1002300000000000000000000000000000000000BE
:1002400000000000000000000000000000000000AE
:10025000000000000000000000000000000000009E
:10026000000000000000000000000000000000008E
:10027000000000000000000000000000000000007E
:10028000000000000000000000000000000000006E
:10029000000000000000000000000000000000005E
:1002A000000000000000000000000000000000004E
:1002B000000000000000000000000000000000003E
:1002C000000000000000000000000000000000002E
:1002D000000000000000000000000000000000001E
:1002E000003C7E7E7E7E3C0000001000000010007E
:1002F00000001414140000000000000000000000C2
:1003000080808080000000000000000080808080ED
:1003100020202020000000000000000020202020DD
:10032000080808080000000000000000080808088D
:1003300002020202000000000000000002020202AD
:1003400000000000000000000000000000071F3F48
:1003500000000000FFFFFFFF0000000000E0F8FCCD
:1003600000000101030306077FFFFFFFFFFFAFFF50
:10037000FFCC8C8CFFFFFFFFFECFC7C3FFFFFFFF4B
:1003800000008080C0C0E0E00000000000FFFFFF30
:100390000000000000FFFFFF0000000000FFFFFF63
:1003A0000000000000FFFFFF0000000000FFFFFF53
:1003B0000000000000FFFFFF0000000000FFFFFF43
:1003C0000000000000F0FFFF000000000000FFFF41
:1003D00000000000000000FF00000000000000F02E
:1003E0000F08100000000000FF7F1F070000000042
:1003F000FFFFF0C000000000FFFFFF3C0000000016
:10040000F3F3FB3800000000FFFFFF3F1F0F0F0753
:10041000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F5C
:10042000FFFFFFFFFFFFFFFF99FFFFFFFFFFFFFF42
:10043000FFFFFFFCF8E0C0C0FFFF1E00000000004F
:10044000FFF8000000000000FF3C0000000000007A
:10045000FF3F030000000000FFFFFF070000000057
:10046000FCFCF0C0000000003F0E00000000000097
:100470000300000000000000FFFE38000000000044
:100480003F0E00000000000080000000000000009F
:100490000000000000000000FF80808080808080DD
:1004A000FF0101010101010180808080808080FFC7
:1004B00001010101010101FF000000000000000036
:1004C000000000000000000000000000000000002C
:1004D000000000000000000000000000000000001C
:1004E000000000000000000000000000000000000C
:1004F00000000000000000000000000000000000FC
:1005000000000000000000000000000000000000EB
:100510000000C07018182400010600000000000050
:10052000808040408010182006010000000000007C
:100530000000000001010E106080000000000000BB
:1005400000000202040A08080818A4C090008000F5
:10055000000040300C06050800000000000080008C
:1005600040300010000808040801000000000000EE
:10057000000001000205080808000000000000005B
:10058000000003040808142060C0200000000000E0
:1005900000003010102804040202050100000000D1
:1005A00000010000000000000000000000808080CA
:1005B00080603030101010100003010100010000B5
:1005C000000080818102261C100000000000000055
:1005D000010EF0080000000000000000010102020E
:1005E000050408183020C0C0A00000000000000072
:1005F000000018103020404040A0808000008000A3
:1006000000003010000C040A02010101010000008A
:10061000000000000080801838440404040000003A
:100620000202010200000000000000800040409033
:100630000F0400000000000000030206040810E0A0
:10064000100000000000000000010C08181000104D
:100650001010282020202060408040000000000072
:10066000000010306040C08000000000000000006A
:1006700000000000000000000000008000000000FA
:10068000000000000000000000000000000000006A
:10069000000000000000000000000000000000005A
:1006A000000000000000000000000000000000004A
:1006B000000000000000000000000000000000003A
:1006C000000000000000000000000000000000002A
:1006D0000000183C0C140404000002020400000195
:1006E00002000000000000000000183C302030280C
:1006F00020204040200040C0A0000000000000007A
:1007000000000000000000000000000000000000E9
:1007100000000000000000000000000000000000D9
:1007200000000000000000000000000000000000C9
:1007300000000000000000000000000000000000B9
:1007400000000000000000000000000000000000A9
:100750000000000000000000000000000000000099
:100760000000000000000000000000000000000089
:100770000000000000000000000000000000000079
:100780000000000000000000000000000000000069
:100790000000000000000000000000000000000059
:1007A0000000000000000000000000000000000049
:1007B0000000000000000000000000000000000039
:1007C0000000000000000000000000000000000029
:1007D0000000000000000000000000000000000019
:1007E0000000000000000000000000000000000009
:1007F00000000000000000000000000000000000F9
:1008000000000000000000000000000000000000E8
:1008100000000000000000000000000000000000D8
:1008200000000000000000000000000000000000C8
:1008300000000000000000000000000000000000B8
:1008400000000000000000000000000000000000A8
:100850000000000000000000000000000000000098
:100860000000000000000000000000000000000088
:100870000000000000000000000000000000000078
:100880000000000000000000000000000000000068
:100890000000000000000000000000000000000058
:1008A0000000000000000000000000000000000048
:1008B0000000000000000000000000000000000038
:1008C0000000000000000000000000000000000028
:1008D0000000000000000000000000000000000018
:1008E0000000000000000000000000000000000008
:1008F00000000000000000000000000000000000F8
:1009000000000000000000000000000000000000E7
:1009100000000000000000000000000000000000D7
:1009200000000000000000000000000000000000C7
:1009300000000000000000000000000000000000B7
:1009400000000000000000000000000000000000A7
:100950000000000000000000000000000000000097
:100960000000000000000000000000000000000087
:100970000000000000000000000000000000000077
:100980000000000000000000000000000000000067
:100990000000000000000000000000000000000057
:1009A0000000000000000000000000000000000047
:1009B0000000000000000000000000000000000037
:1009C0000000000000000000000000000000000027
:1009D0000000000000000000000000000000000017
:1009E0000000000000000000000000000000000007
:1009F00000000000000000000000000000000000F7
:100A000000000000000000000000000000000000E6
:100A100000000000000000000000000000000000D6
:100A200000000000000000000000000000000000C6
:100A300000000000000000000000000000000000B6
:100A400000000000000000000000000000000000A6
:100A50000000000000000000000000000000000096
:100A60000000000000000000000000000000000086
:100A70000000000000000000000000000000000076
:100A80000000000000000000000000000000000066
:100A90000000000000000000000000000000000056
:100AA0000000000000000000000000000000000046
:100AB0000000000000000000000000000000000036
:100AC0000000000000000000000000000000000026
:100AD0000000000000000000000000000000000016
:100AE0000000000000000000000000000000000006
:100AF00000000000000000000000000000000000F6
:100B000000000000000000000000000000000000E5
:100B100000000000000000000000000000000000D5
:100B200000000000000000000000000000000000C5
:100B300000000000000000000000000000000000B5
:100B400000000000000000000000000000000000A5
:100B50000000000000000000000000000000000095
:100B60000000000000000000000000000000000085
:100B70000000000000000000000000000000000075
:100B80000000000000000000000000000000000065
:100B90000000000000000000000000000000000055
:100BA0000000000000000000000000000000000045
:100BB0000000000000000000000000000000000035
:100BC0000000000000000000000000000000000025
:100BD0000000000000000000000000000000000015
:100BE0000000000000000000000000000000000005
:100BF00000000000000000000000000000000000F5
:100C000000000000000000000000000000000000E4
:100C100000000000000000000000000000000000D4
:100C200000000000000000000000000000000000C4
:100C300000000000000000000000000000000000B4
:100C400000000000000000000000000000000000A4
:100C50000000000000000000000000000000000094
:100C60000000000000000000000000000000000084
:100C70000000000000000000000000000000000074
:100C80000000000000000000000000000000000064
:100C90000000000000000000000000000000000054
:100CA0000000000000000000000000000000000044
:100CB0000000000000000000000000000000000034
:100CC0000000000000000000000000000000000024
:100CD0000000000000000000000000000000000014
:100CE0000000000000000000000000000000000004
:100CF00000000000000000000000000000000000F4
:100D000000000000000000000000000000000000E3
:100D100000000000000000000000000000000000D3
:100D200000000000000000000000000000000000C3
:100D300000000000000000000000000000000000B3
:100D400000000000000000000000000000000000A3
:100D50000000000000000000000000000000000093
:100D60000000000000000000000000000000000083
:100D70000000000000000000000000000000000073
:100D80000000000000000000000000000000000063
:100D90000000000000000000010101010302020246
:100DA0007E000000000000000006020301010000B8
:100DB000000000003020202060404040C080808043
:100DC000000000000000000000000000008080C063
:100DD0004040000002020E083820E0000000000041
:100DE00000000000000000000F00000000000000F4
:100DF00000000000010101010302020206040404D4
:100E00000C080808181010103020202060404040C6
:100E1000C000000000000000008080808000000012
:100E200000000000000000000000000001010101BE
:100E30000000000000000000000000000000001E94
:100E400070C0808080000080F00000000000000181
:100E5000FF00000000000000000602030101010184
:100E60000C080808183060C00000000000000000F6
:100E7000000000000000000003000000000000006F
:100E800000000000000000071C302020604040608F
:100E90003C00000000000000000100000000008095
:100EA000000000000101010103020202060C18709B
:100EB000008080C040404040C080808080000000B2
:100EC00000000000000003060000000000F08000A9
:100ED0003F0000000000000000C060301010101043
:100EE000C080808080000000000000000000000F33
:100EF000181010103000000000000000FF808080FB
:100F000000000000000000FE0000000000000000E3
:100F100000000000FF0000000000000001010101CE
:100F2000010101010302020206041CF0800000001E
:100F300000000000000000000000000000000000B1
:100F40000700000000000000000000000000000F8B
:100F500038604040C08080C078000000000001037D
:100F6000FE00000000000000000000000000000083
:100F70000000000000000000010101010302020264
:100F8000001010103020202060404040C080808041
:100F900080000000000000000000000000000000D1
:100FA00000000000000000004000000001010101FD
:100FB000FC00000000000000000000000010101005
:100FC000000404040C080808F880808080000000F9
:100FD0000100000000000000060404040C080808DA
:100FE000F8000000000000000000000000003FE0EA
:100FF000004040C080808000000101010302020225
:00000001FF

View File

@@ -1,206 +0,0 @@
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
use ieee.numeric_std.all;
library work;
use work.pace_pkg.all;
use work.sdram_pkg.all;
use work.video_controller_pkg.all;
use work.project_pkg.all;
use work.platform_pkg.all;
use work.target_pkg.all;
entity target_top is
port
(
clock_30 : in std_logic;
clock_v : in std_logic;
clock_3p58 : in std_logic;
reset : in std_logic;
dn_addr : in std_logic_vector(15 downto 0);
dn_data : in std_logic_vector(7 downto 0);
dn_wr : in std_logic;
AUDIO : out signed(12 downto 0);
JOY : in std_logic_vector(7 downto 0);
JOY2 : in std_logic_vector(7 downto 0);
VGA_VBLANK : out std_logic;
VGA_HBLANK : out std_logic;
VGA_VS : out std_logic;
VGA_HS : out std_logic;
VGA_R : out std_logic_vector(3 downto 0);
VGA_G : out std_logic_vector(3 downto 0);
VGA_B : out std_logic_vector(3 downto 0)
);
end target_top;
architecture SYN of target_top is
signal clkrst_i : from_CLKRST_t;
signal buttons_i : from_BUTTONS_t;
signal switches_i : from_SWITCHES_t;
signal leds_o : to_LEDS_t;
signal inputs_i : from_INPUTS_t;
signal flash_i : from_FLASH_t;
signal flash_o : to_FLASH_t;
signal sram_i : from_SRAM_t;
signal sram_o : to_SRAM_t;
signal sdram_i : from_SDRAM_t;
signal sdram_o : to_SDRAM_t;
signal video_i : from_VIDEO_t;
signal video_o : to_VIDEO_t;
signal audio_i : from_AUDIO_t;
signal audio_o : to_AUDIO_t;
signal ser_i : from_SERIAL_t;
signal ser_o : to_SERIAL_t;
signal project_i : from_PROJECT_IO_t;
signal project_o : to_PROJECT_IO_t;
signal platform_i : from_PLATFORM_IO_t;
signal platform_o : to_PLATFORM_IO_t;
signal target_i : from_TARGET_IO_t;
signal target_o : to_TARGET_IO_t;
signal sound_data : std_logic_vector(7 downto 0);
begin
clkrst_i.clk(0)<=clock_30;
clkrst_i.clk(1)<=clock_v;
clkrst_i.arst <= reset;
clkrst_i.arst_n <= not clkrst_i.arst;
GEN_RESETS : for i in 0 to 3 generate
process (clkrst_i.clk(i), clkrst_i.arst)
variable rst_r : std_logic_vector(2 downto 0) := (others => '0');
begin
if clkrst_i.arst = '1' then
rst_r := (others => '1');
elsif rising_edge(clkrst_i.clk(i)) then
rst_r := rst_r(rst_r'left-1 downto 0) & '0';
end if;
clkrst_i.rst(i) <= rst_r(rst_r'left);
end process;
end generate GEN_RESETS;
inputs_i.jamma_n.coin(1) <= JOY(7);
inputs_i.jamma_n.p(1).start <= JOY(6);
inputs_i.jamma_n.coin(2) <= JOY2(7);
inputs_i.jamma_n.p(2).start <= JOY2(6);
inputs_i.jamma_n.p(1).up <= not JOY(3);
inputs_i.jamma_n.p(1).down <= not JOY(2);
inputs_i.jamma_n.p(1).left <= not JOY(1);
inputs_i.jamma_n.p(1).right <= not JOY(0);
inputs_i.jamma_n.p(1).button(1) <= not JOY(4);
inputs_i.jamma_n.p(1).button(2) <= not JOY(5);
inputs_i.jamma_n.p(1).button(3) <= '1';
inputs_i.jamma_n.p(1).button(4) <= '1';
inputs_i.jamma_n.p(1).button(5) <= '1';
inputs_i.jamma_n.p(2).up <= not JOY2(3);
inputs_i.jamma_n.p(2).down <= not JOY2(2);
inputs_i.jamma_n.p(2).left <= not JOY2(1);
inputs_i.jamma_n.p(2).right <= not JOY2(0);
inputs_i.jamma_n.p(2).button(1) <= not JOY2(4);
inputs_i.jamma_n.p(2).button(2) <= not JOY2(5);
inputs_i.jamma_n.p(2).button(3) <= '1';
inputs_i.jamma_n.p(2).button(4) <= '1';
inputs_i.jamma_n.p(2).button(5) <= '1';
-- not currently wired to any inputs
inputs_i.jamma_n.coin_cnt <= (others => '1');
--inputs_i.jamma_n.coin(2) <= '1';
inputs_i.jamma_n.service <= '1';
inputs_i.jamma_n.tilt <= '1';
inputs_i.jamma_n.test <= '1';
video_i.clk <= clkrst_i.clk(1); -- by convention
video_i.clk_ena <= '1';
video_i.reset <= clkrst_i.rst(1);
VGA_R <= video_o.rgb.r(9 downto 6);
VGA_G <= video_o.rgb.g(9 downto 6);
VGA_B <= video_o.rgb.b(9 downto 6);
VGA_HS <= video_o.hsync;
VGA_VS <= video_o.vsync;
VGA_HBLANK <= video_o.hblank;
VGA_VBLANK <= video_o.vblank;
pace_inst : entity work.pace
port map
(
-- clocks and resets
clkrst_i => clkrst_i,
-- misc inputs and outputs
buttons_i => buttons_i,
switches_i => switches_i,
leds_o => open,
-- controller inputs
inputs_i => inputs_i,
-- external ROM/RAM
flash_i => flash_i,
flash_o => flash_o,
sram_i => sram_i,
sram_o => sram_o,
sdram_i => sdram_i,
sdram_o => sdram_o,
-- VGA video
video_i => video_i,
video_o => video_o,
-- sound
audio_i => audio_i,
audio_o => audio_o,
-- SPI (flash)
spi_i.din => '0',
spi_o => open,
-- serial
ser_i => ser_i,
ser_o => ser_o,
sound_data_o => sound_data,
dn_addr => dn_addr,
dn_data => dn_data,
dn_wr => dn_wr,
-- custom i/o
project_i => project_i,
project_o => project_o,
platform_i => platform_i,
platform_o => platform_o,
target_i => target_i,
target_o => target_o
);
moon_patrol_sound_board : entity work.moon_patrol_sound_board
port map(
clock_3p58 => clock_3p58,
reset => reset,
clock_30 => clock_30,
dn_addr => dn_addr,
dn_data => dn_data,
dn_wr => dn_wr,
select_sound => sound_data,
audio_out => AUDIO
);
end SYN;

310
common/CPU/T80/k580vi53.v Normal file
View File

@@ -0,0 +1,310 @@
//
// K580VI53 timer implementation
//
// Copyright (c) 2016 Sorgelig
//
//
// This source file is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published
// by the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This source file is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
//
// altera message_off 10240
`default_nettype none
module k580vi53
(
// CPU bus
input reset,
input clk_sys,
input [1:0] addr,
input [7:0] din,
output [7:0] dout,
input wr,
input rd,
// Timer signals
input [2:0] clk_timer,
input [2:0] gate,
output [2:0] out,
output [2:0] sound_active
);
wire [7:0] dout0;
wire [7:0] dout1;
wire [7:0] dout2;
assign dout = dout0 & dout1 & dout2;
timer t0(reset, clk_sys, clk_timer[0], din, dout0, wr && (addr == 3) && (din[7:6] == 0), wr && (addr == 0), rd && (addr == 0), gate[0], out[0], sound_active[0]);
timer t1(reset, clk_sys, clk_timer[1], din, dout1, wr && (addr == 3) && (din[7:6] == 1), wr && (addr == 1), rd && (addr == 1), gate[1], out[1], sound_active[1]);
timer t2(reset, clk_sys, clk_timer[2], din, dout2, wr && (addr == 3) && (din[7:6] == 2), wr && (addr == 2), rd && (addr == 2), gate[2], out[2], sound_active[2]);
endmodule
module timer
(
input reset,
input clk_sys,
input clk_timer,
input [7:0] din,
output [7:0] dout,
input wr_cw,
input wr,
input rd,
input gate,
output reg out,
output reg sound_active
);
reg [7:0] q;
reg [7:0] cw;
reg [15:0] counter;
reg [15:0] ld_count;
reg [7:0] load;
reg pause;
reg stop1;
assign dout = q;
always @(posedge clk_sys) begin
reg [15:0] l_counter;
reg msbw, msbr; // according to Siemens doc, read and write have indepenent msb flag.
reg latched;
reg old_wr_cw, old_wr, old_rd;
old_wr_cw <= wr_cw;
old_wr <= wr;
old_rd <= rd;
if(!old_wr_cw && wr_cw) begin
msbw <=0;
msbr <=0;
if(!din[5:4]) begin
if(!latched) begin
latched <=1;
l_counter <= counter;
end
end else begin
cw <= din;
latched <=0;
stop1 <=1;
pause<=1;
end
end
if(!old_wr && wr) begin
case(cw[5:4])
1: begin // high speed mode
ld_count[7:0] <= check(din);
ld_count[15:8] <= 0;
stop1 <=0;
load <=load + 1'd1;
pause <=0;
end
2: begin // low precision mode
ld_count[7:0] <= 0;
ld_count[15:8] <= check(din);
stop1 <=0;
load <=load + 1'd1;
pause <=0;
end
default: begin // full mode
if(msbw) ld_count[15:8] <= check(din);
else ld_count[7:0] <= check(din);
msbw <= ~msbw;
pause <= ~msbw;
if(msbw) begin
stop1 <=0;
load <=load + 1'd1;
end
end
endcase
end
if(!old_rd && rd) begin
casex({latched, msbr, cw[5:4]})
4'b0X01: q <=counter[7:0];
4'b0X10: q <=counter[15:8];
4'b0011: q <=counter[7:0];
4'b0111: q <=counter[15:8];
4'b1X01: begin q <=l_counter[7:0]; latched <=0; end
4'b1X10: begin q <=l_counter[15:8]; latched <=0; end
4'b1011: q <=l_counter[7:0];
4'b1111: begin q <=l_counter[15:8]; latched <=0; end
endcase
msbr <= ~msbr;
end
if(!rd || reset) q <= 255;
if(reset) begin
stop1 <=1;
ld_count <=0;
cw <= 0;
end
end
function [15:0] minus1;
input [15:0] value;
begin
if(!cw[0]) minus1 = value-1'd1;
else begin
minus1 = value;
if(!minus1[3:0]) begin
minus1[3:0] = 9;
if(!minus1[7:4]) begin
minus1[7:4] = 9;
if(!minus1[11:8]) begin
minus1[11:8] = 9;
if(!minus1[15:12]) begin
minus1[15:12] = 9;
end else minus1[15:12] = minus1[15:12]-1'd1;
end else minus1[11:8] = minus1[11:8]-1'd1;
end else minus1[7:4] = minus1[7:4]-1'd1;
end else minus1[3:0] = minus1[3:0]-1'd1;
end
end
endfunction
function [7:0] check;
input [7:0] value;
begin
if(!cw[0]) check = value;
else begin
check[3:0] = (value[3:0]>9) ? 4'd9 : value[3:0];
check[7:4] = (value[7:4]>9) ? 4'd9 : value[7:4];
end;
end
endfunction
reg stop2;
wire stop = stop1 | stop2;
//
// With bugs implemented:
//
// M0,M1,M4,M5 - counter doesn't stop at the end but wrap around instead.
//
// M1,M5 - setting of Control Word doesn't reset counter.
// Counter continue to count old value after ccounter register is set.
//
always @(posedge clk_sys) begin
reg [7:0] old_load;
reg old_gate;
reg start, count_en, m3state;
reg [7:0] stop_delay;
reg old_clk;
// cannot treat it as clock enable because timer clock
// can be fed from output of other timer
old_clk <= clk_timer;
if(old_clk & ~clk_timer) begin
stop2 <= stop1;
old_load <= load;
old_gate <= gate;
start <= stop;
// Assume sound is generated by mode 3 and mode 0(DAC emulation).
sound_active <= (!cw[3:1] || (cw[2:1] == 2'b11)) && !stop;
casex(cw[3:1])
3'b000: if(stop) begin out <=0; count_en <=0; end
else begin
if(start || (old_load != load)) begin
counter <= ld_count;
out <=0;
count_en <=1;
end else if(!pause && gate) begin
counter <= minus1(counter);
if(counter == 1) begin
out <=1;
count_en <=0;
end
end
end
3'b001: if(stop) begin out <=1; count_en <=0; end
else begin
if(!old_gate & gate) begin
counter <= ld_count;
out <=0;
count_en <=1;
end else begin
counter <= minus1(counter);
if((counter == 1) && count_en) begin
out <=1;
count_en <=0;
end
end
end
3'bX10: if(stop || !gate) out <=1;
else begin
if(start || (!old_gate & gate) || (counter <= 1)) begin
counter <=ld_count;
out <=1;
end else begin
counter <= minus1(counter);
if(counter == 2) out <=0;
end
end
3'bX11: if(stop || !gate) begin out <=1; m3state <=1; end
else begin
if(start || (!old_gate & gate) || (counter <= 2)) begin
counter <=ld_count;
out <= m3state;
m3state <= ~m3state;
end else begin
counter <= !counter[0] ? minus1(minus1(counter)) : out ? minus1(counter) : minus1(minus1(minus1(counter)));
end
end
3'b100: if(stop) begin out <=1; count_en <=0; end
else begin
out <=1;
if(start) begin
counter <=ld_count;
count_en <=1;
end else if(gate) begin
counter <= minus1(counter);
if((counter == 1) && count_en) begin
out <=0;
count_en <=0;
end
end
end
3'b101: if(stop) begin out <=1; count_en <=0; end
else begin
out <=1;
if(!old_gate & gate) begin
counter <=ld_count;
out <=1;
count_en <=1;
end else begin
counter <= minus1(counter);
if((counter == 1) && count_en) begin
out <=0;
count_en <=0;
end
end
end
endcase
end
end
endmodule

225
common/IO/A6532.vhd Normal file
View File

@@ -0,0 +1,225 @@
-- A6532 RAM-I/O-Timer (RIOT)
-- Copyright 2006, 2010 Retromaster
--
-- This file is part of A2601.
--
-- A2601 is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation, either version 3 of the License,
-- or any later version.
--
-- A2601 is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with A2601. If not, see <http://www.gnu.org/licenses/>.
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
entity ramx8 is
generic(addr_width : integer := 7);
port(clk: in std_logic;
r: in std_logic;
d_in: in std_logic_vector(7 downto 0);
d_out: out std_logic_vector(7 downto 0);
a: in std_logic_vector(addr_width - 1 downto 0));
end ramx8;
architecture arch of ramx8 is
type ram_type is array (0 to 2**addr_width - 1) of
std_logic_vector(7 downto 0);
signal ram: ram_type;
begin
process (clk, r, a)
begin
if (clk'event and clk = '1') then
if (r = '1') then
d_out <= ram(to_integer(unsigned(a)));
else
ram(to_integer(unsigned(a))) <= d_in;
end if;
end if;
end process;
end arch;
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity A6532 is
port(clk: in std_logic;
ph2_en: in std_logic;
r: in std_logic;
rs: in std_logic;
cs: in std_logic;
irq: out std_logic;
d: inout std_logic_vector(7 downto 0) := "ZZZZZZZZ";
pa: inout std_logic_vector(7 downto 0);
pb: inout std_logic_vector(7 downto 0);
pa7: in std_logic;
a: in std_logic_vector(6 downto 0));
end A6532;
architecture arch of A6532 is
signal pa_reg: std_logic_vector(7 downto 0) := "00000000";
signal pb_reg: std_logic_vector(7 downto 0) := "00000000";
signal pa_ddr: std_logic_vector(7 downto 0) := "00000000";
signal pb_ddr: std_logic_vector(7 downto 0) := "00000000";
signal pa_in: std_logic_vector(7 downto 0);
signal pb_in: std_logic_vector(7 downto 0);
signal timer: std_logic_vector(7 downto 0) := "00000000";
signal timer_write: std_logic;
signal timer_read: std_logic;
signal timer_intr: std_logic := '0';
signal timer_intvl: std_logic_vector(1 downto 0) := "11";
signal timer_dvdr: std_logic_vector(10 downto 0) := "00000000001";
signal timer_inc: std_logic;
signal timer_irq_en: std_logic := '0';
signal edge_pol: std_logic := '0';
signal edge_irq_en: std_logic := '0';
signal edge_intr_lo: std_logic := '0';
signal edge_intr_hi: std_logic := '0';
signal edge_intr: std_logic;
signal intr_read: std_logic;
signal ram_d_out: std_logic_vector(7 downto 0);
signal ram_r: std_logic;
begin
io: for i in 0 to 7 generate
-- TEMPORARY FIX
pa(i) <= pa_reg(i) when pa_ddr(i) = '1' else 'Z';
pb(i) <= pb_reg(i) when pb_ddr(i) = '1' else 'Z';
--pa(i) <= 'Z';
--pb(i) <= 'Z';
pa_in(i) <= pa(i);
pb_in(i) <= pb(i) when pb_ddr(i) = '0' else pb_reg(i);
end generate;
ram: work.ramx8 port map(clk, ram_r, d, ram_d_out, a);
ram_r <= (not rs and r) or rs or not cs;
timer_write <= (not r) and rs and a(2) and a(4) and cs;
timer_read <= r and rs and a(2) and (not a(0)) and cs;
intr_read <= r and rs and a(0) and a(2) and cs;
irq <= not ((timer_intr and timer_irq_en) or (edge_intr and edge_irq_en));
edge_intr <= edge_intr_lo when edge_pol = '0' else edge_intr_hi;
process(clk, ph2_en, cs, r, rs, a, ram_d_out, pa_in, pa_ddr, pb_in, pb_ddr, timer, timer_intr, edge_intr)
begin
if r = '1' then
if (cs = '0') then
d <= "ZZZZZZZZ";
elsif rs = '0' then
d <= ram_d_out;
elsif a(2) = '0' then
case a(1 downto 0) is
when "00" =>
d <= pa_in;
when "01" =>
d <= pa_ddr;
when "10" =>
d <= pb_in;
when "11" =>
d <= pb_ddr;
when others =>
null;
end case;
elsif a(0) = '0' then
d <= timer;
elsif a(0) = '1' then
d <= timer_intr & edge_intr & "000000";
else
d <= "--------";
end if;
else
d <= "ZZZZZZZZ";
if (clk'event and clk = '1' and cs = '1' and ph2_en = '1') then
if (rs = '1') then
if a(2) = '0' then
case a(1 downto 0) is
when "00" =>
--pa_reg <= d;
when "01" =>
pa_ddr <= d;
when "10" =>
pb_reg <= d;
when "11" =>
pb_ddr <= d;
when others =>
null;
end case;
elsif a(4) = '0' then
edge_pol <= a(0);
edge_irq_en <= a(1);
end if;
end if;
end if;
end if;
end process;
process(pa7, intr_read)
begin
if (intr_read = '1') then
edge_intr_lo <= '0';
elsif (pa7'event and pa7 = '1') then
edge_intr_lo <= '1';
end if;
if (intr_read = '1') then
edge_intr_hi <= '0';
elsif (pa7'event and pa7 = '0') then
edge_intr_hi <= '1';
end if;
end process;
with timer_intvl select timer_inc <=
timer_dvdr(0) when "00",
timer_dvdr(3) when "01",
timer_dvdr(6) when "10",
timer_dvdr(10) when "11",
'-' when others;
process(clk, ph2_en)
begin
if (clk'event and clk = '1' and ph2_en = '1') then
if (timer_inc = '1') then
timer_dvdr <= "00000000001";
else
timer_dvdr <= timer_dvdr + 1;
end if;
if (timer_write = '1') then
timer <= d - 1;
timer_intvl <= a(1 downto 0);
timer_irq_en <= a(3);
timer_dvdr <= "00000000001";
elsif (timer_intr = '0') then
timer <= timer - timer_inc;
elsif (not (timer = X"00")) then
timer <= timer - 1;
end if;
if (timer = X"00" and timer_inc = '1' and timer_intr = '0' and timer_write = '0') then
timer_intr <= '1';
elsif (timer_read = '1' or timer_write = '1') then
timer_intr <= '0';
end if;
end if;
end process;
end arch;

View File

@@ -0,0 +1,512 @@
FFF4
FFF8
FFFE
0004
000B
0010
0012
0010
000A
0001
FFF5
FFE9
FFE0
FFDD
FFE2
FFF0
0004
001C
0032
0040
0041
0033
0015
FFED
FFC2
FF9E
FF8C
FF91
FFB2
FFEC
0033
007A
00B0
00C5
00AE
006B
0004
FF8D
FF1E
FED2
FEC2
FEFA
FF79
002A
00EF
019B
0204
0205
018C
009F
FF5E
FE03
FCD7
FC29
FC3F
FD48
FF51
0240
05D2
09A8
0D4E
1050
124B
12FB
124B
1050
0D4E
09A8
05D2
0240
FF51
FD48
FC3F
FC29
FCD7
FE03
FF5E
009F
018C
0205
0204
019B
00EF
002A
FF79
FEFA
FEC2
FED2
FF1E
FF8D
0004
006B
00AE
00C5
00B0
007A
0033
FFEC
FFB2
FF91
FF8C
FF9E
FFC2
FFED
0015
0033
0041
0040
0032
001C
0004
FFF0
FFE2
FFDD
FFE0
FFE9
FFF5
0001
000A
0010
0012
0010
000B
0004
FFFE
FFF8
FFF4
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000

View File

@@ -0,0 +1,3 @@
set_global_assignment -name VERILOG_FILE [file join $::quartus(qip_path) "jtframe_dcrm.v"]
set_global_assignment -name VERILOG_FILE [file join $::quartus(qip_path) "jtframe_fir.v"]
set_global_assignment -name VERILOG_FILE [file join $::quartus(qip_path) "jtframe_jt49_filters.v"]

View File

@@ -0,0 +1,69 @@
/* This file is part of JT49.
JT49 is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
JT49 is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with JT49. If not, see <http://www.gnu.org/licenses/>.
Author: Jose Tejada Gomez. Twitter: @topapate
Version: 1.0
Date: 25-11-2020
*/
// This is pretty much a copy of jt49_dcrm2
// DC removal filter
// input is unsigned
// output is signed
module jtframe_dcrm #(parameter
SW = 8,
SIGNED_INPUT = 0
)(
input rst,
input clk,
input sample,
input [SW-1:0] din,
output signed [SW-1:0] dout
);
localparam DW=10; // width of the decimal portion
reg signed [SW+DW:0] integ, exact, error;
//reg signed [2*(9+DW)-1:0] mult;
// wire signed [SW+DW:0] plus1 = { {SW+DW{1'b0}},1'b1};
reg signed [SW:0] pre_dout;
// reg signed [SW+DW:0] dout_ext;
reg signed [SW:0] q;
always @(*) begin
exact = integ+error;
q = exact[SW+DW:DW];
pre_dout = { SIGNED_INPUT ? din[SW-1] : 1'b0, din } - q;
//dout_ext = { pre_dout, {DW{1'b0}} };
//mult = dout_ext;
end
assign dout = pre_dout[SW-1:0];
always @(posedge clk)
if( rst ) begin
integ <= {SW+DW+1{1'b0}};
error <= {SW+DW+1{1'b0}};
end else if( sample ) begin
/* verilator lint_off WIDTH */
integ <= integ + pre_dout; //mult[SW+DW*2:DW];
/* verilator lint_on WIDTH */
error <= exact-{q, {DW{1'b0}}};
end
endmodule

View File

@@ -0,0 +1,106 @@
/* This file is part of JTFRAME.
JTFRAME program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
JTFRAME program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with JTFRAME. If not, see <http://www.gnu.org/licenses/>.
Author: Jose Tejada Gomez. Twitter: @topapate
Version: 1.0
Date: 22-11-2020
*/
// Generic FIR filter for stereo signals
// Max 127 coefficients
// Parameters
// KMAX = number of coefficients (8 bit value)
// COEFFS = hex file with filter coefficients
module jtframe_fir(
input rst,
input clk,
input sample,
input signed [15:0] l_in,
input signed [15:0] r_in,
output reg signed [15:0] l_out,
output reg signed [15:0] r_out
);
parameter [6:0] KMAX = 7'd68;
parameter COEFFS = "filter.hex";
reg signed [15:0] ram[0:511]; // dual port RAM
reg [6:0] pt_wr, pt_rd, cnt;
reg st;
reg signed [35:0] acc_l, acc_r;
reg signed [15:0] coeff;
reg signed [31:0] p_l, p_r;
function signed [35:0] ext;
input signed [31:0] p;
ext = { {4{p[31]}}, p };
endfunction
function [6:0] loop_inc;
input [6:0] s;
loop_inc = s == KMAX-7'd1 ? 7'd0 : s+7'd1;
endfunction
function signed [15:0] sat;
input [35:0] a;
sat = a[35:30] == {6{a[29]}} ? a[29:14] : { a[35], {15{~a[35]}} };
endfunction
always@(posedge clk, posedge rst) begin
if( rst ) begin
l_out <= 16'd0;
r_out <= 16'd0;
pt_rd <= 7'd0;
pt_wr <= 7'd0;
cnt <= 7'd0;
acc_l <= 36'd0;
acc_r <= 36'd0;
p_l <= 32'd0;
p_r <= 32'd0;
end else begin
if( sample ) begin
pt_rd <= pt_wr;
cnt <= 0;
ram[ { 2'd1, pt_wr } ] <= l_in;
ram[ { 2'd2, pt_wr } ] <= r_in;
pt_wr <= loop_inc( pt_wr );
acc_l <= 36'd0;
acc_r <= 36'd0;
p_l <= 32'd0;
p_r <= 32'd0;
st <= 0;
end else begin
if( cnt < KMAX ) begin
st <= ~st;
if( st == 0 ) begin
coeff <= ram[ {2'd0, cnt } ];
end else begin
p_l <= ram[ {2'd1, pt_rd } ] * coeff;
p_r <= ram[ {2'd2, pt_rd } ] * coeff;
acc_l <= acc_l + ext(p_l);
acc_r <= acc_r + ext(p_r);
cnt <= cnt+7'd1;
pt_rd <= loop_inc( pt_rd );
end
end else begin
l_out <= sat(acc_l);
r_out <= sat(acc_r);
end
end
end
end
initial begin
$readmemh( COEFFS, ram );
end
endmodule

View File

@@ -0,0 +1,60 @@
/* This file is part of JTFRAME.
JTFRAME program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
JTFRAME program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with JTFRAME. If not, see <http://www.gnu.org/licenses/>.
Author: Jose Tejada Gomez. Twitter: @topapate
Version: 1.0
Date: 25-11-2020
*/
module jtframe_jt49_filters(
input rst,
input clk,
input [ 9:0] din0,
input [ 9:0] din1,
input [ 9:0] din2,
input sample,
output signed [15:0] dout
);
localparam W=11,WD=16-W;
wire signed [W-1:0] dcrm_snd;
reg [W-1:0] base_snd;
wire signed [ 15:0] dcrm16 = { dcrm_snd, dcrm_snd[W-2:W-WD-1] };
//assign dout = dcrm16;
always @(posedge clk, posedge rst ) begin
if( rst ) begin
base_snd <= {W{1'd0}};
end else if(sample) begin
base_snd <= { {W-10{1'b0}}, din0} + { {W-10{1'b0}}, din1} + { {W-10{1'b0}}, din2};
end
end
jtframe_dcrm #(.SW(W)) u_dcrm(
.rst ( rst ),
.clk ( clk ),
.sample ( sample ),
.din ( base_snd ),
.dout ( dcrm_snd )
);
jtframe_fir #(.KMAX(126),.COEFFS("firjt49.hex")) u_fir(
.rst ( rst ),
.clk ( clk ),
.sample ( sample ),
.l_in ( dcrm16 ),
.r_in ( 16'd0 ),
.l_out ( dout ),
.r_out ( )
);
endmodule