mirror of
https://github.com/Gehstock/Mist_FPGA.git
synced 2026-03-25 01:36:08 +00:00
add BlackWidow Project files
This commit is contained in:
6
Arcade_MiST/Atari Vector/BlackWidow_MiST/BlackWidow.qpf
Normal file
6
Arcade_MiST/Atari Vector/BlackWidow_MiST/BlackWidow.qpf
Normal file
@@ -0,0 +1,6 @@
|
||||
DATE = "19:48:06 May 24, 2017"
|
||||
QUARTUS_VERSION = "16.0.2"
|
||||
|
||||
# Revisions
|
||||
|
||||
PROJECT_REVISION = "BlackWidow"
|
||||
216
Arcade_MiST/Atari Vector/BlackWidow_MiST/BlackWidow.qsf
Normal file
216
Arcade_MiST/Atari Vector/BlackWidow_MiST/BlackWidow.qsf
Normal file
@@ -0,0 +1,216 @@
|
||||
# -------------------------------------------------------------------------- #
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
# -------------------------------------------------------------------------- #
|
||||
#
|
||||
# Quartus II 64-Bit
|
||||
# Version 13.1.4 Build 182 03/12/2014 SJ Web Edition
|
||||
# Date created = 16:03:28 October 01, 2019
|
||||
#
|
||||
# -------------------------------------------------------------------------- #
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
# 1) The default values for assignments are stored in the file:
|
||||
# DigDugII_assignment_defaults.qdf
|
||||
# If this file doesn't exist, see file:
|
||||
# assignment_defaults.qdf
|
||||
#
|
||||
# 2) Altera recommends that you do not modify this file. This
|
||||
# file is updated automatically by the Quartus II software
|
||||
# and any changes you make may be lost or overwritten.
|
||||
#
|
||||
# -------------------------------------------------------------------------- #
|
||||
|
||||
|
||||
|
||||
# Project-Wide Assignments
|
||||
# ========================
|
||||
set_global_assignment -name ORIGINAL_QUARTUS_VERSION 16.0.2
|
||||
set_global_assignment -name LAST_QUARTUS_VERSION 13.1
|
||||
set_global_assignment -name PROJECT_CREATION_TIME_DATE "19:48:06 MAY 24,2017"
|
||||
set_global_assignment -name PRE_FLOW_SCRIPT_FILE "quartus_sh:rtl/build_id.tcl"
|
||||
set_global_assignment -name PROJECT_OUTPUT_DIRECTORY output_files
|
||||
|
||||
# Pin & Location Assignments
|
||||
# ==========================
|
||||
set_location_assignment PIN_7 -to LED
|
||||
set_location_assignment PIN_54 -to CLOCK_27
|
||||
set_location_assignment PIN_144 -to VGA_R[5]
|
||||
set_location_assignment PIN_143 -to VGA_R[4]
|
||||
set_location_assignment PIN_142 -to VGA_R[3]
|
||||
set_location_assignment PIN_141 -to VGA_R[2]
|
||||
set_location_assignment PIN_137 -to VGA_R[1]
|
||||
set_location_assignment PIN_135 -to VGA_R[0]
|
||||
set_location_assignment PIN_133 -to VGA_B[5]
|
||||
set_location_assignment PIN_132 -to VGA_B[4]
|
||||
set_location_assignment PIN_125 -to VGA_B[3]
|
||||
set_location_assignment PIN_121 -to VGA_B[2]
|
||||
set_location_assignment PIN_120 -to VGA_B[1]
|
||||
set_location_assignment PIN_115 -to VGA_B[0]
|
||||
set_location_assignment PIN_114 -to VGA_G[5]
|
||||
set_location_assignment PIN_113 -to VGA_G[4]
|
||||
set_location_assignment PIN_112 -to VGA_G[3]
|
||||
set_location_assignment PIN_111 -to VGA_G[2]
|
||||
set_location_assignment PIN_110 -to VGA_G[1]
|
||||
set_location_assignment PIN_106 -to VGA_G[0]
|
||||
set_location_assignment PIN_136 -to VGA_VS
|
||||
set_location_assignment PIN_119 -to VGA_HS
|
||||
set_location_assignment PIN_65 -to AUDIO_L
|
||||
set_location_assignment PIN_80 -to AUDIO_R
|
||||
set_location_assignment PIN_105 -to SPI_DO
|
||||
set_location_assignment PIN_88 -to SPI_DI
|
||||
set_location_assignment PIN_126 -to SPI_SCK
|
||||
set_location_assignment PIN_127 -to SPI_SS2
|
||||
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_location_assignment PIN_49 -to SDRAM_A[0]
|
||||
set_location_assignment PIN_44 -to SDRAM_A[1]
|
||||
set_location_assignment PIN_42 -to SDRAM_A[2]
|
||||
set_location_assignment PIN_39 -to SDRAM_A[3]
|
||||
set_location_assignment PIN_4 -to SDRAM_A[4]
|
||||
set_location_assignment PIN_6 -to SDRAM_A[5]
|
||||
set_location_assignment PIN_8 -to SDRAM_A[6]
|
||||
set_location_assignment PIN_10 -to SDRAM_A[7]
|
||||
set_location_assignment PIN_11 -to SDRAM_A[8]
|
||||
set_location_assignment PIN_28 -to SDRAM_A[9]
|
||||
set_location_assignment PIN_50 -to SDRAM_A[10]
|
||||
set_location_assignment PIN_30 -to SDRAM_A[11]
|
||||
set_location_assignment PIN_32 -to SDRAM_A[12]
|
||||
set_location_assignment PIN_83 -to SDRAM_DQ[0]
|
||||
set_location_assignment PIN_79 -to SDRAM_DQ[1]
|
||||
set_location_assignment PIN_77 -to SDRAM_DQ[2]
|
||||
set_location_assignment PIN_76 -to SDRAM_DQ[3]
|
||||
set_location_assignment PIN_72 -to SDRAM_DQ[4]
|
||||
set_location_assignment PIN_71 -to SDRAM_DQ[5]
|
||||
set_location_assignment PIN_69 -to SDRAM_DQ[6]
|
||||
set_location_assignment PIN_68 -to SDRAM_DQ[7]
|
||||
set_location_assignment PIN_86 -to SDRAM_DQ[8]
|
||||
set_location_assignment PIN_87 -to SDRAM_DQ[9]
|
||||
set_location_assignment PIN_98 -to SDRAM_DQ[10]
|
||||
set_location_assignment PIN_99 -to SDRAM_DQ[11]
|
||||
set_location_assignment PIN_100 -to SDRAM_DQ[12]
|
||||
set_location_assignment PIN_101 -to SDRAM_DQ[13]
|
||||
set_location_assignment PIN_103 -to SDRAM_DQ[14]
|
||||
set_location_assignment PIN_104 -to SDRAM_DQ[15]
|
||||
set_location_assignment PIN_58 -to SDRAM_BA[0]
|
||||
set_location_assignment PIN_51 -to SDRAM_BA[1]
|
||||
set_location_assignment PIN_85 -to SDRAM_DQMH
|
||||
set_location_assignment PIN_67 -to SDRAM_DQML
|
||||
set_location_assignment PIN_60 -to SDRAM_nRAS
|
||||
set_location_assignment PIN_64 -to SDRAM_nCAS
|
||||
set_location_assignment PIN_66 -to SDRAM_nWE
|
||||
set_location_assignment PIN_59 -to SDRAM_nCS
|
||||
set_location_assignment PIN_33 -to SDRAM_CKE
|
||||
set_location_assignment PIN_43 -to SDRAM_CLK
|
||||
|
||||
# Classic Timing Assignments
|
||||
# ==========================
|
||||
set_global_assignment -name MIN_CORE_JUNCTION_TEMP 0
|
||||
set_global_assignment -name MAX_CORE_JUNCTION_TEMP 85
|
||||
set_global_assignment -name TIMEQUEST_DO_CCPP_REMOVAL ON
|
||||
set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS ON
|
||||
|
||||
# Analysis & Synthesis Assignments
|
||||
# ================================
|
||||
set_global_assignment -name FAMILY "Cyclone III"
|
||||
set_global_assignment -name DEVICE_FILTER_PIN_COUNT 144
|
||||
set_global_assignment -name DEVICE_FILTER_SPEED_GRADE 8
|
||||
set_global_assignment -name TOP_LEVEL_ENTITY BlackWidow_MiST
|
||||
set_global_assignment -name VERILOG_INPUT_VERSION SYSTEMVERILOG_2005
|
||||
set_global_assignment -name VERILOG_SHOW_LMF_MAPPING_MESSAGES OFF
|
||||
|
||||
# Fitter Assignments
|
||||
# ==================
|
||||
set_global_assignment -name DEVICE EP3C25E144C8
|
||||
set_global_assignment -name CYCLONEIII_CONFIGURATION_SCHEME "PASSIVE SERIAL"
|
||||
set_global_assignment -name CRC_ERROR_OPEN_DRAIN OFF
|
||||
set_global_assignment -name FORCE_CONFIGURATION_VCCIO ON
|
||||
set_global_assignment -name STRATIX_DEVICE_IO_STANDARD "3.3-V LVTTL"
|
||||
set_global_assignment -name CYCLONEII_RESERVE_NCEO_AFTER_CONFIGURATION "USE AS REGULAR IO"
|
||||
set_global_assignment -name RESERVE_DATA0_AFTER_CONFIGURATION "USE AS REGULAR IO"
|
||||
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"
|
||||
|
||||
# Assembler Assignments
|
||||
# =====================
|
||||
set_global_assignment -name USE_CONFIGURATION_DEVICE OFF
|
||||
set_global_assignment -name GENERATE_RBF_FILE ON
|
||||
|
||||
# SignalTap II Assignments
|
||||
# ========================
|
||||
set_global_assignment -name ENABLE_SIGNALTAP OFF
|
||||
set_global_assignment -name USE_SIGNALTAP_FILE stp1.stp
|
||||
|
||||
# Power Estimation Assignments
|
||||
# ============================
|
||||
set_global_assignment -name POWER_PRESET_COOLING_SOLUTION "23 MM HEAT SINK WITH 200 LFPM AIRFLOW"
|
||||
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
|
||||
set_global_assignment -name OUTPUT_IO_TIMING_NEAR_END_VMEAS "HALF VCCIO" -fall
|
||||
set_global_assignment -name OUTPUT_IO_TIMING_FAR_END_VMEAS "HALF SIGNAL SWING" -rise
|
||||
set_global_assignment -name OUTPUT_IO_TIMING_FAR_END_VMEAS "HALF SIGNAL SWING" -fall
|
||||
|
||||
# ---------------------------
|
||||
# start ENTITY(DigDugII_mist)
|
||||
|
||||
# start DESIGN_PARTITION(Top)
|
||||
# ---------------------------
|
||||
|
||||
# Incremental Compilation Assignments
|
||||
# ===================================
|
||||
|
||||
# end DESIGN_PARTITION(Top)
|
||||
# -------------------------
|
||||
|
||||
# end ENTITY(DigDugII_mist)
|
||||
# -------------------------
|
||||
set_global_assignment -name VHDL_INPUT_VERSION VHDL_1993
|
||||
set_global_assignment -name VHDL_SHOW_LMF_MAPPING_MESSAGES OFF
|
||||
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 SYSTEMVERILOG_FILE rtl/BlackWidow_MiST.sv
|
||||
set_global_assignment -name VHDL_FILE rtl/bwidow_top.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/bwidow.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/bwidow_dw.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/avg.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/vector_drawer.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/pokey.vhd
|
||||
set_global_assignment -name VERILOG_FILE rtl/p2ram.v
|
||||
set_global_assignment -name VHDL_FILE rtl/pgmrom.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/vecrom.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/earom.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/roms/bwidow_vec_rom4.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/roms/bwidow_vec_rom3.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/roms/bwidow_vec_rom2.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/roms/bwidow_vec_rom1.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/roms/bwidow_pgm_rom6.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/roms/bwidow_pgm_rom5.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/roms/bwidow_pgm_rom4.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/roms/bwidow_pgm_rom3.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/roms/bwidow_pgm_rom2.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/roms/bwidow_pgm_rom1.vhd
|
||||
set_global_assignment -name VHDL_FILE rtl/gen_ram.vhd
|
||||
set_global_assignment -name VERILOG_FILE rtl/pll.v
|
||||
set_global_assignment -name QIP_FILE ../../../common/CPU/T65/T65.qip
|
||||
set_global_assignment -name QIP_FILE ../../../common/mist/mist.qip
|
||||
set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top
|
||||
38
Arcade_MiST/Atari Vector/BlackWidow_MiST/clean.bat
Normal file
38
Arcade_MiST/Atari Vector/BlackWidow_MiST/clean.bat
Normal file
@@ -0,0 +1,38 @@
|
||||
@echo off
|
||||
del /s *.bak
|
||||
del /s *.orig
|
||||
del /s *.rej
|
||||
del /s *~
|
||||
rmdir /s /q db
|
||||
rmdir /s /q incremental_db
|
||||
rmdir /s /q output_files
|
||||
rmdir /s /q simulation
|
||||
rmdir /s /q greybox_tmp
|
||||
rmdir /s /q hc_output
|
||||
rmdir /s /q .qsys_edit
|
||||
rmdir /s /q hps_isw_handoff
|
||||
rmdir /s /q sys\.qsys_edit
|
||||
rmdir /s /q sys\vip
|
||||
cd sys
|
||||
for /d %%i in (*_sim) do rmdir /s /q "%%~nxi"
|
||||
cd ..
|
||||
for /d %%i in (*_sim) do rmdir /s /q "%%~nxi"
|
||||
del build_id.v
|
||||
del c5_pin_model_dump.txt
|
||||
del PLLJ_PLLSPE_INFO.txt
|
||||
del /s *.qws
|
||||
del /s *.ppf
|
||||
del /s *.ddb
|
||||
del /s *.csv
|
||||
del /s *.cmp
|
||||
del /s *.sip
|
||||
del /s *.spd
|
||||
del /s *.bsf
|
||||
del /s *.f
|
||||
del /s *.sopcinfo
|
||||
del /s *.xml
|
||||
del /s new_rtl_netlist
|
||||
del /s old_rtl_netlist
|
||||
del /s PLLJ_PLLSPE_INFO.txt
|
||||
|
||||
pause
|
||||
234
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/BlackWidow_MiST.sv
Normal file
234
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/BlackWidow_MiST.sv
Normal file
@@ -0,0 +1,234 @@
|
||||
module BlackWidow_MiST(
|
||||
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/*,
|
||||
|
||||
output [12:0] SDRAM_A,
|
||||
inout [15:0] SDRAM_DQ,
|
||||
output SDRAM_DQML,
|
||||
output SDRAM_DQMH,
|
||||
output SDRAM_nWE,
|
||||
output SDRAM_nCAS,
|
||||
output SDRAM_nRAS,
|
||||
output SDRAM_nCS,
|
||||
output [1:0] SDRAM_BA,
|
||||
output SDRAM_CLK,
|
||||
output SDRAM_CKE
|
||||
*/
|
||||
);
|
||||
|
||||
`include "rtl\build_id.v"
|
||||
|
||||
localparam CONF_STR = {
|
||||
"BLACKWIDOW;;",
|
||||
"O12,Scanlines,None,CRT 25%,CRT 50%,CRT 75%;",
|
||||
"O3,Test,Off,On;",
|
||||
// "O45,Max Start Level,13,21,37,53;",
|
||||
// "O67,Lives,3,4,5,6;",
|
||||
// "O89,Difficulty,Easy,Medium,Hard,Demo;",
|
||||
// "OAB,Extra Spider,20k,30k,40k,None;",
|
||||
"T0,Reset;",
|
||||
"V,v1.00.",`BUILD_DATE
|
||||
};
|
||||
|
||||
assign LED = 1;
|
||||
assign AUDIO_R = AUDIO_L;
|
||||
|
||||
wire clk_50, clk_25, clk_12, clk_6, locked;
|
||||
pll pll(
|
||||
.inclk0(CLOCK_27),
|
||||
.c0(clk_50),
|
||||
.c1(clk_25),
|
||||
.c2(clk_12),
|
||||
.c3(clk_6),
|
||||
.locked(locked)
|
||||
);
|
||||
|
||||
wire [31:0] status;
|
||||
wire [1:0] buttons;
|
||||
wire [1:0] switches;
|
||||
wire [7:0] joystick_0;
|
||||
wire [7:0] joystick_1;
|
||||
wire scandoublerD;
|
||||
wire ypbpr;
|
||||
wire hs, vs;
|
||||
wire hb, vb;
|
||||
wire blankn = ~(hb | vb);
|
||||
wire [3:0] r, g, b;
|
||||
wire vgade;
|
||||
wire [7:0] audio;
|
||||
wire key_strobe;
|
||||
wire key_pressed;
|
||||
wire [7:0] key_code;
|
||||
//this must go to sdram
|
||||
wire [18:0] vram_write_addr;
|
||||
wire [3:0] vram_write_data;
|
||||
wire [18:0] vram_read_addr;
|
||||
wire [3:0] vram_read_data;
|
||||
wire vram_wren;
|
||||
/*
|
||||
sdram sdram (
|
||||
.SDRAM_DQ(SDRAM_DQ),
|
||||
.SDRAM_A(SDRAM_A),
|
||||
.SDRAM_DQML(SDRAM_DQML),
|
||||
.SDRAM_DQMH(SDRAM_DQMH),
|
||||
.SDRAM_BA(SDRAM_BA),
|
||||
.SDRAM_nCS(SDRAM_nCS),
|
||||
.SDRAM_nWE(SDRAM_nWE),
|
||||
.SDRAM_nRAS(SDRAM_nRAS),
|
||||
.SDRAM_nCAS(SDRAM_nCAS),
|
||||
.SDRAM_CKE(SDRAM_CKE),
|
||||
.init(~locked), // init signal after FPGA config to initialize RAM
|
||||
.clk(clk_50), // sdram is accessed at up to 128MHz
|
||||
.clkref(clk_25), // reference clock to sync to
|
||||
.din(vram_write_data), // data input from chipset/cpu
|
||||
.dout(vram_read_data), // data output to chipset/cpu
|
||||
.raddr(vram_read_addr), // 25 bit byte address
|
||||
.waddr(vram_write_addr), // 25 bit byte address
|
||||
.rd(~vram_wren), // cpu/chipset requests read
|
||||
.we(vram_wren)
|
||||
);*/
|
||||
|
||||
//reduced ram size
|
||||
|
||||
p2ram p2ram (
|
||||
.clock(clk_25),
|
||||
.data(vram_write_data),
|
||||
.rdaddress(vram_read_addr[14:0]),
|
||||
.wraddress(vram_write_addr[14:0]),
|
||||
.wren(vram_wren),
|
||||
.q(vram_read_data)
|
||||
);
|
||||
|
||||
wire [7:0] sw_d4 = {2'b00, 2'b00,1'b0,3'b000}; // will be do if i see enough
|
||||
wire [7:0] sw_b4 = {status[11:10],status[9:8],status[7:6], status[5:4]};
|
||||
wire [14:0] BUTTONS = ~{~btn_test, status[3], btn_coin, 1'b0, 1'b1, btn_two_players, btn_one_player, m_fire_down, m_fire_up, m_fire_left, m_fire_right, m_up, m_down, m_left, m_right};
|
||||
bwidow_top bwidow_top(
|
||||
.BUTTON(BUTTONS),
|
||||
.SELF_TEST_SWITCH_L(status[3]),
|
||||
.AUDIO_OUT(audio),
|
||||
.VIDEO_R_OUT(r),
|
||||
.VIDEO_G_OUT(g),
|
||||
.VIDEO_B_OUT(b),
|
||||
.HSYNC_OUT(hs),
|
||||
.VSYNC_OUT(vs),
|
||||
.VID_HBLANK(hb),
|
||||
.VID_VBLANK(vb),
|
||||
.SW_B4(sw_b4),
|
||||
.SW_D4(sw_d4),
|
||||
.RESET_L(~(status[0] | buttons[1])),
|
||||
.clk_6(clk_6),
|
||||
.clk_12(clk_12),
|
||||
.clk_25(clk_25),
|
||||
.vram_write_addr(vram_write_addr),
|
||||
.vram_write_data(vram_write_data),
|
||||
.vram_read_addr(vram_read_addr),
|
||||
.vram_read_data(vram_read_data),
|
||||
.vram_wren(vram_wren)
|
||||
);
|
||||
|
||||
mist_video #(.COLOR_DEPTH(4), .SD_HCNT_WIDTH(10)) mist_video(
|
||||
.clk_sys ( clk_25 ),
|
||||
.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(1),//scandoublerD ),
|
||||
.scanlines ( status[2:1] ),
|
||||
.ypbpr ( ypbpr )
|
||||
);
|
||||
|
||||
user_io #(.STRLEN(($size(CONF_STR)>>3)))user_io(
|
||||
.clk_sys (clk_25 ),
|
||||
.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 ),
|
||||
.key_strobe (key_strobe ),
|
||||
.key_pressed (key_pressed ),
|
||||
.key_code (key_code ),
|
||||
.joystick_0 (joystick_0 ),
|
||||
.joystick_1 (joystick_1 ),
|
||||
.status (status )
|
||||
);
|
||||
|
||||
dac #(
|
||||
.C_bits(8))
|
||||
dac(
|
||||
.clk_i(clk_25),
|
||||
.res_n_i(1),
|
||||
.dac_i(audio),
|
||||
.dac_o(AUDIO_L)
|
||||
);
|
||||
|
||||
wire m_up = btn_up | joystick_0[3] | joystick_1[3];
|
||||
wire m_down = btn_down | joystick_0[2] | joystick_1[2];
|
||||
wire m_left = btn_left | joystick_0[1] | joystick_1[1];
|
||||
wire m_right = btn_right | joystick_0[0] | joystick_1[0];
|
||||
|
||||
wire m_fire_down = btn_fire1 | joystick_0[4] | joystick_1[4];
|
||||
wire m_fire_up = btn_fire2 | joystick_0[5] | joystick_1[5];
|
||||
wire m_fire_left = btn_fire1 | joystick_0[4] | joystick_1[4];
|
||||
wire m_fire_right = btn_fire2 | joystick_0[5] | joystick_1[5];
|
||||
|
||||
reg btn_one_player = 0;
|
||||
reg btn_two_players = 0;
|
||||
reg btn_left = 0;
|
||||
reg btn_right = 0;
|
||||
reg btn_down = 0;
|
||||
reg btn_up = 0;
|
||||
reg btn_fire1 = 0;
|
||||
reg btn_fire2 = 0;
|
||||
reg btn_test = 0;
|
||||
|
||||
reg btn_coin = 0;
|
||||
|
||||
always @(posedge clk_25) begin
|
||||
reg old_state;
|
||||
old_state <= key_strobe;
|
||||
if(old_state != key_strobe) begin
|
||||
case(key_code)
|
||||
'h75: btn_up <= key_pressed; // up
|
||||
'h72: btn_down <= key_pressed; // down
|
||||
'h6B: btn_left <= key_pressed; // left
|
||||
'h74: btn_right <= key_pressed; // right
|
||||
'h76: btn_coin <= key_pressed; // ESC
|
||||
'h05: btn_one_player <= key_pressed; // F1
|
||||
'h04: btn_two_players <= key_pressed; // F2
|
||||
|
||||
// 'h11: btn_fire2 <= key_pressed; // alt
|
||||
// 'h29: btn_fire1 <= key_pressed; // Space
|
||||
|
||||
|
||||
'h2C: btn_test <= key_pressed; // T
|
||||
endcase
|
||||
end
|
||||
end
|
||||
|
||||
endmodule
|
||||
319
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/avg.vhd
Normal file
319
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/avg.vhd
Normal file
@@ -0,0 +1,319 @@
|
||||
--Atari (Analog) Vector Generator
|
||||
--This implementation tries to duplicate the functionality, not the hardware.
|
||||
--It doesn't use the 4-bit vector micro-instruction rom. It's compatible with
|
||||
--the Tempest AVG, which uses the same micro-instruction ROM.
|
||||
--ToDo: Make an implementation that does use the ROM so we can adapt it easily to other games.
|
||||
|
||||
-- Black Widow arcade hardware implemented in an FPGA
|
||||
-- (C) 2012 Jeroen Domburg (jeroen AT spritesmods.com)
|
||||
--
|
||||
-- This 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.
|
||||
--
|
||||
-- This 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
|
||||
library IEEE;
|
||||
use IEEE.STD_LOGIC_1164.ALL;
|
||||
use IEEE.STD_LOGIC_ARITH.ALL;
|
||||
use IEEE.STD_LOGIC_UNSIGNED.ALL;
|
||||
|
||||
entity avg is
|
||||
Port ( cpu_data_in : out STD_LOGIC_VECTOR (7 downto 0);
|
||||
cpu_data_out : in STD_LOGIC_VECTOR (7 downto 0);
|
||||
cpu_addr : in STD_LOGIC_VECTOR (13 downto 0);
|
||||
cpu_cs_l : in STD_LOGIC;
|
||||
cpu_rw_l : in STD_LOGIC;
|
||||
vgrst : in STD_LOGIC;
|
||||
vggo : in STD_LOGIC;
|
||||
halted : out STD_LOGIC;
|
||||
xout : out STD_LOGIC_VECTOR (9 downto 0);
|
||||
yout : out STD_LOGIC_VECTOR (9 downto 0);
|
||||
zout : out STD_LOGIC_VECTOR (7 downto 0);
|
||||
rgbout : out STD_LOGIC_VECTOR (2 downto 0);
|
||||
dbg : out std_logic_vector(15 downto 0);
|
||||
clken: in STD_LOGIC;
|
||||
clk : in STD_LOGIC
|
||||
);
|
||||
end avg;
|
||||
|
||||
-- Opcodes stored as lo-hi in 8bit memory.
|
||||
-- Opcode Hex Binary
|
||||
-- Draw relative vector. 0x00 000YYYYY YYYYYYYY IIIXXXXX XXXXXXXX
|
||||
-- Halt 0x20 00100000 00000000
|
||||
-- Draw short relative vector 0x40 010YYYYY IIIXXXXX
|
||||
-- New color/intensity 0x60 0110URGB IIIIIIII
|
||||
-- New scale 0x70 0111USSS SSSSSSSS
|
||||
-- Center 0x80 10000000 00000000
|
||||
-- Jump to subroutine 0xA0 101AAAAA AAAAAAAA
|
||||
-- Return from subroutine 0xC0 11000000 00000000
|
||||
-- Jump to new address 0xE0 111AAAAA AAAAAAAA
|
||||
|
||||
|
||||
architecture Behavioral of avg is
|
||||
type stackarraytype is array (natural range <>) of std_logic_vector(13 downto 0);
|
||||
type statetype is (FETCHINSLO, FETCHINSHI, EXECINS, FETCHOPHI, FETCHOPLO, DRAWVECLONG,
|
||||
DRAWVECSHORT, WAITVECDONE, ISHALTED, SETCOLOR, SETSCALE, CENTER,
|
||||
PUSHPCFORJUMP, POPPC, JUMP);
|
||||
signal pc: STD_LOGIC_VECTOR(13 downto 0);
|
||||
signal instruction: STD_LOGIC_VECTOR(15 downto 0);
|
||||
signal operand: STD_LOGIC_VECTOR(15 downto 0);
|
||||
signal state: statetype;
|
||||
signal stack: stackarraytype(3 downto 0);
|
||||
signal sp: STD_LOGIC_VECTOR(1 downto 0);
|
||||
signal vecram_dout: STD_LOGIC_VECTOR(7 downto 0);
|
||||
signal vecram_din: STD_LOGIC_VECTOR(7 downto 0);
|
||||
signal vecrom_dout: STD_LOGIC_VECTOR(7 downto 0);
|
||||
signal vecram_cs_l: STD_LOGIC;
|
||||
signal vecram_rw_l: STD_LOGIC;
|
||||
signal memory_din: STD_LOGIC_VECTOR(7 downto 0);
|
||||
signal memory_addr: STD_LOGIC_VECTOR(13 downto 0);
|
||||
-- signal rom_addr: STD_LOGIC_VECTOR(13 downto 0);
|
||||
signal vec_scale: STD_LOGIC_VECTOR(12 downto 0);
|
||||
signal vec_dx: STD_LOGIC_VECTOR(12 downto 0);
|
||||
signal vec_dy: STD_LOGIC_VECTOR(12 downto 0);
|
||||
signal vec_zero: STD_LOGIC;
|
||||
signal vec_draw: STD_LOGIC;
|
||||
signal vec_done: STD_LOGIC;
|
||||
signal retryRead: STD_LOGIC;
|
||||
signal intensity: STD_LOGIC_VECTOR(7 downto 0);
|
||||
signal intens_mod: STD_LOGIC_VECTOR(2 downto 0);
|
||||
signal rgb: STD_LOGIC_VECTOR(2 downto 0);
|
||||
begin
|
||||
|
||||
mypgmram : entity work.gen_ram
|
||||
generic map( dWidth => 8, aWidth => 11)
|
||||
port map(
|
||||
clk => clk,
|
||||
we => (not vecram_rw_l) and (not vecram_cs_l),
|
||||
addr => memory_addr(10 downto 0),
|
||||
d => vecram_din,
|
||||
q => vecram_dout
|
||||
);
|
||||
|
||||
|
||||
myvecrom: entity work.vecrom
|
||||
port map (
|
||||
addr => memory_addr,
|
||||
data => vecrom_dout,
|
||||
clk => clk
|
||||
);
|
||||
|
||||
vectordrawer: entity work.vector_drawer
|
||||
port map (
|
||||
clk => clk,
|
||||
clk_ena => clken,
|
||||
scale => vec_scale,
|
||||
rel_x => vec_dx,
|
||||
rel_y => vec_dy,
|
||||
zero => vec_zero,
|
||||
draw => vec_draw,
|
||||
done => vec_done,
|
||||
xout => xout,
|
||||
yout => yout
|
||||
);
|
||||
|
||||
process (clk) begin
|
||||
if clk'event and clk='1' and clken='1' then
|
||||
vec_zero<='0';
|
||||
vec_draw<='0';
|
||||
if vgrst='1' then
|
||||
pc<="00000000000000";
|
||||
instruction<=x"0000";
|
||||
state<=ISHALTED;
|
||||
sp<="00";
|
||||
rgb<="000";
|
||||
intensity<=(others=>'0');
|
||||
intens_mod<=(others=>'0');
|
||||
vec_dx<=(others=>'0');
|
||||
vec_dy<=(others=>'0');
|
||||
vec_scale<=(others=>'0');
|
||||
vec_zero<='1';
|
||||
vec_draw<='0';
|
||||
elsif state=EXECINS then
|
||||
if instruction(15 downto 13)="000" then --draw relative vector
|
||||
state<=FETCHOPLO;
|
||||
elsif instruction(15 downto 13)="001" then --halt
|
||||
state<=ISHALTED;
|
||||
elsif instruction(15 downto 13)="010" then --draw short
|
||||
state<=DRAWVECSHORT;
|
||||
elsif instruction(15 downto 12)="0110" then --new color
|
||||
state<=SETCOLOR;
|
||||
elsif instruction(15 downto 12)="0111" then --new scale
|
||||
state<=SETSCALE;
|
||||
elsif instruction(15 downto 13)="100" then --center
|
||||
state<=CENTER;
|
||||
elsif instruction(15 downto 13)="101" then --jump to subroutine
|
||||
state<=PUSHPCFORJUMP;
|
||||
elsif instruction(15 downto 13)="110" then --return from subroutine
|
||||
state<=POPPC;
|
||||
elsif instruction(15 downto 13)="111" then --jump to address
|
||||
state<=JUMP;
|
||||
end if;
|
||||
elsif state=DRAWVECLONG then
|
||||
vec_dy<=instruction(12 downto 0);
|
||||
vec_dx<=operand(12 downto 0);
|
||||
intens_mod<=operand(15 downto 13);
|
||||
vec_draw<='1';
|
||||
state<=WAITVECDONE;
|
||||
elsif state=DRAWVECSHORT then
|
||||
vec_dy(5 downto 1)<=instruction(12 downto 8);
|
||||
vec_dy(0)<='0';
|
||||
if instruction(12)='0' then
|
||||
vec_dy(12 downto 6)<="0000000";
|
||||
else
|
||||
vec_dy(12 downto 6)<="1111111";
|
||||
end if;
|
||||
vec_dx(5 downto 1)<=instruction(4 downto 0);
|
||||
vec_dx(0)<='0';
|
||||
if instruction(4)='0' then
|
||||
vec_dx(12 downto 6)<="0000000";
|
||||
else
|
||||
vec_dx(12 downto 6)<="1111111";
|
||||
end if;
|
||||
intens_mod<=instruction(7 downto 5);
|
||||
vec_draw<='1';
|
||||
state<=WAITVECDONE;
|
||||
elsif state=WAITVECDONE then
|
||||
if vec_done='1' then
|
||||
state<=FETCHINSLO;
|
||||
end if;
|
||||
elsif state=SETCOLOR then
|
||||
-- Valid for other arcade machines.
|
||||
-- intensity<=instruction(7 downto 0);
|
||||
-- rgb<=instruction(10 downto 8);
|
||||
-- Black Widow encodes the Z and color in the lowest 8 bits.
|
||||
intensity<=instruction(7 downto 4)&"0000";
|
||||
rgb<=instruction(2 downto 0);
|
||||
state<=FETCHINSLO;
|
||||
elsif state=SETSCALE then
|
||||
if instruction(10 downto 8)="000" then
|
||||
vec_scale<= '0' &(x"ff"-instruction(7 downto 0))&"0000";
|
||||
elsif instruction(10 downto 8)="001" then
|
||||
vec_scale<="00"&(x"ff"-instruction(7 downto 0))&"000";
|
||||
elsif instruction(10 downto 8)="010" then
|
||||
vec_scale<="000"&(x"ff"-instruction(7 downto 0))&"00";
|
||||
elsif instruction(10 downto 8)="011" then
|
||||
vec_scale<="0000"&(x"ff"-instruction(7 downto 0))&"0";
|
||||
elsif instruction(10 downto 8)="100" then
|
||||
vec_scale<="00000"&(x"ff"-instruction(7 downto 0));
|
||||
elsif instruction(10 downto 8)="101" then
|
||||
vec_scale<="00000"&(x"7f"-instruction(7 downto 1));
|
||||
elsif instruction(10 downto 8)="110" then
|
||||
vec_scale<="00000"&(x"3f"-instruction(7 downto 2));
|
||||
elsif instruction(10 downto 8)="111" then
|
||||
vec_scale<="00000"&(x"1f"-instruction(7 downto 3));
|
||||
end if;
|
||||
state<=FETCHINSLO;
|
||||
elsif state=CENTER then
|
||||
intens_mod<="000"; --blank
|
||||
vec_zero<='1';
|
||||
state<=WAITVECDONE;
|
||||
elsif state=PUSHPCFORJUMP then
|
||||
if (sp="00") then stack(0)<=pc; end if;
|
||||
if (sp="01") then stack(1)<=pc; end if;
|
||||
if (sp="10") then stack(2)<=pc; end if;
|
||||
if (sp="11") then stack(3)<=pc; end if;
|
||||
sp<=sp+"01";
|
||||
state<=JUMP;
|
||||
elsif state=JUMP then
|
||||
pc(13 downto 1)<=instruction(12 downto 0);
|
||||
pc(0)<='0';
|
||||
state<=FETCHINSLO;
|
||||
elsif state=POPPC then
|
||||
if (sp="01") then pc<=stack(0); end if;
|
||||
if (sp="10") then pc<=stack(1); end if;
|
||||
if (sp="11") then pc<=stack(2); end if;
|
||||
if (sp="00") then pc<=stack(3); end if;
|
||||
sp<=sp-"01";
|
||||
state<=FETCHINSLO;
|
||||
elsif state=ISHALTED then
|
||||
pc<=(others=>'0');
|
||||
if vggo='1' then state<=FETCHINSLO; end if;
|
||||
--No idea if the original implementation zeroed the beam and location, but I will.
|
||||
--It's easier on the CRT and deflection amps this way.
|
||||
rgb<="000";
|
||||
vec_zero<='1';
|
||||
--...and keep spinning here.
|
||||
--Memory-accessing things
|
||||
elsif cpu_cs_l='0' then
|
||||
retryRead<='1';
|
||||
elsif retryRead='1' then
|
||||
retryRead<='0';
|
||||
elsif state=FETCHINSLO then -- Start of instruction handling cycle.
|
||||
instruction(7 downto 0)<=memory_din;
|
||||
pc<=pc+"00000000000001";
|
||||
state<=FETCHINSHI;
|
||||
elsif state=FETCHINSHI then
|
||||
instruction(15 downto 8)<=memory_din;
|
||||
pc<=pc+"00000000000001";
|
||||
state<=EXECINS;
|
||||
elsif state=FETCHOPLO then
|
||||
operand(7 downto 0)<=memory_din;
|
||||
pc<=pc+"00000000000001";
|
||||
state<=FETCHOPHI;
|
||||
elsif state=FETCHOPHI then
|
||||
operand(15 downto 8)<=memory_din;
|
||||
pc<=pc+"00000000000001";
|
||||
state<=DRAWVECLONG;
|
||||
else
|
||||
state<=FETCHINSLO;
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
memory_din<=vecram_dout when memory_addr(13 downto 11)="000" else vecrom_dout;
|
||||
|
||||
process (clk) begin
|
||||
if clk'event and clk='1' then
|
||||
if cpu_cs_l='0' then
|
||||
--Cpu wants to access RAM
|
||||
vecram_rw_l<=cpu_rw_l;
|
||||
memory_addr<=cpu_addr;
|
||||
vecram_din<=cpu_data_out;
|
||||
if cpu_addr(13 downto 11)="000" then
|
||||
vecram_cs_l<='0';
|
||||
else
|
||||
vecram_cs_l<='1';
|
||||
end if;
|
||||
if cpu_addr(13 downto 11)="000" then
|
||||
cpu_data_in<=vecram_dout;
|
||||
else
|
||||
cpu_data_in<=vecrom_dout;
|
||||
end if;
|
||||
else
|
||||
--AVG has access.
|
||||
vecram_rw_l<='1';
|
||||
vecram_cs_l<='0';
|
||||
memory_addr<=pc;
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
dbg(15)<=clk;
|
||||
dbg(14)<=clken;
|
||||
dbg(13)<='0';
|
||||
dbg(12)<=retryRead;
|
||||
dbg(11)<=cpu_cs_l;
|
||||
dbg(10)<=cpu_rw_l;
|
||||
dbg(9)<=vecram_cs_l;
|
||||
dbg(8)<=vecram_rw_l;
|
||||
dbg(7 downto 4)<=memory_addr(3 downto 0);
|
||||
dbg(3 downto 0)<=vecram_din(3 downto 0);
|
||||
|
||||
halted<='1' when state=ISHALTED else '0';
|
||||
|
||||
--idiotic scheme for the intensity... thanks to the mame source for this line.
|
||||
zout<=intensity when intens_mod="001" else intens_mod&"00000";
|
||||
|
||||
rgbout <= rgb;
|
||||
end Behavioral;
|
||||
|
||||
35
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/build_id.tcl
Normal file
35
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/build_id.tcl
Normal file
@@ -0,0 +1,35 @@
|
||||
# ================================================================================
|
||||
#
|
||||
# Build ID Verilog Module Script
|
||||
# Jeff Wiencrot - 8/1/2011
|
||||
#
|
||||
# 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_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 "rtl/build_id.v"
|
||||
set outputFile [open $outputFileName "w"]
|
||||
|
||||
# Output the Verilog source
|
||||
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 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_Verilog
|
||||
306
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/bwidow.vhd
Normal file
306
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/bwidow.vhd
Normal file
@@ -0,0 +1,306 @@
|
||||
--=============================================================================--
|
||||
-- Black Widow logic. Everything from here should be implementation-agnostic.
|
||||
--===========================================================================--
|
||||
|
||||
-- Black Widow arcade hardware implemented in an FPGA
|
||||
-- (C) 2012 Jeroen Domburg (jeroen AT spritesmods.com)
|
||||
--
|
||||
-- This 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.
|
||||
--
|
||||
-- This 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all;
|
||||
use IEEE.STD_LOGIC_ARITH.ALL;
|
||||
use IEEE.STD_LOGIC_UNSIGNED.ALL;
|
||||
use ieee.numeric_std.all;
|
||||
|
||||
|
||||
entity bwidow is
|
||||
port(
|
||||
reset_h : in std_logic;
|
||||
clk : in std_logic; --12 MHz
|
||||
clk_25 : in std_logic;
|
||||
analog_sound_out : out std_logic_vector(7 downto 0);
|
||||
analog_x_out : out std_logic_vector(9 downto 0);
|
||||
analog_y_out : out std_logic_vector(9 downto 0);
|
||||
analog_z_out : out std_logic_vector(7 downto 0);
|
||||
BEAM_ENA : out std_logic;
|
||||
rgb_out : out std_logic_vector(2 downto 0);
|
||||
buttons : in std_logic_vector(14 downto 0);
|
||||
SW_B4 : in std_logic_vector(7 downto 0);
|
||||
SW_D4 : in std_logic_vector(7 downto 0);
|
||||
dbg : out std_logic_vector(15 downto 0)
|
||||
);
|
||||
end bwidow;
|
||||
|
||||
architecture Behaviour of bwidow is
|
||||
signal c_addr : std_logic_vector(23 downto 0);
|
||||
signal c_din : std_logic_vector(7 downto 0);
|
||||
signal c_dout : std_logic_vector(7 downto 0);
|
||||
signal c_rw_l : std_logic;
|
||||
signal c_irq_l : std_logic;
|
||||
signal avg_dout : std_logic_vector(7 downto 0);
|
||||
signal pgmrom_dout : std_logic_vector(7 downto 0);
|
||||
signal pgmram_dout : std_logic_vector(7 downto 0);
|
||||
signal pgmrom_addr : std_logic_vector(15 downto 0);
|
||||
signal pgmram_addr : std_logic_vector(10 downto 0);
|
||||
signal avgmem_addr : std_logic_vector(15 downto 0);
|
||||
signal earom_dout : std_logic_vector(7 downto 0);
|
||||
signal pokeya_dout : std_logic_vector(7 downto 0);
|
||||
signal pokeyb_dout : std_logic_vector(7 downto 0);
|
||||
signal pokeya_cs_l : std_logic;
|
||||
signal pokeyb_cs_l : std_logic;
|
||||
signal pgmram_cs_l : std_logic;
|
||||
signal avgmem_cs_l : std_logic;
|
||||
signal earom_write_l : std_logic;
|
||||
signal earom_con_l : std_logic;
|
||||
signal pokeya_audio : std_logic_vector(7 downto 0);
|
||||
signal pokeyb_audio : std_logic_vector(7 downto 0);
|
||||
signal latchin_a : std_logic_vector(7 downto 0);
|
||||
signal latchin_b : std_logic_vector(7 downto 0);
|
||||
signal latchin_c : std_logic_vector(7 downto 0);
|
||||
signal latchout : std_logic_vector(7 downto 0);
|
||||
signal cnt_3khz : std_logic_vector(8 downto 0);
|
||||
signal ena_1_5M : std_logic;
|
||||
signal reset_l : std_logic;
|
||||
signal avg_rst : std_logic;
|
||||
signal avg_go : std_logic;
|
||||
signal avg_halted : std_logic;
|
||||
signal avg_dbg : std_logic_vector(15 downto 0);
|
||||
signal clkdiv : std_logic_vector(2 downto 0);
|
||||
signal irqctr : std_logic_vector(3 downto 0);
|
||||
signal intack_l : std_logic;
|
||||
signal service_btnst : std_logic;
|
||||
begin
|
||||
pokeya: entity work.pokey
|
||||
port map (
|
||||
ADDR => c_addr(3 downto 0),
|
||||
DIN => c_dout,
|
||||
DOUT => pokeya_dout,
|
||||
DOUT_OE_L => open,
|
||||
RW_L => c_rw_l,
|
||||
CS => '1',
|
||||
CS_L => pokeya_cs_l,
|
||||
AUDIO_OUT => pokeya_audio,
|
||||
PIN => SW_D4, -- dip free play?
|
||||
ENA => ena_1_5M,
|
||||
CLK => clk
|
||||
);
|
||||
|
||||
pokeyb: entity work.pokey
|
||||
port map (
|
||||
ADDR => c_addr(3 downto 0),
|
||||
DIN => c_dout,
|
||||
DOUT => pokeyb_dout,
|
||||
DOUT_OE_L => open,
|
||||
RW_L => c_rw_l,
|
||||
CS => '1',
|
||||
CS_L => pokeyb_cs_l,
|
||||
AUDIO_OUT => pokeyb_audio,
|
||||
PIN => SW_B4,
|
||||
ENA => ena_1_5M,
|
||||
CLK => clk
|
||||
);
|
||||
|
||||
cpu: entity work.T65
|
||||
port map (
|
||||
Mode => "00",
|
||||
Res_n => reset_l,
|
||||
Enable => ena_1_5M,
|
||||
Clk => clk,
|
||||
Rdy => '1',
|
||||
Abort_n => '1',
|
||||
IRQ_n => c_irq_l,
|
||||
NMI_n => '1',
|
||||
SO_n => '1',
|
||||
R_W_n => c_rw_l,
|
||||
Sync => open,
|
||||
EF => open,
|
||||
MF => open,
|
||||
XF => open,
|
||||
ML_n => open,
|
||||
VP_n => open,
|
||||
VDA => open,
|
||||
VPA => open,
|
||||
A => c_addr,
|
||||
DI => c_din,
|
||||
DO => c_dout
|
||||
);
|
||||
|
||||
mypgmrom: entity work.pgmrom
|
||||
port map (
|
||||
addr => pgmrom_addr(14 downto 0),
|
||||
data => pgmrom_dout,
|
||||
clk => clk
|
||||
);
|
||||
|
||||
--mypgmram: entity work.ram2k
|
||||
-- port map (
|
||||
-- addr => pgmram_addr,
|
||||
-- data_in => c_dout,
|
||||
-- data_out => pgmram_dout,
|
||||
-- ena => ena_1_5M, --doesn't work due to pipelining
|
||||
-- ena => '1',
|
||||
-- cs_l => pgmram_cs_l, -- no enable on Altera, hopefully this works
|
||||
-- rw_l => c_rw_l,
|
||||
-- clk => clk
|
||||
-- );
|
||||
|
||||
mypgmram : entity work.gen_ram
|
||||
generic map( dWidth => 8, aWidth => 11)
|
||||
port map(
|
||||
clk => clk,
|
||||
we => (not c_rw_l) and (not pgmram_cs_l),
|
||||
addr => pgmram_addr,
|
||||
d => c_dout,
|
||||
q => pgmram_dout
|
||||
);
|
||||
|
||||
myearom: entity work.earom
|
||||
port map (
|
||||
reset_l => reset_l,
|
||||
clk => clk,
|
||||
data_in => c_dout,
|
||||
data_out => earom_dout,
|
||||
addr => c_addr(5 downto 0),
|
||||
-- we_l => c_wr_l,
|
||||
write_l => earom_write_l,
|
||||
con_l => earom_con_l
|
||||
);
|
||||
|
||||
myavg: entity work.avg
|
||||
port map (
|
||||
clk => clk,
|
||||
clken => ena_1_5M,
|
||||
cpu_data_in => avg_dout,
|
||||
cpu_data_out => c_dout,
|
||||
cpu_addr => avgmem_addr(13 downto 0),
|
||||
cpu_cs_l => avgmem_cs_l,
|
||||
cpu_rw_l => c_rw_l,
|
||||
vgrst => avg_rst,
|
||||
vggo => avg_go,
|
||||
halted => avg_halted,
|
||||
xout => analog_x_out,
|
||||
yout => analog_y_out,
|
||||
zout => analog_z_out,
|
||||
rgbout => rgb_out,
|
||||
dbg => avg_dbg
|
||||
);
|
||||
|
||||
-- Memory decoding: CPU read
|
||||
c_din <= latchin_a when c_addr(15 downto 11)="10001" else
|
||||
latchin_b when c_addr(15 downto 11)="10000" else
|
||||
latchin_c when c_addr(15 downto 11)="01111" else
|
||||
earom_dout when c_addr(15 downto 11)="01110" else
|
||||
pokeyb_dout when c_addr(15 downto 11)="01101" else
|
||||
pokeya_dout when c_addr(15 downto 11)="01100" else
|
||||
avg_dout when c_addr(15 downto 12)="0101" else
|
||||
avg_dout when c_addr(15 downto 12)="0100" else
|
||||
avg_dout when c_addr(15 downto 12)="0011" else
|
||||
avg_dout when c_addr(15 downto 11)="00101" else
|
||||
avg_dout when c_addr(15 downto 11)="00100" else
|
||||
pgmram_dout when c_addr(15 downto 11)="00000" else
|
||||
pgmrom_dout when c_addr(15)='1' else
|
||||
"00000000";
|
||||
|
||||
-- Memory decoding: CPU writes
|
||||
pokeya_cs_l <= '0' when c_addr(15 downto 11)="01100" else '1';
|
||||
pokeyb_cs_l <= '0' when c_addr(15 downto 11)="01101" else '1';
|
||||
pgmram_cs_l <= '0' when c_addr(15 downto 11)="00000" else '1';
|
||||
avgmem_cs_l <= '0' when c_addr(15 downto 12)="0101" else
|
||||
'0' when c_addr(15 downto 12)="0100" else
|
||||
'0' when c_addr(15 downto 12)="0011" else
|
||||
'0' when c_addr(15 downto 11)="00101" else
|
||||
'0' when c_addr(15 downto 11)="00100" else '1';
|
||||
earom_write_l <= '0' when c_addr(15 downto 6)="1000100101" else '1';
|
||||
earom_con_l <= '0' when c_addr(15 downto 6)="1000100100" else '1';
|
||||
intack_l <= '0' when c_addr(15 downto 6)="1000100011" else '1';
|
||||
avg_go <= '1' when c_addr(15 downto 6)="1000100001" else '0';
|
||||
avg_rst <= '1' when c_addr(15 downto 6)="1000100010" else '0';
|
||||
latchout <= c_dout when c_addr(15 downto 12)="1000100000" and c_rw_l='0' else latchout;
|
||||
|
||||
-- dbg(15)<=clk;
|
||||
-- dbg(14)<=ena_1_5M;
|
||||
-- dbg(13)<=cnt_3khz(8);
|
||||
-- dbg(12)<=intack_l;
|
||||
-- dbg(11 downto 0)<=avg_dbg(15 downto 4);
|
||||
-- dbg<=c_addr(15 downto 0);
|
||||
-- dbg(7 downto 0)<=c_addr(7 downto 0);
|
||||
-- dbg(15 downto 8)<=pgmram_dout;
|
||||
dbg<=avg_dbg;
|
||||
|
||||
analog_sound_out<=(("0"&pokeya_audio(7 downto 1))+("0"&pokeyb_audio(7 downto 1)));
|
||||
|
||||
-- Memory decoding: offsets in address map
|
||||
pgmrom_addr<=c_addr(15 downto 0);
|
||||
-- avgmem_addr<=c_addr(15 downto 0)-x"002000";
|
||||
avgmem_addr<= c_addr(15 downto 0)-"10000000000000"; -- broken
|
||||
pgmram_addr(10)<=c_addr(10) xor latchout(2); --handle banksel
|
||||
pgmram_addr(9 downto 0)<=c_addr(9 downto 0);
|
||||
|
||||
--Misc stuff
|
||||
reset_l <= not reset_h;
|
||||
|
||||
--Latches
|
||||
--buttons(14 downto 0): SELFTEST, SA, COINAUX COINL COINR START2 START1 FD FU FL FR MU MD ML MR
|
||||
latchin_c(7)<=cnt_3khz(8);
|
||||
latchin_c(6)<=avg_halted;
|
||||
latchin_c(5)<='1';--buttons(14); -- self test?
|
||||
--latchin_c(4)<=buttons(14); -- self test? handled below
|
||||
latchin_c(3)<='1'; --nc
|
||||
latchin_c(2 downto 0)<=buttons(12 downto 10);
|
||||
latchin_b(7 downto 4)<="0000"; --option2-0, spare
|
||||
latchin_b(3 downto 0)<=buttons(3 downto 0);
|
||||
latchin_a(7)<='0'; --cabinet1
|
||||
latchin_a(6 downto 5)<=buttons(9 downto 8);
|
||||
latchin_a(4)<='0'; --spare
|
||||
latchin_a(3 downto 0)<=buttons(7 downto 4);
|
||||
|
||||
c_irq_l<=not(irqctr(3) and irqctr(2)); --triggers irq 250 times per second.
|
||||
|
||||
--Clock divider to generate the 1.5MHz enable signal. Also handles the 3KHz counter and 250Hz interrupt.
|
||||
process(clk) begin
|
||||
if clk'EVENT and clk='1' then
|
||||
clkdiv<=clkdiv+"001";
|
||||
if (clkdiv="000") then
|
||||
ena_1_5M<='1';
|
||||
cnt_3khz<=cnt_3khz+"000000001";
|
||||
if cnt_3KHz="000000000" and intack_l='1' and c_irq_l='1' then
|
||||
irqctr<=irqctr+"0001";
|
||||
end if;
|
||||
else
|
||||
ena_1_5M<='0';
|
||||
end if;
|
||||
end if;
|
||||
if intack_l='0' then
|
||||
irqctr<="0000";
|
||||
end if;
|
||||
end process;
|
||||
|
||||
--Handle service switch
|
||||
process(clk) begin
|
||||
if clk'EVENT and clk='1' then
|
||||
if reset_h='1' then
|
||||
latchin_c(4)<='1';
|
||||
elsif (service_btnst='1' and buttons(13)='0') then
|
||||
latchin_c(4)<=not latchin_c(4);
|
||||
end if;
|
||||
service_btnst<=buttons(13);
|
||||
end if;
|
||||
end process;
|
||||
|
||||
|
||||
BEAM_ENA <= ena_1_5m;
|
||||
|
||||
end Behaviour;
|
||||
|
||||
471
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/bwidow_dw.vhd
Normal file
471
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/bwidow_dw.vhd
Normal file
@@ -0,0 +1,471 @@
|
||||
--
|
||||
-- A simulation model of Asteroids Deluxe hardware
|
||||
-- Copyright (c) MikeJ - May 2004
|
||||
--
|
||||
-- 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
|
||||
--
|
||||
-- This code is not part of the original game.
|
||||
|
||||
-- Dave Wood (oldgit) Feb 2019
|
||||
|
||||
-- My smaller version (512 x 512 screen). This module takes the Vectors and beam intensisty and
|
||||
-- produces a double buffered raster graphics screen. The intensity was used to give a 'blue hue' as per the original game
|
||||
-- to the rocks and text but produces white for the ships.
|
||||
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all;
|
||||
use ieee.std_logic_arith.all;
|
||||
use ieee.std_logic_unsigned.all;
|
||||
|
||||
--use work.pkg_asteroids.all;
|
||||
|
||||
entity BWIDOW_DW is
|
||||
port (
|
||||
RESET : in std_logic;
|
||||
clk_25 : in std_logic;
|
||||
clk_6 : in std_logic;
|
||||
|
||||
X_VECTOR : in std_logic_vector(9 downto 0);
|
||||
Y_VECTOR : in std_logic_vector(9 downto 0);
|
||||
Z_VECTOR : in std_logic_vector(3 downto 0);
|
||||
RGB : in std_logic_vector(2 downto 0);
|
||||
BEAM_ON : in std_logic;
|
||||
BEAM_ENA : in std_logic;
|
||||
|
||||
VIDEO_R_OUT : out std_logic_vector(3 downto 0);
|
||||
VIDEO_G_OUT : out std_logic_vector(3 downto 0);
|
||||
VIDEO_B_OUT : out std_logic_vector(3 downto 0);
|
||||
HSYNC_OUT : out std_logic;
|
||||
VSYNC_OUT : out std_logic;
|
||||
VID_DE : out std_logic;
|
||||
VID_HBLANK : out std_logic;
|
||||
VID_VBLANK : out std_logic;
|
||||
|
||||
vram_write_addr : out std_logic_vector(18 downto 0);
|
||||
vram_write_data : out std_logic_vector(3 downto 0);
|
||||
vram_read_addr : out std_logic_vector(18 downto 0);
|
||||
vram_read_data : in std_logic_vector(3 downto 0);
|
||||
vram_wren : out std_logic
|
||||
|
||||
|
||||
);
|
||||
end;
|
||||
|
||||
architecture RTL of BWIDOW_DW is
|
||||
-- types & constants
|
||||
subtype Bus12 is std_logic_vector (11 downto 0);
|
||||
|
||||
constant V_FRONT_PORCH_START : Bus12 := x"1e0"; -- line 480
|
||||
constant V_SYNC_START : Bus12 := x"1ea"; -- line 490
|
||||
constant V_BACK_PORCH_START : Bus12 := x"1ec"; -- line 492
|
||||
constant LINE_PER_FRAME : Bus12 := x"20d"; -- 525 lines
|
||||
|
||||
constant H_FRONT_PORCH_START : Bus12 := x"280"; -- pixel 640
|
||||
constant H_SYNC_START : Bus12 := x"290"; -- pixel 656
|
||||
constant H_BACK_PORCH_START : Bus12 := x"2f0"; -- pixel 752
|
||||
constant PIXEL_PER_LINE : Bus12 := x"320"; -- 800 pixels
|
||||
|
||||
signal lcount : std_logic_vector(9 downto 0);
|
||||
signal pcount : std_logic_vector(10 downto 0);
|
||||
|
||||
signal hterm : boolean;
|
||||
signal vterm : boolean;
|
||||
signal v_sync : std_logic;
|
||||
signal h_sync : std_logic;
|
||||
signal v_blank : std_logic;
|
||||
signal h_blank : std_logic;
|
||||
signal raster_active : std_logic;
|
||||
|
||||
--
|
||||
signal beam_ena_t : std_logic_vector(2 downto 0);
|
||||
signal beam_load : std_logic;
|
||||
signal video_r : std_logic_vector(3 downto 0);
|
||||
signal video_g : std_logic_vector(3 downto 0);
|
||||
signal video_b : std_logic_vector(3 downto 0);
|
||||
|
||||
signal dw_addr : std_logic_vector(18 downto 0);
|
||||
|
||||
signal up_addr : std_logic_vector(17 downto 0);
|
||||
signal vid_out : std_logic_vector(3 downto 0);
|
||||
signal Y_Vid : std_logic_vector(8 downto 0);
|
||||
signal X_Vid : std_logic_vector(8 downto 0);
|
||||
signal Vid_data : std_logic_vector(3 downto 0);
|
||||
|
||||
signal dcount : std_logic_vector(2 downto 0);
|
||||
signal screen : std_logic_vector(0 downto 0);
|
||||
signal vcount : std_logic_vector(8 downto 0);
|
||||
signal hcount : std_logic_vector(8 downto 0);
|
||||
signal pxcount : std_logic_vector(8 downto 0);
|
||||
|
||||
begin
|
||||
|
||||
pixel_cnt : process(clk_25, RESET)
|
||||
variable vcnt_front_porch_start : boolean;
|
||||
variable hcnt_front_porch_start : boolean;
|
||||
begin
|
||||
if (RESET = '1') then
|
||||
hcount <= (others => '0');
|
||||
vcount <= (others => '0');
|
||||
|
||||
elsif rising_edge(clk_25) then
|
||||
|
||||
vcnt_front_porch_start := (vcount = 511);
|
||||
hcnt_front_porch_start := (hcount = 511);
|
||||
|
||||
if hcnt_front_porch_start then
|
||||
hcount <= (others => '0');
|
||||
else
|
||||
hcount <= hcount + "1";
|
||||
end if;
|
||||
|
||||
if hcnt_front_porch_start then
|
||||
if vcnt_front_porch_start then
|
||||
vcount <= (others => '0');
|
||||
|
||||
else
|
||||
vcount <= vcount + "1";
|
||||
end if;
|
||||
end if;
|
||||
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-- basic raster gen
|
||||
p_cnt_compare_comb : process(pcount,lcount)
|
||||
begin
|
||||
hterm <= (pcount = (PIXEL_PER_LINE(10 downto 0) - "1"));
|
||||
vterm <= (lcount = (LINE_PER_FRAME( 9 downto 0) - "1"));
|
||||
end process;
|
||||
|
||||
p_display_cnt : process(clk_25, RESET)
|
||||
begin
|
||||
if (RESET = '1') then
|
||||
pcount <= (others => '0');
|
||||
lcount <= (others => '0');
|
||||
dcount <= (others => '0');
|
||||
elsif rising_edge(clk_25) then
|
||||
if hterm then
|
||||
pcount <= (others => '0');
|
||||
else
|
||||
pcount <= pcount + "1";
|
||||
end if;
|
||||
|
||||
if pcount > 63 then
|
||||
pxcount <= pxcount + "1";
|
||||
raster_active <= '1';
|
||||
end if;
|
||||
if pcount > 575 then
|
||||
raster_active <= '0';
|
||||
pxcount <= "111111111";
|
||||
end if;
|
||||
|
||||
|
||||
if hterm then
|
||||
if vterm then
|
||||
lcount <= (others => '0');
|
||||
dcount <= dcount + "1" ;
|
||||
else
|
||||
lcount <= lcount + "1";
|
||||
end if;
|
||||
end if;
|
||||
|
||||
end if;
|
||||
end process;
|
||||
|
||||
p_vsync : process(clk_25, RESET)
|
||||
variable vcnt_eq_front_porch_start : boolean;
|
||||
variable vcnt_eq_sync_start : boolean;
|
||||
variable vcnt_eq_back_porch_start : boolean;
|
||||
begin
|
||||
if (RESET = '1') then
|
||||
v_sync <= '1';
|
||||
v_blank <= '0';
|
||||
elsif rising_edge(clk_25) then
|
||||
|
||||
vcnt_eq_front_porch_start := (lcount = (V_FRONT_PORCH_START(9 downto 0) - "1"));
|
||||
vcnt_eq_sync_start := (lcount = ( V_SYNC_START(9 downto 0) - "1"));
|
||||
vcnt_eq_back_porch_start := (lcount = ( V_BACK_PORCH_START(9 downto 0) - "1"));
|
||||
|
||||
if vcnt_eq_sync_start and hterm then
|
||||
v_sync <= '0';
|
||||
elsif vcnt_eq_back_porch_start and hterm then
|
||||
v_sync <= '1';
|
||||
end if;
|
||||
|
||||
if vcnt_eq_front_porch_start and hterm then
|
||||
v_blank <= '1';
|
||||
elsif vterm and hterm then
|
||||
v_blank <= '0';
|
||||
end if;
|
||||
|
||||
end if;
|
||||
end process;
|
||||
|
||||
p_hsync : process(clk_25, RESET)
|
||||
variable hcnt_eq_front_porch_start : boolean;
|
||||
variable hcnt_eq_sync_start : boolean;
|
||||
variable hcnt_eq_back_porch_start : boolean;
|
||||
begin
|
||||
if (RESET = '1') then
|
||||
h_sync <= '1';
|
||||
h_blank <= '1'; -- 0
|
||||
elsif rising_edge(clk_25) then
|
||||
hcnt_eq_front_porch_start := (pcount = ( H_FRONT_PORCH_START(10 downto 0) - "1"));
|
||||
hcnt_eq_sync_start := (pcount = ( H_SYNC_START(10 downto 0) - "1"));
|
||||
hcnt_eq_back_porch_start := (pcount = ( H_BACK_PORCH_START(10 downto 0) - "1"));
|
||||
|
||||
if hcnt_eq_sync_start then
|
||||
h_sync <= '0';
|
||||
elsif hcnt_eq_back_porch_start then
|
||||
h_sync <= '1';
|
||||
end if;
|
||||
|
||||
if hcnt_eq_front_porch_start then
|
||||
h_blank <= '1';
|
||||
elsif hterm then
|
||||
h_blank <= '0';
|
||||
end if;
|
||||
|
||||
end if;
|
||||
end process;
|
||||
|
||||
p_active_video : process(h_blank, v_blank, raster_active, lcount, pxcount)
|
||||
begin
|
||||
-- raster_active <= not(h_blank or v_blank);
|
||||
if raster_active = '1' then
|
||||
Y_Vid <= not (lcount(8 downto 0) and lcount(8 downto 0)) ;
|
||||
else
|
||||
Y_Vid <= "111111111";
|
||||
end if;
|
||||
if raster_active = '1' then
|
||||
X_Vid <= pxcount(8 downto 0);
|
||||
else
|
||||
X_Vid <= "111111111";
|
||||
end if;
|
||||
|
||||
end process;
|
||||
|
||||
p_video_out : process
|
||||
begin
|
||||
wait until rising_edge(clk_25);
|
||||
if raster_active = '1' then
|
||||
if (vid_out(3) = '1') then
|
||||
video_r <= "1111";
|
||||
else
|
||||
video_r <= "0000";
|
||||
end if;
|
||||
if (vid_out(2) = '1') then
|
||||
video_g <= "1111";
|
||||
else
|
||||
video_g <= "0000";
|
||||
end if;
|
||||
if (vid_out(1) = '1') then
|
||||
video_b <= "1111";
|
||||
else
|
||||
video_b <= "0000";
|
||||
end if;
|
||||
|
||||
-- case vid_out is
|
||||
-- when "0000" => video_r <= "0000";video_g <= "0000";video_b <= "0000";
|
||||
-- when "0001" => video_r <= "0001";video_g <= "0001";video_b <= "0001";
|
||||
-- when "0010" => video_r <= "0011";video_g <= "0011";video_b <= "0011";
|
||||
-- when "0011" => video_r <= "0011";video_g <= "0011";video_b <= "0011";
|
||||
-- when "0100" => video_r <= "0011";video_g <= "0011";video_b <= "0111";
|
||||
-- when "0101" => video_r <= "0011";video_g <= "0011";video_b <= "0111";
|
||||
-- when "0110" => video_r <= "0011";video_g <= "0011";video_b <= "0111";
|
||||
-- when "0111" => video_r <= "0011";video_g <= "0011";video_b <= "0111";
|
||||
-- when "1000" => video_r <= "0111";video_g <= "0111";video_b <= "0111";
|
||||
-- when "1001" => video_r <= "0111";video_g <= "0111";video_b <= "0111";
|
||||
-- when "1010" => video_r <= "0111";video_g <= "0111";video_b <= "0111";
|
||||
-- when "1011" => video_r <= "0111";video_g <= "0111";video_b <= "0111";
|
||||
-- when "1100" => video_r <= "1111";video_g <= "1111";video_b <= "1111";
|
||||
-- when "1101" => video_r <= "1111";video_g <= "1111";video_b <= "1111";
|
||||
-- when "1110" => video_r <= "1111";video_g <= "1111";video_b <= "1111";
|
||||
-- when others => video_r <= "1111";video_g <= "1111";video_b <= "1111";
|
||||
-- end case;
|
||||
VIDEO_R_OUT <= video_r;
|
||||
VIDEO_G_OUT <= video_g;
|
||||
VIDEO_B_OUT <= video_b;
|
||||
else -- blank
|
||||
VIDEO_R_OUT <= "0000";
|
||||
VIDEO_G_OUT <= "0000";
|
||||
VIDEO_B_OUT <= "0000";
|
||||
end if;
|
||||
VID_DE <= not(v_blank or h_blank);
|
||||
VSYNC_OUT <= v_sync;
|
||||
HSYNC_OUT <= h_sync;
|
||||
VID_HBLANK <= h_blank;
|
||||
VID_VBLANK <= v_blank;
|
||||
end process;
|
||||
|
||||
up_addr <= (Y_Vid(8 downto 0) & X_Vid(8 downto 0));
|
||||
|
||||
clear_ram : process(clk_25, RESET)
|
||||
variable state : integer range 0 to 4;
|
||||
variable beam_ena_r : std_logic := '0';
|
||||
|
||||
begin
|
||||
if RESET = '1' then
|
||||
beam_ena_r := '0';
|
||||
|
||||
elsif rising_edge(clk_25) then
|
||||
vram_wren <= '0' after 2 ns;
|
||||
|
||||
if dcount = "000" then
|
||||
screen <= "0";
|
||||
dw_addr <= "0" & ((Y_VECTOR(9 downto 1) ) & X_VECTOR(9 downto 1));
|
||||
if BEAM_ON = '1' and beam_ena_r = '0' and BEAM_ENA = '1' then
|
||||
if Z_VECTOR(3 downto 0) = "0000" then
|
||||
vid_data <= "0000";
|
||||
vram_wren <= '0';
|
||||
else
|
||||
--vid_data <= Z_VECTOR(3 downto 0);
|
||||
vid_data <= rgb & '0';
|
||||
vram_wren <= '1';
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
if dcount = "001" then
|
||||
screen <= "0";
|
||||
dw_addr <= "1" & (vcount ) & hcount;
|
||||
vid_data <= "0000";
|
||||
vram_wren <= '1';
|
||||
end if;
|
||||
if dcount = "010" then
|
||||
screen <= "0";
|
||||
dw_addr <= "0" & ((Y_VECTOR(9 downto 1) ) & X_VECTOR(9 downto 1));
|
||||
if BEAM_ON = '1' and beam_ena_r = '0' and BEAM_ENA = '1' then
|
||||
if Z_VECTOR(3 downto 0) = "0000" then
|
||||
vid_data <= "0000";
|
||||
vram_wren <= '0';
|
||||
else
|
||||
--vid_data <= Z_VECTOR(3 downto 0);
|
||||
vid_data <= rgb & '0';
|
||||
|
||||
vram_wren <= '1';
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
if dcount = "011" then
|
||||
screen <= "0";
|
||||
dw_addr <= "1" & ((Y_VECTOR(9 downto 1) ) & X_VECTOR(9 downto 1));
|
||||
if BEAM_ON = '1' and beam_ena_r = '0' and BEAM_ENA = '1' then
|
||||
if Z_VECTOR(3 downto 0) = "0000" then
|
||||
vid_data <= "0000";
|
||||
vram_wren <= '0';
|
||||
else
|
||||
--vid_data <= Z_VECTOR(3 downto 0);
|
||||
vid_data <= rgb & '0';
|
||||
vram_wren <= '1';
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
if dcount = "100" then
|
||||
screen <= "1";
|
||||
dw_addr <= "1" & ((Y_VECTOR(9 downto 1) ) & X_VECTOR(9 downto 1));
|
||||
if BEAM_ON = '1' and beam_ena_r = '0' and BEAM_ENA = '1' then
|
||||
if Z_VECTOR(3 downto 0) = "0000" then
|
||||
vid_data <= "0000";
|
||||
vram_wren <= '0';
|
||||
else
|
||||
--vid_data <= Z_VECTOR(3 downto 0);
|
||||
vid_data <= rgb & '0';
|
||||
vram_wren <= '1';
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
if dcount = "101" then
|
||||
screen <= "1";
|
||||
dw_addr <= "0" & (vcount ) & hcount;
|
||||
vid_data <= "0000";
|
||||
vram_wren <= '1';
|
||||
end if;
|
||||
if dcount = "110" then
|
||||
screen <= "1";
|
||||
dw_addr <= "1" & ((Y_VECTOR(9 downto 1) ) & X_VECTOR(9 downto 1));
|
||||
if BEAM_ON = '1' and beam_ena_r = '0' and BEAM_ENA = '1' then
|
||||
if Z_VECTOR(3 downto 0) = "0000" then
|
||||
vid_data <= "0000";
|
||||
vram_wren <= '0';
|
||||
else
|
||||
--vid_data <= Z_VECTOR(3 downto 0);
|
||||
vid_data <= rgb & '0';
|
||||
vram_wren <= '1';
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
if dcount = "111" then
|
||||
screen <= "1";
|
||||
dw_addr <= "0" & ((Y_VECTOR(9 downto 1) ) & X_VECTOR(9 downto 1));
|
||||
if BEAM_ON = '1' and beam_ena_r = '0' and BEAM_ENA = '1' then
|
||||
if Z_VECTOR(3 downto 0) = "0000" then
|
||||
vid_data <= "0000";
|
||||
vram_wren <= '0';
|
||||
else
|
||||
--vid_data <= Z_VECTOR(3 downto 0);
|
||||
vid_data <= rgb & '0';
|
||||
vram_wren <= '1';
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
beam_ena_r := beam_ena;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
|
||||
--video_rgb : work.dpram generic map (19,4)
|
||||
--port map
|
||||
--(
|
||||
-- clock_a => clk_25,
|
||||
-- wren_a => vram_wren,
|
||||
-- address_a => dw_addr(18 downto 0),
|
||||
-- data_a => vid_data,
|
||||
|
||||
-- clock_b => clk_25,
|
||||
-- address_b => (screen & up_addr),
|
||||
-- q_b => vid_out
|
||||
--);
|
||||
|
||||
vram_write_addr <= dw_addr(18 downto 0);
|
||||
vram_write_data <= vid_data;
|
||||
vram_read_addr <= screen & up_addr(17 downto 0);
|
||||
vid_out <= vram_read_data;
|
||||
|
||||
-- job done !
|
||||
end architecture RTL;
|
||||
210
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/bwidow_top.vhd
Normal file
210
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/bwidow_top.vhd
Normal file
@@ -0,0 +1,210 @@
|
||||
--
|
||||
-- A simulation model of Asteroids Deluxe hardware
|
||||
-- Copyright (c) MikeJ - May 2004
|
||||
--
|
||||
-- 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
|
||||
--
|
||||
|
||||
--
|
||||
-- Notes :
|
||||
--
|
||||
-- Button shorts input to ground when pressed
|
||||
--
|
||||
-- ToDo:
|
||||
-- Model sound effects for thump-thump, ship and saucer fire and saucer warble
|
||||
-- Add player control switching and screen flip for cocktail mode
|
||||
-- General cleanup
|
||||
|
||||
|
||||
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all;
|
||||
use ieee.std_logic_arith.all;
|
||||
use ieee.std_logic_unsigned.all;
|
||||
|
||||
entity BWIDOW_TOP is
|
||||
port (
|
||||
BUTTON : in std_logic_vector(14 downto 0); -- active low
|
||||
|
||||
SW_B4 : in std_logic_vector(7 downto 0);
|
||||
SW_D4 : in std_logic_vector(7 downto 0);
|
||||
AUDIO_OUT : out std_logic_vector(7 downto 0);
|
||||
SELF_TEST_SWITCH_L: in std_logic;
|
||||
|
||||
VIDEO_R_OUT : out std_logic_vector(3 downto 0);
|
||||
VIDEO_G_OUT : out std_logic_vector(3 downto 0);
|
||||
VIDEO_B_OUT : out std_logic_vector(3 downto 0);
|
||||
|
||||
HSYNC_OUT : out std_logic;
|
||||
VSYNC_OUT : out std_logic;
|
||||
VGA_DE : out std_logic;
|
||||
VID_HBLANK : out std_logic;
|
||||
VID_VBLANK : out std_logic;
|
||||
|
||||
|
||||
|
||||
RESET_L : in std_logic;
|
||||
|
||||
-- ref clock in
|
||||
clk_6 : in std_logic;
|
||||
clk_12 : in std_logic;
|
||||
clk_25 : in std_logic;
|
||||
vram_write_addr : out std_logic_vector(18 downto 0);
|
||||
vram_write_data : out std_logic_vector(3 downto 0);
|
||||
vram_read_addr : out std_logic_vector(18 downto 0);
|
||||
vram_read_data : in std_logic_vector(3 downto 0);
|
||||
vram_wren : out std_logic
|
||||
|
||||
);
|
||||
end;
|
||||
|
||||
architecture RTL of BWIDOW_TOP is
|
||||
|
||||
signal RAM_ADDR_A : std_logic_vector(18 downto 0);
|
||||
signal RAM_ADDR_B : std_logic_vector(15 downto 0); -- same as above
|
||||
signal RAM_WE_L : std_logic;
|
||||
signal RAM_ADV_L : std_logic;
|
||||
signal RAM_OE_L : std_logic;
|
||||
signal RAM_DO : std_logic_vector(31 downto 0);
|
||||
signal RAM_DI : std_logic_vector(31 downto 0);
|
||||
signal ram_we : std_logic;
|
||||
|
||||
signal reset_dll_h : std_logic;
|
||||
|
||||
signal delay_count : std_logic_vector(7 downto 0) := (others => '0');
|
||||
signal reset_6_l : std_logic;
|
||||
signal reset_6 : std_logic;
|
||||
|
||||
signal clk_cnt : std_logic_vector(2 downto 0) := "000";
|
||||
|
||||
signal x_vector : std_logic_vector(9 downto 0);
|
||||
signal y_vector : std_logic_vector(9 downto 0);
|
||||
signal z_vector : std_logic_vector(7 downto 0);
|
||||
signal beam_on : std_logic;
|
||||
signal beam_ena : std_logic;
|
||||
|
||||
signal ram_addr_int : std_logic_vector(18 downto 0);
|
||||
signal ram_we_l_int : std_logic;
|
||||
signal ram_adv_l_int : std_logic;
|
||||
signal ram_oe_l_int : std_logic;
|
||||
signal ram_dout_oe_l : std_logic;
|
||||
signal ram_dout_oe_l_reg : std_logic;
|
||||
signal ram_dout : std_logic_vector(31 downto 0);
|
||||
signal ram_dout_reg : std_logic_vector(31 downto 0);
|
||||
signal ram_din : std_logic_vector(31 downto 0);
|
||||
|
||||
signal rgb : STD_LOGIC_VECTOR(2 downto 0);
|
||||
|
||||
begin
|
||||
|
||||
--
|
||||
-- Note about clocks
|
||||
--
|
||||
-- (the original uses a 6.048 MHz clock, so 40 / 6 - slightly slower)
|
||||
--
|
||||
|
||||
reset_dll_h <= not RESET_L;
|
||||
reset_6 <= reset_dll_h;
|
||||
|
||||
p_delay : process(RESET_L, clk_6)
|
||||
begin
|
||||
if (RESET_L = '0') then
|
||||
delay_count <= x"00"; -- longer delay for cpu
|
||||
reset_6_l <= '0';
|
||||
elsif rising_edge(clk_6) then
|
||||
if (delay_count(7 downto 0) = (x"FF")) then
|
||||
delay_count <= (x"FF");
|
||||
reset_6_l <= '1';
|
||||
else
|
||||
delay_count <= delay_count + "1";
|
||||
reset_6_l <= '0';
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
mybwidow: entity work.bwidow port map (
|
||||
clk => clk_12,
|
||||
clk_25 => clk_25,
|
||||
reset_h => not reset_6_l,
|
||||
analog_sound_out => AUDIO_OUT,
|
||||
analog_x_out => x_vector,
|
||||
analog_y_out => y_vector,
|
||||
analog_z_out => z_vector,
|
||||
BEAM_ENA => beam_ena,
|
||||
rgb_out => rgb,
|
||||
dbg => open,
|
||||
buttons => button,
|
||||
SW_B4 => SW_B4,
|
||||
SW_D4 => SW_D4
|
||||
);
|
||||
|
||||
|
||||
u_DW : entity work.BWIDOW_DW
|
||||
port map (
|
||||
RESET => reset_6,
|
||||
clk_25 => clk_25,
|
||||
clk_6 => clk_6,
|
||||
|
||||
X_VECTOR => not x_vector(9) & x_vector(8 downto 0),
|
||||
Y_VECTOR => not y_vector(9) & y_vector(8 downto 0),
|
||||
--Z_VECTOR => z_vector(3 downto 0) or z_vector(7 downto 4),
|
||||
Z_VECTOR => z_vector(7 downto 4),
|
||||
RGB => rgb,
|
||||
--BEAM_ON => beam_on,
|
||||
BEAM_ENA => beam_ena,
|
||||
BEAM_ON => rgb(0) or rgb(1) or rgb(2),
|
||||
|
||||
VIDEO_R_OUT => VIDEO_R_OUT,
|
||||
VIDEO_G_OUT => VIDEO_G_OUT,
|
||||
VIDEO_B_OUT => VIDEO_B_OUT,
|
||||
HSYNC_OUT => HSYNC_OUT,
|
||||
VSYNC_OUT => VSYNC_OUT,
|
||||
VID_DE => VGA_DE,
|
||||
VID_HBLANK => VID_HBLANK,
|
||||
VID_VBLANK => VID_VBLANK,
|
||||
|
||||
vram_write_addr => vram_write_addr,
|
||||
vram_write_data => vram_write_data,
|
||||
vram_read_addr => vram_read_addr,
|
||||
vram_read_data => vram_read_data,
|
||||
vram_wren => vram_wren
|
||||
);
|
||||
|
||||
|
||||
end RTL;
|
||||
42
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/earom.vhd
Normal file
42
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/earom.vhd
Normal file
@@ -0,0 +1,42 @@
|
||||
|
||||
-- Black Widow arcade hardware implemented in an FPGA
|
||||
-- (C) 2012 Jeroen Domburg (jeroen AT spritesmods.com)
|
||||
--
|
||||
-- This 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.
|
||||
--
|
||||
-- This 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
--The EAROM is a bit of EEPROM used to store the highscores. Not implemented here:
|
||||
--the FPGA doesn't have nonvolatile storage and I'm too lazy to interface it to some.
|
||||
|
||||
library IEEE;
|
||||
use IEEE.STD_LOGIC_1164.ALL;
|
||||
use IEEE.STD_LOGIC_ARITH.ALL;
|
||||
use IEEE.STD_LOGIC_UNSIGNED.ALL;
|
||||
|
||||
|
||||
entity earom is
|
||||
Port ( reset_l : in STD_LOGIC;
|
||||
clk : in STD_LOGIC;
|
||||
addr : in STD_LOGIC_VECTOR (5 downto 0);
|
||||
data_in : in STD_LOGIC_VECTOR (7 downto 0);
|
||||
data_out : out STD_LOGIC_VECTOR (7 downto 0);
|
||||
write_l : in STD_LOGIC;
|
||||
con_l : in STD_LOGIC);
|
||||
end earom;
|
||||
|
||||
architecture Behavioral of earom is
|
||||
begin
|
||||
--To be implemented.
|
||||
data_out <= "11111111";
|
||||
end Behavioral;
|
||||
|
||||
84
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/gen_ram.vhd
Normal file
84
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/gen_ram.vhd
Normal file
@@ -0,0 +1,84 @@
|
||||
-- -----------------------------------------------------------------------
|
||||
--
|
||||
-- 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;
|
||||
|
||||
215
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/p2ram.v
Normal file
215
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/p2ram.v
Normal file
@@ -0,0 +1,215 @@
|
||||
// megafunction wizard: %RAM: 2-PORT%
|
||||
// GENERATION: STANDARD
|
||||
// VERSION: WM1.0
|
||||
// MODULE: altsyncram
|
||||
|
||||
// ============================================================
|
||||
// File Name: p2ram.v
|
||||
// Megafunction Name(s):
|
||||
// altsyncram
|
||||
//
|
||||
// Simulation Library Files(s):
|
||||
// altera_mf
|
||||
// ============================================================
|
||||
// ************************************************************
|
||||
// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
|
||||
//
|
||||
// 13.1.0 Build 162 10/23/2013 SJ Web Edition
|
||||
// ************************************************************
|
||||
|
||||
|
||||
//Copyright (C) 1991-2013 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.
|
||||
|
||||
|
||||
// synopsys translate_off
|
||||
`timescale 1 ps / 1 ps
|
||||
// synopsys translate_on
|
||||
module p2ram (
|
||||
clock,
|
||||
data,
|
||||
rdaddress,
|
||||
wraddress,
|
||||
wren,
|
||||
q);
|
||||
|
||||
input clock;
|
||||
input [3:0] data;
|
||||
input [16:0] rdaddress;
|
||||
input [16:0] wraddress;
|
||||
input wren;
|
||||
output [3:0] q;
|
||||
`ifndef ALTERA_RESERVED_QIS
|
||||
// synopsys translate_off
|
||||
`endif
|
||||
tri1 clock;
|
||||
tri0 wren;
|
||||
`ifndef ALTERA_RESERVED_QIS
|
||||
// synopsys translate_on
|
||||
`endif
|
||||
|
||||
wire [3:0] sub_wire0;
|
||||
wire [3:0] q = sub_wire0[3:0];
|
||||
|
||||
altsyncram altsyncram_component (
|
||||
.address_a (wraddress),
|
||||
.clock0 (clock),
|
||||
.data_a (data),
|
||||
.wren_a (wren),
|
||||
.address_b (rdaddress),
|
||||
.q_b (sub_wire0),
|
||||
.aclr0 (1'b0),
|
||||
.aclr1 (1'b0),
|
||||
.addressstall_a (1'b0),
|
||||
.addressstall_b (1'b0),
|
||||
.byteena_a (1'b1),
|
||||
.byteena_b (1'b1),
|
||||
.clock1 (1'b1),
|
||||
.clocken0 (1'b1),
|
||||
.clocken1 (1'b1),
|
||||
.clocken2 (1'b1),
|
||||
.clocken3 (1'b1),
|
||||
.data_b ({4{1'b1}}),
|
||||
.eccstatus (),
|
||||
.q_a (),
|
||||
.rden_a (1'b1),
|
||||
.rden_b (1'b1),
|
||||
.wren_b (1'b0));
|
||||
defparam
|
||||
altsyncram_component.address_aclr_b = "NONE",
|
||||
altsyncram_component.address_reg_b = "CLOCK0",
|
||||
altsyncram_component.clock_enable_input_a = "BYPASS",
|
||||
altsyncram_component.clock_enable_input_b = "BYPASS",
|
||||
altsyncram_component.clock_enable_output_b = "BYPASS",
|
||||
altsyncram_component.intended_device_family = "Cyclone III",
|
||||
altsyncram_component.lpm_type = "altsyncram",
|
||||
altsyncram_component.numwords_a = 131072,
|
||||
altsyncram_component.numwords_b = 131072,
|
||||
altsyncram_component.operation_mode = "DUAL_PORT",
|
||||
altsyncram_component.outdata_aclr_b = "NONE",
|
||||
altsyncram_component.outdata_reg_b = "CLOCK0",
|
||||
altsyncram_component.power_up_uninitialized = "FALSE",
|
||||
altsyncram_component.ram_block_type = "M9K",
|
||||
altsyncram_component.read_during_write_mode_mixed_ports = "DONT_CARE",
|
||||
altsyncram_component.widthad_a = 17,
|
||||
altsyncram_component.widthad_b = 17,
|
||||
altsyncram_component.width_a = 4,
|
||||
altsyncram_component.width_b = 4,
|
||||
altsyncram_component.width_byteena_a = 1;
|
||||
|
||||
|
||||
endmodule
|
||||
|
||||
// ============================================================
|
||||
// CNX file retrieval info
|
||||
// ============================================================
|
||||
// Retrieval info: PRIVATE: ADDRESSSTALL_A NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: ADDRESSSTALL_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: BYTEENA_ACLR_A NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: BYTEENA_ACLR_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: BYTE_ENABLE_A NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: BYTE_ENABLE_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: BYTE_SIZE NUMERIC "8"
|
||||
// Retrieval info: PRIVATE: BlankMemory NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: CLOCK_ENABLE_INPUT_A NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLOCK_ENABLE_INPUT_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLOCK_ENABLE_OUTPUT_A NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLOCK_ENABLE_OUTPUT_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLRdata NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLRq NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLRrdaddress NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLRrren NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLRwraddress NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: CLRwren NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: Clock NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: Clock_A NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: Clock_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: IMPLEMENT_IN_LES NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: INDATA_ACLR_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: INDATA_REG_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: INIT_FILE_LAYOUT STRING "PORT_B"
|
||||
// Retrieval info: PRIVATE: INIT_TO_SIM_X NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone III"
|
||||
// Retrieval info: PRIVATE: JTAG_ENABLED NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: JTAG_ID STRING "NONE"
|
||||
// Retrieval info: PRIVATE: MAXIMUM_DEPTH NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: MEMSIZE NUMERIC "524288"
|
||||
// Retrieval info: PRIVATE: MEM_IN_BITS NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: MIFfilename STRING ""
|
||||
// Retrieval info: PRIVATE: OPERATION_MODE NUMERIC "2"
|
||||
// Retrieval info: PRIVATE: OUTDATA_ACLR_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: OUTDATA_REG_B NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: RAM_BLOCK_TYPE NUMERIC "2"
|
||||
// Retrieval info: PRIVATE: READ_DURING_WRITE_MODE_MIXED_PORTS NUMERIC "2"
|
||||
// Retrieval info: PRIVATE: READ_DURING_WRITE_MODE_PORT_A NUMERIC "3"
|
||||
// Retrieval info: PRIVATE: READ_DURING_WRITE_MODE_PORT_B NUMERIC "3"
|
||||
// Retrieval info: PRIVATE: REGdata NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: REGq NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: REGrdaddress NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: REGrren NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: REGwraddress NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: REGwren NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0"
|
||||
// Retrieval info: PRIVATE: USE_DIFF_CLKEN NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: UseDPRAM NUMERIC "1"
|
||||
// Retrieval info: PRIVATE: VarWidth NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: WIDTH_READ_A NUMERIC "4"
|
||||
// Retrieval info: PRIVATE: WIDTH_READ_B NUMERIC "4"
|
||||
// Retrieval info: PRIVATE: WIDTH_WRITE_A NUMERIC "4"
|
||||
// Retrieval info: PRIVATE: WIDTH_WRITE_B NUMERIC "4"
|
||||
// Retrieval info: PRIVATE: WRADDR_ACLR_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: WRADDR_REG_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: WRCTRL_ACLR_B NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: enable NUMERIC "0"
|
||||
// Retrieval info: PRIVATE: rden NUMERIC "0"
|
||||
// Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all
|
||||
// Retrieval info: CONSTANT: ADDRESS_ACLR_B STRING "NONE"
|
||||
// Retrieval info: CONSTANT: ADDRESS_REG_B STRING "CLOCK0"
|
||||
// Retrieval info: CONSTANT: CLOCK_ENABLE_INPUT_A STRING "BYPASS"
|
||||
// Retrieval info: CONSTANT: CLOCK_ENABLE_INPUT_B STRING "BYPASS"
|
||||
// Retrieval info: CONSTANT: CLOCK_ENABLE_OUTPUT_B STRING "BYPASS"
|
||||
// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone III"
|
||||
// Retrieval info: CONSTANT: LPM_TYPE STRING "altsyncram"
|
||||
// Retrieval info: CONSTANT: NUMWORDS_A NUMERIC "131072"
|
||||
// Retrieval info: CONSTANT: NUMWORDS_B NUMERIC "131072"
|
||||
// Retrieval info: CONSTANT: OPERATION_MODE STRING "DUAL_PORT"
|
||||
// Retrieval info: CONSTANT: OUTDATA_ACLR_B STRING "NONE"
|
||||
// Retrieval info: CONSTANT: OUTDATA_REG_B STRING "CLOCK0"
|
||||
// Retrieval info: CONSTANT: POWER_UP_UNINITIALIZED STRING "FALSE"
|
||||
// Retrieval info: CONSTANT: RAM_BLOCK_TYPE STRING "M9K"
|
||||
// Retrieval info: CONSTANT: READ_DURING_WRITE_MODE_MIXED_PORTS STRING "DONT_CARE"
|
||||
// Retrieval info: CONSTANT: WIDTHAD_A NUMERIC "17"
|
||||
// Retrieval info: CONSTANT: WIDTHAD_B NUMERIC "17"
|
||||
// Retrieval info: CONSTANT: WIDTH_A NUMERIC "4"
|
||||
// Retrieval info: CONSTANT: WIDTH_B NUMERIC "4"
|
||||
// Retrieval info: CONSTANT: WIDTH_BYTEENA_A NUMERIC "1"
|
||||
// Retrieval info: USED_PORT: clock 0 0 0 0 INPUT VCC "clock"
|
||||
// Retrieval info: USED_PORT: data 0 0 4 0 INPUT NODEFVAL "data[3..0]"
|
||||
// Retrieval info: USED_PORT: q 0 0 4 0 OUTPUT NODEFVAL "q[3..0]"
|
||||
// Retrieval info: USED_PORT: rdaddress 0 0 17 0 INPUT NODEFVAL "rdaddress[16..0]"
|
||||
// Retrieval info: USED_PORT: wraddress 0 0 17 0 INPUT NODEFVAL "wraddress[16..0]"
|
||||
// Retrieval info: USED_PORT: wren 0 0 0 0 INPUT GND "wren"
|
||||
// Retrieval info: CONNECT: @address_a 0 0 17 0 wraddress 0 0 17 0
|
||||
// Retrieval info: CONNECT: @address_b 0 0 17 0 rdaddress 0 0 17 0
|
||||
// Retrieval info: CONNECT: @clock0 0 0 0 0 clock 0 0 0 0
|
||||
// Retrieval info: CONNECT: @data_a 0 0 4 0 data 0 0 4 0
|
||||
// Retrieval info: CONNECT: @wren_a 0 0 0 0 wren 0 0 0 0
|
||||
// Retrieval info: CONNECT: q 0 0 4 0 @q_b 0 0 4 0
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL p2ram.v TRUE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL p2ram.inc FALSE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL p2ram.cmp FALSE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL p2ram.bsf FALSE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL p2ram_inst.v FALSE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL p2ram_bb.v FALSE
|
||||
// Retrieval info: LIB_FILE: altera_mf
|
||||
102
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/pgmrom.vhd
Normal file
102
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/pgmrom.vhd
Normal file
@@ -0,0 +1,102 @@
|
||||
|
||||
-- Black Widow arcade hardware implemented in an FPGA
|
||||
-- (C) 2012 Jeroen Domburg (jeroen AT spritesmods.com)
|
||||
--
|
||||
-- This 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.
|
||||
--
|
||||
-- This 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
|
||||
--The program ROM.
|
||||
|
||||
library IEEE;
|
||||
use IEEE.STD_LOGIC_1164.ALL;
|
||||
use IEEE.STD_LOGIC_ARITH.ALL;
|
||||
use IEEE.STD_LOGIC_UNSIGNED.ALL;
|
||||
|
||||
entity pgmrom is
|
||||
Port ( addr : in STD_LOGIC_VECTOR (14 downto 0);
|
||||
data : out STD_LOGIC_VECTOR (7 downto 0);
|
||||
clk : in STD_LOGIC
|
||||
);
|
||||
end pgmrom;
|
||||
|
||||
architecture Behavioral of pgmrom is
|
||||
signal dataa: std_logic_vector(7 downto 0);
|
||||
signal datab: std_logic_vector(7 downto 0);
|
||||
signal datac: std_logic_vector(7 downto 0);
|
||||
signal datad: std_logic_vector(7 downto 0);
|
||||
signal datae: std_logic_vector(7 downto 0);
|
||||
signal dataf: std_logic_vector(7 downto 0);
|
||||
|
||||
begin
|
||||
|
||||
--136017-101.d1 4096 0 0000 000000000000
|
||||
--136017-102.ef1 4096 4096 0001 000000000000
|
||||
--136017-103.h1 4096 8192 0010 000000000000
|
||||
--136017-104.j1 4096 12288 0011 000000000000
|
||||
--136017-105.kl1 4096 16384 0100 000000000000
|
||||
--136017-106.m1 4096 20480 0101 000000000000
|
||||
|
||||
|
||||
|
||||
roma: entity work.bwidow_pgm_rom1
|
||||
port map (
|
||||
clk => clk,
|
||||
addr => addr(11 downto 0),
|
||||
data => dataa
|
||||
);
|
||||
|
||||
romb: entity work.bwidow_pgm_rom2
|
||||
port map (
|
||||
clk => clk,
|
||||
addr => addr(11 downto 0),
|
||||
data => datab
|
||||
);
|
||||
romc: entity work.bwidow_pgm_rom3
|
||||
port map (
|
||||
clk => clk,
|
||||
addr => addr(11 downto 0),
|
||||
data => datac
|
||||
);
|
||||
|
||||
romd: entity work.bwidow_pgm_rom4
|
||||
port map (
|
||||
clk => clk,
|
||||
addr => addr(11 downto 0),
|
||||
data => datad
|
||||
);
|
||||
|
||||
rome: entity work.bwidow_pgm_rom5
|
||||
port map (
|
||||
clk => clk,
|
||||
addr => addr(11 downto 0),
|
||||
data => datae
|
||||
);
|
||||
|
||||
romf: entity work.bwidow_pgm_rom6
|
||||
port map (
|
||||
clk => clk,
|
||||
addr => addr(11 downto 0),
|
||||
data => dataf
|
||||
);
|
||||
|
||||
data <= dataa when addr(14 downto 12)="001" else
|
||||
datab when addr(14 downto 12)="010" else
|
||||
datac when addr(14 downto 12)="011" else
|
||||
datad when addr(14 downto 12)="100" else
|
||||
datae when addr(14 downto 12)="101" else
|
||||
dataf when addr(14 downto 12)="110" else
|
||||
dataf when addr(14 downto 12)="111" --last rom is mirrored once
|
||||
else "00000000";
|
||||
end Behavioral;
|
||||
|
||||
220
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/pkg_bwidow.vhd
Normal file
220
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/pkg_bwidow.vhd
Normal file
@@ -0,0 +1,220 @@
|
||||
|
||||
-- Black Widow arcade hardware implemented in an FPGA
|
||||
-- (C) 2012 Jeroen Domburg (jeroen AT spritesmods.com)
|
||||
--
|
||||
-- This 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.
|
||||
--
|
||||
-- This 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all;
|
||||
use ieee.std_logic_unsigned.all;
|
||||
use ieee.numeric_std.all;
|
||||
|
||||
|
||||
package pkg_bwidow is
|
||||
|
||||
component bwidow is
|
||||
port(
|
||||
reset_h : in std_logic;
|
||||
clk : in std_logic; --12 MHz
|
||||
clk_25 : in std_logic;
|
||||
analog_sound_out : out std_logic_vector(7 downto 0);
|
||||
analog_x_out : out std_logic_vector(9 downto 0);
|
||||
analog_y_out : out std_logic_vector(9 downto 0);
|
||||
analog_z_out : out std_logic_vector(7 downto 0);
|
||||
BEAM_ENA : out std_logic;
|
||||
rgb_out : out std_logic_vector(2 downto 0);
|
||||
buttons : in std_logic_vector(14 downto 0);
|
||||
SW_B4 : in std_logic_vector(7 downto 0);
|
||||
SW_D4 : in std_logic_vector(7 downto 0);
|
||||
dn_addr : in std_logic_vector(15 downto 0);
|
||||
dn_data : in std_logic_vector(7 downto 0);
|
||||
dn_wr : in std_logic ;
|
||||
dbg : out std_logic_vector(15 downto 0)
|
||||
);
|
||||
end component;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
component pokey is
|
||||
port (
|
||||
ADDR : in std_logic_vector(3 downto 0);
|
||||
DIN : in std_logic_vector(7 downto 0);
|
||||
DOUT : out std_logic_vector(7 downto 0);
|
||||
DOUT_OE_L : out std_logic;
|
||||
RW_L : in std_logic;
|
||||
CS : in std_logic; -- used as enable
|
||||
CS_L : in std_logic;
|
||||
--
|
||||
AUDIO_OUT : out std_logic_vector(7 downto 0);
|
||||
--
|
||||
PIN : in std_logic_vector(7 downto 0);
|
||||
ENA : in std_logic;
|
||||
CLK : in std_logic -- note 6 Mhz
|
||||
);
|
||||
end component;
|
||||
|
||||
--component rom_pgma is
|
||||
-- port (
|
||||
-- CLK : in std_logic;
|
||||
-- ADDR : in std_logic_vector(11 downto 0);
|
||||
-- DATA : out std_logic_vector(7 downto 0)
|
||||
-- );
|
||||
--end component;
|
||||
--component rom_pgmb is
|
||||
-- port (
|
||||
-- CLK : in std_logic;
|
||||
-- ADDR : in std_logic_vector(11 downto 0);
|
||||
-- DATA : out std_logic_vector(7 downto 0)
|
||||
-- );
|
||||
--end component;
|
||||
--component rom_pgmc is
|
||||
-- port (
|
||||
-- CLK : in std_logic;
|
||||
-- ADDR : in std_logic_vector(11 downto 0);
|
||||
-- DATA : out std_logic_vector(7 downto 0)
|
||||
-- );
|
||||
--end component;
|
||||
--component rom_pgmd is
|
||||
-- port (
|
||||
-- CLK : in std_logic;
|
||||
-- ADDR : in std_logic_vector(11 downto 0);
|
||||
-- DATA : out std_logic_vector(7 downto 0)
|
||||
-- );
|
||||
--end component;
|
||||
--component rom_pgme is
|
||||
-- port (
|
||||
-- CLK : in std_logic;
|
||||
-- ADDR : in std_logic_vector(11 downto 0);
|
||||
-- DATA : out std_logic_vector(7 downto 0)
|
||||
-- );
|
||||
--end component;
|
||||
--component rom_pgmf is
|
||||
-- port (
|
||||
-- CLK : in std_logic;
|
||||
-- ADDR : in std_logic_vector(11 downto 0);
|
||||
-- DATA : out std_logic_vector(7 downto 0)
|
||||
-- );
|
||||
--end component;
|
||||
--
|
||||
--
|
||||
--component rom_veca is
|
||||
-- port (
|
||||
-- CLK : in std_logic;
|
||||
-- ADDR : in std_logic_vector(10 downto 0);
|
||||
-- DATA : out std_logic_vector(7 downto 0)
|
||||
-- );
|
||||
--end component;
|
||||
--component rom_vecb is
|
||||
-- port (
|
||||
-- CLK : in std_logic;
|
||||
-- ADDR : in std_logic_vector(11 downto 0);
|
||||
-- DATA : out std_logic_vector(7 downto 0)
|
||||
-- );
|
||||
--end component;
|
||||
--component rom_vecc is
|
||||
-- port (
|
||||
-- CLK : in std_logic;
|
||||
-- ADDR : in std_logic_vector(11 downto 0);
|
||||
-- DATA : out std_logic_vector(7 downto 0)
|
||||
-- );
|
||||
--end component;
|
||||
--component rom_vecd is
|
||||
-- port (
|
||||
-- CLK : in std_logic;
|
||||
-- ADDR : in std_logic_vector(11 downto 0);
|
||||
-- DATA : out std_logic_vector(7 downto 0)
|
||||
-- );
|
||||
--end component;
|
||||
--
|
||||
--
|
||||
--component ram2k is
|
||||
-- Port ( addr : in STD_LOGIC_VECTOR (10 downto 0);
|
||||
-- data_in : in STD_LOGIC_VECTOR (7 downto 0);
|
||||
-- data_out : out STD_LOGIC_VECTOR (7 downto 0);
|
||||
-- rw_l : in STD_LOGIC;
|
||||
-- cs_l : in STD_LOGIC;
|
||||
-- ena : in STD_LOGIC;
|
||||
-- clk : in STD_LOGIC);
|
||||
--end component;
|
||||
|
||||
component earom is
|
||||
Port ( reset_l : in STD_LOGIC;
|
||||
clk : in STD_LOGIC;
|
||||
addr : in STD_LOGIC_VECTOR (5 downto 0);
|
||||
data_in : in STD_LOGIC_VECTOR (7 downto 0);
|
||||
data_out : out STD_LOGIC_VECTOR (7 downto 0);
|
||||
write_l : in STD_LOGIC;
|
||||
con_l : in STD_LOGIC);
|
||||
end component;
|
||||
|
||||
component avg is
|
||||
Port ( cpu_data_in : out STD_LOGIC_VECTOR (7 downto 0);
|
||||
cpu_data_out : in STD_LOGIC_VECTOR (7 downto 0);
|
||||
cpu_addr : in STD_LOGIC_VECTOR (13 downto 0);
|
||||
cpu_cs_l : in STD_LOGIC;
|
||||
cpu_rw_l : in STD_LOGIC;
|
||||
vgrst : in STD_LOGIC;
|
||||
vggo : in STD_LOGIC;
|
||||
halted : out STD_LOGIC;
|
||||
xout : out STD_LOGIC_VECTOR (9 downto 0);
|
||||
yout : out STD_LOGIC_VECTOR (9 downto 0);
|
||||
zout : out STD_LOGIC_VECTOR (7 downto 0);
|
||||
rgbout : out STD_LOGIC_VECTOR (2 downto 0);
|
||||
dbg : out std_logic_vector(15 downto 0);
|
||||
clken: in STD_LOGIC;
|
||||
clk_25 : in STD_LOGIC;
|
||||
clk : 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
|
||||
);
|
||||
end component;
|
||||
|
||||
component vector_drawer is
|
||||
Port ( clk : in STD_LOGIC;
|
||||
clk_ena: in STD_LOGIC;
|
||||
scale : in STD_LOGIC_VECTOR (12 downto 0);
|
||||
rel_x : in STD_LOGIC_VECTOR (12 downto 0);
|
||||
rel_y : in STD_LOGIC_VECTOR (12 downto 0);
|
||||
zero: in STD_LOGIC;
|
||||
draw : in STD_LOGIC;
|
||||
done : out STD_LOGIC;
|
||||
xout : out STD_LOGIC_VECTOR (9 downto 0);
|
||||
yout : out STD_LOGIC_VECTOR (9 downto 0)
|
||||
);
|
||||
end component;
|
||||
|
||||
--component vecram_filled is --Used for debugging, not in normal operations.
|
||||
-- Port ( addr : in STD_LOGIC_VECTOR (10 downto 0);
|
||||
-- data_in : in STD_LOGIC_VECTOR (7 downto 0);
|
||||
-- data_out : out STD_LOGIC_VECTOR (7 downto 0);
|
||||
-- rw_l : in STD_LOGIC;
|
||||
-- cs_l : in STD_LOGIC;
|
||||
-- ena : in STD_LOGIC;
|
||||
-- clk : in STD_LOGIC);
|
||||
--end component;
|
||||
|
||||
component spotkiller is
|
||||
Port ( poweringup : out STD_LOGIC;
|
||||
reset: in STD_LOGIC;
|
||||
clk_12 : in STD_LOGIC;
|
||||
xin : in STD_LOGIC_VECTOR(9 downto 0);
|
||||
yin : in STD_LOGIC_VECTOR(9 downto 0);
|
||||
crtenable : out STD_LOGIC);
|
||||
end component;
|
||||
|
||||
end pkg_bwidow;
|
||||
393
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/pll.v
Normal file
393
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/pll.v
Normal file
@@ -0,0 +1,393 @@
|
||||
// megafunction wizard: %ALTPLL%
|
||||
// GENERATION: STANDARD
|
||||
// VERSION: WM1.0
|
||||
// MODULE: altpll
|
||||
|
||||
// ============================================================
|
||||
// File Name: pll.v
|
||||
// Megafunction Name(s):
|
||||
// altpll
|
||||
//
|
||||
// Simulation Library Files(s):
|
||||
// altera_mf
|
||||
// ============================================================
|
||||
// ************************************************************
|
||||
// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
|
||||
//
|
||||
// 13.1.0 Build 162 10/23/2013 SJ Web Edition
|
||||
// ************************************************************
|
||||
|
||||
|
||||
//Copyright (C) 1991-2013 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.
|
||||
|
||||
|
||||
// synopsys translate_off
|
||||
`timescale 1 ps / 1 ps
|
||||
// synopsys translate_on
|
||||
module pll (
|
||||
inclk0,
|
||||
c0,
|
||||
c1,
|
||||
c2,
|
||||
c3,
|
||||
locked);
|
||||
|
||||
input inclk0;
|
||||
output c0;
|
||||
output c1;
|
||||
output c2;
|
||||
output c3;
|
||||
output locked;
|
||||
|
||||
wire [4:0] sub_wire0;
|
||||
wire sub_wire3;
|
||||
wire [0:0] sub_wire8 = 1'h0;
|
||||
wire [2:2] sub_wire5 = sub_wire0[2:2];
|
||||
wire [0:0] sub_wire4 = sub_wire0[0:0];
|
||||
wire [3:3] sub_wire2 = sub_wire0[3:3];
|
||||
wire [1:1] sub_wire1 = sub_wire0[1:1];
|
||||
wire c1 = sub_wire1;
|
||||
wire c3 = sub_wire2;
|
||||
wire locked = sub_wire3;
|
||||
wire c0 = sub_wire4;
|
||||
wire c2 = sub_wire5;
|
||||
wire sub_wire6 = inclk0;
|
||||
wire [1:0] sub_wire7 = {sub_wire8, sub_wire6};
|
||||
|
||||
altpll altpll_component (
|
||||
.inclk (sub_wire7),
|
||||
.clk (sub_wire0),
|
||||
.locked (sub_wire3),
|
||||
.activeclock (),
|
||||
.areset (1'b0),
|
||||
.clkbad (),
|
||||
.clkena ({6{1'b1}}),
|
||||
.clkloss (),
|
||||
.clkswitch (1'b0),
|
||||
.configupdate (1'b0),
|
||||
.enable0 (),
|
||||
.enable1 (),
|
||||
.extclk (),
|
||||
.extclkena ({4{1'b1}}),
|
||||
.fbin (1'b1),
|
||||
.fbmimicbidir (),
|
||||
.fbout (),
|
||||
.fref (),
|
||||
.icdrclk (),
|
||||
.pfdena (1'b1),
|
||||
.phasecounterselect ({4{1'b1}}),
|
||||
.phasedone (),
|
||||
.phasestep (1'b1),
|
||||
.phaseupdown (1'b1),
|
||||
.pllena (1'b1),
|
||||
.scanaclr (1'b0),
|
||||
.scanclk (1'b0),
|
||||
.scanclkena (1'b1),
|
||||
.scandata (1'b0),
|
||||
.scandataout (),
|
||||
.scandone (),
|
||||
.scanread (1'b0),
|
||||
.scanwrite (1'b0),
|
||||
.sclkout0 (),
|
||||
.sclkout1 (),
|
||||
.vcooverrange (),
|
||||
.vcounderrange ());
|
||||
defparam
|
||||
altpll_component.bandwidth_type = "AUTO",
|
||||
altpll_component.clk0_divide_by = 27,
|
||||
altpll_component.clk0_duty_cycle = 50,
|
||||
altpll_component.clk0_multiply_by = 50,
|
||||
altpll_component.clk0_phase_shift = "0",
|
||||
altpll_component.clk1_divide_by = 27,
|
||||
altpll_component.clk1_duty_cycle = 50,
|
||||
altpll_component.clk1_multiply_by = 25,
|
||||
altpll_component.clk1_phase_shift = "0",
|
||||
altpll_component.clk2_divide_by = 9,
|
||||
altpll_component.clk2_duty_cycle = 50,
|
||||
altpll_component.clk2_multiply_by = 4,
|
||||
altpll_component.clk2_phase_shift = "0",
|
||||
altpll_component.clk3_divide_by = 9,
|
||||
altpll_component.clk3_duty_cycle = 50,
|
||||
altpll_component.clk3_multiply_by = 2,
|
||||
altpll_component.clk3_phase_shift = "0",
|
||||
altpll_component.compensate_clock = "CLK0",
|
||||
altpll_component.inclk0_input_frequency = 37037,
|
||||
altpll_component.intended_device_family = "Cyclone III",
|
||||
altpll_component.lpm_hint = "CBX_MODULE_PREFIX=pll",
|
||||
altpll_component.lpm_type = "altpll",
|
||||
altpll_component.operation_mode = "NORMAL",
|
||||
altpll_component.pll_type = "AUTO",
|
||||
altpll_component.port_activeclock = "PORT_UNUSED",
|
||||
altpll_component.port_areset = "PORT_UNUSED",
|
||||
altpll_component.port_clkbad0 = "PORT_UNUSED",
|
||||
altpll_component.port_clkbad1 = "PORT_UNUSED",
|
||||
altpll_component.port_clkloss = "PORT_UNUSED",
|
||||
altpll_component.port_clkswitch = "PORT_UNUSED",
|
||||
altpll_component.port_configupdate = "PORT_UNUSED",
|
||||
altpll_component.port_fbin = "PORT_UNUSED",
|
||||
altpll_component.port_inclk0 = "PORT_USED",
|
||||
altpll_component.port_inclk1 = "PORT_UNUSED",
|
||||
altpll_component.port_locked = "PORT_USED",
|
||||
altpll_component.port_pfdena = "PORT_UNUSED",
|
||||
altpll_component.port_phasecounterselect = "PORT_UNUSED",
|
||||
altpll_component.port_phasedone = "PORT_UNUSED",
|
||||
altpll_component.port_phasestep = "PORT_UNUSED",
|
||||
altpll_component.port_phaseupdown = "PORT_UNUSED",
|
||||
altpll_component.port_pllena = "PORT_UNUSED",
|
||||
altpll_component.port_scanaclr = "PORT_UNUSED",
|
||||
altpll_component.port_scanclk = "PORT_UNUSED",
|
||||
altpll_component.port_scanclkena = "PORT_UNUSED",
|
||||
altpll_component.port_scandata = "PORT_UNUSED",
|
||||
altpll_component.port_scandataout = "PORT_UNUSED",
|
||||
altpll_component.port_scandone = "PORT_UNUSED",
|
||||
altpll_component.port_scanread = "PORT_UNUSED",
|
||||
altpll_component.port_scanwrite = "PORT_UNUSED",
|
||||
altpll_component.port_clk0 = "PORT_USED",
|
||||
altpll_component.port_clk1 = "PORT_USED",
|
||||
altpll_component.port_clk2 = "PORT_USED",
|
||||
altpll_component.port_clk3 = "PORT_USED",
|
||||
altpll_component.port_clk4 = "PORT_UNUSED",
|
||||
altpll_component.port_clk5 = "PORT_UNUSED",
|
||||
altpll_component.port_clkena0 = "PORT_UNUSED",
|
||||
altpll_component.port_clkena1 = "PORT_UNUSED",
|
||||
altpll_component.port_clkena2 = "PORT_UNUSED",
|
||||
altpll_component.port_clkena3 = "PORT_UNUSED",
|
||||
altpll_component.port_clkena4 = "PORT_UNUSED",
|
||||
altpll_component.port_clkena5 = "PORT_UNUSED",
|
||||
altpll_component.port_extclk0 = "PORT_UNUSED",
|
||||
altpll_component.port_extclk1 = "PORT_UNUSED",
|
||||
altpll_component.port_extclk2 = "PORT_UNUSED",
|
||||
altpll_component.port_extclk3 = "PORT_UNUSED",
|
||||
altpll_component.self_reset_on_loss_lock = "OFF",
|
||||
altpll_component.width_clock = 5;
|
||||
|
||||
|
||||
endmodule
|
||||
|
||||
// ============================================================
|
||||
// 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 "27"
|
||||
// Retrieval info: PRIVATE: DIV_FACTOR1 NUMERIC "27"
|
||||
// Retrieval info: PRIVATE: DIV_FACTOR2 NUMERIC "9"
|
||||
// Retrieval info: PRIVATE: DIV_FACTOR3 NUMERIC "9"
|
||||
// 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: DUTY_CYCLE3 STRING "50.00000000"
|
||||
// Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE0 STRING "50.000000"
|
||||
// Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE1 STRING "25.000000"
|
||||
// Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE2 STRING "12.000000"
|
||||
// Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE3 STRING "6.000000"
|
||||
// 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: LVDS_PHASE_SHIFT_UNIT2 STRING "deg"
|
||||
// Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT3 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: MIRROR_CLK3 STRING "0"
|
||||
// Retrieval info: PRIVATE: MULT_FACTOR0 NUMERIC "50"
|
||||
// Retrieval info: PRIVATE: MULT_FACTOR1 NUMERIC "25"
|
||||
// Retrieval info: PRIVATE: MULT_FACTOR2 NUMERIC "4"
|
||||
// Retrieval info: PRIVATE: MULT_FACTOR3 NUMERIC "2"
|
||||
// Retrieval info: PRIVATE: NORMAL_MODE_RADIO STRING "1"
|
||||
// Retrieval info: PRIVATE: OUTPUT_FREQ0 STRING "50.00000000"
|
||||
// Retrieval info: PRIVATE: OUTPUT_FREQ1 STRING "25.00000000"
|
||||
// Retrieval info: PRIVATE: OUTPUT_FREQ2 STRING "12.00000000"
|
||||
// Retrieval info: PRIVATE: OUTPUT_FREQ3 STRING "6.00000000"
|
||||
// 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_MODE3 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"
|
||||
// Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT3 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_SHIFT2 STRING "0.00000000"
|
||||
// Retrieval info: PRIVATE: PHASE_SHIFT3 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: PHASE_SHIFT_UNIT2 STRING "deg"
|
||||
// Retrieval info: PRIVATE: PHASE_SHIFT_UNIT3 STRING "deg"
|
||||
// Retrieval info: PRIVATE: PLL_ADVANCED_PARAM_CHECK STRING "0"
|
||||
// Retrieval info: PRIVATE: PLL_ARESET_CHECK STRING "0"
|
||||
// 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.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: STICKY_CLK2 STRING "1"
|
||||
// Retrieval info: PRIVATE: STICKY_CLK3 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_CLK2 STRING "1"
|
||||
// Retrieval info: PRIVATE: USE_CLK3 STRING "1"
|
||||
// Retrieval info: PRIVATE: USE_CLKENA0 STRING "0"
|
||||
// Retrieval info: PRIVATE: USE_CLKENA1 STRING "0"
|
||||
// Retrieval info: PRIVATE: USE_CLKENA2 STRING "0"
|
||||
// Retrieval info: PRIVATE: USE_CLKENA3 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 "27"
|
||||
// Retrieval info: CONSTANT: CLK0_DUTY_CYCLE NUMERIC "50"
|
||||
// Retrieval info: CONSTANT: CLK0_MULTIPLY_BY NUMERIC "50"
|
||||
// Retrieval info: CONSTANT: CLK0_PHASE_SHIFT STRING "0"
|
||||
// Retrieval info: CONSTANT: CLK1_DIVIDE_BY NUMERIC "27"
|
||||
// Retrieval info: CONSTANT: CLK1_DUTY_CYCLE NUMERIC "50"
|
||||
// Retrieval info: CONSTANT: CLK1_MULTIPLY_BY NUMERIC "25"
|
||||
// Retrieval info: CONSTANT: CLK1_PHASE_SHIFT STRING "0"
|
||||
// Retrieval info: CONSTANT: CLK2_DIVIDE_BY NUMERIC "9"
|
||||
// Retrieval info: CONSTANT: CLK2_DUTY_CYCLE NUMERIC "50"
|
||||
// Retrieval info: CONSTANT: CLK2_MULTIPLY_BY NUMERIC "4"
|
||||
// Retrieval info: CONSTANT: CLK2_PHASE_SHIFT STRING "0"
|
||||
// Retrieval info: CONSTANT: CLK3_DIVIDE_BY NUMERIC "9"
|
||||
// Retrieval info: CONSTANT: CLK3_DUTY_CYCLE NUMERIC "50"
|
||||
// Retrieval info: CONSTANT: CLK3_MULTIPLY_BY NUMERIC "2"
|
||||
// Retrieval info: CONSTANT: CLK3_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_UNUSED"
|
||||
// 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_USED"
|
||||
// Retrieval info: CONSTANT: PORT_clk3 STRING "PORT_USED"
|
||||
// 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: 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: c3 0 0 0 0 OUTPUT_CLK_EXT VCC "c3"
|
||||
// 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: @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: CONNECT: c3 0 0 0 0 @clk 0 0 1 3
|
||||
// Retrieval info: CONNECT: locked 0 0 0 0 @locked 0 0 0 0
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL pll.v TRUE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL pll.ppf TRUE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL pll.inc FALSE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL pll.cmp FALSE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL pll.bsf FALSE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL pll_inst.v FALSE
|
||||
// Retrieval info: GEN_FILE: TYPE_NORMAL pll_bb.v FALSE
|
||||
// Retrieval info: LIB_FILE: altera_mf
|
||||
// Retrieval info: CBX_MODULE_PREFIX: ON
|
||||
565
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/pokey.vhd
Normal file
565
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/pokey.vhd
Normal file
@@ -0,0 +1,565 @@
|
||||
|
||||
-- Modified from:
|
||||
|
||||
--
|
||||
-- A simulation model of Asteroids Deluxe hardware
|
||||
-- Copyright (c) MikeJ - May 2004
|
||||
--
|
||||
-- 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 002 return 00 on allpot when fast scan completed to fix self test
|
||||
-- version 001 initial release (this version should be considered Beta
|
||||
-- it seems to make all the right sort of sounds however ... )
|
||||
--
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all;
|
||||
use ieee.std_logic_arith.all;
|
||||
use ieee.std_logic_unsigned.all;
|
||||
|
||||
|
||||
entity pokey is
|
||||
port (
|
||||
ADDR : in std_logic_vector(3 downto 0);
|
||||
DIN : in std_logic_vector(7 downto 0);
|
||||
DOUT : out std_logic_vector(7 downto 0);
|
||||
DOUT_OE_L : out std_logic;
|
||||
RW_L : in std_logic;
|
||||
CS : in std_logic; -- used as enable
|
||||
CS_L : in std_logic;
|
||||
--
|
||||
AUDIO_OUT : out std_logic_vector(7 downto 0);
|
||||
--
|
||||
PIN : in std_logic_vector(7 downto 0);
|
||||
ENA : in std_logic;
|
||||
CLK : in std_logic -- note 6 Mhz
|
||||
);
|
||||
end;
|
||||
|
||||
architecture RTL of pokey is
|
||||
type array_8x8 is array (0 to 7) of std_logic_vector(7 downto 0);
|
||||
type array_4x8 is array (1 to 4) of std_logic_vector(7 downto 0);
|
||||
type array_4x4 is array (1 to 4) of std_logic_vector(3 downto 0);
|
||||
type array_4x9 is array (1 to 4) of std_logic_vector(8 downto 0);
|
||||
type array_2x17 is array (1 to 2) of std_logic_vector(16 downto 0);
|
||||
type bool_4 is array (1 to 4) of boolean;
|
||||
|
||||
signal we : std_logic;
|
||||
signal oe : std_logic;
|
||||
--
|
||||
signal ena_64k_15k : std_logic;
|
||||
signal cnt_64k : std_logic_vector(4 downto 0) := (others => '0');
|
||||
signal ena_64k : std_logic;
|
||||
signal cnt_15k : std_logic_vector(6 downto 0) := (others => '0');
|
||||
signal ena_15k : std_logic;
|
||||
--
|
||||
signal poly4 : std_logic_vector(3 downto 0) := (others => '0');
|
||||
signal poly5 : std_logic_vector(4 downto 0) := (others => '0');
|
||||
signal poly9 : std_logic_vector(8 downto 0) := (others => '0');
|
||||
signal poly17 : std_logic_vector(16 downto 0) := (others => '0');
|
||||
signal poly_17_9 : std_logic;
|
||||
|
||||
-- registers
|
||||
signal audf : array_4x8 := (x"00",x"00",x"00",x"00");
|
||||
signal audc : array_4x8 := (x"00",x"00",x"00",x"00");
|
||||
signal audctl : std_logic_vector(7 downto 0) := "00000000";
|
||||
signal stimer : std_logic_vector(7 downto 0);
|
||||
signal skres : std_logic_vector(7 downto 0);
|
||||
signal potgo : std_logic;
|
||||
signal serout : std_logic_vector(7 downto 0);
|
||||
signal irqen : std_logic_vector(7 downto 0);
|
||||
signal skctls : std_logic_vector(7 downto 0);
|
||||
signal reset : std_logic;
|
||||
--
|
||||
signal kbcode : std_logic_vector(7 downto 0);
|
||||
signal random : std_logic_vector(7 downto 0);
|
||||
signal serin : std_logic_vector(7 downto 0);
|
||||
signal irqst : std_logic_vector(7 downto 0);
|
||||
signal skstat : std_logic_vector(7 downto 0);
|
||||
--
|
||||
signal pot_fin : std_logic;
|
||||
signal pot_cnt : std_logic_vector(7 downto 0);
|
||||
signal pot_val : array_8x8;
|
||||
signal pin_reg : std_logic_vector(7 downto 0);
|
||||
signal pin_reg_gated : std_logic_vector(7 downto 0);
|
||||
--
|
||||
signal chan_ena : std_logic_vector(4 downto 1);
|
||||
signal tone_gen_div : std_logic_vector(4 downto 1);
|
||||
signal tone_gen_cnt : array_4x8 := (others => (others => '0'));
|
||||
signal tone_gen_div_mux : std_logic_vector(4 downto 1);
|
||||
signal tone_gen_zero : std_logic_vector(4 downto 1);
|
||||
signal tone_gen_zero_t : array_4x8 := (others => (others => '0'));
|
||||
signal chan_done_load : std_logic_vector(4 downto 1) := (others => '0');
|
||||
--
|
||||
signal poly_sel : std_logic_vector(4 downto 1);
|
||||
signal poly_sel_hp : std_logic_vector(4 downto 1);
|
||||
signal poly_sel_hp_t1 : std_logic_vector(4 downto 1);
|
||||
signal poly_sel_hp_reg : std_logic_vector(4 downto 1);
|
||||
signal tone_gen_final : std_logic_vector(4 downto 1) := (others => '0');
|
||||
begin
|
||||
|
||||
p_we : process(RW_L, CS_L, CS, ENA)
|
||||
begin
|
||||
we <= (not CS_L) and CS and (not RW_L) and ENA;
|
||||
end process;
|
||||
|
||||
p_oe : process(RW_L, CS_L, CS)
|
||||
begin
|
||||
oe <= (not CS_L) and CS and RW_L;
|
||||
end process;
|
||||
DOUT_OE_L <= not oe;
|
||||
|
||||
p_ipreg : process
|
||||
begin
|
||||
wait until rising_edge(CLK);
|
||||
-- in asteroids, these are dip switches
|
||||
pin_reg <= PIN;
|
||||
end process;
|
||||
|
||||
p_dividers : process
|
||||
begin
|
||||
wait until rising_edge(CLK);
|
||||
if (ENA = '1') then
|
||||
ena_64k <= '0';
|
||||
if cnt_64k = "00000" then
|
||||
cnt_64k <= "11011"; -- 28 - 1
|
||||
ena_64k <= '1';
|
||||
else
|
||||
cnt_64k <= cnt_64k - "1";
|
||||
end if;
|
||||
|
||||
ena_15k <= '0';
|
||||
if cnt_15k = "0000000" then
|
||||
cnt_15k <= "1110001"; -- 114 - 1
|
||||
ena_15k <= '1';
|
||||
else
|
||||
cnt_15k <= cnt_15k - "1";
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
p_ena_64k_15k : process(ena_64k, ena_15k, audctl)
|
||||
begin
|
||||
if (audctl(0) = '1') then
|
||||
ena_64k_15k <= ena_15k;
|
||||
else
|
||||
ena_64k_15k <= ena_64k;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
p_poly : process
|
||||
variable poly9_zero : std_logic;
|
||||
variable poly17_zero : std_logic;
|
||||
begin
|
||||
wait until rising_edge(CLK);
|
||||
if (ENA = '1') then
|
||||
poly4 <= poly4(2 downto 0) & not (poly4(3) xor poly4(2));
|
||||
poly5 <= poly5(3 downto 0) & not (poly5(4) xor poly4(2)); -- used inverted
|
||||
|
||||
-- not correct
|
||||
poly9_zero := '0';
|
||||
if (poly9 = "000000000") then poly9_zero := '1'; end if;
|
||||
poly9 <= poly9(7 downto 0) & (poly9(8) xor poly9(3) xor poly9_zero);
|
||||
|
||||
poly17_zero := '0';
|
||||
if (poly17 = "00000000000000000") then poly17_zero := '1'; end if;
|
||||
poly17 <= poly17(15 downto 0) & (poly17(16) xor poly17(2) xor poly17_zero);
|
||||
|
||||
end if;
|
||||
end process;
|
||||
|
||||
p_random_mux : process(audctl, poly9, poly17)
|
||||
begin
|
||||
-- bit unnecessary this ....
|
||||
for i in 0 to 7 loop
|
||||
if (audctl(7) = '1') then -- 9 bit poly
|
||||
random(i) <= poly9(8-i);
|
||||
else
|
||||
random(i) <= poly17(16-i);
|
||||
end if;
|
||||
end loop;
|
||||
|
||||
if (audctl(7) = '1') then
|
||||
poly_17_9 <= poly9(8);
|
||||
else
|
||||
poly_17_9 <= poly17(16);
|
||||
end if;
|
||||
end process;
|
||||
|
||||
p_wdata : process
|
||||
begin
|
||||
wait until rising_edge(CLK);
|
||||
potgo <= '0';
|
||||
|
||||
--if (reset = '1') then
|
||||
-- no idea what the reset state is
|
||||
--audf <= (others => (others => '0'));
|
||||
--audc <= (others => (others => '0'));
|
||||
--audctl <= x"00";
|
||||
--else
|
||||
if (we = '1') then
|
||||
case ADDR is
|
||||
when x"0" => audf(1) <= DIN;
|
||||
when x"1" => audc(1) <= DIN;
|
||||
when x"2" => audf(2) <= DIN;
|
||||
when x"3" => audc(2) <= DIN;
|
||||
when x"4" => audf(3) <= DIN;
|
||||
when x"5" => audc(3) <= DIN;
|
||||
when x"6" => audf(4) <= DIN;
|
||||
when x"7" => audc(4) <= DIN;
|
||||
when x"8" => audctl <= DIN;
|
||||
when x"9" => stimer <= DIN;
|
||||
when x"A" => skres <= DIN;
|
||||
when x"B" => potgo <= '1';
|
||||
--when x"C" =>
|
||||
when x"D" => serout <= DIN;
|
||||
when x"E" => irqen <= DIN;
|
||||
when x"F" => skctls <= DIN;
|
||||
when others => null;
|
||||
end case;
|
||||
end if;
|
||||
--end if;
|
||||
end process;
|
||||
|
||||
p_reset : process(skctls)
|
||||
begin
|
||||
-- chip in reset if bits 1..0 of skctls are both zero
|
||||
reset <= '0';
|
||||
if (skctls(1 downto 0) = "00") then
|
||||
reset <= '1';
|
||||
end if;
|
||||
end process;
|
||||
|
||||
p_rdata : process(oe, ADDR, pot_val, pin_reg_gated, kbcode, random, serin, irqst, skstat)
|
||||
begin
|
||||
DOUT <= x"00";
|
||||
if (oe = '1') then -- keep things quiet
|
||||
case ADDR IS
|
||||
when x"0" => DOUT <= pot_val(0); -- pot 0
|
||||
when x"1" => DOUT <= pot_val(1); -- pot 1
|
||||
when x"2" => DOUT <= pot_val(2); -- pot 2
|
||||
when x"3" => DOUT <= pot_val(3); -- pot 3
|
||||
when x"4" => DOUT <= pot_val(4); -- pot 4
|
||||
when x"5" => DOUT <= pot_val(5); -- pot 5
|
||||
when x"6" => DOUT <= pot_val(6); -- pot 6
|
||||
when x"7" => DOUT <= pot_val(7); -- pot 7
|
||||
when x"8" => DOUT <= pin_reg_gated;-- allpot
|
||||
when x"9" => DOUT <= kbcode;
|
||||
when x"A" => DOUT <= random;
|
||||
when x"B" => DOUT <= x"FF";
|
||||
when x"C" => DOUT <= x"FF";
|
||||
when x"D" => DOUT <= serin;
|
||||
when x"E" => DOUT <= irqst;
|
||||
when x"F" => DOUT <= skstat;
|
||||
when others => null;
|
||||
end case;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-- POT ANALOGUE IN UNTESTED !!
|
||||
p_pot_cnt : process
|
||||
begin
|
||||
wait until rising_edge(CLK);
|
||||
if (potgo = '1') then
|
||||
pot_cnt <= x"00";
|
||||
elsif ((ena_15k = '1') or (skctls(2) = '1')) and (ENA = '1') then -- fast scan mode
|
||||
pot_cnt <= pot_cnt + "1";
|
||||
end if;
|
||||
end process;
|
||||
|
||||
p_pot_comp : process
|
||||
begin
|
||||
wait until rising_edge(CLK);
|
||||
if (reset = '1') then
|
||||
pot_fin <= '1';
|
||||
else
|
||||
if (potgo = '1') then
|
||||
pot_fin <= '0';
|
||||
elsif (pot_cnt = x"E4") then -- 228
|
||||
pot_fin <= '1';
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
p_pot_val : process
|
||||
begin
|
||||
wait until rising_edge(CLK);
|
||||
for i in 0 to 7 loop
|
||||
if (pot_fin = '0') and (pin_reg(i) = '0') then
|
||||
-- continue latching counter value until input reaches ViH threshold
|
||||
pot_val(i) <= pot_cnt;
|
||||
end if;
|
||||
end loop;
|
||||
end process;
|
||||
|
||||
-- dump transistors
|
||||
--PIN <= x"00" when (pot_fin = '1') else (others => 'Z');
|
||||
p_in_gate : process(pin_reg, reset) -- dump transistor fakeup
|
||||
begin
|
||||
pin_reg_gated <= pin_reg;
|
||||
-- I think the datasheet lies about dump transistors being disabled
|
||||
-- in fast scan mode, as the self test fails ....
|
||||
if (reset = '1') or (pot_fin = '1') then --and (skctls(2) = '0'))
|
||||
pin_reg_gated <= x"00";
|
||||
end if;
|
||||
end process;
|
||||
|
||||
p_tone_cnt_ena : process(audctl, ena_64k_15k, tone_gen_div)
|
||||
variable chan_ena1, chan_ena3 : std_ulogic;
|
||||
begin
|
||||
|
||||
if (audctl(6) = '1') then
|
||||
chan_ena1 := '1'; -- 1.5 MHz,
|
||||
else
|
||||
chan_ena1 := ena_64k_15k;
|
||||
end if;
|
||||
chan_ena(1) <= chan_ena1;
|
||||
|
||||
if (audctl(4) = '1') then -- chan 1/2 joined
|
||||
chan_ena(2) <= chan_ena1;
|
||||
else
|
||||
chan_ena(2) <= ena_64k_15k;
|
||||
end if;
|
||||
|
||||
if (audctl(5) = '1') then
|
||||
chan_ena3 := '1'; -- 1.5 MHz,
|
||||
else
|
||||
chan_ena3 := ena_64k_15k; -- 64 KHz
|
||||
end if;
|
||||
chan_ena(3) <= chan_ena3;
|
||||
|
||||
if (audctl(3) = '1') then -- chan 3/4 joined
|
||||
chan_ena(4) <= chan_ena3;
|
||||
else
|
||||
chan_ena(4) <= ena_64k_15k; -- 64 KHz
|
||||
end if;
|
||||
end process;
|
||||
|
||||
p_tone_generator_zero : process(tone_gen_cnt, chan_ena)
|
||||
begin
|
||||
for i in 1 to 4 loop
|
||||
if (tone_gen_cnt(i) = "00000000") and (chan_ena(i) = '1') then
|
||||
tone_gen_zero(i) <= '1';
|
||||
else
|
||||
tone_gen_zero(i) <= '0';
|
||||
end if;
|
||||
end loop;
|
||||
end process;
|
||||
|
||||
p_tone_generators : process
|
||||
variable chan_load : std_logic_vector(4 downto 1);
|
||||
variable chan_dec : std_logic_vector(4 downto 1);
|
||||
begin
|
||||
-- quite tricky this .. but I think it does the correct stuff
|
||||
-- bet this is not how is was done originally !
|
||||
--
|
||||
-- nasty frig to easily get exact chip behaviour in high speed mode
|
||||
-- fout = fin / 2(audf + n) when n=4 or 7 in 16 bit mode
|
||||
wait until rising_edge(CLK);
|
||||
if (ENA = '1') then
|
||||
tone_gen_div <= "0000";
|
||||
|
||||
if (audctl(4) = '1') then -- chan 1/2 joined
|
||||
chan_load(1) := '0';
|
||||
chan_load(2) := '0';
|
||||
if (tone_gen_zero_t(1)(5) = '1') and (tone_gen_zero_t(2)(5) = '1') and (chan_done_load(1) = '0') then
|
||||
chan_load(1) := '1';
|
||||
chan_load(2) := '1';
|
||||
end if;
|
||||
chan_dec(1) := '1';
|
||||
chan_dec(2) := tone_gen_zero(1);
|
||||
else
|
||||
chan_load(1) := tone_gen_zero_t(1)(2) and not chan_done_load(1);
|
||||
chan_load(2) := tone_gen_zero_t(2)(2) and not chan_done_load(2);
|
||||
|
||||
chan_dec(1) := '1';
|
||||
chan_dec(2) := '1';
|
||||
end if;
|
||||
|
||||
if (audctl(3) = '1') then -- chan 1/2 joined
|
||||
chan_load(3) := '0';
|
||||
chan_load(4) := '0';
|
||||
if (tone_gen_zero_t(3)(5) = '1') and (tone_gen_zero_t(4)(5) = '1') and (chan_done_load(3) = '0') then
|
||||
chan_load(3) := '1';
|
||||
chan_load(4) := '1';
|
||||
end if;
|
||||
chan_dec(3) := '1';
|
||||
chan_dec(4) := tone_gen_zero(3);
|
||||
else
|
||||
chan_load(3) := tone_gen_zero_t(3)(2) and not chan_done_load(3);
|
||||
chan_load(4) := tone_gen_zero_t(4)(2) and not chan_done_load(4);
|
||||
|
||||
chan_dec(3) := '1';
|
||||
chan_dec(4) := '1';
|
||||
end if;
|
||||
|
||||
for i in 1 to 4 loop
|
||||
|
||||
if (chan_load(i) = '1') then
|
||||
chan_done_load(i) <= '1';
|
||||
tone_gen_div(i) <= '1';
|
||||
tone_gen_cnt(i) <= audf(i);
|
||||
elsif (chan_dec(i) = '1') and (chan_ena(i) = '1') then
|
||||
chan_done_load(i) <= '0';
|
||||
tone_gen_cnt(i) <= tone_gen_cnt(i) - "1";
|
||||
end if;
|
||||
|
||||
tone_gen_div(i) <= chan_load(i);
|
||||
tone_gen_zero_t(i)(7 downto 0) <= tone_gen_zero_t(i)(6 downto 0) & tone_gen_zero(i);
|
||||
end loop;
|
||||
|
||||
end if;
|
||||
end process;
|
||||
|
||||
p_tone_generator_mux : process(audctl, tone_gen_div)
|
||||
begin
|
||||
if (audctl(4) = '1') then -- chan 1/2 joined
|
||||
tone_gen_div_mux(1) <= tone_gen_div(1); -- do they both waggle
|
||||
tone_gen_div_mux(2) <= tone_gen_div(2); -- or do I mute chan 1?
|
||||
else
|
||||
tone_gen_div_mux(1) <= tone_gen_div(1);
|
||||
tone_gen_div_mux(2) <= tone_gen_div(2);
|
||||
end if;
|
||||
|
||||
if (audctl(3) = '1') then -- chan 3/4 joined
|
||||
tone_gen_div_mux(3) <= tone_gen_div(3); -- ditto
|
||||
tone_gen_div_mux(4) <= tone_gen_div(4);
|
||||
else
|
||||
tone_gen_div_mux(3) <= tone_gen_div(3);
|
||||
tone_gen_div_mux(4) <= tone_gen_div(4);
|
||||
end if;
|
||||
end process;
|
||||
|
||||
p_poly_gating : process(audc, poly4, poly5, poly_17_9, tone_gen_div_mux)
|
||||
variable filter_a : std_logic_vector(4 downto 1);
|
||||
variable filter_b : std_logic_vector(4 downto 1);
|
||||
begin
|
||||
for i in 1 to 4 loop
|
||||
if (audc(i)(7) = '0') then
|
||||
filter_a(i) := poly5(4) and tone_gen_div_mux(i);-- 5 bit poly
|
||||
else
|
||||
filter_a(i) := tone_gen_div_mux(i);
|
||||
end if;
|
||||
|
||||
if (audc(i)(6) = '0') then
|
||||
filter_b(i) := poly_17_9 and filter_a(i);-- 17 bit poly
|
||||
else
|
||||
filter_b(i) := poly4(3) and filter_a(i);-- 4 bit poly
|
||||
end if;
|
||||
|
||||
if (audc(i)(5) = '0') then
|
||||
poly_sel(i) <= filter_b(i);
|
||||
else
|
||||
poly_sel(i) <= filter_a(i);
|
||||
end if;
|
||||
end loop;
|
||||
end process;
|
||||
|
||||
p_high_pass_filters : process(audctl, poly_sel, poly_sel_hp_reg)
|
||||
begin
|
||||
poly_sel_hp <= poly_sel;
|
||||
|
||||
if (audctl(2) = '1') then
|
||||
poly_sel_hp(1) <= poly_sel(1) xor poly_sel_hp_reg(1);
|
||||
end if;
|
||||
|
||||
if (audctl(1) = '1') then
|
||||
poly_sel_hp(2) <= poly_sel(2) xor poly_sel_hp_reg(2);
|
||||
end if;
|
||||
end process;
|
||||
|
||||
p_audio_out : process
|
||||
begin
|
||||
wait until rising_edge(CLK);
|
||||
if (ENA = '1') then
|
||||
for i in 1 to 4 loop
|
||||
-- filter reg
|
||||
if (tone_gen_div(3) = '1') then -- tone gen 1 clocked by gen 3
|
||||
poly_sel_hp_reg(1) <= poly_sel(1);
|
||||
end if;
|
||||
|
||||
if (tone_gen_div(4) = '1') then -- tone gen 2 clocked by gen 4
|
||||
poly_sel_hp_reg(2) <= poly_sel(2);
|
||||
end if;
|
||||
|
||||
poly_sel_hp_t1 <= poly_sel_hp;
|
||||
|
||||
if (poly_sel_hp(i) = '1') and (poly_sel_hp_t1(i) = '0') then -- rising edge
|
||||
tone_gen_final(i) <= not tone_gen_final(i);
|
||||
end if;
|
||||
end loop;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
p_op_mixer : process
|
||||
variable vol : array_4x4;
|
||||
variable sum12 : std_logic_vector(4 downto 0);
|
||||
variable sum34 : std_logic_vector(4 downto 0);
|
||||
variable sum : std_logic_vector(5 downto 0);
|
||||
begin
|
||||
wait until rising_edge(CLK);
|
||||
if (ENA = '1') then
|
||||
for i in 1 to 4 loop
|
||||
if (audc(i)(4) = '1') then -- vol only
|
||||
vol(i) := audc(i)(3 downto 0);
|
||||
else
|
||||
if (tone_gen_final(i) = '1') then
|
||||
vol(i) := audc(i)(3 downto 0);
|
||||
else
|
||||
vol(i) := "0000";
|
||||
end if;
|
||||
end if;
|
||||
end loop;
|
||||
|
||||
sum12 := ('0' & vol(1)) + ('0' & vol(2));
|
||||
sum34 := ('0' & vol(3)) + ('0' & vol(4));
|
||||
sum := ('0' & sum12) + ('0' & sum34);
|
||||
|
||||
if (reset = '1') then
|
||||
AUDIO_OUT <= "00000000";
|
||||
else
|
||||
if (sum(5) = '0') then
|
||||
AUDIO_OUT <= sum(4 downto 0) & "000";
|
||||
else -- clip
|
||||
AUDIO_OUT <= "11111111";
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
|
||||
-- keyboard / serial etc to do
|
||||
end architecture RTL;
|
||||
@@ -0,0 +1,278 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity bwidow_pgm_rom1 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 bwidow_pgm_rom1 is
|
||||
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"43",X"4F",X"50",X"59",X"52",X"49",X"47",X"48",X"54",X"20",X"28",X"43",X"29",X"20",X"41",X"54",
|
||||
X"41",X"52",X"49",X"20",X"31",X"39",X"38",X"32",X"A9",X"55",X"85",X"00",X"A9",X"00",X"8D",X"0F",
|
||||
X"60",X"8D",X"0F",X"68",X"A9",X"07",X"8D",X"0F",X"60",X"8D",X"0F",X"68",X"D8",X"8D",X"80",X"88",
|
||||
X"A9",X"38",X"8D",X"00",X"88",X"A9",X"00",X"85",X"01",X"85",X"02",X"A0",X"03",X"A9",X"00",X"91",
|
||||
X"01",X"C8",X"D0",X"F9",X"E6",X"02",X"A5",X"02",X"49",X"08",X"D0",X"F1",X"20",X"4E",X"E7",X"A9",
|
||||
X"01",X"85",X"FE",X"85",X"FF",X"A9",X"80",X"85",X"EF",X"A2",X"1F",X"8A",X"BD",X"B5",X"A5",X"9D",
|
||||
X"00",X"01",X"CA",X"10",X"F6",X"A9",X"C8",X"8D",X"00",X"88",X"85",X"99",X"A9",X"0A",X"85",X"4E",
|
||||
X"A2",X"00",X"A9",X"01",X"85",X"1B",X"85",X"1D",X"A9",X"50",X"85",X"1C",X"85",X"1E",X"A9",X"00",
|
||||
X"9D",X"D7",X"03",X"A5",X"1D",X"9D",X"D5",X"03",X"A5",X"1E",X"9D",X"D6",X"03",X"18",X"F8",X"65",
|
||||
X"1C",X"85",X"1E",X"A5",X"1D",X"65",X"1B",X"85",X"1D",X"D8",X"E8",X"E8",X"E8",X"E0",X"4B",X"90",
|
||||
X"DD",X"8D",X"0B",X"68",X"AD",X"08",X"68",X"29",X"03",X"AA",X"BD",X"25",X"9C",X"29",X"FC",X"8D",
|
||||
X"2B",X"06",X"A9",X"01",X"8D",X"01",X"02",X"20",X"95",X"9F",X"8D",X"80",X"89",X"20",X"0E",X"BE",
|
||||
X"20",X"9C",X"9D",X"20",X"54",X"99",X"A9",X"F6",X"8D",X"D0",X"03",X"58",X"A9",X"00",X"8D",X"2D",
|
||||
X"01",X"20",X"A9",X"D6",X"AD",X"2E",X"01",X"D0",X"FB",X"A9",X"00",X"8D",X"2A",X"01",X"A9",X"AA",
|
||||
X"85",X"00",X"8D",X"80",X"89",X"24",X"EF",X"10",X"2A",X"AD",X"20",X"04",X"C9",X"05",X"F0",X"23",
|
||||
X"AD",X"22",X"04",X"D0",X"1E",X"20",X"DC",X"B7",X"AE",X"23",X"04",X"BD",X"80",X"91",X"D0",X"05",
|
||||
X"A2",X"00",X"4C",X"FB",X"90",X"8D",X"22",X"04",X"BD",X"81",X"91",X"8D",X"21",X"04",X"E8",X"E8",
|
||||
X"8E",X"23",X"04",X"AD",X"21",X"04",X"F0",X"4C",X"CD",X"20",X"04",X"D0",X"08",X"A9",X"00",X"8D",
|
||||
X"21",X"04",X"4C",X"64",X"91",X"20",X"29",X"9C",X"AD",X"21",X"04",X"8D",X"20",X"04",X"0A",X"AA",
|
||||
X"20",X"3B",X"91",X"A9",X"00",X"8D",X"21",X"04",X"4C",X"64",X"91",X"BD",X"43",X"91",X"48",X"BD",
|
||||
X"42",X"91",X"48",X"60",X"51",X"91",X"E0",X"91",X"95",X"92",X"AE",X"92",X"22",X"94",X"86",X"91",
|
||||
X"D6",X"9C",X"24",X"EF",X"10",X"0B",X"A9",X"00",X"85",X"79",X"8D",X"D3",X"03",X"85",X"F7",X"85",
|
||||
X"73",X"4C",X"9C",X"9D",X"AD",X"20",X"04",X"0A",X"AA",X"BD",X"71",X"91",X"48",X"BD",X"70",X"91",
|
||||
X"48",X"60",X"52",X"98",X"8F",X"92",X"EA",X"92",X"F0",X"92",X"25",X"96",X"D8",X"91",X"F2",X"9C",
|
||||
X"24",X"01",X"0A",X"02",X"0A",X"03",X"00",X"24",X"EF",X"30",X"41",X"AD",X"C8",X"04",X"F0",X"3C",
|
||||
X"20",X"AA",X"9C",X"A2",X"02",X"20",X"B7",X"DC",X"AD",X"C9",X"04",X"18",X"69",X"01",X"20",X"AF",
|
||||
X"D7",X"20",X"C9",X"D8",X"A9",X"00",X"A0",X"00",X"20",X"EF",X"D7",X"A9",X"B0",X"A2",X"50",X"20",
|
||||
X"1D",X"D8",X"A9",X"50",X"A2",X"B0",X"20",X"1D",X"D8",X"20",X"A2",X"D7",X"A9",X"03",X"8D",X"22",
|
||||
X"04",X"A9",X"00",X"8D",X"20",X"01",X"8D",X"40",X"88",X"85",X"81",X"60",X"68",X"68",X"A9",X"01",
|
||||
X"8D",X"21",X"04",X"8D",X"D4",X"03",X"4C",X"13",X"91",X"AD",X"22",X"04",X"F0",X"F0",X"4C",X"2C",
|
||||
X"96",X"A9",X"00",X"85",X"11",X"A9",X"20",X"85",X"12",X"20",X"C9",X"D8",X"A0",X"00",X"A9",X"01",
|
||||
X"20",X"12",X"D8",X"A9",X"B0",X"A2",X"18",X"20",X"1D",X"D8",X"A0",X"00",X"A9",X"00",X"20",X"12",
|
||||
X"D8",X"A9",X"00",X"A0",X"E4",X"20",X"EF",X"D7",X"A9",X"A2",X"AA",X"A9",X"2F",X"20",X"E3",X"D7",
|
||||
X"20",X"C9",X"D8",X"A0",X"00",X"A9",X"01",X"20",X"12",X"D8",X"A9",X"A4",X"A2",X"E0",X"20",X"1D",
|
||||
X"D8",X"A0",X"20",X"A9",X"00",X"20",X"12",X"D8",X"A9",X"00",X"A0",X"E4",X"20",X"EF",X"D7",X"A9",
|
||||
X"44",X"AA",X"A9",X"30",X"20",X"E3",X"D7",X"A0",X"00",X"A9",X"01",X"20",X"12",X"D8",X"20",X"C9",
|
||||
X"D8",X"A2",X"2A",X"20",X"B7",X"DC",X"AD",X"2E",X"06",X"29",X"03",X"AA",X"BD",X"88",X"92",X"AA",
|
||||
X"20",X"B7",X"DC",X"AD",X"45",X"04",X"F0",X"22",X"A2",X"30",X"20",X"B7",X"DC",X"AD",X"2F",X"06",
|
||||
X"4A",X"4A",X"4A",X"4A",X"4A",X"4A",X"18",X"69",X"02",X"20",X"AF",X"D7",X"A9",X"04",X"85",X"1E",
|
||||
X"A9",X"00",X"18",X"20",X"AF",X"D7",X"C6",X"1E",X"D0",X"F6",X"20",X"A6",X"D7",X"A9",X"00",X"85",
|
||||
X"81",X"8D",X"20",X"01",X"8D",X"40",X"88",X"60",X"26",X"28",X"22",X"24",X"02",X"03",X"00",X"01",
|
||||
X"20",X"9C",X"96",X"4C",X"2C",X"96",X"A9",X"00",X"85",X"11",X"A9",X"20",X"85",X"12",X"20",X"7F",
|
||||
X"CB",X"20",X"A6",X"D7",X"A9",X"00",X"8D",X"20",X"01",X"8D",X"40",X"88",X"85",X"81",X"60",X"A9",
|
||||
X"00",X"85",X"11",X"85",X"A5",X"A9",X"0F",X"85",X"A8",X"A9",X"20",X"85",X"12",X"20",X"7F",X"CB",
|
||||
X"A2",X"0A",X"20",X"B7",X"DC",X"A2",X"0C",X"20",X"B7",X"DC",X"A2",X"0E",X"20",X"B7",X"DC",X"20",
|
||||
X"A6",X"D7",X"A9",X"FF",X"85",X"72",X"A9",X"00",X"85",X"71",X"8D",X"20",X"01",X"8D",X"40",X"88",
|
||||
X"85",X"81",X"8D",X"01",X"03",X"A9",X"3C",X"8D",X"22",X"04",X"60",X"20",X"9C",X"96",X"4C",X"2C",
|
||||
X"96",X"AD",X"22",X"04",X"D0",X"03",X"4C",X"D1",X"93",X"A9",X"1E",X"8D",X"24",X"04",X"E6",X"6F",
|
||||
X"A5",X"72",X"10",X"12",X"AD",X"00",X"88",X"29",X"0F",X"49",X"0F",X"F0",X"03",X"4C",X"2C",X"96",
|
||||
X"85",X"A8",X"A9",X"01",X"85",X"72",X"A5",X"6F",X"29",X"03",X"D0",X"11",X"A0",X"00",X"AD",X"0A",
|
||||
X"60",X"29",X"03",X"AA",X"BD",X"F2",X"CD",X"91",X"A3",X"A0",X"14",X"91",X"A3",X"AD",X"00",X"80",
|
||||
X"29",X"0F",X"C9",X"0F",X"F0",X"36",X"A8",X"C6",X"71",X"10",X"31",X"A9",X"05",X"85",X"71",X"98",
|
||||
X"29",X"0C",X"C9",X"0C",X"F0",X"15",X"EE",X"01",X"03",X"29",X"08",X"D0",X"06",X"CE",X"01",X"03",
|
||||
X"CE",X"01",X"03",X"AD",X"01",X"03",X"29",X"03",X"8D",X"01",X"03",X"98",X"29",X"03",X"C9",X"03",
|
||||
X"F0",X"0A",X"E6",X"72",X"29",X"01",X"F0",X"04",X"C6",X"72",X"C6",X"72",X"A5",X"72",X"29",X"1F",
|
||||
X"85",X"72",X"F0",X"03",X"0A",X"69",X"14",X"AA",X"AC",X"01",X"03",X"B9",X"F2",X"CD",X"48",X"A5",
|
||||
X"A5",X"0A",X"0A",X"18",X"69",X"08",X"A8",X"68",X"91",X"A3",X"C8",X"C8",X"BD",X"C4",X"5D",X"91",
|
||||
X"A3",X"20",X"0C",X"94",X"B0",X"03",X"4C",X"2C",X"96",X"A5",X"72",X"C9",X"1F",X"D0",X"13",X"A5",
|
||||
X"A5",X"F0",X"F3",X"0A",X"0A",X"69",X"08",X"A8",X"AD",X"C4",X"5D",X"91",X"A3",X"C6",X"A5",X"4C",
|
||||
X"2C",X"96",X"A5",X"A5",X"18",X"65",X"A9",X"AA",X"AD",X"01",X"03",X"0A",X"0A",X"0A",X"0A",X"0A",
|
||||
X"0A",X"05",X"72",X"9D",X"10",X"03",X"E6",X"A5",X"A5",X"A5",X"C9",X"03",X"F0",X"03",X"4C",X"2C",
|
||||
X"96",X"A5",X"F6",X"C9",X"03",X"F0",X"03",X"20",X"8F",X"D6",X"A9",X"1E",X"8D",X"24",X"04",X"AD",
|
||||
X"C8",X"04",X"F0",X"0B",X"AD",X"C9",X"04",X"D0",X"06",X"8D",X"20",X"04",X"4C",X"EB",X"9B",X"A9",
|
||||
X"00",X"8D",X"22",X"04",X"8D",X"23",X"04",X"8D",X"2C",X"06",X"A9",X"80",X"8D",X"20",X"04",X"85",
|
||||
X"EF",X"A9",X"01",X"8D",X"21",X"04",X"20",X"DC",X"B7",X"4C",X"13",X"91",X"AD",X"00",X"88",X"29",
|
||||
X"0F",X"49",X"0F",X"F0",X"04",X"85",X"A8",X"18",X"60",X"A5",X"A8",X"F0",X"FA",X"A9",X"00",X"85",
|
||||
X"A8",X"38",X"60",X"A9",X"02",X"85",X"11",X"A9",X"20",X"85",X"12",X"E6",X"6F",X"A5",X"6F",X"4A",
|
||||
X"90",X"04",X"A9",X"24",X"85",X"12",X"20",X"C9",X"D8",X"A0",X"00",X"A9",X"01",X"20",X"12",X"D8",
|
||||
X"20",X"C9",X"D8",X"AD",X"2E",X"01",X"0D",X"2B",X"01",X"D0",X"44",X"A2",X"46",X"20",X"B7",X"DC",
|
||||
X"A2",X"00",X"AD",X"2C",X"06",X"8E",X"2C",X"06",X"29",X"20",X"F0",X"21",X"AD",X"00",X"88",X"49",
|
||||
X"0F",X"29",X"0F",X"F0",X"0D",X"AD",X"01",X"03",X"29",X"03",X"0A",X"AA",X"20",X"EE",X"95",X"4C",
|
||||
X"99",X"94",X"EE",X"01",X"03",X"AD",X"01",X"03",X"29",X"03",X"8D",X"01",X"03",X"AD",X"01",X"03",
|
||||
X"AA",X"BD",X"8B",X"94",X"AA",X"20",X"B7",X"DC",X"4C",X"99",X"94",X"48",X"4A",X"4C",X"4E",X"A2",
|
||||
X"50",X"20",X"B7",X"DC",X"A9",X"00",X"8D",X"2C",X"06",X"A2",X"44",X"20",X"B7",X"DC",X"A5",X"7A",
|
||||
X"85",X"65",X"A5",X"7B",X"85",X"66",X"A9",X"00",X"85",X"63",X"20",X"4B",X"96",X"20",X"82",X"96",
|
||||
X"AD",X"2E",X"06",X"29",X"03",X"AA",X"BD",X"88",X"92",X"AA",X"20",X"B7",X"DC",X"AD",X"45",X"04",
|
||||
X"F0",X"22",X"A2",X"30",X"20",X"B7",X"DC",X"AD",X"2F",X"06",X"4A",X"4A",X"4A",X"4A",X"4A",X"4A",
|
||||
X"18",X"69",X"02",X"20",X"AF",X"D7",X"A9",X"04",X"85",X"1E",X"A9",X"00",X"18",X"20",X"AF",X"D7",
|
||||
X"C6",X"1E",X"D0",X"F6",X"A2",X"36",X"20",X"B7",X"DC",X"AD",X"2F",X"06",X"29",X"0C",X"4A",X"4A",
|
||||
X"69",X"03",X"20",X"AF",X"D7",X"A2",X"3A",X"20",X"B7",X"DC",X"AD",X"2F",X"06",X"29",X"03",X"AA",
|
||||
X"BD",X"25",X"9C",X"20",X"A1",X"DC",X"48",X"4A",X"4A",X"4A",X"4A",X"20",X"AF",X"D7",X"68",X"29",
|
||||
X"0F",X"20",X"AF",X"D7",X"A2",X"52",X"20",X"B7",X"DC",X"AD",X"2E",X"06",X"29",X"E0",X"4A",X"4A",
|
||||
X"4A",X"4A",X"4A",X"20",X"AF",X"D7",X"A2",X"54",X"20",X"B7",X"DC",X"AD",X"2E",X"06",X"29",X"10",
|
||||
X"4A",X"4A",X"4A",X"4A",X"18",X"69",X"01",X"20",X"AF",X"D7",X"A2",X"56",X"20",X"B7",X"DC",X"AD",
|
||||
X"2E",X"06",X"4A",X"4A",X"29",X"03",X"18",X"69",X"01",X"C9",X"01",X"F0",X"03",X"18",X"69",X"02",
|
||||
X"20",X"AF",X"D7",X"A5",X"7A",X"05",X"7B",X"D0",X"03",X"4C",X"A5",X"95",X"A2",X"38",X"20",X"B7",
|
||||
X"DC",X"A5",X"7C",X"85",X"1B",X"A5",X"7D",X"85",X"1C",X"A5",X"7E",X"85",X"1D",X"A9",X"00",X"85",
|
||||
X"65",X"85",X"66",X"E6",X"65",X"D0",X"02",X"E6",X"66",X"A5",X"1B",X"38",X"E5",X"7A",X"85",X"1B",
|
||||
X"A5",X"1C",X"E5",X"7B",X"85",X"1C",X"A5",X"1D",X"E9",X"00",X"85",X"1D",X"10",X"E5",X"A9",X"00",
|
||||
X"85",X"63",X"20",X"4B",X"96",X"A0",X"00",X"A5",X"1C",X"20",X"3F",X"CC",X"A5",X"1B",X"20",X"43",
|
||||
X"CC",X"88",X"20",X"05",X"D8",X"AD",X"2F",X"06",X"29",X"30",X"4A",X"4A",X"4A",X"4A",X"AA",X"BD",
|
||||
X"22",X"96",X"AA",X"20",X"B7",X"DC",X"AD",X"00",X"78",X"29",X"40",X"F0",X"F9",X"20",X"29",X"9C",
|
||||
X"A9",X"02",X"85",X"1B",X"A9",X"20",X"85",X"1C",X"A5",X"6F",X"4A",X"90",X"04",X"A9",X"24",X"85",
|
||||
X"1C",X"20",X"A6",X"D7",X"A9",X"00",X"85",X"11",X"A9",X"20",X"85",X"12",X"A6",X"1B",X"A5",X"1C",
|
||||
X"20",X"CF",X"D7",X"A9",X"00",X"8D",X"40",X"88",X"8D",X"20",X"01",X"85",X"81",X"60",X"BD",X"F8",
|
||||
X"95",X"48",X"BD",X"F7",X"95",X"48",X"60",X"75",X"E7",X"FE",X"95",X"08",X"96",X"1A",X"96",X"20",
|
||||
X"F6",X"CD",X"20",X"88",X"9F",X"20",X"8F",X"D6",X"60",X"78",X"A9",X"00",X"85",X"7C",X"85",X"7D",
|
||||
X"85",X"7E",X"85",X"7A",X"85",X"7B",X"58",X"20",X"93",X"D6",X"60",X"20",X"FF",X"95",X"20",X"09",
|
||||
X"96",X"60",X"3E",X"40",X"42",X"3C",X"20",X"9C",X"96",X"20",X"23",X"94",X"AD",X"20",X"01",X"D0",
|
||||
X"11",X"AD",X"00",X"78",X"29",X"40",X"D0",X"0D",X"A9",X"00",X"85",X"00",X"A9",X"AA",X"C5",X"00",
|
||||
X"D0",X"FA",X"4C",X"E2",X"90",X"8D",X"40",X"88",X"4C",X"E2",X"90",X"A9",X"00",X"85",X"1B",X"85",
|
||||
X"1C",X"85",X"1D",X"85",X"1E",X"A0",X"18",X"18",X"F8",X"A5",X"1B",X"65",X"1B",X"85",X"1B",X"A5",
|
||||
X"1C",X"65",X"1C",X"85",X"1C",X"A5",X"1D",X"65",X"1D",X"85",X"1D",X"A5",X"1E",X"65",X"1E",X"85",
|
||||
X"1E",X"D8",X"06",X"65",X"26",X"66",X"26",X"63",X"A5",X"1B",X"69",X"00",X"85",X"1B",X"88",X"D0",
|
||||
X"D6",X"60",X"A0",X"00",X"A5",X"1E",X"20",X"3F",X"CC",X"A5",X"1D",X"20",X"43",X"CC",X"A5",X"1C",
|
||||
X"20",X"43",X"CC",X"A5",X"1B",X"20",X"43",X"CC",X"88",X"4C",X"05",X"D8",X"24",X"EF",X"10",X"3F",
|
||||
X"AD",X"00",X"78",X"29",X"10",X"F0",X"20",X"AD",X"20",X"04",X"C9",X"05",X"D0",X"31",X"A9",X"00",
|
||||
X"8D",X"23",X"04",X"8D",X"22",X"04",X"8D",X"80",X"88",X"8D",X"20",X"01",X"85",X"8D",X"85",X"95",
|
||||
X"A9",X"01",X"8D",X"21",X"04",X"18",X"60",X"A9",X"05",X"8D",X"21",X"04",X"8D",X"0B",X"68",X"AD",
|
||||
X"08",X"68",X"29",X"03",X"AA",X"BD",X"25",X"9C",X"29",X"FC",X"8D",X"2B",X"06",X"18",X"60",X"AD",
|
||||
X"2F",X"06",X"29",X"C0",X"4A",X"4A",X"4A",X"4A",X"4A",X"4A",X"18",X"69",X"02",X"C9",X"05",X"D0",
|
||||
X"02",X"A9",X"00",X"8D",X"45",X"04",X"AD",X"2E",X"06",X"29",X"03",X"AA",X"4D",X"2E",X"06",X"1D",
|
||||
X"8C",X"92",X"85",X"8C",X"29",X"03",X"D0",X"0E",X"78",X"A5",X"99",X"29",X"F7",X"85",X"99",X"8D",
|
||||
X"00",X"88",X"58",X"4C",X"21",X"97",X"78",X"A5",X"99",X"09",X"08",X"85",X"99",X"8D",X"00",X"88",
|
||||
X"58",X"A5",X"8C",X"29",X"03",X"D0",X"05",X"A9",X"02",X"4C",X"3B",X"97",X"A5",X"8D",X"D0",X"0B",
|
||||
X"A5",X"99",X"09",X"F0",X"85",X"99",X"8D",X"00",X"88",X"18",X"60",X"24",X"EF",X"30",X"02",X"18",
|
||||
X"60",X"A2",X"EF",X"C9",X"02",X"90",X"02",X"A2",X"CF",X"78",X"A5",X"99",X"09",X"30",X"85",X"99",
|
||||
X"AD",X"D0",X"03",X"29",X"20",X"F0",X"05",X"8A",X"25",X"99",X"85",X"99",X"A5",X"99",X"8D",X"00",
|
||||
X"88",X"58",X"A5",X"8C",X"29",X"03",X"F0",X"06",X"A5",X"8D",X"C9",X"02",X"90",X"30",X"AD",X"2C",
|
||||
X"06",X"D0",X"07",X"18",X"A9",X"00",X"8D",X"2C",X"06",X"60",X"78",X"A2",X"00",X"8E",X"2C",X"06",
|
||||
X"58",X"29",X"20",X"D0",X"20",X"A9",X"01",X"8D",X"CA",X"04",X"8D",X"C8",X"04",X"A5",X"8C",X"29",
|
||||
X"03",X"F0",X"02",X"C6",X"8D",X"E6",X"7A",X"D0",X"02",X"E6",X"7B",X"4C",X"AF",X"97",X"AD",X"2C",
|
||||
X"06",X"29",X"20",X"F0",X"CE",X"78",X"A9",X"00",X"8D",X"2C",X"06",X"58",X"8D",X"C8",X"04",X"A9",
|
||||
X"00",X"8D",X"C9",X"04",X"A5",X"8C",X"29",X"03",X"F0",X"02",X"C6",X"8D",X"E6",X"7A",X"D0",X"02",
|
||||
X"E6",X"7B",X"68",X"68",X"A9",X"00",X"85",X"F5",X"85",X"F4",X"AD",X"2F",X"06",X"29",X"30",X"4A",
|
||||
X"4A",X"4A",X"4A",X"85",X"F6",X"C9",X"03",X"D0",X"0A",X"A5",X"8C",X"29",X"E3",X"F0",X"04",X"A9",
|
||||
X"02",X"85",X"F6",X"A9",X"00",X"8D",X"41",X"04",X"8D",X"42",X"04",X"8D",X"43",X"04",X"A9",X"07",
|
||||
X"8D",X"21",X"04",X"AD",X"2F",X"06",X"29",X"0C",X"4A",X"4A",X"69",X"02",X"8D",X"40",X"04",X"20",
|
||||
X"DC",X"B7",X"A9",X"04",X"8D",X"58",X"04",X"A9",X"FF",X"85",X"9A",X"A9",X"00",X"8D",X"47",X"04",
|
||||
X"85",X"EF",X"8D",X"2C",X"06",X"A9",X"03",X"8D",X"5C",X"04",X"20",X"0E",X"BE",X"A2",X"0F",X"A9",
|
||||
X"00",X"9D",X"48",X"04",X"CA",X"10",X"FA",X"A2",X"10",X"A9",X"03",X"9D",X"00",X"02",X"E0",X"50",
|
||||
X"90",X"06",X"9D",X"7B",X"04",X"9D",X"2B",X"05",X"8A",X"18",X"69",X"10",X"AA",X"D0",X"EA",X"A0",
|
||||
X"35",X"A2",X"00",X"BD",X"29",X"04",X"9D",X"93",X"04",X"9D",X"5E",X"04",X"E8",X"88",X"D0",X"F3",
|
||||
X"4C",X"13",X"91",X"AD",X"D4",X"03",X"D0",X"22",X"A5",X"EF",X"10",X"1B",X"20",X"9C",X"96",X"AD",
|
||||
X"00",X"02",X"C9",X"03",X"D0",X"11",X"A9",X"FF",X"85",X"9A",X"A9",X"00",X"8D",X"5D",X"04",X"A9",
|
||||
X"04",X"8D",X"58",X"04",X"4C",X"7F",X"98",X"4C",X"A2",X"98",X"A9",X"00",X"8D",X"D4",X"03",X"A9",
|
||||
X"00",X"8D",X"00",X"21",X"8D",X"06",X"21",X"A9",X"02",X"8D",X"00",X"02",X"A9",X"00",X"8D",X"28",
|
||||
X"04",X"A9",X"08",X"05",X"5E",X"85",X"5E",X"20",X"C7",X"A0",X"A9",X"00",X"8D",X"00",X"02",X"4C",
|
||||
X"63",X"99",X"A9",X"00",X"85",X"00",X"A5",X"00",X"C9",X"AA",X"D0",X"FA",X"20",X"F1",X"B1",X"C6",
|
||||
X"FF",X"D0",X"EF",X"A5",X"FE",X"85",X"FF",X"A5",X"FC",X"F0",X"0F",X"AD",X"00",X"88",X"29",X"40",
|
||||
X"A8",X"45",X"FD",X"84",X"FD",X"F0",X"DB",X"98",X"F0",X"D8",X"E6",X"6F",X"A5",X"6F",X"29",X"01",
|
||||
X"D0",X"03",X"20",X"72",X"D9",X"20",X"D2",X"A3",X"20",X"C7",X"A0",X"8D",X"80",X"89",X"20",X"F5",
|
||||
X"A5",X"8D",X"80",X"89",X"A9",X"00",X"85",X"21",X"85",X"40",X"A0",X"40",X"20",X"CF",X"CE",X"20",
|
||||
X"30",X"CF",X"A5",X"6C",X"F0",X"26",X"A2",X"10",X"A9",X"03",X"9D",X"00",X"02",X"8A",X"18",X"69",
|
||||
X"10",X"AA",X"C9",X"50",X"90",X"F2",X"A9",X"00",X"85",X"79",X"AD",X"00",X"02",X"C9",X"03",X"D0",
|
||||
X"03",X"4C",X"A6",X"99",X"A9",X"02",X"8D",X"00",X"02",X"8D",X"01",X"03",X"A9",X"00",X"85",X"40",
|
||||
X"A5",X"40",X"18",X"69",X"10",X"C9",X"50",X"D0",X"03",X"4C",X"39",X"99",X"85",X"40",X"A0",X"50",
|
||||
X"20",X"B3",X"CE",X"20",X"30",X"CF",X"4C",X"20",X"99",X"A9",X"50",X"85",X"40",X"18",X"69",X"10",
|
||||
X"90",X"03",X"4C",X"E2",X"90",X"A8",X"20",X"B3",X"CE",X"20",X"30",X"CF",X"A5",X"6E",X"18",X"69",
|
||||
X"10",X"4C",X"3B",X"99",X"A0",X"10",X"A9",X"03",X"99",X"00",X"02",X"98",X"18",X"69",X"10",X"A8",
|
||||
X"D0",X"F4",X"60",X"A9",X"00",X"85",X"73",X"24",X"EF",X"30",X"02",X"E6",X"73",X"A9",X"A2",X"8D",
|
||||
X"02",X"01",X"8D",X"03",X"01",X"A9",X"00",X"8D",X"06",X"02",X"85",X"6C",X"8D",X"0B",X"02",X"8D",
|
||||
X"09",X"02",X"A9",X"64",X"8D",X"0C",X"02",X"AD",X"C8",X"04",X"F0",X"0D",X"AD",X"C9",X"04",X"F0",
|
||||
X"08",X"A9",X"64",X"8D",X"0A",X"02",X"4C",X"9E",X"99",X"A9",X"CC",X"8D",X"0A",X"02",X"20",X"3B",
|
||||
X"9C",X"4C",X"2C",X"96",X"BF",X"00",X"A9",X"00",X"8D",X"00",X"02",X"8D",X"03",X"03",X"8D",X"D3",
|
||||
X"03",X"8D",X"06",X"02",X"8D",X"3A",X"04",X"8D",X"3B",X"04",X"8D",X"04",X"03",X"AD",X"28",X"04",
|
||||
X"F0",X"0F",X"A2",X"0F",X"A9",X"00",X"9D",X"48",X"04",X"CA",X"10",X"F8",X"A9",X"00",X"8D",X"28",
|
||||
X"04",X"AD",X"01",X"02",X"29",X"EF",X"8D",X"01",X"02",X"24",X"EF",X"10",X"03",X"4C",X"63",X"99",
|
||||
X"CE",X"40",X"04",X"10",X"6E",X"A9",X"01",X"8D",X"20",X"01",X"8D",X"80",X"88",X"20",X"AA",X"9C",
|
||||
X"A9",X"FE",X"18",X"65",X"11",X"85",X"11",X"A5",X"12",X"69",X"FF",X"85",X"12",X"A2",X"00",X"20",
|
||||
X"B7",X"DC",X"AD",X"C8",X"04",X"F0",X"0E",X"A2",X"02",X"20",X"B7",X"DC",X"AD",X"C9",X"04",X"18",
|
||||
X"69",X"01",X"20",X"AF",X"D7",X"A2",X"1A",X"20",X"B7",X"DC",X"AD",X"5D",X"04",X"18",X"69",X"01",
|
||||
X"20",X"A1",X"DC",X"48",X"4A",X"4A",X"4A",X"4A",X"38",X"20",X"AF",X"D7",X"68",X"29",X"0F",X"20",
|
||||
X"AF",X"D7",X"20",X"A2",X"D7",X"A9",X"03",X"8D",X"22",X"04",X"20",X"C1",X"91",X"AD",X"00",X"78",
|
||||
X"29",X"40",X"D0",X"0A",X"A9",X"00",X"85",X"00",X"A9",X"AA",X"C5",X"00",X"D0",X"FA",X"AD",X"22",
|
||||
X"04",X"D0",X"E7",X"A9",X"29",X"85",X"4C",X"A9",X"04",X"85",X"4D",X"AD",X"C8",X"04",X"F0",X"05",
|
||||
X"AD",X"C9",X"04",X"D0",X"18",X"A9",X"5E",X"85",X"49",X"A9",X"04",X"85",X"4A",X"A2",X"00",X"BD",
|
||||
X"50",X"02",X"9D",X"CB",X"04",X"E8",X"E0",X"B0",X"D0",X"F5",X"4C",X"92",X"9A",X"A9",X"93",X"85",
|
||||
X"49",X"A9",X"04",X"85",X"4A",X"A2",X"00",X"BD",X"50",X"02",X"9D",X"7B",X"05",X"E8",X"E0",X"B0",
|
||||
X"D0",X"F5",X"A2",X"35",X"20",X"5C",X"A0",X"AD",X"C8",X"04",X"D0",X"03",X"4C",X"22",X"9B",X"AD",
|
||||
X"C9",X"04",X"D0",X"10",X"AD",X"AA",X"04",X"30",X"79",X"A9",X"93",X"85",X"4C",X"A9",X"04",X"85",
|
||||
X"4D",X"4C",X"C1",X"9A",X"AD",X"75",X"04",X"30",X"69",X"A9",X"5E",X"85",X"4C",X"A9",X"04",X"85",
|
||||
X"4D",X"A2",X"35",X"A9",X"29",X"85",X"49",X"A9",X"04",X"85",X"4A",X"20",X"5C",X"A0",X"A9",X"FF",
|
||||
X"4D",X"C9",X"04",X"29",X"01",X"8D",X"C9",X"04",X"A2",X"00",X"AD",X"C8",X"04",X"F0",X"05",X"AD",
|
||||
X"C9",X"04",X"D0",X"0E",X"BD",X"CB",X"04",X"9D",X"50",X"02",X"E8",X"E0",X"B0",X"D0",X"F5",X"4C",
|
||||
X"FD",X"9A",X"BD",X"7B",X"05",X"9D",X"50",X"02",X"E8",X"E0",X"B0",X"D0",X"F5",X"AD",X"C9",X"04",
|
||||
X"F0",X"20",X"AD",X"CA",X"04",X"F0",X"1B",X"AD",X"C3",X"04",X"8D",X"59",X"04",X"8D",X"3E",X"04",
|
||||
X"A9",X"00",X"8D",X"CA",X"04",X"A9",X"07",X"8D",X"21",X"04",X"A9",X"1E",X"8D",X"22",X"04",X"4C",
|
||||
X"13",X"91",X"AD",X"C8",X"04",X"D0",X"08",X"AD",X"75",X"04",X"10",X"10",X"4C",X"62",X"9B",X"AD",
|
||||
X"75",X"04",X"10",X"08",X"AD",X"AA",X"04",X"10",X"03",X"4C",X"62",X"9B",X"A2",X"10",X"BD",X"01",
|
||||
X"02",X"29",X"07",X"C9",X"03",X"D0",X"07",X"BD",X"00",X"02",X"29",X"02",X"F0",X"05",X"A9",X"03",
|
||||
X"9D",X"00",X"02",X"8A",X"18",X"69",X"10",X"AA",X"D0",X"E4",X"A9",X"06",X"8D",X"21",X"04",X"4C",
|
||||
X"13",X"91",X"A5",X"F6",X"C9",X"03",X"F0",X"03",X"20",X"93",X"D6",X"A9",X"00",X"8D",X"C9",X"04",
|
||||
X"AD",X"76",X"04",X"8D",X"41",X"04",X"AD",X"77",X"04",X"8D",X"42",X"04",X"AD",X"78",X"04",X"8D",
|
||||
X"43",X"04",X"AD",X"92",X"04",X"8D",X"5D",X"04",X"AD",X"92",X"04",X"8D",X"59",X"04",X"AE",X"C8",
|
||||
X"04",X"F0",X"0B",X"AD",X"59",X"04",X"CD",X"C7",X"04",X"B0",X"03",X"AD",X"C7",X"04",X"CD",X"2B",
|
||||
X"06",X"90",X"05",X"F0",X"03",X"4C",X"BD",X"9B",X"A9",X"0D",X"85",X"19",X"AD",X"2F",X"06",X"29",
|
||||
X"03",X"AA",X"AD",X"2B",X"06",X"DD",X"25",X"9C",X"90",X"08",X"38",X"E9",X"04",X"29",X"FC",X"8D",
|
||||
X"2B",X"06",X"8D",X"59",X"04",X"8D",X"8E",X"04",X"8D",X"C3",X"04",X"20",X"90",X"CC",X"A9",X"00",
|
||||
X"8D",X"2C",X"06",X"A9",X"80",X"85",X"EF",X"AD",X"21",X"04",X"C9",X"04",X"D0",X"03",X"4C",X"13",
|
||||
X"91",X"AD",X"C8",X"04",X"F0",X"25",X"AD",X"C9",X"04",X"D0",X"20",X"A9",X"01",X"8D",X"C9",X"04",
|
||||
X"AD",X"AB",X"04",X"8D",X"41",X"04",X"AD",X"AC",X"04",X"8D",X"42",X"04",X"AD",X"AD",X"04",X"8D",
|
||||
X"43",X"04",X"AD",X"C7",X"04",X"8D",X"5D",X"04",X"4C",X"CB",X"9B",X"A9",X"1E",X"8D",X"24",X"04",
|
||||
X"A9",X"00",X"8D",X"20",X"04",X"8D",X"22",X"04",X"8D",X"23",X"04",X"8D",X"2C",X"06",X"A9",X"80",
|
||||
X"85",X"EF",X"4C",X"E2",X"90",X"0D",X"15",X"25",X"35",X"78",X"A9",X"01",X"8D",X"20",X"01",X"8D",
|
||||
X"80",X"88",X"AD",X"00",X"78",X"29",X"40",X"F0",X"F9",X"58",X"60",X"24",X"EF",X"30",X"6A",X"AD",
|
||||
X"C8",X"04",X"F0",X"30",X"A9",X"E4",X"A0",X"00",X"91",X"61",X"A9",X"00",X"A0",X"06",X"AE",X"AA",
|
||||
X"04",X"30",X"02",X"A9",X"E7",X"91",X"61",X"AD",X"C9",X"04",X"D0",X"09",X"AD",X"AA",X"04",X"18",
|
||||
X"69",X"02",X"4C",X"6B",X"9C",X"AD",X"AA",X"04",X"18",X"69",X"01",X"0A",X"AA",X"BD",X"C4",X"5D",
|
||||
X"A0",X"08",X"91",X"61",X"A9",X"E4",X"A0",X"00",X"91",X"5F",X"A0",X"06",X"A9",X"00",X"AE",X"75",
|
||||
X"04",X"30",X"02",X"A9",X"E7",X"91",X"5F",X"AD",X"C8",X"04",X"F0",X"0E",X"AD",X"C9",X"04",X"F0",
|
||||
X"09",X"AD",X"75",X"04",X"18",X"69",X"02",X"4C",X"A0",X"9C",X"AD",X"75",X"04",X"18",X"69",X"01",
|
||||
X"0A",X"AA",X"BD",X"C4",X"5D",X"A0",X"08",X"91",X"5F",X"60",X"A9",X"00",X"85",X"11",X"A9",X"20",
|
||||
X"85",X"12",X"20",X"C9",X"D8",X"A9",X"01",X"20",X"10",X"D8",X"A9",X"20",X"18",X"69",X"04",X"A2",
|
||||
X"00",X"20",X"E3",X"D7",X"20",X"A6",X"D7",X"A9",X"00",X"85",X"AA",X"85",X"11",X"A9",X"20",X"18",
|
||||
X"69",X"04",X"85",X"AB",X"85",X"12",X"60",X"AD",X"2B",X"06",X"8D",X"59",X"04",X"A9",X"0F",X"8D",
|
||||
X"22",X"04",X"20",X"AA",X"9C",X"A9",X"00",X"8D",X"5D",X"04",X"8D",X"2C",X"06",X"20",X"70",X"DA",
|
||||
X"4C",X"C1",X"91",X"A5",X"F6",X"C9",X"03",X"D0",X"15",X"A9",X"45",X"8D",X"22",X"04",X"AD",X"5D",
|
||||
X"04",X"C9",X"5D",X"B0",X"03",X"18",X"69",X"04",X"8D",X"2B",X"06",X"8D",X"59",X"04",X"E6",X"6F",
|
||||
X"A5",X"6F",X"29",X"07",X"F0",X"03",X"4C",X"69",X"9D",X"AD",X"00",X"88",X"49",X"0F",X"29",X"0F",
|
||||
X"F0",X"0A",X"A8",X"29",X"08",X"D0",X"50",X"98",X"29",X"04",X"D0",X"5C",X"AD",X"00",X"80",X"49",
|
||||
X"0F",X"29",X"0F",X"F0",X"34",X"A9",X"00",X"8D",X"2C",X"06",X"8D",X"2D",X"06",X"AD",X"00",X"88",
|
||||
X"49",X"FF",X"29",X"60",X"F0",X"23",X"A9",X"00",X"8D",X"2C",X"06",X"8D",X"5A",X"04",X"CE",X"5D",
|
||||
X"04",X"30",X"05",X"A9",X"02",X"8D",X"5A",X"04",X"AD",X"5D",X"04",X"8D",X"59",X"04",X"A9",X"01",
|
||||
X"8D",X"21",X"04",X"8D",X"D4",X"03",X"4C",X"13",X"91",X"20",X"AA",X"9C",X"20",X"70",X"DA",X"AD",
|
||||
X"22",X"04",X"F0",X"D2",X"4C",X"2C",X"96",X"AD",X"5D",X"04",X"F0",X"B0",X"38",X"E9",X"04",X"8D",
|
||||
X"5D",X"04",X"20",X"32",X"BD",X"4C",X"2C",X"9D",X"AD",X"5D",X"04",X"CD",X"59",X"04",X"B0",X"9C",
|
||||
X"18",X"69",X"04",X"8D",X"5D",X"04",X"20",X"32",X"BD",X"4C",X"2C",X"9D",X"A9",X"00",X"85",X"11",
|
||||
X"A9",X"20",X"85",X"12",X"20",X"C9",X"D8",X"A9",X"01",X"20",X"10",X"D8",X"A5",X"11",X"85",X"53",
|
||||
X"A5",X"12",X"85",X"54",X"A9",X"E4",X"A2",X"00",X"20",X"5B",X"D8",X"A9",X"80",X"85",X"08",X"A9",
|
||||
X"FE",X"85",X"09",X"A9",X"80",X"85",X"0A",X"A9",X"01",X"85",X"0B",X"20",X"E2",X"D8",X"20",X"A2",
|
||||
X"D8",X"A9",X"08",X"A2",X"04",X"20",X"1D",X"D8",X"A5",X"11",X"85",X"5F",X"A5",X"12",X"85",X"60",
|
||||
X"20",X"2F",X"A0",X"A5",X"11",X"85",X"55",X"A5",X"12",X"85",X"56",X"A9",X"E4",X"A2",X"00",X"20",
|
||||
X"5B",X"D8",X"A9",X"E0",X"85",X"08",X"A9",X"00",X"85",X"09",X"A9",X"80",X"85",X"0A",X"A9",X"01",
|
||||
X"85",X"0B",X"20",X"E2",X"D8",X"20",X"A2",X"D8",X"A9",X"08",X"A2",X"04",X"20",X"1D",X"D8",X"A5",
|
||||
X"11",X"85",X"61",X"A5",X"12",X"85",X"62",X"20",X"2F",X"A0",X"8D",X"80",X"89",X"20",X"68",X"9E",
|
||||
X"8D",X"80",X"89",X"20",X"A2",X"9E",X"A9",X"20",X"18",X"69",X"04",X"A2",X"00",X"20",X"E3",X"D7",
|
||||
X"20",X"A6",X"D7",X"A9",X"00",X"85",X"11",X"85",X"AA",X"A9",X"20",X"18",X"69",X"04",X"85",X"12",
|
||||
X"85",X"AB",X"20",X"A2",X"D7",X"A2",X"40",X"A0",X"0C",X"A5",X"F6",X"C9",X"03",X"F0",X"06",X"A9",
|
||||
X"0D",X"38",X"E5",X"F6",X"A8",X"98",X"9D",X"05",X"02",X"A9",X"04",X"9D",X"01",X"02",X"8A",X"38",
|
||||
X"E9",X"10",X"AA",X"D0",X"F0",X"4C",X"C1",X"91",X"20",X"C9",X"D8",X"A9",X"01",X"20",X"10",X"D8",
|
||||
X"A9",X"00",X"AA",X"A9",X"25",X"20",X"E3",X"D7",X"A5",X"11",X"85",X"13",X"A5",X"12",X"85",X"14",
|
||||
X"A9",X"25",X"85",X"12",X"A9",X"00",X"85",X"11",X"A9",X"40",X"85",X"0C",X"A9",X"A1",X"A2",X"00",
|
||||
X"20",X"5B",X"D8",X"20",X"76",X"BE",X"20",X"A2",X"D7",X"A5",X"13",X"85",X"11",X"A5",X"14",X"85",
|
||||
X"12",X"60",X"A2",X"00",X"A9",X"22",X"20",X"CF",X"D7",X"A5",X"11",X"48",X"A5",X"12",X"48",X"20",
|
||||
X"C9",X"D8",X"A2",X"00",X"A9",X"20",X"18",X"69",X"04",X"20",X"E3",X"D7",X"20",X"A6",X"D7",X"A2",
|
||||
X"00",X"A9",X"00",X"9D",X"00",X"22",X"9D",X"01",X"22",X"9D",X"02",X"22",X"9D",X"03",X"22",X"8A",
|
||||
X"09",X"80",X"9D",X"04",X"22",X"A9",X"A0",X"9D",X"05",X"22",X"A9",X"40",X"9D",X"06",X"22",X"A9",
|
||||
X"80",X"9D",X"07",X"22",X"8A",X"18",X"69",X"08",X"AA",X"C9",X"80",X"D0",X"D4",X"68",X"85",X"4D",
|
||||
X"68",X"85",X"4C",X"46",X"4D",X"66",X"4C",X"A5",X"4C",X"8D",X"7E",X"22",X"A5",X"4D",X"29",X"0F",
|
||||
X"09",X"E0",X"8D",X"7F",X"22",X"A2",X"00",X"A9",X"00",X"9D",X"00",X"21",X"A9",X"60",X"9D",X"01",
|
||||
X"21",X"A9",X"00",X"9D",X"02",X"21",X"A9",X"71",X"9D",X"03",X"21",X"A9",X"00",X"9D",X"04",X"21",
|
||||
X"A9",X"B4",X"9D",X"05",X"21",X"A9",X"00",X"9D",X"06",X"21",X"A9",X"60",X"9D",X"07",X"21",X"A9",
|
||||
X"00",X"9D",X"08",X"21",X"A9",X"AF",X"9D",X"09",X"21",X"A9",X"00",X"9D",X"0A",X"21",X"A9",X"71",
|
||||
X"9D",X"0B",X"21",X"A9",X"00",X"9D",X"0C",X"21",X"A9",X"60",X"9D",X"0D",X"21",X"A9",X"00",X"9D",
|
||||
X"0E",X"21",X"A9",X"C0",X"9D",X"0F",X"21",X"8A",X"18",X"69",X"10",X"AA",X"90",X"A9",X"A9",X"00",
|
||||
X"85",X"11",X"A9",X"20",X"18",X"69",X"03",X"85",X"12",X"A0",X"00",X"B9",X"69",X"D8",X"91",X"11",
|
||||
X"C8",X"C0",X"10",X"D0",X"F6",X"A5",X"11",X"18",X"69",X"10",X"85",X"11",X"90",X"EB",X"A9",X"00",
|
||||
X"85",X"73",X"A9",X"03",X"8D",X"00",X"02",X"60",X"A2",X"00",X"BD",X"A3",X"9F",X"9D",X"10",X"03",
|
||||
X"E8",X"E0",X"15",X"D0",X"F5",X"A2",X"00",X"BD",X"B8",X"9F",X"9D",X"25",X"03",X"E8",X"E0",X"77",
|
||||
X"D0",X"F5",X"60",X"C2",X"D7",X"CD",X"05",X"43",X"21",X"14",X"12",X"47",X"82",X"04",X"32",X"10",
|
||||
X"11",X"10",X"04",X"11",X"03",X"21",X"00",X"09",X"DB",X"1B",X"5B",X"01",X"08",X"01",X"11",X"C2",
|
||||
X"04",X"4D",X"01",X"01",X"01",X"11",X"D2",X"05",X"4F",X"01",X"01",X"01",X"11",X"D5",X"0E",X"52",
|
||||
X"01",X"01",X"01",X"11",X"C3",X"0E",X"47",X"01",X"01",X"01",X"11",X"C5",X"09",X"41",X"01",X"01",
|
||||
X"01",X"11",X"DB",X"13",X"4E",X"01",X"01",X"01",X"11",X"C2",X"9B",X"17",X"01",X"01",X"01",X"11",
|
||||
X"CC",X"9B",X"09",X"01",X"01",X"01",X"11",X"C1",X"9B",X"04",X"01",X"01",X"01",X"11",X"C3",X"9B");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,278 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity bwidow_pgm_rom2 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 bwidow_pgm_rom2 is
|
||||
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"0F",X"01",X"01",X"01",X"11",X"CB",X"9B",X"17",X"01",X"01",X"01",X"11",X"C1",X"9B",X"07",X"01",
|
||||
X"01",X"01",X"11",X"D4",X"9B",X"01",X"01",X"01",X"01",X"11",X"C1",X"9B",X"0D",X"01",X"01",X"01",
|
||||
X"11",X"D2",X"9B",X"05",X"01",X"01",X"01",X"11",X"C9",X"9B",X"13",X"01",X"01",X"01",X"11",X"A9",
|
||||
X"00",X"AA",X"20",X"5B",X"D8",X"A9",X"5A",X"AA",X"A9",X"2F",X"20",X"E3",X"D7",X"A0",X"60",X"A9",
|
||||
X"01",X"20",X"12",X"D8",X"A9",X"00",X"A2",X"00",X"20",X"5B",X"D8",X"A9",X"00",X"38",X"20",X"AF",
|
||||
X"D7",X"A0",X"00",X"A9",X"01",X"20",X"12",X"D8",X"20",X"C9",X"D8",X"60",X"A0",X"00",X"B1",X"4C",
|
||||
X"91",X"49",X"C8",X"CA",X"D0",X"F8",X"60",X"A4",X"03",X"08",X"A9",X"00",X"A0",X"08",X"46",X"03",
|
||||
X"90",X"03",X"18",X"65",X"02",X"6A",X"66",X"01",X"88",X"D0",X"F3",X"28",X"10",X"03",X"38",X"E5",
|
||||
X"02",X"60",X"A2",X"0F",X"A0",X"00",X"B1",X"4C",X"91",X"49",X"C8",X"C0",X"10",X"D0",X"F7",X"A5",
|
||||
X"49",X"18",X"6D",X"35",X"04",X"85",X"49",X"90",X"02",X"E6",X"4A",X"CA",X"D0",X"E6",X"60",X"A5",
|
||||
X"4D",X"30",X"12",X"A5",X"4A",X"30",X"1D",X"A5",X"4C",X"38",X"E5",X"49",X"A5",X"4D",X"E5",X"4A",
|
||||
X"10",X"12",X"A9",X"FF",X"60",X"A5",X"4A",X"10",X"F9",X"A5",X"49",X"38",X"E5",X"4C",X"A5",X"4A",
|
||||
X"E5",X"4D",X"30",X"EE",X"A9",X"00",X"60",X"A2",X"00",X"A5",X"5E",X"D0",X"01",X"60",X"4A",X"B0",
|
||||
X"05",X"E8",X"E8",X"4C",X"CE",X"A0",X"BD",X"E0",X"A0",X"48",X"BD",X"DF",X"A0",X"48",X"60",X"EE",
|
||||
X"A0",X"F9",X"A1",X"3C",X"A2",X"72",X"A1",X"64",X"A2",X"65",X"A2",X"66",X"A2",X"67",X"A2",X"A5",
|
||||
X"6F",X"29",X"03",X"D0",X"E9",X"A5",X"74",X"85",X"49",X"A5",X"75",X"85",X"4A",X"A9",X"08",X"85",
|
||||
X"4C",X"A6",X"4B",X"8A",X"29",X"10",X"D0",X"0D",X"8A",X"29",X"07",X"AA",X"BD",X"6B",X"A1",X"8D",
|
||||
X"00",X"25",X"4C",X"3C",X"A1",X"A9",X"A1",X"20",X"5B",X"A1",X"A5",X"49",X"18",X"69",X"4E",X"85",
|
||||
X"49",X"A5",X"4A",X"69",X"00",X"85",X"4A",X"E8",X"8A",X"29",X"07",X"AA",X"C6",X"4C",X"D0",X"E5",
|
||||
X"A9",X"A1",X"8D",X"00",X"25",X"A5",X"5E",X"29",X"FE",X"85",X"5E",X"60",X"BD",X"6B",X"A1",X"20",
|
||||
X"5B",X"A1",X"A5",X"49",X"18",X"69",X"4E",X"85",X"49",X"A5",X"4A",X"69",X"00",X"85",X"4A",X"E8",
|
||||
X"8A",X"29",X"07",X"AA",X"C6",X"4C",X"D0",X"E4",X"E6",X"4B",X"60",X"A0",X"04",X"91",X"49",X"48",
|
||||
X"98",X"18",X"69",X"06",X"A8",X"68",X"C0",X"4C",X"D0",X"F3",X"60",X"E1",X"E2",X"E3",X"E4",X"E5",
|
||||
X"E6",X"E7",X"E4",X"A9",X"0B",X"85",X"19",X"A6",X"19",X"BD",X"29",X"04",X"F0",X"16",X"20",X"CA",
|
||||
X"A1",X"BD",X"29",X"04",X"29",X"C0",X"4A",X"4A",X"4A",X"4A",X"4A",X"4A",X"A8",X"B9",X"A2",X"A1",
|
||||
X"A0",X"00",X"91",X"49",X"C6",X"19",X"10",X"DF",X"A9",X"00",X"8D",X"01",X"03",X"A9",X"00",X"85",
|
||||
X"5E",X"60",X"01",X"02",X"04",X"04",X"04",X"0A",X"10",X"16",X"1C",X"22",X"28",X"2E",X"34",X"3A",
|
||||
X"40",X"46",X"00",X"00",X"4E",X"00",X"9C",X"00",X"EA",X"00",X"38",X"01",X"86",X"01",X"D4",X"01",
|
||||
X"22",X"02",X"01",X"02",X"04",X"08",X"10",X"20",X"40",X"80",X"A0",X"00",X"29",X"3F",X"F0",X"06",
|
||||
X"C8",X"38",X"E9",X"06",X"D0",X"FA",X"98",X"48",X"0A",X"A8",X"B9",X"B2",X"A1",X"18",X"7D",X"A6",
|
||||
X"A1",X"85",X"49",X"A9",X"00",X"79",X"B3",X"A1",X"85",X"4A",X"18",X"A5",X"74",X"65",X"49",X"85",
|
||||
X"49",X"A5",X"75",X"65",X"4A",X"85",X"4A",X"68",X"A8",X"60",X"A5",X"6F",X"29",X"02",X"D0",X"F9",
|
||||
X"E6",X"A5",X"A5",X"A5",X"29",X"0F",X"D0",X"05",X"A9",X"0D",X"85",X"5E",X"60",X"85",X"1D",X"A9",
|
||||
X"00",X"85",X"1B",X"85",X"1E",X"A9",X"00",X"85",X"1C",X"A6",X"1B",X"A4",X"1C",X"20",X"D6",X"A1",
|
||||
X"A0",X"00",X"A5",X"1D",X"29",X"07",X"09",X"E0",X"91",X"49",X"E6",X"1C",X"A5",X"1C",X"29",X"07",
|
||||
X"D0",X"E7",X"E6",X"1D",X"E6",X"1B",X"A5",X"1B",X"C9",X"0C",X"90",X"D9",X"60",X"AD",X"5D",X"04",
|
||||
X"C9",X"0C",X"90",X"06",X"38",X"E9",X"0C",X"4C",X"40",X"A2",X"0A",X"0A",X"85",X"19",X"0A",X"65",
|
||||
X"19",X"A8",X"A2",X"00",X"B9",X"17",X"B8",X"9D",X"29",X"04",X"C8",X"E8",X"E0",X"0C",X"D0",X"F4",
|
||||
X"A9",X"08",X"85",X"5E",X"60",X"60",X"60",X"60",X"60",X"98",X"10",X"0E",X"49",X"FF",X"18",X"69",
|
||||
X"01",X"20",X"7A",X"A2",X"49",X"FF",X"18",X"69",X"01",X"60",X"A8",X"8A",X"10",X"10",X"49",X"FF",
|
||||
X"18",X"69",X"01",X"20",X"8E",X"A2",X"49",X"20",X"49",X"FF",X"18",X"69",X"01",X"60",X"85",X"1A",
|
||||
X"98",X"C5",X"1A",X"F0",X"2F",X"90",X"11",X"A4",X"1A",X"85",X"1A",X"98",X"20",X"A8",X"A2",X"38",
|
||||
X"E9",X"10",X"49",X"FF",X"18",X"69",X"01",X"60",X"A0",X"00",X"84",X"19",X"A0",X"04",X"26",X"19",
|
||||
X"2A",X"C5",X"1A",X"90",X"02",X"E5",X"1A",X"88",X"D0",X"F4",X"A5",X"19",X"2A",X"29",X"0F",X"AA",
|
||||
X"BD",X"C7",X"A2",X"60",X"A9",X"08",X"60",X"00",X"01",X"02",X"02",X"02",X"03",X"04",X"04",X"05",
|
||||
X"05",X"06",X"06",X"06",X"07",X"07",X"07",X"6B",X"00",X"BD",X"01",X"02",X"A8",X"29",X"20",X"F0",
|
||||
X"14",X"98",X"38",X"E9",X"40",X"A8",X"29",X"C0",X"F0",X"05",X"98",X"9D",X"01",X"02",X"60",X"98",
|
||||
X"29",X"1F",X"4C",X"EB",X"A2",X"98",X"18",X"69",X"40",X"A8",X"29",X"C0",X"C9",X"C0",X"D0",X"EA",
|
||||
X"98",X"29",X"1F",X"09",X"60",X"A8",X"29",X"0F",X"C9",X"04",X"D0",X"DE",X"98",X"29",X"1F",X"4C",
|
||||
X"EB",X"A2",X"E0",X"00",X"D0",X"05",X"A5",X"71",X"4C",X"1E",X"A3",X"BD",X"06",X"02",X"18",X"69",
|
||||
X"02",X"4A",X"4A",X"29",X"0F",X"85",X"19",X"BD",X"01",X"02",X"85",X"1A",X"29",X"0F",X"C9",X"03",
|
||||
X"F0",X"0F",X"48",X"A9",X"00",X"9D",X"0A",X"21",X"A9",X"71",X"9D",X"0B",X"21",X"68",X"4C",X"59",
|
||||
X"A3",X"BD",X"02",X"02",X"D0",X"09",X"A5",X"1A",X"29",X"F0",X"09",X"02",X"4C",X"55",X"A3",X"A5",
|
||||
X"1A",X"29",X"F0",X"09",X"06",X"85",X"1A",X"29",X"0F",X"C9",X"05",X"D0",X"04",X"A9",X"50",X"D0",
|
||||
X"21",X"C9",X"0B",X"F0",X"13",X"C9",X"04",X"D0",X"13",X"A5",X"1A",X"29",X"C0",X"4A",X"4A",X"4A",
|
||||
X"4A",X"4A",X"4A",X"09",X"40",X"4C",X"82",X"A3",X"A0",X"00",X"84",X"19",X"0A",X"0A",X"0A",X"0A",
|
||||
X"05",X"19",X"9D",X"04",X"21",X"A9",X"A4",X"9D",X"05",X"21",X"06",X"19",X"A5",X"1A",X"29",X"C0",
|
||||
X"4A",X"05",X"19",X"85",X"19",X"A5",X"1A",X"29",X"0F",X"0A",X"A8",X"B9",X"B3",X"A3",X"30",X"11",
|
||||
X"B9",X"B2",X"A3",X"05",X"19",X"9D",X"08",X"21",X"B9",X"B3",X"A3",X"18",X"69",X"A5",X"9D",X"09",
|
||||
X"21",X"60",X"00",X"01",X"00",X"00",X"00",X"01",X"FF",X"FF",X"FF",X"FF",X"00",X"01",X"80",X"01",
|
||||
X"80",X"00",X"00",X"02",X"00",X"02",X"00",X"02",X"FF",X"FF",X"00",X"01",X"00",X"02",X"80",X"01",
|
||||
X"00",X"02",X"A2",X"00",X"A0",X"00",X"BD",X"00",X"02",X"29",X"03",X"C9",X"02",X"90",X"5B",X"C9",
|
||||
X"03",X"F0",X"0C",X"E0",X"00",X"F0",X"03",X"4C",X"5C",X"A5",X"A9",X"00",X"4C",X"3A",X"A4",X"A9",
|
||||
X"00",X"99",X"00",X"22",X"99",X"01",X"22",X"99",X"02",X"22",X"99",X"03",X"22",X"9D",X"09",X"02",
|
||||
X"9D",X"0A",X"02",X"9D",X"0B",X"02",X"9D",X"0C",X"02",X"A9",X"60",X"9D",X"07",X"21",X"A9",X"00",
|
||||
X"9D",X"00",X"21",X"9D",X"06",X"21",X"A9",X"A4",X"9D",X"05",X"21",X"A9",X"AF",X"9D",X"09",X"21",
|
||||
X"A9",X"00",X"9D",X"08",X"21",X"A9",X"00",X"9D",X"04",X"21",X"A9",X"00",X"9D",X"0A",X"21",X"A9",
|
||||
X"71",X"9D",X"0B",X"21",X"9D",X"03",X"21",X"4C",X"6B",X"A5",X"29",X"03",X"F0",X"0C",X"BD",X"01",
|
||||
X"02",X"29",X"0F",X"C9",X"0D",X"D0",X"03",X"4C",X"6B",X"A5",X"20",X"12",X"A3",X"8A",X"4A",X"A8",
|
||||
X"BD",X"09",X"02",X"85",X"08",X"BD",X"0A",X"02",X"85",X"09",X"30",X"04",X"A9",X"00",X"F0",X"02",
|
||||
X"A9",X"FF",X"06",X"08",X"26",X"09",X"2A",X"06",X"08",X"26",X"09",X"2A",X"29",X"1F",X"99",X"03",
|
||||
X"22",X"A5",X"09",X"99",X"02",X"22",X"BD",X"0B",X"02",X"85",X"0A",X"BD",X"0C",X"02",X"85",X"0B",
|
||||
X"30",X"04",X"A9",X"00",X"F0",X"02",X"A9",X"FF",X"06",X"0A",X"26",X"0B",X"2A",X"06",X"0A",X"26",
|
||||
X"0B",X"2A",X"29",X"1F",X"99",X"01",X"22",X"A5",X"0B",X"99",X"00",X"22",X"BD",X"01",X"02",X"29",
|
||||
X"0F",X"C9",X"03",X"D0",X"03",X"4C",X"38",X"A5",X"C9",X"05",X"F0",X"1A",X"C9",X"0E",X"90",X"38",
|
||||
X"0A",X"A8",X"BD",X"00",X"02",X"29",X"03",X"C9",X"01",X"D0",X"33",X"A9",X"E6",X"9D",X"00",X"21",
|
||||
X"9D",X"06",X"21",X"4C",X"29",X"A5",X"A9",X"70",X"9D",X"03",X"21",X"A9",X"71",X"9D",X"0B",X"21",
|
||||
X"A9",X"00",X"9D",X"02",X"21",X"9D",X"0A",X"21",X"A9",X"E2",X"9D",X"00",X"21",X"A9",X"87",X"9D",
|
||||
X"06",X"21",X"4C",X"6B",X"A5",X"4C",X"96",X"A5",X"0A",X"A8",X"C9",X"16",X"F0",X"F7",X"C0",X"08",
|
||||
X"D0",X"2B",X"AD",X"0A",X"60",X"29",X"07",X"09",X"C0",X"C9",X"C0",X"D0",X"04",X"A9",X"C7",X"D0",
|
||||
X"00",X"9D",X"00",X"21",X"B9",X"01",X"01",X"9D",X"06",X"21",X"A5",X"F6",X"C9",X"03",X"D0",X"19",
|
||||
X"A9",X"0C",X"9D",X"0F",X"02",X"A9",X"20",X"9D",X"02",X"21",X"4C",X"6B",X"A5",X"B9",X"00",X"01",
|
||||
X"9D",X"00",X"21",X"B9",X"01",X"01",X"9D",X"06",X"21",X"B9",X"D6",X"A5",X"9D",X"0F",X"02",X"B9",
|
||||
X"D5",X"A5",X"9D",X"02",X"21",X"4C",X"6B",X"A5",X"AD",X"62",X"56",X"9D",X"0A",X"21",X"AD",X"63",
|
||||
X"56",X"9D",X"0B",X"21",X"A0",X"04",X"BD",X"02",X"02",X"F0",X"02",X"A0",X"0C",X"B9",X"00",X"01",
|
||||
X"9D",X"00",X"21",X"B9",X"01",X"01",X"9D",X"06",X"21",X"4C",X"6B",X"A5",X"C9",X"01",X"F0",X"0B",
|
||||
X"BD",X"01",X"02",X"29",X"0F",X"A8",X"B9",X"13",X"B0",X"10",X"0C",X"8A",X"18",X"69",X"10",X"AA",
|
||||
X"4A",X"A8",X"F0",X"18",X"4C",X"D6",X"A3",X"A5",X"6F",X"29",X"03",X"D0",X"EE",X"AD",X"0A",X"60",
|
||||
X"29",X"07",X"A8",X"B9",X"8D",X"A5",X"9D",X"00",X"21",X"4C",X"6B",X"A5",X"60",X"E7",X"E1",X"E1",
|
||||
X"E2",X"E3",X"E4",X"E5",X"E6",X"E7",X"BD",X"0D",X"02",X"29",X"18",X"4A",X"4A",X"4A",X"84",X"19",
|
||||
X"A8",X"B9",X"B1",X"A5",X"9D",X"00",X"21",X"A9",X"00",X"9D",X"06",X"21",X"A4",X"19",X"4C",X"29",
|
||||
X"A5",X"E1",X"E2",X"E3",X"E7",X"C5",X"C2",X"E4",X"E4",X"A4",X"A6",X"E5",X"00",X"C7",X"00",X"E2",
|
||||
X"87",X"E5",X"A4",X"E1",X"84",X"C7",X"E4",X"E6",X"E4",X"E4",X"E1",X"E2",X"00",X"00",X"00",X"E4",
|
||||
X"E2",X"C5",X"A2",X"C7",X"E4",X"7F",X"02",X"20",X"03",X"60",X"03",X"00",X"04",X"60",X"02",X"00",
|
||||
X"04",X"00",X"04",X"00",X"04",X"60",X"03",X"3F",X"04",X"3F",X"04",X"00",X"04",X"00",X"04",X"00",
|
||||
X"04",X"00",X"04",X"00",X"04",X"A2",X"00",X"8E",X"3A",X"04",X"86",X"82",X"8E",X"04",X"03",X"86",
|
||||
X"40",X"BD",X"00",X"02",X"29",X"03",X"C9",X"02",X"90",X"05",X"F0",X"1F",X"4C",X"5C",X"A6",X"BD",
|
||||
X"01",X"02",X"29",X"0F",X"A8",X"B9",X"13",X"B0",X"29",X"20",X"D0",X"03",X"EE",X"3A",X"04",X"98",
|
||||
X"0A",X"A8",X"B9",X"2A",X"A7",X"48",X"B9",X"29",X"A7",X"48",X"60",X"8A",X"F0",X"DE",X"BD",X"01",
|
||||
X"02",X"29",X"0F",X"A8",X"B9",X"13",X"B0",X"30",X"20",X"BD",X"02",X"21",X"18",X"69",X"10",X"9D",
|
||||
X"02",X"21",X"10",X"18",X"A9",X"00",X"9D",X"02",X"21",X"FE",X"03",X"21",X"BD",X"03",X"21",X"C9",
|
||||
X"74",X"90",X"09",X"20",X"FE",X"A6",X"4C",X"5C",X"A6",X"20",X"C2",X"A6",X"A5",X"40",X"18",X"69",
|
||||
X"10",X"AA",X"B0",X"03",X"4C",X"FF",X"A5",X"AD",X"01",X"03",X"D0",X"15",X"AD",X"04",X"03",X"F0",
|
||||
X"1B",X"AD",X"3A",X"04",X"0D",X"36",X"04",X"D0",X"13",X"A9",X"FF",X"8D",X"01",X"03",X"4C",X"8C",
|
||||
X"A6",X"AD",X"04",X"03",X"0D",X"3A",X"04",X"D0",X"03",X"8D",X"01",X"03",X"AD",X"00",X"02",X"C9",
|
||||
X"02",X"D0",X"2E",X"A9",X"01",X"8D",X"01",X"03",X"AD",X"0A",X"60",X"09",X"E0",X"8D",X"00",X"21",
|
||||
X"AD",X"06",X"02",X"18",X"69",X"03",X"29",X"3F",X"8D",X"06",X"02",X"A2",X"00",X"20",X"1B",X"A3",
|
||||
X"AD",X"3A",X"04",X"0D",X"04",X"03",X"D0",X"09",X"A5",X"BA",X"D0",X"05",X"A9",X"03",X"8D",X"00",
|
||||
X"02",X"60",X"BD",X"03",X"02",X"0A",X"0A",X"A8",X"B9",X"88",X"B1",X"9D",X"00",X"21",X"B9",X"89",
|
||||
X"B1",X"9D",X"01",X"21",X"B9",X"8A",X"B1",X"9D",X"02",X"21",X"B9",X"8B",X"B1",X"9D",X"03",X"21",
|
||||
X"BD",X"03",X"02",X"18",X"7D",X"02",X"02",X"29",X"07",X"9D",X"03",X"02",X"D0",X"0F",X"BD",X"02",
|
||||
X"02",X"30",X"0B",X"A9",X"FF",X"9D",X"02",X"02",X"A9",X"08",X"9D",X"03",X"02",X"60",X"78",X"A4",
|
||||
X"40",X"A9",X"00",X"99",X"00",X"21",X"99",X"06",X"21",X"A9",X"60",X"99",X"05",X"21",X"A9",X"00",
|
||||
X"99",X"04",X"21",X"A9",X"A4",X"99",X"05",X"21",X"A9",X"60",X"99",X"07",X"21",X"A9",X"71",X"99",
|
||||
X"03",X"21",X"A9",X"03",X"9D",X"00",X"02",X"58",X"60",X"64",X"A8",X"48",X"A7",X"E3",X"A8",X"0F",
|
||||
X"A9",X"02",X"AA",X"E5",X"A9",X"9B",X"A9",X"20",X"AA",X"44",X"AA",X"89",X"AB",X"ED",X"AC",X"7F",
|
||||
X"A9",X"78",X"AF",X"4C",X"AD",X"6E",X"AE",X"17",X"AE",X"A5",X"73",X"F0",X"13",X"A9",X"0A",X"8D",
|
||||
X"05",X"02",X"A0",X"50",X"20",X"87",X"B0",X"AD",X"0E",X"02",X"8D",X"06",X"02",X"4C",X"83",X"A7",
|
||||
X"A9",X"03",X"8D",X"05",X"02",X"24",X"EF",X"10",X"33",X"A9",X"05",X"8D",X"05",X"02",X"A0",X"50",
|
||||
X"20",X"87",X"B0",X"A5",X"47",X"30",X"22",X"AD",X"0E",X"02",X"8D",X"06",X"02",X"A5",X"F7",X"C9",
|
||||
X"06",X"B0",X"13",X"A2",X"00",X"20",X"B4",X"C9",X"A5",X"73",X"D0",X"07",X"AD",X"0A",X"60",X"29",
|
||||
X"03",X"F0",X"03",X"20",X"DE",X"C3",X"20",X"DE",X"A7",X"4C",X"5C",X"A6",X"AD",X"5C",X"04",X"8D",
|
||||
X"05",X"02",X"AD",X"00",X"80",X"29",X"0F",X"49",X"0F",X"F0",X"0F",X"A8",X"B9",X"C0",X"A7",X"30",
|
||||
X"09",X"8D",X"06",X"02",X"20",X"B4",X"C9",X"20",X"DE",X"C3",X"20",X"DE",X"A7",X"4C",X"5C",X"A6",
|
||||
X"80",X"10",X"30",X"80",X"20",X"18",X"28",X"80",X"00",X"08",X"38",X"80",X"80",X"80",X"80",X"80",
|
||||
X"8A",X"18",X"69",X"10",X"AA",X"C9",X"50",X"D0",X"44",X"A9",X"00",X"85",X"4F",X"60",X"A5",X"73",
|
||||
X"D0",X"1A",X"24",X"EF",X"10",X"17",X"AD",X"0E",X"02",X"85",X"71",X"A5",X"F7",X"C9",X"07",X"F0",
|
||||
X"2A",X"C9",X"02",X"90",X"07",X"C9",X"04",X"B0",X"03",X"4C",X"1B",X"A8",X"60",X"AD",X"00",X"88",
|
||||
X"29",X"0F",X"49",X"0F",X"D0",X"05",X"A9",X"00",X"85",X"4F",X"60",X"A8",X"B9",X"C0",X"A7",X"30",
|
||||
X"EB",X"85",X"71",X"C6",X"4F",X"10",X"E5",X"A9",X"02",X"85",X"4F",X"A2",X"10",X"BD",X"00",X"02",
|
||||
X"29",X"03",X"F0",X"AC",X"86",X"40",X"A5",X"71",X"8D",X"04",X"02",X"9D",X"06",X"02",X"24",X"EF",
|
||||
X"10",X"06",X"AD",X"06",X"02",X"9D",X"06",X"02",X"20",X"22",X"BD",X"A9",X"01",X"9D",X"0D",X"02",
|
||||
X"AD",X"09",X"02",X"9D",X"09",X"02",X"AD",X"0A",X"02",X"9D",X"0A",X"02",X"AD",X"0B",X"02",X"9D",
|
||||
X"0B",X"02",X"AD",X"0C",X"02",X"9D",X"0C",X"02",X"A9",X"00",X"9D",X"00",X"02",X"20",X"B4",X"C9",
|
||||
X"A9",X"00",X"85",X"40",X"60",X"20",X"7C",X"AF",X"A5",X"82",X"F0",X"33",X"A8",X"DE",X"0D",X"02",
|
||||
X"10",X"2A",X"AD",X"3F",X"04",X"09",X"01",X"9D",X"0D",X"02",X"A9",X"FF",X"85",X"47",X"4A",X"85",
|
||||
X"46",X"20",X"03",X"CE",X"A6",X"40",X"9D",X"0E",X"02",X"A5",X"83",X"9D",X"01",X"02",X"A5",X"84",
|
||||
X"18",X"69",X"01",X"29",X"0F",X"D0",X"02",X"A9",X"0F",X"9D",X"05",X"02",X"4C",X"D8",X"A8",X"86",
|
||||
X"82",X"DE",X"0D",X"02",X"10",X"28",X"AD",X"0A",X"60",X"10",X"11",X"A9",X"FF",X"85",X"47",X"4A",
|
||||
X"85",X"46",X"A0",X"00",X"20",X"03",X"CE",X"A6",X"40",X"4C",X"C1",X"A8",X"AD",X"0A",X"60",X"29",
|
||||
X"3F",X"9D",X"0E",X"02",X"AD",X"3F",X"04",X"0A",X"0A",X"09",X"01",X"9D",X"0D",X"02",X"BD",X"01",
|
||||
X"02",X"85",X"83",X"BD",X"05",X"02",X"85",X"84",X"20",X"31",X"B1",X"20",X"B4",X"C9",X"20",X"DE",
|
||||
X"C3",X"4C",X"5C",X"A6",X"20",X"7C",X"AF",X"DE",X"0D",X"02",X"D0",X"18",X"BD",X"00",X"02",X"29",
|
||||
X"F7",X"9D",X"00",X"02",X"AD",X"3F",X"04",X"09",X"01",X"9D",X"0D",X"02",X"20",X"23",X"B0",X"A6",
|
||||
X"40",X"9D",X"0E",X"02",X"20",X"31",X"B1",X"20",X"B4",X"C9",X"20",X"DE",X"C3",X"4C",X"5C",X"A6",
|
||||
X"24",X"EF",X"30",X"27",X"A5",X"6C",X"F0",X"08",X"A9",X"20",X"9D",X"0D",X"02",X"4C",X"30",X"A9",
|
||||
X"AD",X"01",X"03",X"D0",X"58",X"A5",X"6F",X"29",X"0E",X"D0",X"52",X"DE",X"0D",X"02",X"30",X"2A",
|
||||
X"BD",X"02",X"02",X"F0",X"06",X"BD",X"0D",X"02",X"4C",X"41",X"A9",X"BD",X"0D",X"02",X"18",X"69",
|
||||
X"0C",X"A8",X"29",X"30",X"4A",X"4A",X"4A",X"4A",X"18",X"69",X"71",X"9D",X"03",X"21",X"98",X"29",
|
||||
X"0F",X"0A",X"0A",X"0A",X"9D",X"02",X"21",X"4C",X"CA",X"AF",X"A9",X"02",X"9D",X"01",X"02",X"BD",
|
||||
X"02",X"02",X"F0",X"05",X"A9",X"06",X"9D",X"01",X"02",X"A9",X"01",X"9D",X"0D",X"02",X"A9",X"00",
|
||||
X"9D",X"00",X"02",X"A9",X"71",X"9D",X"0B",X"21",X"A9",X"00",X"9D",X"0A",X"21",X"4C",X"5C",X"A6",
|
||||
X"24",X"EF",X"30",X"F9",X"A9",X"00",X"9D",X"05",X"02",X"A5",X"6F",X"29",X"07",X"D0",X"0A",X"DE",
|
||||
X"0D",X"02",X"10",X"05",X"A9",X"03",X"9D",X"00",X"02",X"4C",X"5C",X"A6",X"20",X"7C",X"AF",X"AD",
|
||||
X"04",X"03",X"0D",X"56",X"04",X"0D",X"57",X"04",X"D0",X"09",X"AD",X"05",X"02",X"9D",X"05",X"02",
|
||||
X"4C",X"DA",X"A9",X"DE",X"0D",X"02",X"30",X"03",X"4C",X"DA",X"A9",X"AD",X"05",X"02",X"38",X"E9",
|
||||
X"01",X"9D",X"05",X"02",X"AD",X"3F",X"04",X"09",X"01",X"9D",X"0D",X"02",X"A9",X"FF",X"85",X"46",
|
||||
X"A0",X"00",X"20",X"03",X"CE",X"A6",X"40",X"9D",X"0E",X"02",X"20",X"31",X"B1",X"20",X"B4",X"C9",
|
||||
X"20",X"DE",X"C3",X"4C",X"5C",X"A6",X"20",X"7C",X"AF",X"DE",X"0D",X"02",X"10",X"09",X"AD",X"3F",
|
||||
X"04",X"9D",X"0D",X"02",X"20",X"C5",X"B0",X"20",X"31",X"B1",X"20",X"B4",X"C9",X"20",X"DE",X"C3",
|
||||
X"4C",X"5C",X"A6",X"FE",X"0D",X"02",X"BD",X"0D",X"02",X"C9",X"18",X"90",X"08",X"A9",X"03",X"9D",
|
||||
X"00",X"02",X"4C",X"5C",X"A6",X"BD",X"06",X"02",X"20",X"B4",X"C9",X"20",X"DE",X"C3",X"4C",X"5C",
|
||||
X"A6",X"20",X"7C",X"AF",X"DE",X"0D",X"02",X"D0",X"10",X"AD",X"3F",X"04",X"09",X"01",X"9D",X"0D",
|
||||
X"02",X"20",X"56",X"B0",X"A6",X"40",X"9D",X"0E",X"02",X"20",X"31",X"B1",X"20",X"B4",X"C9",X"20",
|
||||
X"DE",X"C3",X"4C",X"5C",X"A6",X"20",X"7C",X"AF",X"FE",X"05",X"02",X"BD",X"05",X"02",X"C9",X"10",
|
||||
X"90",X"03",X"DE",X"05",X"02",X"AD",X"5D",X"04",X"C9",X"1C",X"B0",X"1E",X"BD",X"02",X"02",X"10",
|
||||
X"10",X"A9",X"02",X"9D",X"02",X"02",X"A9",X"00",X"9D",X"03",X"02",X"20",X"3B",X"AB",X"9D",X"06",
|
||||
X"02",X"20",X"B4",X"C9",X"20",X"DE",X"C3",X"4C",X"5C",X"A6",X"BD",X"04",X"02",X"10",X"40",X"A9",
|
||||
X"00",X"9D",X"04",X"02",X"9D",X"03",X"02",X"20",X"3B",X"AB",X"9D",X"0E",X"02",X"AD",X"5D",X"04",
|
||||
X"C9",X"2D",X"90",X"0C",X"AD",X"0A",X"60",X"29",X"8F",X"10",X"13",X"29",X"0F",X"4C",X"A9",X"AA",
|
||||
X"AD",X"0A",X"60",X"29",X"87",X"10",X"07",X"29",X"07",X"49",X"FF",X"18",X"69",X"01",X"18",X"7D",
|
||||
X"0E",X"02",X"29",X"3F",X"9D",X"06",X"02",X"A9",X"08",X"9D",X"0D",X"02",X"4C",X"71",X"AA",X"BD",
|
||||
X"02",X"02",X"10",X"20",X"DE",X"0D",X"02",X"10",X"A8",X"A9",X"01",X"9D",X"02",X"02",X"A9",X"00",
|
||||
X"9D",X"03",X"02",X"AD",X"5D",X"04",X"38",X"E9",X"25",X"30",X"4A",X"C9",X"20",X"90",X"02",X"A9",
|
||||
X"1F",X"9D",X"03",X"02",X"DE",X"0D",X"02",X"10",X"3C",X"FE",X"04",X"02",X"BD",X"04",X"02",X"C9",
|
||||
X"05",X"90",X"19",X"A9",X"00",X"9D",X"04",X"02",X"BD",X"03",X"02",X"18",X"69",X"20",X"90",X"09",
|
||||
X"18",X"69",X"01",X"29",X"1F",X"D0",X"02",X"A9",X"1F",X"9D",X"03",X"02",X"BD",X"03",X"02",X"29",
|
||||
X"1F",X"0A",X"A8",X"B9",X"4A",X"AB",X"9D",X"0D",X"02",X"B9",X"4B",X"AB",X"9D",X"02",X"02",X"20",
|
||||
X"3B",X"AB",X"9D",X"0E",X"02",X"BD",X"02",X"02",X"85",X"1B",X"20",X"38",X"B1",X"A9",X"00",X"9D",
|
||||
X"02",X"02",X"20",X"B4",X"C9",X"20",X"DE",X"C3",X"4C",X"5C",X"A6",X"A9",X"FF",X"85",X"47",X"4A",
|
||||
X"85",X"46",X"A0",X"00",X"20",X"03",X"CE",X"A6",X"40",X"60",X"07",X"01",X"07",X"01",X"06",X"01",
|
||||
X"06",X"01",X"05",X"01",X"05",X"01",X"04",X"01",X"04",X"01",X"04",X"02",X"04",X"02",X"04",X"03",
|
||||
X"04",X"03",X"04",X"04",X"04",X"04",X"04",X"05",X"04",X"05",X"04",X"06",X"03",X"06",X"03",X"07",
|
||||
X"03",X"08",X"03",X"09",X"03",X"0A",X"02",X"08",X"02",X"09",X"01",X"07",X"01",X"08",X"01",X"09",
|
||||
X"01",X"0A",X"01",X"0B",X"01",X"0C",X"01",X"0D",X"01",X"0E",X"A5",X"6C",X"D0",X"04",X"A5",X"73",
|
||||
X"F0",X"0D",X"A9",X"0F",X"9D",X"05",X"02",X"A9",X"01",X"1D",X"00",X"02",X"9D",X"00",X"02",X"DE",
|
||||
X"0D",X"02",X"F0",X"20",X"BD",X"00",X"02",X"10",X"06",X"20",X"31",X"B1",X"4C",X"BB",X"AB",X"BD",
|
||||
X"06",X"02",X"18",X"7D",X"04",X"02",X"29",X"3F",X"9D",X"06",X"02",X"20",X"B4",X"C9",X"20",X"DE",
|
||||
X"C3",X"4C",X"5C",X"A6",X"BD",X"02",X"02",X"85",X"4C",X"BD",X"03",X"02",X"85",X"4D",X"20",X"CF",
|
||||
X"AC",X"BD",X"00",X"02",X"10",X"5E",X"8A",X"A8",X"84",X"19",X"98",X"18",X"69",X"10",X"D0",X"0C",
|
||||
X"E4",X"19",X"D0",X"37",X"A9",X"00",X"8D",X"34",X"01",X"4C",X"1B",X"AC",X"A8",X"B9",X"01",X"02",
|
||||
X"29",X"0F",X"C9",X"09",X"D0",X"E4",X"B9",X"00",X"02",X"29",X"03",X"F0",X"DB",X"4C",X"DA",X"AB",
|
||||
X"9D",X"0D",X"02",X"C8",X"B1",X"4C",X"9D",X"04",X"02",X"A9",X"02",X"18",X"65",X"4C",X"9D",X"02",
|
||||
X"02",X"A9",X"00",X"65",X"4D",X"9D",X"03",X"02",X"4C",X"AF",X"AB",X"BD",X"00",X"02",X"29",X"7F",
|
||||
X"9D",X"00",X"02",X"AD",X"27",X"04",X"C5",X"40",X"F0",X"3B",X"AD",X"25",X"04",X"85",X"4C",X"AD",
|
||||
X"26",X"04",X"85",X"4D",X"A0",X"00",X"B1",X"4C",X"10",X"C6",X"A9",X"80",X"1D",X"00",X"02",X"9D",
|
||||
X"00",X"02",X"FE",X"05",X"02",X"BD",X"05",X"02",X"C9",X"10",X"D0",X"0B",X"DE",X"05",X"02",X"A9",
|
||||
X"01",X"1D",X"00",X"02",X"9D",X"00",X"02",X"EC",X"27",X"04",X"F0",X"44",X"AD",X"35",X"01",X"9D",
|
||||
X"0E",X"02",X"4C",X"B6",X"AC",X"A0",X"00",X"B1",X"4C",X"D0",X"11",X"A9",X"C6",X"85",X"4C",X"8D",
|
||||
X"25",X"04",X"A9",X"B1",X"85",X"4D",X"8D",X"26",X"04",X"4C",X"65",X"AC",X"30",X"0D",X"A5",X"4C",
|
||||
X"8D",X"25",X"04",X"A5",X"4D",X"8D",X"26",X"04",X"4C",X"34",X"AC",X"AD",X"34",X"01",X"F0",X"EE",
|
||||
X"A9",X"02",X"18",X"65",X"4C",X"85",X"4C",X"A9",X"00",X"65",X"4D",X"85",X"4D",X"4C",X"65",X"AC",
|
||||
X"A9",X"7F",X"8D",X"34",X"01",X"85",X"46",X"A0",X"00",X"20",X"03",X"CE",X"29",X"3F",X"A6",X"40",
|
||||
X"9D",X"0E",X"02",X"8D",X"35",X"01",X"A0",X"01",X"B1",X"4C",X"9D",X"0D",X"02",X"A9",X"02",X"18",
|
||||
X"65",X"4C",X"9D",X"02",X"02",X"A9",X"00",X"65",X"4D",X"9D",X"03",X"02",X"4C",X"A9",X"AB",X"A0",
|
||||
X"50",X"E0",X"50",X"F0",X"15",X"B9",X"00",X"02",X"19",X"01",X"02",X"29",X"0F",X"C9",X"09",X"F0",
|
||||
X"09",X"98",X"18",X"69",X"10",X"A8",X"C4",X"40",X"90",X"EB",X"8C",X"27",X"04",X"60",X"20",X"7C",
|
||||
X"AF",X"A0",X"50",X"B9",X"01",X"02",X"19",X"00",X"02",X"29",X"0F",X"C9",X"09",X"F0",X"0A",X"98",
|
||||
X"18",X"69",X"10",X"A8",X"D0",X"ED",X"4C",X"DE",X"AF",X"DE",X"0D",X"02",X"10",X"18",X"AD",X"3F",
|
||||
X"04",X"09",X"01",X"9D",X"0D",X"02",X"A9",X"7F",X"85",X"46",X"A0",X"00",X"20",X"03",X"CE",X"29",
|
||||
X"3F",X"A6",X"40",X"9D",X"0E",X"02",X"20",X"31",X"B1",X"20",X"B4",X"C9",X"20",X"DE",X"C3",X"4C",
|
||||
X"5C",X"A6",X"BD",X"03",X"02",X"C5",X"19",X"B0",X"5E",X"0A",X"7D",X"03",X"02",X"A8",X"B9",X"AD",
|
||||
X"B1",X"9D",X"02",X"21",X"B9",X"AE",X"B1",X"9D",X"03",X"21",X"4C",X"5C",X"A6",X"A5",X"F6",X"C9",
|
||||
X"03",X"D0",X"02",X"A9",X"01",X"18",X"69",X"06",X"85",X"19",X"A5",X"6C",X"F0",X"0C",X"BD",X"00",
|
||||
X"02",X"29",X"03",X"C9",X"01",X"F0",X"11",X"4C",X"DE",X"AF",X"A5",X"73",X"D0",X"F0",X"BD",X"00",
|
||||
X"02",X"29",X"03",X"D0",X"03",X"4C",X"FE",X"AD",X"DE",X"0D",X"02",X"10",X"B5",X"A5",X"F6",X"C9",
|
||||
X"03",X"D0",X"05",X"A9",X"04",X"4C",X"8D",X"AD",X"38",X"A9",X"05",X"E5",X"F6",X"9D",X"0D",X"02",
|
||||
X"BD",X"03",X"02",X"C5",X"19",X"90",X"06",X"20",X"FE",X"A6",X"4C",X"5C",X"A6",X"0A",X"7D",X"03",
|
||||
X"02",X"A8",X"B9",X"AC",X"B1",X"85",X"46",X"A9",X"60",X"9D",X"01",X"21",X"AD",X"0A",X"60",X"29",
|
||||
X"07",X"A8",X"B9",X"8D",X"A5",X"9D",X"00",X"21",X"FE",X"03",X"02",X"A9",X"80",X"8D",X"00",X"03",
|
||||
X"A9",X"00",X"A8",X"48",X"C4",X"40",X"F0",X"24",X"B9",X"01",X"02",X"29",X"0F",X"C9",X"04",X"F0",
|
||||
X"1B",X"B9",X"00",X"02",X"29",X"03",X"C9",X"02",X"B0",X"12",X"C9",X"01",X"D0",X"09",X"B9",X"01",
|
||||
X"02",X"29",X"0F",X"C9",X"0D",X"F0",X"05",X"A6",X"40",X"20",X"03",X"CE",X"68",X"18",X"69",X"10",
|
||||
X"A8",X"D0",X"CF",X"A9",X"00",X"8D",X"00",X"03",X"20",X"46",X"BD",X"4C",X"5C",X"A6",X"DE",X"0D",
|
||||
X"02",X"10",X"09",X"AD",X"3F",X"04",X"9D",X"0D",X"02",X"20",X"C5",X"B0",X"20",X"31",X"B1",X"20",
|
||||
X"B4",X"C9",X"20",X"DE",X"C3",X"4C",X"5C",X"A6",X"EE",X"04",X"03",X"AC",X"04",X"03",X"8A",X"99",
|
||||
X"04",X"03",X"AD",X"01",X"03",X"F0",X"0A",X"10",X"05",X"A9",X"01",X"9D",X"00",X"02",X"4C",X"DE",
|
||||
X"AF",X"DE",X"0D",X"02",X"10",X"13",X"AD",X"3F",X"04",X"4A",X"09",X"01",X"9D",X"0D",X"02",X"A9",
|
||||
X"FF",X"85",X"47",X"4A",X"85",X"46",X"20",X"D5",X"B0",X"A5",X"6F",X"D0",X"0D",X"BD",X"05",X"02",
|
||||
X"18",X"69",X"01",X"C9",X"10",X"B0",X"03",X"9D",X"05",X"02",X"BD",X"05",X"02",X"85",X"19",X"20",
|
||||
X"31",X"B1",X"C6",X"19",X"10",X"F9",X"20",X"B4",X"C9",X"20",X"DE",X"C3",X"4C",X"5C",X"A6",X"EE",
|
||||
X"04",X"03",X"AC",X"04",X"03",X"8A",X"99",X"04",X"03",X"AD",X"01",X"03",X"F0",X"0A",X"10",X"05",
|
||||
X"A9",X"01",X"9D",X"00",X"02",X"4C",X"DE",X"AF",X"BD",X"02",X"02",X"D0",X"58",X"A9",X"00",X"9D",
|
||||
X"05",X"02",X"DE",X"0D",X"02",X"30",X"12",X"AD",X"0A",X"60",X"29",X"3F",X"D0",X"08",X"AD",X"0A",
|
||||
X"60",X"29",X"3F",X"9D",X"0E",X"02",X"4C",X"2C",X"AF",X"A9",X"30",X"9D",X"0D",X"02",X"A9",X"50",
|
||||
X"9D",X"02",X"02",X"A8",X"20",X"49",X"AF",X"B0",X"18",X"98",X"18",X"69",X"10",X"90",X"F1",X"A9",
|
||||
X"00",X"9D",X"02",X"02",X"9D",X"05",X"02",X"AD",X"3F",X"04",X"0A",X"9D",X"0D",X"02",X"4C",X"5C",
|
||||
X"A6",X"A9",X"FF",X"85",X"47",X"4A",X"85",X"46",X"20",X"03",X"CE",X"A6",X"40",X"A5",X"47",X"9D",
|
||||
X"06",X"02",X"4C",X"35",X"AF",X"A8",X"20",X"49",X"AF",X"90",X"D4",X"DE",X"0D",X"02",X"30",X"0E",
|
||||
X"BD",X"06",X"02",X"18",X"69",X"01",X"29",X"3F",X"9D",X"06",X"02",X"4C",X"2F",X"AF",X"A9",X"FF",
|
||||
X"9D",X"0D",X"02",X"A5",X"6F",X"29",X"01",X"D0",X"23",X"BD",X"05",X"02",X"18",X"69",X"01",X"C9",
|
||||
X"10",X"B0",X"03",X"9D",X"05",X"02",X"A9",X"FF",X"85",X"47",X"4A",X"85",X"46",X"20",X"03",X"CE",
|
||||
X"A6",X"40",X"A5",X"47",X"29",X"3F",X"9D",X"06",X"02",X"9D",X"0E",X"02",X"20",X"31",X"B1",X"20",
|
||||
X"B4",X"C9",X"20",X"DE",X"C3",X"BD",X"02",X"02",X"F0",X"0C",X"A8",X"A5",X"6F",X"29",X"02",X"D0",
|
||||
X"05",X"A9",X"E7",X"99",X"00",X"21",X"4C",X"5C",X"A6",X"C4",X"40",X"F0",X"28",X"B9",X"00",X"02",
|
||||
X"29",X"03",X"C9",X"02",X"B0",X"1F",X"B9",X"01",X"02",X"29",X"0F",X"C9",X"03",X"F0",X"16",X"C9",
|
||||
X"05",X"F0",X"0C",X"C9",X"08",X"F0",X"0E",X"C9",X"0F",X"F0",X"0A",X"C9",X"0D",X"D0",X"08",X"A5",
|
||||
X"79",X"C9",X"1E",X"B0",X"02",X"18",X"60",X"38",X"60",X"4C",X"5C",X"A6",X"A5",X"6C",X"05",X"73",
|
||||
X"0D",X"00",X"02",X"D0",X"52",X"BD",X"00",X"02",X"29",X"03",X"C9",X"01",X"D0",X"39",X"BD",X"01",
|
||||
X"02",X"29",X"0F",X"A8",X"B9",X"13",X"B0",X"29",X"08",X"D0",X"3C",X"A5",X"6F",X"29",X"07",X"D0",
|
||||
X"27",X"B9",X"13",X"B0",X"29",X"02",X"D0",X"03",X"DE",X"0D",X"02",X"98",X"0A",X"A8",X"B9",X"00",
|
||||
X"01",X"9D",X"06",X"21",X"B9",X"01",X"01",X"9D",X"00",X"21",X"BD",X"0D",X"02",X"10",X"09",X"A9",
|
||||
X"00",X"9D",X"00",X"02",X"9D",X"0D",X"02",X"60",X"68",X"68",X"BD",X"0D",X"02",X"C9",X"08",X"B0",
|
||||
X"03",X"20",X"D9",X"A2",X"4C",X"5C",X"A6",X"68",X"68",X"A9",X"00",X"9D",X"00",X"02",X"A5",X"6F",
|
||||
X"29",X"03",X"D0",X"23",X"A0",X"00",X"A9",X"FF",X"85",X"47",X"4A",X"85",X"46",X"20",X"03",X"CE",
|
||||
X"A6",X"40",X"18",X"69",X"20",X"29",X"3F",X"9D",X"0E",X"02",X"BD",X"05",X"02",X"18",X"69",X"01");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,278 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity bwidow_pgm_rom3 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 bwidow_pgm_rom3 is
|
||||
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"C9",X"10",X"B0",X"03",X"9D",X"05",X"02",X"20",X"31",X"B1",X"20",X"B4",X"C9",X"20",X"DE",X"C3",
|
||||
X"4C",X"5C",X"A6",X"16",X"20",X"14",X"60",X"61",X"D0",X"99",X"14",X"EB",X"58",X"D1",X"76",X"00",
|
||||
X"80",X"6A",X"6A",X"A9",X"FF",X"85",X"47",X"4A",X"85",X"46",X"A9",X"00",X"A8",X"48",X"F0",X"18",
|
||||
X"B9",X"00",X"02",X"29",X"03",X"C9",X"02",X"B0",X"14",X"B9",X"01",X"02",X"29",X"0F",X"C9",X"0B",
|
||||
X"D0",X"0B",X"A5",X"9A",X"29",X"03",X"F0",X"05",X"A6",X"40",X"20",X"03",X"CE",X"68",X"18",X"69",
|
||||
X"10",X"90",X"D9",X"A5",X"47",X"60",X"A9",X"FF",X"85",X"47",X"4A",X"85",X"46",X"A9",X"00",X"A8",
|
||||
X"48",X"F0",X"16",X"B9",X"00",X"02",X"29",X"03",X"C9",X"02",X"B0",X"12",X"B9",X"01",X"02",X"29",
|
||||
X"0F",X"C9",X"01",X"F0",X"04",X"C9",X"0B",X"D0",X"05",X"A6",X"40",X"20",X"03",X"CE",X"68",X"18",
|
||||
X"69",X"10",X"90",X"DB",X"A5",X"47",X"60",X"A9",X"FF",X"85",X"47",X"A9",X"7F",X"85",X"46",X"A0",
|
||||
X"50",X"84",X"1C",X"B9",X"00",X"02",X"29",X"02",X"D0",X"16",X"24",X"EF",X"30",X"0D",X"B9",X"01",
|
||||
X"02",X"29",X"0F",X"AA",X"BD",X"13",X"B0",X"29",X"10",X"F0",X"05",X"A6",X"40",X"20",X"03",X"CE",
|
||||
X"A5",X"1C",X"18",X"69",X"10",X"A8",X"D0",X"D9",X"A5",X"47",X"30",X"4A",X"A6",X"40",X"9D",X"0E",
|
||||
X"02",X"20",X"31",X"B1",X"60",X"A9",X"FF",X"85",X"47",X"4A",X"85",X"46",X"A0",X"00",X"A6",X"40",
|
||||
X"20",X"03",X"CE",X"A6",X"40",X"A0",X"50",X"84",X"1C",X"20",X"49",X"AF",X"90",X"05",X"A6",X"40",
|
||||
X"20",X"03",X"CE",X"A5",X"1C",X"18",X"69",X"10",X"A8",X"D0",X"EC",X"A6",X"40",X"A5",X"47",X"10",
|
||||
X"11",X"A6",X"40",X"BD",X"06",X"02",X"18",X"69",X"10",X"29",X"3F",X"9D",X"0E",X"02",X"20",X"31",
|
||||
X"B1",X"60",X"9D",X"0E",X"02",X"60",X"A6",X"40",X"20",X"12",X"B1",X"9D",X"0E",X"02",X"20",X"31",
|
||||
X"B1",X"60",X"A9",X"00",X"38",X"FD",X"0A",X"02",X"C9",X"80",X"6A",X"85",X"42",X"A9",X"00",X"38",
|
||||
X"FD",X"0C",X"02",X"C9",X"80",X"6A",X"AA",X"A4",X"42",X"20",X"69",X"A2",X"29",X"3F",X"A6",X"40",
|
||||
X"60",X"AD",X"44",X"04",X"09",X"01",X"85",X"1B",X"BD",X"0E",X"02",X"38",X"FD",X"06",X"02",X"F0",
|
||||
X"16",X"30",X"1F",X"C9",X"21",X"B0",X"11",X"C5",X"1B",X"90",X"02",X"A5",X"1B",X"18",X"7D",X"06",
|
||||
X"02",X"29",X"3F",X"9D",X"06",X"02",X"A8",X"60",X"85",X"1C",X"A9",X"40",X"38",X"E5",X"1C",X"4C",
|
||||
X"67",X"B1",X"49",X"FF",X"18",X"69",X"01",X"C9",X"21",X"90",X"06",X"38",X"E9",X"20",X"4C",X"47",
|
||||
X"B1",X"85",X"1C",X"C5",X"1B",X"90",X"04",X"A5",X"1B",X"85",X"1C",X"BD",X"06",X"02",X"38",X"E5",
|
||||
X"1C",X"29",X"3F",X"9D",X"06",X"02",X"A8",X"60",X"E7",X"60",X"08",X"76",X"E4",X"60",X"07",X"75",
|
||||
X"E3",X"60",X"4A",X"74",X"E6",X"60",X"11",X"74",X"E2",X"60",X"59",X"73",X"E4",X"60",X"24",X"73",
|
||||
X"E5",X"60",X"71",X"72",X"E1",X"60",X"3F",X"72",X"E7",X"60",X"0F",X"72",X"03",X"00",X"74",X"04",
|
||||
X"40",X"73",X"05",X"00",X"73",X"07",X"40",X"72",X"09",X"00",X"72",X"0D",X"40",X"71",X"0F",X"20",
|
||||
X"71",X"11",X"00",X"71",X"EE",X"00",X"0A",X"00",X"05",X"02",X"05",X"00",X"05",X"FE",X"0A",X"00",
|
||||
X"05",X"02",X"05",X"00",X"FF",X"14",X"20",X"02",X"20",X"FE",X"14",X"00",X"FF",X"14",X"10",X"02",
|
||||
X"0F",X"00",X"08",X"FC",X"0F",X"00",X"FF",X"1E",X"20",X"02",X"10",X"FC",X"08",X"08",X"FF",X"14",
|
||||
X"00",X"24",X"EF",X"30",X"03",X"4C",X"26",X"B4",X"A5",X"5E",X"D0",X"2B",X"A5",X"79",X"C9",X"02",
|
||||
X"B0",X"15",X"A5",X"F7",X"29",X"01",X"D0",X"0E",X"A2",X"10",X"A9",X"03",X"9D",X"00",X"02",X"8A",
|
||||
X"18",X"69",X"10",X"AA",X"D0",X"F4",X"60",X"A9",X"00",X"85",X"73",X"A5",X"F7",X"0A",X"AA",X"BD",
|
||||
X"29",X"B2",X"48",X"BD",X"28",X"B2",X"48",X"60",X"37",X"B2",X"BA",X"B2",X"62",X"B2",X"BA",X"B2",
|
||||
X"7D",X"B2",X"BA",X"B2",X"9D",X"B2",X"BA",X"B2",X"A9",X"E6",X"85",X"4C",X"A9",X"B2",X"85",X"4D",
|
||||
X"A2",X"40",X"A9",X"00",X"8D",X"09",X"02",X"8D",X"0B",X"02",X"8D",X"0A",X"02",X"A9",X"28",X"8D",
|
||||
X"0C",X"02",X"4C",X"55",X"B2",X"A9",X"50",X"85",X"49",X"A9",X"02",X"85",X"4A",X"20",X"5C",X"A0",
|
||||
X"4C",X"CE",X"B2",X"A9",X"26",X"85",X"4C",X"A9",X"B3",X"85",X"4D",X"A2",X"60",X"A9",X"00",X"8D",
|
||||
X"09",X"02",X"8D",X"0B",X"02",X"8D",X"0A",X"02",X"8D",X"0C",X"02",X"4C",X"55",X"B2",X"A9",X"86",
|
||||
X"85",X"4C",X"A9",X"B3",X"85",X"4D",X"A2",X"60",X"A9",X"00",X"8D",X"09",X"02",X"8D",X"0B",X"02",
|
||||
X"8D",X"0A",X"02",X"8D",X"03",X"03",X"A9",X"40",X"8D",X"0C",X"02",X"4C",X"55",X"B2",X"A9",X"E6",
|
||||
X"85",X"4C",X"A9",X"B3",X"85",X"4D",X"A2",X"40",X"A9",X"00",X"8D",X"09",X"02",X"8D",X"0B",X"02",
|
||||
X"8D",X"0C",X"02",X"A9",X"18",X"8D",X"0A",X"02",X"4C",X"55",X"B2",X"A2",X"50",X"BD",X"00",X"02",
|
||||
X"29",X"03",X"C9",X"03",X"F0",X"01",X"60",X"8A",X"18",X"69",X"10",X"AA",X"D0",X"EF",X"A9",X"00",
|
||||
X"85",X"79",X"E6",X"F7",X"A5",X"F7",X"C9",X"08",X"B0",X"01",X"60",X"A9",X"02",X"8D",X"23",X"04",
|
||||
X"A9",X"00",X"8D",X"22",X"04",X"60",X"00",X"0B",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"F0",X"18",X"00",X"03",X"00",X"0B",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"E0",X"10",X"00",X"03",X"00",X"0B",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"D0",X"08",X"00",X"03",X"00",X"0B",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"C0",X"06",X"00",X"03",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"00",
|
||||
X"28",X"00",X"50",X"01",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"64",X"00",X"14",X"01",X"00",X"02",X"00",X"02",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"00",
|
||||
X"50",X"00",X"C4",X"01",X"00",X"03",X"00",X"02",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"00",
|
||||
X"D8",X"00",X"B0",X"01",X"00",X"03",X"00",X"07",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"00",
|
||||
X"9C",X"00",X"EC",X"01",X"00",X"04",X"00",X"07",X"00",X"00",X"00",X"01",X"00",X"00",X"00",X"00",
|
||||
X"B0",X"00",X"3C",X"01",X"00",X"04",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"10",X"18",X"00",X"03",X"00",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"10",X"00",X"E0",X"14",X"00",X"03",X"00",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"40",X"00",X"C0",X"10",X"00",X"03",X"00",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"28",X"00",X"E0",X"0C",X"00",X"03",X"00",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"F0",X"00",X"D8",X"08",X"00",X"03",X"00",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"B8",X"00",X"C8",X"04",X"00",X"03",X"00",X"0D",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"A0",X"00",X"18",X"04",X"00",X"03",X"00",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"98",X"00",X"30",X"04",X"00",X"03",X"00",X"0D",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"A8",X"00",X"E0",X"04",X"00",X"03",X"00",X"07",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"98",X"00",X"D8",X"04",X"00",X"03",X"AD",X"01",X"03",X"05",X"73",X"05",X"6C",X"F0",X"01",X"60",
|
||||
X"A5",X"5E",X"D0",X"FB",X"A2",X"0F",X"A9",X"00",X"18",X"7D",X"48",X"04",X"CA",X"10",X"F9",X"8D",
|
||||
X"36",X"04",X"AD",X"28",X"04",X"D0",X"08",X"AD",X"36",X"04",X"F0",X"36",X"4C",X"B2",X"B4",X"AD",
|
||||
X"36",X"04",X"D0",X"09",X"AD",X"3A",X"04",X"D0",X"03",X"4C",X"D2",X"B4",X"60",X"CE",X"21",X"01",
|
||||
X"30",X"01",X"60",X"AE",X"58",X"04",X"E0",X"08",X"90",X"02",X"A2",X"07",X"BD",X"D4",X"B7",X"8D",
|
||||
X"21",X"01",X"A9",X"0B",X"38",X"ED",X"51",X"04",X"0A",X"0A",X"0A",X"0A",X"69",X"50",X"AA",X"4C",
|
||||
X"EB",X"B6",X"AD",X"3A",X"04",X"0D",X"04",X"03",X"D0",X"03",X"4C",X"D2",X"B4",X"A5",X"79",X"29",
|
||||
X"0F",X"F0",X"01",X"60",X"A5",X"6F",X"29",X"1F",X"D0",X"F9",X"EE",X"44",X"04",X"AD",X"44",X"04",
|
||||
X"C9",X"08",X"90",X"03",X"CE",X"44",X"04",X"AD",X"3D",X"04",X"C9",X"0B",X"B0",X"03",X"EE",X"3D",
|
||||
X"04",X"60",X"AD",X"3A",X"04",X"18",X"6D",X"04",X"03",X"CD",X"3D",X"04",X"90",X"06",X"20",X"8D",
|
||||
X"B4",X"4C",X"9F",X"B6",X"AD",X"3A",X"04",X"F0",X"03",X"4C",X"94",X"B6",X"4C",X"9F",X"B6",X"4C",
|
||||
X"8E",X"B5",X"20",X"DC",X"B7",X"A9",X"A0",X"8D",X"00",X"25",X"A9",X"00",X"85",X"4B",X"A9",X"0D",
|
||||
X"85",X"5E",X"A9",X"00",X"8D",X"01",X"03",X"85",X"4B",X"8D",X"03",X"03",X"8D",X"D3",X"03",X"85",
|
||||
X"79",X"EE",X"5D",X"04",X"24",X"EF",X"30",X"D7",X"AD",X"5A",X"04",X"D0",X"D2",X"AD",X"5D",X"04",
|
||||
X"F0",X"CD",X"4A",X"B0",X"CA",X"4A",X"B0",X"C7",X"38",X"E9",X"01",X"85",X"19",X"0A",X"65",X"19",
|
||||
X"AA",X"A9",X"00",X"85",X"A5",X"A9",X"0E",X"85",X"5E",X"38",X"AD",X"43",X"04",X"FD",X"D7",X"03",
|
||||
X"AD",X"42",X"04",X"FD",X"D6",X"03",X"AD",X"41",X"04",X"FD",X"D5",X"03",X"90",X"52",X"AD",X"41",
|
||||
X"04",X"9D",X"D5",X"03",X"85",X"1B",X"AD",X"42",X"04",X"9D",X"D6",X"03",X"85",X"1C",X"AD",X"43",
|
||||
X"04",X"9D",X"D7",X"03",X"85",X"1D",X"A5",X"1C",X"F8",X"18",X"69",X"50",X"85",X"1C",X"A5",X"1B",
|
||||
X"69",X"01",X"85",X"1B",X"D8",X"E8",X"E8",X"E8",X"E0",X"4B",X"B0",X"24",X"BD",X"D7",X"03",X"38",
|
||||
X"E5",X"1D",X"BD",X"D6",X"03",X"E5",X"1C",X"BD",X"D5",X"03",X"E5",X"1B",X"B0",X"D8",X"A5",X"1D",
|
||||
X"9D",X"D7",X"03",X"A5",X"1C",X"9D",X"D6",X"03",X"A5",X"1B",X"9D",X"D5",X"03",X"4C",X"46",X"B5",
|
||||
X"A5",X"9A",X"8D",X"5B",X"04",X"AD",X"5D",X"04",X"8D",X"59",X"04",X"20",X"56",X"BD",X"AD",X"5D",
|
||||
X"04",X"C9",X"21",X"90",X"11",X"29",X"07",X"D0",X"0D",X"EE",X"5C",X"04",X"AD",X"5C",X"04",X"C9",
|
||||
X"08",X"90",X"03",X"CE",X"5C",X"04",X"AD",X"5D",X"04",X"29",X"03",X"49",X"03",X"D0",X"35",X"8D",
|
||||
X"34",X"01",X"A9",X"01",X"8D",X"28",X"04",X"06",X"9A",X"E6",X"9A",X"A2",X"10",X"A9",X"03",X"9D",
|
||||
X"00",X"02",X"8A",X"18",X"69",X"10",X"AA",X"D0",X"F4",X"A9",X"01",X"8D",X"21",X"01",X"AD",X"58",
|
||||
X"04",X"18",X"69",X"01",X"C9",X"0A",X"B0",X"03",X"8D",X"58",X"04",X"8D",X"44",X"04",X"A9",X"0B",
|
||||
X"8D",X"51",X"04",X"60",X"AD",X"5D",X"04",X"85",X"19",X"38",X"E9",X"3C",X"30",X"07",X"29",X"07",
|
||||
X"18",X"69",X"34",X"85",X"19",X"A5",X"19",X"0A",X"65",X"19",X"AA",X"BD",X"AF",X"B8",X"29",X"0F",
|
||||
X"0A",X"09",X"01",X"8D",X"3F",X"04",X"BD",X"AF",X"B8",X"4A",X"4A",X"4A",X"4A",X"8D",X"44",X"04",
|
||||
X"BD",X"B0",X"B8",X"8D",X"3D",X"04",X"BD",X"B1",X"B8",X"8D",X"21",X"01",X"8D",X"3C",X"04",X"A0",
|
||||
X"00",X"8C",X"28",X"04",X"A2",X"00",X"8E",X"36",X"04",X"A4",X"19",X"F0",X"13",X"BD",X"63",X"B9",
|
||||
X"F0",X"0A",X"29",X"F0",X"C9",X"E0",X"B0",X"04",X"E8",X"4C",X"2D",X"B6",X"E8",X"88",X"D0",X"ED",
|
||||
X"BD",X"63",X"B9",X"4A",X"4A",X"4A",X"4A",X"A8",X"BD",X"63",X"B9",X"29",X"0F",X"C0",X"0D",X"B0",
|
||||
X"0C",X"85",X"19",X"A5",X"F6",X"F0",X"1D",X"C9",X"02",X"F0",X"23",X"A5",X"19",X"99",X"48",X"04",
|
||||
X"18",X"6D",X"36",X"04",X"8D",X"36",X"04",X"BD",X"63",X"B9",X"29",X"F0",X"C9",X"E0",X"B0",X"14",
|
||||
X"E8",X"4C",X"40",X"B6",X"A5",X"19",X"0A",X"65",X"19",X"4A",X"4A",X"4C",X"5D",X"B6",X"A5",X"19",
|
||||
X"0A",X"4C",X"76",X"B6",X"AD",X"5A",X"04",X"F0",X"0A",X"CE",X"5A",X"04",X"D0",X"05",X"A9",X"01",
|
||||
X"8D",X"4D",X"04",X"60",X"CE",X"21",X"01",X"D0",X"24",X"AD",X"3C",X"04",X"8D",X"21",X"01",X"A2",
|
||||
X"50",X"BD",X"00",X"02",X"29",X"03",X"C9",X"03",X"F0",X"3C",X"18",X"8A",X"69",X"10",X"AA",X"C9",
|
||||
X"00",X"D0",X"EE",X"AD",X"04",X"03",X"F0",X"06",X"A5",X"79",X"8D",X"3E",X"04",X"60",X"A5",X"79",
|
||||
X"38",X"ED",X"3E",X"04",X"C9",X"0F",X"90",X"F5",X"AD",X"0A",X"60",X"29",X"F0",X"C9",X"50",X"90",
|
||||
X"F7",X"A8",X"B9",X"01",X"02",X"29",X"0F",X"C9",X"05",X"F0",X"ED",X"A9",X"03",X"99",X"00",X"02",
|
||||
X"A5",X"79",X"8D",X"3E",X"04",X"60",X"AD",X"28",X"04",X"F0",X"1C",X"AD",X"51",X"04",X"C9",X"0B",
|
||||
X"F0",X"06",X"AD",X"36",X"01",X"4C",X"2B",X"B7",X"AD",X"0A",X"60",X"29",X"0F",X"C9",X"0C",X"B0",
|
||||
X"F7",X"8D",X"36",X"01",X"4C",X"2B",X"B7",X"A9",X"00",X"85",X"1B",X"AD",X"D1",X"03",X"C9",X"0B",
|
||||
X"F0",X"04",X"85",X"1B",X"E6",X"1B",X"AD",X"0A",X"60",X"29",X"0F",X"C9",X"0C",X"90",X"03",X"38",
|
||||
X"E9",X"0C",X"CD",X"D1",X"03",X"F0",X"EF",X"C5",X"1B",X"F0",X"EB",X"A8",X"B9",X"C8",X"B7",X"9D",
|
||||
X"06",X"02",X"A9",X"01",X"9D",X"0D",X"02",X"98",X"0A",X"0A",X"A8",X"B9",X"E7",X"B7",X"9D",X"09",
|
||||
X"02",X"B9",X"E8",X"B7",X"9D",X"0A",X"02",X"B9",X"E9",X"B7",X"9D",X"0B",X"02",X"B9",X"EA",X"B7",
|
||||
X"9D",X"0C",X"02",X"8A",X"A8",X"AD",X"28",X"04",X"F0",X"17",X"AD",X"44",X"04",X"99",X"05",X"02",
|
||||
X"A9",X"C6",X"9D",X"02",X"02",X"A9",X"B1",X"9D",X"03",X"02",X"A2",X"09",X"86",X"19",X"4C",X"AC",
|
||||
X"B7",X"AD",X"44",X"04",X"99",X"05",X"02",X"AD",X"0A",X"60",X"29",X"0F",X"AA",X"85",X"19",X"C9",
|
||||
X"0E",X"90",X"24",X"AD",X"3A",X"04",X"D0",X"0D",X"AD",X"36",X"04",X"CD",X"56",X"04",X"F0",X"2F",
|
||||
X"CD",X"57",X"04",X"F0",X"2A",X"A5",X"79",X"C9",X"05",X"90",X"23",X"A9",X"00",X"99",X"02",X"02",
|
||||
X"AD",X"44",X"04",X"4A",X"99",X"05",X"02",X"BD",X"48",X"04",X"F0",X"CB",X"DE",X"48",X"04",X"B9",
|
||||
X"01",X"02",X"29",X"F0",X"05",X"19",X"99",X"01",X"02",X"A9",X"00",X"99",X"00",X"02",X"60",X"A9",
|
||||
X"00",X"8D",X"56",X"04",X"8D",X"57",X"04",X"60",X"25",X"29",X"2E",X"32",X"37",X"3B",X"05",X"09",
|
||||
X"0E",X"12",X"17",X"1B",X"10",X"09",X"08",X"07",X"06",X"05",X"04",X"03",X"A2",X"0B",X"A9",X"00",
|
||||
X"9D",X"29",X"04",X"CA",X"10",X"FA",X"60",X"00",X"28",X"00",X"50",X"00",X"50",X"00",X"3C",X"00",
|
||||
X"64",X"00",X"14",X"00",X"64",X"00",X"EC",X"00",X"50",X"00",X"C4",X"00",X"28",X"00",X"B0",X"00",
|
||||
X"D8",X"00",X"B0",X"00",X"B0",X"00",X"C4",X"00",X"9C",X"00",X"EC",X"00",X"9C",X"00",X"14",X"00",
|
||||
X"B0",X"00",X"3C",X"00",X"D8",X"00",X"50",X"5E",X"5E",X"58",X"5E",X"5E",X"5E",X"5E",X"5E",X"58",
|
||||
X"5E",X"5E",X"5E",X"6A",X"64",X"5E",X"58",X"52",X"4C",X"52",X"58",X"5E",X"64",X"6A",X"6A",X"5E",
|
||||
X"5E",X"98",X"5E",X"5E",X"98",X"5E",X"5E",X"98",X"5E",X"5E",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"5E",X"9E",X"5E",X"9E",X"5E",X"9E",X"5E",X"9E",X"5E",
|
||||
X"9E",X"5E",X"9E",X"5E",X"98",X"5E",X"98",X"5E",X"98",X"5E",X"98",X"5E",X"98",X"5E",X"98",X"98",
|
||||
X"9E",X"A4",X"AA",X"AA",X"AA",X"AA",X"AA",X"92",X"92",X"92",X"92",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"98",X"98",X"98",X"9E",X"9E",X"9E",X"9E",X"9E",X"98",
|
||||
X"98",X"98",X"98",X"92",X"92",X"92",X"9E",X"9E",X"9E",X"9E",X"9E",X"92",X"92",X"92",X"92",X"9E",
|
||||
X"9E",X"52",X"9E",X"9E",X"9E",X"9E",X"9E",X"52",X"9E",X"9E",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"02",X"BB",X"AA",X"30",X"5F",X"EE",X"3D",X"A8",X"0F",
|
||||
X"04",X"19",X"1F",X"05",X"19",X"1F",X"06",X"19",X"00",X"00",X"00",X"1F",X"07",X"19",X"2F",X"08",
|
||||
X"19",X"2F",X"09",X"19",X"00",X"00",X"00",X"3F",X"0A",X"18",X"3F",X"0A",X"17",X"3F",X"0A",X"16",
|
||||
X"00",X"00",X"00",X"37",X"0A",X"15",X"37",X"0A",X"14",X"47",X"0A",X"14",X"00",X"00",X"00",X"47",
|
||||
X"0A",X"14",X"47",X"0A",X"14",X"47",X"0A",X"14",X"00",X"00",X"00",X"47",X"0A",X"14",X"47",X"0A",
|
||||
X"14",X"47",X"0A",X"14",X"00",X"00",X"00",X"47",X"0A",X"14",X"47",X"0A",X"14",X"47",X"0A",X"14",
|
||||
X"00",X"00",X"00",X"57",X"0A",X"14",X"57",X"0A",X"14",X"57",X"0A",X"14",X"00",X"00",X"00",X"57",
|
||||
X"0A",X"14",X"57",X"0A",X"14",X"57",X"0A",X"14",X"00",X"00",X"00",X"57",X"0A",X"0F",X"57",X"0A",
|
||||
X"0F",X"57",X"0A",X"0F",X"00",X"00",X"00",X"57",X"0A",X"0F",X"57",X"0A",X"0F",X"57",X"0A",X"0F",
|
||||
X"00",X"00",X"00",X"57",X"0B",X"0F",X"57",X"0B",X"0F",X"57",X"0B",X"05",X"00",X"00",X"00",X"57",
|
||||
X"0A",X"0F",X"57",X"0A",X"0F",X"57",X"0A",X"0F",X"00",X"00",X"00",X"57",X"0B",X"07",X"57",X"0B",
|
||||
X"07",X"67",X"0B",X"07",X"00",X"00",X"00",X"57",X"0B",X"07",X"67",X"0B",X"07",X"77",X"0B",X"07",
|
||||
X"00",X"00",X"00",X"25",X"75",X"05",X"E1",X"25",X"75",X"05",X"E1",X"25",X"75",X"05",X"E1",X"00",
|
||||
X"25",X"75",X"05",X"E1",X"25",X"75",X"05",X"E1",X"25",X"75",X"05",X"E1",X"00",X"25",X"75",X"05",
|
||||
X"D1",X"E1",X"25",X"75",X"05",X"D2",X"E1",X"25",X"75",X"05",X"D4",X"E1",X"00",X"DB",X"E1",X"25",
|
||||
X"75",X"05",X"D1",X"E1",X"25",X"75",X"05",X"D2",X"E1",X"00",X"0A",X"F1",X"0A",X"F2",X"0A",X"F3",
|
||||
X"00",X"25",X"75",X"05",X"D1",X"F1",X"25",X"75",X"05",X"D2",X"F1",X"25",X"75",X"05",X"D4",X"F1",
|
||||
X"00",X"25",X"75",X"05",X"D1",X"F1",X"25",X"75",X"05",X"D2",X"F1",X"25",X"75",X"05",X"D4",X"F1",
|
||||
X"00",X"25",X"75",X"05",X"D2",X"F1",X"25",X"75",X"05",X"D4",X"F1",X"25",X"75",X"05",X"D8",X"F1",
|
||||
X"00",X"25",X"75",X"05",X"D2",X"F1",X"25",X"75",X"05",X"D4",X"F1",X"25",X"75",X"05",X"D8",X"F1",
|
||||
X"00",X"25",X"75",X"05",X"D2",X"F1",X"25",X"75",X"05",X"D2",X"F2",X"25",X"75",X"05",X"D4",X"F4",
|
||||
X"00",X"25",X"75",X"05",X"D2",X"F1",X"25",X"75",X"05",X"D4",X"F2",X"25",X"75",X"05",X"D8",X"F4",
|
||||
X"00",X"25",X"75",X"05",X"D2",X"F1",X"25",X"75",X"05",X"D4",X"F2",X"25",X"75",X"05",X"D8",X"F4",
|
||||
X"00",X"25",X"75",X"05",X"D2",X"F2",X"25",X"75",X"05",X"D4",X"F2",X"25",X"75",X"05",X"D4",X"F2",
|
||||
X"00",X"02",X"7A",X"2A",X"D4",X"F3",X"04",X"7A",X"2A",X"D4",X"F3",X"06",X"7A",X"2A",X"D4",X"F3",
|
||||
X"00",X"06",X"7A",X"2A",X"D4",X"F3",X"08",X"7A",X"2A",X"D4",X"F3",X"0A",X"7A",X"2A",X"D4",X"F3",
|
||||
X"00",X"90",X"00",X"00",X"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"00",X"00",X"00",X"00",X"00",X"00",X"00",X"6B",X"6E",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"ED",X"F4",X"00",X"00",X"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"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"29",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"00",X"00",X"00",X"00",X"00",X"00",X"00",X"55",X"5A",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"19",X"1C",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"71",X"86",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"9F",X"B0",X"00",X"00",X"00",X"00",X"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"4C",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"99",X"9C",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"B5",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"8B",X"92",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"B5",X"C6",X"D9",X"DC",
|
||||
X"00",X"00",X"E1",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"02",X"01",X"0F",X"00",X"00",X"2F",X"02",X"FF",X"0F",X"00",X"00",X"00",X"04",
|
||||
X"0E",X"03",X"79",X"04",X"0E",X"03",X"00",X"04",X"0E",X"03",X"51",X"04",X"0E",X"07",X"00",X"00",
|
||||
X"8F",X"04",X"00",X"03",X"AF",X"04",X"FF",X"03",X"8B",X"04",X"FF",X"03",X"A6",X"04",X"FF",X"07",
|
||||
X"00",X"00",X"06",X"30",X"00",X"03",X"00",X"00",X"AF",X"18",X"00",X"01",X"A0",X"18",X"00",X"01",
|
||||
X"AF",X"18",X"00",X"01",X"A0",X"18",X"00",X"01",X"AF",X"18",X"00",X"01",X"A0",X"18",X"00",X"01",
|
||||
X"00",X"00",X"00",X"08",X"00",X"02",X"10",X"08",X"10",X"03",X"20",X"08",X"10",X"03",X"30",X"08",
|
||||
X"10",X"03",X"40",X"08",X"10",X"03",X"50",X"08",X"10",X"03",X"60",X"08",X"10",X"03",X"00",X"00",
|
||||
X"2F",X"08",X"00",X"02",X"AF",X"08",X"00",X"04",X"AD",X"08",X"FF",X"0E",X"00",X"00",X"60",X"10",
|
||||
X"00",X"01",X"50",X"10",X"F8",X"01",X"48",X"10",X"18",X"01",X"60",X"18",X"F0",X"01",X"60",X"10",
|
||||
X"F8",X"01",X"60",X"10",X"08",X"10",X"00",X"00",X"8C",X"20",X"02",X"01",X"8E",X"10",X"00",X"04",
|
||||
X"8E",X"38",X"FF",X"04",X"00",X"18",X"00",X"01",X"00",X"00",X"00",X"04",X"10",X"0A",X"00",X"04",
|
||||
X"10",X"0A",X"00",X"00",X"05",X"04",X"05",X"02",X"CF",X"04",X"00",X"02",X"0F",X"04",X"00",X"02",
|
||||
X"00",X"04",X"00",X"04",X"C5",X"04",X"05",X"02",X"0F",X"04",X"00",X"02",X"CF",X"04",X"00",X"02",
|
||||
X"00",X"04",X"00",X"04",X"00",X"00",X"0F",X"04",X"00",X"01",X"00",X"00",X"A8",X"04",X"40",X"01",
|
||||
X"00",X"00",X"F0",X"09",X"F0",X"02",X"D0",X"09",X"10",X"02",X"F0",X"09",X"F0",X"02",X"D0",X"09",
|
||||
X"10",X"02",X"F0",X"09",X"F0",X"02",X"D0",X"09",X"10",X"02",X"F0",X"09",X"F0",X"02",X"D0",X"09",
|
||||
X"10",X"02",X"F0",X"09",X"F0",X"02",X"D0",X"09",X"10",X"02",X"00",X"00",X"AF",X"09",X"FF",X"0A",
|
||||
X"A7",X"09",X"01",X"0A",X"00",X"00",X"08",X"04",X"20",X"0A",X"08",X"04",X"01",X"09",X"10",X"0C",
|
||||
X"04",X"0C",X"00",X"00",X"0F",X"04",X"00",X"0A",X"6F",X"04",X"00",X"09",X"6F",X"10",X"FF",X"09",
|
||||
X"00",X"00",X"B0",X"02",X"00",X"11",X"00",X"00",X"C0",X"02",X"02",X"11",X"00",X"00",X"60",X"01",
|
||||
X"00",X"01",X"60",X"01",X"FF",X"40",X"48",X"01",X"FF",X"30",X"30",X"01",X"FF",X"20",X"24",X"01",
|
||||
X"FF",X"18",X"1E",X"01",X"FF",X"14",X"1B",X"01",X"FF",X"12",X"18",X"01",X"FF",X"10",X"00",X"00",
|
||||
X"A8",X"DE",X"00",X"01",X"A0",X"01",X"00",X"01",X"00",X"00",X"00",X"04",X"00",X"06",X"1B",X"04",
|
||||
X"0E",X"03",X"00",X"04",X"00",X"01",X"51",X"04",X"0E",X"03",X"00",X"04",X"00",X"01",X"87",X"04",
|
||||
X"0E",X"03",X"00",X"04",X"00",X"01",X"BD",X"04",X"0E",X"02",X"00",X"00",X"4F",X"04",X"00",X"03",
|
||||
X"8F",X"04",X"00",X"03",X"AE",X"04",X"FF",X"03",X"4B",X"04",X"00",X"01",X"AA",X"04",X"FF",X"03",
|
||||
X"47",X"04",X"00",X"01",X"A6",X"04",X"FF",X"03",X"43",X"04",X"00",X"01",X"A2",X"04",X"FE",X"02",
|
||||
X"00",X"00",X"0A",X"FF",X"00",X"10",X"00",X"00",X"40",X"20",X"01",X"0A",X"4A",X"10",X"01",X"06",
|
||||
X"00",X"00",X"20",X"01",X"00",X"03",X"70",X"01",X"10",X"06",X"00",X"00",X"AF",X"01",X"FE",X"02",
|
||||
X"A0",X"01",X"00",X"01",X"A2",X"02",X"FF",X"03",X"00",X"00",X"36",X"10",X"00",X"03",X"43",X"10",
|
||||
X"0E",X"0A",X"D0",X"10",X"00",X"07",X"00",X"00",X"A3",X"10",X"04",X"04",X"AF",X"10",X"FF",X"10",
|
||||
X"00",X"00",X"A9",X"0F",X"D0",X"36",X"A9",X"9F",X"D0",X"32",X"A9",X"3F",X"D0",X"2E",X"A9",X"4F",
|
||||
X"D0",X"2A",X"A9",X"1F",X"D0",X"26",X"A9",X"5F",X"D0",X"22",X"A9",X"6F",X"D0",X"1E",X"A9",X"7F",
|
||||
X"D0",X"1A",X"A9",X"AF",X"D0",X"16",X"A9",X"BF",X"D0",X"12",X"A9",X"CF",X"D0",X"0E",X"A9",X"2F",
|
||||
X"D0",X"0A",X"A9",X"DF",X"D0",X"06",X"A9",X"8F",X"D0",X"02",X"A9",X"EF",X"24",X"EF",X"30",X"22",
|
||||
X"86",X"ED",X"84",X"EE",X"A8",X"A2",X"0F",X"B9",X"42",X"BA",X"F0",X"0E",X"86",X"F3",X"95",X"AD",
|
||||
X"A9",X"01",X"95",X"CD",X"95",X"DD",X"A9",X"FF",X"85",X"F3",X"88",X"CA",X"10",X"E9",X"A6",X"ED",
|
||||
X"A4",X"EE",X"60",X"A2",X"0F",X"B5",X"AD",X"F0",X"7E",X"E4",X"F3",X"F0",X"7A",X"D6",X"CD",X"D0",
|
||||
X"76",X"D6",X"DD",X"D0",X"38",X"F6",X"AD",X"F6",X"AD",X"B5",X"AD",X"0A",X"A8",X"B0",X"10",X"B9",
|
||||
X"2C",X"BB",X"95",X"BD",X"B9",X"2F",X"BB",X"95",X"DD",X"B9",X"2D",X"BB",X"4C",X"BC",X"BD",X"B9",
|
||||
X"2C",X"BC",X"95",X"BD",X"B9",X"2F",X"BC",X"95",X"DD",X"B9",X"2D",X"BC",X"95",X"CD",X"D0",X"0A",
|
||||
X"95",X"AD",X"B5",X"BD",X"F0",X"04",X"95",X"AD",X"D0",X"CB",X"4C",X"F8",X"BD",X"0A",X"A8",X"B0",
|
||||
X"0B",X"B9",X"2D",X"BB",X"95",X"CD",X"B9",X"2E",X"BB",X"4C",X"E4",X"BD",X"B9",X"2D",X"BC",X"95",
|
||||
X"CD",X"B9",X"2E",X"BC",X"B4",X"BD",X"18",X"75",X"BD",X"95",X"BD",X"8A",X"4A",X"90",X"09",X"98",
|
||||
X"55",X"BD",X"29",X"F0",X"55",X"BD",X"95",X"BD",X"B5",X"BD",X"E0",X"08",X"90",X"06",X"9D",X"F8",
|
||||
X"67",X"4C",X"07",X"BE",X"9D",X"00",X"60",X"CA",X"30",X"03",X"4C",X"85",X"BD",X"60",X"A9",X"00",
|
||||
X"8D",X"0F",X"60",X"8D",X"0F",X"68",X"A9",X"07",X"8D",X"0F",X"60",X"8D",X"0F",X"68",X"A2",X"07",
|
||||
X"A9",X"00",X"9D",X"00",X"60",X"9D",X"00",X"68",X"95",X"AD",X"95",X"BD",X"CA",X"10",X"F3",X"A9",
|
||||
X"00",X"8D",X"08",X"60",X"A2",X"00",X"8E",X"08",X"68",X"60",X"02",X"04",X"04",X"FE",X"C4",X"04",
|
||||
X"03",X"02",X"FC",X"00",X"05",X"01",X"00",X"FC",X"F8",X"05",X"FF",X"FE",X"FC",X"F8",X"04",X"FD",
|
||||
X"FC",X"FE",X"F0",X"02",X"FC",X"FC",X"00",X"EC",X"FE",X"FC",X"FC",X"02",X"E4",X"FC",X"FD",X"FE",
|
||||
X"04",X"E0",X"FB",X"FF",X"00",X"04",X"D8",X"FB",X"01",X"02",X"04",X"D8",X"FC",X"03",X"04",X"02",
|
||||
X"D0",X"FE",X"04",X"04",X"00",X"CC",X"A2",X"00",X"A9",X"01",X"85",X"6D",X"20",X"C9",X"D8",X"8A",
|
||||
X"48",X"BD",X"3A",X"BE",X"85",X"15",X"E8",X"BD",X"3A",X"BE",X"85",X"16",X"A5",X"4E",X"85",X"02",
|
||||
X"A5",X"15",X"85",X"03",X"20",X"67",X"A0",X"85",X"09",X"A5",X"01",X"85",X"08",X"A5",X"16",X"85",
|
||||
X"03",X"20",X"67",X"A0",X"85",X"0B",X"A5",X"01",X"85",X"0A",X"A9",X"00",X"85",X"0C",X"20",X"E2",
|
||||
X"D8",X"A9",X"A0",X"85",X"0C",X"A9",X"58",X"85",X"02",X"A5",X"15",X"85",X"03",X"20",X"67",X"A0",
|
||||
X"85",X"09",X"A5",X"01",X"85",X"08",X"A5",X"16",X"85",X"03",X"20",X"67",X"A0",X"85",X"0B",X"A5",
|
||||
X"01",X"85",X"0A",X"20",X"E2",X"D8",X"68",X"18",X"69",X"05",X"AA",X"C9",X"3C",X"90",X"9D",X"20",
|
||||
X"C9",X"D8",X"A5",X"11",X"85",X"74",X"A5",X"12",X"85",X"75",X"A5",X"4E",X"8D",X"80",X"89",X"85",
|
||||
X"05",X"A9",X"00",X"85",X"0C",X"85",X"07",X"AA",X"BD",X"3A",X"BE",X"85",X"03",X"A5",X"05",X"85",
|
||||
X"02",X"20",X"67",X"A0",X"85",X"09",X"A5",X"01",X"85",X"08",X"E8",X"BD",X"3A",X"BE",X"85",X"03",
|
||||
X"20",X"67",X"A0",X"85",X"0B",X"A5",X"01",X"85",X"0A",X"20",X"E2",X"D8",X"A9",X"A1",X"A2",X"00",
|
||||
X"20",X"5B",X"D8",X"A9",X"A0",X"85",X"0C",X"A5",X"07",X"18",X"69",X"05",X"C9",X"3C",X"90",X"C5",
|
||||
X"AD",X"3A",X"BE",X"85",X"03",X"20",X"67",X"A0",X"85",X"09",X"A5",X"01",X"85",X"08",X"AD",X"3C",
|
||||
X"BE",X"85",X"03",X"20",X"67",X"A0",X"85",X"0B",X"A5",X"01",X"85",X"0A",X"20",X"E2",X"D8",X"A9",
|
||||
X"00",X"85",X"0C",X"20",X"C9",X"D8",X"E6",X"6D",X"A5",X"05",X"18",X"65",X"4E",X"C9",X"58",X"90",
|
||||
X"8B",X"60",X"29",X"36",X"00",X"09",X"16",X"20",X"29",X"36",X"00",X"09",X"16",X"20",X"80",X"0C",
|
||||
X"00",X"0A",X"80",X"1B",X"00",X"19",X"00",X"14",X"00",X"37",X"80",X"25",X"00",X"1E",X"80",X"52",
|
||||
X"00",X"32",X"00",X"28",X"00",X"6E",X"80",X"3E",X"00",X"32",X"80",X"89",X"00",X"4B",X"00",X"3C",
|
||||
X"00",X"A5",X"80",X"57",X"00",X"46",X"80",X"C0",X"00",X"64",X"00",X"50",X"00",X"DC",X"00",X"00",
|
||||
X"5A",X"00",X"00",X"00",X"B4",X"00",X"00",X"00",X"0E",X"01",X"00",X"00",X"68",X"01",X"00",X"00",
|
||||
X"C2",X"01",X"00",X"00",X"1C",X"02",X"00",X"00",X"76",X"02",X"00",X"00",X"D0",X"02",X"00",X"00",
|
||||
X"2A",X"03",X"00",X"00",X"84",X"03",X"00",X"00",X"DE",X"03",X"00",X"00",X"38",X"04",X"00",X"00",
|
||||
X"92",X"04",X"00",X"00",X"EC",X"04",X"00",X"00",X"46",X"05",X"00",X"00",X"A0",X"05",X"06",X"00",
|
||||
X"5A",X"00",X"0C",X"00",X"B4",X"00",X"12",X"00",X"0E",X"01",X"18",X"00",X"68",X"01",X"1E",X"00",
|
||||
X"C2",X"01",X"24",X"00",X"1C",X"02",X"2A",X"00",X"76",X"02",X"30",X"00",X"D0",X"02",X"36",X"00");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,278 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity bwidow_pgm_rom4 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 bwidow_pgm_rom4 is
|
||||
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"2A",X"03",X"3C",X"00",X"84",X"03",X"42",X"00",X"DE",X"03",X"48",X"00",X"38",X"04",X"4E",X"00",
|
||||
X"92",X"04",X"54",X"00",X"EC",X"04",X"5A",X"00",X"46",X"05",X"60",X"00",X"A0",X"05",X"12",X"00",
|
||||
X"5A",X"00",X"24",X"00",X"B4",X"00",X"36",X"00",X"0E",X"01",X"48",X"00",X"68",X"01",X"5A",X"00",
|
||||
X"C2",X"01",X"6C",X"00",X"1C",X"02",X"7E",X"00",X"76",X"02",X"90",X"00",X"D0",X"02",X"A2",X"00",
|
||||
X"2A",X"03",X"B4",X"00",X"84",X"03",X"C6",X"00",X"DE",X"03",X"D8",X"00",X"38",X"04",X"EA",X"00",
|
||||
X"92",X"04",X"FC",X"00",X"EC",X"04",X"0E",X"01",X"46",X"05",X"20",X"01",X"A0",X"05",X"18",X"00",
|
||||
X"54",X"00",X"30",X"00",X"A8",X"00",X"48",X"00",X"FC",X"00",X"60",X"00",X"50",X"01",X"78",X"00",
|
||||
X"A4",X"01",X"90",X"00",X"F8",X"01",X"A8",X"00",X"4C",X"02",X"C0",X"00",X"A0",X"02",X"D8",X"00",
|
||||
X"F4",X"02",X"F0",X"00",X"48",X"03",X"08",X"01",X"9C",X"03",X"20",X"01",X"F0",X"03",X"38",X"01",
|
||||
X"44",X"04",X"50",X"01",X"98",X"04",X"68",X"01",X"EC",X"04",X"80",X"01",X"40",X"05",X"24",X"00",
|
||||
X"54",X"00",X"48",X"00",X"A8",X"00",X"6C",X"00",X"FC",X"00",X"90",X"00",X"50",X"01",X"B4",X"00",
|
||||
X"A4",X"01",X"D8",X"00",X"F8",X"01",X"FC",X"00",X"4C",X"02",X"20",X"01",X"A0",X"02",X"44",X"01",
|
||||
X"F4",X"02",X"68",X"01",X"48",X"03",X"8C",X"01",X"9C",X"03",X"B0",X"01",X"F0",X"03",X"D4",X"01",
|
||||
X"44",X"04",X"F8",X"01",X"98",X"04",X"1C",X"02",X"EC",X"04",X"40",X"02",X"40",X"05",X"2A",X"00",
|
||||
X"4E",X"00",X"54",X"00",X"9C",X"00",X"7E",X"00",X"EA",X"00",X"A8",X"00",X"38",X"01",X"D2",X"00",
|
||||
X"86",X"01",X"FC",X"00",X"D4",X"01",X"26",X"01",X"22",X"02",X"50",X"01",X"70",X"02",X"7A",X"01",
|
||||
X"BE",X"02",X"A4",X"01",X"0C",X"03",X"CE",X"01",X"5A",X"03",X"F8",X"01",X"A8",X"03",X"22",X"02",
|
||||
X"F6",X"03",X"4C",X"02",X"44",X"04",X"76",X"02",X"92",X"04",X"A0",X"02",X"E0",X"04",X"30",X"00",
|
||||
X"48",X"00",X"60",X"00",X"90",X"00",X"90",X"00",X"D8",X"00",X"C0",X"00",X"20",X"01",X"F0",X"00",
|
||||
X"68",X"01",X"20",X"01",X"B0",X"01",X"50",X"01",X"F8",X"01",X"80",X"01",X"40",X"02",X"B0",X"01",
|
||||
X"88",X"02",X"E0",X"01",X"D0",X"02",X"10",X"02",X"18",X"03",X"40",X"02",X"60",X"03",X"70",X"02",
|
||||
X"A8",X"03",X"A0",X"02",X"F0",X"03",X"D0",X"02",X"38",X"04",X"00",X"03",X"80",X"04",X"3C",X"00",
|
||||
X"48",X"00",X"78",X"00",X"90",X"00",X"B4",X"00",X"D8",X"00",X"F0",X"00",X"20",X"01",X"2C",X"01",
|
||||
X"68",X"01",X"68",X"01",X"B0",X"01",X"A4",X"01",X"F8",X"01",X"E0",X"01",X"40",X"02",X"1C",X"02",
|
||||
X"88",X"02",X"58",X"02",X"D0",X"02",X"94",X"02",X"18",X"03",X"D0",X"02",X"60",X"03",X"0C",X"03",
|
||||
X"A8",X"03",X"48",X"03",X"F0",X"03",X"84",X"03",X"38",X"04",X"C0",X"03",X"80",X"04",X"42",X"00",
|
||||
X"42",X"00",X"84",X"00",X"84",X"00",X"C6",X"00",X"C6",X"00",X"08",X"01",X"08",X"01",X"4A",X"01",
|
||||
X"4A",X"01",X"8C",X"01",X"8C",X"01",X"CE",X"01",X"CE",X"01",X"10",X"02",X"10",X"02",X"52",X"02",
|
||||
X"52",X"02",X"94",X"02",X"94",X"02",X"D6",X"02",X"D6",X"02",X"18",X"03",X"18",X"03",X"5A",X"03",
|
||||
X"5A",X"03",X"9C",X"03",X"9C",X"03",X"DE",X"03",X"DE",X"03",X"20",X"04",X"20",X"04",X"48",X"00",
|
||||
X"3C",X"00",X"90",X"00",X"78",X"00",X"D8",X"00",X"B4",X"00",X"20",X"01",X"F0",X"00",X"68",X"01",
|
||||
X"2C",X"01",X"B0",X"01",X"68",X"01",X"F8",X"01",X"A4",X"01",X"40",X"02",X"E0",X"01",X"88",X"02",
|
||||
X"1C",X"02",X"D0",X"02",X"58",X"02",X"18",X"03",X"94",X"02",X"60",X"03",X"D0",X"02",X"A8",X"03",
|
||||
X"0C",X"03",X"F0",X"03",X"48",X"03",X"38",X"04",X"84",X"03",X"80",X"04",X"C0",X"03",X"48",X"00",
|
||||
X"30",X"00",X"90",X"00",X"60",X"00",X"D8",X"00",X"90",X"00",X"20",X"01",X"C0",X"00",X"68",X"01",
|
||||
X"F0",X"00",X"B0",X"01",X"20",X"01",X"F8",X"01",X"50",X"01",X"40",X"02",X"80",X"01",X"88",X"02",
|
||||
X"B0",X"01",X"D0",X"02",X"E0",X"01",X"18",X"03",X"10",X"02",X"60",X"03",X"40",X"02",X"A8",X"03",
|
||||
X"70",X"02",X"F0",X"03",X"A0",X"02",X"38",X"04",X"D0",X"02",X"80",X"04",X"00",X"03",X"4E",X"00",
|
||||
X"2A",X"00",X"9C",X"00",X"54",X"00",X"EA",X"00",X"7E",X"00",X"38",X"01",X"A8",X"00",X"86",X"01",
|
||||
X"D2",X"00",X"D4",X"01",X"FC",X"00",X"22",X"02",X"26",X"01",X"70",X"02",X"50",X"01",X"BE",X"02",
|
||||
X"7A",X"01",X"0C",X"03",X"A4",X"01",X"5A",X"03",X"CE",X"01",X"A8",X"03",X"F8",X"01",X"F6",X"03",
|
||||
X"22",X"02",X"44",X"04",X"4C",X"02",X"92",X"04",X"76",X"02",X"E0",X"04",X"A0",X"02",X"54",X"00",
|
||||
X"24",X"00",X"A8",X"00",X"48",X"00",X"FC",X"00",X"6C",X"00",X"50",X"01",X"90",X"00",X"A4",X"01",
|
||||
X"B4",X"00",X"F8",X"01",X"D8",X"00",X"4C",X"02",X"FC",X"00",X"A0",X"02",X"20",X"01",X"F4",X"02",
|
||||
X"44",X"01",X"48",X"03",X"68",X"01",X"9C",X"03",X"8C",X"01",X"F0",X"03",X"B0",X"01",X"44",X"04",
|
||||
X"D4",X"01",X"98",X"04",X"F8",X"01",X"EC",X"04",X"1C",X"02",X"40",X"05",X"40",X"02",X"54",X"00",
|
||||
X"18",X"00",X"A8",X"00",X"30",X"00",X"FC",X"00",X"48",X"00",X"50",X"01",X"60",X"00",X"A4",X"01",
|
||||
X"78",X"00",X"F8",X"01",X"90",X"00",X"4C",X"02",X"A8",X"00",X"A0",X"02",X"C0",X"00",X"F4",X"02",
|
||||
X"D8",X"00",X"48",X"03",X"F0",X"00",X"9C",X"03",X"08",X"01",X"F0",X"03",X"20",X"01",X"44",X"04",
|
||||
X"38",X"01",X"98",X"04",X"50",X"01",X"EC",X"04",X"68",X"01",X"40",X"05",X"80",X"01",X"5A",X"00",
|
||||
X"12",X"00",X"B4",X"00",X"24",X"00",X"0E",X"01",X"36",X"00",X"68",X"01",X"48",X"00",X"C2",X"01",
|
||||
X"5A",X"00",X"1C",X"02",X"6C",X"00",X"76",X"02",X"7E",X"00",X"D0",X"02",X"90",X"00",X"2A",X"03",
|
||||
X"A2",X"00",X"84",X"03",X"B4",X"00",X"DE",X"03",X"C6",X"00",X"38",X"04",X"D8",X"00",X"92",X"04",
|
||||
X"EA",X"00",X"EC",X"04",X"FC",X"00",X"46",X"05",X"0E",X"01",X"A0",X"05",X"20",X"01",X"5A",X"00",
|
||||
X"06",X"00",X"B4",X"00",X"0C",X"00",X"0E",X"01",X"12",X"00",X"68",X"01",X"18",X"00",X"C2",X"01",
|
||||
X"1E",X"00",X"1C",X"02",X"24",X"00",X"76",X"02",X"2A",X"00",X"D0",X"02",X"30",X"00",X"2A",X"03",
|
||||
X"36",X"00",X"84",X"03",X"3C",X"00",X"DE",X"03",X"42",X"00",X"38",X"04",X"48",X"00",X"92",X"04",
|
||||
X"4E",X"00",X"EC",X"04",X"54",X"00",X"46",X"05",X"5A",X"00",X"A0",X"05",X"60",X"00",X"5A",X"00",
|
||||
X"00",X"00",X"B4",X"00",X"00",X"00",X"0E",X"01",X"00",X"00",X"68",X"01",X"00",X"00",X"C2",X"01",
|
||||
X"00",X"00",X"1C",X"02",X"00",X"00",X"76",X"02",X"00",X"00",X"D0",X"02",X"00",X"00",X"2A",X"03",
|
||||
X"00",X"00",X"84",X"03",X"00",X"00",X"DE",X"03",X"00",X"00",X"38",X"04",X"00",X"00",X"92",X"04",
|
||||
X"00",X"00",X"EC",X"04",X"00",X"00",X"46",X"05",X"00",X"00",X"A0",X"05",X"00",X"00",X"A6",X"40",
|
||||
X"D0",X"06",X"AD",X"04",X"02",X"4C",X"EB",X"C3",X"BD",X"06",X"02",X"20",X"D9",X"A2",X"A6",X"40",
|
||||
X"BD",X"01",X"02",X"29",X"0F",X"A8",X"B9",X"13",X"B0",X"29",X"40",X"F0",X"03",X"4C",X"12",X"C6",
|
||||
X"BD",X"00",X"02",X"29",X"03",X"D0",X"0A",X"A5",X"6C",X"D0",X"06",X"A6",X"40",X"A5",X"73",X"F0",
|
||||
X"03",X"4C",X"5B",X"C6",X"20",X"7A",X"C5",X"20",X"8C",X"C4",X"A6",X"40",X"D0",X"06",X"AD",X"22",
|
||||
X"01",X"8D",X"D1",X"03",X"AC",X"22",X"01",X"B9",X"29",X"04",X"F0",X"2F",X"A8",X"29",X"C0",X"C9",
|
||||
X"40",X"F0",X"03",X"4C",X"3D",X"C4",X"E0",X"00",X"D0",X"03",X"4C",X"12",X"C6",X"98",X"29",X"3F",
|
||||
X"18",X"65",X"59",X"AA",X"A5",X"5B",X"DD",X"6E",X"BF",X"A5",X"5C",X"FD",X"6F",X"BF",X"F0",X"10",
|
||||
X"10",X"05",X"49",X"FF",X"18",X"69",X"01",X"C9",X"04",X"90",X"05",X"A6",X"40",X"4C",X"12",X"C6",
|
||||
X"A6",X"40",X"BD",X"01",X"02",X"29",X"0F",X"C9",X"06",X"D0",X"03",X"4C",X"C5",X"C5",X"98",X"29",
|
||||
X"C0",X"C9",X"C0",X"D0",X"03",X"4C",X"B7",X"C5",X"20",X"42",X"BD",X"AC",X"22",X"01",X"B9",X"56",
|
||||
X"D5",X"A6",X"40",X"9D",X"06",X"02",X"20",X"B4",X"C9",X"4C",X"5B",X"C6",X"A5",X"59",X"0A",X"85",
|
||||
X"19",X"A5",X"5A",X"2A",X"85",X"1B",X"A5",X"5B",X"C5",X"19",X"A5",X"5C",X"E5",X"1B",X"90",X"10",
|
||||
X"A0",X"05",X"A5",X"44",X"30",X"02",X"A0",X"0B",X"8C",X"22",X"01",X"A9",X"02",X"85",X"59",X"60",
|
||||
X"A5",X"59",X"18",X"65",X"19",X"85",X"19",X"A5",X"1B",X"65",X"5A",X"6A",X"66",X"19",X"4A",X"66",
|
||||
X"19",X"85",X"1B",X"A5",X"19",X"C5",X"5B",X"A5",X"1B",X"E5",X"5C",X"B0",X"30",X"A0",X"00",X"A5",
|
||||
X"42",X"10",X"0B",X"A0",X"0A",X"A5",X"44",X"10",X"0B",X"A0",X"06",X"4C",X"E4",X"C4",X"A5",X"44",
|
||||
X"10",X"02",X"A0",X"04",X"8C",X"22",X"01",X"46",X"5A",X"66",X"59",X"18",X"A5",X"59",X"65",X"5B",
|
||||
X"85",X"5B",X"A5",X"5A",X"65",X"5C",X"85",X"5C",X"A9",X"00",X"85",X"59",X"60",X"A5",X"5B",X"85",
|
||||
X"19",X"A5",X"5C",X"85",X"1B",X"06",X"19",X"26",X"1B",X"06",X"19",X"26",X"1B",X"B0",X"30",X"A5",
|
||||
X"19",X"65",X"5B",X"85",X"19",X"A5",X"1B",X"65",X"5C",X"85",X"1B",X"B0",X"22",X"A5",X"59",X"C5",
|
||||
X"19",X"A5",X"5A",X"E5",X"1B",X"90",X"18",X"A0",X"02",X"A5",X"42",X"10",X"02",X"A0",X"08",X"8C",
|
||||
X"22",X"01",X"A5",X"59",X"85",X"5B",X"A5",X"5A",X"85",X"5C",X"A9",X"00",X"85",X"59",X"60",X"A0",
|
||||
X"01",X"A5",X"42",X"10",X"0B",X"A0",X"07",X"A5",X"44",X"30",X"0B",X"A0",X"09",X"4C",X"56",X"C5",
|
||||
X"A5",X"44",X"10",X"02",X"A0",X"03",X"8C",X"22",X"01",X"06",X"59",X"26",X"5A",X"18",X"A5",X"59",
|
||||
X"65",X"5B",X"85",X"5B",X"A5",X"5A",X"65",X"5C",X"85",X"5C",X"B0",X"05",X"A9",X"04",X"85",X"59",
|
||||
X"60",X"A9",X"FF",X"85",X"5B",X"85",X"5C",X"4C",X"6C",X"C5",X"BD",X"09",X"02",X"85",X"59",X"BD",
|
||||
X"0A",X"02",X"85",X"5A",X"85",X"42",X"10",X"10",X"49",X"FF",X"85",X"5A",X"A5",X"59",X"49",X"FF",
|
||||
X"85",X"59",X"E6",X"59",X"D0",X"02",X"E6",X"5A",X"BD",X"0B",X"02",X"85",X"5B",X"BD",X"0C",X"02",
|
||||
X"85",X"5C",X"85",X"44",X"10",X"10",X"49",X"FF",X"85",X"5C",X"A5",X"5B",X"49",X"FF",X"85",X"5B",
|
||||
X"E6",X"5B",X"D0",X"02",X"E6",X"5C",X"60",X"AC",X"22",X"01",X"A6",X"40",X"BD",X"01",X"02",X"29",
|
||||
X"0F",X"C9",X"06",X"D0",X"1F",X"20",X"36",X"BD",X"AE",X"22",X"01",X"BD",X"29",X"04",X"20",X"CA",
|
||||
X"A1",X"A9",X"A1",X"A0",X"00",X"91",X"49",X"AC",X"22",X"01",X"A9",X"00",X"99",X"29",X"04",X"A6",
|
||||
X"40",X"4C",X"5B",X"C6",X"B9",X"62",X"BF",X"38",X"FD",X"06",X"02",X"38",X"E9",X"01",X"10",X"07",
|
||||
X"85",X"19",X"A9",X"40",X"18",X"65",X"19",X"29",X"3F",X"9D",X"06",X"02",X"BD",X"01",X"02",X"29",
|
||||
X"0F",X"D0",X"07",X"BD",X"06",X"02",X"09",X"80",X"85",X"82",X"20",X"B4",X"C9",X"20",X"42",X"BD",
|
||||
X"A6",X"40",X"BD",X"00",X"02",X"29",X"08",X"F0",X"01",X"60",X"E0",X"00",X"F0",X"09",X"BD",X"01",
|
||||
X"02",X"29",X"0F",X"C9",X"07",X"D0",X"34",X"BD",X"0A",X"02",X"85",X"59",X"BD",X"0C",X"02",X"85",
|
||||
X"5B",X"A9",X"07",X"85",X"5D",X"20",X"03",X"D5",X"A6",X"40",X"90",X"1F",X"BD",X"06",X"02",X"48",
|
||||
X"AC",X"22",X"01",X"B9",X"56",X"D5",X"A6",X"40",X"9D",X"06",X"02",X"20",X"B4",X"C9",X"20",X"70",
|
||||
X"C7",X"A6",X"40",X"68",X"9D",X"06",X"02",X"20",X"42",X"BD",X"60",X"20",X"70",X"C7",X"BD",X"00",
|
||||
X"02",X"29",X"02",X"F0",X"01",X"60",X"8A",X"D0",X"03",X"4C",X"CE",X"C6",X"BD",X"01",X"02",X"29",
|
||||
X"0F",X"C9",X"03",X"D0",X"20",X"A9",X"07",X"85",X"5D",X"BD",X"0A",X"02",X"85",X"59",X"BD",X"0C",
|
||||
X"02",X"85",X"5B",X"20",X"03",X"D5",X"90",X"03",X"4C",X"ED",X"C7",X"A9",X"00",X"85",X"5D",X"20",
|
||||
X"1F",X"D5",X"90",X"F4",X"60",X"BD",X"0A",X"02",X"10",X"05",X"49",X"FF",X"18",X"69",X"01",X"C9",
|
||||
X"70",X"90",X"17",X"A0",X"6E",X"BD",X"0A",X"02",X"10",X"02",X"A0",X"92",X"98",X"9D",X"0A",X"02",
|
||||
X"A9",X"00",X"9D",X"09",X"02",X"85",X"19",X"4C",X"E5",X"C6",X"BD",X"0C",X"02",X"10",X"05",X"49",
|
||||
X"FF",X"18",X"69",X"01",X"C9",X"60",X"B0",X"07",X"60",X"A9",X"03",X"9D",X"00",X"02",X"60",X"A0",
|
||||
X"5E",X"BD",X"0C",X"02",X"10",X"02",X"A0",X"A2",X"98",X"9D",X"0C",X"02",X"A9",X"00",X"9D",X"0B",
|
||||
X"02",X"A9",X"20",X"85",X"19",X"A5",X"6C",X"F0",X"29",X"8A",X"A8",X"BD",X"01",X"02",X"29",X"0F",
|
||||
X"AA",X"C9",X"04",X"F0",X"15",X"C9",X"08",X"F0",X"11",X"C9",X"09",X"F0",X"0D",X"C9",X"0A",X"F0",
|
||||
X"09",X"C9",X"06",X"D0",X"02",X"A2",X"02",X"FE",X"48",X"04",X"98",X"AA",X"A9",X"03",X"9D",X"00",
|
||||
X"02",X"60",X"E0",X"50",X"B0",X"03",X"4C",X"C9",X"C6",X"BD",X"01",X"02",X"29",X"0F",X"A8",X"B9",
|
||||
X"13",X"B0",X"A8",X"29",X"01",X"D0",X"A2",X"98",X"29",X"08",X"F0",X"2A",X"BD",X"00",X"02",X"29",
|
||||
X"03",X"F0",X"23",X"BD",X"01",X"02",X"29",X"0F",X"C9",X"09",X"D0",X"8D",X"CE",X"03",X"03",X"AD",
|
||||
X"03",X"03",X"C9",X"F5",X"D0",X"83",X"86",X"19",X"A9",X"01",X"85",X"59",X"A9",X"00",X"85",X"5A",
|
||||
X"85",X"5B",X"20",X"80",X"D1",X"60",X"A5",X"19",X"38",X"FD",X"06",X"02",X"38",X"E9",X"01",X"10",
|
||||
X"03",X"18",X"69",X"40",X"29",X"3F",X"9D",X"06",X"02",X"20",X"B4",X"C9",X"20",X"5B",X"C6",X"60",
|
||||
X"86",X"19",X"BD",X"07",X"02",X"85",X"4C",X"BD",X"08",X"02",X"85",X"4D",X"A2",X"03",X"A0",X"03",
|
||||
X"B1",X"4C",X"95",X"1B",X"88",X"CA",X"10",X"F8",X"A6",X"19",X"BD",X"06",X"02",X"C9",X"11",X"B0",
|
||||
X"15",X"20",X"AD",X"C7",X"18",X"BD",X"0B",X"02",X"65",X"1D",X"9D",X"0B",X"02",X"BD",X"0C",X"02",
|
||||
X"65",X"1E",X"9D",X"0C",X"02",X"60",X"C9",X"21",X"B0",X"15",X"20",X"C6",X"C7",X"18",X"BD",X"09",
|
||||
X"02",X"65",X"1B",X"9D",X"09",X"02",X"BD",X"0A",X"02",X"65",X"1C",X"9D",X"0A",X"02",X"60",X"C9",
|
||||
X"31",X"B0",X"15",X"20",X"DB",X"C7",X"38",X"BD",X"0B",X"02",X"E5",X"1D",X"9D",X"0B",X"02",X"BD",
|
||||
X"0C",X"02",X"E5",X"1E",X"9D",X"0C",X"02",X"60",X"20",X"94",X"C7",X"38",X"BD",X"09",X"02",X"E5",
|
||||
X"1B",X"9D",X"09",X"02",X"BD",X"0A",X"02",X"E5",X"1C",X"9D",X"0A",X"02",X"60",X"A9",X"00",X"85",
|
||||
X"59",X"9D",X"01",X"02",X"86",X"19",X"A9",X"13",X"0A",X"AA",X"BD",X"72",X"C9",X"85",X"5A",X"BD",
|
||||
X"73",X"C9",X"85",X"5B",X"8A",X"48",X"20",X"4E",X"BD",X"68",X"AA",X"AC",X"03",X"03",X"C0",X"04",
|
||||
X"B0",X"03",X"EE",X"03",X"03",X"F8",X"88",X"30",X"0B",X"BD",X"72",X"C9",X"18",X"65",X"5A",X"85",
|
||||
X"5A",X"4C",X"16",X"C8",X"D8",X"A5",X"5A",X"A8",X"A6",X"19",X"A9",X"60",X"9D",X"01",X"21",X"A9",
|
||||
X"00",X"9D",X"00",X"21",X"9D",X"06",X"21",X"A9",X"71",X"9D",X"0B",X"21",X"A9",X"00",X"9D",X"0A",
|
||||
X"21",X"A5",X"5B",X"4C",X"9D",X"C8",X"86",X"19",X"48",X"A5",X"79",X"8D",X"3E",X"04",X"A9",X"60",
|
||||
X"9D",X"01",X"21",X"A9",X"00",X"9D",X"00",X"21",X"9D",X"06",X"21",X"68",X"C9",X"22",X"D0",X"2C",
|
||||
X"24",X"EF",X"30",X"25",X"AD",X"39",X"04",X"F8",X"18",X"6D",X"43",X"04",X"8D",X"43",X"04",X"AD",
|
||||
X"38",X"04",X"6D",X"42",X"04",X"8D",X"42",X"04",X"AD",X"37",X"04",X"6D",X"41",X"04",X"8D",X"41",
|
||||
X"04",X"D8",X"A9",X"00",X"A0",X"00",X"20",X"1B",X"CA",X"4C",X"FD",X"C8",X"0A",X"AA",X"A9",X"00",
|
||||
X"85",X"59",X"BD",X"72",X"C9",X"A8",X"85",X"5A",X"BD",X"73",X"C9",X"85",X"5B",X"20",X"1B",X"CA",
|
||||
X"A6",X"19",X"BD",X"01",X"02",X"29",X"0F",X"A8",X"B9",X"13",X"B0",X"30",X"40",X"20",X"2E",X"BD",
|
||||
X"A9",X"00",X"85",X"1C",X"A5",X"19",X"18",X"69",X"04",X"85",X"11",X"A9",X"20",X"18",X"69",X"03",
|
||||
X"85",X"12",X"20",X"1D",X"C9",X"A6",X"19",X"8A",X"4A",X"4A",X"4A",X"38",X"E9",X"0A",X"A8",X"78",
|
||||
X"B9",X"B3",X"D8",X"9D",X"04",X"21",X"B9",X"B4",X"D8",X"9D",X"05",X"21",X"A9",X"00",X"9D",X"02",
|
||||
X"21",X"A9",X"70",X"9D",X"03",X"21",X"A9",X"02",X"9D",X"00",X"02",X"58",X"60",X"78",X"C0",X"0D",
|
||||
X"D0",X"0B",X"A0",X"05",X"A9",X"00",X"20",X"1B",X"CA",X"A9",X"01",X"D0",X"02",X"A9",X"02",X"9D",
|
||||
X"00",X"02",X"A9",X"00",X"9D",X"03",X"02",X"A9",X"01",X"9D",X"02",X"02",X"AD",X"64",X"56",X"9D",
|
||||
X"04",X"21",X"AD",X"65",X"56",X"9D",X"05",X"21",X"58",X"20",X"4A",X"BD",X"60",X"A5",X"59",X"29",
|
||||
X"0F",X"38",X"F0",X"03",X"18",X"C6",X"1C",X"20",X"AF",X"D7",X"A5",X"5A",X"4A",X"4A",X"4A",X"4A",
|
||||
X"20",X"4B",X"C9",X"A5",X"5A",X"29",X"0F",X"20",X"4B",X"C9",X"A5",X"5B",X"4A",X"4A",X"4A",X"4A",
|
||||
X"18",X"20",X"AF",X"D7",X"A5",X"5B",X"18",X"20",X"AF",X"D7",X"60",X"18",X"F0",X"05",X"C6",X"1C",
|
||||
X"4C",X"AF",X"D7",X"24",X"1C",X"30",X"01",X"38",X"4C",X"AF",X"D7",X"A6",X"40",X"A5",X"08",X"9D",
|
||||
X"09",X"02",X"A5",X"09",X"9D",X"0A",X"02",X"A5",X"0A",X"9D",X"0B",X"02",X"A5",X"0B",X"9D",X"0C",
|
||||
X"02",X"60",X"00",X"25",X"00",X"50",X"00",X"75",X"01",X"00",X"01",X"25",X"01",X"50",X"01",X"75",
|
||||
X"02",X"00",X"02",X"25",X"02",X"50",X"02",X"75",X"03",X"00",X"03",X"25",X"03",X"50",X"03",X"75",
|
||||
X"04",X"00",X"04",X"25",X"04",X"50",X"04",X"75",X"05",X"00",X"05",X"25",X"05",X"50",X"05",X"75",
|
||||
X"06",X"00",X"06",X"25",X"06",X"50",X"06",X"75",X"07",X"00",X"07",X"25",X"07",X"50",X"07",X"75",
|
||||
X"08",X"00",X"10",X"00",X"E0",X"50",X"B0",X"13",X"24",X"EF",X"30",X"0F",X"A5",X"73",X"D0",X"0B",
|
||||
X"BD",X"06",X"02",X"18",X"69",X"04",X"29",X"38",X"9D",X"06",X"02",X"BD",X"06",X"02",X"85",X"1D",
|
||||
X"C9",X"11",X"90",X"20",X"C9",X"21",X"B0",X"0A",X"A9",X"20",X"38",X"E5",X"1D",X"85",X"1D",X"4C",
|
||||
X"F4",X"C9",X"C9",X"31",X"B0",X"08",X"38",X"E9",X"20",X"85",X"1D",X"4C",X"F4",X"C9",X"A9",X"40",
|
||||
X"E5",X"1D",X"85",X"1D",X"BD",X"05",X"02",X"0A",X"0A",X"0A",X"0A",X"85",X"1C",X"A5",X"1D",X"29",
|
||||
X"1F",X"4A",X"66",X"1C",X"4A",X"66",X"1C",X"85",X"1B",X"A9",X"9E",X"18",X"65",X"1C",X"9D",X"07",
|
||||
X"02",X"A9",X"BF",X"65",X"1B",X"9D",X"08",X"02",X"60",X"D4",X"00",X"24",X"EF",X"30",X"67",X"18",
|
||||
X"F8",X"6D",X"43",X"04",X"8D",X"43",X"04",X"98",X"6D",X"42",X"04",X"8D",X"42",X"04",X"90",X"08",
|
||||
X"AD",X"41",X"04",X"69",X"00",X"8D",X"41",X"04",X"D8",X"AC",X"45",X"04",X"F0",X"48",X"F8",X"A0",
|
||||
X"00",X"AD",X"41",X"04",X"C8",X"38",X"ED",X"45",X"04",X"10",X"F9",X"D8",X"88",X"CC",X"47",X"04",
|
||||
X"F0",X"34",X"8C",X"47",X"04",X"8A",X"48",X"98",X"48",X"AD",X"40",X"04",X"C9",X"06",X"B0",X"1F",
|
||||
X"EE",X"40",X"04",X"AD",X"C8",X"04",X"F0",X"0E",X"AD",X"C9",X"04",X"F0",X"09",X"AD",X"40",X"04",
|
||||
X"8D",X"AA",X"04",X"4C",X"7C",X"CA",X"AD",X"40",X"04",X"8D",X"75",X"04",X"20",X"3B",X"9C",X"20",
|
||||
X"3A",X"BD",X"68",X"A8",X"68",X"AA",X"60",X"AD",X"C9",X"04",X"F0",X"15",X"AD",X"41",X"04",X"8D",
|
||||
X"AB",X"04",X"AD",X"42",X"04",X"8D",X"AC",X"04",X"AD",X"43",X"04",X"8D",X"AD",X"04",X"4C",X"B3",
|
||||
X"CA",X"AD",X"41",X"04",X"8D",X"76",X"04",X"AD",X"42",X"04",X"8D",X"77",X"04",X"AD",X"43",X"04",
|
||||
X"8D",X"78",X"04",X"AD",X"76",X"04",X"8D",X"41",X"04",X"AD",X"77",X"04",X"8D",X"42",X"04",X"AD",
|
||||
X"78",X"04",X"8D",X"43",X"04",X"A5",X"54",X"85",X"12",X"A5",X"53",X"85",X"11",X"A0",X"00",X"A2",
|
||||
X"C4",X"24",X"EF",X"30",X"0C",X"AD",X"C9",X"04",X"D0",X"07",X"2C",X"D0",X"03",X"10",X"02",X"A2",
|
||||
X"C7",X"8A",X"91",X"11",X"20",X"33",X"CB",X"AD",X"AB",X"04",X"8D",X"41",X"04",X"AD",X"AC",X"04",
|
||||
X"8D",X"42",X"04",X"AD",X"AD",X"04",X"8D",X"43",X"04",X"A5",X"55",X"85",X"11",X"A5",X"56",X"85",
|
||||
X"12",X"A0",X"00",X"A2",X"C4",X"24",X"EF",X"30",X"0C",X"AD",X"C9",X"04",X"F0",X"07",X"2C",X"D0",
|
||||
X"03",X"10",X"02",X"A2",X"C7",X"8A",X"91",X"11",X"20",X"33",X"CB",X"AD",X"C9",X"04",X"D0",X"12",
|
||||
X"AD",X"76",X"04",X"8D",X"41",X"04",X"AD",X"77",X"04",X"8D",X"42",X"04",X"AD",X"78",X"04",X"8D",
|
||||
X"43",X"04",X"60",X"A9",X"06",X"18",X"65",X"11",X"85",X"11",X"A2",X"00",X"A0",X"00",X"84",X"19",
|
||||
X"BD",X"41",X"04",X"4A",X"4A",X"4A",X"4A",X"F0",X"02",X"C6",X"19",X"24",X"19",X"18",X"30",X"01",
|
||||
X"38",X"86",X"1B",X"20",X"AF",X"D7",X"A6",X"1B",X"BD",X"41",X"04",X"29",X"0F",X"F0",X"02",X"C6",
|
||||
X"19",X"24",X"19",X"18",X"30",X"01",X"38",X"20",X"AF",X"D7",X"A6",X"1B",X"E8",X"E0",X"03",X"D0",
|
||||
X"CF",X"60",X"CE",X"50",X"0B",X"E4",X"00",X"01",X"90",X"E0",X"10",X"0B",X"E1",X"00",X"01",X"AD",
|
||||
X"20",X"04",X"C9",X"03",X"F0",X"16",X"AD",X"C8",X"04",X"F0",X"11",X"A2",X"02",X"20",X"B7",X"DC",
|
||||
X"AD",X"C9",X"04",X"18",X"69",X"01",X"20",X"AF",X"D7",X"4C",X"A1",X"CB",X"A2",X"10",X"20",X"B7",
|
||||
X"DC",X"AD",X"72",X"CB",X"85",X"59",X"AD",X"73",X"CB",X"85",X"5B",X"AD",X"74",X"CB",X"85",X"65",
|
||||
X"AD",X"75",X"CB",X"85",X"63",X"AD",X"76",X"CB",X"85",X"5A",X"AD",X"77",X"CB",X"85",X"5C",X"A9",
|
||||
X"00",X"85",X"19",X"85",X"1D",X"85",X"0C",X"A9",X"01",X"85",X"1C",X"20",X"3B",X"CD",X"A9",X"00",
|
||||
X"20",X"2C",X"CC",X"A6",X"19",X"BD",X"16",X"03",X"20",X"3F",X"CC",X"88",X"20",X"05",X"D8",X"A5",
|
||||
X"5B",X"38",X"E5",X"65",X"85",X"5B",X"A5",X"19",X"18",X"69",X"07",X"85",X"19",X"E6",X"1D",X"A5",
|
||||
X"1C",X"C9",X"11",X"D0",X"21",X"AD",X"78",X"CB",X"85",X"59",X"AD",X"79",X"CB",X"85",X"5B",X"AD",
|
||||
X"7B",X"CB",X"85",X"65",X"AD",X"7C",X"CB",X"85",X"63",X"AD",X"7D",X"CB",X"85",X"5A",X"AD",X"7E",
|
||||
X"CB",X"85",X"5C",X"4C",X"CB",X"CB",X"C9",X"21",X"90",X"01",X"60",X"C9",X"16",X"D0",X"F4",X"AD",
|
||||
X"7A",X"CB",X"85",X"59",X"AD",X"79",X"CB",X"85",X"5B",X"4C",X"13",X"CC",X"AA",X"F0",X"04",X"0A",
|
||||
X"69",X"14",X"AA",X"BD",X"C4",X"5D",X"20",X"6F",X"CC",X"BD",X"C5",X"5D",X"4C",X"6F",X"CC",X"A2",
|
||||
X"00",X"86",X"64",X"48",X"29",X"F0",X"4A",X"4A",X"4A",X"20",X"50",X"CC",X"68",X"29",X"0F",X"0A",
|
||||
X"F0",X"07",X"A2",X"FF",X"86",X"64",X"4C",X"62",X"CC",X"24",X"64",X"30",X"05",X"A2",X"00",X"4C",
|
||||
X"66",X"CC",X"18",X"69",X"02",X"AA",X"BD",X"C4",X"5D",X"20",X"6F",X"CC",X"BD",X"C5",X"5D",X"91",
|
||||
X"11",X"C8",X"D0",X"02",X"E6",X"12",X"60",X"E6",X"A3",X"A5",X"19",X"18",X"69",X"07",X"C9",X"8C",
|
||||
X"90",X"14",X"A9",X"01",X"8D",X"21",X"04",X"A9",X"FF",X"85",X"A3",X"A9",X"00",X"85",X"A4",X"60",
|
||||
X"A9",X"00",X"85",X"A3",X"85",X"A4",X"85",X"19",X"38",X"A6",X"19",X"BD",X"15",X"03",X"ED",X"43",
|
||||
X"04",X"BD",X"14",X"03",X"ED",X"42",X"04",X"BD",X"13",X"03",X"ED",X"41",X"04",X"B0",X"C8",X"E0",
|
||||
X"85",X"F0",X"51",X"A0",X"85",X"B9",X"16",X"03",X"D0",X"0C",X"98",X"38",X"E9",X"07",X"A8",X"10",
|
||||
X"F4",X"A2",X"00",X"4C",X"04",X"CD",X"98",X"18",X"69",X"07",X"AA",X"C5",X"19",X"F0",X"35",X"A8",
|
||||
X"38",X"E9",X"07",X"AA",X"BD",X"10",X"03",X"99",X"10",X"03",X"BD",X"11",X"03",X"99",X"11",X"03",
|
||||
X"BD",X"12",X"03",X"99",X"12",X"03",X"BD",X"13",X"03",X"99",X"13",X"03",X"BD",X"14",X"03",X"99",
|
||||
X"14",X"03",X"BD",X"15",X"03",X"99",X"15",X"03",X"BD",X"16",X"03",X"99",X"16",X"03",X"8A",X"A8",
|
||||
X"E4",X"19",X"D0",X"CC",X"86",X"A9",X"AD",X"41",X"04",X"9D",X"13",X"03",X"AD",X"42",X"04",X"9D",
|
||||
X"14",X"03",X"AD",X"43",X"04",X"9D",X"15",X"03",X"A9",X"00",X"9D",X"10",X"03",X"9D",X"11",X"03",
|
||||
X"9D",X"12",X"03",X"AD",X"5D",X"04",X"18",X"69",X"01",X"20",X"A1",X"DC",X"9D",X"16",X"03",X"20",
|
||||
X"0E",X"BE",X"20",X"5A",X"BD",X"A9",X"04",X"8D",X"21",X"04",X"60",X"20",X"C9",X"D8",X"A0",X"00",
|
||||
X"A9",X"01",X"20",X"12",X"D8",X"A5",X"59",X"A6",X"5B",X"20",X"1D",X"D8",X"A4",X"5A",X"A5",X"5C",
|
||||
X"20",X"12",X"D8",X"A5",X"1D",X"C5",X"A3",X"D0",X"08",X"A5",X"11",X"85",X"A3",X"A5",X"12",X"85",
|
||||
X"A4",X"A4",X"63",X"A9",X"00",X"20",X"EF",X"D7",X"A0",X"00",X"AD",X"20",X"04",X"F0",X"17",X"C9",
|
||||
X"01",X"F0",X"13",X"A5",X"1C",X"20",X"3F",X"CC",X"A9",X"00",X"20",X"2C",X"CC",X"F8",X"18",X"A9",
|
||||
X"01",X"65",X"1C",X"85",X"1C",X"D8",X"A6",X"19",X"BD",X"10",X"03",X"20",X"DD",X"CD",X"BD",X"10",
|
||||
X"03",X"29",X"1F",X"20",X"2C",X"CC",X"A6",X"19",X"BD",X"11",X"03",X"20",X"DD",X"CD",X"BD",X"11",
|
||||
X"03",X"29",X"1F",X"20",X"2C",X"CC",X"A6",X"19",X"BD",X"12",X"03",X"20",X"DD",X"CD",X"BD",X"12",
|
||||
X"03",X"29",X"1F",X"20",X"2C",X"CC",X"A5",X"63",X"20",X"6F",X"CC",X"A9",X"60",X"20",X"6F",X"CC",
|
||||
X"A9",X"00",X"20",X"2C",X"CC",X"A6",X"19",X"BD",X"13",X"03",X"20",X"3F",X"CC",X"A6",X"19",X"BD",
|
||||
X"14",X"03",X"20",X"43",X"CC",X"A6",X"19",X"BD",X"15",X"03",X"4C",X"43",X"CC",X"4A",X"4A",X"4A",
|
||||
X"4A",X"4A",X"4A",X"AA",X"BD",X"F2",X"CD",X"A6",X"19",X"20",X"6F",X"CC",X"A9",X"60",X"20",X"6F",
|
||||
X"CC",X"60",X"C4",X"C2",X"C1",X"C7",X"A2",X"00",X"A9",X"00",X"9D",X"10",X"03",X"E8",X"E0",X"8C",
|
||||
X"D0",X"F6",X"60",X"BD",X"0A",X"02",X"C9",X"80",X"6A",X"85",X"67",X"B9",X"0A",X"02",X"C9",X"80",
|
||||
X"6A",X"38",X"E5",X"67",X"85",X"42",X"10",X"05",X"49",X"FF",X"18",X"69",X"01",X"85",X"43",X"4A",
|
||||
X"85",X"67",X"BD",X"0C",X"02",X"C9",X"80",X"6A",X"85",X"69",X"B9",X"0C",X"02",X"C9",X"80",X"6A",
|
||||
X"38",X"E5",X"69",X"85",X"44",X"10",X"05",X"49",X"FF",X"18",X"69",X"01",X"85",X"45",X"4A",X"85",
|
||||
X"69",X"C5",X"67",X"90",X"0E",X"A5",X"67",X"18",X"65",X"43",X"4A",X"4A",X"4A",X"18",X"65",X"69",
|
||||
X"4C",X"5E",X"CE",X"A5",X"69",X"18",X"65",X"45",X"4A",X"4A",X"4A",X"18",X"65",X"67",X"C5",X"46",
|
||||
X"B0",X"50",X"2C",X"00",X"03",X"10",X"3C",X"98",X"AA",X"D0",X"11",X"A5",X"F6",X"C9",X"03",X"F0",
|
||||
X"0A",X"A5",X"1B",X"85",X"6C",X"20",X"0E",X"BE",X"20",X"52",X"BD",X"60",X"BD",X"01",X"02",X"29",
|
||||
X"0F",X"C9",X"0E",X"90",X"06",X"A8",X"A9",X"01",X"99",X"48",X"04",X"BD",X"01",X"02",X"29",X"0F",
|
||||
X"C9",X"05",X"D0",X"0A",X"A9",X"01",X"9D",X"0D",X"02",X"A9",X"22",X"4C",X"46",X"C8",X"A9",X"13",
|
||||
X"4C",X"46",X"C8",X"84",X"48",X"85",X"46",X"A6",X"44",X"A4",X"42",X"20",X"69",X"A2",X"29",X"3F",
|
||||
X"85",X"47",X"60",X"A6",X"40",X"A9",X"00",X"85",X"21",X"BD",X"00",X"02",X"29",X"02",X"F0",X"04",
|
||||
X"60",X"4C",X"25",X"CF",X"B9",X"00",X"02",X"29",X"02",X"D0",X"F6",X"C4",X"40",X"F0",X"F2",X"A6",
|
||||
X"40",X"38",X"BD",X"0A",X"02",X"F9",X"0A",X"02",X"85",X"42",X"10",X"06",X"49",X"FF",X"85",X"42",
|
||||
X"E6",X"42",X"38",X"BD",X"0C",X"02",X"F9",X"0C",X"02",X"85",X"44",X"10",X"06",X"49",X"FF",X"85",
|
||||
X"44",X"E6",X"44",X"18",X"B9",X"0F",X"02",X"7D",X"0F",X"02",X"C5",X"42",X"90",X"27",X"C5",X"44",
|
||||
X"90",X"23",X"85",X"46",X"0A",X"65",X"46",X"4A",X"85",X"46",X"A5",X"42",X"18",X"65",X"44",X"B0",
|
||||
X"14",X"C5",X"46",X"B0",X"10",X"A6",X"21",X"E8",X"98",X"95",X"21",X"E8",X"B9",X"01",X"02",X"29",
|
||||
X"0F",X"95",X"21",X"86",X"21",X"98",X"18",X"69",X"10",X"A8",X"B0",X"03",X"4C",X"C4",X"CE",X"60",
|
||||
X"A5",X"40",X"85",X"6E",X"4C",X"3F",X"CF",X"C6",X"21",X"C6",X"21",X"A5",X"6E",X"85",X"40",X"A8",
|
||||
X"A6",X"21",X"F0",X"65",X"B5",X"21",X"85",X"19",X"B9",X"00",X"02",X"29",X"02",X"D0",X"E8",X"B9",
|
||||
X"01",X"02",X"29",X"0F",X"85",X"1B",X"C5",X"19",X"D0",X"18",X"84",X"40",X"A8",X"CA",X"B5",X"21",
|
||||
X"85",X"41",X"98",X"0A",X"AA",X"BD",X"AB",X"CF",X"48",X"BD",X"AA",X"CF",X"48",X"A4",X"41",X"A6",
|
||||
X"40",X"60",X"B0",X"0E",X"85",X"19",X"B5",X"21",X"85",X"1B",X"CA",X"B5",X"21",X"85",X"41",X"4C",
|
||||
X"89",X"CF",X"84",X"41",X"CA",X"B5",X"21",X"85",X"40",X"C6",X"1B",X"A5",X"1B",X"38",X"E5",X"19",
|
||||
X"85",X"1B",X"A5",X"19",X"AA",X"BD",X"CA",X"CF",X"06",X"1B",X"65",X"1B",X"AA",X"BD",X"DA",X"CF",
|
||||
X"48",X"BD",X"D9",X"CF",X"48",X"A4",X"41",X"A6",X"40",X"60",X"CF",X"D3",X"36",X"CF",X"CF",X"D3",
|
||||
X"E0",X"D3",X"36",X"CF",X"36",X"CF",X"CF",X"D3",X"CF",X"D3",X"36",X"CF",X"36",X"CF",X"CF",X"D3",
|
||||
X"36",X"CF",X"36",X"CF",X"36",X"CF",X"90",X"D4",X"36",X"CF",X"00",X"1E",X"3A",X"54",X"6C",X"82",
|
||||
X"96",X"A8",X"B8",X"C6",X"D2",X"DC",X"E4",X"EA",X"EE",X"C8",X"D0",X"CD",X"D0",X"36",X"CF",X"D0",
|
||||
X"D0",X"36",X"CF",X"36",X"CF",X"2B",X"D1",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",
|
||||
X"CF",X"36",X"CF",X"90",X"D4",X"BC",X"D4",X"12",X"D2",X"15",X"D3",X"41",X"D3",X"36",X"CF",X"12");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,278 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity bwidow_pgm_rom5 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 bwidow_pgm_rom5 is
|
||||
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"D2",X"74",X"D3",X"12",X"D2",X"CC",X"D3",X"30",X"D2",X"33",X"D2",X"36",X"CF",X"D7",X"D1",X"36",
|
||||
X"CF",X"26",X"D2",X"36",X"CF",X"EE",X"D3",X"36",X"CF",X"36",X"CF",X"21",X"D4",X"36",X"CF",X"36",
|
||||
X"CF",X"36",X"CF",X"4E",X"D2",X"36",X"CF",X"36",X"CF",X"90",X"D4",X"BC",X"D4",X"F1",X"D3",X"36",
|
||||
X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",
|
||||
X"CF",X"36",X"CF",X"36",X"CF",X"65",X"D3",X"50",X"D4",X"33",X"D4",X"24",X"D4",X"2E",X"D1",X"48",
|
||||
X"D1",X"09",X"D4",X"36",X"CF",X"D7",X"D1",X"3C",X"D4",X"3C",X"D4",X"36",X"CF",X"36",X"CF",X"36",
|
||||
X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"90",X"D4",X"BC",X"D4",X"36",
|
||||
X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"90",X"D4",X"BC",
|
||||
X"D4",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"0A",X"D3",X"36",X"CF",X"36",X"CF",X"90",X"D4",X"BC",
|
||||
X"D4",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",
|
||||
X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",
|
||||
X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"36",X"CF",X"90",X"D4",X"BC",X"D4",X"36",X"CF",X"36",
|
||||
X"CF",X"36",X"CF",X"90",X"D4",X"BC",X"D4",X"BC",X"D4",X"8A",X"A8",X"4C",X"13",X"D2",X"4C",X"37",
|
||||
X"CF",X"BD",X"0A",X"02",X"85",X"59",X"BD",X"0C",X"02",X"85",X"5B",X"A9",X"07",X"85",X"5D",X"20",
|
||||
X"03",X"D5",X"B0",X"09",X"A9",X"00",X"85",X"5D",X"20",X"1F",X"D5",X"B0",X"10",X"A9",X"03",X"99",
|
||||
X"00",X"02",X"20",X"78",X"D3",X"A9",X"00",X"20",X"46",X"C8",X"4C",X"37",X"CF",X"A9",X"00",X"9D",
|
||||
X"00",X"21",X"9D",X"06",X"21",X"A9",X"0B",X"9D",X"01",X"02",X"A9",X"1F",X"9D",X"0D",X"02",X"A9",
|
||||
X"25",X"84",X"19",X"A9",X"00",X"9D",X"00",X"02",X"A8",X"20",X"1B",X"CA",X"A4",X"19",X"20",X"2A",
|
||||
X"BD",X"A9",X"03",X"99",X"00",X"02",X"4C",X"37",X"CF",X"4C",X"37",X"CF",X"4C",X"37",X"CF",X"B9",
|
||||
X"01",X"02",X"29",X"F0",X"09",X"0A",X"99",X"01",X"02",X"A9",X"01",X"99",X"0D",X"02",X"A9",X"03",
|
||||
X"9D",X"00",X"02",X"20",X"2A",X"BD",X"4C",X"37",X"CF",X"A9",X"03",X"9D",X"00",X"02",X"EE",X"03",
|
||||
X"03",X"AD",X"03",X"03",X"C9",X"0B",X"D0",X"03",X"4C",X"65",X"D1",X"98",X"AA",X"A9",X"09",X"20",
|
||||
X"46",X"C8",X"4C",X"37",X"CF",X"A6",X"41",X"86",X"19",X"A9",X"00",X"9D",X"01",X"02",X"A9",X"00",
|
||||
X"85",X"59",X"A9",X"50",X"85",X"5A",X"A9",X"00",X"85",X"5B",X"20",X"80",X"D1",X"4C",X"37",X"CF",
|
||||
X"A9",X"60",X"9D",X"01",X"21",X"A9",X"00",X"9D",X"00",X"21",X"9D",X"06",X"21",X"A5",X"5B",X"24",
|
||||
X"EF",X"30",X"20",X"F8",X"18",X"6D",X"43",X"04",X"8D",X"43",X"04",X"A5",X"5A",X"6D",X"42",X"04",
|
||||
X"8D",X"42",X"04",X"A5",X"59",X"6D",X"41",X"04",X"8D",X"41",X"04",X"D8",X"A0",X"00",X"A9",X"00",
|
||||
X"20",X"1B",X"CA",X"20",X"AD",X"C8",X"60",X"98",X"AA",X"A9",X"00",X"20",X"46",X"C8",X"4C",X"37",
|
||||
X"CF",X"A9",X"01",X"99",X"00",X"02",X"A9",X"14",X"99",X"0D",X"02",X"A0",X"00",X"A9",X"25",X"20",
|
||||
X"1B",X"CA",X"20",X"2A",X"BD",X"4C",X"37",X"CF",X"A5",X"73",X"D0",X"F9",X"B9",X"00",X"02",X"29",
|
||||
X"03",X"D0",X"F2",X"A9",X"01",X"99",X"00",X"02",X"A9",X"00",X"99",X"03",X"02",X"A9",X"01",X"99",
|
||||
X"0D",X"02",X"99",X"02",X"02",X"A9",X"00",X"99",X"00",X"21",X"99",X"06",X"21",X"AD",X"64",X"56",
|
||||
X"99",X"04",X"21",X"AD",X"65",X"56",X"99",X"05",X"21",X"A0",X"05",X"A9",X"00",X"20",X"1B",X"CA",
|
||||
X"4C",X"37",X"CF",X"A5",X"6C",X"D0",X"0D",X"A5",X"73",X"D0",X"09",X"84",X"6C",X"20",X"0E",X"BE",
|
||||
X"20",X"52",X"BD",X"60",X"4C",X"37",X"CF",X"B9",X"00",X"02",X"29",X"03",X"D0",X"F6",X"4C",X"13",
|
||||
X"D2",X"4C",X"13",X"D2",X"20",X"9B",X"D3",X"98",X"AA",X"B9",X"0D",X"02",X"29",X"18",X"4A",X"4A",
|
||||
X"4A",X"A8",X"B9",X"4B",X"D2",X"20",X"46",X"C8",X"4C",X"37",X"CF",X"01",X"03",X"09",X"13",X"AD",
|
||||
X"0A",X"60",X"10",X"03",X"4C",X"AC",X"D2",X"A9",X"08",X"9D",X"00",X"02",X"20",X"3E",X"BD",X"A9",
|
||||
X"14",X"9D",X"0D",X"02",X"B9",X"09",X"02",X"9D",X"09",X"02",X"B9",X"0A",X"02",X"9D",X"0A",X"02",
|
||||
X"B9",X"0B",X"02",X"9D",X"0B",X"02",X"B9",X"0C",X"02",X"9D",X"0C",X"02",X"B9",X"01",X"02",X"29",
|
||||
X"F0",X"09",X"03",X"99",X"01",X"02",X"99",X"02",X"02",X"A9",X"03",X"99",X"0F",X"02",X"A9",X"00",
|
||||
X"99",X"00",X"02",X"A9",X"1F",X"99",X"0D",X"02",X"A9",X"00",X"99",X"02",X"21",X"A9",X"73",X"99",
|
||||
X"03",X"21",X"84",X"40",X"A9",X"00",X"99",X"00",X"02",X"4C",X"37",X"CF",X"86",X"19",X"98",X"AA",
|
||||
X"A4",X"19",X"A9",X"01",X"25",X"9A",X"F0",X"50",X"20",X"3E",X"BD",X"B9",X"00",X"02",X"09",X"08",
|
||||
X"99",X"00",X"02",X"A9",X"14",X"99",X"0D",X"02",X"BD",X"09",X"02",X"99",X"09",X"02",X"BD",X"0A",
|
||||
X"02",X"99",X"0A",X"02",X"BD",X"0B",X"02",X"99",X"0B",X"02",X"BD",X"0C",X"02",X"99",X"0C",X"02",
|
||||
X"BD",X"01",X"02",X"29",X"F0",X"09",X"03",X"9D",X"01",X"02",X"A9",X"03",X"9D",X"0F",X"02",X"A9",
|
||||
X"00",X"9D",X"02",X"02",X"9D",X"00",X"02",X"A9",X"1F",X"9D",X"0D",X"02",X"A9",X"00",X"9D",X"02",
|
||||
X"21",X"A9",X"73",X"9D",X"03",X"21",X"86",X"40",X"4C",X"37",X"CF",X"A9",X"03",X"99",X"00",X"02",
|
||||
X"20",X"36",X"BD",X"4C",X"37",X"CF",X"B9",X"00",X"02",X"29",X"F7",X"99",X"00",X"02",X"84",X"40",
|
||||
X"B9",X"06",X"02",X"48",X"BD",X"07",X"02",X"99",X"07",X"02",X"BD",X"08",X"02",X"99",X"08",X"02",
|
||||
X"BD",X"06",X"02",X"99",X"06",X"02",X"20",X"EE",X"C3",X"A6",X"40",X"68",X"9D",X"06",X"02",X"4C",
|
||||
X"37",X"CF",X"A5",X"73",X"F0",X"1D",X"A9",X"00",X"85",X"73",X"8D",X"03",X"03",X"8D",X"01",X"03",
|
||||
X"24",X"EF",X"30",X"0F",X"A9",X"E4",X"8D",X"02",X"01",X"8D",X"03",X"01",X"AD",X"06",X"02",X"49",
|
||||
X"FF",X"85",X"72",X"4C",X"37",X"CF",X"A9",X"03",X"9D",X"00",X"02",X"98",X"AA",X"A9",X"22",X"20",
|
||||
X"46",X"C8",X"4C",X"37",X"CF",X"4C",X"13",X"D2",X"AD",X"04",X"03",X"F0",X"1D",X"86",X"19",X"86",
|
||||
X"1B",X"84",X"1C",X"85",X"1D",X"AA",X"BD",X"04",X"03",X"A8",X"B9",X"02",X"02",X"C5",X"19",X"F0",
|
||||
X"14",X"CA",X"C6",X"1D",X"D0",X"F0",X"A6",X"1B",X"A4",X"1C",X"60",X"AD",X"04",X"03",X"F0",X"FA",
|
||||
X"84",X"19",X"4C",X"7F",X"D3",X"A9",X"00",X"99",X"02",X"02",X"68",X"68",X"A6",X"19",X"AD",X"D3",
|
||||
X"03",X"0A",X"69",X"17",X"C9",X"20",X"90",X"02",X"A9",X"1F",X"20",X"46",X"C8",X"EE",X"D3",X"03",
|
||||
X"4C",X"37",X"CF",X"A5",X"73",X"F0",X"03",X"4C",X"37",X"CF",X"4C",X"13",X"D2",X"4C",X"13",X"D2",
|
||||
X"AD",X"0A",X"60",X"29",X"30",X"18",X"7D",X"0E",X"02",X"29",X"3F",X"9D",X"0E",X"02",X"4C",X"37",
|
||||
X"CF",X"BD",X"00",X"02",X"29",X"F7",X"9D",X"00",X"02",X"20",X"DE",X"C3",X"4C",X"37",X"CF",X"4C",
|
||||
X"D1",X"D0",X"AD",X"0A",X"60",X"29",X"87",X"10",X"02",X"09",X"F8",X"18",X"79",X"06",X"02",X"29",
|
||||
X"3F",X"99",X"06",X"02",X"20",X"2A",X"BD",X"4C",X"37",X"CF",X"AD",X"0A",X"60",X"29",X"87",X"10",
|
||||
X"02",X"09",X"F8",X"18",X"7D",X"06",X"02",X"29",X"3F",X"9D",X"06",X"02",X"20",X"2A",X"BD",X"4C",
|
||||
X"37",X"CF",X"4C",X"37",X"CF",X"A9",X"03",X"9D",X"00",X"02",X"98",X"AA",X"A9",X"20",X"20",X"46",
|
||||
X"C8",X"4C",X"37",X"CF",X"98",X"48",X"8A",X"A8",X"68",X"AA",X"4C",X"D1",X"D0",X"B9",X"00",X"02",
|
||||
X"29",X"01",X"D0",X"39",X"B9",X"05",X"02",X"18",X"69",X"01",X"C9",X"10",X"B0",X"03",X"99",X"05",
|
||||
X"02",X"A9",X"03",X"9D",X"00",X"02",X"B9",X"06",X"02",X"48",X"BD",X"07",X"02",X"99",X"07",X"02",
|
||||
X"BD",X"08",X"02",X"99",X"08",X"02",X"BD",X"06",X"02",X"99",X"06",X"02",X"84",X"40",X"20",X"EE",
|
||||
X"C3",X"A6",X"40",X"68",X"9D",X"06",X"02",X"20",X"2A",X"BD",X"4C",X"37",X"CF",X"A9",X"03",X"9D",
|
||||
X"00",X"02",X"A9",X"00",X"99",X"01",X"02",X"98",X"AA",X"A9",X"20",X"20",X"46",X"C8",X"4C",X"37",
|
||||
X"CF",X"8A",X"D9",X"02",X"02",X"D0",X"F7",X"BD",X"00",X"02",X"29",X"03",X"C9",X"02",X"B0",X"1A",
|
||||
X"A9",X"03",X"9D",X"00",X"02",X"AD",X"3F",X"04",X"0A",X"99",X"0D",X"02",X"A9",X"00",X"8D",X"D3",
|
||||
X"03",X"99",X"02",X"02",X"99",X"05",X"02",X"20",X"36",X"BD",X"4C",X"37",X"CF",X"BD",X"00",X"02",
|
||||
X"29",X"03",X"C9",X"02",X"B0",X"3A",X"BD",X"01",X"02",X"29",X"0F",X"C9",X"05",X"D0",X"09",X"A5",
|
||||
X"79",X"C9",X"1E",X"B0",X"03",X"4C",X"37",X"CF",X"BD",X"01",X"02",X"29",X"F0",X"09",X"08",X"9D",
|
||||
X"01",X"02",X"A9",X"71",X"9D",X"03",X"21",X"9D",X"0B",X"21",X"A9",X"FF",X"9D",X"02",X"02",X"9D",
|
||||
X"04",X"02",X"A9",X"00",X"9D",X"0A",X"21",X"9D",X"00",X"02",X"9D",X"0D",X"02",X"20",X"26",X"BD",
|
||||
X"4C",X"37",X"CF",X"A5",X"59",X"10",X"06",X"49",X"FF",X"85",X"59",X"E6",X"59",X"A5",X"5B",X"10",
|
||||
X"06",X"49",X"FF",X"85",X"5B",X"E6",X"5B",X"A5",X"59",X"85",X"5A",X"A5",X"5B",X"85",X"5C",X"84",
|
||||
X"19",X"A5",X"5D",X"0A",X"0A",X"65",X"5D",X"65",X"5D",X"A8",X"B9",X"6F",X"BF",X"C5",X"59",X"90",
|
||||
X"21",X"B9",X"71",X"BF",X"C5",X"5B",X"90",X"1A",X"A5",X"59",X"4A",X"18",X"65",X"5B",X"D9",X"6F",
|
||||
X"BF",X"B0",X"0F",X"A5",X"59",X"0A",X"18",X"65",X"5B",X"D9",X"73",X"BF",X"B0",X"04",X"18",X"A4",
|
||||
X"19",X"60",X"38",X"A4",X"19",X"60",X"27",X"2C",X"30",X"34",X"39",X"00",X"07",X"0C",X"10",X"14",
|
||||
X"19",X"20",X"61",X"00",X"A2",X"02",X"AD",X"00",X"78",X"E0",X"01",X"F0",X"03",X"B0",X"02",X"4A",
|
||||
X"4A",X"4A",X"B5",X"91",X"29",X"1F",X"B0",X"37",X"F0",X"10",X"C9",X"1B",X"B0",X"0A",X"A8",X"A5",
|
||||
X"94",X"29",X"07",X"C9",X"07",X"98",X"90",X"02",X"E9",X"01",X"95",X"91",X"AD",X"00",X"78",X"29",
|
||||
X"08",X"D0",X"04",X"A9",X"F0",X"85",X"96",X"A5",X"96",X"F0",X"08",X"C6",X"96",X"A9",X"00",X"95",
|
||||
X"91",X"95",X"8E",X"18",X"B5",X"8E",X"F0",X"23",X"D6",X"8E",X"D0",X"1F",X"38",X"B0",X"1C",X"C9",
|
||||
X"1B",X"B0",X"09",X"B5",X"91",X"69",X"20",X"90",X"D1",X"F0",X"01",X"18",X"A9",X"1F",X"B0",X"CA",
|
||||
X"95",X"91",X"B5",X"8E",X"F0",X"01",X"38",X"A9",X"78",X"95",X"8E",X"90",X"2A",X"A9",X"00",X"E0",
|
||||
X"01",X"90",X"16",X"F0",X"0C",X"A5",X"8C",X"29",X"0C",X"4A",X"4A",X"F0",X"0C",X"69",X"02",X"D0",
|
||||
X"08",X"A5",X"8C",X"29",X"10",X"F0",X"02",X"A9",X"01",X"38",X"48",X"65",X"F5",X"85",X"F5",X"68",
|
||||
X"38",X"65",X"95",X"85",X"95",X"F6",X"89",X"CA",X"30",X"03",X"4C",X"66",X"D5",X"A5",X"8C",X"4A",
|
||||
X"4A",X"4A",X"4A",X"4A",X"A8",X"A5",X"F5",X"38",X"F9",X"19",X"D6",X"30",X"14",X"85",X"F5",X"E6",
|
||||
X"F4",X"C0",X"03",X"D0",X"0C",X"E6",X"F4",X"D0",X"08",X"7F",X"02",X"04",X"04",X"05",X"03",X"7F",
|
||||
X"7F",X"A5",X"8C",X"29",X"03",X"A8",X"F0",X"1A",X"4A",X"69",X"00",X"49",X"FF",X"38",X"65",X"95",
|
||||
X"B0",X"08",X"65",X"F4",X"30",X"0E",X"85",X"F4",X"A9",X"00",X"C0",X"02",X"B0",X"02",X"E6",X"8D",
|
||||
X"E6",X"8D",X"85",X"95",X"A5",X"94",X"4A",X"B0",X"27",X"A0",X"00",X"A2",X"02",X"B5",X"89",X"F0",
|
||||
X"09",X"C9",X"10",X"90",X"05",X"69",X"EF",X"C8",X"95",X"89",X"CA",X"10",X"F0",X"98",X"D0",X"10",
|
||||
X"A2",X"02",X"B5",X"89",X"F0",X"07",X"18",X"69",X"EF",X"95",X"89",X"30",X"03",X"CA",X"10",X"F2",
|
||||
X"60",X"00",X"02",X"03",X"18",X"19",X"1C",X"1D",X"20",X"7A",X"00",X"10",X"03",X"76",X"00",X"7C",
|
||||
X"00",X"A9",X"04",X"D0",X"06",X"A9",X"03",X"D0",X"02",X"A9",X"07",X"A0",X"FF",X"D0",X"08",X"A9",
|
||||
X"02",X"D0",X"02",X"A9",X"0D",X"A0",X"00",X"8C",X"2A",X"01",X"48",X"0D",X"2B",X"01",X"8D",X"2B",
|
||||
X"01",X"68",X"0D",X"2C",X"01",X"8D",X"2C",X"01",X"60",X"A9",X"0F",X"8D",X"2B",X"01",X"A9",X"00",
|
||||
X"8D",X"2C",X"01",X"AD",X"2E",X"01",X"D0",X"4B",X"AD",X"2B",X"01",X"F0",X"46",X"A2",X"00",X"8E",
|
||||
X"2F",X"01",X"8E",X"33",X"01",X"8E",X"32",X"01",X"A2",X"08",X"38",X"6E",X"32",X"01",X"0A",X"CA",
|
||||
X"90",X"F9",X"A0",X"80",X"AD",X"32",X"01",X"2D",X"2C",X"01",X"D0",X"02",X"A0",X"20",X"8C",X"2E",
|
||||
X"01",X"AD",X"32",X"01",X"4D",X"2B",X"01",X"8D",X"2B",X"01",X"8A",X"0A",X"AA",X"BD",X"71",X"D6",
|
||||
X"8D",X"30",X"01",X"BD",X"72",X"D6",X"8D",X"31",X"01",X"BD",X"79",X"D6",X"85",X"97",X"BD",X"7A",
|
||||
X"D6",X"85",X"98",X"A0",X"00",X"8C",X"00",X"89",X"AD",X"2E",X"01",X"D0",X"01",X"60",X"AC",X"2F",
|
||||
X"01",X"AE",X"30",X"01",X"0A",X"90",X"0D",X"9D",X"40",X"89",X"A9",X"40",X"8D",X"2E",X"01",X"A0",
|
||||
X"0E",X"4C",X"98",X"D7",X"10",X"25",X"A9",X"80",X"8D",X"2E",X"01",X"AD",X"2A",X"01",X"F0",X"04",
|
||||
X"A9",X"00",X"91",X"97",X"B1",X"97",X"EC",X"31",X"01",X"90",X"08",X"A9",X"00",X"8D",X"2E",X"01",
|
||||
X"AD",X"33",X"01",X"9D",X"40",X"89",X"A0",X"0C",X"4C",X"8B",X"D7",X"A9",X"08",X"8D",X"00",X"89",
|
||||
X"9D",X"40",X"89",X"A9",X"09",X"8D",X"00",X"89",X"EA",X"A9",X"08",X"8D",X"00",X"89",X"EC",X"31",
|
||||
X"01",X"AD",X"00",X"70",X"90",X"21",X"4D",X"33",X"01",X"F0",X"14",X"A9",X"00",X"AC",X"2F",X"01",
|
||||
X"88",X"91",X"97",X"88",X"10",X"FB",X"AD",X"32",X"01",X"0D",X"2D",X"01",X"8D",X"2D",X"01",X"A9",
|
||||
X"00",X"8D",X"2E",X"01",X"4C",X"89",X"D7",X"91",X"97",X"A0",X"00",X"18",X"6D",X"33",X"01",X"8D",
|
||||
X"33",X"01",X"EE",X"2F",X"01",X"EE",X"30",X"01",X"8C",X"00",X"89",X"98",X"D0",X"03",X"4C",X"B3",
|
||||
X"D6",X"60",X"A9",X"C0",X"D0",X"02",X"A9",X"20",X"A0",X"00",X"91",X"11",X"4C",X"54",X"D8",X"90",
|
||||
X"04",X"29",X"0F",X"F0",X"05",X"29",X"0F",X"18",X"69",X"01",X"08",X"0A",X"A0",X"00",X"AA",X"BD",
|
||||
X"C4",X"5D",X"91",X"11",X"BD",X"C5",X"5D",X"C8",X"91",X"11",X"20",X"05",X"D8",X"28",X"60",X"38",
|
||||
X"E9",X"20",X"4A",X"29",X"1F",X"09",X"E0",X"A0",X"01",X"91",X"11",X"88",X"8A",X"6A",X"91",X"11",
|
||||
X"C8",X"D0",X"22",X"38",X"E9",X"20",X"4A",X"29",X"1F",X"09",X"A0",X"D0",X"EA",X"A4",X"0C",X"A2",
|
||||
X"60",X"98",X"4C",X"FD",X"D7",X"A2",X"60",X"D0",X"F8",X"A9",X"40",X"A2",X"80",X"A0",X"00",X"91",
|
||||
X"11",X"C8",X"8A",X"91",X"11",X"98",X"38",X"65",X"11",X"85",X"11",X"90",X"02",X"E6",X"12",X"60",
|
||||
X"A0",X"00",X"09",X"70",X"AA",X"98",X"4C",X"FD",X"D7",X"A0",X"00",X"84",X"0C",X"A0",X"00",X"0A",
|
||||
X"90",X"01",X"88",X"84",X"A0",X"0A",X"26",X"A0",X"85",X"9F",X"8A",X"0A",X"A0",X"00",X"90",X"01",
|
||||
X"88",X"84",X"A2",X"0A",X"26",X"A2",X"85",X"A1",X"A2",X"9F",X"A0",X"00",X"B5",X"02",X"91",X"11",
|
||||
X"B5",X"03",X"29",X"1F",X"C8",X"91",X"11",X"B5",X"00",X"C8",X"91",X"11",X"B5",X"01",X"45",X"0C",
|
||||
X"29",X"1F",X"45",X"0C",X"C8",X"91",X"11",X"D0",X"AC",X"A5",X"0C",X"A0",X"00",X"91",X"11",X"C8",
|
||||
X"8A",X"09",X"60",X"91",X"11",X"20",X"05",X"D8",X"60",X"00",X"00",X"D0",X"1F",X"4E",X"BE",X"4E",
|
||||
X"BE",X"4E",X"BE",X"4E",X"BE",X"4E",X"BE",X"00",X"C0",X"48",X"A5",X"74",X"85",X"4C",X"A5",X"75",
|
||||
X"85",X"4D",X"A9",X"04",X"CA",X"30",X"06",X"18",X"69",X"06",X"4C",X"84",X"D8",X"A8",X"68",X"38",
|
||||
X"E9",X"02",X"F0",X"0D",X"AA",X"98",X"18",X"69",X"4E",X"90",X"02",X"E6",X"4D",X"CA",X"D0",X"F6",
|
||||
X"A8",X"60",X"A9",X"06",X"85",X"19",X"A9",X"A4",X"AA",X"A9",X"5C",X"20",X"E3",X"D7",X"C6",X"19",
|
||||
X"D0",X"F4",X"60",X"A8",X"A1",X"B0",X"A1",X"B8",X"A1",X"C0",X"A1",X"C8",X"A1",X"D0",X"A1",X"D8",
|
||||
X"A1",X"E0",X"A1",X"E8",X"A1",X"F0",X"A1",X"F8",X"A1",X"A0",X"00",X"A9",X"80",X"91",X"11",X"C8",
|
||||
X"A9",X"80",X"91",X"11",X"20",X"05",X"D8",X"A9",X"00",X"85",X"0D",X"85",X"0F",X"85",X"0E",X"85",
|
||||
X"10",X"60",X"A9",X"FF",X"4C",X"E9",X"D8",X"A9",X"00",X"48",X"A2",X"00",X"38",X"B5",X"08",X"A8",
|
||||
X"F5",X"0D",X"95",X"08",X"98",X"95",X"0D",X"E8",X"B5",X"08",X"A8",X"F5",X"0D",X"95",X"08",X"98",
|
||||
X"95",X"0D",X"E8",X"E0",X"02",X"F0",X"E5",X"68",X"D0",X"45",X"A0",X"00",X"A2",X"03",X"98",X"15",
|
||||
X"08",X"A8",X"CA",X"10",X"F9",X"98",X"F0",X"37",X"A2",X"02",X"B5",X"09",X"10",X"0F",X"49",X"FF",
|
||||
X"D0",X"2D",X"B5",X"08",X"49",X"FF",X"18",X"69",X"01",X"B0",X"24",X"90",X"02",X"B5",X"08",X"29",
|
||||
X"1F",X"D0",X"1C",X"B5",X"08",X"29",X"1F",X"95",X"08",X"CA",X"CA",X"10",X"DD",X"A5",X"0C",X"05",
|
||||
X"08",X"A0",X"00",X"91",X"11",X"C8",X"A5",X"0A",X"09",X"40",X"91",X"11",X"4C",X"05",X"D8",X"20",
|
||||
X"56",X"D9",X"20",X"05",X"D8",X"60",X"A0",X"00",X"A5",X"0A",X"91",X"11",X"C8",X"A5",X"0B",X"29",
|
||||
X"1F",X"91",X"11",X"C8",X"A5",X"08",X"91",X"11",X"C8",X"A5",X"09",X"29",X"1F",X"05",X"0C",X"91",
|
||||
X"11",X"60",X"A5",X"AA",X"85",X"11",X"A5",X"AB",X"85",X"12",X"24",X"EF",X"10",X"3C",X"AD",X"20",
|
||||
X"04",X"C9",X"01",X"D0",X"0F",X"A5",X"F7",X"C9",X"08",X"B0",X"09",X"4A",X"AA",X"BD",X"5C",X"DA",
|
||||
X"AA",X"20",X"B7",X"DC",X"A9",X"EC",X"85",X"59",X"A9",X"60",X"85",X"5B",X"AD",X"75",X"CB",X"85",
|
||||
X"63",X"A9",X"40",X"85",X"5A",X"AD",X"77",X"CB",X"85",X"5C",X"A2",X"00",X"86",X"19",X"A0",X"00",
|
||||
X"20",X"3B",X"CD",X"88",X"20",X"05",X"D8",X"4C",X"15",X"DA",X"AD",X"C8",X"04",X"F0",X"0E",X"AD",
|
||||
X"C9",X"04",X"F0",X"09",X"AD",X"40",X"04",X"8D",X"AA",X"04",X"4C",X"D3",X"D9",X"AD",X"40",X"04",
|
||||
X"8D",X"75",X"04",X"AD",X"45",X"04",X"F0",X"3A",X"A2",X"34",X"20",X"B7",X"DC",X"AD",X"47",X"04",
|
||||
X"85",X"1E",X"A9",X"00",X"F8",X"18",X"6D",X"45",X"04",X"C6",X"1E",X"10",X"F8",X"D8",X"85",X"1B",
|
||||
X"4A",X"4A",X"4A",X"4A",X"F0",X"03",X"20",X"AF",X"D7",X"A5",X"1B",X"20",X"AF",X"D7",X"A9",X"00",
|
||||
X"20",X"AF",X"D7",X"A9",X"00",X"20",X"AF",X"D7",X"A9",X"00",X"20",X"AF",X"D7",X"A9",X"00",X"20",
|
||||
X"AF",X"D7",X"4C",X"34",X"DA",X"20",X"6F",X"DE",X"A2",X"2A",X"20",X"B7",X"DC",X"A5",X"8C",X"29",
|
||||
X"03",X"F0",X"0C",X"A5",X"8D",X"D0",X"08",X"A2",X"20",X"20",X"B7",X"DC",X"4C",X"34",X"DA",X"A2",
|
||||
X"06",X"20",X"B7",X"DC",X"24",X"EF",X"30",X"1D",X"A2",X"1A",X"20",X"B7",X"DC",X"AD",X"5D",X"04",
|
||||
X"18",X"69",X"01",X"20",X"A1",X"DC",X"48",X"4A",X"4A",X"4A",X"4A",X"38",X"20",X"AF",X"D7",X"68",
|
||||
X"29",X"0F",X"20",X"AF",X"D7",X"20",X"A2",X"D7",X"20",X"87",X"CA",X"60",X"58",X"5A",X"5C",X"5E",
|
||||
X"18",X"F0",X"05",X"C6",X"1C",X"4C",X"AF",X"D7",X"24",X"1C",X"30",X"01",X"38",X"4C",X"AF",X"D7",
|
||||
X"A5",X"AA",X"85",X"11",X"A5",X"AB",X"85",X"12",X"A9",X"00",X"A2",X"28",X"20",X"1D",X"D8",X"A9",
|
||||
X"00",X"20",X"10",X"D8",X"AD",X"5D",X"04",X"29",X"78",X"4A",X"4A",X"C9",X"0A",X"90",X"02",X"A9",
|
||||
X"08",X"AA",X"A0",X"00",X"BD",X"66",X"56",X"91",X"11",X"C8",X"BD",X"67",X"56",X"91",X"11",X"E6",
|
||||
X"11",X"E6",X"11",X"20",X"F9",X"D7",X"A9",X"01",X"20",X"10",X"D8",X"A9",X"00",X"A2",X"28",X"20",
|
||||
X"1D",X"D8",X"A9",X"00",X"A0",X"84",X"20",X"EF",X"D7",X"A9",X"00",X"20",X"10",X"D8",X"A0",X"00",
|
||||
X"AD",X"70",X"56",X"91",X"11",X"C8",X"AD",X"71",X"56",X"91",X"11",X"E6",X"11",X"E6",X"11",X"A9",
|
||||
X"01",X"20",X"10",X"D8",X"AD",X"C8",X"04",X"F0",X"0E",X"A2",X"02",X"20",X"B7",X"DC",X"AD",X"C9",
|
||||
X"04",X"18",X"69",X"01",X"20",X"AF",X"D7",X"A2",X"18",X"20",X"B7",X"DC",X"AD",X"22",X"04",X"20",
|
||||
X"A1",X"DC",X"48",X"4A",X"4A",X"4A",X"4A",X"38",X"20",X"AF",X"D7",X"68",X"29",X"0F",X"18",X"20",
|
||||
X"AF",X"D7",X"A2",X"12",X"20",X"B7",X"DC",X"A2",X"14",X"20",X"B7",X"DC",X"A2",X"1C",X"20",X"B7",
|
||||
X"DC",X"A9",X"90",X"A2",X"02",X"20",X"64",X"DC",X"A2",X"1E",X"20",X"B7",X"DC",X"A9",X"03",X"85",
|
||||
X"1E",X"AD",X"5D",X"04",X"38",X"E9",X"04",X"85",X"1D",X"A9",X"C8",X"85",X"1C",X"A5",X"1D",X"10",
|
||||
X"03",X"4C",X"38",X"DC",X"20",X"F9",X"D7",X"A9",X"BB",X"A6",X"1C",X"20",X"1D",X"D8",X"A0",X"C1",
|
||||
X"A5",X"1E",X"C9",X"02",X"D0",X"0D",X"A5",X"6F",X"4A",X"4A",X"29",X"07",X"D0",X"02",X"A9",X"07",
|
||||
X"09",X"E0",X"A8",X"A9",X"00",X"20",X"EF",X"D7",X"A5",X"1D",X"18",X"69",X"01",X"20",X"A1",X"DC",
|
||||
X"48",X"4A",X"4A",X"4A",X"4A",X"38",X"20",X"AF",X"D7",X"68",X"29",X"0F",X"18",X"20",X"AF",X"D7",
|
||||
X"A9",X"00",X"8D",X"37",X"04",X"8D",X"38",X"04",X"8D",X"39",X"04",X"A9",X"10",X"A2",X"00",X"20",
|
||||
X"1D",X"D8",X"A5",X"1D",X"F0",X"1D",X"4A",X"4A",X"38",X"E9",X"01",X"85",X"1B",X"0A",X"65",X"1B",
|
||||
X"AA",X"BD",X"24",X"DE",X"8D",X"37",X"04",X"BD",X"25",X"DE",X"8D",X"38",X"04",X"BD",X"26",X"DE",
|
||||
X"8D",X"39",X"04",X"AD",X"5D",X"04",X"C5",X"1D",X"D0",X"0C",X"AD",X"39",X"04",X"48",X"AD",X"38",
|
||||
X"04",X"48",X"AD",X"37",X"04",X"48",X"AD",X"37",X"04",X"4A",X"4A",X"4A",X"4A",X"38",X"F0",X"01",
|
||||
X"18",X"20",X"AF",X"D7",X"AD",X"37",X"04",X"20",X"60",X"DA",X"AD",X"38",X"04",X"4A",X"4A",X"4A",
|
||||
X"4A",X"20",X"60",X"DA",X"AD",X"38",X"04",X"29",X"0F",X"20",X"60",X"DA",X"AD",X"39",X"04",X"4A",
|
||||
X"4A",X"4A",X"4A",X"18",X"20",X"AF",X"D7",X"AD",X"39",X"04",X"18",X"20",X"AF",X"D7",X"20",X"F9",
|
||||
X"D7",X"A9",X"0C",X"A6",X"1C",X"20",X"1D",X"D8",X"A5",X"1D",X"29",X"78",X"4A",X"4A",X"C9",X"18",
|
||||
X"90",X"02",X"A9",X"16",X"AA",X"BD",X"58",X"DD",X"85",X"4C",X"BD",X"59",X"DD",X"85",X"4D",X"A9",
|
||||
X"FF",X"85",X"1B",X"E6",X"1B",X"A4",X"1B",X"B1",X"4C",X"A0",X"00",X"48",X"29",X"7F",X"AA",X"BD",
|
||||
X"C4",X"5D",X"91",X"11",X"C8",X"BD",X"C5",X"5D",X"91",X"11",X"A5",X"11",X"18",X"69",X"02",X"85",
|
||||
X"11",X"90",X"02",X"E6",X"12",X"68",X"10",X"DB",X"A5",X"1D",X"30",X"05",X"CD",X"2B",X"06",X"B0",
|
||||
X"13",X"18",X"69",X"04",X"85",X"1D",X"A5",X"1C",X"38",X"E9",X"0C",X"85",X"1C",X"C6",X"1E",X"F0",
|
||||
X"03",X"4C",X"2D",X"DB",X"68",X"8D",X"37",X"04",X"68",X"8D",X"38",X"04",X"68",X"8D",X"39",X"04",
|
||||
X"20",X"A2",X"D7",X"60",X"20",X"1D",X"D8",X"A0",X"C2",X"A9",X"00",X"20",X"EF",X"D7",X"A9",X"01",
|
||||
X"A8",X"20",X"10",X"D8",X"A9",X"16",X"AA",X"A9",X"2F",X"20",X"E3",X"D7",X"A0",X"87",X"A9",X"00",
|
||||
X"20",X"EF",X"D7",X"A9",X"00",X"AA",X"A9",X"2C",X"20",X"E3",X"D7",X"A0",X"00",X"A9",X"00",X"20",
|
||||
X"EF",X"D7",X"A9",X"01",X"20",X"10",X"D8",X"A9",X"10",X"A2",X"FE",X"A0",X"00",X"20",X"1D",X"D8",
|
||||
X"60",X"F8",X"85",X"19",X"A9",X"00",X"85",X"1B",X"A0",X"07",X"06",X"19",X"A5",X"1B",X"65",X"1B",
|
||||
X"85",X"1B",X"88",X"10",X"F5",X"D8",X"60",X"BD",X"29",X"E0",X"8E",X"02",X"03",X"85",X"1C",X"AC",
|
||||
X"02",X"03",X"B1",X"9B",X"85",X"9D",X"C8",X"B1",X"9B",X"85",X"9E",X"A0",X"00",X"B1",X"9D",X"85",
|
||||
X"1B",X"20",X"F9",X"D7",X"A9",X"00",X"85",X"0C",X"A9",X"01",X"20",X"10",X"D8",X"A5",X"1B",X"A6",
|
||||
X"1C",X"20",X"1D",X"D8",X"AC",X"02",X"03",X"B1",X"9B",X"85",X"9D",X"C8",X"B1",X"9B",X"85",X"9E",
|
||||
X"AE",X"02",X"03",X"BD",X"28",X"E0",X"48",X"4A",X"4A",X"4A",X"4A",X"09",X"C0",X"A8",X"29",X"08",
|
||||
X"F0",X"09",X"AD",X"D0",X"03",X"29",X"C0",X"D0",X"02",X"A0",X"00",X"A9",X"00",X"20",X"EF",X"D7",
|
||||
X"68",X"A0",X"10",X"29",X"0F",X"C9",X"01",X"F0",X"04",X"A0",X"68",X"A9",X"01",X"20",X"12",X"D8",
|
||||
X"A0",X"01",X"A9",X"00",X"85",X"1B",X"B1",X"9D",X"85",X"1C",X"29",X"7F",X"C8",X"84",X"1D",X"AA",
|
||||
X"BD",X"C4",X"5D",X"A4",X"1B",X"91",X"11",X"C8",X"BD",X"C5",X"5D",X"91",X"11",X"C8",X"84",X"1B",
|
||||
X"A4",X"1D",X"24",X"1C",X"10",X"E0",X"A4",X"1B",X"88",X"4C",X"05",X"D8",X"8E",X"02",X"03",X"85",
|
||||
X"1B",X"A9",X"00",X"85",X"1C",X"4C",X"D4",X"DC",X"70",X"DD",X"7F",X"DD",X"8E",X"DD",X"9D",X"DD",
|
||||
X"AC",X"DD",X"BB",X"DD",X"CA",X"DD",X"D9",X"DD",X"E8",X"DD",X"F7",X"DD",X"06",X"DE",X"15",X"DE",
|
||||
X"00",X"00",X"00",X"20",X"1E",X"38",X"00",X"3A",X"3E",X"38",X"1E",X"00",X"00",X"00",X"80",X"00",
|
||||
X"00",X"00",X"20",X"16",X"38",X"00",X"32",X"3E",X"3C",X"00",X"00",X"00",X"00",X"80",X"00",X"00",
|
||||
X"00",X"26",X"30",X"3C",X"1E",X"30",X"3A",X"1E",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",
|
||||
X"00",X"3E",X"30",X"38",X"1E",X"16",X"2C",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",X"16",
|
||||
X"42",X"1E",X"3A",X"32",X"2E",X"1E",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",X"00",X"26",
|
||||
X"30",X"3A",X"16",X"30",X"1E",X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",X"3C",X"3E",X"18",
|
||||
X"3E",X"2C",X"16",X"38",X"00",X"00",X"00",X"00",X"80",X"3C",X"32",X"3C",X"16",X"2C",X"2C",X"46",
|
||||
X"00",X"16",X"42",X"1E",X"3A",X"32",X"2E",X"9E",X"2C",X"3E",X"30",X"16",X"3C",X"26",X"1A",X"00",
|
||||
X"20",X"38",X"26",X"30",X"22",X"1E",X"80",X"00",X"00",X"3C",X"32",X"00",X"3C",X"24",X"1E",X"00",
|
||||
X"2E",X"16",X"44",X"00",X"00",X"80",X"00",X"00",X"00",X"00",X"1A",X"32",X"3A",X"2E",X"26",X"1A",
|
||||
X"00",X"00",X"00",X"00",X"80",X"00",X"00",X"00",X"00",X"30",X"32",X"00",X"42",X"16",X"46",X"00",
|
||||
X"00",X"00",X"00",X"80",X"02",X"50",X"00",X"05",X"00",X"00",X"07",X"50",X"00",X"10",X"00",X"00",
|
||||
X"12",X"50",X"00",X"15",X"00",X"00",X"17",X"50",X"00",X"21",X"50",X"00",X"25",X"50",X"00",X"29",
|
||||
X"50",X"00",X"33",X"50",X"00",X"37",X"50",X"00",X"41",X"50",X"00",X"45",X"50",X"00",X"49",X"50",
|
||||
X"00",X"53",X"50",X"00",X"57",X"50",X"00",X"61",X"50",X"00",X"65",X"50",X"00",X"69",X"50",X"00",
|
||||
X"73",X"50",X"00",X"77",X"50",X"00",X"81",X"50",X"00",X"85",X"50",X"00",X"89",X"50",X"00",X"A2",
|
||||
X"2C",X"20",X"B7",X"DC",X"A5",X"8C",X"29",X"03",X"D0",X"04",X"A9",X"02",X"D0",X"02",X"A5",X"8D",
|
||||
X"20",X"A1",X"DC",X"48",X"4A",X"4A",X"4A",X"4A",X"38",X"20",X"AF",X"D7",X"68",X"29",X"0F",X"18",
|
||||
X"20",X"AF",X"D7",X"A5",X"8C",X"29",X"03",X"49",X"03",X"D0",X"0C",X"A5",X"95",X"F0",X"08",X"A9",
|
||||
X"52",X"AA",X"A9",X"5F",X"20",X"E3",X"D7",X"60",X"88",X"E0",X"BA",X"E0",X"BA",X"E0",X"DC",X"E0",
|
||||
X"FE",X"E0",X"16",X"E1",X"74",X"E1",X"E1",X"E1",X"4E",X"E2",X"7D",X"E2",X"B6",X"E2",X"F5",X"E2",
|
||||
X"FB",X"E2",X"16",X"E3",X"31",X"E3",X"62",X"E3",X"93",X"E3",X"D4",X"E3",X"DE",X"E3",X"22",X"E4",
|
||||
X"63",X"E4",X"A8",X"E4",X"BA",X"E4",X"D6",X"E4",X"17",X"E5",X"51",X"E5",X"69",X"E5",X"8B",X"E5",
|
||||
X"D7",X"E5",X"B1",X"E5",X"00",X"E6",X"0E",X"E6",X"13",X"E6",X"1A",X"E6",X"1F",X"E6",X"2C",X"E6",
|
||||
X"49",X"E6",X"52",X"E6",X"62",X"E6",X"71",X"E6",X"8B",X"E6",X"A3",X"E6",X"B0",X"E6",X"BC",X"E6",
|
||||
X"C9",X"E6",X"E3",X"E6",X"02",X"E7",X"26",X"E7",X"92",X"E0",X"C2",X"E0",X"C2",X"E0",X"E8",X"E0",
|
||||
X"03",X"E1",X"2A",X"E1",X"8B",X"E1",X"FB",X"E1",X"67",X"E2",X"A0",X"E2",X"DF",X"E2",X"F5",X"E2",
|
||||
X"01",X"E3",X"1C",X"E3",X"4C",X"E3",X"7D",X"E3",X"A0",X"E3",X"D4",X"E3",X"ED",X"E3",X"30",X"E4",
|
||||
X"72",X"E4",X"A8",X"E4",X"BA",X"E4",X"E7",X"E4",X"2B",X"E5",X"57",X"E5",X"75",X"E5",X"9B",X"E5",
|
||||
X"EA",X"E5",X"C1",X"E5",X"00",X"E6",X"0E",X"E6",X"13",X"E6",X"1A",X"E6",X"1F",X"E6",X"2C",X"E6",
|
||||
X"49",X"E6",X"52",X"E6",X"62",X"E6",X"71",X"E6",X"8B",X"E6",X"A3",X"E6",X"B0",X"E6",X"BC",X"E6",
|
||||
X"C9",X"E6",X"E3",X"E6",X"02",X"E7",X"26",X"E7",X"A0",X"E0",X"CA",X"E0",X"CA",X"E0",X"EF",X"E0",
|
||||
X"09",X"E1",X"43",X"E1",X"AA",X"E1",X"16",X"E2",X"6E",X"E2",X"A7",X"E2",X"E6",X"E2",X"F5",X"E2",
|
||||
X"08",X"E3",X"24",X"E3",X"5B",X"E3",X"8C",X"E3",X"B6",X"E3",X"D4",X"E3",X"FF",X"E3",X"41",X"E4",
|
||||
X"84",X"E4",X"A8",X"E4",X"C3",X"E4",X"F6",X"E4",X"39",X"E5",X"5E",X"E5",X"7C",X"E5",X"A2",X"E5",
|
||||
X"F1",X"E5",X"C8",X"E5",X"00",X"E6",X"0E",X"E6",X"13",X"E6",X"1A",X"E6",X"1F",X"E6",X"2C",X"E6",
|
||||
X"49",X"E6",X"52",X"E6",X"62",X"E6",X"71",X"E6",X"8B",X"E6",X"A3",X"E6",X"B0",X"E6",X"BC",X"E6",
|
||||
X"C9",X"E6",X"E3",X"E6",X"02",X"E7",X"26",X"E7",X"AA",X"E0",X"D3",X"E0",X"D3",X"E0",X"F6",X"E0",
|
||||
X"0F",X"E1",X"60",X"E1",X"C4",X"E1",X"31",X"E2",X"75",X"E2",X"AE",X"E2",X"ED",X"E2",X"F5",X"E2",
|
||||
X"0E",X"E3",X"2A",X"E3",X"53",X"E3",X"84",X"E3",X"C5",X"E3",X"D4",X"E3",X"10",X"E4",X"52",X"E4",
|
||||
X"96",X"E4",X"A8",X"E4",X"CC",X"E4",X"07",X"E5",X"45",X"E5",X"63",X"E5",X"83",X"E5",X"A9",X"E5");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,278 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity bwidow_pgm_rom6 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 bwidow_pgm_rom6 is
|
||||
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"F8",X"E5",X"CF",X"E5",X"00",X"E6",X"0E",X"E6",X"13",X"E6",X"1A",X"E6",X"1F",X"E6",X"2C",X"E6",
|
||||
X"49",X"E6",X"52",X"E6",X"62",X"E6",X"71",X"E6",X"8B",X"E6",X"A3",X"E6",X"B0",X"E6",X"BC",X"E6",
|
||||
X"C9",X"E6",X"E3",X"E6",X"02",X"E7",X"26",X"E7",X"61",X"0A",X"71",X"60",X"71",X"20",X"F1",X"56",
|
||||
X"71",X"38",X"41",X"A4",X"31",X"9C",X"61",X"94",X"21",X"60",X"21",X"08",X"E1",X"F8",X"21",X"F8",
|
||||
X"C1",X"98",X"21",X"92",X"71",X"E8",X"21",X"D8",X"C1",X"56",X"21",X"A1",X"21",X"A1",X"21",X"A1",
|
||||
X"21",X"A1",X"11",X"92",X"21",X"A0",X"21",X"89",X"21",X"B0",X"11",X"5A",X"C2",X"60",X"21",X"30",
|
||||
X"21",X"00",X"21",X"20",X"21",X"C0",X"21",X"C0",X"21",X"C0",X"21",X"C0",X"21",X"10",X"71",X"50",
|
||||
X"71",X"40",X"71",X"40",X"71",X"40",X"71",X"40",X"41",X"50",X"21",X"D0",X"21",X"F0",X"21",X"E0",
|
||||
X"71",X"40",X"71",X"30",X"71",X"20",X"71",X"40",X"E5",X"22",X"16",X"2E",X"1E",X"00",X"32",X"40",
|
||||
X"1E",X"B8",X"D9",X"20",X"26",X"30",X"00",X"1C",X"1E",X"00",X"34",X"16",X"38",X"3C",X"26",X"9E",
|
||||
X"E5",X"3A",X"34",X"26",X"1E",X"2C",X"1E",X"30",X"1C",X"9E",X"D3",X"28",X"3E",X"1E",X"22",X"32",
|
||||
X"00",X"3C",X"1E",X"38",X"2E",X"26",X"30",X"16",X"1C",X"B2",X"EB",X"34",X"2C",X"16",X"46",X"1E",
|
||||
X"38",X"80",X"EB",X"28",X"32",X"3E",X"1E",X"3E",X"38",X"80",X"E8",X"3A",X"34",X"26",X"1E",X"2C",
|
||||
X"1E",X"38",X"80",X"E8",X"28",X"3E",X"22",X"16",X"1C",X"32",X"38",X"80",X"DF",X"34",X"38",X"1E",
|
||||
X"3A",X"3A",X"00",X"3A",X"3C",X"16",X"38",X"BC",X"EE",X"20",X"38",X"1E",X"30",X"1A",X"A4",X"EE",
|
||||
X"22",X"1E",X"38",X"2E",X"16",X"B0",X"EB",X"3A",X"34",X"16",X"30",X"26",X"3A",X"A4",X"F4",X"34",
|
||||
X"2C",X"16",X"C6",X"F1",X"28",X"32",X"3E",X"1E",X"C8",X"F1",X"3A",X"34",X"26",X"1E",X"AC",X"EE",
|
||||
X"28",X"3E",X"1E",X"22",X"3E",X"9E",X"C7",X"1E",X"30",X"3C",X"1E",X"38",X"00",X"46",X"32",X"3E",
|
||||
X"38",X"00",X"26",X"30",X"26",X"3C",X"26",X"16",X"2C",X"BA",X"B8",X"3A",X"40",X"34",X"00",X"1E",
|
||||
X"30",X"3C",X"38",X"1E",X"48",X"00",X"40",X"32",X"3A",X"00",X"26",X"30",X"26",X"3C",X"26",X"16",
|
||||
X"2C",X"1E",X"BA",X"AC",X"22",X"1E",X"18",X"1E",X"30",X"00",X"3A",X"26",X"1E",X"00",X"26",X"24",
|
||||
X"38",X"1E",X"00",X"26",X"30",X"26",X"3C",X"26",X"16",X"2C",X"1E",X"30",X"00",X"1E",X"26",X"B0",
|
||||
X"C7",X"1E",X"30",X"3C",X"38",X"1E",X"00",X"3A",X"3E",X"3A",X"00",X"26",X"30",X"26",X"1A",X"26",
|
||||
X"16",X"2C",X"1E",X"BA",X"BE",X"1A",X"24",X"16",X"30",X"22",X"1E",X"00",X"42",X"26",X"3C",X"24",
|
||||
X"00",X"2C",X"1E",X"20",X"3C",X"00",X"3A",X"3C",X"26",X"1A",X"AA",X"A6",X"3C",X"32",X"3E",X"38",
|
||||
X"30",X"1E",X"48",X"00",X"2C",X"1E",X"00",X"18",X"32",X"3E",X"3C",X"32",X"30",X"00",X"34",X"32",
|
||||
X"3E",X"38",X"00",X"1A",X"24",X"16",X"30",X"22",X"1E",X"B8",X"B5",X"2A",X"30",X"32",X"34",X"20",
|
||||
X"00",X"1C",X"38",X"1E",X"24",X"1E",X"30",X"00",X"48",X"3E",X"2E",X"00",X"42",X"1E",X"1A",X"24",
|
||||
X"3A",X"1E",X"2C",X"B0",X"AC",X"22",X"26",X"38",X"1E",X"00",X"2C",X"16",X"00",X"34",X"1E",X"38",
|
||||
X"26",X"2C",X"2C",X"16",X"00",X"34",X"16",X"38",X"16",X"00",X"1A",X"16",X"2E",X"18",X"26",X"16",
|
||||
X"B8",X"B5",X"2E",X"32",X"40",X"1E",X"00",X"38",X"26",X"22",X"24",X"3C",X"00",X"3A",X"3C",X"26",
|
||||
X"1A",X"2A",X"00",X"3C",X"32",X"00",X"1E",X"30",X"3C",X"1E",X"B8",X"B2",X"34",X"32",X"3E",X"3A",
|
||||
X"3A",X"1E",X"48",X"00",X"20",X"1E",X"3E",X"00",X"36",X"3E",X"16",X"30",X"1C",X"00",X"1A",X"32",
|
||||
X"38",X"38",X"1E",X"1A",X"3C",X"9E",X"B2",X"20",X"26",X"38",X"1E",X"00",X"1C",X"38",X"3E",X"1E",
|
||||
X"1A",X"2A",X"1E",X"30",X"00",X"42",X"1E",X"30",X"30",X"00",X"38",X"26",X"1A",X"24",X"3C",X"26",
|
||||
X"A2",X"AC",X"32",X"34",X"38",X"26",X"2E",X"16",X"00",X"20",X"26",X"38",X"1E",X"00",X"34",X"16",
|
||||
X"38",X"16",X"00",X"3A",X"1E",X"2C",X"1E",X"1A",X"1A",X"26",X"32",X"30",X"16",X"B8",X"C0",X"18",
|
||||
X"2C",X"16",X"1A",X"2A",X"00",X"42",X"26",X"1C",X"32",X"42",X"00",X"24",X"16",X"2C",X"2C",X"00",
|
||||
X"32",X"20",X"00",X"20",X"16",X"2E",X"9E",X"EE",X"20",X"38",X"1E",X"30",X"1A",X"A4",X"EE",X"22",
|
||||
X"1E",X"38",X"2E",X"16",X"B0",X"EB",X"3A",X"34",X"16",X"30",X"26",X"3A",X"A4",X"9A",X"3A",X"1E",
|
||||
X"2C",X"1E",X"1A",X"3C",X"00",X"1C",X"26",X"20",X"20",X"26",X"1A",X"3E",X"2C",X"3C",X"46",X"00",
|
||||
X"42",X"26",X"3C",X"24",X"00",X"38",X"26",X"22",X"24",X"3C",X"00",X"3A",X"3C",X"26",X"1A",X"AA",
|
||||
X"EE",X"20",X"38",X"1E",X"30",X"1A",X"A4",X"EE",X"22",X"1E",X"38",X"2E",X"16",X"B0",X"EB",X"3A",
|
||||
X"34",X"16",X"30",X"26",X"3A",X"A4",X"90",X"34",X"3E",X"3A",X"24",X"00",X"2C",X"1E",X"20",X"3C",
|
||||
X"00",X"3A",X"3C",X"26",X"1A",X"2A",X"00",X"16",X"30",X"1C",X"00",X"34",X"38",X"1E",X"3A",X"3A",
|
||||
X"00",X"3A",X"3C",X"16",X"38",X"3C",X"00",X"3C",X"32",X"00",X"18",X"1E",X"22",X"26",X"B0",X"EE",
|
||||
X"20",X"38",X"1E",X"30",X"1A",X"A4",X"EE",X"22",X"1E",X"38",X"2E",X"16",X"B0",X"EB",X"3A",X"34",
|
||||
X"16",X"30",X"26",X"3A",X"A4",X"8B",X"18",X"32",X"30",X"3E",X"BA",X"E8",X"3C",X"26",X"2E",X"1E",
|
||||
X"80",X"E0",X"1C",X"3E",X"38",X"1E",X"1E",X"80",X"E8",X"48",X"1E",X"26",X"3C",X"80",X"E4",X"3C",
|
||||
X"26",X"1E",X"2E",X"34",X"32",X"80",X"E8",X"42",X"16",X"40",X"1E",X"80",X"DC",X"30",X"26",X"40",
|
||||
X"1E",X"16",X"3E",X"80",X"E8",X"22",X"38",X"16",X"1C",X"80",X"E2",X"30",X"26",X"40",X"1E",X"2C",
|
||||
X"80",X"B2",X"3A",X"24",X"32",X"32",X"3C",X"00",X"00",X"00",X"00",X"00",X"3C",X"32",X"00",X"1A",
|
||||
X"32",X"2C",X"2C",X"1E",X"1A",X"3C",X"00",X"18",X"32",X"30",X"3E",X"BA",X"EE",X"20",X"38",X"1E",
|
||||
X"30",X"1A",X"A4",X"EB",X"3A",X"34",X"16",X"30",X"26",X"3A",X"A4",X"EE",X"22",X"1E",X"38",X"2E",
|
||||
X"16",X"B0",X"BA",X"42",X"16",X"40",X"1E",X"00",X"00",X"18",X"32",X"30",X"3E",X"3A",X"00",X"00",
|
||||
X"00",X"00",X"00",X"1C",X"26",X"20",X"20",X"26",X"1A",X"3E",X"2C",X"3C",X"C6",X"EE",X"20",X"38",
|
||||
X"1E",X"30",X"1A",X"A4",X"EB",X"3A",X"34",X"16",X"30",X"26",X"3A",X"A4",X"EE",X"22",X"1E",X"38",
|
||||
X"2E",X"16",X"B0",X"DC",X"26",X"30",X"3A",X"1E",X"38",X"3C",X"00",X"1A",X"32",X"26",X"30",X"BA",
|
||||
X"C1",X"26",X"30",X"3C",X"38",X"32",X"1C",X"3E",X"26",X"38",X"1E",X"00",X"2C",X"1E",X"3A",X"00",
|
||||
X"34",X"26",X"1E",X"1A",X"1E",X"BA",X"D6",X"22",X"1E",X"2C",X"1C",X"00",X"1E",X"26",X"30",X"42",
|
||||
X"1E",X"38",X"20",X"1E",X"B0",X"D6",X"26",X"30",X"3A",X"1E",X"38",X"3C",X"1E",X"00",X"20",X"26",
|
||||
X"1A",X"24",X"16",X"BA",X"E5",X"20",X"38",X"1E",X"1E",X"00",X"34",X"2C",X"16",X"C6",X"D6",X"04",
|
||||
X"00",X"1A",X"32",X"26",X"30",X"00",X"06",X"00",X"34",X"2C",X"16",X"46",X"BA",X"CD",X"04",X"00",
|
||||
X"34",X"26",X"1E",X"1A",X"1E",X"00",X"06",X"00",X"28",X"32",X"3E",X"1E",X"3E",X"38",X"BA",X"D0",
|
||||
X"04",X"00",X"2E",X"3E",X"1E",X"30",X"48",X"00",X"06",X"00",X"3A",X"34",X"26",X"1E",X"2C",X"9E",
|
||||
X"CD",X"04",X"00",X"2E",X"32",X"30",X"1E",X"1C",X"16",X"00",X"06",X"00",X"28",X"3E",X"1E",X"22",
|
||||
X"32",X"BA",X"D9",X"04",X"00",X"1A",X"32",X"26",X"30",X"00",X"04",X"00",X"34",X"2C",X"16",X"C6",
|
||||
X"D0",X"04",X"00",X"34",X"26",X"1E",X"1A",X"1E",X"00",X"04",X"00",X"28",X"32",X"3E",X"1E",X"3E",
|
||||
X"B8",X"D0",X"04",X"00",X"2E",X"3E",X"1E",X"30",X"48",X"1E",X"00",X"04",X"00",X"3A",X"34",X"26",
|
||||
X"1E",X"AC",X"D0",X"04",X"00",X"2E",X"32",X"30",X"1E",X"1C",X"16",X"00",X"04",X"00",X"28",X"3E",
|
||||
X"1E",X"22",X"B2",X"D6",X"06",X"00",X"1A",X"32",X"26",X"30",X"3A",X"00",X"04",X"00",X"34",X"2C",
|
||||
X"16",X"C6",X"CD",X"06",X"00",X"34",X"26",X"1E",X"1A",X"1E",X"3A",X"00",X"04",X"00",X"28",X"32",
|
||||
X"3E",X"1E",X"3E",X"B8",X"CD",X"06",X"00",X"2E",X"3E",X"1E",X"30",X"48",X"1E",X"30",X"00",X"04",
|
||||
X"00",X"3A",X"34",X"26",X"1E",X"AC",X"CD",X"06",X"00",X"2E",X"32",X"30",X"1E",X"1C",X"16",X"3A",
|
||||
X"00",X"04",X"00",X"28",X"3E",X"1E",X"22",X"B2",X"CD",X"50",X"00",X"16",X"3C",X"16",X"38",X"26",
|
||||
X"00",X"2E",X"1A",X"2E",X"2C",X"44",X"44",X"44",X"26",X"A6",X"E6",X"1A",X"38",X"1E",X"1C",X"26",
|
||||
X"3C",X"3A",X"80",X"A0",X"2A",X"38",X"1E",X"1C",X"26",X"3C",X"1E",X"80",X"A0",X"1A",X"38",X"1E",
|
||||
X"1C",X"26",X"3C",X"32",X"3A",X"80",X"D0",X"06",X"00",X"1A",X"38",X"1E",X"1C",X"26",X"3C",X"00",
|
||||
X"2E",X"26",X"30",X"26",X"2E",X"3E",X"AE",X"D6",X"06",X"00",X"28",X"1E",X"3E",X"44",X"00",X"2E",
|
||||
X"26",X"30",X"26",X"2E",X"3E",X"AE",X"D0",X"06",X"00",X"3A",X"34",X"26",X"1E",X"2C",X"1E",X"00",
|
||||
X"2E",X"26",X"30",X"26",X"2E",X"3E",X"AE",X"D3",X"06",X"00",X"28",X"3E",X"1E",X"22",X"32",X"3A",
|
||||
X"00",X"2E",X"26",X"30",X"26",X"2E",X"B2",X"BC",X"18",X"32",X"30",X"3E",X"3A",X"00",X"3A",X"34",
|
||||
X"26",X"1C",X"1E",X"38",X"00",X"1E",X"40",X"1E",X"38",X"46",X"80",X"CE",X"18",X"32",X"30",X"3E",
|
||||
X"3A",X"00",X"1A",X"24",X"16",X"36",X"3E",X"1E",X"80",X"CE",X"18",X"32",X"30",X"3E",X"3A",X"00",
|
||||
X"28",X"1E",X"1C",X"1E",X"80",X"C8",X"18",X"32",X"30",X"3E",X"3A",X"00",X"1A",X"16",X"1C",X"16",
|
||||
X"80",X"E0",X"2C",X"1E",X"40",X"1E",X"AC",X"DA",X"30",X"26",X"40",X"1E",X"16",X"BE",X"E2",X"22",
|
||||
X"38",X"16",X"9C",X"E0",X"30",X"26",X"40",X"1E",X"AC",X"E4",X"30",X"1E",X"44",X"3C",X"00",X"18",
|
||||
X"32",X"30",X"3E",X"3A",X"80",X"E8",X"20",X"38",X"1E",X"30",X"1A",X"A4",X"E8",X"22",X"1E",X"38",
|
||||
X"2E",X"16",X"B0",X"E8",X"3A",X"34",X"16",X"30",X"26",X"3A",X"A4",X"C0",X"2C",X"26",X"40",X"1E",
|
||||
X"3A",X"00",X"34",X"1E",X"38",X"00",X"22",X"16",X"2E",X"1E",X"80",X"E8",X"20",X"38",X"1E",X"30",
|
||||
X"1A",X"A4",X"E8",X"22",X"1E",X"38",X"2E",X"16",X"B0",X"E8",X"3A",X"34",X"16",X"30",X"26",X"3A",
|
||||
X"A4",X"C0",X"2E",X"16",X"44",X"00",X"3A",X"3C",X"16",X"38",X"3C",X"00",X"42",X"16",X"40",X"1E",
|
||||
X"80",X"E8",X"20",X"38",X"1E",X"30",X"1A",X"A4",X"E8",X"22",X"1E",X"38",X"2E",X"16",X"B0",X"E8",
|
||||
X"3A",X"34",X"16",X"30",X"26",X"3A",X"A4",X"C0",X"16",X"40",X"1E",X"38",X"16",X"22",X"1E",X"00",
|
||||
X"22",X"16",X"2E",X"1E",X"00",X"3C",X"26",X"2E",X"1E",X"80",X"E8",X"20",X"38",X"1E",X"30",X"1A",
|
||||
X"A4",X"E8",X"22",X"1E",X"38",X"2E",X"16",X"B0",X"E8",X"3A",X"34",X"16",X"30",X"26",X"3A",X"A4",
|
||||
X"D9",X"1C",X"1E",X"2E",X"32",X"30",X"3A",X"3C",X"38",X"16",X"3C",X"26",X"32",X"B0",X"F4",X"1E",
|
||||
X"16",X"3A",X"C6",X"EE",X"2E",X"1E",X"1C",X"26",X"3E",X"AE",X"F4",X"24",X"16",X"38",X"9C",X"C0",
|
||||
X"22",X"16",X"2E",X"1E",X"3A",X"00",X"34",X"2C",X"16",X"46",X"1E",X"9C",X"AC",X"24",X"32",X"2C",
|
||||
X"1C",X"00",X"20",X"26",X"38",X"1E",X"00",X"3C",X"24",X"1E",X"30",X"00",X"34",X"38",X"1E",X"3A",
|
||||
X"3A",X"00",X"3A",X"3C",X"16",X"38",X"3C",X"00",X"84",X"E8",X"20",X"32",X"38",X"00",X"3C",X"1E",
|
||||
X"3A",X"BC",X"D3",X"3C",X"32",X"00",X"1A",X"2C",X"1E",X"16",X"38",X"00",X"3A",X"1A",X"32",X"38",
|
||||
X"1E",X"BA",X"D6",X"3C",X"32",X"00",X"1A",X"2C",X"1E",X"16",X"38",X"00",X"3C",X"26",X"2E",X"1E",
|
||||
X"BA",X"B5",X"3C",X"32",X"00",X"1A",X"2C",X"1E",X"16",X"38",X"00",X"3A",X"1A",X"32",X"38",X"1E",
|
||||
X"3A",X"00",X"16",X"30",X"1C",X"00",X"3C",X"26",X"2E",X"1E",X"BA",X"BB",X"1E",X"16",X"38",X"32",
|
||||
X"2E",X"00",X"18",X"3E",X"3A",X"46",X"00",X"00",X"34",X"2C",X"1E",X"16",X"3A",X"1E",X"00",X"42",
|
||||
X"16",X"26",X"BC",X"C0",X"18",X"32",X"30",X"3E",X"3A",X"00",X"16",X"1C",X"1C",X"1E",X"38",X"80",
|
||||
X"C0",X"2C",X"1E",X"20",X"3C",X"00",X"2E",X"1E",X"1A",X"24",X"00",X"C4",X"C0",X"38",X"26",X"22",
|
||||
X"24",X"3C",X"00",X"2E",X"1E",X"1A",X"24",X"00",X"C4",X"BA",X"3C",X"16",X"22",X"00",X"22",X"38",
|
||||
X"3E",X"18",X"3A",X"3C",X"1E",X"16",X"2A",X"3A",X"00",X"20",X"32",X"38",X"00",X"34",X"32",X"26",
|
||||
X"30",X"3C",X"BA",X"AB",X"3A",X"24",X"32",X"32",X"3C",X"00",X"18",X"3E",X"22",X"3A",X"00",X"3C",
|
||||
X"24",X"1E",X"30",X"00",X"3C",X"16",X"22",X"00",X"22",X"38",X"3E",X"18",X"3A",X"3C",X"1E",X"16",
|
||||
X"2A",X"BA",X"9C",X"34",X"3E",X"3A",X"24",X"00",X"1E",X"22",X"22",X"3A",X"00",X"32",X"20",X"20",
|
||||
X"00",X"42",X"1E",X"18",X"00",X"18",X"1E",X"20",X"32",X"38",X"1E",X"00",X"3C",X"24",X"1E",X"46",
|
||||
X"00",X"24",X"16",X"3C",X"1A",X"A4",X"A8",X"3A",X"24",X"32",X"32",X"3C",X"00",X"22",X"38",X"1E",
|
||||
X"30",X"16",X"1C",X"1E",X"00",X"18",X"3E",X"22",X"3A",X"00",X"42",X"26",X"3C",X"24",X"00",X"1A",
|
||||
X"16",X"3E",X"3C",X"26",X"32",X"B0",X"A8",X"DE",X"08",X"DF",X"68",X"DF",X"C8",X"DF",X"A9",X"00",
|
||||
X"0A",X"A8",X"B9",X"46",X"E7",X"85",X"9B",X"B9",X"47",X"E7",X"85",X"9C",X"60",X"F3",X"00",X"78",
|
||||
X"8D",X"80",X"89",X"8D",X"C0",X"88",X"8D",X"80",X"88",X"A2",X"FF",X"9A",X"AD",X"00",X"78",X"29",
|
||||
X"10",X"F0",X"03",X"4C",X"18",X"90",X"78",X"A9",X"C0",X"8D",X"00",X"88",X"A9",X"00",X"A2",X"00",
|
||||
X"95",X"00",X"9D",X"00",X"01",X"9D",X"00",X"02",X"9D",X"00",X"03",X"9D",X"00",X"04",X"9D",X"00",
|
||||
X"05",X"9D",X"00",X"06",X"9D",X"00",X"07",X"9D",X"00",X"20",X"9D",X"00",X"21",X"9D",X"00",X"22",
|
||||
X"9D",X"00",X"23",X"9D",X"00",X"24",X"9D",X"00",X"25",X"9D",X"00",X"26",X"9D",X"00",X"27",X"E8",
|
||||
X"D0",X"CE",X"A9",X"69",X"8D",X"FF",X"07",X"8D",X"80",X"88",X"4C",X"D3",X"E8",X"48",X"8A",X"48",
|
||||
X"98",X"48",X"D8",X"AD",X"FF",X"07",X"C9",X"69",X"D0",X"06",X"20",X"B3",X"D6",X"4C",X"CA",X"E8",
|
||||
X"8D",X"0B",X"60",X"AD",X"08",X"60",X"8D",X"2E",X"06",X"8D",X"0B",X"68",X"AD",X"08",X"68",X"8D",
|
||||
X"2F",X"06",X"24",X"EF",X"10",X"11",X"A5",X"8C",X"F0",X"14",X"AD",X"00",X"78",X"29",X"10",X"F0",
|
||||
X"0D",X"A5",X"8D",X"F0",X"1D",X"D0",X"07",X"AD",X"20",X"04",X"C9",X"07",X"D0",X"14",X"AD",X"00",
|
||||
X"88",X"49",X"FF",X"29",X"60",X"F0",X"08",X"4D",X"2D",X"06",X"F0",X"06",X"8D",X"2C",X"06",X"8D",
|
||||
X"2D",X"06",X"E6",X"94",X"A5",X"19",X"85",X"18",X"A5",X"94",X"29",X"0F",X"D0",X"03",X"20",X"B3",
|
||||
X"D6",X"A5",X"00",X"C9",X"55",X"D0",X"03",X"4C",X"6F",X"E8",X"20",X"83",X"BD",X"20",X"64",X"D5",
|
||||
X"A5",X"99",X"4A",X"4A",X"85",X"19",X"A5",X"8A",X"0A",X"26",X"19",X"A5",X"8B",X"0A",X"26",X"19",
|
||||
X"A5",X"19",X"85",X"99",X"8D",X"00",X"88",X"AD",X"20",X"01",X"D0",X"23",X"A5",X"00",X"C9",X"AA",
|
||||
X"F0",X"1D",X"AD",X"00",X"78",X"29",X"40",X"D0",X"0B",X"E6",X"81",X"A5",X"81",X"C9",X"0A",X"D0",
|
||||
X"0E",X"8D",X"80",X"88",X"A9",X"00",X"85",X"81",X"A9",X"AA",X"85",X"00",X"8D",X"40",X"88",X"A5",
|
||||
X"18",X"85",X"19",X"A5",X"FC",X"D0",X"50",X"CE",X"D0",X"03",X"D0",X"4B",X"A9",X"F6",X"8D",X"D0",
|
||||
X"03",X"CE",X"22",X"04",X"10",X"05",X"A9",X"00",X"8D",X"22",X"04",X"24",X"EF",X"10",X"1E",X"CE",
|
||||
X"24",X"04",X"10",X"19",X"A9",X"1E",X"8D",X"24",X"04",X"AD",X"2F",X"06",X"29",X"03",X"AA",X"AD",
|
||||
X"2B",X"06",X"DD",X"25",X"9C",X"90",X"06",X"38",X"E9",X"04",X"8D",X"2B",X"06",X"E6",X"79",X"E6",
|
||||
X"76",X"D0",X"06",X"E6",X"77",X"D0",X"02",X"E6",X"78",X"24",X"EF",X"30",X"0A",X"E6",X"7C",X"D0",
|
||||
X"06",X"E6",X"7D",X"D0",X"02",X"E6",X"7E",X"8D",X"80",X"89",X"8D",X"C0",X"88",X"68",X"A8",X"68",
|
||||
X"AA",X"68",X"40",X"A2",X"11",X"9A",X"8A",X"86",X"00",X"A0",X"00",X"A2",X"01",X"C8",X"B9",X"00",
|
||||
X"00",X"D0",X"21",X"E8",X"D0",X"F7",X"BA",X"8A",X"8D",X"80",X"89",X"C8",X"59",X"00",X"00",X"D0",
|
||||
X"13",X"8A",X"A2",X"00",X"96",X"00",X"C8",X"D0",X"05",X"0A",X"A2",X"00",X"B0",X"4B",X"AA",X"9A",
|
||||
X"96",X"00",X"D0",X"D7",X"AA",X"8A",X"A0",X"82",X"29",X"0F",X"F0",X"02",X"A0",X"12",X"8A",X"A2",
|
||||
X"82",X"29",X"F0",X"F0",X"02",X"A2",X"12",X"98",X"9A",X"AA",X"8E",X"00",X"60",X"A2",X"A8",X"8E",
|
||||
X"01",X"60",X"A0",X"0C",X"A2",X"64",X"2C",X"00",X"78",X"30",X"FB",X"2C",X"00",X"78",X"10",X"FB",
|
||||
X"8D",X"80",X"89",X"CA",X"D0",X"F0",X"C0",X"05",X"D0",X"03",X"8E",X"01",X"60",X"88",X"D0",X"E4",
|
||||
X"4A",X"B0",X"03",X"BA",X"D0",X"D4",X"4C",X"00",X"EA",X"A2",X"FF",X"9A",X"A2",X"00",X"8A",X"95",
|
||||
X"00",X"E8",X"D0",X"FB",X"A8",X"A9",X"01",X"85",X"01",X"A2",X"11",X"B1",X"00",X"D0",X"27",X"8A",
|
||||
X"91",X"00",X"51",X"00",X"D0",X"20",X"8A",X"0A",X"AA",X"90",X"F5",X"C8",X"D0",X"EB",X"8D",X"80",
|
||||
X"89",X"E6",X"01",X"A6",X"01",X"E0",X"04",X"90",X"E0",X"A9",X"20",X"E0",X"20",X"90",X"D8",X"E0",
|
||||
X"28",X"90",X"D6",X"4C",X"07",X"EA",X"A6",X"01",X"E0",X"20",X"85",X"02",X"90",X"03",X"8A",X"E9",
|
||||
X"1C",X"4A",X"4A",X"29",X"07",X"A8",X"A5",X"02",X"84",X"00",X"85",X"01",X"A9",X"01",X"85",X"02",
|
||||
X"A2",X"A8",X"A0",X"82",X"A5",X"00",X"D0",X"08",X"A5",X"01",X"29",X"0F",X"F0",X"02",X"A0",X"12",
|
||||
X"8E",X"01",X"60",X"8C",X"00",X"60",X"A9",X"09",X"C0",X"12",X"F0",X"02",X"A9",X"01",X"A8",X"A2",
|
||||
X"00",X"2C",X"00",X"78",X"30",X"FB",X"2C",X"00",X"78",X"10",X"FB",X"8D",X"80",X"89",X"CA",X"D0",
|
||||
X"F0",X"88",X"D0",X"ED",X"8E",X"01",X"60",X"A0",X"09",X"2C",X"00",X"78",X"30",X"FB",X"2C",X"00",
|
||||
X"78",X"10",X"FB",X"8D",X"80",X"89",X"CA",X"D0",X"F0",X"88",X"D0",X"ED",X"A5",X"00",X"D0",X"08",
|
||||
X"A5",X"01",X"4A",X"4A",X"4A",X"4A",X"85",X"01",X"C6",X"02",X"F0",X"A4",X"C6",X"00",X"10",X"9C",
|
||||
X"8D",X"80",X"89",X"A9",X"FF",X"85",X"D4",X"A9",X"00",X"AA",X"9D",X"00",X"01",X"9D",X"00",X"02",
|
||||
X"9D",X"00",X"03",X"CA",X"D0",X"F4",X"A8",X"85",X"C0",X"A9",X"30",X"85",X"C1",X"A9",X"10",X"85",
|
||||
X"C2",X"8A",X"51",X"C0",X"C8",X"D0",X"FB",X"E6",X"C1",X"8D",X"80",X"89",X"C6",X"C2",X"D0",X"F2",
|
||||
X"95",X"CB",X"E8",X"F0",X"18",X"A5",X"C1",X"C9",X"60",X"D0",X"04",X"A9",X"90",X"85",X"C1",X"C9",
|
||||
X"F0",X"90",X"D8",X"A2",X"FF",X"A9",X"28",X"85",X"C1",X"A9",X"08",X"D0",X"D2",X"A5",X"CA",X"05",
|
||||
X"CB",X"F0",X"0A",X"A9",X"F0",X"A2",X"A2",X"8D",X"04",X"60",X"8E",X"05",X"60",X"A2",X"05",X"AD",
|
||||
X"0A",X"68",X"CD",X"0A",X"68",X"D0",X"05",X"CA",X"10",X"F8",X"85",X"D5",X"A2",X"05",X"AD",X"0A",
|
||||
X"60",X"CD",X"0A",X"60",X"D0",X"05",X"CA",X"10",X"F8",X"85",X"D6",X"58",X"20",X"A9",X"D6",X"A0",
|
||||
X"02",X"AD",X"2D",X"01",X"F0",X"0A",X"85",X"D7",X"20",X"89",X"D6",X"A0",X"00",X"8C",X"2D",X"01",
|
||||
X"84",X"C9",X"4C",X"D8",X"EC",X"AD",X"2E",X"01",X"0D",X"2B",X"01",X"D0",X"0C",X"20",X"A9",X"D6",
|
||||
X"AD",X"2D",X"01",X"85",X"D7",X"A9",X"02",X"85",X"C9",X"60",X"A0",X"A7",X"A9",X"04",X"20",X"EF",
|
||||
X"D7",X"A2",X"20",X"A9",X"5E",X"20",X"E3",X"D7",X"A9",X"48",X"A2",X"40",X"A0",X"00",X"20",X"1B",
|
||||
X"D8",X"20",X"42",X"EC",X"A9",X"01",X"20",X"12",X"D8",X"A2",X"46",X"86",X"C2",X"A2",X"09",X"B5",
|
||||
X"CA",X"F0",X"1B",X"86",X"C1",X"20",X"F9",X"D7",X"A6",X"C2",X"8A",X"38",X"E9",X"08",X"85",X"C2",
|
||||
X"A9",X"F6",X"A0",X"00",X"20",X"1B",X"D8",X"A5",X"C1",X"20",X"C3",X"ED",X"A6",X"C1",X"CA",X"10",
|
||||
X"DE",X"20",X"F9",X"D7",X"A9",X"F6",X"A2",X"58",X"A0",X"00",X"20",X"1B",X"D8",X"A2",X"03",X"86",
|
||||
X"C1",X"A6",X"C1",X"A0",X"00",X"B5",X"D4",X"F0",X"03",X"BC",X"CA",X"EB",X"B9",X"C4",X"5D",X"BE",
|
||||
X"C5",X"5D",X"20",X"FD",X"D7",X"C6",X"C1",X"10",X"E8",X"20",X"A8",X"EC",X"60",X"A2",X"FE",X"A9",
|
||||
X"5E",X"4C",X"E3",X"D7",X"E6",X"C4",X"10",X"06",X"A9",X"00",X"85",X"C4",X"E6",X"C2",X"A5",X"C2",
|
||||
X"29",X"07",X"AA",X"BC",X"69",X"EB",X"A9",X"00",X"99",X"F1",X"67",X"BC",X"6A",X"EB",X"BD",X"73",
|
||||
X"EB",X"99",X"F0",X"67",X"A9",X"A8",X"99",X"F1",X"67",X"A2",X"04",X"A9",X"5F",X"20",X"E3",X"D7",
|
||||
X"20",X"F9",X"D7",X"A4",X"C4",X"A5",X"C2",X"29",X"07",X"D0",X"04",X"A9",X"01",X"85",X"C2",X"20",
|
||||
X"12",X"D8",X"A2",X"22",X"A9",X"5E",X"4C",X"E3",X"D7",X"16",X"00",X"10",X"02",X"12",X"04",X"14",
|
||||
X"06",X"16",X"00",X"10",X"10",X"40",X"40",X"90",X"90",X"FF",X"FF",X"A2",X"20",X"A9",X"5E",X"20",
|
||||
X"E3",X"D7",X"A0",X"06",X"84",X"C2",X"20",X"F9",X"D7",X"A4",X"C2",X"B9",X"BC",X"EB",X"BE",X"C3",
|
||||
X"EB",X"20",X"1B",X"D8",X"A5",X"C2",X"49",X"FF",X"29",X"07",X"A8",X"20",X"EF",X"D7",X"A5",X"C2",
|
||||
X"D0",X"07",X"A2",X"C0",X"A9",X"5E",X"4C",X"AD",X"EB",X"A2",X"BA",X"A9",X"5E",X"20",X"E3",X"D7",
|
||||
X"C6",X"C2",X"10",X"D2",X"A2",X"DE",X"A9",X"5E",X"20",X"E3",X"D7",X"60",X"DE",X"9D",X"1F",X"9D",
|
||||
X"DE",X"1F",X"DE",X"F4",X"D8",X"D8",X"10",X"D8",X"10",X"10",X"38",X"34",X"36",X"1E",X"20",X"F9",
|
||||
X"D7",X"A9",X"01",X"20",X"10",X"D8",X"A2",X"06",X"86",X"C1",X"A4",X"C1",X"A9",X"90",X"BE",X"1D",
|
||||
X"EC",X"20",X"1B",X"D8",X"A2",X"F6",X"A9",X"5E",X"20",X"E3",X"D7",X"C6",X"C1",X"10",X"EB",X"A2",
|
||||
X"06",X"86",X"C1",X"A4",X"C1",X"B9",X"24",X"EC",X"A2",X"6B",X"20",X"1B",X"D8",X"A2",X"EE",X"A9",
|
||||
X"5E",X"20",X"E3",X"D7",X"C6",X"C1",X"10",X"EB",X"AD",X"00",X"88",X"29",X"20",X"D0",X"09",X"06",
|
||||
X"C0",X"90",X"02",X"E6",X"C5",X"4C",X"1C",X"EC",X"A9",X"20",X"85",X"C0",X"60",X"B2",X"CC",X"E6",
|
||||
X"00",X"1A",X"34",X"4E",X"AC",X"C8",X"E4",X"00",X"1C",X"38",X"54",X"A2",X"46",X"A9",X"5F",X"20",
|
||||
X"E3",X"D7",X"A9",X"20",X"85",X"C0",X"A2",X"3A",X"A9",X"5F",X"20",X"E3",X"D7",X"C6",X"C0",X"10",
|
||||
X"F5",X"60",X"A2",X"0F",X"86",X"C1",X"8D",X"0B",X"60",X"EA",X"AD",X"08",X"60",X"85",X"C3",X"8D",
|
||||
X"0B",X"68",X"EA",X"AD",X"08",X"68",X"48",X"29",X"01",X"18",X"20",X"C3",X"ED",X"46",X"C3",X"68",
|
||||
X"6A",X"C6",X"C1",X"10",X"F1",X"A9",X"D0",X"A0",X"00",X"A2",X"F8",X"20",X"1B",X"D8",X"A2",X"07",
|
||||
X"86",X"C1",X"A9",X"78",X"85",X"C6",X"A9",X"07",X"85",X"C7",X"A9",X"00",X"85",X"C5",X"A8",X"B1",
|
||||
X"C5",X"49",X"FF",X"29",X"7F",X"48",X"29",X"01",X"18",X"20",X"C3",X"ED",X"68",X"6A",X"C8",X"C6",
|
||||
X"C7",X"10",X"F2",X"A9",X"D0",X"A0",X"00",X"A2",X"F8",X"20",X"1B",X"D8",X"A5",X"C6",X"18",X"69",
|
||||
X"08",X"85",X"C6",X"C9",X"90",X"90",X"CF",X"60",X"84",X"C3",X"AD",X"00",X"78",X"29",X"0F",X"85",
|
||||
X"C0",X"AD",X"00",X"80",X"29",X"1F",X"85",X"C1",X"AD",X"00",X"88",X"29",X"7F",X"85",X"C2",X"A5",
|
||||
X"C0",X"09",X"10",X"25",X"C1",X"09",X"60",X"25",X"C2",X"49",X"7F",X"F0",X"07",X"69",X"40",X"8D",
|
||||
X"00",X"60",X"A0",X"A4",X"8C",X"01",X"60",X"60",X"A2",X"18",X"2C",X"00",X"78",X"10",X"FB",X"2C",
|
||||
X"00",X"78",X"30",X"FB",X"CA",X"10",X"F3",X"E6",X"D9",X"2C",X"00",X"78",X"50",X"FB",X"A9",X"00",
|
||||
X"8D",X"11",X"00",X"A9",X"20",X"8D",X"12",X"00",X"AD",X"00",X"78",X"49",X"FF",X"29",X"24",X"F0",
|
||||
X"26",X"06",X"C8",X"90",X"1F",X"AD",X"00",X"88",X"29",X"40",X"D0",X"06",X"20",X"8E",X"ED",X"20",
|
||||
X"FF",X"ED",X"E6",X"C9",X"E6",X"C9",X"A9",X"00",X"A2",X"06",X"9D",X"00",X"60",X"9D",X"00",X"68",
|
||||
X"CA",X"CA",X"10",X"F6",X"4C",X"2B",X"ED",X"A9",X"20",X"85",X"C8",X"A5",X"C9",X"C9",X"0C",X"D0",
|
||||
X"0E",X"A5",X"C5",X"29",X"07",X"D0",X"02",X"A9",X"01",X"09",X"C0",X"A8",X"4C",X"41",X"ED",X"A0",
|
||||
X"A7",X"A9",X"04",X"20",X"EF",X"D7",X"A2",X"20",X"A9",X"5E",X"20",X"E3",X"D7",X"20",X"7B",X"ED",
|
||||
X"20",X"F9",X"D7",X"20",X"A6",X"D7",X"A9",X"C0",X"85",X"DA",X"8D",X"40",X"88",X"8D",X"80",X"89",
|
||||
X"AD",X"00",X"78",X"29",X"10",X"D0",X"03",X"4C",X"D8",X"EC",X"4C",X"6A",X"ED",X"94",X"EA",X"A9",
|
||||
X"EA",X"1C",X"EB",X"23",X"EB",X"2A",X"EC",X"7A",X"EB",X"CD",X"EB",X"A6",X"C9",X"E0",X"0E",X"90",
|
||||
X"04",X"A2",X"02",X"86",X"C9",X"BD",X"6E",X"ED",X"48",X"BD",X"6D",X"ED",X"48",X"60",X"A9",X"00",
|
||||
X"8D",X"0F",X"60",X"8D",X"0F",X"68",X"A9",X"07",X"8D",X"0F",X"60",X"8D",X"0F",X"68",X"A2",X"0F",
|
||||
X"A9",X"00",X"9D",X"00",X"60",X"9D",X"00",X"68",X"CA",X"10",X"F7",X"A9",X"00",X"8D",X"08",X"60",
|
||||
X"A2",X"00",X"8E",X"08",X"68",X"60",X"48",X"08",X"4A",X"4A",X"4A",X"4A",X"28",X"20",X"C3",X"ED",
|
||||
X"68",X"29",X"0F",X"90",X"05",X"29",X"0F",X"F0",X"08",X"18",X"0A",X"08",X"20",X"DD",X"ED",X"28",
|
||||
X"60",X"AE",X"C4",X"5D",X"AD",X"C5",X"5D",X"08",X"20",X"E8",X"ED",X"28",X"60",X"A8",X"BE",X"C6",
|
||||
X"5D",X"B9",X"C7",X"5D",X"20",X"E8",X"ED",X"60",X"A0",X"01",X"91",X"11",X"88",X"8A",X"91",X"11",
|
||||
X"AD",X"11",X"00",X"18",X"69",X"02",X"8D",X"11",X"00",X"90",X"03",X"EE",X"12",X"00",X"60",X"78",
|
||||
X"D8",X"A9",X"FF",X"85",X"02",X"D0",X"11",X"A5",X"00",X"F0",X"0D",X"AD",X"00",X"78",X"29",X"40",
|
||||
X"F0",X"06",X"8D",X"80",X"88",X"8D",X"40",X"88",X"8D",X"80",X"89",X"AD",X"00",X"78",X"29",X"10",
|
||||
X"D0",X"FE",X"AD",X"00",X"80",X"18",X"2A",X"2A",X"2A",X"2A",X"49",X"FF",X"29",X"07",X"85",X"00",
|
||||
X"A5",X"00",X"C5",X"02",X"F0",X"D1",X"85",X"02",X"AA",X"F0",X"21",X"A9",X"C7",X"8D",X"00",X"20",
|
||||
X"A9",X"60",X"8D",X"01",X"20",X"BC",X"B0",X"EE",X"BD",X"B8",X"EE",X"AA",X"B9",X"C0",X"EE",X"9D",
|
||||
X"02",X"20",X"88",X"CA",X"10",X"F6",X"8D",X"80",X"88",X"4C",X"07",X"EE",X"A9",X"20",X"85",X"04",
|
||||
X"A9",X"00",X"85",X"03",X"85",X"01",X"A8",X"A9",X"08",X"85",X"00",X"18",X"A5",X"01",X"91",X"03",
|
||||
X"69",X"05",X"85",X"01",X"C8",X"D0",X"F4",X"E6",X"04",X"C6",X"00",X"D0",X"EE",X"A0",X"07",X"A2",
|
||||
X"00",X"A9",X"11",X"9D",X"80",X"27",X"9D",X"80",X"26",X"48",X"8A",X"18",X"69",X"10",X"AA",X"68",
|
||||
X"88",X"10",X"F0",X"8D",X"B2",X"26",X"8D",X"B2",X"27",X"8D",X"DE",X"26",X"8D",X"EE",X"26",X"8D",
|
||||
X"DE",X"27",X"8D",X"EE",X"27",X"A9",X"80",X"8D",X"FE",X"26",X"8D",X"FE",X"27",X"4C",X"56",X"EE",
|
||||
X"01",X"01",X"15",X"2B",X"45",X"71",X"01",X"01",X"01",X"01",X"13",X"15",X"19",X"2B",X"01",X"01",
|
||||
X"00",X"20",X"40",X"80",X"00",X"71",X"80",X"01",X"00",X"22",X"40",X"80",X"00",X"60",X"80",X"1E",
|
||||
X"00",X"3E",X"40",X"80",X"00",X"20",X"40",X"80",X"00",X"71",X"80",X"01",X"00",X"22",X"07",X"E0",
|
||||
X"00",X"20",X"40",X"80",X"80",X"1E",X"00",X"3E",X"40",X"80",X"00",X"20",X"40",X"80",X"00",X"71",
|
||||
X"80",X"01",X"00",X"22",X"07",X"E0",X"00",X"20",X"40",X"80",X"80",X"1E",X"00",X"3E",X"40",X"80",
|
||||
X"2F",X"51",X"40",X"80",X"00",X"20",X"40",X"80",X"00",X"71",X"80",X"01",X"00",X"22",X"07",X"E0",
|
||||
X"00",X"20",X"40",X"80",X"80",X"1E",X"00",X"3E",X"40",X"80",X"2F",X"51",X"40",X"80",X"11",X"A0",
|
||||
X"20",X"51",X"40",X"80",X"00",X"20",X"13",X"A0",X"00",X"C0",X"15",X"A0",X"00",X"C0",X"2F",X"40",
|
||||
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"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"5F",X"E7",X"5F",X"E7",X"BD",X"E7");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,150 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity bwidow_vec_rom1 is
|
||||
port (
|
||||
clk : in std_logic;
|
||||
addr : in std_logic_vector(10 downto 0);
|
||||
data : out std_logic_vector(7 downto 0)
|
||||
);
|
||||
end entity;
|
||||
|
||||
architecture prom of bwidow_vec_rom1 is
|
||||
type rom is array(0 to 2047) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"AE",X"E8",X"B9",X"E8",X"C4",X"E8",X"CF",X"E8",X"DA",X"E8",X"E5",X"E8",X"F0",X"E8",X"FB",X"E8",
|
||||
X"06",X"E9",X"11",X"E9",X"1C",X"E9",X"27",X"E9",X"32",X"E9",X"3D",X"E9",X"48",X"E9",X"53",X"E9",
|
||||
X"5E",X"E9",X"6F",X"E9",X"80",X"E9",X"91",X"E9",X"A2",X"E9",X"B3",X"E9",X"C4",X"E9",X"D5",X"E9",
|
||||
X"E6",X"E9",X"F7",X"E9",X"08",X"EA",X"19",X"EA",X"2A",X"EA",X"3B",X"EA",X"4C",X"EA",X"5D",X"EA",
|
||||
X"6E",X"EA",X"87",X"EA",X"A0",X"EA",X"BA",X"EA",X"D3",X"EA",X"EC",X"EA",X"05",X"EB",X"1E",X"EB",
|
||||
X"37",X"EB",X"50",X"EB",X"69",X"EB",X"82",X"EB",X"9B",X"EB",X"B4",X"EB",X"CD",X"EB",X"E6",X"EB",
|
||||
X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",
|
||||
X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",
|
||||
X"75",X"E8",X"88",X"E8",X"9B",X"E8",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",
|
||||
X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",X"A0",X"E7",
|
||||
X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",
|
||||
X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",
|
||||
X"4F",X"ED",X"5F",X"ED",X"6F",X"ED",X"7F",X"ED",X"8F",X"ED",X"9F",X"ED",X"AF",X"ED",X"BF",X"ED",
|
||||
X"CF",X"ED",X"DF",X"ED",X"EF",X"ED",X"FF",X"ED",X"0F",X"EE",X"1F",X"EE",X"2F",X"EE",X"3F",X"EE",
|
||||
X"4F",X"EE",X"61",X"EE",X"73",X"EE",X"85",X"EE",X"97",X"EE",X"A9",X"EE",X"BB",X"EE",X"CD",X"EE",
|
||||
X"DF",X"EE",X"F1",X"EE",X"03",X"EF",X"15",X"EF",X"27",X"EF",X"39",X"EF",X"4B",X"EF",X"5D",X"EF",
|
||||
X"6F",X"EF",X"79",X"EF",X"83",X"EF",X"8D",X"EF",X"97",X"EF",X"A1",X"EF",X"AB",X"EF",X"B5",X"EF",
|
||||
X"BF",X"EF",X"C9",X"EF",X"D3",X"EF",X"DD",X"EF",X"E7",X"EF",X"F1",X"EF",X"FB",X"EF",X"05",X"F0",
|
||||
X"0F",X"F0",X"18",X"F0",X"21",X"F0",X"2A",X"F0",X"33",X"F0",X"3C",X"F0",X"45",X"F0",X"4E",X"F0",
|
||||
X"57",X"F0",X"60",X"F0",X"69",X"F0",X"72",X"F0",X"7B",X"F0",X"84",X"F0",X"8D",X"F0",X"96",X"F0",
|
||||
X"0F",X"F0",X"18",X"F0",X"21",X"F0",X"2A",X"F0",X"33",X"F0",X"3C",X"F0",X"45",X"F0",X"4E",X"F0",
|
||||
X"57",X"F0",X"60",X"F0",X"69",X"F0",X"72",X"F0",X"7B",X"F0",X"84",X"F0",X"8D",X"F0",X"96",X"F0",
|
||||
X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",
|
||||
X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",X"8B",X"E7",
|
||||
X"00",X"C0",X"00",X"C0",X"00",X"C0",X"00",X"C0",X"00",X"C0",X"00",X"C0",X"00",X"C0",X"00",X"C0",
|
||||
X"00",X"C0",X"00",X"C0",X"00",X"C0",X"00",X"C0",X"00",X"C0",X"00",X"C0",X"00",X"C0",X"00",X"C0",
|
||||
X"9F",X"F0",X"B1",X"F0",X"C3",X"F0",X"D5",X"F0",X"E7",X"F0",X"F9",X"F0",X"0B",X"F1",X"1D",X"F1",
|
||||
X"2F",X"F1",X"41",X"F1",X"53",X"F1",X"65",X"F1",X"77",X"F1",X"89",X"F1",X"9B",X"F1",X"AD",X"F1",
|
||||
X"BF",X"F1",X"C9",X"F1",X"D3",X"F1",X"DD",X"F1",X"E7",X"F1",X"F1",X"F1",X"FB",X"F1",X"05",X"F2",
|
||||
X"0F",X"F2",X"19",X"F2",X"23",X"F2",X"2D",X"F2",X"37",X"F2",X"41",X"F2",X"4B",X"F2",X"55",X"F2",
|
||||
X"6F",X"EF",X"79",X"EF",X"83",X"EF",X"8D",X"EF",X"97",X"EF",X"A1",X"EF",X"AB",X"EF",X"B5",X"EF",
|
||||
X"BF",X"EF",X"C9",X"EF",X"D3",X"EF",X"DD",X"EF",X"E7",X"EF",X"F1",X"EF",X"FB",X"EF",X"05",X"F0",
|
||||
X"30",X"B5",X"00",X"C0",X"45",X"B5",X"00",X"C0",X"5A",X"B5",X"00",X"C0",X"6F",X"B5",X"00",X"C0",
|
||||
X"84",X"B5",X"00",X"C0",X"99",X"B5",X"00",X"C0",X"AE",X"B5",X"00",X"C0",X"C3",X"B5",X"00",X"C0",
|
||||
X"D8",X"B5",X"00",X"C0",X"ED",X"B5",X"00",X"C0",X"02",X"B6",X"00",X"C0",X"17",X"B6",X"00",X"C0",
|
||||
X"2C",X"B6",X"00",X"C0",X"41",X"B6",X"00",X"C0",X"56",X"B6",X"00",X"C0",X"6B",X"B6",X"00",X"C0",
|
||||
X"80",X"B6",X"00",X"C0",X"95",X"B6",X"00",X"C0",X"AA",X"B6",X"00",X"C0",X"BF",X"B6",X"00",X"C0",
|
||||
X"D4",X"B6",X"00",X"C0",X"E9",X"B6",X"00",X"C0",X"FE",X"B6",X"00",X"C0",X"13",X"B7",X"00",X"C0",
|
||||
X"28",X"B7",X"00",X"C0",X"3D",X"B7",X"00",X"C0",X"52",X"B7",X"00",X"C0",X"67",X"B7",X"00",X"C0",
|
||||
X"7C",X"B7",X"00",X"C0",X"91",X"B7",X"00",X"C0",X"A6",X"B7",X"00",X"C0",X"BB",X"B7",X"00",X"C0",
|
||||
X"D0",X"B7",X"00",X"C0",X"E5",X"B7",X"00",X"C0",X"FA",X"B7",X"00",X"C0",X"0F",X"B8",X"00",X"C0",
|
||||
X"24",X"B8",X"00",X"C0",X"39",X"B8",X"00",X"C0",X"4E",X"B8",X"00",X"C0",X"63",X"B8",X"00",X"C0",
|
||||
X"78",X"B8",X"00",X"C0",X"8D",X"B8",X"00",X"C0",X"A2",X"B8",X"00",X"C0",X"B7",X"B8",X"00",X"C0",
|
||||
X"CC",X"B8",X"00",X"C0",X"E1",X"B8",X"00",X"C0",X"F6",X"B8",X"00",X"C0",X"0B",X"B9",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"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"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"B5",X"5F",X"F2",X"45",X"B5",X"6E",X"F2",X"5A",X"B5",X"7D",X"F2",X"6F",X"B5",X"8C",X"F2",
|
||||
X"84",X"B5",X"9C",X"F2",X"99",X"B5",X"AB",X"F2",X"AE",X"B5",X"BA",X"F2",X"C3",X"B5",X"C9",X"F2",
|
||||
X"D8",X"B5",X"D8",X"F2",X"ED",X"B5",X"E7",X"F2",X"02",X"B6",X"F6",X"F2",X"17",X"B6",X"05",X"F3",
|
||||
X"2C",X"B6",X"14",X"F3",X"41",X"B6",X"23",X"F3",X"56",X"B6",X"32",X"F3",X"6B",X"B6",X"41",X"F3",
|
||||
X"80",X"B6",X"50",X"F3",X"95",X"B6",X"5F",X"F3",X"AA",X"B6",X"6E",X"F3",X"BF",X"B6",X"7D",X"F3",
|
||||
X"D4",X"B6",X"8C",X"F3",X"E9",X"B6",X"9B",X"F3",X"FE",X"B6",X"AA",X"F3",X"13",X"B7",X"B9",X"F3",
|
||||
X"28",X"B7",X"C8",X"F3",X"3D",X"B7",X"D7",X"F3",X"52",X"B7",X"E6",X"F3",X"67",X"B7",X"F5",X"F3",
|
||||
X"7C",X"B7",X"04",X"F4",X"91",X"B7",X"13",X"F4",X"A6",X"B7",X"22",X"F4",X"BB",X"B7",X"31",X"F4",
|
||||
X"D0",X"B7",X"40",X"F4",X"E5",X"B7",X"4F",X"F4",X"FA",X"B7",X"5E",X"F4",X"0F",X"B8",X"6D",X"F4",
|
||||
X"24",X"B8",X"7C",X"F4",X"39",X"B8",X"8B",X"F4",X"4E",X"B8",X"9A",X"F4",X"63",X"B8",X"A9",X"F4",
|
||||
X"78",X"B8",X"B8",X"F4",X"8D",X"B8",X"C7",X"F4",X"A2",X"B8",X"D6",X"F4",X"B7",X"B8",X"E5",X"F4",
|
||||
X"CC",X"B8",X"F4",X"F4",X"E1",X"B8",X"03",X"F5",X"F6",X"B8",X"12",X"F5",X"0B",X"B9",X"21",X"F5",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"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"B5",X"20",X"F9",X"45",X"B5",X"2B",X"F9",X"5A",X"B5",X"36",X"F9",X"6F",X"B5",X"41",X"F9",
|
||||
X"84",X"B5",X"4C",X"F9",X"99",X"B5",X"57",X"F9",X"AE",X"B5",X"62",X"F9",X"C3",X"B5",X"6D",X"F9",
|
||||
X"D8",X"B5",X"78",X"F9",X"ED",X"B5",X"83",X"F9",X"02",X"B6",X"8E",X"F9",X"17",X"B6",X"99",X"F9",
|
||||
X"2C",X"B6",X"A4",X"F9",X"41",X"B6",X"AF",X"F9",X"56",X"B6",X"BA",X"F9",X"6B",X"B6",X"C5",X"F9",
|
||||
X"80",X"B6",X"D0",X"F9",X"95",X"B6",X"DB",X"F9",X"AA",X"B6",X"E6",X"F9",X"BF",X"B6",X"F1",X"F9",
|
||||
X"D4",X"B6",X"FC",X"F9",X"E9",X"B6",X"07",X"FA",X"FE",X"B6",X"12",X"FA",X"13",X"B7",X"1D",X"FA",
|
||||
X"28",X"B7",X"28",X"FA",X"3D",X"B7",X"33",X"FA",X"52",X"B7",X"3E",X"FA",X"67",X"B7",X"49",X"FA",
|
||||
X"7C",X"B7",X"54",X"FA",X"91",X"B7",X"5F",X"FA",X"A6",X"B7",X"6A",X"FA",X"BB",X"B7",X"75",X"FA",
|
||||
X"D0",X"B7",X"80",X"FA",X"E5",X"B7",X"8B",X"FA",X"FA",X"B7",X"97",X"FA",X"0F",X"B8",X"A2",X"FA",
|
||||
X"24",X"B8",X"AD",X"FA",X"39",X"B8",X"B8",X"FA",X"4E",X"B8",X"C3",X"FA",X"63",X"B8",X"CE",X"FA",
|
||||
X"78",X"B8",X"D9",X"FA",X"8D",X"B8",X"E4",X"FA",X"A2",X"B8",X"EF",X"FA",X"B7",X"B8",X"FA",X"FA",
|
||||
X"CC",X"B8",X"05",X"FB",X"E1",X"B8",X"10",X"FB",X"F6",X"B8",X"1B",X"FB",X"0B",X"B9",X"26",X"FB",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"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"B9",X"80",X"E5",X"2B",X"B9",X"82",X"E5",X"36",X"B9",X"84",X"E5",X"41",X"B9",X"86",X"E5",
|
||||
X"4C",X"B9",X"88",X"E5",X"57",X"B9",X"8A",X"E5",X"62",X"B9",X"8C",X"E5",X"6D",X"B9",X"8E",X"E5",
|
||||
X"78",X"B9",X"90",X"E5",X"83",X"B9",X"92",X"E5",X"8E",X"B9",X"94",X"E5",X"99",X"B9",X"96",X"E5",
|
||||
X"A4",X"B9",X"98",X"E5",X"AF",X"B9",X"9A",X"E5",X"BA",X"B9",X"9C",X"E5",X"C5",X"B9",X"9E",X"E5",
|
||||
X"D0",X"B9",X"A0",X"E5",X"DB",X"B9",X"A2",X"E5",X"E6",X"B9",X"A4",X"E5",X"F1",X"B9",X"A6",X"E5",
|
||||
X"FC",X"B9",X"A8",X"E5",X"07",X"BA",X"AA",X"E5",X"12",X"BA",X"AC",X"E5",X"1D",X"BA",X"AE",X"E5",
|
||||
X"28",X"BA",X"B0",X"E5",X"33",X"BA",X"B2",X"E5",X"3E",X"BA",X"B4",X"E5",X"49",X"BA",X"B6",X"E5",
|
||||
X"54",X"BA",X"B8",X"E5",X"5F",X"BA",X"BA",X"E5",X"6A",X"BA",X"BC",X"E5",X"75",X"BA",X"BE",X"E5",
|
||||
X"80",X"BA",X"C0",X"E5",X"8B",X"BA",X"C2",X"E5",X"97",X"BA",X"C4",X"E5",X"A2",X"BA",X"C6",X"E5",
|
||||
X"AD",X"BA",X"C8",X"E5",X"B8",X"BA",X"CA",X"E5",X"C3",X"BA",X"CC",X"E5",X"CE",X"BA",X"CE",X"E5",
|
||||
X"D9",X"BA",X"D0",X"E5",X"E4",X"BA",X"D2",X"E5",X"EF",X"BA",X"D4",X"E5",X"FA",X"BA",X"D6",X"E5",
|
||||
X"05",X"BB",X"D8",X"E5",X"10",X"BB",X"DA",X"E5",X"1B",X"BB",X"DC",X"E5",X"26",X"BB",X"DE",X"E5",
|
||||
X"DD",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"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"B9",X"00",X"C0",X"2B",X"B9",X"00",X"C0",X"36",X"B9",X"00",X"C0",X"41",X"B9",X"00",X"C0",
|
||||
X"4C",X"B9",X"00",X"C0",X"57",X"B9",X"00",X"C0",X"62",X"B9",X"00",X"C0",X"6D",X"B9",X"00",X"C0",
|
||||
X"78",X"B9",X"00",X"C0",X"83",X"B9",X"00",X"C0",X"8E",X"B9",X"00",X"C0",X"99",X"B9",X"00",X"C0",
|
||||
X"A4",X"B9",X"00",X"C0",X"AF",X"B9",X"00",X"C0",X"BA",X"B9",X"00",X"C0",X"C5",X"B9",X"00",X"C0",
|
||||
X"D0",X"B9",X"00",X"C0",X"DB",X"B9",X"00",X"C0",X"E6",X"B9",X"00",X"C0",X"F1",X"B9",X"00",X"C0",
|
||||
X"FC",X"B9",X"00",X"C0",X"07",X"BA",X"00",X"C0",X"12",X"BA",X"00",X"C0",X"1D",X"BA",X"00",X"C0",
|
||||
X"28",X"BA",X"00",X"C0",X"33",X"BA",X"00",X"C0",X"3E",X"BA",X"00",X"C0",X"49",X"BA",X"00",X"C0",
|
||||
X"54",X"BA",X"00",X"C0",X"5F",X"BA",X"00",X"C0",X"6A",X"BA",X"00",X"C0",X"75",X"BA",X"00",X"C0",
|
||||
X"80",X"BA",X"00",X"C0",X"8B",X"BA",X"00",X"C0",X"97",X"BA",X"00",X"C0",X"A2",X"BA",X"00",X"C0",
|
||||
X"AD",X"BA",X"00",X"C0",X"B8",X"BA",X"00",X"C0",X"C3",X"BA",X"00",X"C0",X"CE",X"BA",X"00",X"C0",
|
||||
X"D9",X"BA",X"00",X"C0",X"E4",X"BA",X"00",X"C0",X"EF",X"BA",X"00",X"C0",X"FA",X"BA",X"00",X"C0",
|
||||
X"05",X"BB",X"00",X"C0",X"10",X"BB",X"00",X"C0",X"1B",X"BB",X"00",X"C0",X"26",X"BB",X"00",X"C0",
|
||||
X"00",X"01",X"00",X"00",X"00",X"00",X"00",X"E0",X"F0",X"1F",X"57",X"E0",X"D4",X"1F",X"4D",X"E0",
|
||||
X"BB",X"1F",X"39",X"E0",X"AD",X"1F",X"1F",X"E0",X"A8",X"1F",X"00",X"E0",X"AC",X"1F",X"E1",X"FF",
|
||||
X"BC",X"1F",X"C7",X"FF",X"D4",X"1F",X"B3",X"FF",X"F0",X"1F",X"A9",X"FF",X"10",X"00",X"A9",X"FF",
|
||||
X"2C",X"00",X"B3",X"FF",X"45",X"00",X"C7",X"FF",X"53",X"00",X"E1",X"FF",X"58",X"00",X"00",X"E0",
|
||||
X"53",X"00",X"1F",X"E0",X"45",X"00",X"39",X"E0",X"2C",X"00",X"4D",X"E0",X"10",X"00",X"57",X"E0",
|
||||
X"00",X"1F",X"00",X"00",X"00",X"C0",X"3E",X"40",X"3F",X"41",X"20",X"42",X"21",X"41",X"24",X"40",
|
||||
X"21",X"5F",X"1D",X"5D",X"22",X"40",X"21",X"5F",X"20",X"5E",X"3F",X"5F",X"3C",X"40",X"3F",X"41",
|
||||
X"02",X"5E",X"20",X"45",X"20",X"45",X"02",X"40",X"20",X"5B",X"20",X"5B",X"1F",X"45",X"00",X"C0",
|
||||
X"00",X"4C",X"3A",X"40",X"3A",X"5A",X"20",X"54",X"26",X"5A",X"2C",X"40",X"26",X"46",X"20",X"4C",
|
||||
X"3A",X"46",X"3A",X"40",X"00",X"54",X"00",X"71",X"00",X"C0",X"1E",X"43",X"3E",X"5D",X"21",X"5D",
|
||||
X"22",X"5F",X"3B",X"5C",X"20",X"5B",X"24",X"5C",X"24",X"40",X"24",X"44",X"20",X"45",X"3B",X"44",
|
||||
X"22",X"41",X"21",X"43",X"3E",X"43",X"3C",X"40",X"3B",X"43",X"3E",X"44",X"05",X"56",X"3B",X"5F",
|
||||
X"3E",X"5C",X"08",X"42",X"3B",X"5D",X"3E",X"5B",X"0A",X"40",X"0A",X"40",X"3E",X"45",X"3B",X"43",
|
||||
X"08",X"5E",X"3E",X"44",X"3B",X"41",X"1E",X"43",X"25",X"43",X"22",X"44",X"17",X"56",X"1E",X"51",
|
||||
X"00",X"C0",X"5A",X"00",X"00",X"00",X"00",X"00",X"32",X"20",X"25",X"5B",X"20",X"56",X"3B",X"5B",
|
||||
X"25",X"5B",X"20",X"51",X"3B",X"5B",X"46",X"00",X"E2",X"1F",X"20",X"5B",X"2A",X"40",X"16",X"56",
|
||||
X"20",X"56",X"2A",X"40",X"0A",X"56",X"0A",X"40",X"5A",X"00",X"00",X"00",X"2A",X"40",X"A6",X"1F",
|
||||
X"00",X"20",X"00",X"00",X"00",X"00",X"0A",X"40",X"32",X"00",X"00",X"00",X"25",X"45",X"00",X"00",
|
||||
X"28",X"20",X"25",X"5B",X"CE",X"1F",X"00",X"20",X"14",X"00",X"C4",X"1F",X"25",X"45",X"2F",X"40",
|
||||
X"16",X"5B",X"20",X"5B",X"2A",X"40",X"16",X"4F",X"20",X"45",X"CE",X"1F",X"28",X"00",X"0A",X"40");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,278 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity bwidow_vec_rom2 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 bwidow_vec_rom2 is
|
||||
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"32",X"00",X"00",X"00",X"25",X"45",X"00",X"00",X"28",X"20",X"25",X"5B",X"20",X"5B",X"16",X"56",
|
||||
X"2A",X"40",X"20",X"5B",X"3B",X"5B",X"1B",X"45",X"36",X"40",X"28",X"00",X"00",X"20",X"CE",X"1F",
|
||||
X"28",X"00",X"0A",X"40",X"5A",X"00",X"00",X"00",X"2A",X"40",X"CE",X"1F",X"00",X"20",X"2A",X"4A",
|
||||
X"2A",X"40",X"11",X"51",X"2F",X"51",X"00",X"00",X"D8",X"1F",X"20",X"4A",X"EC",X"1F",X"28",X"00",
|
||||
X"0A",X"40",X"00",X"C0",X"5A",X"00",X"00",X"00",X"2A",X"40",X"25",X"56",X"05",X"4A",X"2A",X"40",
|
||||
X"25",X"56",X"05",X"4A",X"2A",X"40",X"A6",X"1F",X"EC",X"3F",X"32",X"00",X"E2",X"1F",X"CE",X"1F",
|
||||
X"EC",X"3F",X"00",X"00",X"46",X"00",X"0A",X"40",X"3C",X"00",X"00",X"00",X"2A",X"40",X"C4",X"1F",
|
||||
X"00",X"20",X"46",X"00",X"00",X"00",X"20",X"4A",X"36",X"40",X"A6",X"1F",X"14",X"00",X"0A",X"40",
|
||||
X"5A",X"00",X"28",X"00",X"2A",X"40",X"A6",X"1F",X"00",X"20",X"32",X"00",X"EC",X"1F",X"3B",X"45",
|
||||
X"36",X"40",X"3B",X"5B",X"D8",X"1F",X"28",X"00",X"3B",X"5B",X"28",X"00",X"EC",X"1F",X"20",X"51",
|
||||
X"25",X"40",X"F6",X"1F",X"28",X"00",X"0A",X"40",X"32",X"00",X"00",X"00",X"25",X"45",X"00",X"00",
|
||||
X"28",X"20",X"25",X"5B",X"D8",X"1F",X"00",X"20",X"3B",X"5B",X"1B",X"45",X"36",X"40",X"28",X"00",
|
||||
X"00",X"20",X"CE",X"1F",X"28",X"00",X"0A",X"40",X"3C",X"00",X"00",X"00",X"2A",X"40",X"25",X"56",
|
||||
X"05",X"4A",X"2A",X"40",X"25",X"56",X"05",X"4A",X"2A",X"40",X"C4",X"1F",X"EC",X"3F",X"11",X"4F",
|
||||
X"3B",X"51",X"00",X"00",X"3C",X"00",X"0A",X"40",X"00",X"C0",X"00",X"49",X"3E",X"5B",X"3B",X"43",
|
||||
X"23",X"5B",X"3B",X"5E",X"25",X"5E",X"3D",X"5B",X"25",X"43",X"22",X"5B",X"22",X"45",X"25",X"5D",
|
||||
X"3D",X"45",X"25",X"42",X"3B",X"42",X"23",X"45",X"3B",X"5D",X"3E",X"45",X"00",X"57",X"00",X"C0",
|
||||
X"02",X"49",X"3D",X"5B",X"3C",X"45",X"22",X"5A",X"3A",X"5F",X"25",X"5F",X"3B",X"5A",X"26",X"42",
|
||||
X"21",X"5A",X"21",X"45",X"26",X"5B",X"3E",X"46",X"26",X"41",X"3B",X"43",X"25",X"44",X"3A",X"5E",
|
||||
X"3F",X"46",X"1E",X"57",X"00",X"C0",X"04",X"48",X"3C",X"5C",X"3D",X"46",X"21",X"5A",X"3A",X"40",
|
||||
X"24",X"5C",X"3A",X"5D",X"26",X"41",X"20",X"5A",X"24",X"44",X"23",X"5A",X"3F",X"46",X"26",X"40",
|
||||
X"3C",X"44",X"26",X"43",X"3A",X"5F",X"20",X"46",X"1C",X"58",X"00",X"C0",X"1E",X"43",X"3E",X"5D",
|
||||
X"21",X"5D",X"23",X"54",X"23",X"4C",X"21",X"43",X"3E",X"43",X"3E",X"48",X"3E",X"58",X"02",X"5D",
|
||||
X"00",X"C0",X"1F",X"44",X"3D",X"5E",X"20",X"5C",X"3E",X"54",X"28",X"4A",X"22",X"42",X"3F",X"44",
|
||||
X"21",X"48",X"3B",X"5A",X"01",X"5C",X"00",X"C0",X"1F",X"44",X"3E",X"5F",X"3F",X"5D",X"39",X"55",
|
||||
X"2B",X"47",X"23",X"41",X"21",X"44",X"24",X"47",X"37",X"5C",X"01",X"5C",X"00",X"C0",X"02",X"43",
|
||||
X"3C",X"41",X"3E",X"5E",X"36",X"58",X"2C",X"42",X"24",X"40",X"22",X"45",X"26",X"43",X"38",X"5F",
|
||||
X"1E",X"5D",X"00",X"C0",X"03",X"42",X"3D",X"42",X"3D",X"5F",X"34",X"5D",X"2C",X"5D",X"23",X"5F",
|
||||
X"23",X"42",X"28",X"42",X"38",X"42",X"1D",X"5E",X"00",X"C0",X"04",X"41",X"3E",X"43",X"3C",X"40",
|
||||
X"34",X"42",X"2A",X"58",X"22",X"5E",X"24",X"41",X"28",X"5F",X"3A",X"45",X"1C",X"5F",X"00",X"C0",
|
||||
X"04",X"41",X"3F",X"42",X"3D",X"41",X"35",X"47",X"27",X"55",X"21",X"5D",X"22",X"5F",X"29",X"5C",
|
||||
X"3C",X"49",X"1C",X"5F",X"00",X"C0",X"03",X"5E",X"21",X"44",X"3E",X"42",X"38",X"4A",X"22",X"54",
|
||||
X"20",X"5C",X"23",X"5E",X"25",X"5A",X"3F",X"48",X"1D",X"42",X"00",X"C0",X"02",X"5D",X"22",X"43",
|
||||
X"3F",X"43",X"3D",X"4C",X"3D",X"54",X"3F",X"5D",X"22",X"5D",X"22",X"58",X"22",X"48",X"1E",X"43",
|
||||
X"00",X"C0",X"1F",X"5C",X"25",X"42",X"20",X"44",X"22",X"4C",X"38",X"56",X"3E",X"5E",X"21",X"5C",
|
||||
X"3F",X"58",X"23",X"46",X"01",X"44",X"00",X"C0",X"1F",X"5C",X"24",X"41",X"21",X"43",X"27",X"4B",
|
||||
X"35",X"59",X"3D",X"5F",X"3F",X"5E",X"3C",X"57",X"27",X"44",X"01",X"44",X"00",X"C0",X"1E",X"5D",
|
||||
X"24",X"5F",X"22",X"42",X"2A",X"48",X"34",X"5E",X"3C",X"40",X"3E",X"5D",X"3A",X"5B",X"28",X"41",
|
||||
X"02",X"43",X"00",X"C0",X"1D",X"5E",X"23",X"5E",X"23",X"41",X"2C",X"43",X"34",X"43",X"3D",X"41",
|
||||
X"3D",X"5E",X"38",X"5E",X"28",X"5E",X"03",X"42",X"00",X"C0",X"1C",X"41",X"22",X"5B",X"24",X"40",
|
||||
X"2C",X"5E",X"36",X"48",X"3E",X"42",X"3C",X"5F",X"38",X"41",X"26",X"5D",X"04",X"5F",X"00",X"C0",
|
||||
X"1C",X"41",X"21",X"5C",X"23",X"5F",X"2B",X"59",X"39",X"4B",X"3F",X"43",X"3C",X"41",X"39",X"44",
|
||||
X"24",X"59",X"04",X"5F",X"00",X"C0",X"1D",X"42",X"3F",X"5C",X"22",X"5E",X"28",X"56",X"3E",X"4C",
|
||||
X"20",X"44",X"3B",X"42",X"3D",X"46",X"21",X"58",X"03",X"5E",X"00",X"C0",X"1E",X"43",X"3E",X"5D",
|
||||
X"21",X"5D",X"22",X"5F",X"3B",X"5C",X"20",X"5B",X"24",X"5C",X"24",X"40",X"24",X"44",X"20",X"45",
|
||||
X"3B",X"44",X"22",X"41",X"21",X"43",X"3E",X"43",X"3C",X"40",X"02",X"5D",X"00",X"C0",X"1F",X"44",
|
||||
X"3D",X"5E",X"20",X"5C",X"22",X"5F",X"39",X"5E",X"3E",X"5B",X"23",X"5B",X"23",X"5F",X"24",X"42",
|
||||
X"23",X"44",X"3D",X"46",X"23",X"40",X"22",X"42",X"3F",X"44",X"3C",X"42",X"01",X"5C",X"00",X"C0",
|
||||
X"1F",X"44",X"3E",X"5F",X"3F",X"5D",X"20",X"5E",X"3A",X"41",X"3D",X"5C",X"20",X"5A",X"22",X"5E",
|
||||
X"26",X"40",X"24",X"43",X"3F",X"46",X"22",X"40",X"23",X"41",X"21",X"44",X"3B",X"43",X"01",X"5C",
|
||||
X"00",X"C0",X"02",X"43",X"3C",X"41",X"3E",X"5E",X"20",X"5F",X"3A",X"41",X"3C",X"5F",X"3E",X"5A",
|
||||
X"21",X"5D",X"25",X"5D",X"25",X"42",X"22",X"47",X"21",X"5E",X"24",X"40",X"22",X"45",X"3E",X"42",
|
||||
X"1E",X"5D",X"00",X"C0",X"03",X"42",X"3D",X"42",X"3D",X"5F",X"3F",X"5E",X"3C",X"45",X"3B",X"40",
|
||||
X"3C",X"5C",X"20",X"5C",X"24",X"5C",X"25",X"40",X"24",X"45",X"21",X"5E",X"23",X"5F",X"23",X"42",
|
||||
X"20",X"44",X"1D",X"5E",X"00",X"C0",X"04",X"41",X"3E",X"43",X"3C",X"40",X"3F",X"5E",X"3E",X"47",
|
||||
X"3B",X"42",X"3B",X"5D",X"3F",X"5D",X"22",X"5C",X"24",X"5D",X"26",X"43",X"20",X"5D",X"22",X"5E",
|
||||
X"24",X"41",X"22",X"44",X"1C",X"5F",X"00",X"C0",X"04",X"41",X"3F",X"42",X"3D",X"41",X"3E",X"40",
|
||||
X"21",X"46",X"3C",X"43",X"3A",X"40",X"3E",X"5E",X"20",X"5A",X"23",X"5C",X"26",X"41",X"20",X"5E",
|
||||
X"21",X"5D",X"22",X"5F",X"25",X"45",X"1C",X"5F",X"00",X"C0",X"03",X"5E",X"21",X"44",X"3E",X"42",
|
||||
X"3D",X"40",X"23",X"46",X"3D",X"44",X"3C",X"42",X"3D",X"5F",X"3D",X"5B",X"22",X"5B",X"27",X"5E",
|
||||
X"3E",X"5F",X"20",X"5C",X"23",X"5E",X"24",X"42",X"1D",X"42",X"00",X"C0",X"02",X"5D",X"22",X"43",
|
||||
X"3F",X"43",X"3C",X"41",X"27",X"44",X"20",X"45",X"3C",X"44",X"3C",X"40",X"3C",X"5C",X"20",X"5B",
|
||||
X"25",X"5C",X"3E",X"5F",X"3F",X"5D",X"22",X"5D",X"24",X"40",X"1E",X"43",X"00",X"C0",X"1F",X"5C",
|
||||
X"25",X"42",X"20",X"44",X"3E",X"41",X"27",X"42",X"22",X"45",X"3D",X"45",X"3D",X"41",X"3A",X"5E",
|
||||
X"3F",X"5C",X"21",X"5A",X"3F",X"40",X"3E",X"5E",X"21",X"5C",X"22",X"5E",X"01",X"44",X"00",X"C0",
|
||||
X"1F",X"5C",X"24",X"41",X"21",X"43",X"20",X"42",X"26",X"5F",X"23",X"44",X"20",X"46",X"3E",X"42",
|
||||
X"3A",X"40",X"3C",X"5D",X"21",X"5A",X"3E",X"40",X"3D",X"5F",X"3F",X"5E",X"23",X"5B",X"01",X"44",
|
||||
X"00",X"C0",X"1E",X"5D",X"24",X"5F",X"22",X"42",X"20",X"43",X"26",X"5D",X"24",X"43",X"22",X"44",
|
||||
X"3F",X"43",X"3B",X"43",X"3B",X"5E",X"3E",X"59",X"3F",X"42",X"3C",X"40",X"3E",X"5D",X"22",X"5C",
|
||||
X"02",X"43",X"00",X"C0",X"1D",X"5E",X"23",X"5E",X"23",X"41",X"21",X"42",X"24",X"5B",X"25",X"40",
|
||||
X"24",X"44",X"20",X"44",X"3C",X"44",X"3B",X"40",X"3C",X"5B",X"3F",X"42",X"3D",X"41",X"3D",X"5E",
|
||||
X"20",X"5C",X"03",X"42",X"00",X"C0",X"1C",X"41",X"22",X"5B",X"24",X"40",X"21",X"42",X"22",X"59",
|
||||
X"25",X"5E",X"25",X"43",X"21",X"43",X"3E",X"46",X"3C",X"41",X"3A",X"5F",X"20",X"41",X"3E",X"42",
|
||||
X"3C",X"5F",X"3E",X"5E",X"04",X"5F",X"00",X"C0",X"1C",X"41",X"21",X"5C",X"23",X"5F",X"22",X"40",
|
||||
X"3F",X"5A",X"24",X"5D",X"26",X"40",X"22",X"42",X"20",X"46",X"3D",X"44",X"3A",X"5F",X"20",X"42",
|
||||
X"3F",X"43",X"3C",X"41",X"3D",X"5D",X"04",X"5F",X"00",X"C0",X"1D",X"42",X"3F",X"5C",X"22",X"5E",
|
||||
X"21",X"40",X"3F",X"5A",X"21",X"5C",X"26",X"5E",X"23",X"41",X"23",X"45",X"3E",X"45",X"39",X"42",
|
||||
X"22",X"41",X"20",X"44",X"3B",X"42",X"3E",X"5E",X"03",X"5E",X"00",X"C0",X"1E",X"43",X"3E",X"5D",
|
||||
X"21",X"5D",X"3F",X"5D",X"20",X"5C",X"24",X"5D",X"24",X"43",X"20",X"44",X"3F",X"43",X"21",X"43",
|
||||
X"3E",X"43",X"21",X"43",X"20",X"43",X"3D",X"42",X"3D",X"5E",X"20",X"5D",X"21",X"5D",X"1E",X"57",
|
||||
X"28",X"40",X"00",X"5E",X"38",X"40",X"00",X"5E",X"28",X"40",X"1C",X"4A",X"00",X"C0",X"1F",X"44",
|
||||
X"3D",X"5E",X"20",X"5C",X"3E",X"5E",X"3E",X"5C",X"23",X"5C",X"25",X"41",X"21",X"44",X"21",X"43",
|
||||
X"22",X"42",X"3F",X"44",X"22",X"42",X"21",X"43",X"3E",X"43",X"3B",X"5F",X"21",X"5E",X"3F",X"5D",
|
||||
X"1B",X"58",X"27",X"5D",X"1E",X"5E",X"3A",X"43",X"1F",X"5E",X"28",X"5D",X"00",X"4B",X"00",X"C0",
|
||||
X"1F",X"44",X"3E",X"5F",X"3F",X"5D",X"3D",X"5F",X"3D",X"5D",X"21",X"5B",X"25",X"5F",X"23",X"43",
|
||||
X"21",X"43",X"23",X"41",X"21",X"44",X"22",X"41",X"22",X"42",X"20",X"44",X"3C",X"40",X"3E",X"5E",
|
||||
X"3D",X"5E",X"1A",X"5B",X"26",X"5A",X"1E",X"5F",X"3B",X"45",X"1E",X"5F",X"26",X"5A",X"04",X"4A",
|
||||
X"00",X"C0",X"E7",X"00",X"02",X"43",X"3C",X"41",X"3E",X"5E",X"3D",X"5F",X"3C",X"5F",X"3F",X"5B",
|
||||
X"24",X"5D",X"24",X"42",X"22",X"42",X"24",X"40",X"22",X"45",X"23",X"5F",X"22",X"41",X"21",X"43",
|
||||
X"3D",X"42",X"3D",X"5F",X"3E",X"5E",X"17",X"5E",X"23",X"59",X"1E",X"5F",X"3D",X"48",X"1E",X"5F",
|
||||
X"23",X"58",X"08",X"48",X"00",X"C0",X"03",X"42",X"3D",X"42",X"3D",X"5F",X"3D",X"41",X"3C",X"40",
|
||||
X"3D",X"5C",X"23",X"5C",X"24",X"40",X"23",X"41",X"23",X"5F",X"23",X"42",X"23",X"5F",X"23",X"40",
|
||||
X"22",X"43",X"3E",X"43",X"3D",X"40",X"3D",X"5F",X"17",X"42",X"20",X"58",X"1E",X"40",X"20",X"48",
|
||||
X"1E",X"40",X"20",X"58",X"0A",X"44",X"00",X"C0",X"04",X"41",X"3E",X"43",X"3C",X"40",X"3E",X"42",
|
||||
X"3C",X"42",X"3C",X"5D",X"21",X"5B",X"24",X"5F",X"23",X"5F",X"22",X"5E",X"24",X"41",X"22",X"5E",
|
||||
X"23",X"5F",X"23",X"42",X"3F",X"45",X"3E",X"5F",X"3D",X"41",X"18",X"45",X"3D",X"59",X"1E",X"42",
|
||||
X"23",X"46",X"1E",X"41",X"3D",X"58",X"0B",X"40",X"00",X"C0",X"04",X"41",X"3F",X"42",X"3D",X"41",
|
||||
X"3F",X"43",X"3D",X"43",X"3B",X"5F",X"3F",X"5B",X"23",X"5D",X"23",X"5F",X"21",X"5D",X"22",X"5F",
|
||||
X"23",X"5E",X"22",X"5E",X"24",X"40",X"20",X"44",X"3E",X"42",X"3E",X"43",X"1B",X"46",X"3A",X"5A",
|
||||
X"1F",X"42",X"25",X"45",X"1F",X"42",X"3A",X"5A",X"0A",X"5C",X"00",X"C0",X"03",X"5E",X"21",X"44",
|
||||
X"3E",X"42",X"3F",X"43",X"3F",X"44",X"3B",X"41",X"3D",X"5C",X"22",X"5C",X"22",X"5E",X"20",X"5C",
|
||||
X"23",X"5E",X"21",X"5D",X"3F",X"5E",X"25",X"5F",X"22",X"43",X"3F",X"43",X"3E",X"42",X"1E",X"49",
|
||||
X"39",X"5D",X"1F",X"42",X"26",X"43",X"01",X"42",X"38",X"5D",X"08",X"58",X"00",X"C0",X"02",X"5D",
|
||||
X"22",X"43",X"3F",X"43",X"21",X"43",X"20",X"44",X"3C",X"43",X"3C",X"5D",X"20",X"5C",X"21",X"5D",
|
||||
X"3F",X"5D",X"22",X"5D",X"3F",X"5D",X"20",X"5D",X"23",X"5E",X"23",X"42",X"20",X"43",X"3F",X"43",
|
||||
X"02",X"49",X"38",X"40",X"00",X"42",X"28",X"40",X"00",X"42",X"38",X"40",X"04",X"56",X"00",X"C0",
|
||||
X"1F",X"5C",X"25",X"42",X"20",X"44",X"22",X"42",X"22",X"44",X"3D",X"44",X"3B",X"5F",X"3F",X"5C",
|
||||
X"3F",X"5D",X"3E",X"5E",X"21",X"5C",X"3E",X"5E",X"3F",X"5D",X"22",X"5D",X"23",X"41",X"21",X"42",
|
||||
X"3F",X"43",X"07",X"48",X"39",X"43",X"00",X"42",X"28",X"5D",X"01",X"42",X"38",X"43",X"00",X"55",
|
||||
X"00",X"C0",X"1F",X"5C",X"24",X"41",X"21",X"43",X"23",X"41",X"23",X"43",X"3F",X"45",X"3B",X"41",
|
||||
X"3D",X"5D",X"3F",X"5D",X"3D",X"5F",X"3F",X"5E",X"3E",X"5D",X"3E",X"5E",X"20",X"5C",X"24",X"40",
|
||||
X"22",X"42",X"21",X"42",X"08",X"45",X"3A",X"46",X"02",X"41",X"25",X"5B",X"02",X"41",X"3A",X"46",
|
||||
X"1C",X"56",X"00",X"C0",X"1E",X"5D",X"24",X"5F",X"22",X"42",X"23",X"41",X"24",X"41",X"21",X"45",
|
||||
X"3C",X"43",X"3C",X"5E",X"3E",X"5E",X"3C",X"40",X"3E",X"5D",X"3D",X"5F",X"3E",X"41",X"3F",X"5B",
|
||||
X"23",X"5E",X"23",X"41",X"22",X"42",X"09",X"42",X"3D",X"47",X"02",X"41",X"23",X"5A",X"02",X"5F",
|
||||
X"3D",X"48",X"18",X"58",X"00",X"C0",X"1D",X"5E",X"23",X"5E",X"23",X"41",X"23",X"5F",X"24",X"40",
|
||||
X"23",X"44",X"3D",X"44",X"3C",X"40",X"3D",X"5F",X"3D",X"41",X"3D",X"5E",X"3D",X"41",X"3D",X"40",
|
||||
X"3E",X"5D",X"22",X"5D",X"23",X"40",X"23",X"41",X"09",X"5E",X"20",X"48",X"02",X"40",X"20",X"58",
|
||||
X"02",X"40",X"20",X"48",X"16",X"5C",X"00",X"C0",X"1C",X"41",X"22",X"5B",X"24",X"40",X"22",X"5E",
|
||||
X"24",X"5E",X"24",X"43",X"3F",X"45",X"3C",X"41",X"3D",X"41",X"3E",X"42",X"3C",X"5F",X"3E",X"42",
|
||||
X"3D",X"41",X"3D",X"5E",X"21",X"5D",X"22",X"5F",X"23",X"41",X"08",X"59",X"23",X"47",X"02",X"40",
|
||||
X"3D",X"58",X"02",X"5F",X"23",X"48",X"15",X"40",X"00",X"C0",X"1C",X"41",X"21",X"5C",X"23",X"5F",
|
||||
X"21",X"5D",X"23",X"5D",X"25",X"41",X"21",X"45",X"3D",X"43",X"3D",X"41",X"3F",X"43",X"3C",X"41",
|
||||
X"3F",X"42",X"3E",X"42",X"3C",X"40",X"20",X"5C",X"22",X"5E",X"22",X"5F",X"05",X"58",X"26",X"46",
|
||||
X"01",X"5E",X"3B",X"5B",X"01",X"5E",X"26",X"46",X"16",X"44",X"00",X"C0",X"1D",X"42",X"3F",X"5C",
|
||||
X"22",X"5E",X"21",X"5D",X"21",X"5C",X"25",X"5F",X"23",X"44",X"3E",X"44",X"3E",X"42",X"20",X"44",
|
||||
X"3B",X"42",X"21",X"43",X"3F",X"42",X"3D",X"41",X"3E",X"5D",X"21",X"5D",X"22",X"5E",X"02",X"57",
|
||||
X"27",X"43",X"01",X"5E",X"38",X"5D",X"01",X"5E",X"28",X"43",X"18",X"48",X"00",X"C0",X"24",X"40",
|
||||
X"23",X"43",X"20",X"44",X"3D",X"43",X"38",X"40",X"3D",X"5D",X"07",X"59",X"3C",X"40",X"3D",X"5D",
|
||||
X"20",X"5C",X"23",X"5D",X"28",X"40",X"23",X"43",X"1B",X"5A",X"20",X"4D",X"20",X"4D",X"1C",X"40",
|
||||
X"20",X"53",X"20",X"53",X"02",X"4D",X"00",X"C0",X"24",X"5E",X"24",X"42",X"21",X"44",X"3F",X"44",
|
||||
X"38",X"43",X"3C",X"5E",X"04",X"57",X"3C",X"42",X"3C",X"5E",X"3F",X"5C",X"21",X"5C",X"28",X"5D",
|
||||
X"24",X"42",X"19",X"5C",X"25",X"4E",X"25",X"4A",X"1C",X"42",X"3B",X"54",X"3B",X"54",X"07",X"4B",
|
||||
X"00",X"C0",X"23",X"5D",X"24",X"40",X"23",X"43",X"20",X"44",X"3A",X"46",X"3C",X"40",X"00",X"56",
|
||||
X"3D",X"43",X"3C",X"40",X"3D",X"5D",X"20",X"5C",X"26",X"5A",X"24",X"40",X"18",X"5F",X"29",X"4A",
|
||||
X"2A",X"49",X"1D",X"43",X"37",X"56",X"36",X"57",X"0B",X"48",X"00",X"C0",X"22",X"5C",X"23",X"5F",
|
||||
X"24",X"41",X"22",X"44",X"3D",X"48",X"3C",X"41",X"1C",X"57",X"3E",X"44",X"3D",X"41",X"3C",X"5F",
|
||||
X"3E",X"5C",X"23",X"58",X"24",X"5F",X"19",X"42",X"2A",X"45",X"2E",X"45",X"1E",X"44",X"34",X"5B",
|
||||
X"34",X"5B",X"0D",X"43",X"00",X"C0",X"20",X"5C",X"23",X"5D",X"24",X"40",X"23",X"43",X"20",X"48",
|
||||
X"3D",X"43",X"19",X"59",X"20",X"44",X"3D",X"43",X"3C",X"40",X"3D",X"5D",X"20",X"58",X"23",X"5D",
|
||||
X"1A",X"45",X"2D",X"40",X"2D",X"40",X"00",X"44",X"33",X"40",X"33",X"40",X"0D",X"5E",X"00",X"C0",
|
||||
X"3E",X"5C",X"22",X"5C",X"24",X"5F",X"24",X"41",X"23",X"48",X"3E",X"44",X"17",X"5C",X"22",X"44",
|
||||
X"3E",X"44",X"3C",X"41",X"3C",X"5F",X"3D",X"58",X"22",X"5C",X"1C",X"47",X"2C",X"5B",X"2C",X"5B",
|
||||
X"02",X"44",X"32",X"45",X"36",X"45",X"0B",X"59",X"00",X"C0",X"3D",X"5D",X"20",X"5C",X"23",X"5D",
|
||||
X"24",X"40",X"26",X"46",X"20",X"44",X"16",X"40",X"23",X"43",X"20",X"44",X"3D",X"43",X"3C",X"40",
|
||||
X"3A",X"5A",X"20",X"5C",X"1F",X"48",X"2A",X"57",X"29",X"56",X"03",X"43",X"36",X"49",X"37",X"4A",
|
||||
X"08",X"55",X"00",X"C0",X"3C",X"5E",X"3F",X"5D",X"21",X"5C",X"24",X"5E",X"28",X"43",X"21",X"44",
|
||||
X"17",X"44",X"24",X"42",X"21",X"43",X"3F",X"44",X"3C",X"42",X"38",X"5D",X"3F",X"5C",X"02",X"47",
|
||||
X"25",X"56",X"25",X"52",X"04",X"42",X"3B",X"4C",X"3B",X"4C",X"03",X"53",X"00",X"C0",X"3C",X"40",
|
||||
X"3D",X"5D",X"20",X"5C",X"23",X"5D",X"28",X"40",X"23",X"43",X"19",X"47",X"24",X"40",X"23",X"43",
|
||||
X"20",X"44",X"3D",X"43",X"38",X"40",X"3D",X"5D",X"05",X"46",X"20",X"53",X"20",X"53",X"04",X"40",
|
||||
X"20",X"4D",X"20",X"4D",X"1E",X"53",X"00",X"C0",X"3C",X"42",X"3C",X"5E",X"3F",X"5C",X"21",X"5C",
|
||||
X"28",X"5D",X"24",X"42",X"1C",X"49",X"24",X"5E",X"24",X"42",X"21",X"44",X"3F",X"44",X"38",X"43",
|
||||
X"3C",X"5E",X"07",X"44",X"3B",X"54",X"3B",X"54",X"04",X"5E",X"25",X"4E",X"25",X"4A",X"19",X"55",
|
||||
X"00",X"C0",X"3D",X"43",X"3C",X"40",X"3D",X"5D",X"20",X"5C",X"26",X"5A",X"24",X"40",X"00",X"4A",
|
||||
X"23",X"5D",X"24",X"40",X"23",X"43",X"20",X"44",X"3A",X"46",X"3C",X"40",X"08",X"41",X"37",X"56",
|
||||
X"36",X"57",X"03",X"5D",X"29",X"4A",X"2A",X"49",X"15",X"58",X"00",X"C0",X"3E",X"44",X"3D",X"41",
|
||||
X"3C",X"5F",X"3E",X"5C",X"23",X"58",X"24",X"5F",X"04",X"49",X"22",X"5C",X"23",X"5F",X"24",X"41",
|
||||
X"22",X"44",X"3D",X"48",X"3C",X"41",X"07",X"5E",X"34",X"5B",X"34",X"5B",X"02",X"5C",X"2A",X"45",
|
||||
X"2E",X"45",X"13",X"5D",X"00",X"C0",X"20",X"44",X"3D",X"43",X"3C",X"40",X"3D",X"5D",X"20",X"58",
|
||||
X"23",X"5D",X"07",X"47",X"20",X"5C",X"23",X"5D",X"24",X"40",X"23",X"43",X"20",X"48",X"3D",X"43",
|
||||
X"06",X"5B",X"33",X"40",X"33",X"40",X"00",X"5C",X"2D",X"40",X"2D",X"40",X"13",X"42",X"00",X"C0",
|
||||
X"22",X"44",X"3E",X"44",X"3C",X"41",X"3C",X"5F",X"3D",X"58",X"22",X"5C",X"09",X"44",X"3E",X"5C",
|
||||
X"22",X"5C",X"24",X"5F",X"24",X"41",X"23",X"48",X"3E",X"44",X"04",X"59",X"32",X"45",X"36",X"45",
|
||||
X"1E",X"5C",X"2C",X"5B",X"2C",X"5B",X"15",X"47",X"00",X"C0",X"23",X"43",X"20",X"44",X"3D",X"43",
|
||||
X"3C",X"40",X"3A",X"5A",X"20",X"5C",X"0A",X"40",X"3D",X"5D",X"20",X"5C",X"23",X"5D",X"24",X"40",
|
||||
X"26",X"46",X"20",X"44",X"01",X"58",X"36",X"49",X"37",X"4A",X"1D",X"5D",X"2A",X"57",X"29",X"56",
|
||||
X"18",X"4B",X"00",X"C0",X"24",X"42",X"21",X"43",X"3F",X"44",X"3C",X"42",X"38",X"5D",X"3F",X"5C",
|
||||
X"09",X"5C",X"3C",X"5E",X"3F",X"5D",X"21",X"5C",X"24",X"5E",X"28",X"43",X"21",X"44",X"1E",X"59",
|
||||
X"3B",X"4C",X"3B",X"4C",X"1C",X"5E",X"25",X"56",X"25",X"52",X"1D",X"4D",X"00",X"C0",X"1C",X"40",
|
||||
X"21",X"5D",X"3F",X"5D",X"22",X"58",X"22",X"48",X"22",X"58",X"22",X"48",X"3F",X"43",X"21",X"43",
|
||||
X"3C",X"46",X"3C",X"5A",X"03",X"56",X"21",X"5C",X"21",X"44",X"1F",X"4A",X"00",X"C0",X"1C",X"42",
|
||||
X"20",X"5C",X"3E",X"5E",X"3F",X"58",X"25",X"46",X"3E",X"58",X"25",X"47",X"21",X"43",X"22",X"42",
|
||||
X"3E",X"48",X"3A",X"5C",X"1F",X"55",X"20",X"5C",X"22",X"43",X"03",X"4A",X"00",X"C0",X"1D",X"43",
|
||||
X"3F",X"5D",X"3D",X"5F",X"3C",X"59",X"27",X"44",X"3C",X"59",X"27",X"44",X"21",X"43",X"23",X"41",
|
||||
X"21",X"47",X"39",X"5F",X"1B",X"57",X"3E",X"5C",X"24",X"42",X"06",X"48",X"00",X"C0",X"1E",X"44",
|
||||
X"3E",X"5E",X"3D",X"5F",X"39",X"5B",X"28",X"42",X"3A",X"5B",X"28",X"41",X"22",X"42",X"24",X"40",
|
||||
X"24",X"46",X"38",X"42",X"18",X"59",X"3D",X"5E",X"24",X"40",X"09",X"45",X"00",X"C0",X"00",X"44",
|
||||
X"3D",X"5F",X"3D",X"41",X"38",X"5E",X"28",X"5E",X"38",X"5E",X"28",X"5E",X"23",X"41",X"23",X"5F",
|
||||
X"26",X"44",X"3A",X"44",X"16",X"5D",X"3C",X"5F",X"24",X"5F",X"0A",X"41",X"00",X"C0",X"02",X"44",
|
||||
X"3C",X"40",X"3E",X"42",X"38",X"41",X"26",X"5B",X"38",X"42",X"27",X"5B",X"23",X"5F",X"22",X"5E",
|
||||
X"28",X"42",X"3C",X"46",X"15",X"41",X"3C",X"40",X"23",X"5E",X"0A",X"5D",X"00",X"C0",X"03",X"43",
|
||||
X"3D",X"41",X"3F",X"43",X"39",X"44",X"24",X"59",X"39",X"44",X"24",X"59",X"23",X"5F",X"21",X"5D",
|
||||
X"27",X"5F",X"3F",X"47",X"17",X"45",X"3C",X"42",X"22",X"5C",X"08",X"5A",X"00",X"C0",X"04",X"42",
|
||||
X"3E",X"42",X"3F",X"43",X"3B",X"47",X"22",X"58",X"3B",X"46",X"21",X"58",X"22",X"5E",X"20",X"5C",
|
||||
X"26",X"5C",X"22",X"48",X"19",X"48",X"3E",X"43",X"20",X"5C",X"05",X"57",X"00",X"C0",X"04",X"40",
|
||||
X"3F",X"43",X"21",X"43",X"3E",X"48",X"3E",X"58",X"3E",X"48",X"3E",X"58",X"21",X"5D",X"3F",X"5D",
|
||||
X"24",X"5A",X"24",X"46",X"1B",X"4A",X"21",X"44",X"3F",X"5C",X"01",X"56",X"00",X"C0",X"04",X"5E",
|
||||
X"20",X"44",X"22",X"42",X"21",X"48",X"3B",X"5A",X"22",X"48",X"3B",X"59",X"3F",X"5D",X"3E",X"5E",
|
||||
X"22",X"58",X"26",X"44",X"01",X"4B",X"20",X"44",X"3E",X"5D",X"1D",X"56",X"00",X"C0",X"03",X"5D",
|
||||
X"21",X"43",X"23",X"41",X"24",X"47",X"39",X"5C",X"24",X"47",X"39",X"5C",X"3F",X"5D",X"3D",X"5F",
|
||||
X"3F",X"59",X"27",X"41",X"05",X"49",X"22",X"44",X"3C",X"5E",X"1A",X"58",X"00",X"C0",X"02",X"5C",
|
||||
X"22",X"42",X"23",X"41",X"27",X"45",X"38",X"5E",X"26",X"45",X"38",X"5F",X"3E",X"5E",X"3C",X"40",
|
||||
X"3C",X"5A",X"28",X"5E",X"08",X"47",X"23",X"42",X"3C",X"40",X"17",X"5B",X"00",X"C0",X"00",X"5C",
|
||||
X"23",X"41",X"23",X"5F",X"28",X"42",X"38",X"42",X"28",X"42",X"38",X"42",X"3D",X"5F",X"3D",X"41",
|
||||
X"3A",X"5C",X"26",X"5C",X"0A",X"43",X"24",X"41",X"3C",X"41",X"16",X"5F",X"00",X"C0",X"1E",X"5C",
|
||||
X"24",X"40",X"22",X"5E",X"28",X"5F",X"3A",X"45",X"28",X"5E",X"39",X"45",X"3D",X"41",X"3E",X"42",
|
||||
X"38",X"5E",X"24",X"5A",X"0B",X"5F",X"24",X"40",X"3D",X"42",X"16",X"43",X"00",X"C0",X"1D",X"5D",
|
||||
X"23",X"5F",X"21",X"5D",X"27",X"5C",X"3C",X"47",X"27",X"5C",X"3C",X"47",X"3D",X"41",X"3F",X"43",
|
||||
X"39",X"41",X"21",X"59",X"09",X"5B",X"24",X"5E",X"3E",X"44",X"18",X"46",X"00",X"C0",X"1C",X"5E",
|
||||
X"22",X"5E",X"21",X"5D",X"25",X"59",X"3E",X"48",X"25",X"5A",X"3F",X"48",X"3E",X"42",X"20",X"44",
|
||||
X"3A",X"44",X"3E",X"58",X"07",X"58",X"22",X"5D",X"20",X"44",X"1B",X"49",X"00",X"C0",X"1E",X"43",
|
||||
X"3E",X"5D",X"21",X"5D",X"3D",X"5B",X"20",X"5A",X"23",X"5E",X"26",X"40",X"23",X"42",X"20",X"46",
|
||||
X"3D",X"45",X"21",X"43",X"3E",X"43",X"01",X"5A",X"3A",X"40",X"03",X"53",X"20",X"4D",X"00",X"43",
|
||||
X"00",X"C0",X"1F",X"44",X"3D",X"5E",X"20",X"5C",X"3B",X"5D",X"3E",X"5A",X"22",X"5D",X"26",X"5E",
|
||||
X"23",X"41",X"22",X"45",X"20",X"46",X"22",X"42",X"3F",X"44",X"1F",X"5A",X"3A",X"42",X"1E",X"53",
|
||||
X"25",X"4C",X"01",X"43",X"00",X"C0",X"1F",X"44",X"3E",X"5F",X"3F",X"5D",X"3A",X"5F",X"3C",X"5B",
|
||||
X"21",X"5D",X"24",X"5C",X"23",X"5F",X"25",X"44",X"21",X"46",X"23",X"41",X"21",X"44",X"1C",X"5B",
|
||||
X"3C",X"44",X"19",X"55",X"29",X"49",X"02",X"42",X"00",X"C0",X"02",X"43",X"3C",X"41",X"3E",X"5E",
|
||||
X"3A",X"40",X"3B",X"5E",X"3F",X"5D",X"22",X"5A",X"23",X"5E",X"26",X"42",X"23",X"45",X"24",X"40",
|
||||
X"22",X"45",X"1A",X"5B",X"3E",X"46",X"15",X"58",X"2C",X"45",X"03",X"41",X"00",X"C0",X"03",X"42",
|
||||
X"3D",X"42",X"3D",X"5F",X"3B",X"43",X"3A",X"40",X"3E",X"5D",X"20",X"5A",X"22",X"5D",X"26",X"40",
|
||||
X"25",X"43",X"23",X"5F",X"23",X"42",X"1A",X"5F",X"20",X"46",X"13",X"5D",X"2D",X"40",X"03",X"40",
|
||||
X"00",X"C0",X"04",X"41",X"3E",X"43",X"3C",X"40",X"3D",X"45",X"3A",X"42",X"3D",X"5E",X"3E",X"5A",
|
||||
X"21",X"5D",X"25",X"5E",X"26",X"40",X"22",X"5E",X"24",X"41",X"1A",X"41",X"22",X"46",X"13",X"42",
|
||||
X"2C",X"5B",X"03",X"5F",X"00",X"C0",X"04",X"41",X"3F",X"42",X"3D",X"41",X"3F",X"46",X"3B",X"44",
|
||||
X"3D",X"5F",X"3C",X"5C",X"3F",X"5D",X"24",X"5B",X"26",X"5F",X"21",X"5D",X"22",X"5F",X"1D",X"44",
|
||||
X"24",X"44",X"15",X"47",X"29",X"57",X"02",X"5E",X"00",X"C0",X"03",X"5E",X"21",X"44",X"3E",X"42",
|
||||
X"20",X"46",X"3E",X"45",X"3D",X"41",X"3A",X"5E",X"3E",X"5D",X"22",X"5A",X"25",X"5D",X"20",X"5C",
|
||||
X"23",X"5E",X"1D",X"46",X"26",X"42",X"18",X"4B",X"25",X"54",X"01",X"5D",X"00",X"C0",X"02",X"5D",
|
||||
X"22",X"43",X"3F",X"43",X"23",X"45",X"20",X"46",X"3D",X"42",X"3A",X"40",X"3D",X"5E",X"20",X"5A",
|
||||
X"23",X"5B",X"3F",X"5D",X"22",X"5D",X"1F",X"46",X"26",X"40",X"1D",X"4D",X"20",X"53",X"00",X"5D",
|
||||
X"00",X"C0",X"1F",X"5C",X"25",X"42",X"20",X"44",X"25",X"43",X"22",X"46",X"3E",X"43",X"3A",X"42",
|
||||
X"3D",X"5F",X"3E",X"5B",X"20",X"5A",X"3E",X"5E",X"21",X"5C",X"01",X"46",X"26",X"5E",X"02",X"4D",
|
||||
X"3B",X"54",X"1F",X"5D",X"00",X"C0",X"1F",X"5C",X"24",X"41",X"21",X"43",X"26",X"41",X"24",X"45",
|
||||
X"3F",X"43",X"3C",X"44",X"3D",X"41",X"3B",X"5C",X"3F",X"5A",X"3D",X"5F",X"3F",X"5E",X"04",X"43",
|
||||
X"24",X"5C",X"07",X"4B",X"37",X"57",X"1E",X"5E",X"00",X"C0",X"1E",X"5D",X"24",X"5F",X"22",X"42",
|
||||
X"26",X"40",X"25",X"42",X"21",X"43",X"3E",X"46",X"3D",X"42",X"3A",X"5E",X"3D",X"5B",X"3C",X"40",
|
||||
X"3E",X"5D",X"06",X"43",X"22",X"5A",X"0B",X"48",X"34",X"5B",X"1D",X"5F",X"00",X"C0",X"1D",X"5E",
|
||||
X"23",X"5E",X"23",X"41",X"25",X"5D",X"26",X"40",X"22",X"43",X"20",X"46",X"3E",X"43",X"3A",X"40",
|
||||
X"3B",X"5D",X"3D",X"41",X"3D",X"5E",X"06",X"41",X"20",X"5A",X"0D",X"43",X"33",X"40",X"1D",X"40",
|
||||
X"00",X"C0",X"1C",X"41",X"22",X"5B",X"24",X"40",X"23",X"5B",X"26",X"5E",X"23",X"42",X"22",X"46",
|
||||
X"3F",X"43",X"3B",X"42",X"3A",X"40",X"3E",X"42",X"3C",X"5F",X"06",X"5F",X"3E",X"5A",X"0D",X"5E",
|
||||
X"34",X"45",X"1D",X"41",X"00",X"C0",X"1C",X"41",X"21",X"5C",X"23",X"5F",X"21",X"5A",X"25",X"5C",
|
||||
X"23",X"41",X"24",X"44",X"21",X"43",X"3C",X"45",X"3A",X"41",X"3F",X"43",X"3C",X"41",X"05",X"5C",
|
||||
X"3C",X"5C",X"0B",X"59",X"37",X"49",X"1E",X"42",X"00",X"C0",X"1D",X"42",X"3F",X"5C",X"22",X"5E",
|
||||
X"20",X"5A",X"22",X"5B",X"23",X"5F",X"26",X"42",X"22",X"43",X"3E",X"46",X"3B",X"43",X"20",X"44",
|
||||
X"3B",X"42",X"05",X"5A",X"3A",X"5E",X"08",X"55",X"3B",X"4C",X"1F",X"43",X"00",X"C0",X"00",X"4A",
|
||||
X"3A",X"56",X"24",X"40",X"20",X"5A",X"24",X"40",X"20",X"46",X"24",X"40",X"3A",X"4A",X"00",X"56",
|
||||
X"00",X"C0",X"04",X"49",X"36",X"59",X"24",X"5F",X"3E",X"5A",X"24",X"5F",X"22",X"47",X"24",X"5D",
|
||||
X"3E",X"4B",X"1C",X"57",X"00",X"C0",X"07",X"47",X"35",X"5D",X"23",X"5D",X"3B",X"5C",X"23",X"5D",
|
||||
X"24",X"45",X"23",X"5D",X"23",X"4B",X"19",X"59",X"00",X"C0",X"09",X"44",X"35",X"42",X"21",X"5C",
|
||||
X"3B",X"5E",X"21",X"5C",X"24",X"42",X"23",X"5C",X"27",X"4A",X"17",X"5C",X"00",X"C0",X"0A",X"40",
|
||||
X"36",X"46",X"20",X"5C",X"3A",X"40",X"20",X"5C",X"26",X"40",X"20",X"5C",X"2A",X"46",X"16",X"40",
|
||||
X"00",X"C0",X"09",X"5C",X"39",X"4A",X"3D",X"5C",X"3C",X"42",X"3F",X"5C",X"25",X"5E",X"3F",X"5C",
|
||||
X"2B",X"42",X"17",X"44",X"00",X"C0",X"07",X"59",X"3D",X"4B",X"3D",X"5D",X"3C",X"45",X"3D",X"5D",
|
||||
X"25",X"5C",X"3D",X"5D",X"2B",X"5D",X"19",X"47",X"00",X"C0",X"04",X"57",X"22",X"4B",X"3C",X"5F",
|
||||
X"3E",X"45",X"3C",X"5F",X"22",X"5C",X"3C",X"5D",X"2A",X"59",X"1C",X"49",X"00",X"C0",X"00",X"56",
|
||||
X"26",X"4A",X"3C",X"40",X"20",X"46",X"3C",X"40",X"20",X"5A",X"3C",X"40",X"26",X"56",X"00",X"4A",
|
||||
X"00",X"C0",X"1C",X"57",X"2A",X"47",X"3C",X"43",X"22",X"44",X"3C",X"41",X"3E",X"5B",X"3C",X"41",
|
||||
X"22",X"55",X"04",X"49",X"00",X"C0",X"19",X"59",X"2B",X"43",X"3D",X"43",X"25",X"44",X"3D",X"43",
|
||||
X"3C",X"5B",X"3D",X"43",X"3D",X"55",X"07",X"47",X"00",X"C0",X"17",X"5C",X"2B",X"5E",X"3D",X"44",
|
||||
X"27",X"42",X"3F",X"44",X"3A",X"5E",X"3F",X"44",X"39",X"56",X"09",X"44",X"00",X"C0",X"16",X"40",
|
||||
X"2A",X"5A",X"20",X"44",X"26",X"40",X"20",X"44",X"3A",X"40",X"20",X"44",X"36",X"5A",X"0A",X"40",
|
||||
X"00",X"C0",X"17",X"44",X"27",X"56",X"21",X"44",X"26",X"5E",X"21",X"44",X"39",X"42",X"23",X"44",
|
||||
X"35",X"5E",X"09",X"5C",X"00",X"C0",X"19",X"47",X"23",X"55",X"23",X"43",X"24",X"5B",X"23",X"43");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,278 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity bwidow_vec_rom3 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 bwidow_vec_rom3 is
|
||||
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"3B",X"44",X"23",X"43",X"35",X"43",X"07",X"59",X"00",X"C0",X"1C",X"49",X"3E",X"55",X"24",X"43",
|
||||
X"22",X"59",X"24",X"41",X"3E",X"46",X"24",X"41",X"36",X"47",X"04",X"57",X"00",X"C0",X"00",X"4A",
|
||||
X"3C",X"54",X"3C",X"54",X"28",X"44",X"28",X"5C",X"3C",X"4C",X"3C",X"4C",X"00",X"56",X"00",X"C0",
|
||||
X"04",X"49",X"38",X"57",X"37",X"56",X"29",X"41",X"26",X"59",X"21",X"4D",X"21",X"4C",X"1C",X"57",
|
||||
X"00",X"C0",X"07",X"47",X"35",X"5A",X"34",X"5B",X"29",X"5D",X"23",X"57",X"25",X"4C",X"26",X"4B",
|
||||
X"19",X"59",X"00",X"C0",X"09",X"44",X"34",X"5F",X"33",X"5F",X"27",X"5A",X"3F",X"57",X"2A",X"49",
|
||||
X"29",X"48",X"17",X"5C",X"00",X"C0",X"0A",X"40",X"34",X"44",X"34",X"44",X"24",X"58",X"3C",X"58",
|
||||
X"2C",X"44",X"2C",X"44",X"16",X"40",X"00",X"C0",X"09",X"5C",X"37",X"48",X"36",X"49",X"21",X"57",
|
||||
X"39",X"5A",X"2D",X"5F",X"2C",X"5F",X"17",X"44",X"00",X"C0",X"07",X"59",X"3A",X"4B",X"3B",X"4C",
|
||||
X"3D",X"57",X"37",X"5D",X"2C",X"5B",X"2B",X"5A",X"19",X"47",X"00",X"C0",X"04",X"57",X"3F",X"4C",
|
||||
X"3F",X"4D",X"3A",X"59",X"37",X"41",X"29",X"56",X"28",X"57",X"1C",X"49",X"00",X"C0",X"00",X"56",
|
||||
X"24",X"4C",X"24",X"4C",X"38",X"5C",X"38",X"44",X"24",X"54",X"24",X"54",X"00",X"4A",X"00",X"C0",
|
||||
X"1C",X"57",X"28",X"49",X"29",X"4A",X"37",X"5F",X"3A",X"47",X"3F",X"53",X"3F",X"54",X"04",X"49",
|
||||
X"00",X"C0",X"19",X"59",X"2B",X"46",X"2C",X"45",X"37",X"43",X"3D",X"49",X"3B",X"54",X"3A",X"55",
|
||||
X"07",X"47",X"00",X"C0",X"17",X"5C",X"2C",X"41",X"2D",X"41",X"39",X"46",X"21",X"49",X"36",X"57",
|
||||
X"37",X"58",X"09",X"44",X"00",X"C0",X"16",X"40",X"2C",X"5C",X"2C",X"5C",X"3C",X"48",X"24",X"48",
|
||||
X"34",X"5C",X"34",X"5C",X"0A",X"40",X"00",X"C0",X"17",X"44",X"29",X"58",X"2A",X"57",X"3F",X"49",
|
||||
X"27",X"46",X"33",X"41",X"34",X"41",X"09",X"5C",X"00",X"C0",X"19",X"47",X"26",X"55",X"25",X"54",
|
||||
X"23",X"49",X"29",X"43",X"34",X"45",X"35",X"46",X"07",X"59",X"00",X"C0",X"1C",X"49",X"21",X"54",
|
||||
X"21",X"53",X"26",X"47",X"29",X"5F",X"37",X"4A",X"38",X"49",X"04",X"57",X"00",X"C0",X"1E",X"43",
|
||||
X"3E",X"5D",X"21",X"5D",X"20",X"5E",X"3E",X"5E",X"20",X"5A",X"25",X"43",X"25",X"5D",X"20",X"46",
|
||||
X"3E",X"42",X"20",X"42",X"21",X"43",X"3E",X"43",X"3F",X"41",X"3E",X"40",X"3F",X"5F",X"02",X"5D",
|
||||
X"00",X"C0",X"1F",X"44",X"3D",X"5E",X"20",X"5C",X"3F",X"5F",X"3E",X"5E",X"3D",X"5B",X"26",X"41",
|
||||
X"24",X"5B",X"22",X"46",X"3D",X"42",X"23",X"42",X"22",X"42",X"3F",X"44",X"3F",X"41",X"3D",X"41",
|
||||
X"20",X"40",X"01",X"5C",X"00",X"C0",X"1F",X"44",X"3E",X"5F",X"3F",X"5D",X"3E",X"5F",X"3E",X"40",
|
||||
X"3B",X"5B",X"26",X"5F",X"21",X"5A",X"25",X"45",X"20",X"42",X"21",X"42",X"23",X"41",X"21",X"44",
|
||||
X"20",X"41",X"3E",X"42",X"3D",X"40",X"01",X"5C",X"00",X"C0",X"02",X"43",X"3C",X"41",X"3E",X"5E",
|
||||
X"3E",X"5F",X"3E",X"41",X"3A",X"5E",X"25",X"5C",X"3F",X"5A",X"25",X"43",X"22",X"42",X"21",X"41",
|
||||
X"24",X"40",X"22",X"45",X"20",X"40",X"3F",X"41",X"3F",X"41",X"1E",X"5D",X"00",X"C0",X"03",X"42",
|
||||
X"3D",X"42",X"3D",X"5F",X"3E",X"40",X"3E",X"42",X"3A",X"40",X"23",X"5B",X"3D",X"5B",X"26",X"40",
|
||||
X"22",X"42",X"22",X"40",X"23",X"5F",X"23",X"42",X"21",X"43",X"20",X"40",X"3F",X"41",X"1D",X"5E",
|
||||
X"00",X"C0",X"04",X"41",X"3E",X"43",X"3C",X"40",X"3F",X"41",X"3E",X"42",X"3B",X"43",X"21",X"5A",
|
||||
X"3B",X"5C",X"26",X"5E",X"22",X"43",X"22",X"5D",X"22",X"5E",X"24",X"41",X"21",X"41",X"21",X"43",
|
||||
X"20",X"40",X"1C",X"5F",X"00",X"C0",X"04",X"41",X"3F",X"42",X"3D",X"41",X"3F",X"42",X"20",X"42",
|
||||
X"3B",X"45",X"3F",X"5A",X"3A",X"5F",X"25",X"5B",X"22",X"40",X"22",X"5F",X"21",X"5D",X"22",X"5F",
|
||||
X"23",X"40",X"22",X"42",X"20",X"43",X"1C",X"5F",X"00",X"C0",X"03",X"5E",X"21",X"44",X"3E",X"42",
|
||||
X"3D",X"42",X"23",X"42",X"3E",X"46",X"3C",X"5B",X"3A",X"41",X"23",X"5B",X"22",X"5E",X"21",X"5F",
|
||||
X"20",X"5C",X"23",X"5E",X"20",X"40",X"23",X"41",X"21",X"41",X"1D",X"42",X"00",X"C0",X"02",X"5D",
|
||||
X"22",X"43",X"3F",X"43",X"20",X"42",X"22",X"42",X"20",X"46",X"3B",X"5D",X"3B",X"43",X"20",X"5A",
|
||||
X"22",X"5E",X"20",X"5E",X"3F",X"5D",X"22",X"5D",X"21",X"5F",X"22",X"40",X"21",X"41",X"1E",X"43",
|
||||
X"00",X"C0",X"1F",X"5C",X"25",X"42",X"20",X"44",X"21",X"41",X"22",X"42",X"23",X"45",X"3A",X"5F",
|
||||
X"3C",X"45",X"3E",X"5A",X"21",X"5E",X"3F",X"5E",X"3E",X"5E",X"21",X"5C",X"21",X"5F",X"21",X"5F",
|
||||
X"20",X"40",X"01",X"44",X"00",X"C0",X"1F",X"5C",X"24",X"41",X"21",X"43",X"22",X"41",X"22",X"40",
|
||||
X"25",X"45",X"3A",X"41",X"3F",X"46",X"3B",X"5B",X"20",X"5E",X"3F",X"5E",X"3D",X"5F",X"3F",X"5E",
|
||||
X"20",X"5D",X"22",X"5E",X"21",X"40",X"01",X"44",X"00",X"C0",X"1E",X"5D",X"24",X"5F",X"22",X"42",
|
||||
X"22",X"43",X"22",X"5D",X"26",X"42",X"3B",X"44",X"21",X"46",X"3B",X"5D",X"3E",X"5E",X"3F",X"5F",
|
||||
X"3C",X"40",X"3E",X"5D",X"20",X"40",X"21",X"5D",X"21",X"5F",X"02",X"43",X"00",X"C0",X"1D",X"5E",
|
||||
X"23",X"5E",X"23",X"41",X"22",X"40",X"22",X"5E",X"26",X"40",X"3D",X"45",X"23",X"45",X"3A",X"40",
|
||||
X"3E",X"5E",X"3E",X"40",X"3D",X"41",X"3D",X"5E",X"3F",X"5F",X"20",X"40",X"21",X"5D",X"03",X"42",
|
||||
X"00",X"C0",X"1C",X"41",X"22",X"5B",X"24",X"40",X"21",X"5F",X"22",X"5E",X"25",X"5D",X"3F",X"46",
|
||||
X"25",X"44",X"3A",X"42",X"3E",X"5F",X"3E",X"41",X"3E",X"42",X"3C",X"5F",X"3F",X"5F",X"3F",X"5F",
|
||||
X"20",X"40",X"04",X"5F",X"00",X"C0",X"1C",X"41",X"21",X"5C",X"23",X"5F",X"21",X"5E",X"20",X"5E",
|
||||
X"25",X"5B",X"21",X"46",X"26",X"41",X"3B",X"45",X"3E",X"40",X"3E",X"41",X"3F",X"43",X"3C",X"41",
|
||||
X"3F",X"40",X"3E",X"5E",X"20",X"5F",X"04",X"5F",X"00",X"C0",X"1D",X"42",X"3F",X"5C",X"22",X"5E",
|
||||
X"21",X"5E",X"3F",X"5E",X"22",X"5A",X"24",X"45",X"26",X"5F",X"3D",X"45",X"3E",X"42",X"3F",X"41",
|
||||
X"20",X"44",X"3B",X"42",X"20",X"40",X"3F",X"5F",X"3F",X"5F",X"03",X"5E",X"00",X"C0",X"1E",X"43",
|
||||
X"3A",X"5A",X"20",X"5A",X"26",X"5A",X"24",X"40",X"26",X"46",X"20",X"46",X"3A",X"46",X"1E",X"5D",
|
||||
X"00",X"C0",X"1F",X"44",X"38",X"5C",X"3E",X"5B",X"23",X"58",X"24",X"5E",X"28",X"44",X"22",X"45",
|
||||
X"3D",X"48",X"1D",X"5E",X"00",X"C0",X"1F",X"44",X"39",X"40",X"3C",X"5D",X"20",X"56",X"23",X"5D",
|
||||
X"28",X"40",X"25",X"44",X"20",X"49",X"1C",X"5F",X"00",X"C0",X"02",X"43",X"38",X"43",X"3B",X"5E",
|
||||
X"3C",X"58",X"22",X"5C",X"28",X"5D",X"25",X"42",X"24",X"4A",X"1C",X"5F",X"00",X"C0",X"03",X"42",
|
||||
X"3A",X"46",X"3A",X"40",X"3A",X"5A",X"20",X"5C",X"26",X"5A",X"26",X"40",X"26",X"46",X"1D",X"42",
|
||||
X"00",X"C0",X"04",X"41",X"3C",X"48",X"3B",X"42",X"38",X"5D",X"3E",X"5C",X"24",X"58",X"25",X"5E",
|
||||
X"28",X"43",X"1E",X"43",X"00",X"C0",X"04",X"41",X"20",X"47",X"3B",X"44",X"38",X"40",X"3D",X"5D",
|
||||
X"20",X"58",X"24",X"5B",X"27",X"40",X"01",X"44",X"00",X"C0",X"03",X"5E",X"23",X"48",X"3E",X"45",
|
||||
X"38",X"44",X"3C",X"5E",X"3D",X"58",X"22",X"5B",X"28",X"5C",X"01",X"44",X"00",X"C0",X"02",X"5D",
|
||||
X"26",X"46",X"20",X"46",X"3A",X"46",X"3C",X"40",X"3A",X"5A",X"20",X"5A",X"26",X"5A",X"02",X"43",
|
||||
X"00",X"C0",X"1F",X"5C",X"2A",X"44",X"22",X"45",X"3D",X"48",X"3C",X"42",X"38",X"5C",X"3E",X"5B",
|
||||
X"23",X"58",X"03",X"42",X"00",X"C0",X"1F",X"5C",X"29",X"40",X"24",X"45",X"20",X"48",X"3D",X"43",
|
||||
X"36",X"40",X"3D",X"5C",X"20",X"59",X"04",X"5F",X"00",X"C0",X"1E",X"5D",X"28",X"5D",X"25",X"42",
|
||||
X"24",X"48",X"3E",X"44",X"38",X"43",X"3B",X"5E",X"3C",X"58",X"04",X"5F",X"00",X"C0",X"1D",X"5E",
|
||||
X"26",X"5A",X"26",X"40",X"26",X"46",X"20",X"44",X"3A",X"46",X"3A",X"40",X"3A",X"5A",X"03",X"5E",
|
||||
X"00",X"C0",X"1C",X"41",X"24",X"56",X"25",X"5E",X"28",X"43",X"22",X"44",X"3C",X"48",X"3B",X"42",
|
||||
X"38",X"5D",X"02",X"5D",X"00",X"C0",X"1C",X"41",X"20",X"57",X"23",X"5C",X"2A",X"40",X"23",X"43",
|
||||
X"20",X"4A",X"3C",X"43",X"37",X"40",X"01",X"5C",X"00",X"C0",X"1D",X"42",X"3D",X"58",X"22",X"5B",
|
||||
X"28",X"5C",X"24",X"42",X"23",X"48",X"3E",X"45",X"36",X"44",X"01",X"5C",X"00",X"C0",X"02",X"43",
|
||||
X"22",X"43",X"3F",X"43",X"3E",X"41",X"21",X"5E",X"20",X"5E",X"3E",X"5E",X"3E",X"42",X"20",X"42",
|
||||
X"21",X"42",X"3E",X"5F",X"3F",X"5D",X"22",X"5D",X"02",X"5D",X"00",X"C0",X"03",X"42",X"23",X"42",
|
||||
X"20",X"43",X"3F",X"42",X"20",X"5E",X"3F",X"5E",X"3E",X"5F",X"3E",X"42",X"21",X"42",X"22",X"42",
|
||||
X"3C",X"5F",X"20",X"5E",X"20",X"5D",X"01",X"5C",X"00",X"C0",X"04",X"41",X"23",X"40",X"21",X"43",
|
||||
X"20",X"42",X"3F",X"5E",X"3F",X"5F",X"3D",X"40",X"20",X"43",X"21",X"41",X"22",X"41",X"3E",X"40",
|
||||
X"3D",X"5F",X"3E",X"5D",X"01",X"5C",X"00",X"C0",X"04",X"41",X"23",X"5E",X"22",X"42",X"21",X"42",
|
||||
X"3E",X"5E",X"3E",X"5F",X"3E",X"42",X"21",X"42",X"22",X"41",X"22",X"40",X"3E",X"41",X"3D",X"40",
|
||||
X"3E",X"5D",X"1E",X"5D",X"00",X"C0",X"4E",X"00",X"03",X"5E",X"23",X"5E",X"23",X"41",X"21",X"44",
|
||||
X"3E",X"5D",X"3E",X"40",X"3E",X"42",X"22",X"42",X"22",X"40",X"22",X"5F",X"3F",X"42",X"3D",X"41",
|
||||
X"3D",X"5E",X"1D",X"5E",X"00",X"C0",X"02",X"5D",X"22",X"5D",X"23",X"40",X"22",X"41",X"3E",X"40",
|
||||
X"3E",X"41",X"3F",X"42",X"22",X"42",X"22",X"5F",X"22",X"5E",X"3F",X"44",X"3E",X"40",X"3D",X"40",
|
||||
X"1C",X"5F",X"00",X"C0",X"1F",X"5C",X"22",X"5D",X"23",X"5F",X"22",X"40",X"3E",X"41",X"3F",X"41",
|
||||
X"20",X"43",X"23",X"40",X"21",X"5F",X"21",X"5E",X"20",X"42",X"3F",X"43",X"3D",X"42",X"1C",X"5F",
|
||||
X"00",X"C0",X"1F",X"5C",X"20",X"5D",X"20",X"5E",X"24",X"5F",X"3E",X"42",X"3F",X"42",X"22",X"42",
|
||||
X"22",X"5F",X"21",X"5E",X"20",X"5E",X"21",X"42",X"20",X"43",X"3D",X"42",X"1D",X"42",X"00",X"C0",
|
||||
X"1E",X"5D",X"3E",X"5D",X"21",X"5D",X"22",X"5F",X"3F",X"42",X"20",X"42",X"22",X"42",X"22",X"5E",
|
||||
X"20",X"5E",X"3F",X"5E",X"22",X"41",X"21",X"43",X"3E",X"43",X"1E",X"43",X"00",X"C0",X"1D",X"5E",
|
||||
X"3D",X"5E",X"20",X"5D",X"21",X"5E",X"20",X"42",X"21",X"42",X"22",X"41",X"22",X"5E",X"3F",X"5E",
|
||||
X"3E",X"5E",X"22",X"41",X"22",X"42",X"3E",X"43",X"01",X"44",X"00",X"C0",X"1C",X"41",X"3D",X"5E",
|
||||
X"3F",X"5D",X"20",X"5E",X"21",X"42",X"21",X"41",X"23",X"40",X"20",X"5D",X"3F",X"5F",X"3E",X"5F",
|
||||
X"22",X"40",X"23",X"41",X"20",X"43",X"01",X"44",X"00",X"C0",X"1C",X"41",X"3D",X"40",X"3E",X"40",
|
||||
X"3F",X"5C",X"22",X"42",X"22",X"41",X"22",X"5E",X"3F",X"5E",X"3E",X"5F",X"3E",X"40",X"22",X"5F",
|
||||
X"23",X"40",X"22",X"43",X"02",X"43",X"00",X"C0",X"1D",X"42",X"3D",X"42",X"3D",X"5F",X"3F",X"5E",
|
||||
X"22",X"41",X"22",X"40",X"22",X"5E",X"3E",X"5E",X"3E",X"40",X"3E",X"43",X"21",X"5C",X"23",X"5F",
|
||||
X"23",X"42",X"03",X"42",X"00",X"C0",X"1E",X"43",X"3E",X"43",X"3D",X"40",X"3E",X"5F",X"22",X"40",
|
||||
X"22",X"5F",X"21",X"5E",X"3E",X"5E",X"3E",X"41",X"3E",X"42",X"21",X"5E",X"22",X"5E",X"23",X"42",
|
||||
X"04",X"5F",X"00",X"C0",X"1F",X"44",X"20",X"43",X"3D",X"41",X"3E",X"40",X"22",X"5F",X"21",X"5F",
|
||||
X"20",X"5D",X"3D",X"40",X"3F",X"41",X"3F",X"42",X"20",X"5E",X"21",X"5D",X"23",X"40",X"04",X"5F",
|
||||
X"00",X"C0",X"1F",X"44",X"22",X"43",X"3E",X"42",X"3E",X"41",X"22",X"5E",X"21",X"5E",X"3E",X"5E",
|
||||
X"3E",X"41",X"3F",X"42",X"20",X"42",X"3F",X"5E",X"20",X"5D",X"23",X"5E",X"03",X"5E",X"00",X"C0",
|
||||
X"02",X"43",X"23",X"43",X"3F",X"43",X"3E",X"41",X"21",X"5E",X"20",X"5E",X"3D",X"5E",X"3D",X"42",
|
||||
X"20",X"42",X"21",X"42",X"3E",X"5F",X"3F",X"5D",X"23",X"5D",X"02",X"5D",X"00",X"C0",X"03",X"42",
|
||||
X"24",X"42",X"20",X"43",X"3F",X"41",X"20",X"5E",X"3F",X"5E",X"3D",X"40",X"3E",X"43",X"20",X"42",
|
||||
X"22",X"41",X"3E",X"40",X"3E",X"5D",X"21",X"5D",X"01",X"5C",X"00",X"C0",X"04",X"41",X"24",X"40",
|
||||
X"21",X"43",X"3F",X"42",X"20",X"5E",X"3E",X"5E",X"3D",X"41",X"3F",X"43",X"22",X"42",X"22",X"40",
|
||||
X"3E",X"41",X"3B",X"5F",X"20",X"5C",X"01",X"5C",X"00",X"C0",X"04",X"41",X"23",X"5D",X"23",X"42",
|
||||
X"20",X"42",X"3F",X"5E",X"3E",X"40",X"3D",X"42",X"20",X"43",X"22",X"41",X"22",X"40",X"3F",X"41",
|
||||
X"3D",X"40",X"3E",X"5C",X"1E",X"5D",X"00",X"C0",X"03",X"5E",X"23",X"5D",X"23",X"41",X"21",X"42",
|
||||
X"3E",X"5F",X"3E",X"40",X"3E",X"43",X"22",X"43",X"22",X"40",X"22",X"5F",X"3F",X"42",X"3D",X"41",
|
||||
X"3D",X"5D",X"1D",X"5E",X"00",X"C0",X"02",X"5D",X"22",X"5C",X"23",X"40",X"21",X"41",X"3E",X"40",
|
||||
X"3E",X"41",X"20",X"43",X"23",X"42",X"22",X"40",X"21",X"5E",X"20",X"42",X"3D",X"42",X"3D",X"5F",
|
||||
X"1C",X"5F",X"00",X"C0",X"1F",X"5C",X"20",X"5C",X"25",X"5F",X"22",X"41",X"3E",X"40",X"3E",X"42",
|
||||
X"21",X"43",X"23",X"41",X"22",X"5E",X"20",X"5E",X"21",X"42",X"3F",X"45",X"3C",X"40",X"1C",X"5F",
|
||||
X"00",X"C0",X"1F",X"5C",X"3F",X"5D",X"22",X"5D",X"22",X"40",X"3E",X"41",X"20",X"42",X"22",X"43",
|
||||
X"23",X"40",X"21",X"5E",X"20",X"5E",X"21",X"41",X"20",X"43",X"3C",X"42",X"1D",X"42",X"00",X"C0",
|
||||
X"1E",X"5D",X"3D",X"5D",X"21",X"5D",X"22",X"5F",X"3F",X"42",X"20",X"42",X"23",X"42",X"23",X"5E",
|
||||
X"20",X"5E",X"3F",X"5E",X"22",X"41",X"21",X"43",X"3D",X"43",X"1E",X"43",X"00",X"C0",X"1D",X"5E",
|
||||
X"3C",X"5E",X"20",X"5D",X"21",X"5F",X"20",X"42",X"21",X"42",X"23",X"40",X"22",X"5D",X"20",X"5E",
|
||||
X"3E",X"5F",X"22",X"40",X"22",X"43",X"3D",X"43",X"01",X"44",X"00",X"C0",X"1C",X"41",X"3C",X"40",
|
||||
X"3F",X"5B",X"21",X"5E",X"20",X"42",X"22",X"42",X"23",X"5F",X"21",X"5D",X"3E",X"5E",X"3E",X"40",
|
||||
X"22",X"5F",X"23",X"41",X"20",X"44",X"01",X"44",X"00",X"C0",X"1C",X"41",X"3D",X"41",X"3D",X"5E",
|
||||
X"20",X"5E",X"21",X"42",X"22",X"40",X"23",X"5E",X"20",X"5D",X"3E",X"5F",X"3E",X"40",X"21",X"5F",
|
||||
X"23",X"40",X"22",X"44",X"02",X"43",X"00",X"C0",X"1D",X"42",X"3D",X"43",X"3D",X"5F",X"3F",X"5E",
|
||||
X"22",X"41",X"22",X"40",X"22",X"5D",X"3E",X"5D",X"3E",X"40",X"3E",X"41",X"21",X"5E",X"23",X"5F",
|
||||
X"23",X"43",X"03",X"42",X"00",X"C0",X"1E",X"43",X"3E",X"44",X"3D",X"40",X"3F",X"5F",X"22",X"40",
|
||||
X"22",X"5F",X"20",X"5D",X"3D",X"5E",X"3E",X"40",X"3F",X"42",X"20",X"5E",X"23",X"5E",X"23",X"43",
|
||||
X"04",X"5F",X"00",X"C0",X"1F",X"44",X"20",X"44",X"3D",X"41",X"3E",X"5F",X"22",X"40",X"22",X"5E",
|
||||
X"3F",X"5D",X"3D",X"5F",X"3E",X"42",X"20",X"42",X"3F",X"5E",X"21",X"5D",X"24",X"40",X"04",X"5F",
|
||||
X"00",X"C0",X"1F",X"44",X"23",X"43",X"3E",X"43",X"3E",X"40",X"22",X"5F",X"20",X"5E",X"3E",X"5D",
|
||||
X"3D",X"40",X"3F",X"42",X"20",X"42",X"3F",X"5F",X"20",X"5D",X"24",X"5E",X"03",X"5E",X"00",X"C0",
|
||||
X"02",X"43",X"23",X"43",X"20",X"43",X"3E",X"41",X"21",X"5E",X"3F",X"5E",X"3D",X"5E",X"3D",X"42",
|
||||
X"3F",X"42",X"21",X"42",X"3E",X"5F",X"20",X"5D",X"23",X"5D",X"02",X"5D",X"00",X"C0",X"03",X"42",
|
||||
X"24",X"42",X"21",X"42",X"3F",X"42",X"20",X"5E",X"3E",X"5E",X"3D",X"40",X"3E",X"43",X"3F",X"42",
|
||||
X"22",X"41",X"3E",X"40",X"3F",X"5D",X"21",X"5D",X"01",X"5C",X"00",X"C0",X"04",X"41",X"24",X"40",
|
||||
X"22",X"42",X"3F",X"42",X"3F",X"5E",X"3E",X"5F",X"3D",X"41",X"3F",X"43",X"21",X"42",X"22",X"41",
|
||||
X"3E",X"41",X"3C",X"5E",X"20",X"5C",X"01",X"5C",X"00",X"C0",X"04",X"41",X"23",X"5D",X"23",X"41",
|
||||
X"20",X"42",X"3F",X"40",X"3E",X"5F",X"3D",X"42",X"20",X"43",X"22",X"42",X"22",X"40",X"3E",X"41",
|
||||
X"3E",X"5F",X"3E",X"5C",X"1E",X"5D",X"00",X"C0",X"03",X"5E",X"23",X"5D",X"23",X"40",X"21",X"42",
|
||||
X"3E",X"5F",X"3E",X"41",X"3E",X"43",X"22",X"43",X"22",X"41",X"22",X"5F",X"3F",X"42",X"3D",X"40",
|
||||
X"3D",X"5D",X"1D",X"5E",X"00",X"C0",X"02",X"5D",X"22",X"5C",X"22",X"5F",X"22",X"41",X"3E",X"40",
|
||||
X"3E",X"42",X"20",X"43",X"23",X"42",X"22",X"41",X"21",X"5E",X"20",X"42",X"3D",X"41",X"3D",X"5F",
|
||||
X"1C",X"5F",X"00",X"C0",X"1F",X"5C",X"20",X"5C",X"24",X"5E",X"22",X"41",X"3E",X"41",X"3F",X"42",
|
||||
X"21",X"43",X"23",X"41",X"22",X"5F",X"21",X"5E",X"21",X"42",X"3E",X"44",X"3C",X"40",X"1C",X"5F",
|
||||
X"00",X"C0",X"1F",X"5C",X"3F",X"5D",X"21",X"5D",X"22",X"40",X"3E",X"41",X"21",X"42",X"22",X"43",
|
||||
X"23",X"40",X"22",X"5E",X"20",X"5E",X"21",X"42",X"3F",X"42",X"3C",X"42",X"1D",X"42",X"00",X"C0",
|
||||
X"1E",X"5D",X"3D",X"5D",X"20",X"5D",X"22",X"5F",X"3F",X"42",X"21",X"42",X"23",X"42",X"23",X"5E",
|
||||
X"21",X"5E",X"3F",X"5E",X"22",X"41",X"20",X"43",X"3D",X"43",X"1E",X"43",X"00",X"C0",X"1D",X"5E",
|
||||
X"3C",X"5E",X"3F",X"5E",X"21",X"5E",X"20",X"42",X"22",X"42",X"23",X"40",X"22",X"5D",X"3F",X"5E",
|
||||
X"20",X"5F",X"22",X"40",X"21",X"43",X"3D",X"43",X"01",X"44",X"00",X"C0",X"1C",X"41",X"3C",X"40",
|
||||
X"3E",X"5C",X"21",X"5E",X"21",X"42",X"22",X"41",X"23",X"5F",X"21",X"5D",X"3F",X"5E",X"3E",X"5F",
|
||||
X"22",X"5F",X"22",X"42",X"20",X"44",X"01",X"44",X"00",X"C0",X"1C",X"41",X"3D",X"41",X"3D",X"5F",
|
||||
X"20",X"5E",X"21",X"42",X"22",X"5F",X"23",X"5E",X"20",X"5D",X"3E",X"5E",X"3E",X"40",X"22",X"5F",
|
||||
X"22",X"41",X"22",X"44",X"02",X"43",X"00",X"C0",X"1D",X"42",X"3D",X"43",X"3D",X"40",X"3F",X"5E",
|
||||
X"22",X"41",X"22",X"5F",X"22",X"5D",X"3E",X"5D",X"3E",X"5F",X"3E",X"41",X"21",X"5E",X"23",X"40",
|
||||
X"23",X"43",X"03",X"42",X"00",X"C0",X"1E",X"43",X"3E",X"44",X"3E",X"41",X"3E",X"5F",X"22",X"40",
|
||||
X"22",X"5E",X"20",X"5D",X"3D",X"5E",X"3E",X"41",X"3F",X"40",X"20",X"5E",X"23",X"5F",X"23",X"43",
|
||||
X"04",X"5F",X"00",X"C0",X"1F",X"44",X"20",X"44",X"3E",X"42",X"3E",X"5F",X"22",X"5F",X"21",X"5E",
|
||||
X"3F",X"5D",X"3D",X"5F",X"3E",X"41",X"3F",X"42",X"3F",X"5E",X"22",X"5E",X"24",X"40",X"04",X"5F",
|
||||
X"00",X"C0",X"1F",X"44",X"23",X"43",X"3F",X"43",X"3E",X"40",X"20",X"5F",X"21",X"5E",X"3E",X"5D",
|
||||
X"3D",X"40",X"3E",X"42",X"20",X"42",X"3F",X"5E",X"21",X"5E",X"24",X"5E",X"03",X"5E",X"00",X"C0",
|
||||
X"1E",X"43",X"3D",X"45",X"3F",X"44",X"02",X"54",X"3C",X"43",X"3C",X"5E",X"09",X"5C",X"3A",X"41",
|
||||
X"3D",X"5C",X"0C",X"40",X"0C",X"40",X"3D",X"44",X"3A",X"5F",X"01",X"43",X"24",X"43",X"24",X"5E",
|
||||
X"16",X"42",X"23",X"45",X"21",X"44",X"1A",X"54",X"00",X"C0",X"1F",X"44",X"3F",X"45",X"21",X"44",
|
||||
X"1D",X"55",X"3E",X"44",X"3B",X"40",X"07",X"58",X"3B",X"44",X"3C",X"5F",X"0B",X"59",X"0B",X"5C",
|
||||
X"3F",X"45",X"3A",X"41",X"02",X"42",X"25",X"42",X"22",X"5C",X"18",X"46",X"25",X"43",X"22",X"44",
|
||||
X"16",X"57",X"00",X"C0",X"1F",X"44",X"23",X"45",X"22",X"44",X"19",X"56",X"3F",X"45",X"3C",X"41",
|
||||
X"04",X"57",X"3C",X"45",X"3B",X"5F",X"09",X"58",X"08",X"57",X"21",X"45",X"3B",X"44",X"03",X"41",
|
||||
X"25",X"5F",X"21",X"5C",X"1B",X"49",X"25",X"41",X"24",X"42",X"13",X"5C",X"00",X"C0",X"02",X"43",
|
||||
X"23",X"45",X"24",X"42",X"15",X"5A",X"22",X"45",X"3C",X"42",X"00",X"57",X"3F",X"46",X"3B",X"41",
|
||||
X"04",X"55",X"05",X"55",X"23",X"44",X"3C",X"45",X"04",X"40",X"24",X"5E",X"20",X"5B",X"1E",X"4C",
|
||||
X"25",X"5D",X"24",X"43",X"13",X"5F",X"00",X"C0",X"03",X"42",X"25",X"43",X"24",X"41",X"14",X"5E",
|
||||
X"23",X"44",X"3C",X"44",X"1E",X"57",X"21",X"46",X"3C",X"43",X"00",X"54",X"00",X"54",X"24",X"43",
|
||||
X"3F",X"46",X"03",X"5F",X"23",X"5C",X"3E",X"5C",X"02",X"4A",X"25",X"5D",X"24",X"5F",X"14",X"46",
|
||||
X"00",X"C0",X"04",X"41",X"25",X"41",X"24",X"5F",X"15",X"43",X"24",X"42",X"20",X"45",X"18",X"59",
|
||||
X"24",X"45",X"3D",X"44",X"1B",X"55",X"1C",X"55",X"25",X"41",X"21",X"46",X"02",X"5E",X"22",X"5B",
|
||||
X"3C",X"5E",X"06",X"48",X"23",X"5B",X"24",X"5E",X"17",X"4A",X"00",X"C0",X"04",X"41",X"25",X"5D",
|
||||
X"24",X"5E",X"16",X"47",X"25",X"41",X"21",X"44",X"17",X"5C",X"25",X"44",X"3F",X"45",X"18",X"57",
|
||||
X"17",X"58",X"25",X"5F",X"24",X"45",X"01",X"5D",X"3F",X"5B",X"3C",X"5F",X"07",X"45",X"23",X"5B",
|
||||
X"22",X"5C",X"1C",X"4D",X"00",X"C0",X"03",X"5E",X"25",X"5D",X"22",X"5C",X"1A",X"4B",X"25",X"5E",
|
||||
X"22",X"44",X"17",X"40",X"26",X"41",X"21",X"45",X"15",X"5C",X"15",X"5B",X"24",X"5D",X"25",X"44",
|
||||
X"00",X"5C",X"3E",X"5C",X"3B",X"40",X"0A",X"42",X"3F",X"5B",X"21",X"5C",X"01",X"4D",X"00",X"C0",
|
||||
X"02",X"5D",X"23",X"5B",X"21",X"5C",X"1E",X"4C",X"24",X"5D",X"24",X"44",X"17",X"42",X"26",X"5F",
|
||||
X"23",X"44",X"14",X"40",X"14",X"40",X"23",X"5C",X"26",X"41",X"1F",X"5D",X"3C",X"5D",X"3C",X"42",
|
||||
X"0A",X"5E",X"3D",X"5B",X"3F",X"5C",X"06",X"4C",X"00",X"C0",X"1F",X"5C",X"23",X"5B",X"3D",X"5C",
|
||||
X"05",X"4B",X"22",X"5C",X"25",X"40",X"19",X"48",X"25",X"5C",X"24",X"43",X"15",X"45",X"15",X"44",
|
||||
X"21",X"5B",X"26",X"5F",X"1E",X"5E",X"3B",X"5E",X"3E",X"44",X"08",X"5A",X"3B",X"5D",X"3E",X"5C",
|
||||
X"0A",X"49",X"00",X"C0",X"1F",X"5C",X"3F",X"5B",X"3E",X"5C",X"07",X"4A",X"21",X"5B",X"24",X"5F",
|
||||
X"1C",X"49",X"24",X"5B",X"25",X"41",X"17",X"48",X"18",X"49",X"3F",X"5B",X"25",X"5C",X"1D",X"5F",
|
||||
X"3B",X"41",X"3F",X"44",X"05",X"59",X"3B",X"5D",X"3C",X"5E",X"0D",X"44",X"00",X"C0",X"1E",X"5D",
|
||||
X"3D",X"5B",X"3C",X"5E",X"0B",X"46",X"3E",X"5B",X"24",X"5E",X"00",X"49",X"21",X"5A",X"25",X"5F",
|
||||
X"1C",X"4B",X"19",X"4B",X"3F",X"5C",X"24",X"5B",X"1C",X"40",X"3C",X"42",X"20",X"45",X"02",X"56",
|
||||
X"3B",X"41",X"3C",X"5F",X"0D",X"5F",X"00",X"C0",X"1D",X"5E",X"3B",X"5D",X"3C",X"5F",X"0C",X"42",
|
||||
X"3D",X"5C",X"22",X"5C",X"04",X"49",X"3F",X"5A",X"24",X"5D",X"00",X"4C",X"00",X"4C",X"3C",X"5D",
|
||||
X"21",X"5A",X"1D",X"41",X"3D",X"44",X"22",X"44",X"1E",X"56",X"3B",X"43",X"3C",X"41",X"0C",X"5A",
|
||||
X"00",X"C0",X"1C",X"41",X"3B",X"5D",X"3C",X"43",X"0B",X"5B",X"3C",X"5E",X"20",X"5B",X"08",X"47",
|
||||
X"3C",X"5B",X"21",X"5C",X"07",X"4B",X"04",X"4B",X"3B",X"5F",X"3F",X"5A",X"1E",X"42",X"3E",X"45",
|
||||
X"24",X"42",X"1A",X"58",X"3D",X"45",X"3C",X"42",X"09",X"56",X"00",X"C0",X"1C",X"41",X"3B",X"41",
|
||||
X"3C",X"42",X"0A",X"59",X"3B",X"5F",X"3F",X"5C",X"09",X"44",X"3B",X"5C",X"21",X"5B",X"08",X"49",
|
||||
X"09",X"48",X"3B",X"41",X"3C",X"5B",X"1F",X"43",X"21",X"45",X"24",X"41",X"17",X"5B",X"3F",X"45",
|
||||
X"3E",X"44",X"04",X"53",X"00",X"C0",X"1D",X"42",X"3B",X"43",X"3E",X"44",X"06",X"55",X"3B",X"42",
|
||||
X"3E",X"5C",X"09",X"40",X"3A",X"5F",X"3F",X"5B",X"0B",X"44",X"0B",X"47",X"3C",X"41",X"3B",X"5C",
|
||||
X"00",X"44",X"22",X"44",X"25",X"40",X"14",X"5E",X"23",X"45",X"3D",X"44",X"01",X"53",X"00",X"C0",
|
||||
X"1E",X"43",X"3B",X"43",X"3E",X"44",X"05",X"56",X"3B",X"5F",X"3E",X"5C",X"08",X"42",X"3B",X"5D",
|
||||
X"3E",X"5B",X"0A",X"40",X"0A",X"40",X"3E",X"45",X"3B",X"43",X"08",X"5E",X"3E",X"44",X"3B",X"41",
|
||||
X"1E",X"43",X"25",X"43",X"22",X"44",X"17",X"56",X"00",X"C0",X"1F",X"44",X"3D",X"44",X"20",X"45",
|
||||
X"00",X"55",X"3B",X"41",X"3D",X"5D",X"08",X"5E",X"3A",X"40",X"3D",X"5C",X"09",X"5C",X"09",X"5C",
|
||||
X"20",X"45",X"3D",X"45",X"06",X"5B",X"20",X"45",X"3C",X"42",X"1F",X"44",X"26",X"41",X"23",X"43",
|
||||
X"14",X"5A",X"00",X"C0",X"1F",X"44",X"20",X"45",X"20",X"44",X"1E",X"56",X"3C",X"43",X"3C",X"5E",
|
||||
X"07",X"5C",X"3A",X"41",X"3B",X"40",X"07",X"57",X"07",X"59",X"22",X"45",X"3F",X"46",X"04",X"59",
|
||||
X"22",X"44",X"3D",X"44",X"01",X"44",X"25",X"40",X"24",X"40",X"13",X"5F",X"00",X"C0",X"02",X"43",
|
||||
X"21",X"46",X"23",X"43",X"18",X"58",X"3E",X"44",X"3B",X"40",X"05",X"5A",X"3B",X"43",X"3B",X"40",
|
||||
X"04",X"57",X"04",X"57",X"24",X"43",X"20",X"46",X"02",X"58",X"23",X"43",X"3F",X"45",X"02",X"45",
|
||||
X"24",X"5B",X"25",X"40",X"13",X"44",X"00",X"C0",X"03",X"42",X"23",X"45",X"24",X"42",X"16",X"5B",
|
||||
X"3F",X"45",X"3C",X"42",X"02",X"58",X"3D",X"45",X"3B",X"42",X"00",X"56",X"00",X"56",X"25",X"42",
|
||||
X"23",X"45",X"1E",X"58",X"24",X"42",X"21",X"45",X"03",X"42",X"23",X"5B",X"24",X"5E",X"16",X"49",
|
||||
X"00",X"C0",X"04",X"41",X"24",X"43",X"25",X"40",X"15",X"40",X"21",X"45",X"3D",X"43",X"1E",X"58",
|
||||
X"20",X"46",X"3C",X"43",X"1C",X"57",X"1C",X"57",X"25",X"40",X"25",X"43",X"1B",X"5A",X"25",X"40",
|
||||
X"22",X"44",X"04",X"41",X"21",X"5A",X"23",X"5D",X"1A",X"4C",X"00",X"C0",X"04",X"41",X"25",X"40",
|
||||
X"24",X"40",X"16",X"42",X"23",X"44",X"3E",X"44",X"1C",X"59",X"21",X"46",X"3E",X"45",X"19",X"59",
|
||||
X"19",X"59",X"25",X"5E",X"26",X"41",X"19",X"5C",X"24",X"5E",X"24",X"43",X"02",X"5F",X"20",X"5B",
|
||||
X"20",X"5C",X"01",X"4D",X"00",X"C0",X"03",X"5E",X"26",X"5F",X"23",X"5D",X"18",X"48",X"24",X"42",
|
||||
X"20",X"45",X"1A",X"5B",X"23",X"45",X"20",X"45",X"17",X"5C",X"17",X"5C",X"23",X"5C",X"26",X"40",
|
||||
X"18",X"5E",X"23",X"5D",X"25",X"41",X"03",X"5E",X"3D",X"5C",X"20",X"5B",X"04",X"4D",X"00",X"C0",
|
||||
X"02",X"5D",X"25",X"5D",X"22",X"5C",X"1B",X"4A",X"25",X"41",X"22",X"44",X"18",X"5E",X"25",X"43",
|
||||
X"22",X"45",X"16",X"40",X"16",X"40",X"22",X"5B",X"25",X"5D",X"18",X"42",X"22",X"5C",X"25",X"5F",
|
||||
X"02",X"5D",X"3B",X"5D",X"3E",X"5C",X"09",X"4A",X"00",X"C0",X"1F",X"5C",X"25",X"5C",X"20",X"5B",
|
||||
X"00",X"4B",X"25",X"5F",X"23",X"43",X"18",X"42",X"26",X"40",X"23",X"44",X"17",X"44",X"17",X"44",
|
||||
X"20",X"5B",X"23",X"5B",X"1A",X"45",X"20",X"5B",X"24",X"5E",X"01",X"5C",X"3A",X"5F",X"3D",X"5D",
|
||||
X"0C",X"46",X"00",X"C0",X"1F",X"5C",X"20",X"5B",X"20",X"5C",X"04",X"4A",X"24",X"5D",X"24",X"42",
|
||||
X"19",X"44",X"26",X"5F",X"25",X"42",X"19",X"47",X"17",X"47",X"20",X"5B",X"21",X"5A",X"1C",X"47",
|
||||
X"3E",X"5C",X"23",X"5C",X"1F",X"5E",X"3B",X"40",X"3C",X"40",X"0D",X"5F",X"00",X"C0",X"1E",X"5D",
|
||||
X"3F",X"5A",X"3D",X"5D",X"08",X"48",X"22",X"5C",X"25",X"40",X"1B",X"46",X"25",X"5D",X"25",X"40",
|
||||
X"1C",X"49",X"1C",X"49",X"3C",X"5D",X"20",X"5A",X"1E",X"48",X"3D",X"5D",X"21",X"5B",X"1E",X"5D",
|
||||
X"3C",X"43",X"3B",X"40",X"0D",X"5C",X"00",X"C0",X"1D",X"5E",X"3D",X"5B",X"3C",X"5E",X"0A",X"45",
|
||||
X"3F",X"5B",X"26",X"5E",X"1E",X"48",X"23",X"5B",X"25",X"5E",X"00",X"4A",X"00",X"4A",X"3B",X"5E",
|
||||
X"3D",X"5B",X"02",X"48",X"3C",X"5E",X"3F",X"5B",X"1D",X"5E",X"3D",X"45",X"3C",X"42",X"0A",X"57",
|
||||
X"00",X"C0",X"1C",X"41",X"3C",X"5B",X"3B",X"40",X"0B",X"40",X"3F",X"5B",X"23",X"5D",X"02",X"48",
|
||||
X"20",X"5A",X"24",X"5D",X"04",X"49",X"04",X"49",X"3B",X"40",X"3B",X"5D",X"05",X"46",X"3B",X"40",
|
||||
X"3E",X"5C",X"1C",X"5F",X"3F",X"46",X"3D",X"43",X"06",X"54",X"00",X"C0",X"1C",X"41",X"3B",X"40",
|
||||
X"3C",X"40",X"0A",X"5C",X"3D",X"5C",X"22",X"5C",X"04",X"47",X"3F",X"5A",X"20",X"5B",X"09",X"47",
|
||||
X"07",X"49",X"3B",X"40",X"3A",X"5F",X"07",X"44",X"3C",X"42",X"3C",X"5D",X"1C",X"41",X"20",X"45",
|
||||
X"20",X"44",X"01",X"53",X"00",X"C0",X"1D",X"42",X"3A",X"41",X"3D",X"43",X"08",X"58",X"3C",X"5E",
|
||||
X"20",X"5B",X"06",X"45",X"3D",X"5B",X"20",X"5B",X"09",X"44",X"09",X"44",X"3D",X"44",X"3A",X"40",
|
||||
X"08",X"42",X"3D",X"43",X"3B",X"5F",X"1B",X"42",X"25",X"44",X"20",X"45",X"1C",X"53",X"00",X"C0",
|
||||
X"1E",X"43",X"3A",X"41",X"3E",X"44",X"06",X"58",X"3C",X"5D",X"3E",X"5C",X"07",X"44",X"3C",X"5C",
|
||||
X"3F",X"5B",X"08",X"40",X"08",X"40",X"3F",X"45",X"3C",X"44",X"07",X"5C",X"3E",X"44",X"3C",X"43",
|
||||
X"1E",X"43",X"26",X"41",X"22",X"44",X"16",X"58",X"00",X"C0",X"1F",X"44",X"3B",X"43",X"20",X"44",
|
||||
X"02",X"57",X"3B",X"5E",X"3D",X"5D",X"08",X"41",X"3B",X"5E",X"3D",X"5C",X"07",X"5D",X"08",X"5D",
|
||||
X"21",X"45",X"3E",X"45",X"05",X"5A",X"3F",X"44",X"3E",X"44",X"1F",X"44",X"26",X"5F",X"23",X"43",
|
||||
X"14",X"5C",X"00",X"C0",X"1F",X"44",X"3E",X"44",X"22",X"45",X"1E",X"56",X"3B",X"41",X"3C",X"5E");
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if rising_edge(clk) then
|
||||
data <= rom_data(to_integer(unsigned(addr)));
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
||||
@@ -0,0 +1,278 @@
|
||||
library ieee;
|
||||
use ieee.std_logic_1164.all,ieee.numeric_std.all;
|
||||
|
||||
entity bwidow_vec_rom4 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 bwidow_vec_rom4 is
|
||||
type rom is array(0 to 4095) of std_logic_vector(7 downto 0);
|
||||
signal rom_data: rom := (
|
||||
X"08",X"5E",X"3A",X"40",X"3C",X"5D",X"06",X"5B",X"05",X"5A",X"23",X"44",X"20",X"46",X"02",X"58",
|
||||
X"22",X"44",X"3F",X"45",X"01",X"44",X"24",X"5C",X"25",X"42",X"13",X"41",X"00",X"C0",X"02",X"43",
|
||||
X"3D",X"46",X"25",X"43",X"1A",X"58",X"3C",X"42",X"3C",X"41",X"06",X"5B",X"3B",X"42",X"3B",X"5F",
|
||||
X"03",X"58",X"03",X"59",X"24",X"43",X"22",X"45",X"1F",X"58",X"23",X"43",X"22",X"45",X"02",X"45",
|
||||
X"23",X"59",X"24",X"40",X"15",X"46",X"00",X"C0",X"03",X"42",X"21",X"46",X"24",X"42",X"18",X"5A",
|
||||
X"3D",X"44",X"3C",X"42",X"04",X"59",X"3C",X"44",X"3B",X"41",X"00",X"58",X"00",X"58",X"25",X"41",
|
||||
X"24",X"44",X"1C",X"59",X"24",X"42",X"23",X"44",X"03",X"42",X"21",X"5A",X"24",X"5E",X"18",X"4A",
|
||||
X"00",X"C0",X"04",X"41",X"23",X"45",X"24",X"40",X"17",X"5E",X"3E",X"45",X"3D",X"43",X"01",X"58",
|
||||
X"3E",X"45",X"3C",X"43",X"1D",X"59",X"1D",X"58",X"25",X"5F",X"25",X"42",X"1A",X"5B",X"24",X"41",
|
||||
X"24",X"42",X"04",X"41",X"3D",X"5A",X"25",X"5D",X"1C",X"4C",X"00",X"C0",X"04",X"41",X"24",X"42",
|
||||
X"25",X"5E",X"16",X"42",X"21",X"45",X"3E",X"44",X"1E",X"58",X"20",X"46",X"3D",X"44",X"1B",X"5A",
|
||||
X"1A",X"5B",X"24",X"5D",X"26",X"40",X"18",X"5E",X"24",X"5E",X"25",X"41",X"02",X"5F",X"3E",X"5C",
|
||||
X"22",X"5B",X"01",X"4D",X"00",X"C0",X"03",X"5E",X"26",X"43",X"23",X"5B",X"18",X"46",X"22",X"44",
|
||||
X"21",X"44",X"1B",X"5A",X"22",X"45",X"3F",X"45",X"18",X"5D",X"19",X"5D",X"23",X"5C",X"25",X"5E",
|
||||
X"18",X"41",X"23",X"5D",X"25",X"5E",X"03",X"5E",X"3B",X"5D",X"20",X"5C",X"06",X"4B",X"00",X"C0",
|
||||
X"02",X"5D",X"26",X"5F",X"22",X"5C",X"1A",X"48",X"24",X"43",X"22",X"44",X"19",X"5C",X"24",X"44",
|
||||
X"21",X"45",X"18",X"40",X"18",X"40",X"21",X"5B",X"24",X"5C",X"19",X"44",X"22",X"5C",X"24",X"5D",
|
||||
X"02",X"5D",X"3A",X"5F",X"3E",X"5C",X"0A",X"48",X"00",X"C0",X"1F",X"5C",X"27",X"5D",X"20",X"5C",
|
||||
X"1E",X"49",X"25",X"42",X"23",X"43",X"18",X"5F",X"25",X"42",X"23",X"44",X"19",X"43",X"18",X"43",
|
||||
X"3F",X"5B",X"22",X"5B",X"1B",X"46",X"21",X"5C",X"22",X"5C",X"01",X"5C",X"3A",X"43",X"3D",X"5B",
|
||||
X"0C",X"44",X"00",X"C0",X"1F",X"5C",X"24",X"5C",X"3E",X"5B",X"02",X"4A",X"25",X"5F",X"24",X"42",
|
||||
X"18",X"42",X"26",X"40",X"24",X"43",X"1A",X"45",X"1B",X"46",X"3D",X"5C",X"20",X"5A",X"1E",X"48",
|
||||
X"3E",X"5C",X"21",X"5B",X"1F",X"5E",X"3C",X"42",X"3B",X"5E",X"0D",X"5F",X"00",X"C0",X"1E",X"5D",
|
||||
X"21",X"5A",X"3D",X"5D",X"06",X"48",X"24",X"5E",X"24",X"5F",X"1A",X"45",X"25",X"5E",X"25",X"41",
|
||||
X"1D",X"48",X"1D",X"47",X"3C",X"5D",X"3E",X"5B",X"01",X"48",X"3D",X"5D",X"3E",X"5B",X"1E",X"5D",
|
||||
X"3D",X"45",X"3C",X"40",X"0B",X"5A",X"00",X"C0",X"1D",X"5E",X"3F",X"5A",X"3C",X"5E",X"08",X"46",
|
||||
X"23",X"5C",X"24",X"5E",X"1C",X"47",X"24",X"5C",X"25",X"5F",X"00",X"48",X"00",X"48",X"3B",X"5F",
|
||||
X"3C",X"5C",X"04",X"47",X"3C",X"5E",X"3D",X"5C",X"1D",X"5E",X"3F",X"46",X"3C",X"42",X"08",X"56",
|
||||
X"00",X"C0",X"1C",X"41",X"3D",X"59",X"3C",X"40",X"09",X"42",X"22",X"5B",X"23",X"5D",X"1F",X"48",
|
||||
X"22",X"5B",X"24",X"5D",X"03",X"47",X"03",X"48",X"3B",X"41",X"3B",X"5E",X"06",X"45",X"3C",X"5F",
|
||||
X"3C",X"5E",X"1C",X"5F",X"21",X"46",X"3D",X"43",X"04",X"54",X"00",X"C0",X"1C",X"41",X"3C",X"5C",
|
||||
X"3B",X"42",X"0A",X"5E",X"3F",X"5B",X"22",X"5C",X"02",X"48",X"20",X"5A",X"23",X"5C",X"05",X"46",
|
||||
X"06",X"45",X"3C",X"43",X"3A",X"40",X"08",X"42",X"3C",X"42",X"3B",X"5F",X"1C",X"41",X"24",X"44",
|
||||
X"3E",X"45",X"1F",X"53",X"00",X"C0",X"1D",X"42",X"3A",X"5F",X"3D",X"43",X"08",X"5A",X"3E",X"5C",
|
||||
X"3F",X"5C",X"05",X"46",X"3E",X"5B",X"21",X"5B",X"08",X"43",X"07",X"43",X"3D",X"44",X"3B",X"42",
|
||||
X"08",X"5F",X"3D",X"43",X"3B",X"42",X"1B",X"42",X"27",X"43",X"20",X"44",X"1A",X"55",X"00",X"C0",
|
||||
X"1E",X"43",X"36",X"57",X"3F",X"5C",X"27",X"5E",X"26",X"4C",X"26",X"54",X"27",X"42",X"3F",X"44",
|
||||
X"36",X"49",X"1E",X"5D",X"00",X"C0",X"1F",X"44",X"34",X"5D",X"3D",X"5B",X"26",X"5B",X"2A",X"49",
|
||||
X"3F",X"53",X"29",X"5F",X"21",X"44",X"3A",X"4C",X"1D",X"5E",X"00",X"C0",X"1F",X"44",X"34",X"40",
|
||||
X"3D",X"5E",X"23",X"5A",X"2D",X"44",X"3C",X"53",X"26",X"5D",X"22",X"43",X"20",X"4E",X"1C",X"5F",
|
||||
X"00",X"C0",X"02",X"43",X"34",X"46",X"3C",X"5F",X"21",X"59",X"2D",X"5F",X"37",X"56",X"25",X"5A",
|
||||
X"23",X"43",X"25",X"4E",X"1C",X"5F",X"00",X"C0",X"03",X"42",X"37",X"4A",X"3C",X"41",X"3E",X"59",
|
||||
X"2C",X"5A",X"34",X"5A",X"22",X"59",X"24",X"41",X"29",X"4A",X"1D",X"42",X"00",X"C0",X"04",X"41",
|
||||
X"3B",X"4C",X"3D",X"43",X"3B",X"5A",X"29",X"56",X"33",X"41",X"3F",X"57",X"24",X"5F",X"2C",X"46",
|
||||
X"1E",X"43",X"00",X"C0",X"04",X"41",X"20",X"4C",X"3E",X"43",X"3A",X"5D",X"24",X"53",X"33",X"44",
|
||||
X"3D",X"5A",X"23",X"5E",X"2C",X"40",X"01",X"44",X"00",X"C0",X"03",X"5E",X"26",X"4C",X"3F",X"44",
|
||||
X"37",X"5F",X"21",X"53",X"36",X"49",X"3A",X"5B",X"23",X"5D",X"2C",X"5B",X"01",X"44",X"00",X"C0",
|
||||
X"02",X"5D",X"2A",X"49",X"21",X"44",X"39",X"42",X"3A",X"54",X"3A",X"4C",X"39",X"5E",X"21",X"5C",
|
||||
X"2A",X"57",X"02",X"43",X"00",X"C0",X"1F",X"5C",X"2E",X"45",X"23",X"43",X"3A",X"45",X"36",X"57",
|
||||
X"3F",X"4D",X"39",X"41",X"3F",X"5C",X"26",X"54",X"03",X"42",X"00",X"C0",X"1F",X"5C",X"2E",X"40",
|
||||
X"23",X"42",X"3D",X"46",X"33",X"5C",X"24",X"4D",X"3A",X"43",X"3E",X"5D",X"20",X"54",X"04",X"5F",
|
||||
X"00",X"C0",X"1E",X"5D",X"2C",X"5A",X"24",X"41",X"3F",X"49",X"33",X"5F",X"29",X"4A",X"3B",X"46",
|
||||
X"3B",X"5D",X"3D",X"54",X"04",X"5F",X"00",X"C0",X"1D",X"5E",X"29",X"56",X"24",X"5F",X"22",X"47",
|
||||
X"34",X"46",X"2C",X"46",X"3E",X"47",X"3C",X"5F",X"37",X"56",X"03",X"5E",X"00",X"C0",X"1C",X"41",
|
||||
X"23",X"52",X"25",X"5D",X"25",X"46",X"37",X"4A",X"2D",X"41",X"21",X"47",X"3C",X"41",X"34",X"5A",
|
||||
X"02",X"5D",X"00",X"C0",X"1C",X"41",X"20",X"52",X"22",X"5D",X"26",X"43",X"3C",X"4D",X"2D",X"5C",
|
||||
X"23",X"46",X"3D",X"42",X"32",X"40",X"01",X"5C",X"00",X"C0",X"1D",X"42",X"3A",X"54",X"21",X"5C",
|
||||
X"27",X"41",X"21",X"4D",X"2A",X"57",X"26",X"45",X"3D",X"45",X"32",X"43",X"01",X"5C",X"00",X"C0",
|
||||
X"1E",X"43",X"34",X"5A",X"3F",X"5C",X"27",X"5E",X"28",X"49",X"28",X"57",X"27",X"42",X"3F",X"44",
|
||||
X"34",X"46",X"1E",X"5D",X"00",X"C0",X"1F",X"44",X"33",X"5F",X"3D",X"5E",X"26",X"5A",X"2B",X"45",
|
||||
X"24",X"55",X"27",X"5F",X"21",X"44",X"37",X"4A",X"1D",X"5E",X"00",X"C0",X"1F",X"44",X"35",X"44",
|
||||
X"3C",X"5E",X"24",X"5B",X"2C",X"5F",X"3F",X"54",X"27",X"5C",X"22",X"44",X"3C",X"4D",X"1C",X"5F",
|
||||
X"00",X"C0",X"02",X"43",X"36",X"49",X"3C",X"5F",X"21",X"59",X"2B",X"5C",X"3B",X"55",X"24",X"5A",
|
||||
X"24",X"43",X"21",X"4F",X"1C",X"5F",X"00",X"C0",X"03",X"42",X"3A",X"4C",X"3C",X"41",X"3E",X"59",
|
||||
X"29",X"58",X"37",X"58",X"22",X"59",X"24",X"41",X"26",X"4C",X"1D",X"42",X"00",X"C0",X"04",X"41",
|
||||
X"3F",X"4D",X"3C",X"43",X"3C",X"5A",X"25",X"55",X"35",X"5C",X"3F",X"59",X"24",X"5F",X"2A",X"49",
|
||||
X"1E",X"43",X"00",X"C0",X"04",X"41",X"24",X"4B",X"3E",X"44",X"39",X"5C",X"21",X"54",X"34",X"41",
|
||||
X"3C",X"59",X"24",X"5E",X"2B",X"44",X"01",X"44",X"00",X"C0",X"03",X"5E",X"29",X"4A",X"3F",X"44",
|
||||
X"39",X"5F",X"3C",X"55",X"35",X"45",X"3A",X"5C",X"23",X"5C",X"2D",X"5F",X"01",X"44",X"00",X"C0",
|
||||
X"02",X"5D",X"2C",X"46",X"21",X"44",X"39",X"42",X"38",X"57",X"38",X"49",X"39",X"5E",X"21",X"5C",
|
||||
X"2C",X"5A",X"02",X"43",X"00",X"C0",X"1F",X"5C",X"2F",X"41",X"23",X"44",X"3A",X"44",X"35",X"5B",
|
||||
X"3C",X"4B",X"39",X"41",X"3F",X"5C",X"29",X"56",X"03",X"42",X"00",X"C0",X"1F",X"5C",X"2D",X"5C",
|
||||
X"24",X"42",X"3C",X"47",X"34",X"5F",X"3F",X"4C",X"3B",X"44",X"3E",X"5C",X"24",X"55",X"04",X"5F",
|
||||
X"00",X"C0",X"1E",X"5D",X"2A",X"57",X"24",X"41",X"3F",X"47",X"35",X"44",X"25",X"4B",X"3A",X"46",
|
||||
X"3E",X"5D",X"3F",X"53",X"04",X"5F",X"00",X"C0",X"1D",X"5E",X"26",X"54",X"24",X"5F",X"22",X"47",
|
||||
X"37",X"48",X"29",X"48",X"3E",X"47",X"3C",X"5F",X"3A",X"54",X"03",X"5E",X"00",X"C0",X"1C",X"41",
|
||||
X"21",X"51",X"22",X"5D",X"26",X"46",X"3B",X"4B",X"2B",X"44",X"21",X"47",X"3C",X"41",X"36",X"57",
|
||||
X"02",X"5D",X"00",X"C0",X"1C",X"41",X"3C",X"53",X"22",X"5C",X"25",X"44",X"21",X"4C",X"2C",X"41",
|
||||
X"24",X"45",X"3C",X"42",X"33",X"5C",X"01",X"5C",X"00",X"C0",X"1D",X"42",X"37",X"56",X"21",X"5C",
|
||||
X"27",X"41",X"24",X"4B",X"2B",X"5B",X"26",X"46",X"3D",X"42",X"31",X"41",X"01",X"5C",X"00",X"C0",
|
||||
X"1E",X"43",X"33",X"5D",X"3E",X"5C",X"26",X"5D",X"2B",X"47",X"2B",X"59",X"26",X"43",X"3E",X"44",
|
||||
X"33",X"43",X"1E",X"5D",X"00",X"C0",X"1F",X"44",X"33",X"42",X"3D",X"5D",X"24",X"5B",X"2D",X"42",
|
||||
X"27",X"55",X"27",X"41",X"20",X"44",X"35",X"48",X"1D",X"5E",X"00",X"C0",X"FE",X"00",X"1F",X"44",
|
||||
X"36",X"47",X"3C",X"5E",X"22",X"5A",X"2D",X"5D",X"23",X"53",X"26",X"5E",X"22",X"44",X"39",X"4C",
|
||||
X"1C",X"5F",X"00",X"C0",X"02",X"43",X"38",X"4B",X"3C",X"40",X"3F",X"59",X"2B",X"59",X"3E",X"53",
|
||||
X"25",X"5C",X"23",X"43",X"3E",X"4F",X"1C",X"5F",X"00",X"C0",X"03",X"42",X"3D",X"4D",X"3C",X"42",
|
||||
X"3D",X"5A",X"27",X"55",X"39",X"55",X"23",X"5A",X"24",X"42",X"23",X"4D",X"1D",X"42",X"00",X"C0",
|
||||
X"04",X"41",X"22",X"4D",X"3D",X"43",X"3B",X"5C",X"22",X"53",X"35",X"59",X"21",X"59",X"24",X"40",
|
||||
X"28",X"4B",X"1E",X"43",X"00",X"C0",X"04",X"41",X"27",X"4A",X"3E",X"44",X"3A",X"5E",X"3D",X"53",
|
||||
X"33",X"5D",X"3E",X"5A",X"24",X"5E",X"2A",X"47",X"01",X"44",X"00",X"C0",X"03",X"5E",X"2B",X"48",
|
||||
X"20",X"44",X"39",X"41",X"39",X"55",X"33",X"42",X"3C",X"5B",X"23",X"5D",X"2D",X"42",X"01",X"44",
|
||||
X"00",X"C0",X"02",X"5D",X"2D",X"43",X"22",X"44",X"3A",X"43",X"35",X"59",X"35",X"47",X"3A",X"5D",
|
||||
X"22",X"5C",X"2D",X"5D",X"02",X"43",X"00",X"C0",X"1F",X"5C",X"2F",X"5E",X"23",X"43",X"3C",X"45",
|
||||
X"33",X"5E",X"39",X"4B",X"39",X"5F",X"20",X"5C",X"2B",X"58",X"03",X"42",X"00",X"C0",X"1F",X"5C",
|
||||
X"2C",X"59",X"24",X"42",X"3E",X"46",X"33",X"43",X"3D",X"4D",X"3A",X"42",X"3E",X"5C",X"27",X"56",
|
||||
X"04",X"5F",X"00",X"C0",X"1E",X"5D",X"28",X"55",X"24",X"40",X"21",X"47",X"35",X"47",X"22",X"4D",
|
||||
X"3B",X"44",X"3D",X"5D",X"22",X"53",X"04",X"5F",X"00",X"C0",X"1D",X"5E",X"23",X"53",X"24",X"5E",
|
||||
X"23",X"46",X"39",X"4B",X"27",X"4B",X"3D",X"46",X"3C",X"5E",X"3D",X"53",X"03",X"5E",X"00",X"C0",
|
||||
X"1C",X"41",X"3E",X"51",X"23",X"5D",X"25",X"44",X"3E",X"4D",X"2B",X"47",X"3F",X"47",X"3C",X"40",
|
||||
X"38",X"55",X"02",X"5D",X"00",X"C0",X"1C",X"41",X"39",X"54",X"22",X"5C",X"26",X"42",X"23",X"4D",
|
||||
X"2D",X"43",X"22",X"46",X"3C",X"42",X"34",X"59",X"01",X"5C",X"00",X"C0",X"1D",X"42",X"35",X"58",
|
||||
X"20",X"5C",X"27",X"5F",X"27",X"4B",X"2D",X"5E",X"24",X"45",X"3D",X"43",X"31",X"5E",X"01",X"5C",
|
||||
X"00",X"C0",X"A0",X"A7",X"60",X"A7",X"39",X"BB",X"8B",X"BB",X"E3",X"BB",X"39",X"BC",X"AE",X"BC",
|
||||
X"4D",X"BD",X"00",X"60",X"3F",X"5F",X"C4",X"60",X"24",X"40",X"22",X"5F",X"21",X"5E",X"20",X"5F",
|
||||
X"3B",X"5E",X"3B",X"42",X"20",X"41",X"21",X"42",X"22",X"41",X"87",X"60",X"3D",X"40",X"3D",X"5F",
|
||||
X"3F",X"5F",X"39",X"40",X"3C",X"43",X"20",X"42",X"C4",X"60",X"29",X"45",X"29",X"40",X"22",X"5F",
|
||||
X"22",X"41",X"29",X"40",X"29",X"5B",X"87",X"60",X"20",X"5E",X"3C",X"5D",X"35",X"40",X"00",X"60",
|
||||
X"3B",X"4F",X"C4",X"60",X"37",X"BD",X"C4",X"60",X"24",X"44",X"23",X"41",X"00",X"60",X"3F",X"5E",
|
||||
X"C4",X"60",X"3F",X"40",X"3B",X"5D",X"00",X"60",X"D6",X"1F",X"F8",X"3F",X"C2",X"60",X"3F",X"41",
|
||||
X"3F",X"5F",X"3F",X"40",X"3E",X"43",X"3F",X"40",X"3F",X"5F",X"00",X"60",X"22",X"5E",X"C2",X"60",
|
||||
X"21",X"5F",X"21",X"40",X"00",X"60",X"33",X"4C",X"C2",X"60",X"21",X"40",X"21",X"5E",X"23",X"40",
|
||||
X"21",X"42",X"3B",X"40",X"00",X"60",X"25",X"40",X"87",X"60",X"2F",X"40",X"C2",X"60",X"21",X"5E",
|
||||
X"23",X"40",X"21",X"42",X"3B",X"40",X"00",X"60",X"25",X"40",X"87",X"60",X"2E",X"40",X"00",X"60",
|
||||
X"FC",X"1F",X"D8",X"3F",X"00",X"C0",X"00",X"60",X"20",X"4C",X"C4",X"60",X"21",X"43",X"22",X"43",
|
||||
X"22",X"40",X"00",X"60",X"3F",X"5E",X"C4",X"60",X"3F",X"40",X"3D",X"5C",X"37",X"BD",X"00",X"60",
|
||||
X"EC",X"1F",X"28",X"20",X"C4",X"60",X"3C",X"43",X"38",X"44",X"3D",X"40",X"3D",X"5F",X"3E",X"5E",
|
||||
X"3E",X"42",X"3D",X"41",X"3D",X"40",X"38",X"5C",X"3C",X"5D",X"87",X"60",X"2F",X"43",X"25",X"5E",
|
||||
X"25",X"42",X"2F",X"5D",X"00",X"60",X"34",X"5A",X"C2",X"60",X"21",X"41",X"20",X"41",X"3F",X"41",
|
||||
X"3E",X"40",X"3F",X"5F",X"00",X"60",X"36",X"40",X"C2",X"60",X"3F",X"41",X"3E",X"40",X"3F",X"5F",
|
||||
X"20",X"5F",X"21",X"5F",X"00",X"60",X"34",X"46",X"87",X"60",X"20",X"5E",X"28",X"5C",X"24",X"40",
|
||||
X"24",X"42",X"00",X"60",X"28",X"40",X"87",X"60",X"24",X"5E",X"24",X"40",X"28",X"44",X"20",X"42",
|
||||
X"00",X"60",X"F8",X"1F",X"E0",X"3F",X"C4",X"60",X"21",X"5E",X"20",X"5F",X"3B",X"5E",X"3B",X"42",
|
||||
X"20",X"41",X"21",X"42",X"22",X"41",X"24",X"40",X"22",X"5F",X"00",X"60",X"3E",X"59",X"C2",X"60",
|
||||
X"3F",X"40",X"3F",X"5F",X"3F",X"40",X"3D",X"42",X"3E",X"5F",X"00",X"60",X"22",X"5F",X"C2",X"60",
|
||||
X"21",X"5F",X"22",X"40",X"00",X"C0",X"00",X"60",X"20",X"4C",X"C4",X"60",X"20",X"43",X"22",X"43",
|
||||
X"22",X"41",X"00",X"60",X"3F",X"5D",X"C4",X"60",X"3E",X"5F",X"3F",X"5D",X"37",X"BD",X"00",X"60",
|
||||
X"20",X"5A",X"C4",X"60",X"23",X"43",X"25",X"40",X"28",X"5C",X"24",X"5D",X"87",X"60",X"34",X"45",
|
||||
X"3B",X"40",X"3D",X"5E",X"3D",X"42",X"3B",X"40",X"34",X"5B",X"C4",X"60",X"24",X"43",X"28",X"44",
|
||||
X"25",X"40",X"23",X"5D",X"00",X"60",X"25",X"57",X"C2",X"60",X"20",X"41",X"21",X"41",X"22",X"40",
|
||||
X"21",X"5E",X"3F",X"5F",X"00",X"60",X"33",X"41",X"C2",X"60",X"20",X"41",X"3F",X"41",X"3E",X"40",
|
||||
X"3F",X"5E",X"21",X"5F",X"00",X"60",X"23",X"41",X"87",X"60",X"3C",X"5E",X"3D",X"40",X"3D",X"41",
|
||||
X"3B",X"44",X"20",X"42",X"00",X"60",X"00",X"00",X"50",X"20",X"87",X"60",X"20",X"5E",X"3B",X"5C",
|
||||
X"3D",X"5F",X"3D",X"40",X"3C",X"42",X"C4",X"60",X"20",X"5E",X"3B",X"5E",X"3B",X"42",X"20",X"42",
|
||||
X"22",X"42",X"26",X"40",X"22",X"5E",X"00",X"60",X"20",X"59",X"C2",X"60",X"3E",X"5F",X"3D",X"41",
|
||||
X"3D",X"5F",X"3E",X"41",X"00",X"60",X"23",X"5E",X"C2",X"60",X"24",X"40",X"00",X"60",X"3E",X"4C",
|
||||
X"00",X"C0",X"00",X"60",X"20",X"4F",X"C4",X"60",X"20",X"44",X"21",X"43",X"00",X"60",X"21",X"5E",
|
||||
X"C4",X"60",X"3F",X"5E",X"3F",X"5D",X"23",X"40",X"27",X"5D",X"25",X"5D",X"26",X"5A",X"21",X"5D",
|
||||
X"22",X"41",X"00",X"60",X"3E",X"5F",X"C4",X"60",X"20",X"5E",X"3B",X"59",X"32",X"5A",X"3A",X"40",
|
||||
X"32",X"46",X"3B",X"47",X"20",X"42",X"3E",X"41",X"00",X"60",X"22",X"5F",X"C4",X"60",X"21",X"43",
|
||||
X"26",X"46",X"25",X"43",X"27",X"43",X"23",X"40",X"00",X"60",X"20",X"5D",X"87",X"60",X"3E",X"41",
|
||||
X"3E",X"40",X"3B",X"5E",X"39",X"5A",X"3E",X"5D",X"20",X"5D",X"23",X"5E",X"23",X"5E",X"22",X"40",
|
||||
X"25",X"41",X"00",X"60",X"2A",X"40",X"87",X"60",X"25",X"5F",X"22",X"40",X"23",X"42",X"23",X"42",
|
||||
X"20",X"43",X"3E",X"43",X"39",X"46",X"3B",X"42",X"3E",X"40",X"3E",X"5F",X"00",X"60",X"23",X"53",
|
||||
X"C2",X"60",X"21",X"41",X"22",X"40",X"21",X"5F",X"20",X"5E",X"3E",X"5F",X"3F",X"41",X"00",X"60",
|
||||
X"38",X"40",X"C2",X"60",X"3F",X"5F",X"3E",X"41",X"20",X"42",X"21",X"41",X"22",X"40",X"21",X"5F",
|
||||
X"C4",X"60",X"22",X"42",X"22",X"40",X"22",X"5E",X"21",X"5F",X"20",X"5D",X"3C",X"5E",X"3C",X"42",
|
||||
X"20",X"43",X"21",X"41",X"00",X"60",X"3F",X"57",X"C2",X"60",X"23",X"41",X"22",X"40",X"23",X"5F",
|
||||
X"20",X"5F",X"3D",X"5E",X"3E",X"40",X"3D",X"42",X"20",X"41",X"00",X"60",X"21",X"5E",X"C4",X"60",
|
||||
X"21",X"41",X"21",X"40",X"21",X"5F",X"21",X"41",X"21",X"40",X"21",X"5F",X"00",X"60",X"21",X"5F",
|
||||
X"3E",X"5F",X"3C",X"40",X"3E",X"41",X"00",X"60",X"24",X"4D",X"00",X"C0",X"00",X"60",X"26",X"00",
|
||||
X"00",X"20",X"C4",X"60",X"3F",X"48",X"00",X"60",X"22",X"5E",X"C4",X"60",X"3F",X"5A",X"21",X"40",
|
||||
X"24",X"5F",X"24",X"5D",X"2A",X"52",X"21",X"5E",X"24",X"42",X"00",X"60",X"3C",X"5E",X"C4",X"60",
|
||||
X"20",X"5D",X"3C",X"59",X"35",X"59",X"3C",X"5E",X"3E",X"40",X"3C",X"42",X"35",X"47",X"3C",X"47",
|
||||
X"20",X"43",X"3C",X"42",X"00",X"60",X"24",X"5E",X"C4",X"60",X"21",X"42",X"2A",X"4E",X"24",X"43",
|
||||
X"24",X"41",X"21",X"40",X"00",X"60",X"3F",X"5F",X"87",X"60",X"21",X"5F",X"21",X"41",X"00",X"60",
|
||||
X"3F",X"5C",X"87",X"60",X"3E",X"42",X"3E",X"40",X"3D",X"5E",X"3B",X"57",X"3E",X"5B",X"20",X"5C",
|
||||
X"23",X"5C",X"22",X"40",X"27",X"44",X"00",X"60",X"24",X"40",X"87",X"60",X"27",X"5C",X"22",X"40",
|
||||
X"23",X"44",X"20",X"44",X"3E",X"45",X"3B",X"49",X"3D",X"42",X"3E",X"40",X"3E",X"5E",X"00",X"60",
|
||||
X"DC",X"1F",X"04",X"20",X"C2",X"60",X"20",X"42",X"21",X"41",X"21",X"40",X"21",X"5F",X"20",X"5E",
|
||||
X"3F",X"5F",X"00",X"60",X"22",X"5F",X"C5",X"60",X"22",X"42",X"20",X"43",X"3D",X"43",X"3E",X"40",
|
||||
X"3E",X"5E",X"00",X"60",X"3E",X"40",X"C5",X"60",X"3E",X"42",X"3E",X"40",X"3D",X"5D",X"20",X"5D",
|
||||
X"22",X"5E",X"00",X"60",X"22",X"41",X"C2",X"60",X"3F",X"41",X"20",X"42",X"21",X"41",X"21",X"40",
|
||||
X"21",X"5F",X"20",X"5E",X"C4",X"60",X"21",X"44",X"21",X"41",X"21",X"5F",X"21",X"5C",X"20",X"5D",
|
||||
X"3E",X"5D",X"3E",X"43",X"20",X"43",X"00",X"60",X"21",X"5A",X"C2",X"60",X"22",X"40",X"24",X"5B",
|
||||
X"20",X"5F",X"3E",X"40",X"3E",X"41",X"3E",X"40",X"3E",X"5F",X"3E",X"40",X"20",X"41",X"24",X"45",
|
||||
X"00",X"60",X"3E",X"5A",X"C4",X"60",X"3F",X"41",X"21",X"42",X"22",X"40",X"21",X"5F",X"21",X"41",
|
||||
X"22",X"40",X"21",X"5E",X"3F",X"5F",X"00",X"60",X"20",X"00",X"FA",X"3F",X"00",X"C0",X"25",X"40",
|
||||
X"26",X"5E",X"27",X"5C",X"23",X"5E",X"24",X"5B",X"20",X"5E",X"3D",X"5D",X"39",X"5C",X"3B",X"5E",
|
||||
X"3B",X"5F",X"36",X"40",X"3B",X"41",X"3B",X"42",X"39",X"44",X"3D",X"43",X"20",X"42",X"24",X"45",
|
||||
X"23",X"42",X"27",X"44",X"26",X"42",X"25",X"40",X"00",X"C0",X"00",X"60",X"02",X"00",X"D0",X"3F",
|
||||
X"C4",X"60",X"36",X"5C",X"DA",X"1F",X"16",X"20",X"3F",X"40",X"26",X"00",X"E2",X"3F",X"21",X"43",
|
||||
X"2A",X"44",X"24",X"5D",X"00",X"60",X"3C",X"43",X"C4",X"60",X"3F",X"41",X"37",X"44",X"DA",X"1F",
|
||||
X"EA",X"3F",X"3F",X"40",X"2C",X"00",X"12",X"20",X"23",X"42",X"27",X"5D",X"20",X"5E",X"22",X"5C",
|
||||
X"00",X"60",X"3E",X"46",X"C4",X"60",X"20",X"41",X"21",X"42",X"3C",X"45",X"E4",X"1F",X"DE",X"3F",
|
||||
X"3F",X"40",X"24",X"00",X"24",X"20",X"23",X"40",X"25",X"5A",X"3D",X"5D",X"00",X"60",X"23",X"43",
|
||||
X"C4",X"60",X"23",X"43",X"2A",X"45",X"29",X"42",X"2A",X"40",X"29",X"5E",X"2A",X"5B",X"26",X"5A",
|
||||
X"00",X"60",X"3D",X"43",X"C4",X"60",X"25",X"46",X"23",X"40",X"DC",X"1F",X"24",X"20",X"3F",X"40",
|
||||
X"1C",X"00",X"DE",X"3F",X"3C",X"5B",X"21",X"5E",X"20",X"5F",X"00",X"60",X"3E",X"5A",X"C4",X"60",
|
||||
X"22",X"44",X"20",X"42",X"27",X"43",X"23",X"5E",X"D4",X"1F",X"12",X"20",X"3F",X"40",X"26",X"00",
|
||||
X"EA",X"3F",X"37",X"5C",X"3F",X"5F",X"3C",X"5D",X"00",X"60",X"24",X"43",X"C4",X"60",X"2A",X"5C",
|
||||
X"21",X"5D",X"DA",X"1F",X"E2",X"3F",X"3F",X"40",X"26",X"00",X"16",X"20",X"36",X"44",X"00",X"60",
|
||||
X"FE",X"1F",X"D0",X"3F",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"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"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"48",X"24",X"44",X"24",X"5C",X"20",X"58",X"18",X"44",X"28",X"40",X"04",X"5C",X"00",X"C0",
|
||||
X"20",X"4C",X"26",X"40",X"22",X"5E",X"20",X"5E",X"3E",X"5E",X"3A",X"40",X"06",X"40",X"22",X"5E",
|
||||
X"20",X"5E",X"3E",X"5E",X"3A",X"40",X"52",X"FE",X"20",X"4C",X"28",X"40",X"18",X"54",X"95",X"FE",
|
||||
X"20",X"4C",X"24",X"40",X"24",X"5C",X"20",X"5C",X"3C",X"5C",X"3C",X"40",X"52",X"FE",X"28",X"40",
|
||||
X"18",X"40",X"20",X"4C",X"28",X"40",X"1E",X"5A",X"3A",X"40",X"0C",X"5A",X"00",X"C0",X"20",X"4C",
|
||||
X"28",X"40",X"20",X"5C",X"1C",X"5C",X"24",X"40",X"20",X"5C",X"51",X"FE",X"20",X"4C",X"00",X"5A",
|
||||
X"28",X"40",X"00",X"46",X"AE",X"FE",X"28",X"40",X"18",X"4C",X"28",X"40",X"1C",X"40",X"20",X"54",
|
||||
X"08",X"40",X"00",X"C0",X"00",X"44",X"24",X"5C",X"24",X"40",X"73",X"FE",X"20",X"4C",X"06",X"40",
|
||||
X"3A",X"5A",X"26",X"5A",X"06",X"40",X"00",X"C0",X"00",X"4C",X"20",X"54",X"95",X"FE",X"20",X"4C",
|
||||
X"24",X"5C",X"24",X"44",X"AE",X"FE",X"20",X"4C",X"28",X"54",X"73",X"FE",X"20",X"4C",X"28",X"40",
|
||||
X"20",X"54",X"38",X"40",X"0C",X"40",X"00",X"C0",X"20",X"4C",X"28",X"40",X"20",X"5A",X"38",X"40",
|
||||
X"25",X"FE",X"20",X"4C",X"28",X"40",X"20",X"58",X"3C",X"5C",X"3C",X"40",X"04",X"44",X"24",X"5C",
|
||||
X"96",X"FE",X"20",X"4C",X"28",X"40",X"20",X"5A",X"38",X"40",X"02",X"40",X"26",X"5A",X"96",X"FE",
|
||||
X"28",X"40",X"20",X"46",X"38",X"40",X"20",X"46",X"28",X"40",X"74",X"FE",X"00",X"4C",X"35",X"FE",
|
||||
X"00",X"4C",X"20",X"54",X"28",X"40",X"20",X"4C",X"04",X"54",X"00",X"C0",X"00",X"4C",X"24",X"54",
|
||||
X"24",X"4C",X"74",X"FE",X"00",X"4C",X"20",X"54",X"24",X"44",X"24",X"5C",X"73",X"FE",X"28",X"4C",
|
||||
X"18",X"40",X"28",X"54",X"AF",X"FE",X"04",X"40",X"20",X"48",X"3C",X"44",X"08",X"40",X"3C",X"5C",
|
||||
X"08",X"58",X"00",X"C0",X"00",X"4C",X"28",X"40",X"38",X"54",X"95",X"FE",X"04",X"4C",X"37",X"FE",
|
||||
X"00",X"4C",X"28",X"40",X"20",X"5A",X"38",X"40",X"20",X"5A",X"28",X"40",X"04",X"40",X"00",X"C0",
|
||||
X"00",X"4C",X"28",X"40",X"20",X"54",X"38",X"40",X"00",X"46",X"28",X"40",X"04",X"5A",X"00",X"C0",
|
||||
X"00",X"4C",X"20",X"5A",X"28",X"40",X"00",X"46",X"AE",X"FE",X"00",X"46",X"28",X"40",X"20",X"5A",
|
||||
X"38",X"40",X"20",X"4C",X"0C",X"54",X"00",X"C0",X"00",X"4C",X"28",X"40",X"20",X"54",X"04",X"40",
|
||||
X"00",X"C0",X"20",X"4C",X"99",X"FE",X"08",X"46",X"38",X"40",X"20",X"46",X"AD",X"FE",X"A9",X"FF",
|
||||
X"95",X"FE",X"05",X"00",X"02",X"00",X"21",X"43",X"3E",X"42",X"23",X"40",X"05",X"00",X"02",X"20",
|
||||
X"FB",X"1F",X"02",X"20",X"23",X"40",X"3E",X"5E",X"21",X"5D",X"03",X"00",X"FA",X"3F",X"FD",X"1F",
|
||||
X"FA",X"3F",X"FB",X"1F",X"0E",X"00",X"04",X"40",X"00",X"C0",X"00",X"42",X"20",X"48",X"22",X"42",
|
||||
X"24",X"40",X"22",X"5E",X"20",X"58",X"3E",X"5E",X"3C",X"40",X"3E",X"42",X"06",X"42",X"3C",X"40",
|
||||
X"20",X"44",X"24",X"40",X"06",X"58",X"00",X"C0",X"00",X"46",X"28",X"46",X"20",X"54",X"38",X"46",
|
||||
X"0C",X"5A",X"00",X"C0",X"52",X"BE",X"4E",X"BE",X"8E",X"BE",X"90",X"BE",X"98",X"BE",X"A0",X"BE",
|
||||
X"68",X"BE",X"A5",X"BE",X"AC",X"BE",X"B1",X"BE",X"B3",X"BE",X"00",X"BE",X"08",X"BE",X"14",X"BE",
|
||||
X"18",X"BE",X"1F",X"BE",X"21",X"BE",X"27",X"BE",X"2E",X"BE",X"33",X"BE",X"3A",X"BE",X"3E",X"BE",
|
||||
X"44",X"BE",X"47",X"BE",X"4B",X"BE",X"4E",X"BE",X"54",X"BE",X"59",X"BE",X"61",X"BE",X"68",X"BE",
|
||||
X"6E",X"BE",X"70",X"BE",X"76",X"BE",X"7A",X"BE",X"7F",X"BE",X"83",X"BE",X"8A",X"BE",X"B9",X"BE",
|
||||
X"B8",X"BE",X"B7",X"BE",X"CD",X"BE",X"DC",X"BE",X"00",X"C0",X"40",X"80",X"00",X"71",X"00",X"C0",
|
||||
X"0D",X"BF",X"5E",X"1E",X"3E",X"1E",X"00",X"00",X"84",X"23",X"48",X"03",X"00",X"20",X"00",X"00",
|
||||
X"7C",X"3C",X"B8",X"1C",X"00",X"20",X"00",X"C0",X"5E",X"1E",X"3E",X"1E",X"48",X"03",X"48",X"23",
|
||||
X"C4",X"1F",X"3C",X"20",X"F4",X"1C",X"F4",X"3C",X"78",X"00",X"88",X"3F",X"D0",X"02",X"D0",X"22",
|
||||
X"4C",X"1F",X"B4",X"20",X"6C",X"1D",X"6C",X"3D",X"F0",X"00",X"10",X"3F",X"58",X"02",X"58",X"22",
|
||||
X"D4",X"1E",X"2C",X"21",X"E4",X"1D",X"E4",X"3D",X"68",X"01",X"98",X"3E",X"E0",X"01",X"E0",X"21",
|
||||
X"5C",X"1E",X"A4",X"21",X"5C",X"1E",X"5C",X"3E",X"E0",X"01",X"20",X"3E",X"68",X"01",X"68",X"21",
|
||||
X"E4",X"1D",X"1C",X"22",X"D4",X"1E",X"D4",X"3E",X"58",X"02",X"A8",X"3D",X"F0",X"00",X"F0",X"20",
|
||||
X"6C",X"1D",X"94",X"22",X"4C",X"1F",X"4C",X"3F",X"D0",X"02",X"30",X"3D",X"78",X"00",X"78",X"20",
|
||||
X"F4",X"1C",X"0C",X"23",X"C4",X"1F",X"C4",X"3F",X"48",X"03",X"B8",X"3C",X"01",X"1E",X"00",X"00",
|
||||
X"14",X"71",X"E2",X"FE",X"10",X"00",X"00",X"1F",X"00",X"C0",X"00",X"00",X"00",X"E1",X"5A",X"BF",
|
||||
X"00",X"00",X"00",X"C1",X"5A",X"BF",X"00",X"00",X"00",X"A1",X"5A",X"BF",X"00",X"00",X"00",X"81",
|
||||
X"5A",X"BF",X"00",X"00",X"00",X"61",X"5A",X"BF",X"00",X"00",X"00",X"41",X"00",X"C0",X"17",X"60",
|
||||
X"00",X"00",X"40",X"40",X"10",X"00",X"C0",X"1E",X"00",X"00",X"00",X"21",X"00",X"C0",X"B8",X"1C",
|
||||
X"00",X"20",X"40",X"80",X"00",X"C0",X"00",X"00",X"84",X"23",X"40",X"80",X"00",X"C0",X"C7",X"60",
|
||||
X"40",X"80",X"1C",X"FF",X"99",X"BF",X"00",X"70",X"C0",X"00",X"00",X"00",X"99",X"BF",X"25",X"40",
|
||||
X"99",X"BF",X"40",X"1F",X"00",X"00",X"99",X"BF",X"25",X"40",X"99",X"BF",X"00",X"00",X"00",X"01",
|
||||
X"99",X"BF",X"20",X"45",X"99",X"BF",X"00",X"00",X"00",X"1F",X"99",X"BF",X"20",X"45",X"40",X"80",
|
||||
X"00",X"C0",X"87",X"60",X"40",X"80",X"40",X"80",X"00",X"C0",X"00",X"00",X"84",X"23",X"00",X"5F",
|
||||
X"00",X"00",X"7C",X"3C",X"00",X"C0",X"40",X"80",X"00",X"71",X"87",X"60",X"20",X"00",X"3E",X"1E",
|
||||
X"00",X"C0",X"04",X"4C",X"20",X"5B",X"04",X"5F",X"38",X"40",X"01",X"5F",X"26",X"40",X"FB",X"1F",
|
||||
X"00",X"20",X"3A",X"40",X"FB",X"1F",X"00",X"20",X"26",X"40",X"05",X"40",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"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",
|
||||
X"00",X"00",X"00",X"00",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;
|
||||
@@ -0,0 +1,18 @@
|
||||
//copy /b 136017-101.d1 + 136017-102.ef1 + 136017-103.h1 + 136017-104.j1 + 136017-105.kl1 + 136017-106.m1 BWIDOW.ROM
|
||||
//copy /b 136017-107.l7 + 136017-107.l7 + 136017-108.mn7 + 136017-109.np7 + 136017-110.r7 vec.rom
|
||||
//make_vhdl_prom.exe BWIDOW.ROM bwidow_prog_rom.vhd
|
||||
//make_vhdl_prom.exe vec.rom bwidow_vec_rom.vhd
|
||||
|
||||
make_vhdl_prom.exe 136017-101.d1 bwidow_pgm_rom1.vhd
|
||||
make_vhdl_prom.exe 136017-102.ef1 bwidow_pgm_rom2.vhd
|
||||
make_vhdl_prom.exe 136017-103.h1 bwidow_pgm_rom3.vhd
|
||||
make_vhdl_prom.exe 136017-104.j1 bwidow_pgm_rom4.vhd
|
||||
make_vhdl_prom.exe 136017-105.kl1 bwidow_pgm_rom5.vhd
|
||||
make_vhdl_prom.exe 136017-106.m1 bwidow_pgm_rom6.vhd
|
||||
|
||||
make_vhdl_prom.exe 136017-107.l7 bwidow_vec_rom1.vhd
|
||||
make_vhdl_prom.exe 136017-108.mn7 bwidow_vec_rom2.vhd
|
||||
make_vhdl_prom.exe 136017-109.np7 bwidow_vec_rom3.vhd
|
||||
make_vhdl_prom.exe 136017-110.r7 bwidow_vec_rom4.vhd
|
||||
|
||||
pause
|
||||
81
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/vecrom.vhd
Normal file
81
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/vecrom.vhd
Normal file
@@ -0,0 +1,81 @@
|
||||
--Vector rom. Warning: roma is smaller and mirrored once.
|
||||
|
||||
-- Black Widow arcade hardware implemented in an FPGA
|
||||
-- (C) 2012 Jeroen Domburg (jeroen AT spritesmods.com)
|
||||
--
|
||||
-- This 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.
|
||||
--
|
||||
-- This 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
|
||||
library IEEE;
|
||||
use IEEE.STD_LOGIC_1164.ALL;
|
||||
use IEEE.STD_LOGIC_ARITH.ALL;
|
||||
use IEEE.STD_LOGIC_UNSIGNED.ALL;
|
||||
|
||||
entity vecrom is
|
||||
Port ( addr : in STD_LOGIC_VECTOR (13 downto 0);
|
||||
data : out STD_LOGIC_VECTOR (7 downto 0);
|
||||
clk : in STD_LOGIC
|
||||
);
|
||||
end vecrom;
|
||||
|
||||
architecture Behavioral of vecrom is
|
||||
signal dataa: std_logic_vector(7 downto 0);
|
||||
signal datab: std_logic_vector(7 downto 0);
|
||||
signal datac: std_logic_vector(7 downto 0);
|
||||
signal datad: std_logic_vector(7 downto 0);
|
||||
|
||||
begin
|
||||
|
||||
--136017-107.l7 2048 24576 0110 000000000000
|
||||
--blank 2048 26624 0110 100000000000
|
||||
--136017-108.mn7 4096 28672 0111 000000000000
|
||||
--136017-109.np7 4096 32768 1000 000000000000
|
||||
--136017-110.r7 4096 36864 1001 000000000000
|
||||
|
||||
roma: entity work.bwidow_vec_rom1
|
||||
port map (
|
||||
clk => clk,
|
||||
addr => addr(10 downto 0),
|
||||
data => dataa
|
||||
);
|
||||
|
||||
romb: entity work.bwidow_vec_rom2
|
||||
port map (
|
||||
clk => clk,
|
||||
addr => addr(11 downto 0),
|
||||
data => datab
|
||||
);
|
||||
|
||||
romc: entity work.bwidow_vec_rom3
|
||||
port map (
|
||||
clk => clk,
|
||||
addr => addr(11 downto 0),
|
||||
data => datac
|
||||
);
|
||||
|
||||
romd: entity work.bwidow_vec_rom4
|
||||
port map (
|
||||
clk => clk,
|
||||
addr => addr(11 downto 0),
|
||||
data => datad
|
||||
);
|
||||
|
||||
--Watch the weird inversion of romd and romb!
|
||||
data <= dataa when addr(13 downto 12)="00" else --Mirrors once.
|
||||
datab when addr(13 downto 12)="01" else
|
||||
datac when addr(13 downto 12)="10" else
|
||||
datad when addr(13 downto 12)="11"
|
||||
else "00000000";
|
||||
end Behavioral;
|
||||
|
||||
118
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/vector_drawer.vhd
Normal file
118
Arcade_MiST/Atari Vector/BlackWidow_MiST/rtl/vector_drawer.vhd
Normal file
@@ -0,0 +1,118 @@
|
||||
-- Draws vectors. Gets relative x and y directions and scale, and use these
|
||||
-- to draw a vector from the starting point. It's supposed to be a workalike
|
||||
-- for the Atari AVGs analog stuff plus timers plus normalizer, but this
|
||||
-- implementation differs from it quite a bit. If anything it means the timing
|
||||
-- probably is way off... hope the software doesn't mind.
|
||||
|
||||
-- ToDo: implement something that's a bit closer to reality...
|
||||
-- ToDo: blank when not actively moving
|
||||
|
||||
|
||||
-- Black Widow arcade hardware implemented in an FPGA
|
||||
-- (C) 2012 Jeroen Domburg (jeroen AT spritesmods.com)
|
||||
--
|
||||
-- This 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.
|
||||
--
|
||||
-- This 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
|
||||
library IEEE;
|
||||
use IEEE.STD_LOGIC_1164.ALL;
|
||||
use IEEE.STD_LOGIC_ARITH.ALL;
|
||||
use IEEE.STD_LOGIC_UNSIGNED.ALL;
|
||||
|
||||
--use ieee_proposed.math_utility_pkg.all;
|
||||
--use ieee_proposed.fixed_pkg.all;
|
||||
|
||||
|
||||
entity vector_drawer is
|
||||
Port ( clk : in STD_LOGIC;
|
||||
clk_ena: in STD_LOGIC;
|
||||
scale : in STD_LOGIC_VECTOR (12 downto 0);
|
||||
rel_x : in STD_LOGIC_VECTOR (12 downto 0);
|
||||
rel_y : in STD_LOGIC_VECTOR (12 downto 0);
|
||||
zero: in STD_LOGIC;
|
||||
draw : in STD_LOGIC;
|
||||
done : out STD_LOGIC;
|
||||
xout : out STD_LOGIC_VECTOR (9 downto 0);
|
||||
yout : out STD_LOGIC_VECTOR (9 downto 0)
|
||||
);
|
||||
end vector_drawer;
|
||||
|
||||
architecture Behavioral of vector_drawer is
|
||||
signal xpos: STD_LOGIC_VECTOR(25 downto 0);
|
||||
signal ypos: STD_LOGIC_VECTOR(25 downto 0);
|
||||
signal normrel_x : STD_LOGIC_VECTOR (12 downto 0);
|
||||
signal normrel_y : STD_LOGIC_VECTOR (12 downto 0);
|
||||
signal normscale : STD_LOGIC_VECTOR (12 downto 0);
|
||||
signal itsdone: std_logic;
|
||||
signal normsteps: STD_LOGIC_VECTOR(3 downto 0);
|
||||
signal timer: STD_LOGIC_VECTOR(16 downto 0);
|
||||
begin
|
||||
process(clk)
|
||||
begin
|
||||
if clk'event and clk='1' then
|
||||
if zero='1' then
|
||||
xpos<=(others=>'0');
|
||||
ypos<=(others=>'0');
|
||||
-- itsdone<='1';
|
||||
--Remain at (0,0) for a while to give the beam a chance to actually zero out.
|
||||
--Implemented by drawing a line with dx=dy=0.
|
||||
normsteps<="0000";
|
||||
normrel_x<=(others=>'0');
|
||||
normrel_y<=(others=>'0');
|
||||
timer<=(others=>'0');
|
||||
normscale<="0000010000000";
|
||||
itsdone<='0';
|
||||
elsif itsdone='1' then
|
||||
if draw='1' then
|
||||
--restart drawing the vector
|
||||
itsdone<='0';
|
||||
normsteps<="1111";
|
||||
normrel_x<=rel_x;
|
||||
normrel_y<=rel_y;
|
||||
normscale<=scale;
|
||||
timer<=(others=>'0');
|
||||
end if;
|
||||
elsif normsteps/="0000" then
|
||||
--Normalize.
|
||||
if normrel_x(12)=normrel_x(11) and normrel_y(12)=normrel_y(11) then --and normscale(0)='0' then
|
||||
normsteps<=normsteps-"0001";
|
||||
normrel_x(12 downto 1)<=normrel_x(11 downto 0);
|
||||
normrel_x(0)<='0';
|
||||
normrel_y(12 downto 1)<=normrel_y(11 downto 0);
|
||||
normrel_y(0)<='0';
|
||||
normscale(11 downto 0)<=normscale(12 downto 1);
|
||||
normscale(12)<='0';
|
||||
else
|
||||
normsteps<="0000";
|
||||
end if;
|
||||
else
|
||||
if timer(16 downto 4)>=normscale then
|
||||
itsdone<='1';
|
||||
else
|
||||
xpos<=xpos+sxt(normrel_x, xpos'length);
|
||||
ypos<=ypos+sxt(normrel_y, ypos'length);
|
||||
--timer<=timer+"00000000000000001";
|
||||
--timer<=timer+"00000000000000010";
|
||||
timer<=timer+"00000000000000100";
|
||||
end if;
|
||||
end if;
|
||||
end if;
|
||||
end process;
|
||||
done <= itsdone;
|
||||
-- xout <= xpos(23 downto 14);
|
||||
-- yout <= ypos(23 downto 14);
|
||||
xout <= xpos(22 downto 13);
|
||||
yout <= ypos(22 downto 13);
|
||||
end Behavioral;
|
||||
|
||||
Reference in New Issue
Block a user