From 1b562650d7481e53109eb5e50d206ff1d49f8e49 Mon Sep 17 00:00:00 2001 From: Marcel Date: Sat, 6 Jul 2019 21:23:41 +0200 Subject: [PATCH] Sync Repo --- .../Canyon_Bomber_MiST/clean.bat | 33 +- .../Dominos_MiST/clean.bat | 33 +- .../Sprint2_MiST/clean.bat | 31 +- .../SprintOne_MiST/clean.bat | 31 +- .../SuperBreakout_MiST/clean.bat | 31 +- .../UltraTank_MiST/clean.bat | 31 +- .../280ZZZAP_MiST/280ZZZAP.qpf | 0 .../280ZZZAP_MiST/280ZZZAP.qsf | 0 .../280ZZZAP_MiST/280ZZZAP.sdc | 0 .../Midway8080_MiST}/280ZZZAP_MiST/README.txt | 0 .../280ZZZAP_MiST/Snapshot/280ZZZAP.rbf | Bin .../Midway8080_MiST/280ZZZAP_MiST}/clean.bat | 0 .../280ZZZAP_MiST/doc/Schematic.png | Bin .../280ZZZAP_MiST/rtl/D280ZZZAP_Overlay.vhd | 0 .../280ZZZAP_MiST/rtl/D280ZZZAP_memory.sv | 0 .../280ZZZAP_MiST/rtl/D280ZZZAP_mist.sv | 0 .../280ZZZAP_MiST/rtl/T80/T80.vhd | 0 .../280ZZZAP_MiST/rtl/T80/T8080se.vhd | 0 .../280ZZZAP_MiST/rtl/T80/T80_ALU.vhd | 0 .../280ZZZAP_MiST/rtl/T80/T80_MCode.vhd | 0 .../280ZZZAP_MiST/rtl/T80/T80_Pack.vhd | 0 .../280ZZZAP_MiST/rtl/T80}/T80_Reg.vhd | 0 .../280ZZZAP_MiST/rtl/build_id.tcl | 0 .../280ZZZAP_MiST/rtl/dac.vhd | 0 .../280ZZZAP_MiST/rtl/invaders.vhd | 0 .../280ZZZAP_MiST/rtl/invaders_audio.vhd | 0 .../280ZZZAP_MiST/rtl/mw8080.vhd | 0 .../280ZZZAP_MiST/rtl/pll.ppf | 0 .../280ZZZAP_MiST/rtl/pll.qip | 0 .../280ZZZAP_MiST/rtl/pll.vhd | 0 .../280ZZZAP_MiST/rtl/roms/zzzap_c.hex | 0 .../280ZZZAP_MiST/rtl/roms/zzzap_d.hex | 0 .../280ZZZAP_MiST/rtl/roms/zzzap_e.hex | 0 .../280ZZZAP_MiST/rtl/roms/zzzap_f.hex | 0 .../280ZZZAP_MiST/rtl/roms/zzzap_g.hex | 0 .../280ZZZAP_MiST/rtl/roms/zzzap_h.hex | 0 .../280ZZZAP_MiST/rtl/spram.vhd | 0 .../280ZZZAP_MiST/rtl/sprom.vhd | 0 .../BalloonBomber_MiST/BalloonBomber.qpf} | 11 +- .../BalloonBomber_MiST/BalloonBomber.qsf | 202 +- .../BalloonBomber_MiST}/README.txt | 0 .../BalloonBomber_MiST}/Release/Vortex.rbf | Bin .../BalloonBomber_MiST}/clean.bat | 1 + .../rtl/BalloonBomber_Overlay.vhd | 366 + .../rtl/BalloonBomber_memory.sv | 72 + .../rtl/BalloonBomber_mist.sv | 210 + .../BalloonBomber_MiST}/rtl/T80/T80.vhd | 0 .../BalloonBomber_MiST}/rtl/T80/T8080se.vhd | 0 .../BalloonBomber_MiST}/rtl/T80/T80_ALU.vhd | 0 .../BalloonBomber_MiST}/rtl/T80/T80_MCode.vhd | 0 .../BalloonBomber_MiST}/rtl/T80/T80_Pack.vhd | 0 .../BalloonBomber_MiST}/rtl/T80/T80_Reg.vhd | 0 .../BalloonBomber_MiST}/rtl/build_id.tcl | 0 .../BalloonBomber_MiST/rtl/invaders.vhd | 281 + .../rtl/invaders_audio.vhd | 0 .../BalloonBomber_MiST}/rtl/mw8080.vhd | 0 .../BalloonBomber_MiST}/rtl/pll.qip | 0 .../BalloonBomber_MiST}/rtl/pll.vhd | 0 .../BalloonBomber_MiST/rtl}/roms/ballbomb.zip | Bin 6936 -> 7424 bytes .../BalloonBomber_MiST/rtl/roms/tn01 | Bin 0 -> 2048 bytes .../BalloonBomber_MiST/rtl/roms/tn01.vhd | 150 + .../BalloonBomber_MiST/rtl/roms/tn02 | Bin 0 -> 2048 bytes .../BalloonBomber_MiST/rtl/roms/tn02.vhd | 150 + .../BalloonBomber_MiST/rtl/roms/tn03 | Bin 0 -> 2048 bytes .../BalloonBomber_MiST/rtl/roms/tn03.vhd | 150 + .../BalloonBomber_MiST/rtl/roms/tn04 | Bin 0 -> 2048 bytes .../BalloonBomber_MiST/rtl/roms/tn04.vhd | 150 + .../BalloonBomber_MiST/rtl/roms/tn05-1 | Bin 0 -> 2048 bytes .../BalloonBomber_MiST/rtl/roms/tn05-1.vhd | 150 + .../BalloonBomber_MiST/rtl/roms/tn06 | 1 + .../BalloonBomber_MiST/rtl/roms/tn06.vhd | 86 + .../BalloonBomber_MiST/rtl/roms/tn07 | 1 + .../BalloonBomber_MiST/rtl/roms/tn07.vhd | 86 + .../BalloonBomber_MiST}/rtl/spram.vhd | 0 .../BlueShark_MiST/BlueShark.qpf | 0 .../BlueShark_MiST/BlueShark.qsf | 0 .../BlueShark_MiST/BlueShark.sdc | 0 .../BlueShark_MiST/README.txt | 0 .../BlueShark_MiST/Snapshot/BlueShark.rbf | Bin .../Midway8080_MiST/BlueShark_MiST}/clean.bat | 0 .../doc/Blue_Shark_-_1978_-_Midway_Games.pdf | Bin .../BlueShark_MiST/rtl/BlueShark_Overlay.vhd | 0 .../BlueShark_MiST/rtl/BlueShark_memory.sv | 0 .../BlueShark_MiST/rtl/BlueShark_mist.sv | 0 .../BlueShark_MiST}/rtl/T80/T80.vhd | 0 .../BlueShark_MiST}/rtl/T80/T8080se.vhd | 0 .../BlueShark_MiST}/rtl/T80/T80_ALU.vhd | 0 .../BlueShark_MiST}/rtl/T80/T80_MCode.vhd | 0 .../BlueShark_MiST}/rtl/T80/T80_Pack.vhd | 0 .../BlueShark_MiST/rtl/T80/T80_Reg.vhd | 0 .../BlueShark_MiST}/rtl/build_id.tcl | 0 .../BlueShark_MiST/rtl/dac.vhd | 0 .../BlueShark_MiST/rtl/invaders.vhd | 0 .../BlueShark_MiST}/rtl/invaders_audio.vhd | 0 .../BlueShark_MiST/rtl/mw8080.vhd | 0 .../BlueShark_MiST/rtl/pll.ppf | 0 .../BlueShark_MiST}/rtl/pll.qip | 0 .../BlueShark_MiST/rtl/pll.vhd | 0 .../BlueShark_MiST/rtl/roms/blueshrk_f.hex | 0 .../BlueShark_MiST/rtl/roms/blueshrk_g.hex | 0 .../BlueShark_MiST/rtl/roms/blueshrk_h.hex | 0 .../BlueShark_MiST}/rtl/spram.vhd | 0 .../BlueShark_MiST/rtl/sprom.vhd | 0 .../Midway8080_MiST}/Boothill_MiST/README.txt | 0 .../Boothill_MiST/SpaceWalk.qpf | 0 .../Boothill_MiST/SpaceWalk.qsf | 0 .../Midway8080_MiST/Boothill_MiST}/clean.bat | 0 .../Boothill_MiST/rtl/SpaceWalk_mist.sv | 0 .../Boothill_MiST}/rtl/T80/T80.vhd | 0 .../Boothill_MiST}/rtl/T80/T8080se.vhd | 0 .../Boothill_MiST}/rtl/T80/T80_ALU.vhd | 0 .../Boothill_MiST}/rtl/T80/T80_MCode.vhd | 0 .../Boothill_MiST}/rtl/T80/T80_Pack.vhd | 0 .../Boothill_MiST/rtl/T80/T80_Reg.vhd | 0 .../Boothill_MiST}/rtl/build_id.tcl | 0 .../Boothill_MiST/rtl/dac.vhd | 0 .../Boothill_MiST/rtl/invaders.vhd | 0 .../Boothill_MiST}/rtl/invaders_audio.vhd | 0 .../Boothill_MiST/rtl/invaders_memory.sv | 0 .../Boothill_MiST/rtl}/invaders_video.vhd | 0 .../Boothill_MiST}/rtl/mw8080.vhd | 0 .../Boothill_MiST/rtl/pll.ppf | 0 .../Boothill_MiST}/rtl/pll.qip | 0 .../Boothill_MiST}/rtl/pll.vhd | 0 .../Boothill_MiST/rtl}/roms/rome.cpu | Bin .../Boothill_MiST/rtl/roms/rome.vhd | 0 .../Boothill_MiST/rtl}/roms/romf.cpu | Bin .../Boothill_MiST/rtl/roms/romf.vhd | 0 .../Boothill_MiST/rtl}/roms/romg.cpu | Bin .../Boothill_MiST/rtl/roms/romg.vhd | 0 .../Boothill_MiST/rtl}/roms/romh.cpu | Bin .../Boothill_MiST/rtl/roms/romh.vhd | 0 .../Boothill_MiST}/rtl/spram.vhd | 0 .../Boothill_MiST/rtl/sprom.vhd | 0 .../simulation/modelsim/SpaceWalk.sft | 0 .../simulation/modelsim/SpaceWalk.vho | 0 .../modelsim/SpaceWalk_8_1200mv_0c_slow.vho | 0 .../SpaceWalk_8_1200mv_0c_vhd_slow.sdo | 0 .../modelsim/SpaceWalk_8_1200mv_85c_slow.vho | 0 .../SpaceWalk_8_1200mv_85c_vhd_slow.sdo | 0 .../modelsim/SpaceWalk_min_1200mv_0c_fast.vho | 0 .../SpaceWalk_min_1200mv_0c_vhd_fast.sdo | 0 .../modelsim/SpaceWalk_modelsim.xrf | 0 .../simulation/modelsim/SpaceWalk_vhd.sdo | 0 .../BowlingAlley_MiST/BowlingAlley.qpf | 0 .../BowlingAlley_MiST/BowlingAlley.qsf | 0 .../BowlingAlley_MiST/BowlingAlley.sdc | 0 .../BowlingAlley_MiST/README.txt | 0 .../Snapshot/BowlingAlley.rbf | Bin .../BowlingAlley_MiST}/clean.bat | 0 .../rtl/BowlingAlley_memory.sv | 0 .../rtl/BowlingAlley_mist.sv | 0 .../BowlingAlley_MiST}/rtl/T80/T80.vhd | 0 .../BowlingAlley_MiST}/rtl/T80/T8080se.vhd | 0 .../BowlingAlley_MiST}/rtl/T80/T80_ALU.vhd | 0 .../BowlingAlley_MiST}/rtl/T80/T80_MCode.vhd | 0 .../BowlingAlley_MiST}/rtl/T80/T80_Pack.vhd | 0 .../BowlingAlley_MiST/rtl/T80/T80_Reg.vhd | 0 .../BowlingAlley_MiST}/rtl/build_id.tcl | 0 .../BowlingAlley_MiST/rtl/dac.vhd | 0 .../BowlingAlley_MiST/rtl/invaders.vhd | 0 .../BowlingAlley_MiST}/rtl/invaders_audio.vhd | 0 .../BowlingAlley_MiST}/rtl/mw8080.vhd | 0 .../BowlingAlley_MiST/rtl/pll.ppf | 0 .../BowlingAlley_MiST}/rtl/pll.qip | 0 .../BowlingAlley_MiST/rtl/pll.vhd | 0 .../BowlingAlley_MiST/rtl/roms/d.cpu.hex | 0 .../BowlingAlley_MiST/rtl/roms/e.cpu.hex | 0 .../BowlingAlley_MiST/rtl/roms/f.cpu.hex | 0 .../BowlingAlley_MiST/rtl/roms/g.cpu.hex | 0 .../BowlingAlley_MiST/rtl/roms/h.cpu.hex | 0 .../BowlingAlley_MiST}/rtl/spram.vhd | 0 .../BowlingAlley_MiST/rtl/sprom.vhd | 0 .../Lunar Rescue_MiST/LunarRescue.qpf | 0 .../Lunar Rescue_MiST/LunarRescue.qsf | 0 .../Lunar Rescue_MiST/LunarRescue.sdc | 0 .../Lunar Rescue_MiST/LunarRescue.srf | 0 .../Lunar Rescue_MiST/README.txt | 0 .../Lunar Rescue_MiST/Release/LunarRescue.rbf | Bin .../Lunar Rescue_MiST}/clean.bat | 0 .../rtl/LunarRescue_Overlay.vhd | 0 .../rtl/LunarRescue_memory.sv | 0 .../Lunar Rescue_MiST/rtl/LunarRescue_mist.sv | 0 .../Lunar Rescue_MiST}/rtl/T80/T80.vhd | 0 .../Lunar Rescue_MiST}/rtl/T80/T8080se.vhd | 0 .../Lunar Rescue_MiST}/rtl/T80/T80_ALU.vhd | 0 .../Lunar Rescue_MiST}/rtl/T80/T80_MCode.vhd | 0 .../Lunar Rescue_MiST}/rtl/T80/T80_Pack.vhd | 0 .../Lunar Rescue_MiST/rtl/T80/T80_Reg.vhd | 0 .../Lunar Rescue_MiST}/rtl/build_id.tcl | 0 .../Lunar Rescue_MiST/rtl/dac.vhd | 0 .../Lunar Rescue_MiST/rtl/invaders.vhd | 0 .../Lunar Rescue_MiST}/rtl/invaders_audio.vhd | 0 .../Lunar Rescue_MiST/rtl/mw8080.vhd | 0 .../Lunar Rescue_MiST/rtl/pll.ppf | 0 .../Lunar Rescue_MiST}/rtl/pll.qip | 0 .../Lunar Rescue_MiST/rtl/pll.vhd | 0 .../Lunar Rescue_MiST/rtl/roms/col.bin | 0 .../Lunar Rescue_MiST/rtl/roms/col.vhd | 0 .../Lunar Rescue_MiST/rtl/roms/lrescue_1.hex | 0 .../Lunar Rescue_MiST/rtl/roms/lrescue_2.hex | 0 .../Lunar Rescue_MiST/rtl/roms/lrescue_3.hex | 0 .../Lunar Rescue_MiST/rtl/roms/lrescue_4.hex | 0 .../Lunar Rescue_MiST/rtl/roms/lrescue_5.hex | 0 .../Lunar Rescue_MiST/rtl/roms/lrescue_6.hex | 0 .../Lunar Rescue_MiST}/rtl/spram.vhd | 0 .../Lunar Rescue_MiST/rtl/sprom.vhd | 0 .../Ozma Wars_MiST/OzmaWars.qpf | 0 .../Ozma Wars_MiST/OzmaWars.qsf | 0 .../Ozma Wars_MiST/OzmaWars.sdc | 0 .../Ozma Wars_MiST/README.txt | 0 .../Ozma Wars_MiST/Release/OzmaWars.rbf | Bin .../Midway8080_MiST/Ozma Wars_MiST}/clean.bat | 0 .../Ozma Wars_MiST/rtl/OzmaWars_memory.sv | 0 .../Ozma Wars_MiST/rtl/OzmaWars_mist.sv | 0 .../Ozma Wars_MiST/rtl/OzmaWars_overlay.vhd | 0 .../Ozma Wars_MiST}/rtl/T80/T80.vhd | 0 .../Ozma Wars_MiST}/rtl/T80/T8080se.vhd | 0 .../Ozma Wars_MiST}/rtl/T80/T80_ALU.vhd | 0 .../Ozma Wars_MiST}/rtl/T80/T80_MCode.vhd | 0 .../Ozma Wars_MiST}/rtl/T80/T80_Pack.vhd | 0 .../Ozma Wars_MiST/rtl/T80/T80_Reg.vhd | 0 .../Ozma Wars_MiST}/rtl/build_id.tcl | 0 .../Ozma Wars_MiST/rtl/dac.vhd | 0 .../Ozma Wars_MiST/rtl/invaders.vhd | 0 .../Ozma Wars_MiST}/rtl/invaders_audio.vhd | 0 .../Ozma Wars_MiST}/rtl/mw8080.vhd | 0 .../Ozma Wars_MiST/rtl/pll.ppf | 0 .../Ozma Wars_MiST}/rtl/pll.qip | 0 .../Ozma Wars_MiST/rtl/pll.vhd | 0 .../Ozma Wars_MiST/rtl/roms/mw01.vhd | 0 .../Ozma Wars_MiST/rtl/roms/mw02.vhd | 0 .../Ozma Wars_MiST/rtl/roms/mw03.vhd | 0 .../Ozma Wars_MiST/rtl/roms/mw04.vhd | 0 .../Ozma Wars_MiST/rtl/roms/mw05.vhd | 0 .../Ozma Wars_MiST/rtl/roms/mw06.vhd | 0 .../Ozma Wars_MiST}/rtl/spram.vhd | 0 .../Ozma Wars_MiST/rtl/sprom.vhd | 0 .../Shuffleboard_MiST/README.txt | 0 .../Shuffleboard_MiST/Shuffleboard.qpf | 0 .../Shuffleboard_MiST/Shuffleboard.qsf | 0 .../Shuffleboard_MiST/Shuffleboard.sdc | 0 .../Snapshot/Shuffleboard.rbf | Bin .../Shuffleboard_MiST}/clean.bat | 0 .../rtl/Shuffleboard_memory.sv | 0 .../rtl/Shuffleboard_mist.sv | 0 .../Shuffleboard_MiST}/rtl/T80/T80.vhd | 0 .../Shuffleboard_MiST}/rtl/T80/T8080se.vhd | 0 .../Shuffleboard_MiST}/rtl/T80/T80_ALU.vhd | 0 .../Shuffleboard_MiST}/rtl/T80/T80_MCode.vhd | 0 .../Shuffleboard_MiST}/rtl/T80/T80_Pack.vhd | 0 .../Shuffleboard_MiST/rtl/T80/T80_Reg.vhd | 0 .../Shuffleboard_MiST}/rtl/build_id.tcl | 0 .../Shuffleboard_MiST/rtl/dac.vhd | 0 .../Shuffleboard_MiST/rtl/invaders.vhd | 0 .../Shuffleboard_MiST}/rtl/invaders_audio.vhd | 0 .../Shuffleboard_MiST/rtl/mw8080.vhd | 0 .../Shuffleboard_MiST/rtl/pll.ppf | 0 .../Shuffleboard_MiST}/rtl/pll.qip | 0 .../Shuffleboard_MiST/rtl/pll.vhd | 0 .../Shuffleboard_MiST/rtl/roms/shuffle.e.bin | Bin .../Shuffleboard_MiST/rtl/roms/shuffle.e.hex | 0 .../Shuffleboard_MiST/rtl/roms/shuffle.f.bin | Bin .../Shuffleboard_MiST/rtl/roms/shuffle.f.hex | 0 .../Shuffleboard_MiST/rtl/roms/shuffle.g.bin | Bin .../Shuffleboard_MiST/rtl/roms/shuffle.g.hex | 0 .../Shuffleboard_MiST/rtl/roms/shuffle.h.bin | Bin .../Shuffleboard_MiST/rtl/roms/shuffle.h.hex | 0 .../Shuffleboard_MiST}/rtl/spram.vhd | 0 .../Shuffleboard_MiST/rtl/sprom.vhd | 0 .../Space Invaders 2_MiST/Invaders2.qpf | 0 .../Space Invaders 2_MiST/Invaders2.qsf | 0 .../Space Invaders 2_MiST/Invaders2.sdc | 0 .../Space Invaders 2_MiST/README.txt | 0 .../Release/Invaders2.rbf | Bin .../Space Invaders 2_MiST}/clean.bat | 0 .../rtl/Invaders2_mist.sv | 0 .../Space Invaders 2_MiST}/rtl/T80/T80.vhd | 0 .../rtl/T80/T8080se.vhd | 0 .../rtl/T80/T80_ALU.vhd | 0 .../rtl/T80/T80_MCode.vhd | 0 .../rtl/T80/T80_Pack.vhd | 0 .../Space Invaders 2_MiST/rtl/T80/T80_Reg.vhd | 0 .../Space Invaders 2_MiST}/rtl/build_id.tcl | 0 .../Space Invaders 2_MiST/rtl/dac.vhd | 0 .../Space Invaders 2_MiST/rtl/invaders.vhd | 0 .../rtl/invaders_audio.vhd | 0 .../rtl/invaders_memory.sv | 0 .../rtl/invaders_video.vhd | 0 .../Space Invaders 2_MiST}/rtl/mw8080.vhd | 0 .../Space Invaders 2_MiST/rtl/pll.ppf | 0 .../Space Invaders 2_MiST}/rtl/pll.qip | 0 .../Space Invaders 2_MiST/rtl/pll.vhd | 0 .../rtl/roms/invad2ct.a.hex | 0 .../rtl/roms/invad2ct.b.hex | 0 .../rtl/roms/invad2ct.e.hex | 0 .../rtl/roms/invad2ct.f.hex | 0 .../rtl/roms/invad2ct.g.hex | 0 .../rtl/roms/invad2ct.h.hex | 0 .../Space Invaders 2_MiST}/rtl/spram.vhd | 0 .../Space Invaders 2_MiST/rtl/sprom.vhd | 0 .../Space Invaders_MiST/README.txt | 0 .../Release/SpaceInvaders.rbf | Bin .../Space Invaders_MiST/SpaceInvaders.qpf | 0 .../Space Invaders_MiST/SpaceInvaders.qsf | 0 .../Space Invaders_MiST/SpaceInvaders.sdc | 0 .../Space Invaders_MiST}/clean.bat | 0 .../Space Invaders_MiST}/rtl/T80/T80.vhd | 0 .../Space Invaders_MiST}/rtl/T80/T8080se.vhd | 0 .../Space Invaders_MiST}/rtl/T80/T80_ALU.vhd | 0 .../rtl/T80/T80_MCode.vhd | 0 .../Space Invaders_MiST}/rtl/T80/T80_Pack.vhd | 0 .../Space Invaders_MiST/rtl/T80/T80_Reg.vhd | 0 .../Space Invaders_MiST}/rtl/build_id.tcl | 0 .../Space Invaders_MiST/rtl/dac.vhd | 0 .../Space Invaders_MiST/rtl/invaders.vhd | 0 .../rtl/invaders_audio.vhd | 0 .../Space Invaders_MiST}/rtl/mw8080.vhd | 0 .../Space Invaders_MiST/rtl/pll.ppf | 0 .../Space Invaders_MiST}/rtl/pll.qip | 0 .../Space Invaders_MiST/rtl/pll.vhd | 0 .../rtl/roms/invaders_e.hex | 0 .../rtl/roms/invaders_f.hex | 0 .../rtl/roms/invaders_g.hex | 0 .../rtl/roms/invaders_h.hex | 0 .../rtl/spaceinvaders_memory.sv | 0 .../rtl/spaceinvaders_mist.sv | 0 .../rtl/spaceinvaders_overlay.vhd | 0 .../Space Invaders_MiST}/rtl/spram.vhd | 0 .../Space Invaders_MiST/rtl/sprom.vhd | 0 .../SpaceLaser_MiST/README.txt | 0 .../SpaceLaser_MiST/Release/SpaceLaser.rbf | Bin .../SpaceLaser_MiST/SpaceLaser.qpf | 0 .../SpaceLaser_MiST/SpaceLaser.qsf | 0 .../SpaceLaser_MiST/SpaceLaser.sdc | 0 .../SpaceLaser_MiST/SpaceLaser.srf | 0 .../SpaceLaser_MiST}/clean.bat | 0 .../SpaceLaser_MiST}/rtl/T80/T80.vhd | 0 .../SpaceLaser_MiST}/rtl/T80/T8080se.vhd | 0 .../SpaceLaser_MiST}/rtl/T80/T80_ALU.vhd | 0 .../SpaceLaser_MiST}/rtl/T80/T80_MCode.vhd | 0 .../SpaceLaser_MiST}/rtl/T80/T80_Pack.vhd | 0 .../SpaceLaser_MiST/rtl/T80/T80_Reg.vhd | 0 .../SpaceLaser_MiST}/rtl/build_id.tcl | 0 .../SpaceLaser_MiST/rtl/dac.vhd | 0 .../SpaceLaser_MiST/rtl/invaders.vhd | 0 .../SpaceLaser_MiST}/rtl/invaders_audio.vhd | 0 .../SpaceLaser_MiST/rtl/mw8080.vhd | 0 .../SpaceLaser_MiST/rtl/pll.ppf | 0 .../SpaceLaser_MiST}/rtl/pll.qip | 0 .../SpaceLaser_MiST/rtl/pll.vhd | 0 .../SpaceLaser_MiST/rtl/roms/clr.vhd | 0 .../SpaceLaser_MiST/rtl/roms/la01.hex | 0 .../SpaceLaser_MiST/rtl/roms/la02.hex | 0 .../SpaceLaser_MiST/rtl/roms/la03.hex | 0 .../SpaceLaser_MiST/rtl/roms/la04.hex | 0 .../SpaceLaser_MiST/rtl/spacelaser_memory.sv | 0 .../SpaceLaser_MiST/rtl/spacelaser_mist.sv | 0 .../rtl/spacelaser_overlay.vhd | 0 .../SpaceLaser_MiST}/rtl/spram.vhd | 0 .../SpaceLaser_MiST/rtl/sprom.vhd | 0 .../SpaceWalk_MiST/README.txt | 0 .../SpaceWalk_MiST/SpaceWalk.qpf | 0 .../SpaceWalk_MiST/SpaceWalk.qsf | 0 .../SpaceWalk_MiST/SpaceWalk.sdc | 0 .../Midway8080_MiST/SpaceWalk_MiST}/clean.bat | 0 .../SpaceWalk_MiST/rtl/SpaceWalk_mist.sv | 0 .../SpaceWalk_MiST}/rtl/T80/T80.vhd | 0 .../SpaceWalk_MiST}/rtl/T80/T8080se.vhd | 0 .../SpaceWalk_MiST}/rtl/T80/T80_ALU.vhd | 0 .../SpaceWalk_MiST}/rtl/T80/T80_MCode.vhd | 0 .../SpaceWalk_MiST}/rtl/T80/T80_Pack.vhd | 0 .../SpaceWalk_MiST/rtl/T80/T80_Reg.vhd | 0 .../SpaceWalk_MiST}/rtl/build_id.tcl | 0 .../SpaceWalk_MiST/rtl/dac.vhd | 0 .../SpaceWalk_MiST/rtl/invaders.vhd | 0 .../SpaceWalk_MiST}/rtl/invaders_audio.vhd | 0 .../SpaceWalk_MiST/rtl/invaders_memory.sv | 0 .../SpaceWalk_MiST}/rtl/invaders_video.vhd | 0 .../SpaceWalk_MiST}/rtl/mw8080.vhd | 0 .../SpaceWalk_MiST/rtl/pll.ppf | 0 .../SpaceWalk_MiST}/rtl/pll.qip | 0 .../SpaceWalk_MiST/rtl/pll.vhd | 0 .../SpaceWalk_MiST/rtl/roms/sw.a.bin | Bin .../SpaceWalk_MiST/rtl/roms/sw.a.hex | 0 .../SpaceWalk_MiST/rtl/roms/sw.b.bin | Bin .../SpaceWalk_MiST/rtl/roms/sw.b.hex | 0 .../SpaceWalk_MiST/rtl/roms/sw.c.bin | Bin .../SpaceWalk_MiST/rtl/roms/sw.c.hex | 0 .../SpaceWalk_MiST/rtl/roms/sw.d.bin | Bin .../SpaceWalk_MiST/rtl/roms/sw.d.hex | 0 .../SpaceWalk_MiST/rtl/roms/sw.e.bin | Bin .../SpaceWalk_MiST/rtl/roms/sw.e.hex | 0 .../SpaceWalk_MiST/rtl/roms/sw.f.bin | Bin .../SpaceWalk_MiST/rtl/roms/sw.f.hex | 0 .../SpaceWalk_MiST/rtl/roms/sw.g.bin | Bin .../SpaceWalk_MiST/rtl/roms/sw.g.hex | 0 .../SpaceWalk_MiST/rtl/roms/sw.h.bin | Bin .../SpaceWalk_MiST/rtl/roms/sw.h.hex | 0 .../SpaceWalk_MiST}/rtl/spram.vhd | 0 .../SpaceWalk_MiST/rtl/sprom.vhd | 0 .../Super Earth Invasion_MiST/README.txt | 0 .../Release/SuperEarthInvasion.rbf | Bin .../SuperEarthInvasion.qpf | 0 .../SuperEarthInvasion.qsf | 0 .../SuperEarthInvasion.sdc | 0 .../Super Earth Invasion_MiST}/clean.bat | 0 .../rtl/SuperEarthInvasion_memory.sv | 0 .../rtl/SuperEarthInvasion_mist.sv | 0 .../rtl/SuperEarthInvasion_overlay.vhd | 0 .../rtl/T80/T80.vhd | 0 .../rtl/T80/T8080se.vhd | 0 .../rtl/T80/T80_ALU.vhd | 0 .../rtl/T80/T80_MCode.vhd | 0 .../rtl/T80/T80_Pack.vhd | 0 .../rtl/T80/T80_Reg.vhd | 0 .../rtl/build_id.tcl | 0 .../Super Earth Invasion_MiST/rtl/dac.vhd | 0 .../rtl/invaders.vhd | 0 .../rtl/invaders_audio.vhd | 0 .../Super Earth Invasion_MiST/rtl/mw8080.vhd | 0 .../Super Earth Invasion_MiST/rtl/pll.ppf | 0 .../Super Earth Invasion_MiST}/rtl/pll.qip | 0 .../Super Earth Invasion_MiST/rtl/pll.vhd | 0 .../rtl/roms/earthinv_e.hex | 0 .../rtl/roms/earthinv_f.hex | 0 .../rtl/roms/earthinv_g.hex | 0 .../rtl/roms/earthinv_h.hex | 0 .../Super Earth Invasion_MiST}/rtl/spram.vhd | 0 .../Super Earth Invasion_MiST/rtl/sprom.vhd | 0 .../Midway8080_MiST/Vortex_MiST/README.txt | 27 + .../Vortex_MiST/Release/Vortex.rbf | Bin 0 -> 252426 bytes .../Midway8080_MiST}/Vortex_MiST/Vortex.qpf | 0 .../Midway8080_MiST}/Vortex_MiST/Vortex.qsf | 3 - .../Midway8080_MiST}/Vortex_MiST/clean.bat | 1 + .../Vortex_MiST/rtl/T80}/T80.vhd | 46 +- .../Vortex_MiST/rtl/T80/T8080se.vhd | 194 + .../Vortex_MiST/rtl/T80}/T80_ALU.vhd | 12 +- .../Vortex_MiST/rtl/T80}/T80_MCode.vhd | 138 +- .../Vortex_MiST/rtl/T80}/T80_Pack.vhd | 13 +- .../Vortex_MiST/rtl/T80/T80_Reg.vhd | 0 .../Vortex_MiST/rtl/Vortex_memory.sv | 0 .../Vortex_MiST/rtl/Vortex_mist.sv | 0 .../Vortex_MiST/rtl/build_id.tcl | 35 + .../Vortex_MiST/rtl/invaders.vhd | 0 .../Vortex_MiST/rtl}/invaders_audio.vhd | 2 +- .../Vortex_MiST/rtl/mw8080.vhd | 336 + .../Midway8080_MiST/Vortex_MiST/rtl/pll.qip} | 4 +- .../Midway8080_MiST/Vortex_MiST/rtl/pll.vhd} | 46 +- .../Vortex_MiST/rtl/roms/1.t36.vhd | 0 .../Vortex_MiST/rtl/roms/2.t35.vhd | 0 .../Vortex_MiST/rtl/roms/3.t34.vhd | 0 .../Vortex_MiST/rtl/roms/4.t33.vhd | 0 .../Vortex_MiST/rtl/roms/5.t32.vhd | 0 .../Vortex_MiST/rtl/roms/6.t31.vhd | 0 .../Midway8080_MiST/Vortex_MiST/rtl/spram.vhd | 55 + .../ReadMe.txt | 0 .../Midway8080_MiST/Midway8080.qsf | 165 - .../Midway8080_MiST/Midway8080.sdc | 126 - .../Release/Galaxy_Wars(Midway8080).rbf | Bin 255089 -> 0 bytes .../Release/Lunar_Rescue(Midway8080).rbf | Bin 263716 -> 0 bytes .../Release/Space_Attack_II(Midway8080).rbf | Bin 256664 -> 0 bytes .../Release/Space_Invaders(Midway8080).rbf | Bin 255302 -> 0 bytes .../Space_Invaders_Deluxe(Midway8080).rbf | Bin 261619 -> 0 bytes .../Release/Space_Laser(Midway8080).rbf | Bin 257005 -> 0 bytes .../Super_Earth_Invasion(Midway8080).rbf | Bin 255851 -> 0 bytes .../Midway8080_MiST/readme.txt | 25 - .../Midway8080_MiST/roms/280zzzap.hex | 194 - .../Midway8080_MiST/roms/Midway8080.txt | 1639 - .../Midway8080_MiST/roms/bin2hex.exe | Bin 17615 -> 0 bytes .../Midway8080_MiST/roms/bomb1.hex | 322 - .../Midway8080_MiST/roms/bomb2.hex | 66 - .../Midway8080_MiST/roms/boothill.hex | 258 - .../Midway8080_MiST/roms/bowler1.hex | 258 - .../Midway8080_MiST/roms/bowler2.hex | 66 - .../Midway8080_MiST/roms/checkmat.e | Bin 1024 -> 0 bytes .../Midway8080_MiST/roms/checkmat.g | Bin 1024 -> 0 bytes .../Midway8080_MiST/roms/checkmat.h | Bin 1024 -> 0 bytes .../Midway8080_MiST/roms/checkmate.hex | 130 - .../Midway8080_MiST/roms/d.cpu | Bin 2048 -> 0 bytes .../Midway8080_MiST/roms/deluxe.bin | Bin 10240 -> 0 bytes .../Midway8080_MiST/roms/e.cpu | Bin 2048 -> 0 bytes .../Midway8080_MiST/roms/f.cpu | Bin 2048 -> 0 bytes .../Midway8080_MiST/roms/g.cpu | Bin 2048 -> 0 bytes .../Midway8080_MiST/roms/galxwars0.hex | 257 - .../Midway8080_MiST/roms/galxwars1.hex | 129 - .../Midway8080_MiST/roms/gunfight.hex | 130 - .../Midway8080_MiST/roms/h.cpu | Bin 2048 -> 0 bytes .../Midway8080_MiST/roms/invaddlx.zip | Bin 8339 -> 0 bytes .../Midway8080_MiST/roms/invaders0.hex | 513 - .../Midway8080_MiST/roms/invadpt20.hex | 513 - .../Midway8080_MiST/roms/invadpt21.hex | 129 - .../Midway8080_MiST/roms/invdelux.d | Bin 2048 -> 0 bytes .../Midway8080_MiST/roms/invdelux.e | Bin 2048 -> 0 bytes .../Midway8080_MiST/roms/invdelux.g | Bin 2048 -> 0 bytes .../Midway8080_MiST/roms/invdelux.h | Bin 2048 -> 0 bytes .../Midway8080_MiST/roms/invdeluxe.hex | 322 - .../Midway8080_MiST/roms/jatrespecter.hex | 258 - .../Midway8080_MiST/roms/jpecter.hex | 130 - .../Midway8080_MiST/roms/jspecter.zip | Bin 5062 -> 0 bytes .../Midway8080_MiST/roms/jspecter2.zip | Bin 5018 -> 0 bytes .../Midway8080_MiST/roms/laser1.bin | Bin 8192 -> 0 bytes .../Midway8080_MiST/roms/laser1.hex | 258 - .../Midway8080_MiST/roms/laser2.bin | 193 - .../Midway8080_MiST/roms/laser2.hex | 34 - .../Midway8080_MiST/roms/lrescue0.hex | 513 - .../Midway8080_MiST/roms/lrescue1.hex | 257 - .../Midway8080_MiST/roms/lupinIII-1.hex | 258 - .../Midway8080_MiST/roms/lupinIII-2.hex | 194 - .../Midway8080_MiST/roms/p2clouds.f2 | Bin 2048 -> 0 bytes .../Midway8080_MiST/roms/phantom2.e | Bin 2048 -> 0 bytes .../Midway8080_MiST/roms/phantom2.g | Bin 2048 -> 0 bytes .../Midway8080_MiST/roms/phantom2.h | Bin 2048 -> 0 bytes .../Midway8080_MiST/roms/phantomII.hex | 258 - .../Midway8080_MiST/roms/phantomIIprom.hex | 66 - .../Midway8080_MiST/roms/searthin.hex | 258 - .../Midway8080_MiST/roms/searthin.zip | Bin 6751 -> 0 bytes .../Midway8080_MiST/roms/searthina.zip | Bin 7281 -> 0 bytes .../Midway8080_MiST/roms/sivram.hex | 449 - .../Midway8080_MiST/roms/spaceatt.e | Bin 2048 -> 0 bytes .../Midway8080_MiST/roms/spaceatt.g | Bin 2048 -> 0 bytes .../Midway8080_MiST/roms/spaceatt.h | Bin 2048 -> 0 bytes .../Midway8080_MiST/roms/spaceatt.hex | 258 - .../Midway8080_MiST/roms/spaceenc1.hex | 258 - .../Midway8080_MiST/roms/spaceenc2.hex | 258 - .../Midway8080_MiST/roms/yosakdon.hex | 226 - .../Midway8080_MiST/roms/yosakdona.hex | 34 - .../Midway8080_MiST/roms/zzzapc | Bin 1024 -> 0 bytes .../Midway8080_MiST/roms/zzzapd | Bin 1024 -> 0 bytes .../Midway8080_MiST/roms/zzzape | Bin 1024 -> 0 bytes .../Midway8080_MiST/roms/zzzapf | Bin 1024 -> 0 bytes .../Midway8080_MiST/roms/zzzapg | Bin 1024 -> 0 bytes .../Midway8080_MiST/roms/zzzaph | Bin 1024 -> 0 bytes .../Midway8080_MiST/src/Graphics.VHD | 272 - .../Midway8080_MiST/src/InputMapper.VHDL | 119 - .../Midway8080_MiST/src/Inputs.VHD | 112 - .../Midway8080_MiST/src/Sound.vhd | 91 - .../Midway8080_MiST/src/T80se.vhd | 192 - .../Midway8080_MiST/src/Z80.vhd | 135 - .../Midway8080_MiST/src/altera_mem.vhd | 144 - .../Midway8080_MiST/src/bitmapctl.vhd | 121 - .../Midway8080_MiST/src/bitmapctl_e.vhd | 30 - .../Midway8080_MiST/src/clk_div.vhd | 39 - .../Midway8080_MiST/src/dpram.vhd | 123 - .../Midway8080_MiST/src/dpram_1r1w.vhd | 102 - .../Midway8080_MiST/src/mist/custom_io.vhd | 25 - .../Midway8080_MiST/src/mist/keyboard.v | 72 - .../Midway8080_MiST/src/mist/ps2_intf.v | 141 - .../src/mist/sigma_delta_dac.vhd | 33 - .../Midway8080_MiST/src/mist/target_pkg.vhd | 30 - .../Midway8080_MiST/src/mist/target_top.vhd | 332 - .../Midway8080_MiST/src/pace.vhd | 199 - .../Midway8080_MiST/src/pace_pkg.vhd | 278 - .../Midway8080_MiST/src/pace_pkg_body.vhd | 20 - .../Midway8080_MiST/src/platform.vhd | 385 - .../Midway8080_MiST/src/platform_pkg.vhd | 39 - .../src/platform_variant_pkg.vhd | 116 - .../Midway8080_MiST/src/pll.vhd | 186 - .../Midway8080_MiST/src/project_pkg.vhd | 52 - .../Midway8080_MiST/src/ps2kbd.vhd | 202 - .../Midway8080_MiST/src/ps2kbd_pkg.vhd | 111 - .../Midway8080_MiST/src/spram.vhd | 84 - .../Midway8080_MiST/src/sprite_pkg.vhd | 97 - .../Midway8080_MiST/src/sprite_pkg_body.vhd | 62 - .../Midway8080_MiST/src/sprom.vhd | 77 - .../Midway8080_MiST/src/tilemapctl_e.vhd | 29 - .../Midway8080_MiST/src/video_controller.vhd | 466 - .../src/video_controller_pkg.vhd | 230 - .../src/video_controller_pkg_body.vhd | 29 - .../Midway8080_MiST/src/video_mixer.vhd | 66 - .../simulation/modelsim/280ZZZAP.sft | 6 - .../simulation/modelsim/280ZZZAP.vho | 71815 --------------- .../modelsim/280ZZZAP_8_1200mv_0c_slow.vho | 71815 --------------- .../280ZZZAP_8_1200mv_0c_vhd_slow.sdo | 61945 ------------- .../modelsim/280ZZZAP_8_1200mv_85c_slow.vho | 71815 --------------- .../280ZZZAP_8_1200mv_85c_vhd_slow.sdo | 61945 ------------- .../modelsim/280ZZZAP_min_1200mv_0c_fast.vho | 71815 --------------- .../280ZZZAP_min_1200mv_0c_vhd_fast.sdo | 61945 ------------- .../simulation/modelsim/280ZZZAP_modelsim.xrf | 4041 - .../simulation/modelsim/280ZZZAP_vhd.sdo | 61945 ------------- .../Boothill_MiST/rtl/roms/rome.cpu | Bin 2048 -> 0 bytes .../Boothill_MiST/rtl/roms/romf.cpu | Bin 2048 -> 0 bytes .../Boothill_MiST/rtl/roms/romg.cpu | Bin 2048 -> 0 bytes .../Boothill_MiST/rtl/roms/romh.cpu | Bin 2048 -> 0 bytes .../simulation/modelsim/OzmaWars.sft | 6 - .../simulation/modelsim/OzmaWars.vho | 74348 ---------------- .../modelsim/OzmaWars_8_1200mv_0c_slow.vho | 74348 ---------------- .../OzmaWars_8_1200mv_0c_vhd_slow.sdo | 64322 ------------- .../modelsim/OzmaWars_8_1200mv_85c_slow.vho | 74348 ---------------- .../OzmaWars_8_1200mv_85c_vhd_slow.sdo | 64322 ------------- .../modelsim/OzmaWars_min_1200mv_0c_fast.vho | 74348 ---------------- .../OzmaWars_min_1200mv_0c_vhd_fast.sdo | 64322 ------------- .../simulation/modelsim/OzmaWars_modelsim.xrf | 4171 - .../simulation/modelsim/OzmaWars_vhd.sdo | 64322 ------------- .../SpaceWalk_MiST/rtl/invaders_video.vhd | 127 - .../Midway8080v2_MiST/Vortex_MiST/rtl/dac.vhd | 48 - .../Vortex_MiST/rtl/sprom.vhd | 82 - .../Phoenix_MIST/rtl/Phoenix_MiST.sv | 2 - .../Pleiads_MIST/rtl/Pleiads_MiST.sv | 2 - .../Phoenix Hardware/Survival_MIST/README.txt | 28 + Arcade_MiST/README.txt | 3 +- .../AS-2518-51_snd-master/AS-2518-51_snd.qpf | 30 - .../AS-2518-51_snd-master/README.txt | 6 - .../Release/AS-2518-51_snd.rbf | Bin 236224 -> 0 bytes .../AS-2518-51_snd-master/clean.bat | 37 - .../rtl/AS-2518-51_core.vhd | 165 - .../AS-2518-51_snd-master/rtl/Debouncer.vhd | 43 - .../AS-2518-51_snd-master/rtl/Keyboard.vhd | 61 - .../rtl/KeyboardMapper.vhd | 170 - .../AS-2518-51_snd-master/rtl/MPU_RAM.vhd | 181 - .../rtl/PS2Controller.vhd | 209 - .../rtl/ROM/NitroGroundshaker.hex | 129 - .../AS-2518-51_snd-master/rtl/U4_ROM.qip | 3 - .../AS-2518-51_snd-master/rtl/U4_ROM.vhd | 143 - .../rtl/ay-3-8910-core.Vhd | 375 - .../AS-2518-51_snd-master/rtl/ay-3-8910.Vhd | 262 - .../rtl/ay-3-8910_vectors.vhd | 1165 - .../AS-2518-51_snd-master/rtl/cpu68.vhd | 3962 - .../AS-2518-51_snd-master/rtl/dac.vhd | 71 - .../rtl/greybox_tmp/cbx_args.txt | 16 - .../AS-2518-51_snd-master/rtl/m6810.vhd | 65 - .../AS-2518-51_snd-master/rtl/minibd_top.vhd | 144 - .../AS-2518-51_snd-master/rtl/mist_io.sv | 491 - .../AS-2518-51_snd-master/rtl/pia6821.vhd | 534 - .../rtl/williams_snd_pll.qip | 4 - .../rtl/williams_snd_pll.vhd | 355 - common/Intel8080/vm80a.v | 891 + 627 files changed, 3645 insertions(+), 1121515 deletions(-) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/280ZZZAP.qpf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/280ZZZAP.qsf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/280ZZZAP.sdc (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/README.txt (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/Snapshot/280ZZZAP.rbf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST}/clean.bat (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/doc/Schematic.png (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/D280ZZZAP_Overlay.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/D280ZZZAP_memory.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/D280ZZZAP_mist.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/T80/T80.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/T80/T8080se.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/T80/T80_ALU.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/T80/T80_MCode.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/T80/T80_Pack.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080_MiST/src => Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/T80}/T80_Reg.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/build_id.tcl (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/dac.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/invaders.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/invaders_audio.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/mw8080.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/pll.ppf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/pll.qip (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/pll.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/roms/zzzap_c.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/roms/zzzap_d.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/roms/zzzap_e.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/roms/zzzap_f.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/roms/zzzap_g.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/roms/zzzap_h.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/spram.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/280ZZZAP_MiST/rtl/sprom.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080_MiST/Midway8080.qpf => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/BalloonBomber.qpf} (81%) rename Soundboards_MiST/AS-2518-51_snd-master/AS-2518-51_snd.qsf => Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/BalloonBomber.qsf (51%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST}/README.txt (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST}/Release/Vortex.rbf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST}/clean.bat (92%) create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/BalloonBomber_Overlay.vhd create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/BalloonBomber_memory.sv create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/BalloonBomber_mist.sv rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST}/rtl/T80/T80.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST}/rtl/T80/T8080se.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST}/rtl/T80/T80_ALU.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST}/rtl/T80/T80_MCode.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST}/rtl/T80/T80_Pack.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST}/rtl/T80/T80_Reg.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST}/rtl/build_id.tcl (100%) create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/invaders.vhd rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST}/rtl/invaders_audio.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST}/rtl/mw8080.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST}/rtl/pll.qip (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST}/rtl/pll.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl}/roms/ballbomb.zip (82%) create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn01 create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn01.vhd create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn02 create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn02.vhd create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn03 create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn03.vhd create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn04 create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn04.vhd create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn05-1 create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn05-1.vhd create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn06 create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn06.vhd create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn07 create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn07.vhd rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST}/rtl/spram.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/BlueShark.qpf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/BlueShark.qsf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/BlueShark.sdc (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/README.txt (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/Snapshot/BlueShark.rbf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST}/clean.bat (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/doc/Blue_Shark_-_1978_-_Midway_Games.pdf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/rtl/BlueShark_Overlay.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/rtl/BlueShark_memory.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/rtl/BlueShark_mist.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST}/rtl/T80/T80.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST}/rtl/T80/T8080se.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST}/rtl/T80/T80_ALU.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST}/rtl/T80/T80_MCode.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST}/rtl/T80/T80_Pack.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/rtl/T80/T80_Reg.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST}/rtl/build_id.tcl (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/rtl/dac.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/rtl/invaders.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST}/rtl/invaders_audio.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/rtl/mw8080.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/rtl/pll.ppf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST}/rtl/pll.qip (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/rtl/pll.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/rtl/roms/blueshrk_f.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/rtl/roms/blueshrk_g.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/rtl/roms/blueshrk_h.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST}/rtl/spram.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BlueShark_MiST/rtl/sprom.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/README.txt (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/SpaceWalk.qpf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/SpaceWalk.qsf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST}/clean.bat (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/rtl/SpaceWalk_mist.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST}/rtl/T80/T80.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST}/rtl/T80/T8080se.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST}/rtl/T80/T80_ALU.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST}/rtl/T80/T80_MCode.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST}/rtl/T80/T80_Pack.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/rtl/T80/T80_Reg.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST}/rtl/build_id.tcl (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/rtl/dac.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/rtl/invaders.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST}/rtl/invaders_audio.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/rtl/invaders_memory.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080_MiST/src => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl}/invaders_video.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST}/rtl/mw8080.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/rtl/pll.ppf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST}/rtl/pll.qip (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST}/rtl/pll.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl}/roms/rome.cpu (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/rtl/roms/rome.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl}/roms/romf.cpu (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/rtl/roms/romf.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl}/roms/romg.cpu (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/rtl/roms/romg.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl}/roms/romh.cpu (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/rtl/roms/romh.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST}/rtl/spram.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/rtl/sprom.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/simulation/modelsim/SpaceWalk.sft (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/simulation/modelsim/SpaceWalk.vho (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_0c_slow.vho (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_0c_vhd_slow.sdo (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_85c_slow.vho (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_85c_vhd_slow.sdo (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/simulation/modelsim/SpaceWalk_min_1200mv_0c_fast.vho (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/simulation/modelsim/SpaceWalk_min_1200mv_0c_vhd_fast.sdo (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/simulation/modelsim/SpaceWalk_modelsim.xrf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Boothill_MiST/simulation/modelsim/SpaceWalk_vhd.sdo (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/BowlingAlley.qpf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/BowlingAlley.qsf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/BowlingAlley.sdc (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/README.txt (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/Snapshot/BowlingAlley.rbf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST}/clean.bat (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/rtl/BowlingAlley_memory.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/rtl/BowlingAlley_mist.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST}/rtl/T80/T80.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST}/rtl/T80/T8080se.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST}/rtl/T80/T80_ALU.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST}/rtl/T80/T80_MCode.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST}/rtl/T80/T80_Pack.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/rtl/T80/T80_Reg.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST}/rtl/build_id.tcl (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/rtl/dac.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/rtl/invaders.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST}/rtl/invaders_audio.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST}/rtl/mw8080.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/rtl/pll.ppf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST}/rtl/pll.qip (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/rtl/pll.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/rtl/roms/d.cpu.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/rtl/roms/e.cpu.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/rtl/roms/f.cpu.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/rtl/roms/g.cpu.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/rtl/roms/h.cpu.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST}/rtl/spram.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/BowlingAlley_MiST/rtl/sprom.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/LunarRescue.qpf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/LunarRescue.qsf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/LunarRescue.sdc (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/LunarRescue.srf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/README.txt (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/Release/LunarRescue.rbf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST}/clean.bat (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/LunarRescue_Overlay.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/LunarRescue_memory.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/LunarRescue_mist.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST}/rtl/T80/T80.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST}/rtl/T80/T8080se.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST}/rtl/T80/T80_ALU.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST}/rtl/T80/T80_MCode.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST}/rtl/T80/T80_Pack.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/T80/T80_Reg.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST}/rtl/build_id.tcl (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/dac.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/invaders.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST}/rtl/invaders_audio.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/mw8080.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/pll.ppf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST}/rtl/pll.qip (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/pll.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/roms/col.bin (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/roms/col.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/roms/lrescue_1.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/roms/lrescue_2.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/roms/lrescue_3.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/roms/lrescue_4.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/roms/lrescue_5.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/roms/lrescue_6.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST}/rtl/spram.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Lunar Rescue_MiST/rtl/sprom.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/OzmaWars.qpf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/OzmaWars.qsf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/OzmaWars.sdc (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/README.txt (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/Release/OzmaWars.rbf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST}/clean.bat (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/rtl/OzmaWars_memory.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/rtl/OzmaWars_mist.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/rtl/OzmaWars_overlay.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST}/rtl/T80/T80.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST}/rtl/T80/T8080se.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST}/rtl/T80/T80_ALU.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST}/rtl/T80/T80_MCode.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST}/rtl/T80/T80_Pack.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/rtl/T80/T80_Reg.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST}/rtl/build_id.tcl (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/rtl/dac.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/rtl/invaders.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST}/rtl/invaders_audio.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST}/rtl/mw8080.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/rtl/pll.ppf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST}/rtl/pll.qip (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/rtl/pll.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/rtl/roms/mw01.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/rtl/roms/mw02.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/rtl/roms/mw03.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/rtl/roms/mw04.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/rtl/roms/mw05.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/rtl/roms/mw06.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST}/rtl/spram.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Ozma Wars_MiST/rtl/sprom.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/README.txt (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/Shuffleboard.qpf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/Shuffleboard.qsf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/Shuffleboard.sdc (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/Snapshot/Shuffleboard.rbf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST}/clean.bat (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/Shuffleboard_memory.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/Shuffleboard_mist.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST}/rtl/T80/T80.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST}/rtl/T80/T8080se.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST}/rtl/T80/T80_ALU.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST}/rtl/T80/T80_MCode.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST}/rtl/T80/T80_Pack.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/T80/T80_Reg.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST}/rtl/build_id.tcl (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/dac.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/invaders.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST}/rtl/invaders_audio.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/mw8080.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/pll.ppf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST}/rtl/pll.qip (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/pll.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/roms/shuffle.e.bin (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/roms/shuffle.e.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/roms/shuffle.f.bin (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/roms/shuffle.f.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/roms/shuffle.g.bin (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/roms/shuffle.g.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/roms/shuffle.h.bin (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/roms/shuffle.h.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST}/rtl/spram.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Shuffleboard_MiST/rtl/sprom.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/Invaders2.qpf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/Invaders2.qsf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/Invaders2.sdc (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/README.txt (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/Release/Invaders2.rbf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST}/clean.bat (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/rtl/Invaders2_mist.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST}/rtl/T80/T80.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST}/rtl/T80/T8080se.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST}/rtl/T80/T80_ALU.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST}/rtl/T80/T80_MCode.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST}/rtl/T80/T80_Pack.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/rtl/T80/T80_Reg.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST}/rtl/build_id.tcl (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/rtl/dac.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/rtl/invaders.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST}/rtl/invaders_audio.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/rtl/invaders_memory.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST}/rtl/invaders_video.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST}/rtl/mw8080.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/rtl/pll.ppf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST}/rtl/pll.qip (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/rtl/pll.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/rtl/roms/invad2ct.a.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/rtl/roms/invad2ct.b.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/rtl/roms/invad2ct.e.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/rtl/roms/invad2ct.f.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/rtl/roms/invad2ct.g.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/rtl/roms/invad2ct.h.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST}/rtl/spram.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders 2_MiST/rtl/sprom.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/README.txt (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/Release/SpaceInvaders.rbf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/SpaceInvaders.qpf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/SpaceInvaders.qsf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/SpaceInvaders.sdc (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST}/clean.bat (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST}/rtl/T80/T80.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST}/rtl/T80/T8080se.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST}/rtl/T80/T80_ALU.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST}/rtl/T80/T80_MCode.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST}/rtl/T80/T80_Pack.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/rtl/T80/T80_Reg.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST}/rtl/build_id.tcl (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/rtl/dac.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/rtl/invaders.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST}/rtl/invaders_audio.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST}/rtl/mw8080.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/rtl/pll.ppf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST}/rtl/pll.qip (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/rtl/pll.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/rtl/roms/invaders_e.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/rtl/roms/invaders_f.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/rtl/roms/invaders_g.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/rtl/roms/invaders_h.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/rtl/spaceinvaders_memory.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/rtl/spaceinvaders_mist.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/rtl/spaceinvaders_overlay.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST}/rtl/spram.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Space Invaders_MiST/rtl/sprom.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/README.txt (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/Release/SpaceLaser.rbf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/SpaceLaser.qpf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/SpaceLaser.qsf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/SpaceLaser.sdc (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/SpaceLaser.srf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST}/clean.bat (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST}/rtl/T80/T80.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST}/rtl/T80/T8080se.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST}/rtl/T80/T80_ALU.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST}/rtl/T80/T80_MCode.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST}/rtl/T80/T80_Pack.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/rtl/T80/T80_Reg.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST}/rtl/build_id.tcl (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/rtl/dac.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/rtl/invaders.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST}/rtl/invaders_audio.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/rtl/mw8080.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/rtl/pll.ppf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST}/rtl/pll.qip (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/rtl/pll.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/rtl/roms/clr.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/rtl/roms/la01.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/rtl/roms/la02.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/rtl/roms/la03.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/rtl/roms/la04.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/rtl/spacelaser_memory.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/rtl/spacelaser_mist.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/rtl/spacelaser_overlay.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST}/rtl/spram.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceLaser_MiST/rtl/sprom.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/README.txt (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/SpaceWalk.qpf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/SpaceWalk.qsf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/SpaceWalk.sdc (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST}/clean.bat (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/SpaceWalk_mist.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST}/rtl/T80/T80.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST}/rtl/T80/T8080se.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST}/rtl/T80/T80_ALU.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST}/rtl/T80/T80_MCode.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST}/rtl/T80/T80_Pack.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/T80/T80_Reg.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST}/rtl/build_id.tcl (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/dac.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/invaders.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST}/rtl/invaders_audio.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/invaders_memory.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST}/rtl/invaders_video.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST}/rtl/mw8080.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/pll.ppf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST}/rtl/pll.qip (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/pll.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/roms/sw.a.bin (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/roms/sw.a.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/roms/sw.b.bin (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/roms/sw.b.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/roms/sw.c.bin (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/roms/sw.c.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/roms/sw.d.bin (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/roms/sw.d.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/roms/sw.e.bin (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/roms/sw.e.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/roms/sw.f.bin (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/roms/sw.f.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/roms/sw.g.bin (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/roms/sw.g.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/roms/sw.h.bin (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/roms/sw.h.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST}/rtl/spram.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/SpaceWalk_MiST/rtl/sprom.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/README.txt (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/Release/SuperEarthInvasion.rbf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/SuperEarthInvasion.qpf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/SuperEarthInvasion.qsf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/SuperEarthInvasion.sdc (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST}/clean.bat (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/rtl/SuperEarthInvasion_memory.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/rtl/SuperEarthInvasion_mist.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/rtl/SuperEarthInvasion_overlay.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST}/rtl/T80/T80.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST}/rtl/T80/T8080se.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST}/rtl/T80/T80_ALU.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST}/rtl/T80/T80_MCode.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST}/rtl/T80/T80_Pack.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/rtl/T80/T80_Reg.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST}/rtl/build_id.tcl (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/rtl/dac.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/rtl/invaders.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST}/rtl/invaders_audio.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/rtl/mw8080.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/rtl/pll.ppf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST}/rtl/pll.qip (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/rtl/pll.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/rtl/roms/earthinv_e.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/rtl/roms/earthinv_f.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/rtl/roms/earthinv_g.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/rtl/roms/earthinv_h.hex (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST}/rtl/spram.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Super Earth Invasion_MiST/rtl/sprom.vhd (100%) create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/README.txt create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/Release/Vortex.rbf rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Vortex_MiST/Vortex.qpf (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Vortex_MiST/Vortex.qsf (97%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Vortex_MiST/clean.bat (92%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080_MiST/src => Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80}/T80.vhd (96%) create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T8080se.vhd rename Arcade_MiST/{Midway8080 Hardware/Midway8080_MiST/src => Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80}/T80_ALU.vhd (96%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080_MiST/src => Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80}/T80_MCode.vhd (94%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080_MiST/src => Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80}/T80_Pack.vhd (92%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Vortex_MiST/rtl/T80/T80_Reg.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Vortex_MiST/rtl/Vortex_memory.sv (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Vortex_MiST/rtl/Vortex_mist.sv (100%) create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/build_id.tcl rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Vortex_MiST/rtl/invaders.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080_MiST/src => Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl}/invaders_audio.vhd (99%) create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/mw8080.vhd rename Arcade_MiST/{Midway8080 Hardware/Midway8080_MiST/src/mist/pll27.qip => Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/pll.qip} (85%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080_MiST/src/mist/pll27.vhd => Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/pll.vhd} (93%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Vortex_MiST/rtl/roms/1.t36.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Vortex_MiST/rtl/roms/2.t35.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Vortex_MiST/rtl/roms/3.t34.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Vortex_MiST/rtl/roms/4.t33.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Vortex_MiST/rtl/roms/5.t32.vhd (100%) rename Arcade_MiST/{Midway8080 Hardware/Midway8080v2_MiST => Midway-Taito 8080 Hardware/Midway8080_MiST}/Vortex_MiST/rtl/roms/6.t31.vhd (100%) create mode 100644 Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/spram.vhd rename Arcade_MiST/{Midway8080 Hardware => Midway-Taito 8080 Hardware}/ReadMe.txt (100%) delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Midway8080.qsf delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Midway8080.sdc delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Galaxy_Wars(Midway8080).rbf delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Lunar_Rescue(Midway8080).rbf delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Space_Attack_II(Midway8080).rbf delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Space_Invaders(Midway8080).rbf delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Space_Invaders_Deluxe(Midway8080).rbf delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Space_Laser(Midway8080).rbf delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Super_Earth_Invasion(Midway8080).rbf delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/readme.txt delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/280zzzap.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/Midway8080.txt delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/bin2hex.exe delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/bomb1.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/bomb2.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/boothill.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/bowler1.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/bowler2.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/checkmat.e delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/checkmat.g delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/checkmat.h delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/checkmate.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/d.cpu delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/deluxe.bin delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/e.cpu delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/f.cpu delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/g.cpu delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/galxwars0.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/galxwars1.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/gunfight.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/h.cpu delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/invaddlx.zip delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/invaders0.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/invadpt20.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/invadpt21.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/invdelux.d delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/invdelux.e delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/invdelux.g delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/invdelux.h delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/invdeluxe.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/jatrespecter.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/jpecter.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/jspecter.zip delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/jspecter2.zip delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/laser1.bin delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/laser1.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/laser2.bin delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/laser2.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/lrescue0.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/lrescue1.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/lupinIII-1.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/lupinIII-2.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/p2clouds.f2 delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/phantom2.e delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/phantom2.g delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/phantom2.h delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/phantomII.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/phantomIIprom.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/searthin.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/searthin.zip delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/searthina.zip delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/sivram.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/spaceatt.e delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/spaceatt.g delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/spaceatt.h delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/spaceatt.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/spaceenc1.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/spaceenc2.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/yosakdon.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/yosakdona.hex delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/zzzapc delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/zzzapd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/zzzape delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/zzzapf delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/zzzapg delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/zzzaph delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/Graphics.VHD delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/InputMapper.VHDL delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/Inputs.VHD delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/Sound.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/T80se.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/Z80.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/altera_mem.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/bitmapctl.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/bitmapctl_e.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/clk_div.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/dpram.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/dpram_1r1w.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/mist/custom_io.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/mist/keyboard.v delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/mist/ps2_intf.v delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/mist/sigma_delta_dac.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/mist/target_pkg.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/mist/target_top.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/pace.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/pace_pkg.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/pace_pkg_body.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/platform.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/platform_pkg.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/platform_variant_pkg.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/pll.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/project_pkg.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/ps2kbd.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/ps2kbd_pkg.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/spram.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/sprite_pkg.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/sprite_pkg_body.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/sprom.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/tilemapctl_e.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/video_controller.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/video_controller_pkg.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/video_controller_pkg_body.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/video_mixer.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/simulation/modelsim/280ZZZAP.sft delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/simulation/modelsim/280ZZZAP.vho delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/simulation/modelsim/280ZZZAP_8_1200mv_0c_slow.vho delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/simulation/modelsim/280ZZZAP_8_1200mv_0c_vhd_slow.sdo delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/simulation/modelsim/280ZZZAP_8_1200mv_85c_slow.vho delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/simulation/modelsim/280ZZZAP_8_1200mv_85c_vhd_slow.sdo delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/simulation/modelsim/280ZZZAP_min_1200mv_0c_fast.vho delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/simulation/modelsim/280ZZZAP_min_1200mv_0c_vhd_fast.sdo delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/simulation/modelsim/280ZZZAP_modelsim.xrf delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/simulation/modelsim/280ZZZAP_vhd.sdo delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/roms/rome.cpu delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/roms/romf.cpu delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/roms/romg.cpu delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/roms/romh.cpu delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/simulation/modelsim/OzmaWars.sft delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/simulation/modelsim/OzmaWars.vho delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/simulation/modelsim/OzmaWars_8_1200mv_0c_slow.vho delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/simulation/modelsim/OzmaWars_8_1200mv_0c_vhd_slow.sdo delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/simulation/modelsim/OzmaWars_8_1200mv_85c_slow.vho delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/simulation/modelsim/OzmaWars_8_1200mv_85c_vhd_slow.sdo delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/simulation/modelsim/OzmaWars_min_1200mv_0c_fast.vho delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/simulation/modelsim/OzmaWars_min_1200mv_0c_vhd_fast.sdo delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/simulation/modelsim/OzmaWars_modelsim.xrf delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/simulation/modelsim/OzmaWars_vhd.sdo delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/invaders_video.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/dac.vhd delete mode 100644 Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/sprom.vhd create mode 100644 Arcade_MiST/Phoenix Hardware/Survival_MIST/README.txt delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/AS-2518-51_snd.qpf delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/README.txt delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/Release/AS-2518-51_snd.rbf delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/clean.bat delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/AS-2518-51_core.vhd delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/Debouncer.vhd delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/Keyboard.vhd delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/KeyboardMapper.vhd delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/MPU_RAM.vhd delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/PS2Controller.vhd delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/ROM/NitroGroundshaker.hex delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/U4_ROM.qip delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/U4_ROM.vhd delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/ay-3-8910-core.Vhd delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/ay-3-8910.Vhd delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/ay-3-8910_vectors.vhd delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/cpu68.vhd delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/dac.vhd delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/greybox_tmp/cbx_args.txt delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/m6810.vhd delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/minibd_top.vhd delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/mist_io.sv delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/pia6821.vhd delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/williams_snd_pll.qip delete mode 100644 Soundboards_MiST/AS-2518-51_snd-master/rtl/williams_snd_pll.vhd create mode 100644 common/Intel8080/vm80a.v diff --git a/Arcade_MiST/Atari BW Raster Hardware/Canyon_Bomber_MiST/clean.bat b/Arcade_MiST/Atari BW Raster Hardware/Canyon_Bomber_MiST/clean.bat index 51db334e..ac9bf0a8 100644 --- a/Arcade_MiST/Atari BW Raster Hardware/Canyon_Bomber_MiST/clean.bat +++ b/Arcade_MiST/Atari BW Raster Hardware/Canyon_Bomber_MiST/clean.bat @@ -2,36 +2,15 @@ del /s *.bak del /s *.orig del /s *.rej -del /s *~ +del /s build_id.v 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 /s c5_pin_model_dump.txt -del /s 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 PLLJ_PLLSPE_INFO.txt +del *.qws +del *.ppf +del *.qip +del *.ddb pause diff --git a/Arcade_MiST/Atari BW Raster Hardware/Dominos_MiST/clean.bat b/Arcade_MiST/Atari BW Raster Hardware/Dominos_MiST/clean.bat index 51db334e..ac9bf0a8 100644 --- a/Arcade_MiST/Atari BW Raster Hardware/Dominos_MiST/clean.bat +++ b/Arcade_MiST/Atari BW Raster Hardware/Dominos_MiST/clean.bat @@ -2,36 +2,15 @@ del /s *.bak del /s *.orig del /s *.rej -del /s *~ +del /s build_id.v 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 /s c5_pin_model_dump.txt -del /s 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 PLLJ_PLLSPE_INFO.txt +del *.qws +del *.ppf +del *.qip +del *.ddb pause diff --git a/Arcade_MiST/Atari BW Raster Hardware/Sprint2_MiST/clean.bat b/Arcade_MiST/Atari BW Raster Hardware/Sprint2_MiST/clean.bat index b3b7c3b5..ac9bf0a8 100644 --- a/Arcade_MiST/Atari BW Raster Hardware/Sprint2_MiST/clean.bat +++ b/Arcade_MiST/Atari BW Raster Hardware/Sprint2_MiST/clean.bat @@ -2,36 +2,15 @@ del /s *.bak del /s *.orig del /s *.rej -del /s *~ +del /s build_id.v 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 *.qws +del *.ppf +del *.qip +del *.ddb pause diff --git a/Arcade_MiST/Atari BW Raster Hardware/SprintOne_MiST/clean.bat b/Arcade_MiST/Atari BW Raster Hardware/SprintOne_MiST/clean.bat index b3b7c3b5..ac9bf0a8 100644 --- a/Arcade_MiST/Atari BW Raster Hardware/SprintOne_MiST/clean.bat +++ b/Arcade_MiST/Atari BW Raster Hardware/SprintOne_MiST/clean.bat @@ -2,36 +2,15 @@ del /s *.bak del /s *.orig del /s *.rej -del /s *~ +del /s build_id.v 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 *.qws +del *.ppf +del *.qip +del *.ddb pause diff --git a/Arcade_MiST/Atari BW Raster Hardware/SuperBreakout_MiST/clean.bat b/Arcade_MiST/Atari BW Raster Hardware/SuperBreakout_MiST/clean.bat index b3b7c3b5..ac9bf0a8 100644 --- a/Arcade_MiST/Atari BW Raster Hardware/SuperBreakout_MiST/clean.bat +++ b/Arcade_MiST/Atari BW Raster Hardware/SuperBreakout_MiST/clean.bat @@ -2,36 +2,15 @@ del /s *.bak del /s *.orig del /s *.rej -del /s *~ +del /s build_id.v 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 *.qws +del *.ppf +del *.qip +del *.ddb pause diff --git a/Arcade_MiST/Atari BW Raster Hardware/UltraTank_MiST/clean.bat b/Arcade_MiST/Atari BW Raster Hardware/UltraTank_MiST/clean.bat index b3b7c3b5..ac9bf0a8 100644 --- a/Arcade_MiST/Atari BW Raster Hardware/UltraTank_MiST/clean.bat +++ b/Arcade_MiST/Atari BW Raster Hardware/UltraTank_MiST/clean.bat @@ -2,36 +2,15 @@ del /s *.bak del /s *.orig del /s *.rej -del /s *~ +del /s build_id.v 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 *.qws +del *.ppf +del *.qip +del *.ddb pause diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/280ZZZAP.qpf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/280ZZZAP.qpf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/280ZZZAP.qpf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/280ZZZAP.qpf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/280ZZZAP.qsf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/280ZZZAP.qsf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/280ZZZAP.qsf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/280ZZZAP.qsf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/280ZZZAP.sdc b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/280ZZZAP.sdc similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/280ZZZAP.sdc rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/280ZZZAP.sdc diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/README.txt b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/README.txt similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/README.txt rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/README.txt diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/Snapshot/280ZZZAP.rbf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/Snapshot/280ZZZAP.rbf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/Snapshot/280ZZZAP.rbf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/Snapshot/280ZZZAP.rbf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/clean.bat b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/clean.bat similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/clean.bat rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/clean.bat diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/doc/Schematic.png b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/doc/Schematic.png similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/doc/Schematic.png rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/doc/Schematic.png diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/D280ZZZAP_Overlay.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/D280ZZZAP_Overlay.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/D280ZZZAP_Overlay.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/D280ZZZAP_Overlay.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/D280ZZZAP_memory.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/D280ZZZAP_memory.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/D280ZZZAP_memory.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/D280ZZZAP_memory.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/D280ZZZAP_mist.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/D280ZZZAP_mist.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/D280ZZZAP_mist.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/D280ZZZAP_mist.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/T80/T80.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/T80/T80.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/T80/T80.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/T80/T80.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/T80/T8080se.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/T80/T8080se.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/T80/T8080se.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/T80/T8080se.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/T80/T80_ALU.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/T80/T80_ALU.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/T80/T80_ALU.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/T80/T80_ALU.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/T80/T80_MCode.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/T80/T80_MCode.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/T80/T80_MCode.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/T80/T80_MCode.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/T80/T80_Pack.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/T80/T80_Pack.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/T80/T80_Pack.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/T80/T80_Pack.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/T80_Reg.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/T80/T80_Reg.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/T80_Reg.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/T80/T80_Reg.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/build_id.tcl b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/build_id.tcl similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/build_id.tcl rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/build_id.tcl diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/dac.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/dac.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/dac.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/dac.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/invaders.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/invaders.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/invaders.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/invaders.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/invaders_audio.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/invaders_audio.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/invaders_audio.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/invaders_audio.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/mw8080.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/mw8080.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/mw8080.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/mw8080.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/pll.ppf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/pll.ppf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/pll.ppf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/pll.ppf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/pll.qip b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/pll.qip similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/pll.qip rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/pll.qip diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/pll.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/pll.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/pll.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/pll.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/roms/zzzap_c.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/roms/zzzap_c.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/roms/zzzap_c.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/roms/zzzap_c.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/roms/zzzap_d.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/roms/zzzap_d.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/roms/zzzap_d.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/roms/zzzap_d.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/roms/zzzap_e.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/roms/zzzap_e.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/roms/zzzap_e.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/roms/zzzap_e.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/roms/zzzap_f.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/roms/zzzap_f.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/roms/zzzap_f.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/roms/zzzap_f.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/roms/zzzap_g.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/roms/zzzap_g.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/roms/zzzap_g.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/roms/zzzap_g.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/roms/zzzap_h.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/roms/zzzap_h.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/roms/zzzap_h.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/roms/zzzap_h.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/spram.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/spram.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/spram.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/spram.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/sprom.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/sprom.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/sprom.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/280ZZZAP_MiST/rtl/sprom.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Midway8080.qpf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/BalloonBomber.qpf similarity index 81% rename from Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Midway8080.qpf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/BalloonBomber.qpf index 9d9324d0..e97e5097 100644 --- a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Midway8080.qpf +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/BalloonBomber.qpf @@ -1,6 +1,6 @@ # -------------------------------------------------------------------------- # # -# Copyright (C) 1991-2013 Altera Corporation +# 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 @@ -17,15 +17,14 @@ # -------------------------------------------------------------------------- # # # Quartus II 64-Bit -# Version 13.1.0 Build 162 10/23/2013 SJ Web Edition -# Date created = 10:56:36 February 09, 2017 +# Version 13.1.4 Build 182 03/12/2014 SJ Web Edition +# Date created = 16:15:41 June 05, 2019 # # -------------------------------------------------------------------------- # QUARTUS_VERSION = "13.1" -DATE = "10:56:36 February 09, 2017" +DATE = "16:15:41 June 05, 2019" # Revisions -PROJECT_REVISION = "Midway8080" -PROJECT_REVISION = "invaders" +PROJECT_REVISION = "BalloonBomber" diff --git a/Soundboards_MiST/AS-2518-51_snd-master/AS-2518-51_snd.qsf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/BalloonBomber.qsf similarity index 51% rename from Soundboards_MiST/AS-2518-51_snd-master/AS-2518-51_snd.qsf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/BalloonBomber.qsf index eb4d71a3..37310fc8 100644 --- a/Soundboards_MiST/AS-2518-51_snd-master/AS-2518-51_snd.qsf +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/BalloonBomber.qsf @@ -1,6 +1,6 @@ # -------------------------------------------------------------------------- # # -# Copyright (C) 1991-2013 Altera Corporation +# 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 @@ -17,15 +17,15 @@ # -------------------------------------------------------------------------- # # # Quartus II 64-Bit -# Version 13.0.1 Build 232 06/12/2013 Service Pack 1 SJ Web Edition -# Date created = 21:32:18 December 01, 2015 +# Version 13.1.4 Build 182 03/12/2014 SJ Web Edition +# Date created = 02:57:11 June 09, 2019 # # -------------------------------------------------------------------------- # # # Notes: # # 1) The default values for assignments are stored in the file: -# AS-2518-51_snd_assignment_defaults.qdf +# BalloonBomber_assignment_defaults.qdf # If this file doesn't exist, see file: # assignment_defaults.qdf # @@ -36,58 +36,16 @@ # -------------------------------------------------------------------------- # -set_global_assignment -name FAMILY "Cyclone III" -set_global_assignment -name DEVICE EP3C25E144C8 -set_global_assignment -name TOP_LEVEL_ENTITY minibd_top -set_global_assignment -name ORIGINAL_QUARTUS_VERSION "13.0 SP1" -set_global_assignment -name PROJECT_CREATION_TIME_DATE "21:32:18 DECEMBER 01, 2015" + +# Project-Wide Assignments +# ======================== +set_global_assignment -name ORIGINAL_QUARTUS_VERSION 13.1 +set_global_assignment -name PROJECT_CREATION_TIME_DATE "21:27:39 NOVEMBER 20, 2017" set_global_assignment -name LAST_QUARTUS_VERSION 13.1 set_global_assignment -name PROJECT_OUTPUT_DIRECTORY output_files -set_global_assignment -name ERROR_CHECK_FREQUENCY_DIVISOR 1 -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 STRATIX_DEVICE_IO_STANDARD "3.3-V LVTTL" -set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -entity robotron_sound_top -section_id Top -set_global_assignment -name PARTITION_FITTER_PRESERVATION_LEVEL PLACEMENT_AND_ROUTING -entity robotron_sound_top -section_id Top -set_global_assignment -name PARTITION_COLOR 16764057 -entity robotron_sound_top -section_id Top -set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -entity robotron_sound_top -section_id Top -set_global_assignment -name ENABLE_SIGNALTAP OFF -set_global_assignment -name USE_SIGNALTAP_FILE output_files/stp1.stp -set_global_assignment -name VHDL_FILE rtl/minibd_top.vhd -set_global_assignment -name VHDL_FILE "rtl/AS-2518-51_core.vhd" -set_global_assignment -name QIP_FILE rtl/williams_snd_pll.qip -set_global_assignment -name QIP_FILE rtl/U4_ROM.qip -set_global_assignment -name VHDL_FILE rtl/PS2Controller.vhd -set_global_assignment -name VHDL_FILE rtl/pia6821.vhd -set_global_assignment -name VHDL_FILE rtl/MPU_RAM.vhd -set_global_assignment -name SYSTEMVERILOG_FILE rtl/mist_io.sv -set_global_assignment -name VHDL_FILE rtl/m6810.vhd -set_global_assignment -name VHDL_FILE rtl/KeyboardMapper.vhd -set_global_assignment -name VHDL_FILE rtl/Keyboard.vhd -set_global_assignment -name VHDL_FILE rtl/Debouncer.vhd -set_global_assignment -name VHDL_FILE rtl/dac.vhd -set_global_assignment -name VHDL_FILE rtl/cpu68.vhd -set_global_assignment -name VHDL_FILE "rtl/ay-3-8910-core.Vhd" -set_global_assignment -name VHDL_FILE "rtl/ay-3-8910_vectors.vhd" -set_global_assignment -name VHDL_FILE "rtl/ay-3-8910.Vhd" -set_global_assignment -name DEVICE_FILTER_PIN_COUNT 144 -set_global_assignment -name DEVICE_FILTER_SPEED_GRADE 8 -set_global_assignment -name CYCLONEIII_CONFIGURATION_SCHEME "PASSIVE SERIAL" -set_global_assignment -name USE_CONFIGURATION_DEVICE OFF -set_global_assignment -name GENERATE_RBF_FILE ON -set_global_assignment -name CRC_ERROR_OPEN_DRAIN OFF -set_global_assignment -name FORCE_CONFIGURATION_VCCIO ON -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" -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 - +set_global_assignment -name PRE_FLOW_SCRIPT_FILE "quartus_sh:rtl/build_id.tcl" +# 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] @@ -118,44 +76,102 @@ 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_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 +set_location_assignment PLL_1 -to "pll:pll|altpll:altpll_component" +# Classic Timing Assignments +# ========================== +set_global_assignment -name MIN_CORE_JUNCTION_TEMP 0 +set_global_assignment -name MAX_CORE_JUNCTION_TEMP 85 + +# Analysis & Synthesis Assignments +# ================================ +set_global_assignment -name TOP_LEVEL_ENTITY BalloonBomber_mist +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 + +# Fitter Assignments +# ================== +set_global_assignment -name DEVICE EP3C25E144C8 +set_global_assignment -name ERROR_CHECK_FREQUENCY_DIVISOR 1 +set_global_assignment -name STRATIX_DEVICE_IO_STANDARD "3.3-V LVTTL" +set_global_assignment -name CYCLONEIII_CONFIGURATION_SCHEME "PASSIVE SERIAL" +set_global_assignment -name CRC_ERROR_OPEN_DRAIN OFF +set_global_assignment -name FORCE_CONFIGURATION_VCCIO ON +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" + +# EDA Netlist Writer Assignments +# ============================== +set_global_assignment -name EDA_SIMULATION_TOOL "ModelSim-Altera (VHDL)" + +# Assembler Assignments +# ===================== +set_global_assignment -name USE_CONFIGURATION_DEVICE OFF +set_global_assignment -name GENERATE_RBF_FILE ON + +# 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 EDA_TOOL_SETTINGS(eda_simulation) +# --------------------------------------- + + # EDA Netlist Writer Assignments + # ============================== + set_global_assignment -name EDA_OUTPUT_DATA_FORMAT VHDL -section_id eda_simulation + +# end EDA_TOOL_SETTINGS(eda_simulation) +# ------------------------------------- + +# --------------------------- +# start ENTITY(OzmaWars_mist) + + # start DESIGN_PARTITION(Top) + # --------------------------- + + # Incremental Compilation Assignments + # =================================== + set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Top + set_global_assignment -name PARTITION_FITTER_PRESERVATION_LEVEL PLACEMENT_AND_ROUTING -section_id Top + set_global_assignment -name PARTITION_COLOR 16764057 -section_id Top + + # end DESIGN_PARTITION(Top) + # ------------------------- + +# end ENTITY(OzmaWars_mist) +# ------------------------- +set_global_assignment -name SYSTEMVERILOG_FILE rtl/BalloonBomber_mist.sv +set_global_assignment -name VHDL_FILE rtl/invaders.vhd +set_global_assignment -name VHDL_FILE rtl/mw8080.vhd +set_global_assignment -name VHDL_FILE rtl/invaders_audio.vhd +set_global_assignment -name SYSTEMVERILOG_FILE rtl/BalloonBomber_memory.sv +set_global_assignment -name VHDL_FILE rtl/BalloonBomber_Overlay.vhd +set_global_assignment -name VHDL_FILE rtl/spram.vhd +set_global_assignment -name VHDL_FILE rtl/T80/T8080se.vhd +set_global_assignment -name VHDL_FILE rtl/T80/T80_Reg.vhd +set_global_assignment -name VHDL_FILE rtl/T80/T80_Pack.vhd +set_global_assignment -name VHDL_FILE rtl/T80/T80_MCode.vhd +set_global_assignment -name VHDL_FILE rtl/T80/T80_ALU.vhd +set_global_assignment -name VHDL_FILE rtl/T80/T80.vhd +set_global_assignment -name VHDL_FILE rtl/pll.vhd +set_global_assignment -name QIP_FILE ../../../../common/mist/mist.qip +set_global_assignment -name VHDL_FILE rtl/roms/tn07.vhd +set_global_assignment -name VHDL_FILE rtl/roms/tn06.vhd +set_global_assignment -name VHDL_FILE "rtl/roms/tn05-1.vhd" +set_global_assignment -name VHDL_FILE rtl/roms/tn04.vhd +set_global_assignment -name VHDL_FILE rtl/roms/tn03.vhd +set_global_assignment -name VHDL_FILE rtl/roms/tn02.vhd +set_global_assignment -name VHDL_FILE rtl/roms/tn01.vhd set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top \ No newline at end of file diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/README.txt b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/README.txt similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/README.txt rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/README.txt diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/Release/Vortex.rbf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/Release/Vortex.rbf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/Release/Vortex.rbf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/Release/Vortex.rbf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/clean.bat b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/clean.bat similarity index 92% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/clean.bat rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/clean.bat index 83fb0c47..ac9bf0a8 100644 --- a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/clean.bat +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/clean.bat @@ -2,6 +2,7 @@ del /s *.bak del /s *.orig del /s *.rej +del /s build_id.v rmdir /s /q db rmdir /s /q incremental_db rmdir /s /q output_files diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/BalloonBomber_Overlay.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/BalloonBomber_Overlay.vhd new file mode 100644 index 00000000..ceecfaf1 --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/BalloonBomber_Overlay.vhd @@ -0,0 +1,366 @@ +library ieee; + use ieee.std_logic_1164.all; + use ieee.std_logic_unsigned.all; + use ieee.numeric_std.all; + + + +--Not Cleaned, iam to lazy for this + + +entity BalloonBomber_Overlay is + port( + Video : in std_logic; + Overlay : in std_logic; + CLK : in std_logic; + Rst_n_s : in std_logic; + HSync : in std_logic; + VSync : in std_logic; + CAB : in std_logic_vector(9 downto 0); + O_VIDEO_R : out std_logic; + O_VIDEO_G : out std_logic; + O_VIDEO_B : out std_logic; + O_HSYNC : out std_logic; + O_VSYNC : out std_logic + ); +end BalloonBomber_Overlay; + +architecture rtl of BalloonBomber_Overlay is + + signal HCnt : std_logic_vector(11 downto 0); + signal VCnt : std_logic_vector(11 downto 0); + signal HSync_t1 : std_logic; + signal Overlay_A1 : boolean; + signal Overlay_A1_VCnt : boolean; + signal Overlay_A2 : boolean; + signal Overlay_A3 : boolean; + signal Overlay_A3_VCnt : boolean; + signal Overlay_A4 : boolean; + signal Overlay_A4_VCnt : boolean; + + signal Overlay_R1 : boolean; + signal Overlay_R1_VCnt : boolean; + signal Overlay_R2 : boolean; + signal Overlay_R3 : boolean; + + signal Overlay_Y1 : boolean; + signal Overlay_Y1_VCnt : boolean; + signal Overlay_Y2 : boolean; + signal Overlay_Y3 : boolean; + signal Overlay_Y4 : boolean; + signal Overlay_Y4_VCnt : boolean; + signal Overlay_Y5 : boolean; + signal Overlay_Y5_VCnt : boolean; + + signal Overlay_G1 : boolean; + signal Overlay_G1_VCnt : boolean; + signal Overlay_G2 : boolean; + signal Overlay_G3 : boolean; + signal Overlay_G4 : boolean; + signal Overlay_G4_VCnt : boolean; + + signal Overlay_P1 : boolean; + signal Overlay_P2 : boolean; + signal Overlay_P2_VCnt : boolean; + signal Overlay_P3 : boolean; + signal Overlay_P3_VCnt : boolean; + signal Overlay_P4 : boolean; + signal Overlay_P4_VCnt : boolean; + + signal VideoRGB : std_logic_vector(2 downto 0); + signal COLOR : std_logic_vector(3 downto 0); + +begin + process (Rst_n_s, Clk) + variable cnt : unsigned(3 downto 0); + begin + if Rst_n_s = '0' then + cnt := "0000"; + elsif Clk'event and Clk = '1' then + if cnt = 9 then + cnt := "0000"; + else + cnt := cnt + 1; + end if; + end if; + end process; + + p_overlay : process(Rst_n_s, Clk) + variable HStart : boolean; + begin + if Rst_n_s = '0' then + HCnt <= (others => '0'); + VCnt <= (others => '0'); + HSync_t1 <= '0'; + + Overlay_G1 <= false; + Overlay_G1_VCnt <= false; + Overlay_G2 <= false; + Overlay_G3 <= false; + Overlay_G4 <= false; + Overlay_G4_VCnt <= false; + + Overlay_A1 <= false; + Overlay_A1_VCnt <= false; + Overlay_A2 <= false; + Overlay_A3 <= false; + Overlay_A3_VCnt <= false; + Overlay_A4 <= false; + Overlay_A4_VCnt <= false; + + Overlay_R1 <= false; + Overlay_R1_VCnt <= false; + Overlay_R2 <= false; + Overlay_R3 <= false; + + Overlay_Y1 <= false; + Overlay_Y1_VCnt <= false; + Overlay_Y2 <= false; + Overlay_Y3 <= false; + Overlay_Y4 <= false; + Overlay_Y4_VCnt <= false; + Overlay_Y5 <= false; + Overlay_Y5_VCnt <= false; + + Overlay_P1 <= false; + Overlay_P3 <= false; + Overlay_P3_VCnt <= false; + Overlay_P4 <= false; + Overlay_P4_VCnt <= false; + + elsif Clk'event and Clk = '1' then + HSync_t1 <= HSync; + HStart := (HSync_t1 = '0') and (HSync = '1'); + + if HStart then + HCnt <= (others => '0'); + else + HCnt <= HCnt + "1"; + end if; + + if (VSync = '0') then + VCnt <= (others => '0'); + elsif HStart then + VCnt <= VCnt + "1"; + end if; + + if HStart then + if (Vcnt >= 0) and (Vcnt <= 99) then + Overlay_A1_VCnt <= true; + else + Overlay_A1_VCnt <= false; + end if; + + if (Vcnt >= 100) and (Vcnt <= 149 ) then + Overlay_R1_VCnt <= true; + else + Overlay_R1_VCnt <= false; + end if; + + if (Vcnt >= 150) and (Vcnt <= 240) then + Overlay_Y1_VCnt <= true; + else + Overlay_Y1_VCnt <= false; + end if; + + if (Vcnt >= 236) and (Vcnt <= 16) then + Overlay_G1_VCnt <= true; + else + Overlay_G1_VCnt <= false; + end if; + + if (Vcnt >= 0) and (Vcnt <= 72) then + Overlay_G4_VCnt <= true; + Overlay_Y5_VCnt <= true; + else + Overlay_G4_VCnt <= false; + Overlay_Y5_VCnt <= false; + end if; + + if (Vcnt >= 73) and (Vcnt <= 200) then + Overlay_P3_VCnt <= true; + else + Overlay_P3_VCnt <= false; + end if; + + if (Vcnt >= 224) and (Vcnt <= 230) then + Overlay_P4_VCnt <= true; + else + Overlay_P4_VCnt <= false; + end if; + + if (Vcnt >= 160) and (Vcnt <= 166 ) then + Overlay_A3_VCnt <= true; + else + Overlay_A3_VCnt <= false; + end if; + + if (Vcnt >= 24 ) and (Vcnt <= 230 ) then + Overlay_A4_VCnt <= true; + else + Overlay_A4_VCnt <= false; + end if; + + if (Vcnt >= 32 ) and (Vcnt <= 222 ) then + Overlay_P2_VCnt <= true; + else + Overlay_P2_VCnt <= false; + end if; + end if; + + if (Vcnt >= 42 ) and (Vcnt <= 216 ) then------------------------------------ + Overlay_Y4_VCnt <= true; + else + Overlay_Y4_VCnt <= false; + end if; + + if (HCnt = 518)then--ok + if Overlay_A1_VCnt then Overlay_A1 <= true; end if; + if Overlay_R1_VCnt then Overlay_R1 <= true; end if; + if Overlay_Y1_VCnt then Overlay_Y1 <= true; end if; + elsif (HCnt >= 540) then + if Overlay_A1_VCnt then Overlay_A1 <= false; end if; + if Overlay_R1_VCnt then Overlay_R1 <= false; end if; + if Overlay_Y1_VCnt then Overlay_Y1 <= false; end if; + end if; + + if (HCnt = 528)then--check + if Overlay_G1_VCnt then Overlay_G1 <= true; end if; + elsif (HCnt >= 540) then + if Overlay_G1_VCnt then Overlay_G1 <= false; end if; + end if; + + if (HCnt = 486) then--ok + Overlay_R2 <= true; + elsif (HCnt = 502) then + Overlay_R2 <= false; + end if; + + if (HCnt = 438) then--ok + Overlay_Y2 <= true; + elsif (HCnt = 470) then + Overlay_Y2 <= false; + end if; + + if (HCnt = 373) then--ok + Overlay_G2 <= true; + elsif (HCnt = 445) then + Overlay_G2 <= false; + end if; + + if (HCnt = 324) then--ok + Overlay_P1 <= true; + elsif (HCnt = 380) then + Overlay_P1 <= false; + end if; + + if (HCnt = 275) then--ok + Overlay_A2 <= true; + elsif (HCnt = 327) then + Overlay_A2 <= false; + end if; + + if (HCnt = 210) then--ok + Overlay_Y3 <= true; + elsif (HCnt = 274) then + Overlay_Y3 <= false; + end if; + + if (HCnt = 166) then--ok + Overlay_R3 <= true; + elsif (HCnt = 214) then + Overlay_R3 <= false; + end if; + + if (HCnt = 70) then--ok + Overlay_G3 <= true; + elsif (HCnt = 170) then + Overlay_G3 <= false; + end if; + + if (HCnt = 70) then--check + if Overlay_P4_VCnt then Overlay_P4 <= true; end if; + elsif (HCnt = 86) then + if Overlay_P4_VCnt then Overlay_P4 <= false; end if; + end if; + + if (HCnt = 0) then--ok + if Overlay_Y5_VCnt then Overlay_Y5 <= true; end if; + if Overlay_P3_VCnt then Overlay_P3 <= true; end if; + elsif (HCnt = 70) then + if Overlay_Y5_VCnt then Overlay_Y5 <= false; end if; + if Overlay_P3_VCnt then Overlay_P3 <= false; end if; + end if; + + if (HCnt = 164) then--check + if Overlay_A3_VCnt then Overlay_A3 <= true; end if; + elsif (HCnt = 172) then + if Overlay_A3_VCnt then Overlay_A3 <= false; end if; + end if; + + if (HCnt = 118) then--check + if Overlay_A4_VCnt then Overlay_A4 <= true; end if; + elsif (HCnt = 134) then + if Overlay_A4_VCnt then Overlay_A4 <= false; end if; + end if; + + if (HCnt = 102) then--check + if Overlay_P2_VCnt then Overlay_P2 <= true; end if; + elsif (HCnt = 118) then + if Overlay_P2_VCnt then Overlay_P2 <= false; end if; + end if; + + if (HCnt = 86) then--check + if Overlay_Y4_VCnt then Overlay_Y4 <= true; end if; + elsif (HCnt = 102) then + if Overlay_Y4_VCnt then Overlay_Y4 <= false; end if; + end if; + + if (HCnt = 486) then--ok + if Overlay_G4_VCnt then Overlay_G4 <= true; end if; + elsif (HCnt = 470) then + if Overlay_G4_VCnt then Overlay_G4 <= false; end if; + end if; + + end if; + end process; + + p_video_out_comb : process(Video) + begin + if (Video = '0') then + VideoRGB <= "000"; + elsif Overlay_R1 or Overlay_R2 or (Overlay_R3 and not Overlay_A3) then--Red + VideoRGB <= "100"; + elsif Overlay_A1 or Overlay_A2 or Overlay_A3 or Overlay_A4 then--Aqua + VideoRGB <= "011"; + elsif (Overlay_Y1 and not Overlay_G1) or Overlay_Y2 or Overlay_Y3 or Overlay_Y4 or Overlay_Y5 then--Yellow + VideoRGB <= "110"; + elsif Overlay_G1 or Overlay_G2 or (Overlay_G3 and not (Overlay_P4 or Overlay_A4 or Overlay_P2 or Overlay_Y4))-- or Overlay_G4 + then + VideoRGB <= "010"; + elsif Overlay_P1 or Overlay_P2 or Overlay_P3 or Overlay_P4 then--Purple + VideoRGB <= "101"; +-- elsif not (Overlay_G4) then--white + else + VideoRGB <= "111";-- end if; + end if; + end process; + +--colPROM: entity work.col +--port map( +-- clk => Clk, +-- addr => CAB, --should be Video Counters +-- data => COLOR +--); + O_VIDEO_R <= VideoRGB(2) when (Overlay = '1') else VideoRGB(0) or VideoRGB(1) or VideoRGB(2); + O_VIDEO_G <= VideoRGB(1) when (Overlay = '1') else VideoRGB(0) or VideoRGB(1) or VideoRGB(2); + O_VIDEO_B <= VideoRGB(0) when (Overlay = '1') else VideoRGB(0) or VideoRGB(1) or VideoRGB(2); + +-- O_VIDEO_R <= COLOR(2); +-- O_VIDEO_G <= COLOR(1); +-- O_VIDEO_B <= COLOR(0); + O_HSYNC <= HSync; + O_VSYNC <= VSync; + + +end; \ No newline at end of file diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/BalloonBomber_memory.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/BalloonBomber_memory.sv new file mode 100644 index 00000000..9d0cbe1f --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/BalloonBomber_memory.sv @@ -0,0 +1,72 @@ + +module BalloonBomber_memory( +input Clock, +input RW_n, +input [15:0]Addr, +input [15:0]Ram_Addr, +output [7:0]Ram_out, +input [7:0]Ram_in, +output [7:0]Rom_out +); + +wire [7:0]rom_data_0; +wire [7:0]rom_data_1; +wire [7:0]rom_data_2; +wire [7:0]rom_data_3; +wire [7:0]rom_data_4; +wire [10:0]rom_addr = {Addr[11:10],~Addr[9],Addr[8:4],~Addr[3],Addr[2:1],~Addr[0]}; + +tn01 tn01 ( + .clk(Clock), + .addr(rom_addr), + .data(rom_data_0) +); + +tn02 tn02 ( + .clk(Clock), + .addr(rom_addr), + .data(rom_data_1) +); + +tn03 tn03 ( + .clk(Clock), + .addr(rom_addr), + .data(rom_data_2) +); + +tn04 tn04 ( + .clk(Clock), + .addr(rom_addr), + .data(rom_data_3) +); + +tn05_1 tn05_1 ( + .clk(Clock), + .addr(rom_addr), + .data(rom_data_4) +); + +always @(Addr, rom_data_0, rom_data_1, rom_data_2, rom_data_3, rom_data_4) begin + Rom_out = 8'b00000000; + case (Addr[15:11]) + 5'b00000 : Rom_out = rom_data_0; + 5'b00001 : Rom_out = rom_data_1; + 5'b00010 : Rom_out = rom_data_2; + 5'b00011 : Rom_out = rom_data_3; + 5'b01000 : Rom_out = rom_data_4; + default : Rom_out = 8'b00000000; + endcase +end + +spram #( + .addr_width_g(13), + .data_width_g(8)) +u_ram0( + .address(Ram_Addr[12:0]), + .clken(1'b1), + .clock(Clock), + .data(Ram_in), + .wren(~RW_n), + .q(Ram_out) + ); +endmodule \ No newline at end of file diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/BalloonBomber_mist.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/BalloonBomber_mist.sv new file mode 100644 index 00000000..98cb3cae --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/BalloonBomber_mist.sv @@ -0,0 +1,210 @@ +module BalloonBomber_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 +); + +`include "rtl\build_id.v" + +localparam CONF_STR = { + "BallBomb;;", + "O2,Rotate Controls,Off,On;", + "O34,Scanlines,Off,25%,50%,75%;", + "O5,Overlay, On, Off;", + "T6,Reset;", + "V,v1.20.",`BUILD_DATE +}; + +assign LED = 1; +assign AUDIO_R = AUDIO_L; + + +wire clk_sys, clk_mist; +wire pll_locked; +pll pll +( + .inclk0(CLOCK_27), + .areset(), + .c0(clk_sys), + .c1(clk_mist) +); + +wire [31:0] status; +wire [1:0] buttons; +wire [1:0] switches; +wire [7:0] kbjoy; +wire [7:0] joystick_0,joystick_1; +wire scandoublerD; +wire ypbpr; +wire key_pressed; +wire [7:0] key_code; +wire key_strobe; +wire [7:0] audio; +wire hs, vs; +wire r,g,b; + + +wire [15:0]RAB; +wire [15:0]AD; +wire [7:0]RDB; +wire [7:0]RWD; +wire [7:0]IB; +wire [5:0]SoundCtrl3; +wire [5:0]SoundCtrl5; +wire Rst_n_s; +wire RWE_n; +wire Video; +wire HSync; +wire VSync; + +invaderst invaderst( + .Rst_n(~(status[0] | status[6] | buttons[1])), + .Clk(clk_sys), + .ENA(), + .Coin(btn_coin), + .Sel1Player(~btn_one_player), + .Sel2Player(~btn_two_players), + .Fire(~m_fire), + .MoveLeft(~m_left), + .MoveRight(~m_right), + .MoveUp(~m_up), + .MoveDown(~m_down), + .RDB(RDB), + .IB(IB), + .RWD(RWD), + .RAB(RAB), + .AD(AD), + .SoundCtrl3(SoundCtrl3), + .SoundCtrl5(SoundCtrl5), + .Rst_n_s(Rst_n_s), + .RWE_n(RWE_n), + .Video(Video), + .HSync(HSync), + .VSync(VSync) + ); + +BalloonBomber_memory BalloonBomber_memory ( + .Clock(clk_sys), + .RW_n(RWE_n), + .Addr(AD), + .Ram_Addr(RAB), + .Ram_out(RDB), + .Ram_in(RWD), + .Rom_out(IB) + ); + +BalloonBomber_Overlay BalloonBomber_Overlay ( + .Video(Video), + .Overlay(~status[5]), + .CLK(clk_sys), + .Rst_n_s(Rst_n_s), + .HSync(HSync), + .VSync(VSync), + .O_VIDEO_R(r), + .O_VIDEO_G(g), + .O_VIDEO_B(b), + .O_HSYNC(hs), + .O_VSYNC(vs) + ); + + +invaders_audio invaders_audio ( + .Clk(clk_sys), + .S1(SoundCtrl3), + .S2(SoundCtrl5), + .Aud(audio) + ); + +mist_video #(.COLOR_DEPTH(3)) mist_video( + .clk_sys(clk_mist), + .SPI_SCK(SPI_SCK), + .SPI_SS3(SPI_SS3), + .SPI_DI(SPI_DI), + .R({r,r,r}), + .G({g,g,g}), + .B({b,b,b}), + .HSync(hs), + .VSync(vs), + .VGA_R(VGA_R), + .VGA_G(VGA_G), + .VGA_B(VGA_B), + .VGA_VS(VGA_VS), + .VGA_HS(VGA_HS), + .rotate({1'b0,status[2]}), + .scandoubler_disable(scandoublerD), + .scanlines(status[4:3]), + .ypbpr(ypbpr) + ); + +user_io #( + .STRLEN(($size(CONF_STR)>>3))) +user_io( + .clk_sys (clk_mist ), + .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 dac ( + .clk_i(clk_mist), + .res_n_i(1), + .dac_i(audio), + .dac_o(AUDIO_L) + ); + +wire m_up = status[2] ? btn_right | joystick_0[0] | joystick_1[0] : btn_up | joystick_0[3] | joystick_1[3]; +wire m_down = status[2] ? btn_left | joystick_0[1] | joystick_1[1] : btn_down | joystick_0[2] | joystick_1[2]; +wire m_left = status[2] ? btn_up | joystick_0[3] | joystick_1[3] : btn_left | joystick_0[1] | joystick_1[1]; +wire m_right = status[2] ? btn_down | joystick_0[2] | joystick_1[2] : btn_right | joystick_0[0] | joystick_1[0]; +wire m_fire = btn_fire1 | joystick_0[4] | joystick_1[4]; + + +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_coin = 0; + +always @(posedge clk_mist) begin + if(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 + 'h06: btn_two_players <= key_pressed; // F2 + 'h29: btn_fire1 <= key_pressed; // Space + endcase + end +end + +endmodule diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/T80/T80.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/T80/T80.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/T80/T80.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/T80/T80.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/T80/T8080se.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/T80/T8080se.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/T80/T8080se.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/T80/T8080se.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/T80/T80_ALU.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/T80/T80_ALU.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/T80/T80_ALU.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/T80/T80_ALU.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/T80/T80_MCode.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/T80/T80_MCode.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/T80/T80_MCode.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/T80/T80_MCode.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/T80/T80_Pack.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/T80/T80_Pack.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/T80/T80_Pack.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/T80/T80_Pack.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/T80/T80_Reg.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/T80/T80_Reg.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/rtl/T80/T80_Reg.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/T80/T80_Reg.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/build_id.tcl b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/build_id.tcl similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/build_id.tcl rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/build_id.tcl diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/invaders.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/invaders.vhd new file mode 100644 index 00000000..ca17b82c --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/invaders.vhd @@ -0,0 +1,281 @@ +-- Space Invaders core logic +-- 9.984MHz clock +-- +-- Version : 0242 +-- +-- Copyright (c) 2002 Daniel Wallner (jesus@opencores.org) +-- +-- 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 SOFTWARE 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. +-- +-- Please report bugs to the author, but before you do so, please +-- make sure that this is not a derivative work and that +-- you have the latest version of this file. +-- +-- The latest version of this file can be found at: +-- http://www.fpgaarcade.com +-- +-- Limitations : +-- +-- File history : +-- +-- 0241 : First release +-- +-- 0242 : Cleaned up reset logic +-- +-- 0300 : MikeJ tidyup for audio release + +library IEEE; +use IEEE.std_logic_1164.all; +use IEEE.numeric_std.all; + +entity invaderst is + port( + Rst_n : in std_logic; + Clk : in std_logic; + ENA : out std_logic; + Coin : in std_logic; + Sel1Player : in std_logic; + Sel2Player : in std_logic; + Fire : in std_logic; + MoveLeft : in std_logic; + MoveRight : in std_logic; + MoveUp : in std_logic; + MoveDown : in std_logic; + DIP : in std_logic_vector(8 downto 1); + RDB : in std_logic_vector(7 downto 0); + IB : in std_logic_vector(7 downto 0); + RWD : out std_logic_vector(7 downto 0); + RAB : out std_logic_vector(12 downto 0); + AD : out std_logic_vector(15 downto 0); + SoundCtrl3 : out std_logic_vector(5 downto 0); + SoundCtrl5 : out std_logic_vector(5 downto 0); + Rst_n_s : out std_logic; + RWE_n : out std_logic; + Video : out std_logic; + HSync : out std_logic; + VSync : out std_logic + ); +end invaderst; + +architecture rtl of invaderst is + + component mw8080 + port( + Rst_n : in std_logic; + Clk : in std_logic; + ENA : out std_logic; + RWE_n : out std_logic; + RDB : in std_logic_vector(7 downto 0); + RAB : out std_logic_vector(12 downto 0); + Sounds : out std_logic_vector(7 downto 0); + Ready : out std_logic; + GDB : in std_logic_vector(7 downto 0); + IB : in std_logic_vector(7 downto 0); + DB : out std_logic_vector(7 downto 0); + AD : out std_logic_vector(15 downto 0); + Status : out std_logic_vector(7 downto 0); + Systb : out std_logic; + Int : out std_logic; + Hold_n : in std_logic; + IntE : out std_logic; + DBin_n : out std_logic; + Vait : out std_logic; + HldA : out std_logic; + Sample : out std_logic; + Wr : out std_logic; + Video : out std_logic; + HSync : out std_logic; + VSync : out std_logic); + end component; + + signal GDB0 : std_logic_vector(7 downto 0); + signal GDB1 : std_logic_vector(7 downto 0); + signal GDB2 : std_logic_vector(7 downto 0); + signal S : std_logic_vector(7 downto 0); + signal GDB : std_logic_vector(7 downto 0); + signal DB : std_logic_vector(7 downto 0); + signal Sounds : std_logic_vector(7 downto 0); + signal AD_i : std_logic_vector(15 downto 0); + signal PortWr : std_logic_vector(6 downto 2); + signal EA : std_logic_vector(2 downto 0); + signal D5 : std_logic_vector(15 downto 0); + signal WD_Cnt : unsigned(7 downto 0); + signal Sample : std_logic; + signal Rst_n_s_i : std_logic; + signal GDB_A : unsigned(1 downto 0); +begin + + Rst_n_s <= Rst_n_s_i; + RWD <= DB; + AD <= AD_i; + + process (Rst_n, Clk) + variable Rst_n_r : std_logic; + begin + if Rst_n = '0' then + Rst_n_r := '0'; + Rst_n_s_i <= '0'; + elsif Clk'event and Clk = '1' then + Rst_n_s_i <= Rst_n_r; + if WD_Cnt = 255 then + Rst_n_s_i <= '0'; + end if; + Rst_n_r := '1'; + end if; + end process; + + process (Rst_n_s_i, Clk) + variable Old_S0 : std_logic; + begin + if Rst_n_s_i = '0' then + WD_Cnt <= (others => '0'); + Old_S0 := '1'; + elsif Clk'event and Clk = '1' then + if Sounds(0) = '1' and Old_S0 = '0' then + WD_Cnt <= WD_Cnt + 1; + end if; + if PortWr(6) = '1' then + WD_Cnt <= (others => '0'); + end if; + Old_S0 := Sounds(0); + end if; + end process; + + u_mw8080: mw8080 + port map( + Rst_n => '1',--Rst_n_s_i, + Clk => Clk, + ENA => ENA, + RWE_n => RWE_n, + RDB => RDB, + IB => IB, + RAB => RAB, + Sounds => Sounds, + Ready => open, + GDB => GDB, + DB => DB, + AD => AD_i, + Status => open, + Systb => open, + Int => open, + Hold_n => '1', + IntE => open, + DBin_n => open, + Vait => open, + HldA => open, + Sample => Sample, + Wr => open, + Video => Video, + HSync => HSync, + VSync => VSync); + +-- with AD_i(9 downto 8) select +-- GDB <= GDB0 when "00", +-- GDB1 when "01", +-- GDB2 when "10", +-- S when others; + + GDB_A <= not AD_i(9) & AD_i(8); + + with GDB_A select + GDB <= GDB0 when "00", + GDB1 when "01", + GDB2 when "10", + S when others; + GDB0(0) <= '0'; + GDB0(1) <= '0'; + GDB0(2) <= '0'; + GDB0(3) <= '0'; + GDB0(4) <= not Fire; + GDB0(5) <= not MoveLeft; + GDB0(6) <= not MoveRight; + GDB0(7) <= '0'; + + GDB1(0) <= Coin; + GDB1(1) <= not Sel2Player; + GDB1(2) <= not Sel1Player; + GDB1(3) <= '1'; + GDB1(4) <= not Fire;--controller + GDB1(5) <= not MoveLeft;--controller + GDB1(6) <= not MoveRight;--controller + GDB1(7) <= '1'; + + GDB2(0) <= '0';--active high + GDB2(1) <= '0';--active high + GDB2(2) <= '0';--active high + GDB2(3) <= '0';--active high + GDB2(4) <= '0';--active high + GDB2(5) <= '0';--active high + GDB2(6) <= '0';--active high + GDB2(7) <= '0';--active high + + PortWr(2) <= '1' when AD_i(10 downto 8) = "010" and Sample = '1' else '0'; + PortWr(3) <= '1' when AD_i(10 downto 8) = "011" and Sample = '1' else '0'; + PortWr(4) <= '1' when AD_i(10 downto 8) = "100" and Sample = '1' else '0'; + PortWr(5) <= '1' when AD_i(10 downto 8) = "101" and Sample = '1' else '0'; + PortWr(6) <= '1' when AD_i(10 downto 8) = "110" and Sample = '1' else '0'; + + process (Rst_n_s_i, Clk) + variable OldSample : std_logic; + begin + if Rst_n_s_i = '0' then + D5 <= (others => '0'); + EA <= (others => '0'); + SoundCtrl3 <= (others => '0'); + SoundCtrl5 <= (others => '0'); + OldSample := '0'; + elsif Clk'event and Clk = '1' then + if PortWr(2) = '1' then + EA <= DB(2 downto 0); + end if; + if PortWr(3) = '1' then + SoundCtrl3 <= DB(5 downto 0); + end if; + if PortWr(4) = '1' and OldSample = '0' then + D5(15 downto 8) <= DB; + D5(7 downto 0) <= D5(15 downto 8); + end if; + if PortWr(5) = '1' then + SoundCtrl5 <= DB(5 downto 0); + end if; + OldSample := Sample; + end if; + end process; + + with EA select + S <= D5(15 downto 8) when "000", + D5(14 downto 7) when "001", + D5(13 downto 6) when "010", + D5(12 downto 5) when "011", + D5(11 downto 4) when "100", + D5(10 downto 3) when "101", + D5( 9 downto 2) when "110", + D5( 8 downto 1) when others; + +end; diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/invaders_audio.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/invaders_audio.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/invaders_audio.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/invaders_audio.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/mw8080.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/mw8080.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/mw8080.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/mw8080.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/pll.qip b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/pll.qip similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/pll.qip rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/pll.qip diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/pll.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/pll.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/pll.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/pll.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/ballbomb.zip b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/ballbomb.zip similarity index 82% rename from Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/ballbomb.zip rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/ballbomb.zip index 74f170d9772240cf6322fa2b558e4604cc7370e9..02178e7f51e8d17d799287093b2e7ffbc81d32cd 100644 GIT binary patch delta 573 zcmbPX)?ig1;LXe;!py+H!O$78*=6dv5U-kRI@05A=ubHFbmEHX^@;Waq@Bcn`vF)9sEqn96*5BITzD-~TzxJQ1p5=~r zgVN6Ixn(00&}e<1?dXr*QrG=#;yE)Xwp(0&_3G89yRV!=m;C0RJ^TJdEZ?z5A@^Ez3rRcr%_{Vr`?P8bI0R4Bj0t05AD81`9`%IY+ zhxZqmS5v-vvnq@Bf4Uk~?|5JbZ%v)WcJa%_#mA2e-w@ee8Nk+U_naK%xvj)}eGV`#of-ILZ;_GaF4=&* zqavUA-gv0DSa_<2nHPvDw6&gkS9-m)zW7qo-jx&oT22wWr4}7F{r;rm_P^LSOpr9S zXT}|8z-R*kg@z@KAQ~wKC-+EdF|B8uyhGA}=|B7AS3pXNZ?cS(0aL!nWIrHPDL%PD p%7|%_)Z{Hv22#(Z7#K?O49o+(S=m4)aRA{=VA`;jp8QWr3IODm@4x^6 delta 108 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 literal 0 HcmV?d00001 diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn02.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn02.vhd new file mode 100644 index 00000000..85fd82b9 --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn02.vhd @@ -0,0 +1,150 @@ +library ieee; +use ieee.std_logic_1164.all,ieee.numeric_std.all; + +entity tn02 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 tn02 is + type rom is array(0 to 2047) of std_logic_vector(7 downto 0); + signal rom_data: rom := ( + X"AF",X"BE",X"C2",X"0B",X"08",X"78",X"FE",X"3E",X"D2",X"69",X"08",X"78",X"FE",X"3C",X"DA",X"25", + X"08",X"2A",X"09",X"20",X"01",X"1E",X"02",X"CD",X"8C",X"08",X"21",X"05",X"20",X"36",X"00",X"21", + X"BF",X"20",X"36",X"00",X"C9",X"2A",X"07",X"20",X"EB",X"2A",X"09",X"20",X"01",X"1E",X"02",X"C3", + X"D5",X"01",X"36",X"FF",X"21",X"05",X"21",X"CD",X"A0",X"08",X"EB",X"2E",X"06",X"CD",X"52",X"1A", + X"E5",X"C1",X"0A",X"6F",X"03",X"0A",X"67",X"CD",X"D2",X"01",X"C3",X"25",X"08",X"36",X"FF",X"21", + X"09",X"21",X"CD",X"A0",X"08",X"EB",X"2E",X"0A",X"C3",X"3D",X"08",X"36",X"FF",X"21",X"0D",X"21", + X"CD",X"A0",X"08",X"EB",X"2E",X"0E",X"C3",X"3D",X"08",X"36",X"FF",X"21",X"11",X"21",X"CD",X"A0", + X"08",X"EB",X"2E",X"12",X"C3",X"3D",X"08",X"21",X"06",X"20",X"34",X"7E",X"E6",X"01",X"C2",X"85", + X"08",X"21",X"72",X"40",X"C9",X"21",X"36",X"40",X"C9",X"01",X"20",X"03",X"AF",X"C5",X"E5",X"77", + X"23",X"05",X"C2",X"8F",X"08",X"E1",X"01",X"20",X"00",X"09",X"C1",X"0D",X"C2",X"8D",X"08",X"C9", + X"7E",X"21",X"1D",X"41",X"3D",X"C8",X"11",X"60",X"00",X"19",X"C3",X"A4",X"08",X"AF",X"7C",X"1F", + X"57",X"7D",X"1F",X"E6",X"F0",X"0F",X"0F",X"0F",X"0F",X"5F",X"7A",X"E6",X"0F",X"07",X"07",X"07", + X"07",X"B3",X"C9",X"11",X"DD",X"43",X"06",X"02",X"C3",X"AD",X"0E",X"11",X"DD",X"43",X"06",X"02", + X"C3",X"9A",X"19",X"CD",X"38",X"14",X"CD",X"53",X"14",X"CD",X"40",X"10",X"CD",X"42",X"09",X"CD", + X"F8",X"08",X"CD",X"65",X"09",X"3A",X"E4",X"20",X"A7",X"CA",X"22",X"05",X"CD",X"89",X"1A",X"CD", + X"13",X"09",X"CD",X"35",X"1B",X"C3",X"22",X"05",X"21",X"1F",X"20",X"7E",X"A7",X"C8",X"46",X"36", + X"00",X"21",X"24",X"20",X"7E",X"0F",X"D0",X"36",X"00",X"2A",X"22",X"20",X"EB",X"21",X"38",X"20", + X"C3",X"0D",X"0A",X"CD",X"52",X"1A",X"2E",X"24",X"7E",X"FE",X"03",X"D8",X"21",X"BF",X"20",X"AF", + X"BE",X"C0",X"34",X"21",X"35",X"09",X"C3",X"7B",X"1A",X"00",X"00",X"07",X"07",X"01",X"00",X"01", + X"00",X"06",X"06",X"01",X"00",X"00",X"00",X"04",X"04",X"01",X"00",X"00",X"02",X"00",X"01",X"01", + X"01",X"00",X"3A",X"E4",X"20",X"A7",X"C8",X"21",X"38",X"20",X"7E",X"FE",X"FF",X"CA",X"60",X"09", + X"0F",X"D2",X"59",X"09",X"3E",X"10",X"C3",X"0E",X"02",X"23",X"23",X"23",X"23",X"C3",X"4A",X"09", + X"3E",X"10",X"C3",X"17",X"02",X"21",X"04",X"20",X"34",X"7E",X"E6",X"03",X"77",X"A7",X"CA",X"28", + X"19",X"FE",X"01",X"CA",X"38",X"19",X"FE",X"02",X"CA",X"66",X"19",X"FE",X"03",X"CA",X"85",X"19", + X"C9",X"21",X"38",X"20",X"CD",X"21",X"0A",X"21",X"3C",X"20",X"CD",X"21",X"0A",X"11",X"9D",X"20", + X"CD",X"DF",X"09",X"CD",X"07",X"13",X"CD",X"6A",X"0A",X"C3",X"D9",X"09",X"21",X"40",X"20",X"CD", + X"21",X"0A",X"21",X"44",X"20",X"CD",X"21",X"0A",X"11",X"9E",X"20",X"CD",X"DF",X"09",X"2E",X"0C", + X"CD",X"52",X"1A",X"CD",X"6A",X"0A",X"CD",X"D9",X"09",X"C3",X"15",X"15",X"21",X"48",X"20",X"CD", + X"21",X"0A",X"21",X"4C",X"20",X"CD",X"21",X"0A",X"11",X"9F",X"20",X"CD",X"DF",X"09",X"2E",X"14", + X"CD",X"52",X"1A",X"CD",X"6A",X"0A",X"C3",X"D9",X"09",X"21",X"9C",X"20",X"36",X"00",X"C9",X"21", + X"9B",X"20",X"7E",X"A7",X"CA",X"EB",X"09",X"23",X"36",X"00",X"C9",X"EB",X"34",X"7E",X"FE",X"02", + X"D2",X"F8",X"09",X"EB",X"23",X"36",X"FF",X"C9",X"36",X"00",X"EB",X"23",X"36",X"00",X"C9",X"57", + X"3A",X"9C",X"20",X"A7",X"7A",X"C2",X"0A",X"0A",X"37",X"C9",X"37",X"3F",X"C9",X"78",X"3D",X"CA", + X"19",X"0A",X"23",X"23",X"23",X"23",X"C3",X"0E",X"0A",X"36",X"01",X"23",X"23",X"73",X"23",X"72", + X"C9",X"7E",X"0F",X"D0",X"23",X"23",X"E5",X"CD",X"6C",X"11",X"CD",X"5B",X"0A",X"E1",X"E5",X"CD", + X"6C",X"11",X"7D",X"FE",X"18",X"DA",X"48",X"0A",X"01",X"F9",X"FF",X"09",X"EB",X"E1",X"73",X"23", + X"72",X"EB",X"11",X"DA",X"43",X"C3",X"CF",X"0E",X"E1",X"E5",X"CD",X"6C",X"11",X"22",X"B7",X"20", + X"E1",X"2B",X"AF",X"77",X"2B",X"77",X"21",X"B5",X"20",X"34",X"C9",X"11",X"DA",X"43",X"C3",X"AB", + X"0E",X"7C",X"B5",X"37",X"C8",X"7B",X"95",X"7A",X"9C",X"C9",X"E5",X"7E",X"47",X"07",X"D2",X"8A", + X"0A",X"23",X"23",X"CD",X"15",X"0B",X"78",X"0F",X"0F",X"7A",X"D2",X"DA",X"0A",X"FE",X"4B",X"DA", + X"A1",X"0A",X"36",X"25",X"E1",X"E5",X"3E",X"DF",X"A6",X"77",X"21",X"37",X"20",X"34",X"E1",X"23", + X"23",X"23",X"23",X"3A",X"37",X"20",X"FE",X"02",X"DA",X"6A",X"0A",X"21",X"37",X"20",X"36",X"00", + X"C9",X"FE",X"3C",X"D2",X"CC",X"0A",X"78",X"0F",X"E1",X"E5",X"23",X"7E",X"23",X"4E",X"23",X"46", + X"2B",X"2B",X"DA",X"2F",X"0B",X"CD",X"FF",X"09",X"D2",X"BF",X"0A",X"3D",X"CA",X"23",X"0B",X"77", + X"CD",X"A1",X"08",X"EB",X"60",X"69",X"CD",X"D2",X"01",X"C3",X"8A",X"0A",X"E1",X"E5",X"CD",X"03", + X"0B",X"E1",X"E5",X"7E",X"0F",X"0F",X"0F",X"C3",X"8A",X"0A",X"2B",X"2B",X"2B",X"FE",X"25",X"DA", + X"EE",X"0A",X"FE",X"3C",X"DA",X"FB",X"0A",X"7E",X"0F",X"0F",X"0F",X"C3",X"8A",X"0A",X"CD",X"08", + X"0B",X"E1",X"E5",X"23",X"23",X"23",X"36",X"48",X"C3",X"8A",X"0A",X"46",X"3E",X"DF",X"A6",X"77", + X"C3",X"A6",X"0A",X"7E",X"07",X"07",X"07",X"D8",X"3E",X"20",X"B6",X"77",X"23",X"23",X"5E",X"23", + X"56",X"EB",X"C3",X"89",X"08",X"E5",X"5E",X"23",X"56",X"2A",X"28",X"21",X"19",X"EB",X"E1",X"73", + X"23",X"72",X"C9",X"36",X"01",X"2B",X"3E",X"01",X"B6",X"77",X"3E",X"01",X"C3",X"C0",X"0A",X"CD", + X"FF",X"09",X"D2",X"BF",X"0A",X"3C",X"FE",X"08",X"DA",X"BF",X"0A",X"36",X"07",X"2B",X"3E",X"FE", + X"A6",X"77",X"3E",X"07",X"C3",X"C0",X"0A",X"CD",X"56",X"0B",X"CD",X"AB",X"0B",X"CD",X"D6",X"0B", + X"CD",X"40",X"15",X"C3",X"27",X"16",X"AF",X"21",X"B5",X"20",X"BE",X"C8",X"23",X"34",X"7E",X"FE", + X"01",X"CA",X"01",X"0C",X"FE",X"04",X"CA",X"07",X"0C",X"FE",X"07",X"D8",X"11",X"3C",X"44",X"CD", + X"0A",X"0C",X"CD",X"E0",X"15",X"21",X"B8",X"20",X"D2",X"81",X"0B",X"CD",X"9B",X"0B",X"C3",X"84", + X"0B",X"CD",X"8B",X"0B",X"21",X"00",X"00",X"22",X"B5",X"20",X"C9",X"AF",X"3A",X"34",X"20",X"BE", + X"D8",X"7E",X"21",X"7D",X"20",X"BE",X"D8",X"77",X"C3",X"0D",X"16",X"AF",X"3A",X"34",X"20",X"BE", + X"D0",X"7E",X"21",X"7F",X"20",X"BE",X"D0",X"77",X"C3",X"ED",X"15",X"AF",X"21",X"1D",X"20",X"BE", + X"C8",X"23",X"34",X"7E",X"FE",X"01",X"CA",X"16",X"0C",X"FE",X"04",X"CA",X"1C",X"0C",X"FE",X"07", + X"D8",X"2A",X"22",X"20",X"CD",X"76",X"03",X"01",X"10",X"02",X"CD",X"8C",X"08",X"21",X"00",X"00", + X"22",X"1D",X"20",X"C3",X"7D",X"15",X"AF",X"21",X"27",X"20",X"BE",X"C8",X"23",X"34",X"7E",X"FE", + X"01",X"CA",X"2B",X"0C",X"FE",X"04",X"CA",X"47",X"0C",X"FE",X"07",X"D8",X"2A",X"2D",X"20",X"01", + X"10",X"02",X"CD",X"8C",X"08",X"21",X"00",X"00",X"22",X"27",X"20",X"CD",X"6F",X"1A",X"C3",X"7D", + X"15",X"11",X"0C",X"44",X"C3",X"0A",X"0C",X"11",X"24",X"44",X"2A",X"B7",X"20",X"CD",X"76",X"03", + X"01",X"0C",X"02",X"C3",X"D5",X"01",X"11",X"54",X"44",X"C3",X"1F",X"0C",X"11",X"74",X"44",X"2A", + X"22",X"20",X"CD",X"76",X"03",X"01",X"10",X"02",X"C3",X"D5",X"01",X"2A",X"29",X"20",X"11",X"DA", + X"43",X"CD",X"AD",X"0E",X"2A",X"29",X"20",X"CD",X"76",X"03",X"22",X"2D",X"20",X"11",X"94",X"44", + X"01",X"10",X"02",X"CD",X"D5",X"01",X"C9",X"2A",X"2D",X"20",X"11",X"B4",X"44",X"C3",X"40",X"0C", + X"3A",X"E4",X"20",X"A7",X"C8",X"3A",X"DB",X"20",X"0F",X"DB",X"01",X"D0",X"DB",X"02",X"C9",X"21", + X"2F",X"20",X"AF",X"BE",X"C8",X"23",X"BE",X"C2",X"6E",X"0C",X"34",X"CD",X"E4",X"0C",X"3A",X"E4", + X"20",X"A7",X"C2",X"9D",X"0C",X"2A",X"E2",X"20",X"3A",X"E1",X"20",X"3C",X"32",X"E1",X"20",X"E6", + X"0F",X"C2",X"8B",X"0C",X"7D",X"FE",X"13",X"CC",X"9A",X"0C",X"23",X"22",X"E2",X"20",X"7E",X"0F", + X"DA",X"06",X"0D",X"0F",X"DA",X"23",X"0D",X"C3",X"A9",X"0C",X"2E",X"00",X"C9",X"CD",X"50",X"0C", + X"07",X"07",X"DA",X"06",X"0D",X"07",X"DA",X"23",X"0D",X"06",X"00",X"21",X"32",X"20",X"70",X"CD", + X"E4",X"0C",X"21",X"31",X"20",X"CD",X"A1",X"0D",X"2A",X"33",X"20",X"11",X"BE",X"43",X"01",X"02", + X"0E",X"CD",X"71",X"03",X"C5",X"E5",X"1A",X"A6",X"CA",X"D0",X"0C",X"3E",X"01",X"32",X"35",X"20", + X"1A",X"AE",X"77",X"23",X"13",X"0D",X"C2",X"C6",X"0C",X"E1",X"01",X"20",X"00",X"09",X"C1",X"05", + X"C2",X"C4",X"0C",X"C9",X"2A",X"33",X"20",X"11",X"BE",X"43",X"01",X"02",X"0E",X"CD",X"71",X"03", + X"C5",X"E5",X"1A",X"AE",X"77",X"23",X"13",X"0D",X"C2",X"F2",X"0C",X"E1",X"01",X"20",X"00",X"09", + X"C1",X"05",X"C2",X"F0",X"0C",X"C9",X"3A",X"34",X"20",X"FE",X"DA",X"D2",X"A9",X"0C",X"2A",X"33", + X"20",X"01",X"F8",X"0F",X"09",X"CD",X"76",X"03",X"7E",X"FE",X"7F",X"C2",X"A9",X"0C",X"06",X"02", + X"C3",X"AB",X"0C",X"3A",X"34",X"20",X"FE",X"38",X"DA",X"A9",X"0C",X"2A",X"33",X"20",X"01",X"F8", + X"FC",X"09",X"CD",X"76",X"03",X"7E",X"FE",X"7F",X"C2",X"A9",X"0C",X"06",X"FE",X"C3",X"AB",X"0C", + X"23",X"23",X"5E",X"23",X"7E",X"C6",X"02",X"57",X"EB",X"CD",X"AD",X"08",X"57",X"7D",X"E6",X"1F", + X"07",X"07",X"07",X"5F",X"EB",X"C9",X"21",X"54",X"20",X"AF",X"BE",X"C8",X"23",X"BE",X"C2",X"73", + X"0D",X"34",X"23",X"BE",X"21",X"00",X"FD",X"22",X"58",X"20",X"21",X"C8",X"D0",X"C4",X"1A",X"0E", + X"22",X"5A",X"20",X"3A",X"56",X"20",X"A7",X"21",X"5B",X"20",X"7E",X"C2",X"AD",X"0D",X"FE",X"28", + X"DA",X"C9",X"0D",X"21",X"57",X"20",X"34",X"E6",X"01",X"21",X"AE",X"40",X"CC",X"C1",X"0D",X"22", + X"5C",X"20",X"21",X"5A",X"20",X"CD",X"F0",X"0D",X"CD",X"02",X"0E",X"CD",X"24",X"0E",X"21",X"58", + X"20",X"4E",X"23",X"46",X"23",X"79",X"86",X"77",X"23",X"78",X"86",X"77",X"C9",X"FE",X"D0",X"D2", + X"C9",X"0D",X"21",X"57",X"20",X"34",X"E6",X"01",X"21",X"36",X"40",X"CC",X"C5",X"0D",X"C3",X"8F", + X"0D",X"21",X"E5",X"40",X"C9",X"21",X"72",X"40",X"C9",X"2A",X"5A",X"20",X"01",X"1B",X"02",X"CD", + X"76",X"03",X"CD",X"8C",X"08",X"06",X"0C",X"21",X"54",X"46",X"11",X"54",X"20",X"CD",X"8B",X"03", + X"21",X"13",X"20",X"34",X"7E",X"E6",X"01",X"21",X"56",X"20",X"36",X"01",X"C0",X"36",X"00",X"C9", + X"E5",X"23",X"23",X"5E",X"23",X"56",X"23",X"4E",X"23",X"46",X"E1",X"D5",X"5E",X"23",X"56",X"EB", + X"D1",X"C9",X"CD",X"76",X"03",X"C5",X"E5",X"1A",X"77",X"23",X"13",X"0D",X"C2",X"07",X"0E",X"E1", + X"01",X"20",X"00",X"09",X"C1",X"05",X"C2",X"05",X"0E",X"C9",X"21",X"00",X"03",X"22",X"58",X"20", + X"21",X"C8",X"28",X"C9",X"3A",X"56",X"20",X"A7",X"C2",X"A1",X"0E",X"CD",X"35",X"0E",X"D6",X"0A", + X"B8",X"DA",X"3D",X"0E",X"C9",X"2A",X"34",X"20",X"44",X"3A",X"0A",X"20",X"C9",X"21",X"B0",X"20", + X"AF",X"BE",X"CA",X"47",X"0E",X"35",X"C9",X"E5",X"CD",X"4B",X"1A",X"23",X"7E",X"FE",X"04",X"06", + X"50",X"D2",X"56",X"0E",X"06",X"60",X"E1",X"70",X"FE",X"0B",X"D2",X"7A",X"0E",X"FE",X"09",X"CD", + X"52",X"1A",X"2E",X"24",X"7E",X"FE",X"04",X"D2",X"8F",X"0E",X"21",X"60",X"20",X"34",X"2E",X"67", + X"34",X"2E",X"6E",X"34",X"21",X"95",X"20",X"36",X"00",X"C9",X"21",X"FB",X"03",X"22",X"63",X"20", + X"21",X"FA",X"02",X"22",X"6A",X"20",X"21",X"FB",X"FA",X"22",X"71",X"20",X"C3",X"6A",X"0E",X"21", + X"FC",X"02",X"22",X"63",X"20",X"21",X"FB",X"01",X"22",X"6A",X"20",X"21",X"FB",X"FD",X"C3",X"89", + X"0E",X"CD",X"35",X"0E",X"C6",X"08",X"B8",X"D2",X"3D",X"0E",X"C9",X"06",X"03",X"CD",X"71",X"03", + X"C5",X"E5",X"1A",X"D3",X"04",X"DB",X"03",X"2F",X"A6",X"77",X"23",X"13",X"AF",X"D3",X"04",X"DB", + X"03",X"2F",X"A6",X"77",X"E1",X"01",X"20",X"00",X"09",X"C1",X"05",X"C2",X"B0",X"0E",X"C9",X"06", + X"03",X"CD",X"71",X"03",X"C5",X"E5",X"1A",X"D3",X"04",X"DB",X"03",X"AE",X"77",X"23",X"13",X"AF", + X"D3",X"04",X"DB",X"03",X"AE",X"77",X"E1",X"01",X"20",X"00",X"09",X"C1",X"05",X"C2",X"D4",X"0E", + X"C9",X"21",X"60",X"20",X"AF",X"BE",X"C8",X"23",X"BE",X"C2",X"FE",X"0E",X"35",X"C9",X"23",X"BE", + X"C2",X"0A",X"0F",X"34",X"CD",X"33",X"0F",X"22",X"65",X"20",X"CD",X"3B",X"0F",X"21",X"66",X"20", + X"7E",X"FE",X"30",X"DC",X"46",X"0F",X"FE",X"E8",X"D4",X"53",X"0F",X"2B",X"7E",X"FE",X"18",X"DA", + X"5E",X"0F",X"21",X"63",X"20",X"CD",X"A1",X"0D",X"2A",X"65",X"20",X"11",X"DA",X"0F",X"06",X"08", + X"C3",X"D1",X"0E",X"2A",X"5A",X"20",X"01",X"00",X"08",X"09",X"C9",X"2A",X"65",X"20",X"11",X"DA", + X"0F",X"06",X"08",X"C3",X"AD",X"0E",X"F5",X"E5",X"2A",X"65",X"20",X"CD",X"3E",X"0F",X"E1",X"36", + X"E0",X"F1",X"C9",X"E5",X"2A",X"65",X"20",X"CD",X"3E",X"0F",X"E1",X"36",X"34",X"C9",X"CD",X"3B", + X"0F",X"21",X"60",X"46",X"11",X"60",X"20",X"06",X"07",X"C3",X"8B",X"03",X"21",X"67",X"20",X"AF", + X"BE",X"C8",X"23",X"BE",X"CA",X"79",X"0F",X"35",X"C9",X"23",X"BE",X"C2",X"85",X"0F",X"34",X"CD", + X"33",X"0F",X"22",X"6C",X"20",X"2A",X"6C",X"20",X"CD",X"3E",X"0F",X"21",X"6D",X"20",X"7E",X"FE", + X"30",X"DC",X"BC",X"0F",X"FE",X"E8",X"D4",X"C4",X"0F",X"2B",X"7E",X"47",X"CD",X"52",X"1A",X"2E", + X"24",X"7E",X"FE",X"05",X"0E",X"13",X"D2",X"AB",X"0F",X"0E",X"18",X"78",X"B9",X"DA",X"CB",X"0F", + X"21",X"6A",X"20",X"CD",X"A1",X"0D",X"2A",X"6C",X"20",X"C3",X"2B",X"0F",X"F5",X"E5",X"2A",X"6C", + X"20",X"C3",X"57",X"0F",X"E5",X"2A",X"6C",X"20",X"C3",X"4B",X"0F",X"2A",X"6C",X"20",X"CD",X"3E", + X"0F",X"21",X"67",X"46",X"11",X"67",X"20",X"C3",X"67",X"0F",X"60",X"F0",X"F0",X"F0",X"F0",X"60", + X"90",X"90",X"21",X"6E",X"20",X"AF",X"BE",X"C8",X"23",X"BE",X"CA",X"EF",X"0F",X"35",X"C9",X"23", + X"BE",X"C2",X"FB",X"0F",X"34",X"CD",X"33",X"0F",X"22",X"73",X"20",X"2A",X"73",X"20",X"CD",X"3E"); +begin +process(clk) +begin + if rising_edge(clk) then + data <= rom_data(to_integer(unsigned(addr))); + end if; +end process; +end architecture; diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn03 b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn03 new file mode 100644 index 0000000000000000000000000000000000000000..e0ab28e6a5cb5e8be440d36bb172a55933488eca GIT binary patch literal 2048 zcmYjReQXnD7{BXXuid2d-d=m#D&X_pjj3%YV;qZVNL@@FF=#|%{D_MFLkNZd6SaV@ zI2Q*7i1CZ~kBOR?fnW6xV^CP#dT!x{uV{xbPoh-qzz`$*10$Ka`n>I2yj<^n`h5JJ z-}AiB`-bULkoP*z8>)BdOhQfOy;gUXO8bDl6H4p^I~l%O94}mxnDQ6xk!4In`c9I2|9U(`mv5>8J$5b}ocrA8rBTX;`e} zhbLDP)8wI9l6V@3EVQ8^RO%phUma+D1L)oc&_l$TO(v7w0(*iOHv_#9EXOoAn)hFJ zSU@v!2w9~!fK|x{&c8(xxdvbk0e2JBW85!MyFZ4}&v|RV9cOohjNLFscLVQFbFut6 z!G6FH_Qm~*IR9%?d5T-iy5%P%QKd`4!W|KXznTmKFjIaeoI_mpQm~TD_=naZ;<57L z2-_UD7iqK|EcO_eQtj;Cc-~XW?GdM%UJAogN@;ndg3Ll~>`s9`%eT9i2%xND2PC?t zm#hJ$mx}|vWB`;~xrj5tmPHXL)nVn=h26eL(%R((zt%J_j34$<1iMl13vGg(=98ID z_I;H4!OHV=ha;G!TS%?6Qc=viEADWl<$3Qq_jn{D<<@xt*N!MkruD4kFO5g;u7h3P z(s3gbq||cGKO82PvhME@@^==E>`xzlQ7MApdJ*wLjow82%pLX#Atl?0&1<%>e>Eoi zGBTSJ*_e<4z7EFO34v|VP%HaV9d&H?4vj`SNwi0i?R!vML0Ws1X7;#`eI{UwGS6c% z>{X3+ViB_rmD-IJlrHHpR?@|Nsd z0{8rmdltCs$h_;@nvT!kG>iC zWLkpZ(N#jbB9G(VjQLA*T1M=W07=ggqlfC9ip*;m6YN$2NsB+n$E)3f=`VFe>p75T zd(>eY7R{)WcSUiJ3&l~hIBJ=eLt|K~Lv>W0G>fGzQ7f?;MAhG9#OJRC9L4l~Fx+3- zAN4Mj4@D=W?P#-41-()GxhPtV5unF$w)9@2gA%ZDijL32jUe0z5Ed1KB6~)%zZVO+ zWDZsH{|^R_K2qH4?ajZ@B|uuJkL+~Rp)c@w9P_h5ItayYCnCjZeqzo_C^r?S6N6wJ z0`_n-I^sQc0FP=Tq<&tjXsD2DwKiiA`n}fjZOz6$pf5sqt?uri$cwe|o;W!e^W@S) zG18v3hhkn}nyk&Tp%}jv2f%m{*o7F~59K{Eb}_~ecRL~S^GPVm_VZFr~25zAjdrbbO0gP_BcDoG0E#$bg^HGVJ`QNm>tp^1Md{l z7M4z*$D`#*ZY|a=WG*F#a*pTATyf`O4f{0BH|#g)Xpha?L+^FcI=t}mXZ>$aq{eTiCFT&mmUVo>~40_ zB80<=6rNW6_zU2#$w3=WTAVzpuW=AiY!z8qM{Tz-Uuzu^+ktK4JsQzbZltlXK?4{* ziVdjdy;|uHz2XGiYkI}R$No*PR9R2xt}Ne_z2L5FN%iNCm1p${`ItMam zy(_5QL2EVK#ER4KQMiw-x1`^P;gj@TU{^xy(H8nKtjQ0T9%!*&XrXU|{Z6QVCNSm0 zn#Zg0Dfvg~vz)0F8bSrHpe8(gn_8U25x5*r6kx^V7cE8sx;_RiJ`)azU$%4z+ncIm z2-TdE%;uaH->$_s8}Gtp(>MZ7q3eBc1Rp+v&l5a+1kWe>@U4kn&BIr$`D(RxYW=QcDeryrF4CmxgopQ8LB%5VM)flmWo literal 0 HcmV?d00001 diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn03.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn03.vhd new file mode 100644 index 00000000..d35cb0d4 --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn03.vhd @@ -0,0 +1,150 @@ +library ieee; +use ieee.std_logic_1164.all,ieee.numeric_std.all; + +entity tn03 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 tn03 is + type rom is array(0 to 2047) of std_logic_vector(7 downto 0); + signal rom_data: rom := ( + X"0F",X"21",X"74",X"20",X"7E",X"FE",X"30",X"DC",X"22",X"10",X"FE",X"E8",X"D4",X"2A",X"10",X"2B", + X"7E",X"FE",X"18",X"DA",X"31",X"10",X"21",X"71",X"20",X"CD",X"A1",X"0D",X"2A",X"73",X"20",X"C3", + X"2B",X"0F",X"F5",X"E5",X"2A",X"73",X"20",X"C3",X"4B",X"0F",X"E5",X"2A",X"73",X"20",X"C3",X"57", + X"0F",X"2A",X"73",X"20",X"CD",X"3E",X"0F",X"21",X"6E",X"46",X"11",X"6E",X"20",X"C3",X"67",X"0F", + X"21",X"11",X"20",X"AF",X"BE",X"C8",X"36",X"00",X"21",X"14",X"20",X"34",X"21",X"00",X"00",X"22", + X"16",X"20",X"2A",X"1A",X"20",X"CD",X"C3",X"08",X"21",X"60",X"20",X"AF",X"BE",X"CA",X"B0",X"10", + X"21",X"65",X"20",X"CD",X"8F",X"10",X"D4",X"6C",X"10",X"C3",X"B0",X"10",X"CD",X"96",X"10",X"DA", + X"73",X"10",X"C9",X"CD",X"9D",X"10",X"D2",X"7A",X"10",X"C9",X"CD",X"A9",X"10",X"DA",X"81",X"10", + X"C9",X"E1",X"2A",X"65",X"20",X"22",X"93",X"20",X"21",X"91",X"20",X"34",X"C3",X"5E",X"0F",X"3A", + X"1A",X"20",X"C6",X"08",X"BE",X"C9",X"F5",X"3E",X"10",X"86",X"C3",X"A5",X"10",X"3A",X"1B",X"20", + X"23",X"F5",X"7E",X"D6",X"08",X"47",X"F1",X"B8",X"C9",X"F5",X"3E",X"10",X"86",X"C3",X"A5",X"10", + X"21",X"67",X"20",X"AF",X"BE",X"CA",X"E7",X"10",X"21",X"6C",X"20",X"CD",X"8F",X"10",X"D4",X"C4", + X"10",X"C3",X"E7",X"10",X"CD",X"96",X"10",X"DA",X"CB",X"10",X"C9",X"CD",X"9D",X"10",X"D2",X"D2", + X"10",X"C9",X"CD",X"A9",X"10",X"DA",X"D9",X"10",X"C9",X"E1",X"2A",X"6C",X"20",X"22",X"93",X"20", + X"21",X"91",X"20",X"34",X"C3",X"CB",X"0F",X"21",X"6E",X"20",X"AF",X"BE",X"CA",X"1E",X"11",X"21", + X"73",X"20",X"CD",X"8F",X"10",X"D4",X"FB",X"10",X"C3",X"1E",X"11",X"CD",X"96",X"10",X"DA",X"02", + X"11",X"C9",X"CD",X"9D",X"10",X"D2",X"09",X"11",X"C9",X"CD",X"A9",X"10",X"DA",X"10",X"11",X"C9", + X"E1",X"2A",X"73",X"20",X"22",X"93",X"20",X"21",X"91",X"20",X"34",X"C3",X"31",X"10",X"21",X"38", + X"20",X"22",X"75",X"20",X"0E",X"06",X"7E",X"A7",X"CA",X"33",X"11",X"23",X"23",X"CD",X"8F",X"10", + X"D4",X"44",X"11",X"2A",X"75",X"20",X"11",X"04",X"00",X"19",X"22",X"75",X"20",X"0D",X"C2",X"26", + X"11",X"C3",X"71",X"11",X"CD",X"96",X"10",X"DA",X"4B",X"11",X"C9",X"CD",X"9D",X"10",X"D2",X"52", + X"11",X"C9",X"CD",X"A9",X"10",X"DA",X"59",X"11",X"C9",X"F1",X"2B",X"2B",X"2B",X"36",X"00",X"CD", + X"6A",X"11",X"22",X"29",X"20",X"21",X"27",X"20",X"34",X"C9",X"23",X"23",X"5E",X"23",X"56",X"EB", + X"C9",X"CD",X"07",X"13",X"22",X"77",X"20",X"0E",X"06",X"E5",X"21",X"1F",X"20",X"34",X"E1",X"7E", + X"07",X"DC",X"9D",X"11",X"2A",X"77",X"20",X"11",X"04",X"00",X"19",X"22",X"77",X"20",X"0D",X"C2", + X"79",X"11",X"21",X"1F",X"20",X"36",X"00",X"CD",X"E2",X"14",X"C3",X"7D",X"15",X"CD",X"6A",X"11", + X"7C",X"FE",X"3C",X"D0",X"C5",X"CD",X"49",X"0D",X"22",X"79",X"20",X"C1",X"21",X"79",X"20",X"3A", + X"1A",X"20",X"C6",X"0A",X"BE",X"D2",X"B9",X"11",X"C9",X"F5",X"3E",X"20",X"86",X"47",X"F1",X"B8", + X"DA",X"C4",X"11",X"C9",X"3A",X"1B",X"20",X"23",X"F5",X"7E",X"D6",X"08",X"47",X"F1",X"B8",X"D2", + X"D3",X"11",X"C9",X"F5",X"3E",X"23",X"86",X"47",X"F1",X"B8",X"DA",X"DE",X"11",X"C9",X"F1",X"E5", + X"21",X"1D",X"20",X"34",X"2A",X"1A",X"20",X"01",X"00",X"F6",X"09",X"22",X"22",X"20",X"2A",X"77", + X"20",X"7E",X"E6",X"0F",X"77",X"CD",X"6A",X"11",X"CD",X"89",X"08",X"E1",X"2B",X"3E",X"05",X"86", + X"47",X"3A",X"1A",X"20",X"B8",X"D2",X"0E",X"12",X"CD",X"67",X"1A",X"C3",X"0C",X"13",X"21",X"24", + X"20",X"34",X"CD",X"5F",X"1A",X"C3",X"0C",X"13",X"2E",X"24",X"CD",X"52",X"1A",X"7E",X"FE",X"06", + X"D2",X"24",X"12",X"C9",X"E5",X"3A",X"1D",X"20",X"A7",X"D3",X"06",X"C2",X"25",X"12",X"E1",X"36", + X"00",X"CD",X"0D",X"19",X"CD",X"4C",X"00",X"21",X"7B",X"20",X"34",X"21",X"00",X"46",X"11",X"00", + X"20",X"06",X"31",X"CD",X"8B",X"03",X"21",X"35",X"46",X"11",X"35",X"20",X"06",X"46",X"CD",X"8B", + X"03",X"21",X"81",X"46",X"11",X"81",X"20",X"06",X"3F",X"CD",X"8B",X"03",X"21",X"14",X"20",X"34", + X"CD",X"1E",X"14",X"CD",X"52",X"1A",X"2E",X"26",X"34",X"7E",X"47",X"0F",X"DA",X"71",X"12",X"2B", + X"34",X"78",X"FE",X"08",X"CC",X"13",X"13",X"FE",X"0F",X"CC",X"13",X"13",X"CD",X"AD",X"12",X"CD", + X"07",X"13",X"23",X"23",X"5E",X"23",X"56",X"21",X"09",X"20",X"73",X"23",X"72",X"3E",X"30",X"CD", + X"D5",X"14",X"21",X"05",X"20",X"34",X"7E",X"A7",X"D3",X"06",X"C2",X"96",X"12",X"21",X"7B",X"20", + X"36",X"00",X"2E",X"2F",X"34",X"2E",X"14",X"36",X"00",X"CD",X"78",X"1A",X"C9",X"CD",X"52",X"1A", + X"2E",X"25",X"7E",X"FE",X"0B",X"DA",X"BB",X"12",X"3E",X"03",X"77",X"47",X"FE",X"07",X"DA",X"C3", + X"12",X"06",X"06",X"3E",X"18",X"D6",X"03",X"05",X"C2",X"C5",X"12",X"4F",X"CD",X"07",X"13",X"23", + X"23",X"EB",X"69",X"26",X"27",X"CD",X"00",X"03",X"2E",X"25",X"CD",X"52",X"1A",X"7E",X"0F",X"0F", + X"11",X"E8",X"44",X"DA",X"E9",X"12",X"11",X"F8",X"44",X"CD",X"07",X"13",X"CD",X"EF",X"02",X"CD", + X"07",X"13",X"7E",X"0F",X"0F",X"01",X"20",X"00",X"DA",X"FE",X"12",X"01",X"E0",X"FF",X"21",X"28", + X"21",X"71",X"23",X"70",X"C3",X"BC",X"00",X"2E",X"04",X"C3",X"52",X"1A",X"2E",X"24",X"CD",X"52", + X"1A",X"34",X"C9",X"F5",X"3E",X"FF",X"CD",X"04",X"02",X"3E",X"04",X"CD",X"FB",X"01",X"CD",X"C1", + X"00",X"3E",X"20",X"CD",X"FB",X"01",X"CD",X"83",X"1A",X"CD",X"BC",X"00",X"CD",X"69",X"13",X"3E", + X"04",X"CD",X"04",X"02",X"2E",X"26",X"CD",X"52",X"1A",X"7E",X"0F",X"DA",X"49",X"13",X"21",X"12", + X"30",X"11",X"14",X"40",X"06",X"04",X"C3",X"51",X"13",X"21",X"12",X"2D",X"11",X"18",X"40",X"06", + X"0A",X"CD",X"60",X"02",X"CD",X"B6",X"00",X"CD",X"4C",X"00",X"3E",X"80",X"CD",X"D5",X"14",X"CD", + X"92",X"13",X"21",X"30",X"20",X"36",X"00",X"F1",X"C9",X"21",X"03",X"24",X"22",X"2D",X"21",X"21", + X"1C",X"40",X"22",X"2F",X"21",X"0E",X"71",X"C5",X"2A",X"2D",X"21",X"CD",X"BB",X"13",X"22",X"2D", + X"21",X"2A",X"2F",X"21",X"CD",X"CF",X"13",X"22",X"2F",X"21",X"C1",X"0D",X"C2",X"77",X"13",X"CD", + X"FC",X"00",X"0E",X"79",X"21",X"1C",X"33",X"22",X"2D",X"21",X"21",X"03",X"32",X"22",X"2F",X"21", + X"C5",X"AF",X"2A",X"2D",X"21",X"CD",X"D1",X"13",X"22",X"2D",X"21",X"AF",X"2A",X"2F",X"21",X"CD", + X"BD",X"13",X"22",X"2F",X"21",X"C1",X"0D",X"C2",X"A0",X"13",X"C9",X"3E",X"FF",X"06",X"1A",X"E5", + X"77",X"23",X"CD",X"E3",X"13",X"05",X"C2",X"C0",X"13",X"E1",X"11",X"20",X"00",X"19",X"C9",X"3E", + X"FF",X"06",X"1A",X"E5",X"77",X"2B",X"CD",X"E3",X"13",X"05",X"C2",X"D4",X"13",X"E1",X"11",X"E0", + X"FF",X"19",X"C9",X"1E",X"20",X"D3",X"06",X"1D",X"C2",X"E5",X"13",X"C9",X"DB",X"02",X"E6",X"04", + X"C8",X"3A",X"03",X"20",X"A7",X"C0",X"31",X"00",X"24",X"06",X"04",X"C5",X"CD",X"1E",X"14",X"C1", + X"05",X"C2",X"FB",X"13",X"3E",X"01",X"32",X"03",X"20",X"CD",X"B6",X"00",X"FB",X"11",X"22",X"40", + X"21",X"16",X"30",X"06",X"04",X"CD",X"60",X"02",X"CD",X"C1",X"00",X"C3",X"18",X"00",X"21",X"03", + X"24",X"01",X"DF",X"1A",X"C5",X"E5",X"36",X"00",X"23",X"05",X"C2",X"26",X"14",X"E1",X"11",X"20", + X"00",X"19",X"C1",X"0D",X"C2",X"24",X"14",X"C9",X"CD",X"50",X"0C",X"E6",X"10",X"CA",X"4D",X"14", + X"21",X"14",X"20",X"AF",X"BE",X"C0",X"23",X"BE",X"C0",X"34",X"23",X"34",X"C9",X"21",X"15",X"20", + X"36",X"00",X"C9",X"21",X"16",X"20",X"AF",X"BE",X"C8",X"23",X"BE",X"C2",X"69",X"14",X"34",X"2A", + X"33",X"20",X"01",X"10",X"05",X"09",X"22",X"1A",X"20",X"2A",X"1A",X"20",X"CD",X"C3",X"08",X"2A", + X"1A",X"20",X"3A",X"54",X"20",X"A7",X"7D",X"C2",X"88",X"14",X"FE",X"E0",X"D2",X"8D",X"14",X"C6", + X"03",X"6F",X"22",X"1A",X"20",X"C3",X"CB",X"08",X"FE",X"C0",X"C3",X"7C",X"14",X"2A",X"1A",X"20", + X"22",X"BD",X"20",X"21",X"BB",X"20",X"34",X"21",X"16",X"46",X"11",X"16",X"20",X"06",X"07",X"C3", + X"8B",X"03",X"21",X"BB",X"20",X"AF",X"BE",X"C8",X"23",X"BE",X"C2",X"BD",X"14",X"34",X"2A",X"BD", + X"20",X"11",X"CD",X"14",X"01",X"08",X"01",X"CD",X"76",X"03",X"C3",X"D5",X"01",X"AF",X"77",X"2B", + X"77",X"2A",X"BD",X"20",X"01",X"08",X"01",X"CD",X"76",X"03",X"C3",X"8C",X"08",X"A9",X"5C",X"BE", + X"7F",X"FE",X"7F",X"7E",X"95",X"32",X"00",X"20",X"3A",X"00",X"20",X"A7",X"D3",X"06",X"C2",X"D8", + X"14",X"C9",X"21",X"82",X"20",X"AF",X"BE",X"C8",X"3A",X"1A",X"20",X"D6",X"08",X"21",X"83",X"20", + X"BE",X"D0",X"C6",X"12",X"BE",X"D8",X"3A",X"1B",X"20",X"23",X"D6",X"03",X"BE",X"D0",X"C6",X"09", + X"BE",X"D8",X"2A",X"83",X"20",X"22",X"8D",X"20",X"CD",X"5B",X"0A",X"21",X"82",X"20",X"36",X"00", + X"21",X"8B",X"20",X"34",X"C9",X"21",X"82",X"20",X"AF",X"BE",X"C8",X"23",X"5E",X"23",X"56",X"EB", + X"E5",X"CD",X"5B",X"0A",X"E1",X"11",X"F9",X"FF",X"19",X"22",X"83",X"20",X"7D",X"FE",X"18",X"D2", + X"42",X"0A",X"22",X"87",X"20",X"21",X"85",X"20",X"36",X"FF",X"21",X"82",X"20",X"36",X"00",X"C9", + X"21",X"85",X"20",X"AF",X"BE",X"C8",X"23",X"34",X"7E",X"FE",X"01",X"CA",X"83",X"15",X"FE",X"04", + X"C2",X"59",X"15",X"11",X"24",X"44",X"C3",X"86",X"15",X"FE",X"07",X"D8",X"11",X"3C",X"44",X"CD", + X"86",X"15",X"21",X"00",X"00",X"22",X"81",X"20",X"22",X"85",X"20",X"CD",X"E0",X"15",X"21",X"88", + X"20",X"D2",X"7A",X"15",X"CD",X"E7",X"15",X"C3",X"7D",X"15",X"CD",X"07",X"16",X"21",X"14",X"20", + X"36",X"00",X"C9",X"11",X"0C",X"44",X"2A",X"87",X"20",X"CD",X"76",X"03",X"01",X"0C",X"02",X"C3", + X"D5",X"01",X"21",X"8B",X"20",X"AF",X"BE",X"C8",X"23",X"34",X"7E",X"FE",X"01",X"CA",X"CE",X"15", + X"FE",X"04",X"C2",X"AB",X"15",X"11",X"B4",X"44",X"C3",X"D1",X"15",X"FE",X"07",X"D8",X"2A",X"8D", + X"20",X"CD",X"76",X"03",X"01",X"10",X"02",X"CD",X"8C",X"08",X"21",X"00",X"00",X"22",X"8B",X"20", + X"21",X"81",X"20",X"36",X"00",X"CD",X"6F",X"1A",X"CD",X"D7",X"15",X"C3",X"7D",X"15",X"11",X"94", + X"44",X"2A",X"8D",X"20",X"C3",X"89",X"15",X"CD",X"E0",X"15",X"DA",X"ED",X"15",X"C3",X"0D",X"16", + X"CD",X"07",X"13",X"7E",X"0F",X"0F",X"C9",X"AF",X"3A",X"34",X"20",X"BE",X"D0",X"21",X"80",X"20", + X"34",X"7E",X"FE",X"03",X"DA",X"FF",X"15",X"36",X"00",X"3E",X"E8",X"2B",X"86",X"77",X"C9",X"FE", + X"02",X"3E",X"F0",X"DA",X"FB",X"15",X"C9",X"AF",X"3A",X"34",X"20",X"BE",X"D8",X"21",X"7E",X"20", + X"34",X"7E",X"FE",X"03",X"DA",X"1F",X"16",X"36",X"00",X"3E",X"15",X"2B",X"86",X"77",X"C9",X"FE", + X"02",X"3E",X"0D",X"DA",X"1B",X"16",X"C9",X"21",X"91",X"20",X"AF",X"BE",X"C8",X"23",X"34",X"7E", + X"FE",X"01",X"CA",X"BA",X"16",X"FE",X"04",X"CA",X"C9",X"16",X"FE",X"07",X"D8",X"CD",X"CF",X"16", + X"21",X"00",X"00",X"22",X"91",X"20",X"CD",X"5F",X"1A",X"21",X"95",X"20",X"34",X"7E",X"FE",X"03", + X"D2",X"5E",X"16",X"3E",X"50",X"32",X"C2",X"20",X"CD",X"8C",X"02",X"C3",X"7D",X"15",X"CD",X"88", + X"16",X"21",X"C1",X"20",X"70",X"78",X"C6",X"20",X"CD",X"2E",X"03",X"2A",X"93",X"20",X"CD",X"76", + X"03",X"CD",X"45",X"03",X"11",X"34",X"04",X"CD",X"45",X"03",X"11",X"34",X"04",X"CD",X"45",X"03", + X"21",X"96",X"20",X"34",X"23",X"36",X"0A",X"C9",X"3A",X"01",X"20",X"0F",X"0F",X"06",X"03",X"0F", + X"D8",X"06",X"05",X"0F",X"D8",X"06",X"07",X"0F",X"D8",X"06",X"09",X"C9",X"21",X"96",X"20",X"AF", + X"BE",X"C8",X"23",X"BE",X"CA",X"A9",X"16",X"35",X"C9",X"CD",X"8C",X"02",X"01",X"18",X"01",X"CD", + X"D2",X"16",X"21",X"96",X"20",X"36",X"00",X"C3",X"7D",X"15",X"11",X"94",X"44",X"2A",X"93",X"20", + X"CD",X"76",X"03",X"01",X"10",X"02",X"C3",X"D5",X"01",X"11",X"B4",X"44",X"C3",X"BD",X"16",X"01", + X"10",X"02",X"2A",X"93",X"20",X"CD",X"76",X"03",X"C3",X"8C",X"08",X"21",X"81",X"20",X"AF",X"BE", + X"C0",X"CD",X"07",X"13",X"E5",X"7E",X"FE",X"FF",X"C2",X"ED",X"16",X"E1",X"C9",X"07",X"DA",X"F9", + X"16",X"E1",X"23",X"23",X"23",X"23",X"C3",X"E4",X"16",X"E1",X"E5",X"CD",X"40",X"0D",X"4D",X"44", + X"CD",X"E0",X"15",X"21",X"7F",X"20",X"DA",X"2F",X"17",X"2E",X"7D",X"7E",X"B8",X"D2",X"F1",X"16", + X"C6",X"04",X"B8",X"DA",X"F1",X"16",X"21",X"83",X"20",X"71",X"23",X"78",X"FE",X"30",X"DA",X"F1", + X"16",X"FE",X"F0",X"D2",X"F1",X"16",X"70",X"21",X"FF",X"FF",X"22",X"81",X"20",X"E1",X"C9",X"7E", + X"B8",X"D2",X"F1",X"16",X"C6",X"06",X"B8",X"DA",X"F1",X"16",X"C3",X"16",X"17",X"3A",X"AA",X"20", + X"A7",X"C8",X"21",X"A2",X"20",X"CD",X"F0",X"0D",X"CD",X"5D",X"17",X"21",X"AE",X"20",X"35",X"7E", + X"A7",X"C2",X"57",X"17",X"C3",X"82",X"17",X"21",X"A0",X"20",X"C3",X"A1",X"0D",X"7D",X"E6",X"07", + X"D3",X"02",X"CD",X"76",X"03",X"C5",X"E5",X"1A",X"D3",X"04",X"DB",X"03",X"B6",X"77",X"23",X"13", + X"AF",X"D3",X"04",X"DB",X"03",X"B6",X"77",X"E1",X"01",X"20",X"00",X"09",X"C1",X"05",X"C2",X"65", + X"17",X"C9",X"2A",X"A8",X"20",X"EB",X"1A",X"2A",X"AF",X"20",X"2D",X"CA",X"BA",X"17",X"22",X"AF", + X"20",X"32",X"AE",X"20",X"13",X"1A",X"E6",X"0F",X"07",X"01",X"BF",X"17",X"26",X"00",X"6F",X"09", + X"E5",X"C1",X"21",X"A0",X"20",X"0A",X"77",X"03",X"23",X"0A",X"77",X"13",X"1A",X"6F",X"13",X"1A", + X"67",X"22",X"A2",X"20",X"EB",X"23",X"22",X"A8",X"20",X"C9",X"AF",X"32",X"AA",X"20",X"C9",X"00", + X"02",X"02",X"02",X"02",X"00",X"02",X"FE",X"00",X"FE",X"FE",X"FE",X"FE",X"00",X"FE",X"02",X"01", + X"02",X"02",X"01",X"02",X"FF",X"01",X"FE",X"FF",X"FE",X"FE",X"FF",X"FE",X"01",X"FF",X"02",X"FF", + X"FF",X"24",X"06",X"D7",X"30",X"10",X"00",X"D7",X"30",X"04",X"07",X"D7",X"50",X"0A",X"06",X"CF", + X"58",X"04",X"05",X"BC",X"58",X"04",X"07",X"B4",X"50",X"0A",X"06",X"AC",X"58",X"04",X"05",X"98"); +begin +process(clk) +begin + if rising_edge(clk) then + data <= rom_data(to_integer(unsigned(addr))); + end if; +end process; +end architecture; diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn04 b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn04 new file mode 100644 index 0000000000000000000000000000000000000000..2097c45c4a73bfbba52d9c0bcf036a18403f133a GIT binary patch literal 2048 zcmeHF!E4iC6#tSYX|i?gI=8h=ndDp9$|iJJw_39`4B41Pa6?2?6g}xh5HEHzjPtS` z99RdUhv~sXyMx*x9(EX|O{_MB4?5?hSYcG0AQNY!m$xJoLfi_j|wh<$W)| zp%mOadqPU3}s55|Xp*FE(vqEx-?+9YrO)(Xh$&d@}h1h}! zA@aekFl2-3JRp&47CXC|a~3_z9GzRG8fdaiDJ)rTtYlg3g?lkusnedgO?`?dS)?#J zL*p(fgaVBrWXLWlsnFU61*+TvoYKF#Wj_$!BzJd-vO*YISAxZX%j>Te>BXbvrrg(H}RGGalS6sezm6(knh@Z1WrG;yd8vy64Y; z8G)3W^~(;Kh2hLU!xsed(Lqku=`+ppnB*|XRZDJFTw=r=kjl?qhRJcV=YEiGgCdwg93^5gyv5^WM b#C;~=2WJLf4Vpi5HL4C&9jH3+-#PFbu86>U literal 0 HcmV?d00001 diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn04.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn04.vhd new file mode 100644 index 00000000..de61c21a --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn04.vhd @@ -0,0 +1,150 @@ +library ieee; +use ieee.std_logic_1164.all,ieee.numeric_std.all; + +entity tn04 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 tn04 is + type rom is array(0 to 2047) of std_logic_vector(7 downto 0); + signal rom_data: rom := ( + X"58",X"10",X"00",X"90",X"31",X"0C",X"06",X"D0",X"38",X"08",X"00",X"D0",X"38",X"08",X"00",X"D0", + X"38",X"04",X"07",X"D0",X"48",X"05",X"06",X"C8",X"50",X"04",X"05",X"BE",X"4E",X"08",X"00",X"B8", + X"38",X"0C",X"06",X"B0",X"38",X"08",X"00",X"B0",X"38",X"04",X"07",X"B0",X"48",X"05",X"06",X"A8", + X"50",X"04",X"05",X"9E",X"4E",X"08",X"00",X"98",X"38",X"0C",X"09",X"90",X"59",X"0C",X"0E",X"A6", + X"67",X"08",X"00",X"98",X"60",X"0B",X"06",X"A6",X"78",X"0A",X"00",X"90",X"78",X"0B",X"06",X"A6", + X"90",X"0A",X"00",X"90",X"90",X"0C",X"06",X"A6",X"A8",X"0A",X"00",X"A6",X"A8",X"0C",X"06",X"A6", + X"BC",X"0B",X"00",X"90",X"A8",X"0C",X"06",X"A6",X"C0",X"0A",X"00",X"A6",X"C0",X"0C",X"06",X"A6", + X"D4",X"0B",X"00",X"90",X"C0",X"0C",X"06",X"A6",X"D8",X"0C",X"07",X"A6",X"D8",X"0C",X"06",X"A6", + X"F0",X"00",X"00",X"00",X"00",X"92",X"18",X"01",X"04",X"E1",X"17",X"00",X"00",X"00",X"00",X"00", + X"17",X"00",X"1E",X"1E",X"1E",X"1E",X"FF",X"FF",X"FF",X"FF",X"36",X"00",X"CD",X"DC",X"18",X"3E", + X"04",X"CD",X"FB",X"01",X"2A",X"33",X"20",X"CD",X"76",X"03",X"0E",X"05",X"E5",X"C5",X"11",X"D0", + X"19",X"D5",X"06",X"02",X"C5",X"E5",X"01",X"12",X"02",X"CD",X"D5",X"01",X"3E",X"05",X"CD",X"D5", + X"14",X"E1",X"C1",X"05",X"C2",X"B4",X"18",X"D1",X"C1",X"E1",X"0D",X"C2",X"AC",X"18",X"01",X"12", + X"02",X"CD",X"8C",X"08",X"CD",X"C1",X"00",X"3E",X"04",X"C3",X"04",X"02",X"21",X"2F",X"20",X"36", + X"00",X"2E",X"14",X"36",X"00",X"C9",X"3A",X"17",X"20",X"A7",X"3E",X"02",X"C2",X"FB",X"01",X"C3", + X"04",X"02",X"3A",X"1D",X"20",X"A7",X"3E",X"01",X"C3",X"EC",X"18",X"3A",X"27",X"20",X"A7",X"3E", + X"08",X"C3",X"EC",X"18",X"3A",X"91",X"20",X"A7",X"3E",X"08",X"C3",X"EC",X"18",X"3E",X"DF",X"CD", + X"04",X"02",X"3E",X"DF",X"C3",X"17",X"02",X"3A",X"E4",X"20",X"A7",X"C8",X"3A",X"54",X"20",X"A7", + X"3E",X"01",X"C2",X"0E",X"02",X"C3",X"17",X"02",X"CD",X"95",X"19",X"D8",X"CD",X"5F",X"0C",X"CD", + X"47",X"0B",X"CD",X"17",X"19",X"C3",X"92",X"15",X"CD",X"C2",X"07",X"CD",X"95",X"19",X"D8",X"CD", + X"81",X"09",X"CD",X"F1",X"0E",X"CD",X"4B",X"19",X"C3",X"A2",X"14",X"CD",X"5A",X"19",X"21",X"34", + X"20",X"7E",X"2E",X"7F",X"BE",X"D8",X"C6",X"08",X"77",X"C9",X"21",X"34",X"20",X"7E",X"2E",X"7D", + X"BE",X"D0",X"D6",X"08",X"77",X"C9",X"CD",X"79",X"19",X"CD",X"95",X"19",X"D8",X"CD",X"5F",X"0C", + X"CD",X"9C",X"09",X"CD",X"DB",X"16",X"C3",X"6C",X"0F",X"3A",X"05",X"20",X"A7",X"3E",X"04",X"C2", + X"0E",X"02",X"C3",X"17",X"02",X"CD",X"95",X"19",X"D8",X"CD",X"BC",X"09",X"CD",X"E2",X"0F",X"CD", + X"56",X"0D",X"C3",X"9C",X"16",X"3A",X"7B",X"20",X"0F",X"C9",X"CD",X"71",X"03",X"C5",X"E5",X"1A", + X"D3",X"04",X"DB",X"03",X"A6",X"CA",X"AD",X"19",X"3E",X"01",X"32",X"11",X"20",X"DB",X"03",X"AE", + X"77",X"23",X"13",X"AF",X"D3",X"04",X"DB",X"03",X"A6",X"CA",X"C1",X"19",X"3E",X"01",X"32",X"11", + X"20",X"DB",X"03",X"AE",X"77",X"E1",X"01",X"20",X"00",X"09",X"C1",X"05",X"C2",X"9D",X"19",X"C9", + X"00",X"00",X"07",X"00",X"00",X"00",X"42",X"00",X"00",X"00",X"15",X"02",X"11",X"49",X"8F",X"00", + X"EF",X"05",X"2F",X"08",X"D1",X"21",X"1D",X"20",X"00",X"00",X"17",X"00",X"09",X"11",X"07",X"00", + X"07",X"00",X"47",X"00",X"00",X"02",X"21",X"40",X"49",X"10",X"05",X"00",X"00",X"80",X"01",X"08", + X"09",X"40",X"07",X"00",X"03",X"00",X"01",X"00",X"49",X"02",X"49",X"44",X"00",X"80",X"09",X"02", + X"00",X"40",X"87",X"08",X"02",X"00",X"03",X"00",X"DB",X"02",X"E6",X"03",X"21",X"27",X"21",X"F5", + X"86",X"77",X"F1",X"2E",X"27",X"26",X"22",X"86",X"77",X"C9",X"CD",X"44",X"1A",X"7E",X"3D",X"C8", + X"4F",X"21",X"01",X"25",X"11",X"26",X"40",X"C5",X"01",X"10",X"01",X"CD",X"D5",X"01",X"C1",X"0D", + X"C2",X"34",X"1A",X"C9",X"CD",X"52",X"1A",X"2E",X"27",X"7E",X"C9",X"CD",X"52",X"1A",X"2E",X"25", + X"7E",X"C9",X"3A",X"DB",X"20",X"0F",X"DA",X"5C",X"1A",X"26",X"21",X"C9",X"26",X"22",X"C9",X"3E", + X"50",X"32",X"C2",X"20",X"C3",X"8C",X"02",X"3E",X"01",X"32",X"C1",X"20",X"C3",X"8C",X"02",X"21", + X"01",X"50",X"22",X"C1",X"20",X"C3",X"8C",X"02",X"21",X"29",X"09",X"11",X"36",X"21",X"06",X"06", + X"C3",X"8B",X"03",X"21",X"2F",X"09",X"C3",X"7B",X"1A",X"21",X"12",X"20",X"AF",X"BE",X"3E",X"10", + X"CA",X"04",X"02",X"35",X"C3",X"FB",X"01",X"21",X"E9",X"20",X"3A",X"DB",X"20",X"0F",X"D0",X"23", + X"C9",X"CD",X"97",X"1A",X"AF",X"BE",X"C8",X"CD",X"52",X"1A",X"21",X"C4",X"20",X"D2",X"B2",X"1A", + X"2E",X"C7",X"7E",X"06",X"15",X"B8",X"D8",X"CD",X"44",X"1A",X"34",X"CD",X"2A",X"1A",X"CD",X"97", + X"1A",X"36",X"00",X"21",X"12",X"20",X"36",X"50",X"C9",X"FE",X"FF",X"CA",X"25",X"1B",X"FE",X"FE", + X"CA",X"1A",X"1B",X"21",X"3B",X"21",X"36",X"80",X"23",X"77",X"23",X"EB",X"21",X"5D",X"1B",X"87", + X"4F",X"06",X"00",X"09",X"7E",X"23",X"66",X"6F",X"C3",X"F9",X"1A",X"3A",X"3B",X"21",X"A7",X"C8", + X"21",X"3D",X"21",X"35",X"C0",X"EB",X"2A",X"3E",X"21",X"7E",X"A7",X"CA",X"25",X"1B",X"FE",X"FF", + X"CA",X"14",X"1B",X"12",X"23",X"7E",X"06",X"08",X"D3",X"01",X"07",X"05",X"C2",X"08",X"1B",X"23", + X"22",X"3E",X"21",X"C9",X"3A",X"3C",X"21",X"F2",X"D3",X"1A",X"3E",X"01",X"32",X"3D",X"21",X"3E", + X"80",X"32",X"3B",X"21",X"C9",X"3E",X"FF",X"06",X"08",X"D3",X"01",X"07",X"05",X"C2",X"29",X"1B", + X"AF",X"32",X"3B",X"21",X"C9",X"21",X"39",X"21",X"7E",X"3D",X"77",X"C0",X"2B",X"7E",X"23",X"77", + X"23",X"7E",X"A7",X"C2",X"49",X"1B",X"C3",X"EB",X"1A",X"3A",X"36",X"21",X"CD",X"C9",X"1A",X"AF", + X"32",X"3A",X"21",X"C9",X"AF",X"32",X"37",X"21",X"3C",X"32",X"3A",X"21",X"C9",X"08",X"45",X"9C", + X"45",X"C6",X"45",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF", + X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF",X"FF"); +begin +process(clk) +begin + if rising_edge(clk) then + data <= rom_data(to_integer(unsigned(addr))); + end if; +end process; +end architecture; diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn05-1 b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn05-1 new file mode 100644 index 0000000000000000000000000000000000000000..a52cdde55931b1d23ed2b5c06b7b38b64e5bd67d GIT binary patch literal 2048 zcmds2y=xpt6#vb~?Jl{?efTWAWbalhTaj@g`+{Ap!FZPh2a_s=Ni9f`l5%)zh?B#G!aEC~gtI$fZMh9Zn+B^8d4J zobM87kEsWxp}vDE1J1bBebgg7OpxhOGa!vL0U}VUQxQW-%?9Or2y_{`+z(|Gt|Zuc z7yie|#6ZlU7!>>%(c%51`%-s*)nTT?x5)?omH?_c3yR9>Zz0khYzEZl-UH}qV6Fc4PyKi52aG(~Ig%Op`yw|zC6YPI!o0CXe-@AQf6Q1G z!YM?7pj-9Nk#?$h_GO*#pUWYaAjJ4zaKf7Qr|qzP*%*Fan0)Q=3Bbve$#=lqi+$-X b4odFTzU5vYa5w4;_tw9Afe0omJ}l)8E8A7m literal 0 HcmV?d00001 diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn05-1.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn05-1.vhd new file mode 100644 index 00000000..0efc0ad1 --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn05-1.vhd @@ -0,0 +1,150 @@ +library ieee; +use ieee.std_logic_1164.all,ieee.numeric_std.all; + +entity tn05_1 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 tn05_1 is + type rom is array(0 to 2047) of std_logic_vector(7 downto 0); + signal rom_data: rom := ( + X"01",X"01",X"00",X"00",X"02",X"02",X"01",X"00",X"01",X"02",X"02",X"02",X"02",X"00",X"00",X"01", + X"01",X"00",X"00",X"00",X"06",X"0E",X"0E",X"03",X"15",X"04",X"11",X"18",X"1B",X"1B",X"05",X"08", + X"0D",X"04",X"13",X"08",X"0B",X"13",X"00",X"00",X"07",X"07",X"02",X"1C",X"8B",X"77",X"8B",X"1C", + X"02",X"07",X"07",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"38",X"00",X"F0", + X"00",X"70",X"00",X"30",X"00",X"18",X"00",X"18",X"00",X"18",X"00",X"1C",X"00",X"1C",X"00",X"1C", + X"00",X"3E",X"00",X"BE",X"00",X"E0",X"00",X"9C",X"00",X"9C",X"00",X"9C",X"80",X"B0",X"C0",X"AD", + X"C0",X"DC",X"00",X"9E",X"00",X"9E",X"00",X"1E",X"00",X"04",X"00",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"38",X"00",X"F0",X"00",X"70",X"00",X"30", + X"00",X"18",X"00",X"18",X"00",X"18",X"00",X"1C",X"00",X"1C",X"00",X"1C",X"00",X"3E",X"00",X"BE", + X"00",X"E0",X"00",X"9C",X"00",X"9C",X"00",X"9C",X"80",X"B0",X"C0",X"AD",X"C0",X"DC",X"00",X"9E", + X"00",X"9E",X"00",X"1E",X"00",X"04",X"80",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"38", + X"00",X"04",X"00",X"1E",X"00",X"9E",X"00",X"9E",X"C0",X"DC",X"C0",X"AD",X"80",X"B0",X"00",X"9C", + X"00",X"9C",X"00",X"9C",X"00",X"E0",X"00",X"BE",X"00",X"3E",X"00",X"1C",X"00",X"1C",X"00",X"1C", + X"00",X"18",X"00",X"18",X"00",X"18",X"00",X"30",X"00",X"70",X"00",X"F0",X"00",X"38",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"80",X"03",X"00",X"04",X"00",X"1E",X"00",X"9E",X"00",X"9E",X"C0", + X"DC",X"C0",X"AD",X"80",X"B0",X"00",X"9C",X"00",X"9C",X"00",X"9C",X"00",X"E0",X"00",X"BE",X"00", + X"3E",X"00",X"1C",X"00",X"1C",X"00",X"1C",X"00",X"18",X"00",X"18",X"00",X"18",X"00",X"30",X"00", + X"70",X"00",X"F0",X"00",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"60",X"00",X"00",X"30",X"00",X"80",X"1B",X"00",X"C0",X"FF",X"00",X"C0", + X"67",X"00",X"C0",X"0B",X"00",X"00",X"08",X"00",X"00",X"08",X"00",X"00",X"08",X"00",X"00",X"10", + X"1E",X"00",X"10",X"3F",X"00",X"90",X"7F",X"00",X"E0",X"FF",X"00",X"E0",X"FF",X"00",X"E0",X"FF", + X"00",X"C0",X"FF",X"00",X"C0",X"FF",X"00",X"80",X"7F",X"00",X"00",X"3F",X"00",X"00",X"1E",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"80", + X"01",X"00",X"80",X"07",X"00",X"80",X"03",X"00",X"F0",X"00",X"00",X"78",X"01",X"00",X"78",X"02", + X"1E",X"38",X"04",X"3F",X"38",X"88",X"7F",X"00",X"D0",X"FF",X"00",X"E0",X"FF",X"00",X"E0",X"FF", + X"00",X"C0",X"FF",X"00",X"C0",X"FF",X"00",X"80",X"7F",X"00",X"00",X"3F",X"00",X"00",X"1E",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"40",X"00",X"00",X"40",X"02",X"00",X"C0",X"01",X"00",X"C0",X"00", + X"1E",X"40",X"00",X"3F",X"F0",X"81",X"7F",X"78",X"C6",X"FF",X"78",X"D8",X"FF",X"38",X"E0",X"FF", + X"38",X"C0",X"FF",X"00",X"C0",X"FF",X"00",X"80",X"7F",X"00",X"00",X"3F",X"00",X"00",X"1E",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"24",X"00",X"00",X"34",X"00", + X"1E",X"34",X"00",X"3F",X"3C",X"80",X"7F",X"3C",X"C0",X"FF",X"18",X"C0",X"FF",X"F8",X"FF",X"FF", + X"1C",X"C0",X"FF",X"3C",X"C0",X"FF",X"3C",X"80",X"7F",X"38",X"00",X"3F",X"10",X"00",X"1E",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"1E",X"00",X"00",X"3F",X"00",X"80",X"7F",X"00",X"C0",X"FF",X"00",X"C0",X"FF",X"20",X"E0",X"FF", + X"24",X"D8",X"FF",X"38",X"C6",X"FF",X"B0",X"81",X"7F",X"60",X"00",X"3F",X"E0",X"00",X"1E",X"E0", + X"00",X"00",X"E0",X"01",X"00",X"E0",X"01",X"00",X"C0",X"01",X"00",X"80",X"01",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"1E",X"00",X"00",X"3F",X"00",X"80",X"7F",X"00",X"C0",X"FF",X"00",X"C0",X"FF",X"00",X"E0",X"FF", + X"00",X"E0",X"FF",X"00",X"D0",X"FF",X"40",X"88",X"7F",X"40",X"04",X"3F",X"40",X"02",X"1E",X"F8", + X"01",X"00",X"E0",X"00",X"00",X"80",X"03",X"00",X"80",X"07",X"00",X"00",X"07",X"00",X"00",X"07", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"1E",X"00",X"00",X"3F",X"00",X"80",X"7F",X"00",X"C0",X"FF",X"00",X"C0",X"FF",X"00",X"E0",X"FF", + X"00",X"E0",X"FF",X"00",X"E0",X"FF",X"00",X"90",X"7F",X"00",X"10",X"3F",X"00",X"10",X"1E",X"00", + X"08",X"00",X"00",X"08",X"00",X"80",X"05",X"00",X"00",X"0B",X"00",X"00",X"06",X"00",X"C0",X"7F", + X"00",X"00",X"FB",X"00",X"00",X"F0",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"15",X"00", + X"1F",X"00",X"1F",X"00",X"06",X"00",X"F2",X"00",X"2D",X"C0",X"DE",X"7F",X"DE",X"7F",X"2D",X"C0", + X"F2",X"00",X"06",X"00",X"1F",X"00",X"1F",X"00",X"15",X"00",X"DE",X"3F",X"DE",X"7C",X"7C",X"7C", + X"12",X"02",X"0E",X"11",X"04",X"1C",X"21",X"1B",X"1B",X"07",X"08",X"1C",X"12",X"02",X"0E",X"11", + X"04",X"1B",X"1B",X"12",X"02",X"0E",X"11",X"04",X"1C",X"22",X"00",X"00",X"03",X"30",X"03",X"30", + X"1D",X"26",X"1D",X"29",X"1D",X"2F",X"05",X"23",X"1D",X"26",X"00",X"00",X"7F",X"04",X"0F",X"03", + X"83",X"40",X"01",X"38",X"11",X"0C",X"01",X"00",X"01",X"01",X"03",X"8C",X"07",X"1A",X"0F",X"40", + X"0F",X"20",X"9F",X"0C",X"FF",X"00",X"1F",X"00",X"0F",X"20",X"27",X"00",X"07",X"00",X"13",X"04", + X"03",X"00",X"07",X"00",X"13",X"01",X"07",X"20",X"1F",X"00",X"7F",X"00",X"7F",X"00",X"3F",X"00", + X"0F",X"00",X"01",X"00",X"03",X"00",X"03",X"00",X"03",X"00",X"03",X"00",X"07",X"00",X"0F",X"00", + X"3F",X"00",X"7F",X"00",X"00",X"00",X"00",X"00",X"00",X"01",X"00",X"00",X"A4",X"04",X"00",X"10", + X"C8",X"54",X"E0",X"1B",X"E0",X"03",X"8C",X"01",X"20",X"12",X"00",X"0C",X"30",X"11",X"00",X"00", + X"00",X"00",X"00",X"00",X"0C",X"C0",X"07",X"F1",X"0F",X"11",X"56",X"00",X"82",X"21",X"08",X"45", + X"0A",X"00",X"A0",X"63",X"B0",X"42",X"40",X"01",X"04",X"00",X"0E",X"70",X"4A",X"78",X"03",X"31", + X"0B",X"C0",X"02",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"80",X"00",X"A0",X"13",X"C8",X"04", + X"E0",X"01",X"50",X"07",X"A0",X"1E",X"C0",X"0B",X"C0",X"02",X"88",X"10",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"02",X"00",X"00",X"10",X"90",X"1C",X"38",X"48",X"21",X"04",X"8C",X"20", + X"18",X"40",X"08",X"08",X"24",X"00",X"20",X"1C",X"14",X"48",X"68",X"20",X"22",X"01",X"00",X"0B", + X"08",X"43",X"00",X"00",X"0F",X"0B",X"00",X"18",X"04",X"11",X"1B",X"1E",X"1B",X"1F",X"1B",X"06", + X"00",X"0C",X"04",X"1B",X"0E",X"15",X"04",X"11",X"C3",X"01",X"C2",X"04",X"C3",X"05",X"C2",X"06", + X"C3",X"02",X"C2",X"03",X"FF",X"FF",X"FF",X"FF",X"C1",X"02",X"C0",X"05",X"C1",X"06",X"C0",X"01", + X"C1",X"03",X"C0",X"04",X"FF",X"FF",X"FF",X"FF",X"02",X"DD",X"01",X"FF",X"01",X"D7",X"02",X"CC", + X"01",X"FF",X"01",X"D7",X"02",X"DD",X"01",X"FF",X"01",X"D7",X"02",X"CC",X"01",X"FF",X"01",X"D7", + X"02",X"DD",X"02",X"FF",X"02",X"E1",X"02",X"FF",X"06",X"E1",X"02",X"FF",X"02",X"DD",X"01",X"FF", + X"01",X"D7",X"02",X"CC",X"01",X"FF",X"01",X"D7",X"02",X"DD",X"01",X"FF",X"01",X"D7",X"02",X"CC", + X"01",X"FF",X"01",X"D7",X"02",X"D2",X"02",X"FF",X"02",X"DD",X"02",X"FF",X"06",X"B9",X"02",X"FF", + X"02",X"DD",X"01",X"FF",X"01",X"D7",X"02",X"CC",X"01",X"FF",X"01",X"D7",X"02",X"DD",X"01",X"FF", + X"01",X"D7",X"02",X"CC",X"01",X"FF",X"01",X"D7",X"02",X"DD",X"02",X"FF",X"02",X"E1",X"02",X"FF", + X"06",X"E4",X"02",X"FF",X"02",X"E6",X"02",X"FF",X"01",X"E4",X"01",X"E1",X"01",X"DD",X"01",X"D9", + X"02",X"D7",X"01",X"FF",X"01",X"D2",X"02",X"CC",X"01",X"FF",X"01",X"C9",X"02",X"CC",X"02",X"FF", + X"02",X"E6",X"02",X"FF",X"03",X"CC",X"06",X"FF",X"FF",X"00",X"00",X"00",X"04",X"D9",X"02",X"D7", + X"01",X"FF",X"01",X"D9",X"01",X"D2",X"01",X"FF",X"04",X"D9",X"01",X"DD",X"01",X"FF",X"01",X"DF", + X"01",X"FF",X"01",X"E1",X"01",X"FF",X"01",X"E2",X"01",X"FF",X"01",X"E4",X"01",X"FF",X"02",X"E6", + X"07",X"FF",X"FF",X"00",X"00",X"00",X"01",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"18",X"80",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"FF",X"FF",X"FF",X"00",X"00",X"00",X"00",X"00",X"00",X"C8",X"D0",X"00",X"00",X"02",X"1B", + X"00",X"00",X"00",X"FD",X"00",X"00",X"00",X"00",X"04",X"00",X"FD",X"00",X"00",X"00",X"00",X"08", + X"00",X"FD",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"00",X"E8", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"B1",X"46",X"10",X"02",X"E1",X"17",X"00",X"00",X"00",X"00",X"00",X"29", + X"00",X"03",X"03",X"03",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"1D",X"25", + X"1D",X"38",X"1D",X"2E",X"00",X"00",X"00",X"00",X"C5",X"26",X"01",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"40",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"FF",X"FF",X"FF",X"FF",X"C3",X"01",X"18",X"27",X"C2",X"04",X"18",X"2D",X"C3",X"05",X"18",X"33", + X"C2",X"06",X"18",X"39",X"C3",X"02",X"18",X"3F",X"C2",X"03",X"18",X"45",X"FF",X"FF",X"FF",X"FF", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"03",X"20",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00",X"00", + X"00",X"00",X"00",X"00",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; diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn06 b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn06 new file mode 100644 index 00000000..2000072a --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn06 @@ -0,0 +1 @@ +                                                                                                                    \ No newline at end of file diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn06.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn06.vhd new file mode 100644 index 00000000..0715686a --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn06.vhd @@ -0,0 +1,86 @@ +library ieee; +use ieee.std_logic_1164.all,ieee.numeric_std.all; + +entity tn06 is +port ( + clk : in std_logic; + addr : in std_logic_vector(9 downto 0); + data : out std_logic_vector(7 downto 0) +); +end entity; + +architecture prom of tn06 is + type rom is array(0 to 1023) of std_logic_vector(7 downto 0); + signal rom_data: rom := ( + X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F", + X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F", + X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F", + X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F", + X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F", + X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F", + X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F", + X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F", + X"0E",X"0E",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0E",X"0E",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0E",X"0E",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0E",X"0E",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0E",X"0E",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D", + X"0B",X"0B",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D", + X"0F",X"0F",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D", + X"0F",X"0F",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D", + X"0F",X"0F",X"0D",X"0E",X"0E",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D"); +begin +process(clk) +begin + if rising_edge(clk) then + data <= rom_data(to_integer(unsigned(addr))); + end if; +end process; +end architecture; diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn07 b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn07 new file mode 100644 index 00000000..7d88e647 --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn07 @@ -0,0 +1 @@ +                                                                                                                 \ No newline at end of file diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn07.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn07.vhd new file mode 100644 index 00000000..580a92a7 --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/roms/tn07.vhd @@ -0,0 +1,86 @@ +library ieee; +use ieee.std_logic_1164.all,ieee.numeric_std.all; + +entity tn07 is +port ( + clk : in std_logic; + addr : in std_logic_vector(9 downto 0); + data : out std_logic_vector(7 downto 0) +); +end entity; + +architecture prom of tn07 is + type rom is array(0 to 1023) of std_logic_vector(7 downto 0); + signal rom_data: rom := ( + X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F", + X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F", + X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F", + X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F", + X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F", + X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F", + X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F", + X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F",X"0F", + X"0D",X"0D",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0D",X"0D",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0D",X"0D",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0D",X"0D",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0D",X"0D",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0E",X"0E", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"09",X"09", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D", + X"0B",X"0B",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D", + X"0F",X"0F",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D", + X"0F",X"0F",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D", + X"0F",X"0F",X"0E",X"0D",X"0D",X"09",X"09",X"09",X"09",X"0D",X"0D",X"0D",X"0F",X"0F",X"0F",X"0D", + X"0D",X"0D",X"0B",X"0B",X"0B",X"0C",X"0C",X"0C",X"0E",X"0E",X"0E",X"0E",X"09",X"0F",X"0D",X"0D"); +begin +process(clk) +begin + if rising_edge(clk) then + data <= rom_data(to_integer(unsigned(addr))); + end if; +end process; +end architecture; diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/spram.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/spram.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/spram.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BalloonBomber_MiST/rtl/spram.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/BlueShark.qpf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/BlueShark.qpf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/BlueShark.qpf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/BlueShark.qpf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/BlueShark.qsf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/BlueShark.qsf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/BlueShark.qsf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/BlueShark.qsf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/BlueShark.sdc b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/BlueShark.sdc similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/BlueShark.sdc rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/BlueShark.sdc diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/README.txt b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/README.txt similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/README.txt rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/README.txt diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/Snapshot/BlueShark.rbf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/Snapshot/BlueShark.rbf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/Snapshot/BlueShark.rbf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/Snapshot/BlueShark.rbf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/clean.bat b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/clean.bat similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/280ZZZAP_MiST/clean.bat rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/clean.bat diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/doc/Blue_Shark_-_1978_-_Midway_Games.pdf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/doc/Blue_Shark_-_1978_-_Midway_Games.pdf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/doc/Blue_Shark_-_1978_-_Midway_Games.pdf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/doc/Blue_Shark_-_1978_-_Midway_Games.pdf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/BlueShark_Overlay.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/BlueShark_Overlay.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/BlueShark_Overlay.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/BlueShark_Overlay.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/BlueShark_memory.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/BlueShark_memory.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/BlueShark_memory.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/BlueShark_memory.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/BlueShark_mist.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/BlueShark_mist.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/BlueShark_mist.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/BlueShark_mist.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/T80/T80.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/T80/T80.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/T80/T80.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/T80/T80.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/T80/T8080se.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/T80/T8080se.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/T80/T8080se.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/T80/T8080se.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/T80/T80_ALU.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/T80/T80_ALU.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/T80/T80_ALU.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/T80/T80_ALU.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/T80/T80_MCode.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/T80/T80_MCode.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/T80/T80_MCode.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/T80/T80_MCode.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/T80/T80_Pack.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/T80/T80_Pack.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/T80/T80_Pack.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/T80/T80_Pack.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/T80/T80_Reg.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/T80/T80_Reg.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/T80/T80_Reg.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/T80/T80_Reg.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/build_id.tcl b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/build_id.tcl similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/build_id.tcl rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/build_id.tcl diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/dac.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/dac.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/dac.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/dac.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/invaders.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/invaders.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/invaders.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/invaders.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/invaders_audio.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/invaders_audio.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/invaders_audio.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/invaders_audio.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/mw8080.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/mw8080.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/mw8080.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/mw8080.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/pll.ppf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/pll.ppf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/pll.ppf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/pll.ppf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/pll.qip b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/pll.qip similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/pll.qip rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/pll.qip diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/pll.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/pll.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/pll.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/pll.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/roms/blueshrk_f.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/roms/blueshrk_f.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/roms/blueshrk_f.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/roms/blueshrk_f.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/roms/blueshrk_g.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/roms/blueshrk_g.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/roms/blueshrk_g.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/roms/blueshrk_g.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/roms/blueshrk_h.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/roms/blueshrk_h.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/roms/blueshrk_h.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/roms/blueshrk_h.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/spram.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/spram.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/spram.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/spram.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/sprom.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/sprom.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/rtl/sprom.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BlueShark_MiST/rtl/sprom.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/README.txt b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/README.txt similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/README.txt rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/README.txt diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/SpaceWalk.qpf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/SpaceWalk.qpf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/SpaceWalk.qpf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/SpaceWalk.qpf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/SpaceWalk.qsf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/SpaceWalk.qsf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/SpaceWalk.qsf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/SpaceWalk.qsf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/clean.bat b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/clean.bat similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BlueShark_MiST/clean.bat rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/clean.bat diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/SpaceWalk_mist.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/SpaceWalk_mist.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/SpaceWalk_mist.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/SpaceWalk_mist.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/T80/T80.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/T80/T80.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/T80/T80.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/T80/T80.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/T80/T8080se.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/T80/T8080se.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/T80/T8080se.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/T80/T8080se.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/T80/T80_ALU.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/T80/T80_ALU.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/T80/T80_ALU.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/T80/T80_ALU.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/T80/T80_MCode.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/T80/T80_MCode.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/T80/T80_MCode.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/T80/T80_MCode.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/T80/T80_Pack.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/T80/T80_Pack.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/T80/T80_Pack.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/T80/T80_Pack.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/T80/T80_Reg.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/T80/T80_Reg.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/T80/T80_Reg.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/T80/T80_Reg.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/build_id.tcl b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/build_id.tcl similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/build_id.tcl rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/build_id.tcl diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/dac.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/dac.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/dac.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/dac.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/invaders.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/invaders.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/invaders.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/invaders.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/invaders_audio.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/invaders_audio.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/invaders_audio.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/invaders_audio.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/invaders_memory.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/invaders_memory.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/invaders_memory.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/invaders_memory.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/invaders_video.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/invaders_video.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/invaders_video.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/invaders_video.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/mw8080.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/mw8080.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/mw8080.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/mw8080.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/pll.ppf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/pll.ppf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/pll.ppf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/pll.ppf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/pll.qip b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/pll.qip similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/pll.qip rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/pll.qip diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/pll.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/pll.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/pll.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/pll.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/rome.cpu b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/roms/rome.cpu similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/rome.cpu rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/roms/rome.cpu diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/roms/rome.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/roms/rome.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/roms/rome.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/roms/rome.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/romf.cpu b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/roms/romf.cpu similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/romf.cpu rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/roms/romf.cpu diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/roms/romf.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/roms/romf.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/roms/romf.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/roms/romf.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/romg.cpu b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/roms/romg.cpu similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/romg.cpu rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/roms/romg.cpu diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/roms/romg.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/roms/romg.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/roms/romg.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/roms/romg.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/romh.cpu b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/roms/romh.cpu similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/roms/romh.cpu rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/roms/romh.cpu diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/roms/romh.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/roms/romh.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/roms/romh.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/roms/romh.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/spram.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/spram.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/spram.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/spram.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/sprom.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/sprom.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/sprom.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/rtl/sprom.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk.sft b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk.sft similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk.sft rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk.sft diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk.vho b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk.vho similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk.vho rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk.vho diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_0c_slow.vho b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_0c_slow.vho similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_0c_slow.vho rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_0c_slow.vho diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_0c_vhd_slow.sdo b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_0c_vhd_slow.sdo similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_0c_vhd_slow.sdo rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_0c_vhd_slow.sdo diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_85c_slow.vho b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_85c_slow.vho similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_85c_slow.vho rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_85c_slow.vho diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_85c_vhd_slow.sdo b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_85c_vhd_slow.sdo similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_85c_vhd_slow.sdo rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_8_1200mv_85c_vhd_slow.sdo diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_min_1200mv_0c_fast.vho b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_min_1200mv_0c_fast.vho similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_min_1200mv_0c_fast.vho rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_min_1200mv_0c_fast.vho diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_min_1200mv_0c_vhd_fast.sdo b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_min_1200mv_0c_vhd_fast.sdo similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_min_1200mv_0c_vhd_fast.sdo rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_min_1200mv_0c_vhd_fast.sdo diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_modelsim.xrf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_modelsim.xrf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_modelsim.xrf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_modelsim.xrf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_vhd.sdo b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_vhd.sdo similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_vhd.sdo rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Boothill_MiST/simulation/modelsim/SpaceWalk_vhd.sdo diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/BowlingAlley.qpf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/BowlingAlley.qpf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/BowlingAlley.qpf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/BowlingAlley.qpf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/BowlingAlley.qsf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/BowlingAlley.qsf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/BowlingAlley.qsf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/BowlingAlley.qsf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/BowlingAlley.sdc b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/BowlingAlley.sdc similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/BowlingAlley.sdc rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/BowlingAlley.sdc diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/README.txt b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/README.txt similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/README.txt rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/README.txt diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/Snapshot/BowlingAlley.rbf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/Snapshot/BowlingAlley.rbf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/Snapshot/BowlingAlley.rbf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/Snapshot/BowlingAlley.rbf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/clean.bat b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/clean.bat similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/clean.bat rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/clean.bat diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/BowlingAlley_memory.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/BowlingAlley_memory.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/BowlingAlley_memory.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/BowlingAlley_memory.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/BowlingAlley_mist.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/BowlingAlley_mist.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/BowlingAlley_mist.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/BowlingAlley_mist.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/T80/T80.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/T80/T80.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/T80/T80.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/T80/T80.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/T80/T8080se.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/T80/T8080se.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/T80/T8080se.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/T80/T8080se.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/T80/T80_ALU.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/T80/T80_ALU.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/T80/T80_ALU.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/T80/T80_ALU.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/T80/T80_MCode.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/T80/T80_MCode.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/T80/T80_MCode.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/T80/T80_MCode.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/T80/T80_Pack.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/T80/T80_Pack.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/T80/T80_Pack.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/T80/T80_Pack.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/T80/T80_Reg.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/T80/T80_Reg.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/T80/T80_Reg.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/T80/T80_Reg.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/build_id.tcl b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/build_id.tcl similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/build_id.tcl rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/build_id.tcl diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/dac.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/dac.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/dac.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/dac.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/invaders.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/invaders.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/invaders.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/invaders.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/invaders_audio.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/invaders_audio.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/invaders_audio.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/invaders_audio.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/mw8080.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/mw8080.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/mw8080.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/mw8080.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/pll.ppf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/pll.ppf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/pll.ppf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/pll.ppf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/pll.qip b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/pll.qip similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/pll.qip rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/pll.qip diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/pll.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/pll.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/pll.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/pll.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/roms/d.cpu.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/roms/d.cpu.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/roms/d.cpu.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/roms/d.cpu.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/roms/e.cpu.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/roms/e.cpu.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/roms/e.cpu.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/roms/e.cpu.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/roms/f.cpu.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/roms/f.cpu.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/roms/f.cpu.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/roms/f.cpu.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/roms/g.cpu.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/roms/g.cpu.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/roms/g.cpu.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/roms/g.cpu.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/roms/h.cpu.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/roms/h.cpu.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/roms/h.cpu.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/roms/h.cpu.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/spram.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/spram.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/spram.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/spram.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/sprom.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/sprom.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/rtl/sprom.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/BowlingAlley_MiST/rtl/sprom.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/LunarRescue.qpf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/LunarRescue.qpf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/LunarRescue.qpf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/LunarRescue.qpf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/LunarRescue.qsf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/LunarRescue.qsf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/LunarRescue.qsf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/LunarRescue.qsf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/LunarRescue.sdc b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/LunarRescue.sdc similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/LunarRescue.sdc rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/LunarRescue.sdc diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/LunarRescue.srf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/LunarRescue.srf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/LunarRescue.srf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/LunarRescue.srf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/README.txt b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/README.txt similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/README.txt rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/README.txt diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/Release/LunarRescue.rbf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/Release/LunarRescue.rbf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/Release/LunarRescue.rbf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/Release/LunarRescue.rbf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/clean.bat b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/clean.bat similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/BowlingAlley_MiST/clean.bat rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/clean.bat diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/LunarRescue_Overlay.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/LunarRescue_Overlay.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/LunarRescue_Overlay.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/LunarRescue_Overlay.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/LunarRescue_memory.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/LunarRescue_memory.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/LunarRescue_memory.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/LunarRescue_memory.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/LunarRescue_mist.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/LunarRescue_mist.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/LunarRescue_mist.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/LunarRescue_mist.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/T80/T80.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/T80/T80.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/T80/T80.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/T80/T80.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/T80/T8080se.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/T80/T8080se.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/T80/T8080se.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/T80/T8080se.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/T80/T80_ALU.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/T80/T80_ALU.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/T80/T80_ALU.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/T80/T80_ALU.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/T80/T80_MCode.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/T80/T80_MCode.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/T80/T80_MCode.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/T80/T80_MCode.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/T80/T80_Pack.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/T80/T80_Pack.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/T80/T80_Pack.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/T80/T80_Pack.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/T80/T80_Reg.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/T80/T80_Reg.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/T80/T80_Reg.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/T80/T80_Reg.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/build_id.tcl b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/build_id.tcl similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/build_id.tcl rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/build_id.tcl diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/dac.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/dac.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/dac.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/dac.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/invaders.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/invaders.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/invaders.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/invaders.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/invaders_audio.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/invaders_audio.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/invaders_audio.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/invaders_audio.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/mw8080.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/mw8080.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/mw8080.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/mw8080.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/pll.ppf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/pll.ppf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/pll.ppf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/pll.ppf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/pll.qip b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/pll.qip similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/pll.qip rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/pll.qip diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/pll.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/pll.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/pll.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/pll.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/roms/col.bin b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/roms/col.bin similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/roms/col.bin rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/roms/col.bin diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/roms/col.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/roms/col.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/roms/col.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/roms/col.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_1.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_1.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_1.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_1.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_2.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_2.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_2.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_2.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_3.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_3.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_3.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_3.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_4.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_4.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_4.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_4.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_5.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_5.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_5.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_5.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_6.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_6.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_6.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/roms/lrescue_6.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/spram.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/spram.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/spram.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/spram.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/sprom.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/sprom.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/rtl/sprom.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Lunar Rescue_MiST/rtl/sprom.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/OzmaWars.qpf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/OzmaWars.qpf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/OzmaWars.qpf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/OzmaWars.qpf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/OzmaWars.qsf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/OzmaWars.qsf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/OzmaWars.qsf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/OzmaWars.qsf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/OzmaWars.sdc b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/OzmaWars.sdc similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/OzmaWars.sdc rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/OzmaWars.sdc diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/README.txt b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/README.txt similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/README.txt rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/README.txt diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/Release/OzmaWars.rbf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/Release/OzmaWars.rbf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/Release/OzmaWars.rbf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/Release/OzmaWars.rbf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/clean.bat b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/clean.bat similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Lunar Rescue_MiST/clean.bat rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/clean.bat diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/OzmaWars_memory.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/OzmaWars_memory.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/OzmaWars_memory.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/OzmaWars_memory.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/OzmaWars_mist.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/OzmaWars_mist.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/OzmaWars_mist.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/OzmaWars_mist.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/OzmaWars_overlay.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/OzmaWars_overlay.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/OzmaWars_overlay.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/OzmaWars_overlay.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/T80/T80.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/T80/T80.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/T80/T80.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/T80/T80.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/T80/T8080se.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/T80/T8080se.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/T80/T8080se.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/T80/T8080se.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/T80/T80_ALU.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/T80/T80_ALU.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/T80/T80_ALU.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/T80/T80_ALU.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/T80/T80_MCode.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/T80/T80_MCode.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/T80/T80_MCode.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/T80/T80_MCode.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/T80/T80_Pack.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/T80/T80_Pack.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/T80/T80_Pack.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/T80/T80_Pack.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/T80/T80_Reg.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/T80/T80_Reg.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/T80/T80_Reg.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/T80/T80_Reg.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/build_id.tcl b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/build_id.tcl similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/build_id.tcl rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/build_id.tcl diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/dac.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/dac.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/dac.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/dac.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/invaders.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/invaders.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/invaders.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/invaders.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/invaders_audio.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/invaders_audio.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/invaders_audio.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/invaders_audio.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/mw8080.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/mw8080.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/mw8080.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/mw8080.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/pll.ppf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/pll.ppf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/pll.ppf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/pll.ppf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/pll.qip b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/pll.qip similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/pll.qip rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/pll.qip diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/pll.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/pll.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/pll.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/pll.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/roms/mw01.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/roms/mw01.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/roms/mw01.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/roms/mw01.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/roms/mw02.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/roms/mw02.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/roms/mw02.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/roms/mw02.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/roms/mw03.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/roms/mw03.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/roms/mw03.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/roms/mw03.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/roms/mw04.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/roms/mw04.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/roms/mw04.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/roms/mw04.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/roms/mw05.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/roms/mw05.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/roms/mw05.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/roms/mw05.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/roms/mw06.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/roms/mw06.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/roms/mw06.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/roms/mw06.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/spram.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/spram.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/spram.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/spram.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/sprom.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/sprom.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/rtl/sprom.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Ozma Wars_MiST/rtl/sprom.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/README.txt b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/README.txt similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/README.txt rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/README.txt diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/Shuffleboard.qpf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/Shuffleboard.qpf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/Shuffleboard.qpf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/Shuffleboard.qpf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/Shuffleboard.qsf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/Shuffleboard.qsf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/Shuffleboard.qsf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/Shuffleboard.qsf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/Shuffleboard.sdc b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/Shuffleboard.sdc similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/Shuffleboard.sdc rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/Shuffleboard.sdc diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/Snapshot/Shuffleboard.rbf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/Snapshot/Shuffleboard.rbf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/Snapshot/Shuffleboard.rbf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/Snapshot/Shuffleboard.rbf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/clean.bat b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/clean.bat similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Ozma Wars_MiST/clean.bat rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/clean.bat diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/Shuffleboard_memory.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/Shuffleboard_memory.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/Shuffleboard_memory.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/Shuffleboard_memory.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/Shuffleboard_mist.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/Shuffleboard_mist.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/Shuffleboard_mist.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/Shuffleboard_mist.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/T80/T80.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/T80/T80.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/T80/T80.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/T80/T80.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/T80/T8080se.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/T80/T8080se.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/T80/T8080se.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/T80/T8080se.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/T80/T80_ALU.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/T80/T80_ALU.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/T80/T80_ALU.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/T80/T80_ALU.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/T80/T80_MCode.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/T80/T80_MCode.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/T80/T80_MCode.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/T80/T80_MCode.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/T80/T80_Pack.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/T80/T80_Pack.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/T80/T80_Pack.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/T80/T80_Pack.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/T80/T80_Reg.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/T80/T80_Reg.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/T80/T80_Reg.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/T80/T80_Reg.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/build_id.tcl b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/build_id.tcl similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/build_id.tcl rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/build_id.tcl diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/dac.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/dac.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/dac.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/dac.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/invaders.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/invaders.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/invaders.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/invaders.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/invaders_audio.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/invaders_audio.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/invaders_audio.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/invaders_audio.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/mw8080.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/mw8080.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/mw8080.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/mw8080.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/pll.ppf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/pll.ppf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/pll.ppf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/pll.ppf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/pll.qip b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/pll.qip similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/pll.qip rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/pll.qip diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/pll.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/pll.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/pll.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/pll.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/roms/shuffle.e.bin b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/roms/shuffle.e.bin similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/roms/shuffle.e.bin rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/roms/shuffle.e.bin diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/roms/shuffle.e.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/roms/shuffle.e.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/roms/shuffle.e.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/roms/shuffle.e.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/roms/shuffle.f.bin b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/roms/shuffle.f.bin similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/roms/shuffle.f.bin rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/roms/shuffle.f.bin diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/roms/shuffle.f.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/roms/shuffle.f.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/roms/shuffle.f.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/roms/shuffle.f.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/roms/shuffle.g.bin b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/roms/shuffle.g.bin similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/roms/shuffle.g.bin rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/roms/shuffle.g.bin diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/roms/shuffle.g.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/roms/shuffle.g.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/roms/shuffle.g.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/roms/shuffle.g.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/roms/shuffle.h.bin b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/roms/shuffle.h.bin similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/roms/shuffle.h.bin rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/roms/shuffle.h.bin diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/roms/shuffle.h.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/roms/shuffle.h.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/roms/shuffle.h.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/roms/shuffle.h.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/spram.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/spram.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/spram.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/spram.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/sprom.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/sprom.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/rtl/sprom.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Shuffleboard_MiST/rtl/sprom.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/Invaders2.qpf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/Invaders2.qpf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/Invaders2.qpf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/Invaders2.qpf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/Invaders2.qsf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/Invaders2.qsf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/Invaders2.qsf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/Invaders2.qsf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/Invaders2.sdc b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/Invaders2.sdc similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/Invaders2.sdc rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/Invaders2.sdc diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/README.txt b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/README.txt similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/README.txt rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/README.txt diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/Release/Invaders2.rbf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/Release/Invaders2.rbf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/Release/Invaders2.rbf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/Release/Invaders2.rbf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/clean.bat b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/clean.bat similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Shuffleboard_MiST/clean.bat rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/clean.bat diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/Invaders2_mist.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/Invaders2_mist.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/Invaders2_mist.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/Invaders2_mist.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/T80/T80.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/T80/T80.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/T80/T80.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/T80/T80.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/T80/T8080se.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/T80/T8080se.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/T80/T8080se.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/T80/T8080se.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/T80/T80_ALU.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/T80/T80_ALU.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/T80/T80_ALU.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/T80/T80_ALU.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/T80/T80_MCode.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/T80/T80_MCode.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/T80/T80_MCode.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/T80/T80_MCode.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/T80/T80_Pack.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/T80/T80_Pack.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/T80/T80_Pack.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/T80/T80_Pack.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/T80/T80_Reg.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/T80/T80_Reg.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/T80/T80_Reg.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/T80/T80_Reg.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/build_id.tcl b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/build_id.tcl similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/build_id.tcl rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/build_id.tcl diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/dac.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/dac.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/dac.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/dac.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/invaders.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/invaders.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/invaders.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/invaders.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/invaders_audio.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/invaders_audio.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/invaders_audio.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/invaders_audio.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/invaders_memory.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/invaders_memory.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/invaders_memory.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/invaders_memory.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/invaders_video.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/invaders_video.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Boothill_MiST/rtl/invaders_video.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/invaders_video.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/mw8080.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/mw8080.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/mw8080.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/mw8080.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/pll.ppf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/pll.ppf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/pll.ppf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/pll.ppf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/pll.qip b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/pll.qip similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/pll.qip rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/pll.qip diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/pll.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/pll.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/pll.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/pll.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.a.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.a.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.a.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.a.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.b.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.b.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.b.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.b.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.e.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.e.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.e.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.e.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.f.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.f.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.f.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.f.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.g.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.g.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.g.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.g.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.h.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.h.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.h.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/roms/invad2ct.h.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/spram.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/spram.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/spram.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/spram.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/sprom.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/sprom.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/sprom.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders 2_MiST/rtl/sprom.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/README.txt b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/README.txt similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/README.txt rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/README.txt diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/Release/SpaceInvaders.rbf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/Release/SpaceInvaders.rbf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/Release/SpaceInvaders.rbf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/Release/SpaceInvaders.rbf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/SpaceInvaders.qpf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/SpaceInvaders.qpf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/SpaceInvaders.qpf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/SpaceInvaders.qpf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/SpaceInvaders.qsf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/SpaceInvaders.qsf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/SpaceInvaders.qsf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/SpaceInvaders.qsf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/SpaceInvaders.sdc b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/SpaceInvaders.sdc similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/SpaceInvaders.sdc rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/SpaceInvaders.sdc diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/clean.bat b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/clean.bat similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/clean.bat rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/clean.bat diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/T80/T80.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/T80/T80.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/T80/T80.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/T80/T80.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/T80/T8080se.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/T80/T8080se.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/T80/T8080se.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/T80/T8080se.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/T80/T80_ALU.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/T80/T80_ALU.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/T80/T80_ALU.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/T80/T80_ALU.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/T80/T80_MCode.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/T80/T80_MCode.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/T80/T80_MCode.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/T80/T80_MCode.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/T80/T80_Pack.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/T80/T80_Pack.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/T80/T80_Pack.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/T80/T80_Pack.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/T80/T80_Reg.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/T80/T80_Reg.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/T80/T80_Reg.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/T80/T80_Reg.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/build_id.tcl b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/build_id.tcl similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/build_id.tcl rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/build_id.tcl diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/dac.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/dac.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/dac.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/dac.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/invaders.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/invaders.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/invaders.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/invaders.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/invaders_audio.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/invaders_audio.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/invaders_audio.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/invaders_audio.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/mw8080.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/mw8080.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/mw8080.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/mw8080.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/pll.ppf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/pll.ppf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/pll.ppf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/pll.ppf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/pll.qip b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/pll.qip similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/pll.qip rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/pll.qip diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/pll.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/pll.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/pll.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/pll.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/roms/invaders_e.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/roms/invaders_e.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/roms/invaders_e.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/roms/invaders_e.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/roms/invaders_f.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/roms/invaders_f.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/roms/invaders_f.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/roms/invaders_f.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/roms/invaders_g.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/roms/invaders_g.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/roms/invaders_g.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/roms/invaders_g.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/roms/invaders_h.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/roms/invaders_h.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/roms/invaders_h.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/roms/invaders_h.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/spaceinvaders_memory.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/spaceinvaders_memory.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/spaceinvaders_memory.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/spaceinvaders_memory.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/spaceinvaders_mist.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/spaceinvaders_mist.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/spaceinvaders_mist.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/spaceinvaders_mist.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/spaceinvaders_overlay.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/spaceinvaders_overlay.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/spaceinvaders_overlay.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/spaceinvaders_overlay.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/spram.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/spram.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/spram.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/spram.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/sprom.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/sprom.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/rtl/sprom.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Space Invaders_MiST/rtl/sprom.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/README.txt b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/README.txt similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/README.txt rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/README.txt diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/Release/SpaceLaser.rbf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/Release/SpaceLaser.rbf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/Release/SpaceLaser.rbf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/Release/SpaceLaser.rbf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/SpaceLaser.qpf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/SpaceLaser.qpf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/SpaceLaser.qpf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/SpaceLaser.qpf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/SpaceLaser.qsf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/SpaceLaser.qsf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/SpaceLaser.qsf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/SpaceLaser.qsf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/SpaceLaser.sdc b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/SpaceLaser.sdc similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/SpaceLaser.sdc rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/SpaceLaser.sdc diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/SpaceLaser.srf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/SpaceLaser.srf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/SpaceLaser.srf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/SpaceLaser.srf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/clean.bat b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/clean.bat similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders_MiST/clean.bat rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/clean.bat diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/T80/T80.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/T80/T80.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/T80/T80.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/T80/T80.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/T80/T8080se.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/T80/T8080se.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/T80/T8080se.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/T80/T8080se.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/T80/T80_ALU.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/T80/T80_ALU.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/T80/T80_ALU.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/T80/T80_ALU.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/T80/T80_MCode.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/T80/T80_MCode.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/T80/T80_MCode.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/T80/T80_MCode.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/T80/T80_Pack.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/T80/T80_Pack.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/T80/T80_Pack.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/T80/T80_Pack.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/T80/T80_Reg.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/T80/T80_Reg.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/T80/T80_Reg.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/T80/T80_Reg.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/build_id.tcl b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/build_id.tcl similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/build_id.tcl rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/build_id.tcl diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/dac.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/dac.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/dac.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/dac.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/invaders.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/invaders.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/invaders.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/invaders.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/invaders_audio.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/invaders_audio.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/invaders_audio.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/invaders_audio.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/mw8080.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/mw8080.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/mw8080.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/mw8080.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/pll.ppf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/pll.ppf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/pll.ppf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/pll.ppf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/pll.qip b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/pll.qip similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/pll.qip rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/pll.qip diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/pll.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/pll.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/pll.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/pll.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/roms/clr.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/roms/clr.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/roms/clr.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/roms/clr.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/roms/la01.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/roms/la01.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/roms/la01.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/roms/la01.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/roms/la02.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/roms/la02.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/roms/la02.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/roms/la02.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/roms/la03.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/roms/la03.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/roms/la03.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/roms/la03.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/roms/la04.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/roms/la04.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/roms/la04.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/roms/la04.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/spacelaser_memory.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/spacelaser_memory.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/spacelaser_memory.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/spacelaser_memory.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/spacelaser_mist.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/spacelaser_mist.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/spacelaser_mist.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/spacelaser_mist.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/spacelaser_overlay.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/spacelaser_overlay.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/spacelaser_overlay.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/spacelaser_overlay.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/spram.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/spram.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/spram.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/spram.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/sprom.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/sprom.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/rtl/sprom.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceLaser_MiST/rtl/sprom.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/README.txt b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/README.txt similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/README.txt rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/README.txt diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/SpaceWalk.qpf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/SpaceWalk.qpf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/SpaceWalk.qpf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/SpaceWalk.qpf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/SpaceWalk.qsf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/SpaceWalk.qsf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/SpaceWalk.qsf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/SpaceWalk.qsf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/SpaceWalk.sdc b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/SpaceWalk.sdc similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/SpaceWalk.sdc rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/SpaceWalk.sdc diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/clean.bat b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/clean.bat similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceLaser_MiST/clean.bat rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/clean.bat diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/SpaceWalk_mist.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/SpaceWalk_mist.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/SpaceWalk_mist.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/SpaceWalk_mist.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/T80/T80.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/T80/T80.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/T80/T80.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/T80/T80.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/T80/T8080se.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/T80/T8080se.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/T80/T8080se.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/T80/T8080se.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/T80/T80_ALU.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/T80/T80_ALU.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/T80/T80_ALU.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/T80/T80_ALU.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/T80/T80_MCode.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/T80/T80_MCode.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/T80/T80_MCode.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/T80/T80_MCode.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/T80/T80_Pack.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/T80/T80_Pack.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/T80/T80_Pack.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/T80/T80_Pack.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/T80/T80_Reg.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/T80/T80_Reg.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/T80/T80_Reg.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/T80/T80_Reg.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/build_id.tcl b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/build_id.tcl similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/build_id.tcl rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/build_id.tcl diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/dac.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/dac.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/dac.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/dac.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/invaders.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/invaders.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/invaders.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/invaders.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/invaders_audio.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/invaders_audio.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/invaders_audio.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/invaders_audio.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/invaders_memory.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/invaders_memory.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/invaders_memory.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/invaders_memory.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/invaders_video.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/invaders_video.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Space Invaders 2_MiST/rtl/invaders_video.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/invaders_video.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/mw8080.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/mw8080.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/mw8080.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/mw8080.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/pll.ppf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/pll.ppf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/pll.ppf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/pll.ppf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/pll.qip b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/pll.qip similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/pll.qip rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/pll.qip diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/pll.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/pll.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/pll.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/pll.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.a.bin b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.a.bin similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.a.bin rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.a.bin diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.a.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.a.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.a.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.a.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.b.bin b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.b.bin similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.b.bin rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.b.bin diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.b.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.b.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.b.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.b.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.c.bin b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.c.bin similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.c.bin rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.c.bin diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.c.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.c.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.c.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.c.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.d.bin b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.d.bin similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.d.bin rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.d.bin diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.d.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.d.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.d.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.d.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.e.bin b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.e.bin similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.e.bin rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.e.bin diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.e.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.e.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.e.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.e.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.f.bin b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.f.bin similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.f.bin rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.f.bin diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.f.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.f.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.f.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.f.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.g.bin b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.g.bin similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.g.bin rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.g.bin diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.g.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.g.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.g.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.g.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.h.bin b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.h.bin similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.h.bin rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.h.bin diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.h.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.h.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/roms/sw.h.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/roms/sw.h.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/spram.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/spram.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/spram.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/spram.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/sprom.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/sprom.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/rtl/sprom.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/SpaceWalk_MiST/rtl/sprom.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/README.txt b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/README.txt similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/README.txt rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/README.txt diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/Release/SuperEarthInvasion.rbf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/Release/SuperEarthInvasion.rbf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/Release/SuperEarthInvasion.rbf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/Release/SuperEarthInvasion.rbf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/SuperEarthInvasion.qpf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/SuperEarthInvasion.qpf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/SuperEarthInvasion.qpf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/SuperEarthInvasion.qpf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/SuperEarthInvasion.qsf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/SuperEarthInvasion.qsf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/SuperEarthInvasion.qsf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/SuperEarthInvasion.qsf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/SuperEarthInvasion.sdc b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/SuperEarthInvasion.sdc similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/SuperEarthInvasion.sdc rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/SuperEarthInvasion.sdc diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/clean.bat b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/clean.bat similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/SpaceWalk_MiST/clean.bat rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/clean.bat diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/SuperEarthInvasion_memory.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/SuperEarthInvasion_memory.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/SuperEarthInvasion_memory.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/SuperEarthInvasion_memory.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/SuperEarthInvasion_mist.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/SuperEarthInvasion_mist.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/SuperEarthInvasion_mist.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/SuperEarthInvasion_mist.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/SuperEarthInvasion_overlay.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/SuperEarthInvasion_overlay.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/SuperEarthInvasion_overlay.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/SuperEarthInvasion_overlay.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/T80/T80.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/T80/T80.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/T80/T80.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/T80/T80.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/T80/T8080se.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/T80/T8080se.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/T80/T8080se.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/T80/T8080se.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/T80/T80_ALU.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/T80/T80_ALU.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/T80/T80_ALU.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/T80/T80_ALU.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/T80/T80_MCode.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/T80/T80_MCode.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/T80/T80_MCode.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/T80/T80_MCode.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/T80/T80_Pack.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/T80/T80_Pack.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/T80/T80_Pack.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/T80/T80_Pack.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/T80/T80_Reg.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/T80/T80_Reg.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/T80/T80_Reg.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/T80/T80_Reg.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/build_id.tcl b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/build_id.tcl similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/build_id.tcl rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/build_id.tcl diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/dac.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/dac.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/dac.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/dac.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/invaders.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/invaders.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/invaders.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/invaders.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/invaders_audio.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/invaders_audio.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/invaders_audio.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/invaders_audio.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/mw8080.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/mw8080.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/mw8080.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/mw8080.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/pll.ppf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/pll.ppf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/pll.ppf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/pll.ppf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/pll.qip b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/pll.qip similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/pll.qip rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/pll.qip diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/pll.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/pll.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/pll.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/pll.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/roms/earthinv_e.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/roms/earthinv_e.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/roms/earthinv_e.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/roms/earthinv_e.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/roms/earthinv_f.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/roms/earthinv_f.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/roms/earthinv_f.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/roms/earthinv_f.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/roms/earthinv_g.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/roms/earthinv_g.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/roms/earthinv_g.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/roms/earthinv_g.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/roms/earthinv_h.hex b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/roms/earthinv_h.hex similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/roms/earthinv_h.hex rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/roms/earthinv_h.hex diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/spram.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/spram.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/spram.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/spram.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/sprom.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/sprom.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Super Earth Invasion_MiST/rtl/sprom.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Super Earth Invasion_MiST/rtl/sprom.vhd diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/README.txt b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/README.txt new file mode 100644 index 00000000..d1a257bc --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/README.txt @@ -0,0 +1,27 @@ +--------------------------------------------------------------------------------- +-- +-- Arcade: Vortex port to MiST by Gehstock +-- 08 June 2019 +-- +--------------------------------------------------------------------------------- +-- +-- Midway 8080 Hardware +-- Audio based on work by Paul Walsh. +-- Audio and scan converter by MikeJ. +--------------------------------------------------------------------------------- +-- +-- +-- Keyboard inputs : +-- +-- F1 : Start +-- SPACE : Fire +-- RIGHT/LEFT : Movement +-- +-- Joystick support. +-- +-- +--------------------------------------------------------------------------------- + +ToDo Reset + Sound + diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/Release/Vortex.rbf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/Release/Vortex.rbf new file mode 100644 index 0000000000000000000000000000000000000000..72383f6abf8809fbcd3640c8b6dd1c4aa6314f33 GIT binary patch literal 252426 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

UKYGKX$(;JwyA+<&+&(w{oXLrC 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

&52Di!ArZ__!@$@ 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 Be9Qm< literal 0 HcmV?d00001 diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/Vortex.qpf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/Vortex.qpf similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/Vortex.qpf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/Vortex.qpf diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/Vortex.qsf b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/Vortex.qsf similarity index 97% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/Vortex.qsf rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/Vortex.qsf index d02cc834..fe22901b 100644 --- a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/Vortex.qsf +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/Vortex.qsf @@ -49,8 +49,6 @@ set_global_assignment -name VHDL_FILE rtl/invaders.vhd set_global_assignment -name VHDL_FILE rtl/mw8080.vhd set_global_assignment -name VHDL_FILE rtl/invaders_audio.vhd set_global_assignment -name SYSTEMVERILOG_FILE rtl/Vortex_memory.sv -set_global_assignment -name VHDL_FILE rtl/dac.vhd -set_global_assignment -name VHDL_FILE rtl/sprom.vhd set_global_assignment -name VHDL_FILE rtl/spram.vhd set_global_assignment -name VHDL_FILE rtl/T80/T8080se.vhd set_global_assignment -name VHDL_FILE rtl/T80/T80_Reg.vhd @@ -60,7 +58,6 @@ set_global_assignment -name VHDL_FILE rtl/T80/T80_ALU.vhd set_global_assignment -name VHDL_FILE rtl/T80/T80.vhd set_global_assignment -name VHDL_FILE rtl/pll.vhd set_global_assignment -name QIP_FILE ../../../../common/mist/mist.qip -set_global_assignment -name QIP_FILE "D:/Github/Mist_FPGA/common/mist/mist.qip" # Pin & Location Assignments # ========================== set_location_assignment PIN_7 -to LED diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/clean.bat b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/clean.bat similarity index 92% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/clean.bat rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/clean.bat index 83fb0c47..ac9bf0a8 100644 --- a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/clean.bat +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/clean.bat @@ -2,6 +2,7 @@ del /s *.bak del /s *.orig del /s *.rej +del /s build_id.v rmdir /s /q db rmdir /s /q incremental_db rmdir /s /q output_files diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/T80.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T80.vhd similarity index 96% rename from Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/T80.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T80.vhd index 1ea66542..da01f6b4 100644 --- a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/T80.vhd +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T80.vhd @@ -2,9 +2,6 @@ -- T80(b) core. In an effort to merge and maintain bug fixes .... -- -- --- Ver 303 add undocumented DDCB and FDCB opcodes by TobiFlex 20.04.2010 --- Ver 302 fixed IO cycle timing, tested thanks to Alessandro. --- Ver 301 parity flag is just parity for 8080, also overflow for Z80, by Sean Riddle -- Ver 300 started tidyup. Rmoved some auto_wait bits from 0247 which caused problems -- -- MikeJ March 2005 @@ -127,6 +124,14 @@ end T80; architecture rtl of T80 is + constant aNone : std_logic_vector(2 downto 0) := "111"; + constant aBC : std_logic_vector(2 downto 0) := "000"; + constant aDE : std_logic_vector(2 downto 0) := "001"; + constant aXY : std_logic_vector(2 downto 0) := "010"; + constant aIOA : std_logic_vector(2 downto 0) := "100"; + constant aSP : std_logic_vector(2 downto 0) := "101"; + constant aZI : std_logic_vector(2 downto 0) := "110"; + -- Registers signal ACC, F : std_logic_vector(7 downto 0); signal Ap, Fp : std_logic_vector(7 downto 0); @@ -244,8 +249,6 @@ architecture rtl of T80 is signal SetEI : std_logic; signal IMode : std_logic_vector(1 downto 0); signal Halt : std_logic; - signal XYbit_undoc : std_logic; - begin @@ -267,7 +270,6 @@ begin F => F, NMICycle => NMICycle, IntCycle => IntCycle, - XY_State => XY_State, MCycles => MCycles_d, TStates => TStates, Prefix => Prefix, @@ -313,8 +315,7 @@ begin IMode => IMode, Halt => Halt, NoRead => NoRead, - Write => Write, - XYbit_undoc => XYbit_undoc); + Write => Write); alu : T80_ALU generic map( @@ -394,9 +395,7 @@ begin MCycles <= MCycles_d; - if Mode = 3 then - IStatus <= "10"; - elsif IMode /= "11" then + if IMode /= "11" then IStatus <= IMode; end if; @@ -464,10 +463,10 @@ begin if T_Res = '1' then BTR_r <= (I_BT or I_BC or I_BTR) and not No_BTR; if Jump = '1' then - A(15 downto 8) <= DI_Reg; - A(7 downto 0) <= TmpAddr(7 downto 0); - PC(15 downto 8) <= unsigned(DI_Reg); - PC(7 downto 0) <= unsigned(TmpAddr(7 downto 0)); + A(15 downto 8) <= DI_Reg; + A(7 downto 0) <= TmpAddr(7 downto 0); + PC(15 downto 8) <= unsigned(DI_Reg); + PC(7 downto 0) <= unsigned(TmpAddr(7 downto 0)); elsif JumpXY = '1' then A <= RegBusC; PC <= unsigned(RegBusC); @@ -478,10 +477,10 @@ begin A <= "0000000001100110"; PC <= "0000000001100110"; elsif MCycle = "011" and IntCycle = '1' and IStatus = "10" then - A(15 downto 8) <= I; - A(7 downto 0) <= TmpAddr(7 downto 0); - PC(15 downto 8) <= unsigned(I); - PC(7 downto 0) <= unsigned(TmpAddr(7 downto 0)); + A(15 downto 8) <= I; + A(7 downto 0) <= TmpAddr(7 downto 0); + PC(15 downto 8) <= unsigned(I); + PC(7 downto 0) <= unsigned(TmpAddr(7 downto 0)); else case Set_Addr_To is when aXY => @@ -701,9 +700,6 @@ begin F <= Save_Mux; when others => end case; - if XYbit_undoc='1' then - DO <= ALU_Q; - end if; end if; end if; @@ -905,12 +901,8 @@ begin when "1010" => BusA <= "00000000"; when others => - BusA <= "--------"; + BusB <= "--------"; end case; - if XYbit_undoc='1' then - BusA <= DI_Reg; - BusB <= DI_Reg; - end if; end if; end if; end process; diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T8080se.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T8080se.vhd new file mode 100644 index 00000000..65b92d54 --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T8080se.vhd @@ -0,0 +1,194 @@ +-- **** +-- T80(b) core. In an effort to merge and maintain bug fixes .... +-- +-- +-- Ver 300 started tidyup +-- MikeJ March 2005 +-- Latest version from www.fpgaarcade.com (original www.opencores.org) +-- +-- **** +-- +-- 8080 compatible microprocessor core, synchronous top level with clock enable +-- Different timing than the original 8080 +-- Inputs needs to be synchronous and outputs may glitch +-- +-- Version : 0242 +-- +-- Copyright (c) 2002 Daniel Wallner (jesus@opencores.org) +-- +-- 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 SOFTWARE 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. +-- +-- Please report bugs to the author, but before you do so, please +-- make sure that this is not a derivative work and that +-- you have the latest version of this file. +-- +-- The latest version of this file can be found at: +-- http://www.opencores.org/cvsweb.shtml/t80/ +-- +-- Limitations : +-- STACK status output not supported +-- +-- File history : +-- +-- 0237 : First version +-- +-- 0238 : Updated for T80 interface change +-- +-- 0240 : Updated for T80 interface change +-- +-- 0242 : Updated for T80 interface change +-- + +library IEEE; +use IEEE.std_logic_1164.all; +use IEEE.numeric_std.all; +use work.T80_Pack.all; + +entity T8080se is + generic( + Mode : integer := 2; -- 0 => Z80, 1 => Fast Z80, 2 => 8080, 3 => GB + T2Write : integer := 0 -- 0 => WR_n active in T3, /=0 => WR_n active in T2 + ); + port( + RESET_n : in std_logic; + CLK : in std_logic; + CLKEN : in std_logic; + READY : in std_logic; + HOLD : in std_logic; + INT : in std_logic; + INTE : out std_logic; + DBIN : out std_logic; + SYNC : out std_logic; + VAIT : out std_logic; + HLDA : out std_logic; + WR_n : out std_logic; + A : out std_logic_vector(15 downto 0); + DI : in std_logic_vector(7 downto 0); + DO : out std_logic_vector(7 downto 0) + ); +end T8080se; + +architecture rtl of T8080se is + + signal IntCycle_n : std_logic; + signal NoRead : std_logic; + signal Write : std_logic; + signal IORQ : std_logic; + signal INT_n : std_logic; + signal HALT_n : std_logic; + signal BUSRQ_n : std_logic; + signal BUSAK_n : std_logic; + signal DO_i : std_logic_vector(7 downto 0); + signal DI_Reg : std_logic_vector(7 downto 0); + signal MCycle : std_logic_vector(2 downto 0); + signal TState : std_logic_vector(2 downto 0); + signal One : std_logic; + +begin + + INT_n <= not INT; + BUSRQ_n <= HOLD; + HLDA <= not BUSAK_n; + SYNC <= '1' when TState = "001" else '0'; + VAIT <= '1' when TState = "010" else '0'; + One <= '1'; + + DO(0) <= not IntCycle_n when TState = "001" else DO_i(0); -- INTA + DO(1) <= Write when TState = "001" else DO_i(1); -- WO_n + DO(2) <= DO_i(2); -- STACK not supported !!!!!!!!!! + DO(3) <= not HALT_n when TState = "001" else DO_i(3); -- HLTA + DO(4) <= IORQ and Write when TState = "001" else DO_i(4); -- OUT + DO(5) <= DO_i(5) when TState /= "001" else '1' when MCycle = "001" else '0'; -- M1 + DO(6) <= IORQ and not Write when TState = "001" else DO_i(6); -- INP + DO(7) <= not IORQ and not Write and IntCycle_n when TState = "001" else DO_i(7); -- MEMR + + u0 : T80 + generic map( + Mode => Mode, + IOWait => 0) + port map( + CEN => CLKEN, + M1_n => open, + IORQ => IORQ, + NoRead => NoRead, + Write => Write, + RFSH_n => open, + HALT_n => HALT_n, + WAIT_n => READY, + INT_n => INT_n, + NMI_n => One, + RESET_n => RESET_n, + BUSRQ_n => One, + BUSAK_n => BUSAK_n, + CLK_n => CLK, + A => A, + DInst => DI, + DI => DI_Reg, + DO => DO_i, + MC => MCycle, + TS => TState, + IntCycle_n => IntCycle_n, + IntE => INTE); + + process (RESET_n, CLK) + begin + if RESET_n = '0' then + DBIN <= '0'; + WR_n <= '1'; + DI_Reg <= "00000000"; + elsif CLK'event and CLK = '1' then + if CLKEN = '1' then + DBIN <= '0'; + WR_n <= '1'; + if MCycle = "001" then + if TState = "001" or (TState = "010" and READY = '0') then + DBIN <= IntCycle_n; + end if; + else + if (TState = "001" or (TState = "010" and READY = '0')) and NoRead = '0' and Write = '0' then + DBIN <= '1'; + end if; + if T2Write = 0 then + if TState = "010" and Write = '1' then + WR_n <= '0'; + end if; + else + if (TState = "001" or (TState = "010" and READY = '0')) and Write = '1' then + WR_n <= '0'; + end if; + end if; + end if; + if TState = "010" and READY = '1' then + DI_Reg <= DI; + end if; + end if; + end if; + end process; + +end; diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/T80_ALU.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T80_ALU.vhd similarity index 96% rename from Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/T80_ALU.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T80_ALU.vhd index 95c98dab..e09def1e 100644 --- a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/T80_ALU.vhd +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T80_ALU.vhd @@ -2,7 +2,6 @@ -- T80(b) core. In an effort to merge and maintain bug fixes .... -- -- --- Ver 301 parity flag is just parity for 8080, also overflow for Z80, by Sean Riddle -- Ver 300 started tidyup -- MikeJ March 2005 -- Latest version from www.fpgaarcade.com (original www.opencores.org) @@ -143,16 +142,7 @@ begin AddSub(BusA(3 downto 0), BusB(3 downto 0), ALU_Op(1), ALU_Op(1) xor (UseCarry and F_In(Flag_C)), Q_v(3 downto 0), HalfCarry_v); AddSub(BusA(6 downto 4), BusB(6 downto 4), ALU_Op(1), HalfCarry_v, Q_v(6 downto 4), Carry7_v); AddSub(BusA(7 downto 7), BusB(7 downto 7), ALU_Op(1), Carry7_v, Q_v(7 downto 7), Carry_v); - - -- bug fix - parity flag is just parity for 8080, also overflow for Z80 - process (Carry_v, Carry7_v, Q_v) - begin - if(Mode=2) then - OverFlow_v <= not (Q_v(0) xor Q_v(1) xor Q_v(2) xor Q_v(3) xor - Q_v(4) xor Q_v(5) xor Q_v(6) xor Q_v(7)); else - OverFlow_v <= Carry_v xor Carry7_v; - end if; - end process; + OverFlow_v <= Carry_v xor Carry7_v; process (Arith16, ALU_OP, F_In, BusA, BusB, IR, Q_v, Carry_v, HalfCarry_v, OverFlow_v, BitMask, ISet, Z16) variable Q_t : std_logic_vector(7 downto 0); diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/T80_MCode.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T80_MCode.vhd similarity index 94% rename from Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/T80_MCode.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T80_MCode.vhd index a8f5fbf5..43cea1b5 100644 --- a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/T80_MCode.vhd +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T80_MCode.vhd @@ -2,8 +2,6 @@ -- T80(b) core. In an effort to merge and maintain bug fixes .... -- -- --- Ver 303 add undocumented DDCB and FDCB opcodes by TobiFlex 20.04.2010 --- Ver 302 fixed IO cycle timing, tested thanks to Alessandro. -- Ver 300 started tidyup -- MikeJ March 2005 -- Latest version from www.fpgaarcade.com (original www.opencores.org) @@ -98,10 +96,9 @@ entity T80_MCode is F : in std_logic_vector(7 downto 0); NMICycle : in std_logic; IntCycle : in std_logic; - XY_State : in std_logic_vector(1 downto 0); MCycles : out std_logic_vector(2 downto 0); TStates : out std_logic_vector(2 downto 0); - Prefix : out std_logic_vector(1 downto 0); -- None,CB,ED,DD/FD + Prefix : out std_logic_vector(1 downto 0); -- None,BC,ED,DD/FD Inc_PC : out std_logic; Inc_WZ : out std_logic; IncDec_16 : out std_logic_vector(3 downto 0); -- BC,DE,HL,SP 0 is inc @@ -145,13 +142,20 @@ entity T80_MCode is IMode : out std_logic_vector(1 downto 0); Halt : out std_logic; NoRead : out std_logic; - Write : out std_logic; - XYbit_undoc : out std_logic + Write : out std_logic ); end T80_MCode; architecture rtl of T80_MCode is + constant aNone : std_logic_vector(2 downto 0) := "111"; + constant aBC : std_logic_vector(2 downto 0) := "000"; + constant aDE : std_logic_vector(2 downto 0) := "001"; + constant aXY : std_logic_vector(2 downto 0) := "010"; + constant aIOA : std_logic_vector(2 downto 0) := "100"; + constant aSP : std_logic_vector(2 downto 0) := "101"; + constant aZI : std_logic_vector(2 downto 0) := "110"; + function is_cc_true( F : std_logic_vector(7 downto 0); cc : bit_vector(2 downto 0) @@ -245,7 +249,6 @@ begin Halt <= '0'; NoRead <= '0'; Write <= '0'; - XYbit_undoc <= '0'; case ISet is when "00" => @@ -617,7 +620,7 @@ begin when 3 => Jump <= '1'; IncDec_16 <= "0111"; - --I_RETN <= '1'; + I_RETN <= '1'; SetEI <= '1'; when others => null; end case; @@ -807,11 +810,7 @@ begin end case; elsif IntCycle = '1' then -- INT (IM 2) - if mode = 3 then - MCycles <= "011"; - else - MCycles <= "101"; - end if; + MCycles <= "101"; case to_integer(unsigned(MCycle)) is when 1 => LDZ <= '1'; @@ -930,7 +929,7 @@ begin case to_integer(unsigned(MCycle)) is when 1 => Set_Addr_To <= aBC; - Set_BusB_To <= "0111"; + Set_BusB_To <= "0111"; when 2 => Write <= '1'; IORQ <= '1'; @@ -1163,6 +1162,7 @@ begin MCycles <= "011"; case to_integer(unsigned(MCycle)) is when 1 => + TStates <= "101"; Set_Addr_TO <= aSP; when 2 => IncDec_16 <= "0111"; @@ -1294,7 +1294,6 @@ begin when 3 => Read_To_Acc <= '1'; IORQ <= '1'; - TStates <= "100"; -- MIKEJ should be 4 for IO cycle when others => null; end case; end if; @@ -1310,7 +1309,6 @@ begin when 3 => Write <= '1'; IORQ <= '1'; - TStates <= "100"; -- MIKEJ should be 4 for IO cycle when others => null; end case; end if; @@ -1366,32 +1364,11 @@ begin -- SRA r -- SRL r -- SLL r (Undocumented) / SWAP r - if XY_State="00" then - if MCycle = "001" then - ALU_Op <= "1000"; - Read_To_Reg <= '1'; - Save_ALU <= '1'; - end if; - else - -- R/S (IX+d),Reg, undocumented - MCycles <= "011"; - XYbit_undoc <= '1'; - case to_integer(unsigned(MCycle)) is - when 1 | 7=> - Set_Addr_To <= aXY; - when 2 => - ALU_Op <= "1000"; - Read_To_Reg <= '1'; - Save_ALU <= '1'; - Set_Addr_To <= aXY; - TStates <= "100"; - when 3 => - Write <= '1'; - when others => null; - end case; + if MCycle = "001" then + ALU_Op <= "1000"; + Read_To_Reg <= '1'; + Save_ALU <= '1'; end if; - - when "00000110"|"00010110"|"00001110"|"00011110"|"00101110"|"00111110"|"00100110"|"00110110" => -- RLC (HL) -- RL (HL) @@ -1424,23 +1401,9 @@ begin |"01110000"|"01110001"|"01110010"|"01110011"|"01110100"|"01110101"|"01110111" |"01111000"|"01111001"|"01111010"|"01111011"|"01111100"|"01111101"|"01111111" => -- BIT b,r - if XY_State="00" then - if MCycle = "001" then - Set_BusB_To(2 downto 0) <= IR(2 downto 0); - ALU_Op <= "1001"; - end if; - else - -- BIT b,(IX+d), undocumented - MCycles <= "010"; - XYbit_undoc <= '1'; - case to_integer(unsigned(MCycle)) is - when 1 | 7=> - Set_Addr_To <= aXY; - when 2 => - ALU_Op <= "1001"; - TStates <= "100"; - when others => null; - end case; + if MCycle = "001" then + Set_BusB_To(2 downto 0) <= IR(2 downto 0); + ALU_Op <= "1001"; end if; when "01000110"|"01001110"|"01010110"|"01011110"|"01100110"|"01101110"|"01110110"|"01111110" => -- BIT b,(HL) @@ -1462,29 +1425,10 @@ begin |"11110000"|"11110001"|"11110010"|"11110011"|"11110100"|"11110101"|"11110111" |"11111000"|"11111001"|"11111010"|"11111011"|"11111100"|"11111101"|"11111111" => -- SET b,r - if XY_State="00" then - if MCycle = "001" then - ALU_Op <= "1010"; - Read_To_Reg <= '1'; - Save_ALU <= '1'; - end if; - else - -- SET b,(IX+d),Reg, undocumented - MCycles <= "011"; - XYbit_undoc <= '1'; - case to_integer(unsigned(MCycle)) is - when 1 | 7=> - Set_Addr_To <= aXY; - when 2 => - ALU_Op <= "1010"; - Read_To_Reg <= '1'; - Save_ALU <= '1'; - Set_Addr_To <= aXY; - TStates <= "100"; - when 3 => - Write <= '1'; - when others => null; - end case; + if MCycle = "001" then + ALU_Op <= "1010"; + Read_To_Reg <= '1'; + Save_ALU <= '1'; end if; when "11000110"|"11001110"|"11010110"|"11011110"|"11100110"|"11101110"|"11110110"|"11111110" => -- SET b,(HL) @@ -1511,31 +1455,11 @@ begin |"10110000"|"10110001"|"10110010"|"10110011"|"10110100"|"10110101"|"10110111" |"10111000"|"10111001"|"10111010"|"10111011"|"10111100"|"10111101"|"10111111" => -- RES b,r - if XY_State="00" then - if MCycle = "001" then - ALU_Op <= "1011"; - Read_To_Reg <= '1'; - Save_ALU <= '1'; - end if; - else - -- RES b,(IX+d),Reg, undocumented - MCycles <= "011"; - XYbit_undoc <= '1'; - case to_integer(unsigned(MCycle)) is - when 1 | 7=> - Set_Addr_To <= aXY; - when 2 => - ALU_Op <= "1011"; - Read_To_Reg <= '1'; - Save_ALU <= '1'; - Set_Addr_To <= aXY; - TStates <= "100"; - when 3 => - Write <= '1'; - when others => null; - end case; + if MCycle = "001" then + ALU_Op <= "1011"; + Read_To_Reg <= '1'; + Save_ALU <= '1'; end if; - when "10000110"|"10001110"|"10010110"|"10011110"|"10100110"|"10101110"|"10110110"|"10111110" => -- RES b,(HL) MCycles <= "011"; @@ -1877,7 +1801,6 @@ begin when 1 => Set_Addr_To <= aBC; when 2 => - TStates <= "100"; -- MIKEJ should be 4 for IO cycle IORQ <= '1'; if IR(5 downto 3) /= "110" then Read_To_Reg <= '1'; @@ -1898,7 +1821,6 @@ begin Set_BusB_To(3) <= '1'; end if; when 2 => - TStates <= "100"; -- MIKEJ should be 4 for IO cycle Write <= '1'; IORQ <= '1'; when others => @@ -1916,7 +1838,6 @@ begin Save_ALU <= '1'; ALU_Op <= "0010"; when 2 => - TStates <= "100"; -- MIKEJ should be 4 for IO cycle IORQ <= '1'; Set_BusB_To <= "0110"; Set_Addr_To <= aXY; @@ -1959,7 +1880,6 @@ begin else IncDec_16 <= "1110"; -- mikej end if; - TStates <= "100"; -- MIKEJ should be 4 for IO cycle IORQ <= '1'; Write <= '1'; I_BTR <= '1'; diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/T80_Pack.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T80_Pack.vhd similarity index 92% rename from Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/T80_Pack.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T80_Pack.vhd index 907db408..42cf6105 100644 --- a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/T80_Pack.vhd +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T80_Pack.vhd @@ -2,7 +2,6 @@ -- T80(b) core. In an effort to merge and maintain bug fixes .... -- -- --- Ver 303 add undocumented DDCB and FDCB opcodes by TobiFlex 20.04.2010 -- Ver 300 started tidyup -- MikeJ March 2005 -- Latest version from www.fpgaarcade.com (original www.opencores.org) @@ -60,14 +59,6 @@ use IEEE.std_logic_1164.all; package T80_Pack is - constant aNone : std_logic_vector(2 downto 0) := "111"; - constant aBC : std_logic_vector(2 downto 0) := "000"; - constant aDE : std_logic_vector(2 downto 0) := "001"; - constant aXY : std_logic_vector(2 downto 0) := "010"; - constant aIOA : std_logic_vector(2 downto 0) := "100"; - constant aSP : std_logic_vector(2 downto 0) := "101"; - constant aZI : std_logic_vector(2 downto 0) := "110"; - component T80 generic( Mode : integer := 0; -- 0 => Z80, 1 => Fast Z80, 2 => 8080, 3 => GB @@ -147,7 +138,6 @@ package T80_Pack is F : in std_logic_vector(7 downto 0); NMICycle : in std_logic; IntCycle : in std_logic; - XY_State : in std_logic_vector(1 downto 0); MCycles : out std_logic_vector(2 downto 0); TStates : out std_logic_vector(2 downto 0); Prefix : out std_logic_vector(1 downto 0); -- None,BC,ED,DD/FD @@ -194,8 +184,7 @@ package T80_Pack is IMode : out std_logic_vector(1 downto 0); Halt : out std_logic; NoRead : out std_logic; - Write : out std_logic; - XYbit_undoc : out std_logic + Write : out std_logic ); end component; diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/T80/T80_Reg.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T80_Reg.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/T80/T80_Reg.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/T80/T80_Reg.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/Vortex_memory.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/Vortex_memory.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/Vortex_memory.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/Vortex_memory.sv diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/Vortex_mist.sv b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/Vortex_mist.sv similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/Vortex_mist.sv rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/Vortex_mist.sv diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/build_id.tcl b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/build_id.tcl new file mode 100644 index 00000000..938515d8 --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/build_id.tcl @@ -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 \ No newline at end of file diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/invaders.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/invaders.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/invaders.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/invaders.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/invaders_audio.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/invaders_audio.vhd similarity index 99% rename from Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/invaders_audio.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/invaders_audio.vhd index f1fbea60..f16cf379 100644 --- a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/invaders_audio.vhd +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/invaders_audio.vhd @@ -130,7 +130,7 @@ begin begin wait until rising_edge(Clk); Clk7680_ena <= '0'; - if ClkDiv = 781 then + if ClkDiv = 1277 then Clk7680_ena <= '1'; ClkDiv <= (others => '0'); else diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/mw8080.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/mw8080.vhd new file mode 100644 index 00000000..b9a88f96 --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/mw8080.vhd @@ -0,0 +1,336 @@ +-- Midway 8080 main board +-- 9.984MHz Clock +-- +-- Version : 0242 +-- +-- Copyright (c) 2002 Daniel Wallner (jesus@opencores.org) +-- +-- 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 SOFTWARE 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. +-- +-- Please report bugs to the author, but before you do so, please +-- make sure that this is not a derivative work and that +-- you have the latest version of this file. +-- +-- The latest version of this file can be found at: +-- http://www.fpgaarcade.com +-- +-- Limitations : +-- +-- File history : +-- +-- 0241 : First release +-- +-- 0242 : Removed the ROM +-- +-- 0300 : MikeJ tidyup for audio release +-- +library IEEE; +use IEEE.std_logic_1164.all; +use IEEE.numeric_std.all; + +entity mw8080 is + port( + Rst_n : in std_logic; + Clk : in std_logic; + ENA : out std_logic; + RWE_n : out std_logic; + RDB : in std_logic_vector(7 downto 0); + RAB : out std_logic_vector(12 downto 0); + Sounds : out std_logic_vector(7 downto 0); + Ready : out std_logic; + GDB : in std_logic_vector(7 downto 0); + IB : in std_logic_vector(7 downto 0); + DB : out std_logic_vector(7 downto 0); + AD : out std_logic_vector(15 downto 0); + Status : out std_logic_vector(7 downto 0); + Systb : out std_logic; + Int : out std_logic; + Hold_n : in std_logic; + IntE : out std_logic; + DBin_n : out std_logic; + Vait : out std_logic; + HldA : out std_logic; + Sample : out std_logic; + Wr : out std_logic; + Video : out std_logic; + HSync : out std_logic; + VSync : out std_logic); +end mw8080; + +architecture struct of mw8080 is + + component T8080se + generic( + Mode : integer := 2; + T2Write : integer := 0); + port( + RESET_n : in std_logic; + CLK : in std_logic; + CLKEN : in std_logic; + READY : in std_logic; + HOLD : in std_logic; + INT : in std_logic; + INTE : out std_logic; + DBIN : out std_logic; + SYNC : out std_logic; + VAIT : out std_logic; + HLDA : out std_logic; + WR_n : out std_logic; + A : out std_logic_vector(15 downto 0); + DI : in std_logic_vector(7 downto 0); + DO : out std_logic_vector(7 downto 0)); + end component; + + signal Ready_i : std_logic; + signal Hold : std_logic; + signal IntTrig : std_logic; + signal IntTrigOld : std_logic; + signal Int_i : std_logic; + signal IntE_i : std_logic; + signal DBin : std_logic; + signal Sync : std_logic; + signal Wr_n, Rd_n : std_logic; + signal ClkEnCnt : unsigned(2 downto 0); + signal Status_i : std_logic_vector(7 downto 0); + signal A : std_logic_vector(15 downto 0); + signal ISel : std_logic_vector(1 downto 0); + signal DI : std_logic_vector(7 downto 0); + signal DO : std_logic_vector(7 downto 0); + signal RR : std_logic_vector(9 downto 0); + + signal VidEn : std_logic; + signal CntD5 : unsigned(3 downto 0); -- Horizontal counter / 320 + signal CntE5 : unsigned(4 downto 0); -- Horizontal counter 2 + signal CntE6 : unsigned(3 downto 0); -- Vertical counter / 262 + signal CntE7 : unsigned(4 downto 0); -- Vertical counter 2 + signal Shift : std_logic_vector(7 downto 0); + +begin + ENA <= ClkEnCnt(2); + Status <= Status_i; + Ready <= Ready_i; + DB <= DO; + Systb <= Sync; + Int <= Int_i; + Hold <= not Hold_n; + IntE <= IntE_i; + DBin_n <= not DBin; + Sample <= not Wr_n and Status_i(4); + Wr <= not Wr_n; + AD <= A; + Sounds(0) <= CntE7(3); + Sounds(1) <= CntE7(2); + Sounds(2) <= CntE7(1); + Sounds(3) <= CntE7(0); + Sounds(4) <= CntE6(3); + Sounds(5) <= CntE6(2); + Sounds(6) <= CntE6(1); + Sounds(7) <= CntE6(0); + + IntTrig <= (not CntE7(2) nand CntE7(3)) nand not CntE7(4); + + ISel(0) <= Status_i(0) nor (Status_i(6) nor A(13)); + ISel(1) <= Status_i(0) nor Status_i(6); + + with ISel select + DI <= "110" & CntE7(2) & not CntE7(2) & "111" when "00", + GDB when "01", + IB when "10", + RR(7 downto 0) when others; + + RWE_n <= Wr_n or not (RR(8) xor RR(9)) or not CntD5(2); + RAB <= A(12 downto 0) when CntD5(2) = '1' else + std_logic_vector(CntE7(3 downto 0) & CntE6(3 downto 0) & CntE5(3 downto 0) & CntD5(3)); + + u_8080: T8080se + generic map ( + Mode => 2, + T2Write => 1) + port map ( + RESET_n => Rst_n, + CLK => Clk, + CLKEN => ClkEnCnt(2), + READY => Ready_i, + HOLD => Hold, + INT => Int_i, + INTE => IntE_i, + DBIN => DBin, + SYNC => Sync, + VAIT => Vait, + HLDA => HLDA, + WR_n => Wr_n, + A => A, + DI => DI, + DO => DO); + + -- Clock enables + process (Rst_n, Clk) + begin + if Rst_n = '0' then + ClkEnCnt <= "000"; + VidEn <= '0'; + elsif Clk'event and Clk = '1' then + VidEn <= not VidEn; + if ClkEnCnt = 4 then + ClkEnCnt <= "000"; + else + ClkEnCnt <= ClkEnCnt + 1; + end if; + end if; + end process; + + -- Glue + process (Rst_n, Clk) + variable OldASEL : std_logic; + begin + if Rst_n = '0' then + Status_i <= (others => '0'); + IntTrigOld <= '0'; + Int_i <= '0'; + OldASEL := '0'; + Ready_i <= '0'; + RR <= (others => '0'); + elsif Clk'event and Clk = '1' then + -- E3 + -- Interrupt + IntTrigOld <= IntTrig; + if Status_i(0) = '1' then + Int_i <= '0'; + elsif IntTrigOld = '0' and IntTrig = '1' then + Int_i <= IntE_i; + end if; + + -- D7 + -- Status register + if Sync = '1' then + Status_i <= DO; + end if; + + -- A3, C3, E3 + -- RAM register/ready logic + if Sync = '1' and A(13) = '1' then + Ready_i <= '0'; + elsif Ready_i = '1' then + Ready_i <= '1'; + else + Ready_i <= RR(9); + end if; + if Sync = '1' and A(13) = '1' then + RR <= (others => '0'); + elsif (CntD5(2) = '1' and OldASEL = '0') or -- ASEL pos edge + (CntD5(2) = '0' and OldASEL = '1' and RR(8) = '1') then -- ASEL neg edge + RR(7 downto 0) <= RDB; + RR(8) <= '1'; + RR(9) <= RR(8); + end if; + OldASEL := CntD5(2); + end if; + end process; + + -- Video counters + process (Rst_n, Clk) + begin + if Rst_n = '0' then + CntD5 <= (others => '0'); + CntE5 <= (others => '0'); + CntE6 <= (others => '0'); + CntE7 <= (others => '0'); + elsif Clk'event and Clk = '1' then + if VidEn = '1' then + CntD5 <= CntD5 + 1; + if CntD5 = 15 then + + CntE5 <= CntE5 + 1; + if CntE5(3 downto 0) = 15 then + if CntE5(4) = '0' then + CntE5 <= "11100"; + + CntE6 <= CntE6 + 1; + if CntE6 = 15 then + + CntE7 <= CntE7 + 1; + if CntE7(3 downto 0) = 15 then + if CntE7(4) = '0' then + CntE6 <= "1010"; + CntE7 <= "11101"; + else + CntE7 <= "00010"; + end if; + end if; + end if; + end if; + else + end if; + end if; + end if; + end if; + end process; + + -- Video shift register + process (Rst_n, Clk) + begin + if Rst_n = '0' then + Shift <= (others => '0'); + Video <= '0'; + elsif Clk'event and Clk = '1' then + if VidEn = '1' then + if CntE7(4) = '0' and CntE5(4) = '0' and CntD5(2 downto 0) = "011" then + Shift(7 downto 0) <= RDB(7 downto 0); + else + Shift(6 downto 0) <= Shift(7 downto 1); + Shift(7) <= '0'; + end if; + Video <= Shift(0); + end if; + end if; + end process; + + -- Sync + process (Rst_n, Clk) + begin + if Rst_n = '0' then + HSync <= '1'; + VSync <= '1'; + elsif Clk'event and Clk = '1' then + if VidEn = '1' then + if CntE5(4) = '1' and CntE5(1 downto 0) = "10" then + HSync <= '0'; + else + HSync <= '1'; + end if; + if CntE7(4) = '1' and CntE7(0) = '0' and CntE6(3 downto 2) = "11" then + VSync <= '0'; + else + VSync <= '1'; + end if; + end if; + end if; + end process; + +end; diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/mist/pll27.qip b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/pll.qip similarity index 85% rename from Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/mist/pll27.qip rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/pll.qip index cc650dfe..48665362 100644 --- a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/mist/pll27.qip +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/pll.qip @@ -1,4 +1,4 @@ set_global_assignment -name IP_TOOL_NAME "ALTPLL" set_global_assignment -name IP_TOOL_VERSION "13.1" -set_global_assignment -name VHDL_FILE [file join $::quartus(qip_path) "pll27.vhd"] -set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "pll27.ppf"] +set_global_assignment -name VHDL_FILE [file join $::quartus(qip_path) "pll.vhd"] +set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "pll.ppf"] diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/mist/pll27.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/pll.vhd similarity index 93% rename from Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/mist/pll27.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/pll.vhd index 282aff01..feed4923 100644 --- a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/src/mist/pll27.vhd +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/pll.vhd @@ -4,7 +4,7 @@ -- MODULE: altpll -- ============================================================ --- File Name: pll27.vhd +-- File Name: pll.vhd -- Megafunction Name(s): -- altpll -- @@ -39,17 +39,17 @@ USE ieee.std_logic_1164.all; LIBRARY altera_mf; USE altera_mf.all; -ENTITY pll27 IS +ENTITY pll IS PORT ( inclk0 : IN STD_LOGIC := '0'; c0 : OUT STD_LOGIC ; c1 : OUT STD_LOGIC ); -END pll27; +END pll; -ARCHITECTURE SYN OF pll27 IS +ARCHITECTURE SYN OF pll IS SIGNAL sub_wire0 : STD_LOGIC_VECTOR (4 DOWNTO 0); SIGNAL sub_wire1 : STD_LOGIC ; @@ -141,9 +141,9 @@ BEGIN altpll_component : altpll GENERIC MAP ( bandwidth_type => "AUTO", - clk0_divide_by => 9, + clk0_divide_by => 27, clk0_duty_cycle => 50, - clk0_multiply_by => 2, + clk0_multiply_by => 10, clk0_phase_shift => "0", clk1_divide_by => 9, clk1_duty_cycle => 50, @@ -152,7 +152,7 @@ BEGIN compensate_clock => "CLK0", inclk0_input_frequency => 37037, intended_device_family => "Cyclone III", - lpm_hint => "CBX_MODULE_PREFIX=pll27", + lpm_hint => "CBX_MODULE_PREFIX=pll", lpm_type => "altpll", operation_mode => "NORMAL", pll_type => "AUTO", @@ -227,11 +227,11 @@ END SYN; -- 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 "9" +-- Retrieval info: PRIVATE: DIV_FACTOR0 NUMERIC "27" -- Retrieval info: PRIVATE: DIV_FACTOR1 NUMERIC "27" -- Retrieval info: PRIVATE: DUTY_CYCLE0 STRING "50.00000000" -- Retrieval info: PRIVATE: DUTY_CYCLE1 STRING "50.00000000" --- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE0 STRING "6.000000" +-- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE0 STRING "10.000000" -- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE1 STRING "24.000000" -- Retrieval info: PRIVATE: EXPLICIT_SWITCHOVER_COUNTER STRING "0" -- Retrieval info: PRIVATE: EXT_FEEDBACK_RADIO STRING "0" @@ -257,12 +257,12 @@ END SYN; -- Retrieval info: PRIVATE: MIG_DEVICE_SPEED_GRADE STRING "Any" -- Retrieval info: PRIVATE: MIRROR_CLK0 STRING "0" -- Retrieval info: PRIVATE: MIRROR_CLK1 STRING "0" --- Retrieval info: PRIVATE: MULT_FACTOR0 NUMERIC "2" --- Retrieval info: PRIVATE: MULT_FACTOR1 NUMERIC "8" +-- Retrieval info: PRIVATE: MULT_FACTOR0 NUMERIC "10" +-- Retrieval info: PRIVATE: MULT_FACTOR1 NUMERIC "40" -- Retrieval info: PRIVATE: NORMAL_MODE_RADIO STRING "1" --- Retrieval info: PRIVATE: OUTPUT_FREQ0 STRING "6.00000000" +-- Retrieval info: PRIVATE: OUTPUT_FREQ0 STRING "10.00000000" -- Retrieval info: PRIVATE: OUTPUT_FREQ1 STRING "24.00000000" --- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE0 STRING "1" +-- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE0 STRING "0" -- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE1 STRING "1" -- Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT0 STRING "MHz" -- Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT1 STRING "MHz" @@ -272,7 +272,7 @@ END SYN; -- Retrieval info: PRIVATE: PHASE_SHIFT1 STRING "0.00000000" -- Retrieval info: PRIVATE: PHASE_SHIFT_STEP_ENABLED_CHECK STRING "0" -- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT0 STRING "deg" --- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT1 STRING "ns" +-- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT1 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" @@ -283,7 +283,7 @@ END SYN; -- Retrieval info: PRIVATE: PLL_PFDENA_CHECK STRING "0" -- Retrieval info: PRIVATE: PLL_TARGET_HARCOPY_CHECK NUMERIC "0" -- Retrieval info: PRIVATE: PRIMARY_CLK_COMBO STRING "inclk0" --- Retrieval info: PRIVATE: RECONFIG_FILE STRING "pll27.mif" +-- 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" @@ -307,9 +307,9 @@ END SYN; -- 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 "9" +-- Retrieval info: CONSTANT: CLK0_DIVIDE_BY NUMERIC "27" -- Retrieval info: CONSTANT: CLK0_DUTY_CYCLE NUMERIC "50" --- Retrieval info: CONSTANT: CLK0_MULTIPLY_BY NUMERIC "2" +-- Retrieval info: CONSTANT: CLK0_MULTIPLY_BY NUMERIC "10" -- Retrieval info: CONSTANT: CLK0_PHASE_SHIFT STRING "0" -- Retrieval info: CONSTANT: CLK1_DIVIDE_BY NUMERIC "9" -- Retrieval info: CONSTANT: CLK1_DUTY_CYCLE NUMERIC "50" @@ -372,11 +372,11 @@ END SYN; -- 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: GEN_FILE: TYPE_NORMAL pll27.vhd TRUE --- Retrieval info: GEN_FILE: TYPE_NORMAL pll27.ppf TRUE --- Retrieval info: GEN_FILE: TYPE_NORMAL pll27.inc FALSE --- Retrieval info: GEN_FILE: TYPE_NORMAL pll27.cmp FALSE --- Retrieval info: GEN_FILE: TYPE_NORMAL pll27.bsf FALSE --- Retrieval info: GEN_FILE: TYPE_NORMAL pll27_inst.vhd FALSE +-- Retrieval info: GEN_FILE: TYPE_NORMAL pll.vhd 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.vhd FALSE -- Retrieval info: LIB_FILE: altera_mf -- Retrieval info: CBX_MODULE_PREFIX: ON diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/roms/1.t36.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/roms/1.t36.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/roms/1.t36.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/roms/1.t36.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/roms/2.t35.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/roms/2.t35.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/roms/2.t35.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/roms/2.t35.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/roms/3.t34.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/roms/3.t34.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/roms/3.t34.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/roms/3.t34.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/roms/4.t33.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/roms/4.t33.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/roms/4.t33.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/roms/4.t33.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/roms/5.t32.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/roms/5.t32.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/roms/5.t32.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/roms/5.t32.vhd diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/roms/6.t31.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/roms/6.t31.vhd similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/Midway8080v2_MiST/Vortex_MiST/rtl/roms/6.t31.vhd rename to Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/roms/6.t31.vhd diff --git a/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/spram.vhd b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/spram.vhd new file mode 100644 index 00000000..d8043481 --- /dev/null +++ b/Arcade_MiST/Midway-Taito 8080 Hardware/Midway8080_MiST/Vortex_MiST/rtl/spram.vhd @@ -0,0 +1,55 @@ +LIBRARY ieee; +USE ieee.std_logic_1164.all; + +LIBRARY altera_mf; +USE altera_mf.altera_mf_components.all; + +ENTITY spram IS + generic ( + addr_width_g : integer := 8; + data_width_g : integer := 8 + ); + PORT + ( + address : IN STD_LOGIC_VECTOR (addr_width_g-1 DOWNTO 0); + clken : IN STD_LOGIC := '1'; + clock : IN STD_LOGIC := '1'; + data : IN STD_LOGIC_VECTOR (data_width_g-1 DOWNTO 0); + wren : IN STD_LOGIC ; + q : OUT STD_LOGIC_VECTOR (data_width_g-1 DOWNTO 0) + ); +END spram; + + +ARCHITECTURE SYN OF spram IS + +BEGIN + altsyncram_component : altsyncram + GENERIC MAP ( + clock_enable_input_a => "NORMAL", + clock_enable_output_a => "BYPASS", + intended_device_family => "Cyclone III", + lpm_hint => "ENABLE_RUNTIME_MOD=NO", + lpm_type => "altsyncram", + numwords_a => 2**addr_width_g, + operation_mode => "SINGLE_PORT", + outdata_aclr_a => "NONE", + outdata_reg_a => "UNREGISTERED", + power_up_uninitialized => "FALSE", + read_during_write_mode_port_a => "NEW_DATA_NO_NBE_READ", + widthad_a => addr_width_g, + width_a => data_width_g, + width_byteena_a => 1 + ) + PORT MAP ( + address_a => address, + clock0 => clock, + clocken0 => clken, + data_a => data, + wren_a => wren, + q_a => q + ); + + + +END SYN; diff --git a/Arcade_MiST/Midway8080 Hardware/ReadMe.txt b/Arcade_MiST/Midway-Taito 8080 Hardware/ReadMe.txt similarity index 100% rename from Arcade_MiST/Midway8080 Hardware/ReadMe.txt rename to Arcade_MiST/Midway-Taito 8080 Hardware/ReadMe.txt diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Midway8080.qsf b/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Midway8080.qsf deleted file mode 100644 index a9e0afc3..00000000 --- a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Midway8080.qsf +++ /dev/null @@ -1,165 +0,0 @@ -# copyright (c) 1991-2005 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 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. - - -# the default values for assignments are stored in the file -# invaders_assignment_defaults.qdf -# if this file doesn't exist, and for assignments not listed, see file -# assignment_defaults.qdf - -# 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 LAST_QUARTUS_VERSION 13.1 -set_global_assignment -name PROJECT_OUTPUT_DIRECTORY output_files - -# pin & location assignments -# ========================== - -set_location_assignment PIN_54 -to CLOCK_27 -set_location_assignment PIN_7 -to LED -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 - - -# analysis & synthesis assignments -# ================================ -set_global_assignment -name FAMILY "Cyclone III" -set_global_assignment -name TOP_LEVEL_ENTITY target_top - -# fitter assignments -# ================== -set_global_assignment -name DEVICE EP3C25E144C8 -set_global_assignment -name CYCLONEII_RESERVE_NCEO_AFTER_CONFIGURATION "USE AS REGULAR IO" -set_global_assignment -name RESERVE_ASDO_AFTER_CONFIGURATION "AS INPUT TRI-STATED" - -set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Top -set_global_assignment -name PARTITION_COLOR 2147039 -section_id Top -set_global_assignment -name LL_ROOT_REGION ON -section_id "Root Region" -set_global_assignment -name LL_MEMBER_STATE LOCKED -section_id "Root Region" -set_global_assignment -name PARTITION_FITTER_PRESERVATION_LEVEL PLACEMENT_AND_ROUTING -section_id Top -set_global_assignment -name VHDL_INPUT_VERSION VHDL_2008 -set_global_assignment -name VHDL_SHOW_LMF_MAPPING_MESSAGES OFF -set_global_assignment -name MIN_CORE_JUNCTION_TEMP 0 -set_global_assignment -name MAX_CORE_JUNCTION_TEMP 85 -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)" -set_global_assignment -name CYCLONEIII_CONFIGURATION_SCHEME "PASSIVE SERIAL" -set_global_assignment -name USE_CONFIGURATION_DEVICE OFF -set_global_assignment -name GENERATE_RBF_FILE ON -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 LVCMOS" -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" -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 -set_global_assignment -name SEARCH_PATH device/cycloneii/ -tag from_archive -set_global_assignment -name SEARCH_PATH pacman/openep3c16/ -tag from_archive -set_global_assignment -name SEARCH_PATH src/component/cpu/t80/ -tag from_archive -set_global_assignment -name SEARCH_PATH src/component/io/gamecube/ -tag from_archive -set_global_assignment -name SEARCH_PATH src/component/io/maple/ -tag from_archive -set_global_assignment -name SEARCH_PATH src/component/ps2/ -tag from_archive -set_global_assignment -name SEARCH_PATH src/component/sound/ -tag from_archive -set_global_assignment -name SEARCH_PATH src/component/toys/ -tag from_archive -set_global_assignment -name SEARCH_PATH src/pace/ -tag from_archive -set_global_assignment -name SEARCH_PATH src/pace/stubs/ -tag from_archive -set_global_assignment -name SEARCH_PATH src/pace/video/ -tag from_archive -set_global_assignment -name SEARCH_PATH src/platform/midway8080/ -tag from_archive -set_global_assignment -name SEARCH_PATH src/platform/midway8080/invaders/ -tag from_archive -set_global_assignment -name SEARCH_PATH src/platform/midway8080/invaders/roms/ -tag from_archive -set_global_assignment -name SEARCH_PATH src/target/mist/ -tag from_archive -set_global_assignment -name ENABLE_SIGNALTAP OFF -set_global_assignment -name USE_SIGNALTAP_FILE output_files/output_files/vid.stp -set_global_assignment -name QIP_FILE ../../../common/mist/mist.qip -set_global_assignment -name VHDL_FILE src/mist/pll27.vhd -set_global_assignment -name VERILOG_FILE src/mist/ps2_intf.v -set_global_assignment -name VERILOG_FILE src/mist/keyboard.v -set_global_assignment -name VHDL_FILE src/Z80.vhd -set_global_assignment -name VHDL_FILE src/mist/target_top.vhd -set_global_assignment -name VHDL_FILE src/mist/target_pkg.vhd -set_global_assignment -name VHDL_FILE src/mist/sigma_delta_dac.vhd -set_global_assignment -name VHDL_FILE src/mist/custom_io.vhd -set_global_assignment -name VHDL_FILE src/video_mixer.vhd -set_global_assignment -name VHDL_FILE src/video_controller_pkg_body.vhd -set_global_assignment -name VHDL_FILE src/video_controller_pkg.vhd -set_global_assignment -name VHDL_FILE src/video_controller.vhd -set_global_assignment -name VHDL_FILE src/tilemapctl_e.vhd -set_global_assignment -name VHDL_FILE src/sprom.vhd -set_global_assignment -name VHDL_FILE src/sprite_pkg_body.vhd -set_global_assignment -name VHDL_FILE src/sprite_pkg.vhd -set_global_assignment -name VHDL_FILE src/spram.vhd -set_global_assignment -name VHDL_FILE src/Sound.vhd -set_global_assignment -name VHDL_FILE src/project_pkg.vhd -set_global_assignment -name VHDL_FILE src/platform_variant_pkg.vhd -set_global_assignment -name VHDL_FILE src/platform_pkg.vhd -set_global_assignment -name VHDL_FILE src/platform.vhd -set_global_assignment -name VHDL_FILE src/pace_pkg_body.vhd -set_global_assignment -name VHDL_FILE src/pace_pkg.vhd -set_global_assignment -name VHDL_FILE src/pace.vhd -set_global_assignment -name VHDL_FILE src/invaders_audio.vhd -set_global_assignment -name VHDL_FILE src/Inputs.VHD -set_global_assignment -name VHDL_FILE src/InputMapper.VHDL -set_global_assignment -name VHDL_FILE src/Graphics.VHD -set_global_assignment -name VHDL_FILE src/dpram_1r1w.vhd -set_global_assignment -name VHDL_FILE src/dpram.vhd -set_global_assignment -name VHDL_FILE src/clk_div.vhd -set_global_assignment -name VHDL_FILE src/bitmapctl_e.vhd -set_global_assignment -name VHDL_FILE src/bitmapctl.vhd -set_global_assignment -name VHDL_FILE src/altera_mem.vhd -set_global_assignment -name VHDL_FILE src/ps2kbd.vhd -set_global_assignment -name VHDL_FILE src/ps2kbd_pkg.vhd -set_global_assignment -name VHDL_FILE src/T80_Pack.vhd -set_global_assignment -name VHDL_FILE src/T80se.vhd -set_global_assignment -name VHDL_FILE src/T80.vhd -set_global_assignment -name VHDL_FILE src/T80_ALU.vhd -set_global_assignment -name VHDL_FILE src/T80_Reg.vhd -set_global_assignment -name VHDL_FILE src/T80_MCode.vhd -set_global_assignment -name VHDL_FILE src/invaders_video.vhd -set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top \ No newline at end of file diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Midway8080.sdc b/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Midway8080.sdc deleted file mode 100644 index 3513782a..00000000 --- a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Midway8080.sdc +++ /dev/null @@ -1,126 +0,0 @@ -## Generated SDC file "vectrex_MiST.out.sdc" - -## 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. - - -## VENDOR "Altera" -## PROGRAM "Quartus II" -## VERSION "Version 13.1.0 Build 162 10/23/2013 SJ Web Edition" - -## DATE "Sun Jun 24 12:53:00 2018" - -## -## DEVICE "EP3C25E144C8" -## - -# Clock constraints - -# Automatically constrain PLL and other generated clocks -derive_pll_clocks -create_base_clocks - -# Automatically calculate clock uncertainty to jitter and other effects. -derive_clock_uncertainty - -# tsu/th constraints - -# tco constraints - -# tpd constraints - -#************************************************************** -# Time Information -#************************************************************** - -set_time_format -unit ns -decimal_places 3 - - - -#************************************************************** -# Create Clock -#************************************************************** - -create_clock -name {SPI_SCK} -period 41.666 -waveform { 20.8 41.666 } [get_ports {SPI_SCK}] - -#************************************************************** -# Create Generated Clock -#************************************************************** - - -#************************************************************** -# Set Clock Latency -#************************************************************** - - - -#************************************************************** -# Set Clock Uncertainty -#************************************************************** - -#************************************************************** -# Set Input Delay -#************************************************************** - -set_input_delay -add_delay -clock_fall -clock [get_clocks {CLOCK_27}] 1.000 [get_ports {CLOCK_27}] -set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {CONF_DATA0}] -set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_DI}] -set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_SCK}] -set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_SS2}] -set_input_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_SS3}] - -#************************************************************** -# Set Output Delay -#************************************************************** - -set_output_delay -add_delay -clock_fall -clock [get_clocks {SPI_SCK}] 1.000 [get_ports {SPI_DO}] -set_output_delay -add_delay -clock_fall -clock [get_clocks {Clock_inst|altpll_component|auto_generated|pll1|clk[0]}] 1.000 [get_ports {AUDIO_L}] -set_output_delay -add_delay -clock_fall -clock [get_clocks {Clock_inst|altpll_component|auto_generated|pll1|clk[0]}] 1.000 [get_ports {AUDIO_R}] -set_output_delay -add_delay -clock_fall -clock [get_clocks {Clock_inst|altpll_component|auto_generated|pll1|clk[0]}] 1.000 [get_ports {LED}] -set_output_delay -add_delay -clock_fall -clock [get_clocks {Clock_inst|altpll_component|auto_generated|pll1|clk[1]}] 1.000 [get_ports {VGA_*}] - -#************************************************************** -# Set Clock Groups -#************************************************************** - -set_clock_groups -asynchronous -group [get_clocks {SPI_SCK}] -group [get_clocks {Clock_inst|altpll_component|auto_generated|pll1|clk[*]}] - -#************************************************************** -# Set False Path -#************************************************************** - - - -#************************************************************** -# Set Multicycle Path -#************************************************************** - -set_multicycle_path -to {VGA_*[*]} -setup 2 -set_multicycle_path -to {VGA_*[*]} -hold 1 - -#************************************************************** -# Set Maximum Delay -#************************************************************** - - - -#************************************************************** -# Set Minimum Delay -#************************************************************** - - - -#************************************************************** -# Set Input Transition -#************************************************************** - diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Galaxy_Wars(Midway8080).rbf b/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Galaxy_Wars(Midway8080).rbf deleted file mode 100644 index 1dc5ec8953ade6211539d230b7304daeb40cf55c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 255089 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

jxjJ+wc`hEEW;3FP_$vDA>6cx8{HJ zmo>szRiscJft^xI!~%nt`270T7+ewWY{)ITRtnlV620xDxT!ap1zax7G9Wt*ZXT;b!yIUoh}kwBb2x9tvuP(y@C|+fFN$E zN^d2%^4-_}e&ww-lb)}?y>z99mrEB{oc*U~R$TaTKbJ`TaZgCEd<;7v-^uZR9%26i z_Ro+1^_`Rv&-^5oEoS(mAFSy07Nqp`S^T8b7M_0PwVEbgqpto{iOui&tJlAG+befM z+5f$wu~6jy^JMm?ge{lG|9{laavE;?>xtOw@z>ivcn25fA8_yBsXKh+r-a=hqi#L+ zQ;ywY#T}mflw)_us9TTylw-G8afc^A<=7oE>egdF<=8D&+~LVjId+GPy7k!qZjQ~t zW^yW%Dq@vgLS#wbyTtvH+>Th2)*8tHl0Ro@jv<#wxEU+mD>C?p8BXI#6c8k_g{K!k+ZGG<*pV_&1~aC><~%gg8TlLW-53v!j~ zv|%QAxFn+l;!TNp6nK#Cw1<0_y7%9yWocxR`@TqiQ-P@W#p`G7&iBipz@;vrxpPr~LVYe;RR| z3_SHSqu4+qSSuVs1avrp0<@c(^U_+z2|-MJPizRqu;#X0^%Dl71P-7OnB~DCoc-xW zCVctLmJYr7f^HZ_w$+~!?*fUhjs_lX_K>+c{cmCaN zO0h)mzv%3aM)|kn8gda)PM06|{`Hy?ufh!Qy%M1>;VK(Ou)~lP_Z7@zk7AWV!n1uH zucE>aco46|9#g7_U0=K92n{7oMfW3$rL;sdb_O->UC|XEEbtISjOoleq=Qu#Gz9!E zOV}2qEL%Tp{Ra_RQGk2G^GT3oshF?h(rhP0N5OuKvR7h?DdeF9G9ckTHKbWx69Fg@ zoU+x%(tHsvOhh-9d_&L9loTJQ5H&l@7$TA;!*HxN;q`sfy&-ZC4JRS{3~4&T+c5+Y zHpToj@<#)8aMuny@Lw*Ws3pXx{3_ZY0<+p75wH$U7t@GGI$8&EBCD|_vtgyE&)O8E z5k|;Y#e|EH7YWbne^Je>D!|q%E`C}eq=aCMqQpX9NYF&M%q4_9ODm3LkIE_R8id$$ zkYfwwG8}v|OSGP(0zH9mqr`L>@lkb2+P=y{xZAs9ffgBz+-(R|g6QcYNrt8nL3V^; z@?DLE4WC=KX2_@_qFSp{B!U$nTNcTf%@BU4M0K_*^P70Us$5CL4&0tiQ@oO9Q+II%nB#NaqL3mLDAU*(*~E4tz=a)|0Gl|1X4-J*^Fgh605fik0*+F z!Ev7cuR(M11+!7)otjogT-~1)Cd&#q&bXW=)A?FW@2k!YWlqXyasP7VM2^ zTCXjHE0U4Xky(m#nJW=uhbPf8h1j7n_>##I6hYXLk0T~6a1jrJq-3~VvlOv`3}!KY z8Nr&dLZ&EXpG214f&zAeQid#aCXkOcl83$$DJUw+=UaD!XtYb8Ei6x%vLM?a4UAFH z1!R46cX-f1VpgZ|k-q~4IG;i495h3mZ1lhmSf+5~2_A_ju~lypZ8>6RphF!Ip5AA^ zMHF95|>Gm*S)sj_GhHmXTTD!3G4 z%u;hY2nYo!NYWsf>m}D@p{01$hZJciZA8{(V85L#*am7ykmrc_hiF?tf2xmDuMI(> z@4rvXpdx)9(^ebME~@Q>P)3dqRATiI)ol3fn&YTmg<)4%6;#Iv0u)Ca5|XS=twl~V z(x+w+vJ+2*BN_BYpaw-lX{Jymkg^$!W>8z*$V5TQL4;Ep0`surQk5U5bLxnI$lxXp zAEO3M^7wJp;FZ~D z#0>)sK!9mMkdhTI+DgDeg9jpuo0xx4tsDXtb6JHPDsI3kLqudwi3EgTpf(0Yhk-l< z6%6q|t#FfUKnnl+FC$@HH4M+nAQKzCf`hlL5VR)w+$lFXmW+N>f=6+*deI3n|~Hz`#dvTEv5zzGA2 z5*o@7B}JZog`cV+gqJm>!W zKU{p6FBoP|h4)47Zvu^otjCl!Sd+Kgpw!98rU z7$0DLavy`#arNo7Hg$E9EKrbEp@p||!{I}Aj`JetOv;m(!iT6B5+<=TumiovSz2Le zu3Dz?!Cl@6pYeEhZsc%hHlDxSU1&+~+mU{->$S=%&rj|(B760AbdKAOsN|i!<7#KN z%}Lshns1$(@hZ8DF=Oy77-K}@AaQEYa0dNe#`Dfeh3AqwdHK7p&9dnpJL%bb z2br-m?_??uo*4@Dw45G2LyXhwr^%qfM!ZU4kbe54Y;4ORzIk@kPf6*$2Fp$jDG@g< zrTS$fiEa>oSp&R9(@TpnC_eEcd**b((U1grSXJMJ5b`nk^8WY65m7*k#r~^Y(Pqf7-p%ng8_Mh%1h}`#V%kuR7O7PUM12t zBF})XaDP8`c1y>V^j?S2%lp#}*QeZ+po*ld{bdwz5Ow`?O7^=T36DV@p?IasjY>TC zo2;o-L4Kn-Z?+>3xbMDhUTI|PGj;VDf>Iy&^&54m=vuc>%EhDi0Qm+eo=Knq}AKyC)HqB+^17%`0IS4(KagHra4SUZ^=#E(Fv z^E+oLsxSXlBtC>|p)0+2`AjmB3MyER6jU?&Q6|OEmBeJ}Z57F2!j{AM0zDU3O;j|q zuI&_zF-E0$!x}NZj$l|%BKb~q*ff3ZAz#KzEn##+Qo1k*9+c$dDk)u2(vFgKHrvt= z)~<&iR`X+0&m2riN7~?oW-tULbDBY*v^{ifiuyJiz0_<4CXa%_DkuO;Jai6zOUO@# z8~Do?GV(CGeE+1)!|JS-O+oKITCbqbe#X|ucu#27FIssY9?`3PjGR!6;Qiw^I=fjP zM1?iqE6LL5KC#9ZV;&8AO*XBe3YH!$@T4*(qw5t^BYL_a(amL^kfnG*#~}Lpo8K6} z_V)Aq)$(EO+V=B&pgh7q*nLmu_Wzps;gj|~>c-(?l_$*4#N#g)epu1pSM)yn<#)Di zqVbn^oWFcdzdrZFU+KQb*h1I)-|G^I+|c|F;bfrvH2>j~BAJ(~$!y2#BLjH-SmizD zG*bJwzjt}Mn#wd?KPFzr_iYo|;2a!2=6}dM&x^OCr4=M~zq74%ft1$kyh@T*rNHP} zB&Fw0Q?Yjiq?j|t{Xu!mZ#n1wwwuTnxG08uK2R#Rz|c=i^_jp!pd5WQMeYUvXA*bkt71*%`9)PddD^ z*GFO)$2ayh?o{&`jCUXSzR3Q6&jGj;#4Q0!1#L4T1h21TZ7*O7&asg^0Sl5hCV3ztYNa3oMQ9KODFdUVb z0ne|jUXmfSo`$g_C7+vIgQ0C0PlT-1zI2+(KBy4`ct^5UIhG8g%5qjic?owiTa1M* zLe+2tX4g6;$ReyFH#M*-9fM=Qs!;%ycpF1%F+N4gCaR0h|7IIF#v??7WfNkaFeXqa zsQxUqWXtY$YzGC0(SQ-T#shPOwedXk3`X(6^K-(;aHJ{0d6WS^P%Zezkl3=zMQE++ z^?7p(N+G2)unS>OBq{1%<)IN)BC2Bb!=2qYJBEJ^i>$#ts$AgACXsYyvql(8iltgL1(CkUV?nhZ6o zIdKz4W<>FTw4s{IbONzT(7n(6F?Ll0Mr`qLgbPS3Oq>zoNNj|Y1bU~89L4Tb5!pda z4snG<)*qT{*CG?pX0gz03u&ZxSp_2-cPi>OHDc$xq|VvS_#9E&NG!BYSM^tH5;luk z++Nch0^N*8ayrzbA6d%Ir+&*oU9&tM&(7*Va+X z&4zgmRWEgOTc&TIHV1xWut|HlNY&ku9rWNoy}1jx0DD6jy#N^)E~ zgjT}*dS0NuC-r!qp-G%;TpIV$F=GH(wAHv_yBfKYnQL&YOKp{Jy-Gsd=WD%Qg3WtW z)@}rT@}}8G=>!IhT02UJ;4pHj!=#Kl$K$0s$yeuX5<#6}tZ2z3Z$ZK_@R4H*p&&~f ztjJg+36%(kA|l>pY>5p6`wVMW>r;R)yl+WtQpe_zB@${-|-=A zXhGZ}Vl=Hum!OS=+EJst&>}$emI)?pzY8oAGDDq`GJ*{?$qY;Da%7-r?NoJdz(Wt9 zpe;M;uWE+(tubYoS#$pM*$76w7N(ydWL9|0!%jsgG*8G09>N+KFQRpr`qfD^iISZFJ^g9Sy+II5wHmo}$2a zn4=FX5uFWi9e{)rW*>a7#7Z*fmLh5mggEHCJd_WTFdLN^le}4MgylP!37P}mLh-Z~ z37bHcoblr=8X#{E^LYtQE)f%w!7LDChmAJHEY&3xfOnKE@G;A5QJ#Uq8x(K#BRbY3?H_J;=6=W=O` z`(zF{cY}gHkSTt&?wA@0>BDw7&cEd;#7O|?9YD%ZBa)=!PttufPpEZp)r9gL#omw2 zud3m4`U0^SM@LGd*l&zRQ=;$(iW>GH#%5L&Z1+5HAg$TYtA0t2g!5Tg!m1~Q0Q64t07v9h!Ahqa;oja6mR}Be4Uou>wRUs(Hr5vrpB*b z_sILaYt9L>e@@#BJK=Hlqh0-l{B9DppK0mwKFu$%bnnaF1$tu7O#FE*JK6nxqrUq{ zb0PDobLvE6AD`=d_F`B3B2Cjybu;Z7r@S}%;b!eq&CdI26Dz0UEo7pz>8zP*r1#Ok zJ*=AJ&8PpU>%HZpbL;OfAMP+Zwzqfvt*rMHH$BYf?gbIEzY z)1su%d-+Jqw`h^XLu4bVKN!8t_wnEIu6sH(^XOsr)y@+qjH{K-mSdeG?lHBoOuSr@ z9*f6cEl$&C57Q2#w`k9e=tl>-TMny-^xhQRP4&$k&s|VAu@Tl&HtFzHV{6y3juEz- z_Fgp}>H4GX^lvYk^x`At5%aY_Fkaz>?HJ?cRhU%qdPdOXsESd6gYn>_u0~aHv$0eJ z8Z&lS%Qstv%uu=LT~__YkG#{eaO%bU;@stN)>`Ch{j24arq&OXz4Ul$d!dhO@j|8- z22G)__ncnzDw9SlbIo-|YjN(|PvUyM*=#+m<{vVf3oi_Pyklh88TvS-&So8^)Pv9O zHtWyc$J-?WImK>vBzUDN1 zo4G%i4)vHN^RV{d#SN7HP>nzKcXWE|2iylXM02BU?wjw4K1KTft?}1nidBBp)V#y) za7bo7J={N|-`_&cvX6b^yYAQ~{i&uN=9{fl?d-T>xXmq7r2oVEO-f87*`Ze+&xCh8 zaOT^;tCx>_>cQW<*Z!Cr{3tTNX+nG2UHfU}j zg-qHQ*G|gVi~FTD2uEqL!`dzmfU@r@#S?zIlQy_7tD8uraIKw=c$ec!gR3*`Yud?Q z)mv|>YX912w{`={A_XUZFR9D!Z1LRKJ^Cg+O9+M#xgN8DoM1bSH0~cm)H|t_=LTB= zLw;Oub)6x=OHKy`j&y44v4){l*b>$?S@z7}CS7-iCUyVop4@u#&Hv9lvcdk2nLGht z6~doCu94DVt>CEG1I&F_O!mfO*s3h;VzWa_fJ%9_Qh5IGJ>+T6HP|LX`&BZb#SosH z7|9uw1$zx5uP?n-2W}MWXzEB8*hcE78y}5M5r0TMq7{y*O-k%)9{X|fkLcJ{-JPf} zA8y?LUF_KhIL>S>vh;afxAQwYo*vE(VmCjIUAZa+2b+35Jw?>=O|2n03S4dPPHcU+ zo+kC&s6}sn=QCNSJB*C-B>RGT3gxj1sFds|-Y?vUF`l{GDtra7We<-Lgqt8lV8!YB z!&+wVL!iEYZ<7|e`xQnMtqt|~b>@DoUL?=R*umn^jP4oR{tKzA?3^aYw930X%xtD7 z*ZL}RsVY7-vg2lBxRm}Qoq=Ia$sLt|0s~!3@BK~_ z%J>kX8_9oo^AHn7m$1J8}bTKc2?c znxChD^7e5dLQoM6?xRfVOv;z@zp)8ibvly}GgQL&o7fi9`hpO;OX>4eu6$N+auE{p zF3s3Tb?XQMo*dIaw2aM)FQ`dOrzFpJpgK{zQt}){*lcIVo->#C+h%1KVqfg}KxK#C zaGi0qkxa(FxhI1ejk6jDc08I!=s_V!7(9vMq5~FfAO`d=pN`4ht^-s#L@afJpbP@; z%uGY7u&XWXFI3Har2i!{O}bs8K0Ulu1?K7W*8zXmva#mRKmL{AEVPtR-}b012F{3)PUWhJdrY-E^q<{xazI{j*Hbj(d>M=xhW z6(Jtt!^hM?p9~g?pU_7T@=rgA%(HNY29GS8Sr+^j;&hSn8v1(On=4Wp(oxM${HZuk&kJS5aOxi z&5GEz=`A2T!)WE@jApnmI8qPq?~gvL#$BQf_Fs!KcW~&pY1w7T6Es`DnZLr^rfssZ z?#XRa5S5CvA9jwJN)P=@LjYPU#Ku{KQ8}u+GCJzB)kw zPx{!YA1Gu*@%sQoYvY(=Q2p!?RfATG>{m@7BoXc8P5~aipoP4cBad+|b9YutYjdQP zX1oqfjfEn=cJRumTOisM{&Gy`bW%4jF=oQ<8;d%VR8m`X8H3c9^=74{%g;Syz#{X# z*{-k1Y{M@qPwv-=j}CTLbJF7kNajILE%9)R51%#-prIyT@=8T7O+CgjTuzpmtaecc zeX!SpPFCFOL#WFN`c=Na+OMW@F7x_ExQ20U@h z4$Eu81?nI__kCuo+!xm4+L&$^uxla180yo>y8&;$#*Hl+aLxNZX*55sUHjts-er*D znFV;W^{G1mCckvPw~B7w_sQkx=KE^V&40QK?fa8~$>twcvC?IvEF!I~NK7EDK_c%N zJ7)&)<_3QyNV-JJa(MH998#-@?Lv{xVZ-sy?s@0t`vll(ek)x?I8TEu0w%S0y*TuS zC=60enbqeU*p-OGUN9n^ zDhJ9F@_5nb356zY!+uDIeLTrFTz^ACwg$P+!O~vXWw3o6U#h5v97%Tq4oUM~7)@y) zV4e@G7)BT|fdOjO0WT2BoBG%ra3?2WEAcVQ#Jk! z+-kxw$sHiFj{l)8YiL`MbQ7Y58E~p`4G^hM`a(1vzQ|xkg=39?DdTA;BPT;1^czgW zi0t{&Eb;si1atA^Ny@yjI^q%D?0JgTh;ewtbJ=0bP{$R<=7kcd9~d*+F>--X{=;tdMDQnO{i0CR}J@cPbz)H9LF}OVBBPd0BcJR>lr!H$pFz$ znwoC{+X1ktWi=gdKxrI+AVzX!hi$amH3Rsw4T+Da;YcFjJ=~LItWR~T=(c?!j|hN3<;RzCT7X^F(hQP z!>y^)Xqv!04cw)!@f#;Pk0X9A1Ne`|3@2j?$cu~yO0pawF?a|Yh{GK$qI*z1ngE3) z3?qO*!-*THGtw2aMubL*OrUf=C4YjTt|Fu5vK%2QS*>=@5$N`#UaH05(s3G@RAG$i zNtw>7X4>|ZUGmp=-)%^hvdkpu7y3#w3l?L`r3tm=MZlSoX|{5=S5>XUb&W0SL0@RFq?#@lFcgzJ%;R%eU~5 z=^)i}o9-r!E_T|-lybIwTw{?|Moqa}-oQ{aQM^eeSp{x61=POd=m2YJ8&Fi~Ed;-yCQ43*FlK|Z;L(l-^P8AqX5Gc%Y}p@Dq8&Tn6sLOD9MgelcH2xbG$L(L zwZs5RaOHEwx_T&b!-HT0kHwq@l(%&kutaL|c1>e(Cq%QE;~GEU!5`Z2&?(78(mh?e z!nn+!dDUUAVN#VC5D=(Z)D$MI{B?SX(n|!*<&O|SL4xPDdWDyBv;`Aw&`^@4%kcbt z?ZY33++)Jqs|+-i6d<@zX8Im&hnP`n6ehP@0BDKkpGL~_u8DBvlS_Zk1 zMXQg42Qh^w?}qS;35Udsn92=d8ZwNTq}ACODUst+JK4xgOle8YPY$Cung36JoKTKa z)5=^hQW!gx;7#St`2M66e^kBuS`1UDzVCF?5WE}A<0kQ^ER+0P*xD(C!U04KHcDAI zABf6IhE)tGsOy^;TnW(0WAZjiJL@CiiUK{z(aPaNtcD#Qc%~v*zk$XoYcmq{RcRlDR07v6 zbokFBzErPVDk8KA<`%4Ls!a~VuhTRRT_IF@tsc}#XP zaN0S*NR+ISC>^#vou$+nO#eE4X#AGl3b;HA8l^^FA@HM=!PIVKj9Fz$fsn%yITU}s zkyve9#e6cHrOL-uZFiSW5SaBveXcF-p?5~^P3kL5(T?l0i0A=7G3W_N2b@3O`9VY5 zOn9*!Ym@17^qk4K*| ziL>nx?Dnr9^->sf&_41}q5|E|Z?0F#iqxn>s;UO;u{ zex2{G_tKB61?}wQ?_AK1Ues>Hw6n<@#8}sLEcrK0_py!To^#DNTI1>O*eTgMKkhSOI*hqXw5_|0AC$cr6ZX?~n4 z$!q4o*@hRfmMEt`O#ejdv)@8v&lB&Pxrr~6vGJ5|4xM3uVjn9Xi4J(rGP*yLyq2M_ zsjd6K!SH8eJ>JjP6}x54JRMq#HrLk?ecEPhoYExUMx$3Xm$OPInW+$`Q~Pb+>)QTb zk#G8kHMsW;&c%Cw{=|F9hH~m{f1abQhdV0YZ)m=U{u%3kJbCEFdym{8`r7W{N3=m6 z|6jE2&*#*&1NYEE&!EUaOD7R6kQ3R1r5ewO)bg%2;#Fc5@s9Yo3NMuS{>FNN*q#T-3ru)BP+oXK z)*l?cyx$O5@JsJS?Ai27>2o@Be|g_@wA<|np5F)&fy>@Oae-a0b6?a%g{(eLN(f2g1CNavk(Y{$jM zq2G=IZrR=V*cYQW%&wD<3q18$*GqgtH+J$bbd0#4_$8yY!{7E|cQ`x1hOcw?v2F6x zbM8mpOkmHy`5olysGHuX1G?(U9&ReKwfX)pP~UxiD0E+a^2Mkr5B+x2IWwB?7uj5X zkZ*`i>$}(Y1LFdu$6h7lX6*Zjp?i=;Ut`AO>*+SPd&hv8yq^15UFn?Jz4yW@ai){-T3RWbVQ&Wr1{bkYEd6b&!%Oa?j9oqBzWsrmR(Y^~16A%Xy8o~h zPK;`Q5*Vi0-^nV4L;dGd2ffN_AfCCiKvpAXlN3nF+nGhrvgxL;t;cGITr|cGHwvH6 z%kPF8YI+qU!~paHd~9F;N#N)MrR!59OxHJD7TDL|V}DAIn1!)O0Kb(JWa@v(K>&(K=L% zz&5|wq}Nqg*)_lLgaLTE!EZ%L;#ZsHbiQ97cF*(=QtRFMd$vNXlm^dz{2f$RV&{|P z>&*RyW{=xvnX)_X!jY3QAd%0xL1|*^MIi>${v5C^+3)Xn;4k>?cjv)Ym$ceB$82zo zB%9W=(G3(JZU0Qu)5CSAh^B7TH<7HfCD|3v<&w-sW{zX-=+5obrJeM}_peU8j9R6! zalJKnX4_eEqpJ&^l)5{#Z9=C)1k2>wp6QOK$QPp1ThsYhH?!7PIlo3;9ae_^luqkj za_zHCl>##HV}(>potj4sugMQ4TkDe1XZ7q6_;3!ghqe4e3~s^kJ@83~&qBzz<2Y z_9o}vzfd%I`-M$_ivWDnA$m+ZiO8`hUnYw6&3*uA-nM+yhMZQ9#%5Nrbbb9519n@+C=wD`l^$02_BSeU%#~Q9 zQYrMWMU$24fHre5G1* zj?uu}Pi)X9bZ;C}36)&*UVB0Oki&1emadh{lO15CR+zs^6z!zFt}}RG&}ehKEC_dUYZ@;_5iTnLCl3^ zQ^}|j!-Rd#PO>?gj7~SD_db-IB7@tG=x4hgQMDAqh&7U#A<_d!5JV;B>3kooX#+KY z_5nbo-P!fpdM2U0M+ztvM&cVNAZF`?p4B$w&}=GS(pMSDX?6=n0o> z(&2}Dj}Gk=ZPnejeipx@^&+Glk5X4mOydJfI?eqf$uGzF$u-XmJ3JgrNcxen83v;|JV33$yh zDKr0mI!h~c(l*;8DwqAvdYXZKrnUf2(n@pMx-qVO1@lxuJiKu&uZ|Io%a&&sDr$%3 zZY}~tVahsR?SQwTrjimyvw(Lk#~VPOCta}t-e|Lx-ZEC}mE=<-E>>D;Qrd%n$0esF zWHlN}A5dLx0!mkOOTGEn2M&y?=r-Y;iq1DnyI{Y>!}UHEo+PdoG>q5}cu57rNX@~- zXC@Co7h~fLplOZ59Txy~7-L^xHSjg^>hKKB*8`u;l-OJay>Mw7BTdn(!dJId9vWxc zGmh7tnbU#Tjvs7g=uZ{;i-78hf_@u#KQ*v`V3lxF?G;_Jz;6RL)%))03{cNA=c}%v zw{YC|9ae>d=}i+LDEw3bcEZE-HQomF6E3C!8XS0s0uB}+?3d2-0E9hrzIVBc=`W}~ z0SddNn$9_+io!ZL5niSnoSR0~&2)ov#0XM)jW2-0pH!;IoQC-aGnlKBfcZA1EVO8xRfO z(sR?t^=37F!q|wFEWgS&c97)o5#3gw)NQAHL|2m4kKA-t*OTyVbv|xv9N@`S8})49 znY!#_S6VOg*6xpIqfQOyc1=6v`)R!jj2F`!f`cEdb~0I3>>$zfK%&x(9ac6!?uFU&AH9 zL{?I10)WpA5XN9M-&KL9R*0C#4WC@$Bvcxw1fKVyc$>V@jfWahs5NYa^vbg^15M;B zfUJ$&WI8(@jhEd_M5}9p@44Eh^kT+OY2iwI8XzkQ^p4;E843Ur6##Tan4MGP1fOKH znskh2+kC@U$8u)Fi<)3OrDt_t-n#qsB5C&KjA*wxZcIK!>9Nje2fd<_PS!mEyjPa;CY%?2a?K-cGqdp-5m8<_CeP1ow{)cWg`WDa?L^P3u7ZdwHugFkh=Im0t&wECibIxei`n3MY1xf86MQjHg0)KX^b5bZ9KVcv31RT}jPH97&m zH=;E)$*wj?_@~(gy`BverM@y9Z!s%sp7Ll%jObe$ye;qvg414Pp!+#JdGjqtgyw() zA*QrSvOlYW_UnLfrPFuCWsE3Q>kR-MJ?j|?C&?~T?0f+)-8N52usR(`Zm%*dOP@yv z+oB{=WD5X>Zu=;(GV3k|SeKe`p_bwbcX5+tXlb`Is<1#ppj4f67&Y85kQNOZh%2z zlV3lMSJN`U$4JVA=;MEViU3xWN-`Pij z_3&N-dpu~IaEL3wafLct8WQJd9k5ZL!?-VbKyg-61n%_UfC|tCzJ3mt2Sdr~Gsje| z&y!DFFs5`Vo?71pu+3x&U@wix&Ebl#D^{j4eRm)0X5IyZL?_f%&l{Gh9`)?;l-?nk z0x2U2wBO;PUO$E538uXO@wE_V5bMd6d;S2D>i|s(QIrk(Ld?-PVo`9jNiwS3vfizzEear3 z^m?AJ6T>jta*!g1=}@UCy>d1rbwlS#P8^=50M@_{Uy5fiQ-*;zTzU%}ra+eBGO(7AOL(SZitA=XQqrzoln9s(*D>y>PX z8aA6z;P8IqZ+-;@hHe*Vy^o9qehLMwQD$;2!Ozf!GFGgh59;IZ<8YdUUp9l-M%+V| zad2z2JPjw}l08X0F4fy1vosFJPh8;u?7;8?)JPLmrR5Yg*6PGmbrVjN*O*$dPnr?C z&V!9*upKeBO}Z8SD?s ztes%k33NW>NgDbYz@;3i^^qbP6mV{W{Gn@_-2oN7Yt}x%^#j~%#@ror%OQ6btr7Q| zGvUO|-~X_f0*ZvtlHj(Ejs%$R9Ey#JV=FWR#57DiN*RUmeseHiJu4IZBS%kJjmvse`2VDTqAzNq)EwWYSSIhRGr$R0HZMJWBnZm;u`l@o{ zPj{hFqR)XOfQCfT!z5IsKVvCg+$=+CPO*~0&>7=qbC{RL8Is*!_LS&Aximq5@I#A5 zx`^Y$&zvB#sYizua9*^8yHp^x>x{f*$iTw8b1cG&1H=4zW~j#4iPV8IWYo)Mu3TS( zh@W(~Ce2iyWb!Op75)JF<1rw@7*A;QDEt*Smc0ZGK~?qDD@S1gc_pR0T(q?|rF4-v zaMkDV+$AP_%l&2_&hGVaS#Ay?Mkedko62Pmi{>fyVJ3=J)g@6~O&+3pmvzZ(E0*}Hx>F^U)tzdAk9 zwb5%XZ;L;_08wif!w}{SeM$hy%=r0PK!~}Sd8w2 zAAccgmHCcRguUgbyhKi2*uO+HTF^46iP$@iwBDB8MrvZy^& zJ_^vfhsIyfE=5^tTVvA+c0ZjX>(ri!{YO}5>KNE)$zT} zix@A~1!)@4Td%b62P;%72p?S2e2T`Mj|nR=ueZR&RQ-d)@LCb>xgQLCZ8PxCJ?LHj zI9zR~PERoLd4dVo-0fAkw`!QGfO`WJ`SQsm4AT5QSX+g{y9}MG@act_$`(G{&U)R( zyG?aNWyS?G96SfR_4KbYy~h)Y!vz>xwTCAs*cME_`!~Pz(d=My{SocuOWcsZ)|kEq z6zb$5yAeojB?nj2siI0Y@u!(P)jvae%#;7#13Yv(to3je%kp=}+sR1zId=$n(Nwc@ zbu@SEmyCH$>&7DXG1uv_8@BqhKD>f~bQ~?aKUfQdrPodG$c=ujvA;-m>^au_Ei#pQ zDKnF5JIqh(n_OUz*Se?m`|5$3jKW2=euwO<_~Y3(m&unvPtiV3H-TX&)@?` zHZ@g_?EWWaY$^ih{ez}yedNsP|CTfN^j&_t{uG{`Zn~*;Ax(#V`nfk6Lo_!!C%i{F zXaqEOz>C$B4(%kCr=C4*6^2s*W{e3H88AK}$AI-6M9Iu_$b4ykkMMv6?gzKoJlr@r z)d9!A9ki$TSU#%J{?qz!?ggyxpWZ5+A}nX^8~Te5xy<00>`bK` zqkdXX=Sk~y$~p&s&-C68x7vjl(gr}H%jZ#!O75w*l=oa3`nV1}OK(PXh*CVf_l@bD zaiy07dV8V&E;tw0w1xc+W&>9MNx3C=tdF(J8e$&pm4q14YYUv*sN#VTu!diPrci{zMK0U<` z(j7M%8!xv3a891n&uPDQlON!{jMb$E`VPJS-%wDyKV**{OO9q=vzw8e^XTRTQiQ^1W4I^=B#i;zeAL#??> zvFmhT7z@e@u~xA8F6kxAAOLCxmR)vvBcMd=YcZYbbqOkjr++It%yWR48{BkE$pXuZ z7WUUeaWNBX#apHs>O${=7wJ9vy&tLLL!pZ1gtBA($jq14Yf{s=rowpkhh(cDTtW@j zI>6Od`ZCtDW?x9=DST@ogOvwq17KK3ZM~pjBLS?r^c2>rWLfH%xm$(vXMYN=w3t26 zPQJwea^L?h1M#dc{}MZmX#tm*_j7)hO%vw;-BFi5-vpa!+a}%00a`}Ybc}eh8_8tD zIgRI{`UpF{174(sQ2}@wZ0uD})<5*NP<*c~LIX*a{VuJ*%_mC?4TCNJB!zRPk{wM< z>kc?n332Hz#Lh#rRL&lW|+Q%fSGV+>{ z+)?!UF%v-n7N?yejEm!JN8Kyf76XD+meW`jm50cx@5zaonF2M(+>W=gu1cX5j=k{J z_nso9bML%cgLrTUL2|AT@XQ}%z==EI>Kt=P$^G4JGCloHdS#T;X%bgmG2N6xc02zx zdKJzGkcW3}-9$W4uwF|)&@bhiy*;C`VO=Jqf=bb!1{B#awH3Yyzos^n-8>jg3i=VJCCHi%_NdFQQq*1_5cNjO^rZ)tG7m`4jbGl9SFjh197y-GjYp(Sn}-gf|| zb0&oCMpnahnH1o38{5;=BFDzNUzu`$=kS#?S5q3Gc15blrV-oPq-D28UmVS~B|YWj zKGtFvPQKNS6zaEyuEa)l#VB3(WH?Q$r#gUD>Pp_ss(H!zU|RF@-O8*_8kDr$dP8mG z_0yymvox9$`yz$Q^y!pj0LdS>tsG0r+Od%oU{Opfl(0zPIU5Ek_C7nVIjOkpt6fJq zVRB`>8;X(0vtA10W3HyWNVi8E%z=All9q?z3QRRXMQ}3bd(2DH9NwP>xlWXxZ!RZOR-HwCIE`lQenD?AjMewh||m51O`9%58GK zUxSn#+q>DSt*e7Xd<+Kt@%H=mfBw(&{41DP2ycdmc~I6P?Uko?dbP5G3Vg&#ovQC( zuVuWZ1rsVEnge0lcRJft0dL066kZ~rAYJ~Hz*0357lT{>kano+W;`vo0tr&uxAte_{MQ=k8TDW&17N5Wn-ki?*mTof3+Hky_+9N_UZ@bdWn5SgXY&9$8LYRUO#KDSFuX|?s z8E{yC{AEuIJ9Ey?ud1hlYoGpBMwa2QAaBJmY&l*A`6+1yW_?DA9zt7714Rz$7*wHy zn2*d0Fo+qZy$b$k8CMsaJwkKgFwxLFhABw>!f0g@3*wrvlp+-aE^>;y3sWt<0=P7h zMq2sd;D7xPk7~#TGfvr|G{LP5jZ#s&3AHlFrXi_iW7}-jv`Sq<$SL*7Q^aXbp!==R z1-Qw;FXOVEoGgfQA}m82wwtBop+uZjW#pu`ec#yPyTJvgx7o*)p|DnG)2h#}tg1Wi z)b*Jz+}&~x4O1^WHfyV$>mw=x%n{GJaRi_f3+PH9@a4=%9M{yctEaW8oN4ovZ*WGC zD?3wK9mN&-Opy6vf*pam1t3n`k4IofsOsvVO_hWc%l1$(I3YtAXn_-}W3n&bWbL}k zPFE(Y-cbD1pQV!?mrVnq;7Yf0dv>lAsBj`Ko}j&P#2jT&f&OVVsgrM+Sr(`YBLPHMi46l#iY^kq*I-cTilKM z+6EtpYy!6i_TTf6ICrTtW@cbSGi#^MC}!FRU5yP!WQ%mx8FbQLF>|GJ@E|is`E*|} zNW(;A?b5mQOkp*wyDsIXf!}7-;GV;Q8)7L-_wLh<2Cxmt-<|0SHLVipfe~Y%4%gCF#buvbKEz;pzPkjo5gw`AbVm84w zLew%dwmD$AL)E;(HdC5K6Lf0`k790sH;5D~FassQfX@q7T)+fd-&IOyL=j6=@_2kl42%K`X^1`gK))}R11hn@|p#37)8dCVLb9L z(c)1+&|*5ADwiA^{kf56ykm%wo)rm)vY$CB71gyc^WZkL5`avoqBSIaoycik6?hRV z!)#xs6djfQ1vdq>=DAL#$3-AuPMfpacpxH4zR3;jJn}s~omEdl+w8Xj@HQZrYkzb< zAg2P;W}!(YZ_cMzu7Wn>9-zvHWZt3xB(k2O6F=~=U1OxVpafc$LCcP8X8gxFY(vh6P!vV0c`Ql6lh}yA)SFiJa?GD=Wk+zF(c~xN z!obylMgj=cS~DYR_dYrd*HoM~lb+2Z2_H;OfNF!}4O;y@I&1{<^{DwAn|a+T#S=jT z2?i?x;9rNn=$LgY=qT-?YX^uX07~~c(^ik?<;>ia88Fdr@qgI2Izir9i<1-Z)ajaZ z1`WDwBprgrFtV7?B>jPJGpPZyV2&A&C&0kFDJA*N5o zs-d5q(0iRUwv@WR$8BO!in{k_}1GiR%w_S@uLPda_?zR!(D$Lbwd2Tn@BK1~3%-tFz`k?Yx4 zV9~5Mw6|QB?%77q4)OI%&T#3>#LmH{8FPo&AqKx5f4$M;cRb-d89aKXe$Sh>-tRBS z*==fO!5$bcgzlcxw_jQ&($(>F8J)N6d|NPRx&i0NE9nQWY zC+3-%wBSyS>JZa=^uOdt!J7izP`1vr)j+t!CKko+_fYhvqwt({onsT z|LnDiu@1?jLE3jVVZZ7GKQ(d)B5wS1NsrV8{pz)94{1zhb6`{6vx0=a{Ru$M#R);5 zO`?4Mca23w4tev> z#vVM$?&0iz;ut#?j&mC95C&K56TXcb!mFwnU;hu^KNT;_`Z+hd5A5`iGnz%k{MG)` zA}E(%lRd@q9pzg2hUcFrW zynVzyd*5;K>U90jMH(dSC3iRiVC?#y<7VFkD!7E)xeHKlx_=Us^2l3o{?O0gx?KFc z_rO&4!Q%FPGo|m?pWdpkd_Zh}14tnIaxnav_WfHgP8HlA^vI{H_C9YIaAN20Z-#uf zzu1ta`tV0Kqw?=8H*JoQU&Vo_r334`##r~^(P&?WdT6}BQR=Bh#*DC ziu1(<5jRE`#E_d8Bfp*R?1bFm(0kC{XXzF>iZ$Ip#H090j^LQSMD{spRmh z#OAa7oot&Kb(o(if4kh$Kim}bwg`W*381XkgWU+O`fNEIDaaV?E&;w6O0iVM)h()6 zHvz$t`FH~!lDUyG(CO={temhlYpT3(%cFY%SLK{LI#R^UVhui=>+k?=hoRhB{I+c= z@mjTMT{w2=e%v+Pva@~F=r^JKKCRVvK&^`-&DjMByyzU z|M#QaXbfiE$uhgTErI}Z8Xytsd zgF@WqC7uxH9vQBRv1do?_$PEOHgR#w$Wup#rVh2-xr1cl;of?>{bb@cP=Bzg6Ym0# z3;*;nEKCgK`eK8Vx!wmvZ4P}jq2W&JvPeK((b9w7jsPdsBGi%?645cFRI;2nHiW6C zYus;&P=-UD!xb!n%_D%$Bc+%tn$BwTa^4y>yN2V@$UHm7O{6np4V+2d(8=?`KLO-! zGr%cOU<=Q1G-eW25lrR~_@bvkz+)^Rn>Bh3sUGK8A)huWXRjDQEkB z_n~EQ*sG|3N)W_>Z1&BkI(V=a5pBj?~`0qfIUB&$>GA@qDJy;hALPwbUP zAw+vE!_k%EfwE%^6_OCX9R`Jw$-*V2xtZqw4?MHj(t%^TKVpcrNXo9bChsv%AY4 zR;h^xvbMI}`Me$1uNM4A<;%ta{o;(X*Bv7vVt^E;z@*wCPP>cO`X zI#H>l&$!tqrDOoSM|Ek?dfR;%r17Rh>rWt`AO4@QR=r6w{gJim+pYos+I?W> zuaNM*!JqYinm>DcbkhpqZN&1n{}$^NF9fo(SGRvZ`Fi6>H-OlkZv(N3FT-0aZU_U9 zZ%c0L-cLm8E`H>TIN2 zE#GM}-)+M+9V!qa^~mwI8P(Ted%-Dxw(r_)HqRnbns|{-ZA{EpN)bg9qm7h|EK{mE zq_^7T0ulKxkWwd0Dv(G9>FfLjS7iI-wg(HQQyx-#;iwtoVrRjew(*Sw zoFfXBb^BWK9xRJ@rB6xcK%u`EUAMx`B5#+RU8*9jmg`Ub-;Uj19t(T2Mn+%?k;Y}eH$Bi-xl>J{4|hG zML*ZB+w9whr0LgNqi%P34tm+V^XPfBj@sLgKCp3}#jRZLxzl6MrLN*;*1n4cG zS-jQG7Zgpr1-fP!+Yqsa<8WS9s@|#@%k39wFXkrfa8ipGs)r$}X}TzwQN@$^HH`Pa zrVFRtM+VF!9G(EjS>Jlfp@-xKv(AG-v+1aYc9!p!(DaBd`keM#a`*l!9-4J4lT6*w zefFsq0EO^g)vdJIk&WKHEgGaaP;PL>QiiR%LBy4KcVFx_SM_iy{EzNoxArX!yER`u z?al`NbmCpn?N!BTcT-c~)vAlKR+y|V1@Du-i*dZ|_a_$yRW2HE^OHwvy+FZ`;nKPEg=SbawhDR3% z(NH^99HyHm`|U&6HfsA0d8UlJX7i+;>&u<%Yvf9gRj21%;H#9Mt6nP2*%_~3ZFW1> z&NL8*F6oWB*6##`;F9h?-G`a!s_sR*&Gh{6`ZL=NdoF640GBtmfkgWz%5olOf_%?N z;77nR;EFVCt7+(O0HIs(V`Q4iI9h=eB+PCvv(CPNk0i3qs;&DnF0dt!e?S(h;!G6Z^mW&$)5TeFGYrLU4GtAVF=&f9=h<^J%n`Vh8iCzu`T;#!Pd9?l z3X&;29TV4EJG@mJb z{9>WOoTqf0r=5{aE7y<7>u_3*Ev%3{hDozofTG+&1#@L5-V(5@z}O@98pe24qf<%8 zp3$+*r)_cdaNGXel^cqrwS8Qt`JNv z3f)3=B9ZY&9{atN@yOR!RdLpwHhrTfmb;c>6ieiKT;mDDJ)Ttk+GacC41H+N6st*W zSV4wuP*kaz{S3DkjkrBiJ?(S+aR{6yQ)eq)S_M`{koOcYpPk~tlO`fBPAhpf1~j&B z@sfA#jwi!Z8?ZW^>J-FapSuHmw9{OB#@AY0jzLZ7n*@vKBK#j1hHI@rP(Iwnd8dvfNkvxRMYCDiaM^pZ-4%acG`{!oLtGUr;N`6JE2XsdR64j z2>WmehHq%U?un0URk98!9(rhn??}=cVWGgau}W|s9*s0;)3>x{XTzh22h4r|%w*?K zie**z^6|KfaTCBt@XYY#-qmal zNlTd@5_{bg@nfN&y2@2IKcVyTVr)wLLc#18uF1J7k{7ipbMc&$m+0onX=z=1Lr!Yu z{S7jx9F}f{RoV>$eaY2r`k9_g*`3Ayr(!470cQhaucUscog`9>C_p_!(!GQ0k0{9% z-G9veMLAQ}LkpQz?S)^H2slw)WasVLoc+tXw$Hg*Dt}`6xAcq7j4pT8%7ruKLhiCZ z=WHwwTqG-y&R&j5vdx$;OlY^W$JY3R%(gb~v;Rv&Oo^#Ew4i+(f|-VNdt(OWf&Sa1 z?N;{noO}23OphGs5zP~qnof7#s+|vzUG&0bAK_hp;nxZs-8Pd{$Ge>YI{l@1a-yaB zIltlG*K${?W6AE^=h~N9zUm;`pL0(8{f%w4$>G}{DxS8F*iSZk$wdb9FGds4K-%t0n>iWl$wA{4r z5j4UPd!&uz#!(qRd&%pSZc`!H=O2}-zbZ9`zrEdcCuq9r4yyw@MTZ!eYkp2Qkm*-3 z*xpk(-|(Yp53!~5DgqhxnZtg^u7cNJ^(G1(zw=$!tGw*LUg&WK=bXWwZG(sX&5pXy zd+P6R$qjp_*mt3M8}3LD(%sbwO_3wK0TPUK;drhN`?C;3`?RY#0<691OtAYI82bPq+%&P4uhs0-fE9a(woCPTGN#Ytydgj^$Pp+VZhWKy1wF2&^m>V zP!*@%!0mG+3NTAg>=9fvo-C`TuAG4eb0zF?;F6zQKW4?Bn9i4@P@uS`Jq;lxaCAz$QMLzZjK^ z*du9iK}3cOJ(RHlYO8ER_AAL8Gt8 z#U|l70XyxW{^9uk!b$IesVn~iBKGujd1|Vqe7>IEz7v;A)WjRyJgBZ~9Q2O-lE*1_ zo@lS0#^tu_r2XZV`nx-}e=aUpH!Zb%t5N>)OMw-4Rn-UY>AGaEE8eryo)IJ4+Rd}2 zHxugG*;Ky#T=75-_oMA zu=Q)IJe41gic20>KE*<7!0U{C30&j8(reXEcy_IP&nAES;sc` zc<+Dl!me^#Pm367@5wm7*yJwnUJ~{dS6rGZ*Q3{@dN?B37}|B@1IhKrc@j+{kw*d)bdT~thXcGX?x26D069Of%5Hd%!zb!hoEe-qQ(ZOX4^MI1 zyV~}DcXi8H5p+lOU_kteFco|EQQCAsW!(3tj7m8geMbuv$6HrL3B|EA(lVj_-Ht~w zt4mX4H^bpS{pga2Kffj%{x5K8c5Q?d+lEzc*YJ6Vo=~1LLS<^*RmBD2MK7QL54dmA z;zmR)Nd}z0CrS?$K#VVOsd@F#iTnIZJsb;$6YT}{17y)XwZ>r}!KzVb~`J?WOG9QU9wUQ;GS>6l2bbg79~m)SXD zXIXT71f~7e2BTJPz~Q;e%2&(&?!(?A`>hA)A$Dblp;L+QI*fH#_!9=BnDoEC-)*Z%&muf@)2 z5pXcd{<1w3Ws6!wi}czRW~kb24jq93Xh7NgfUxh&Wq}z*R;9DVbH#N=G1Zog(}$B* z!aNpmGd*>vbJetWyk7@mUSS1b&K^yG5P@!==`Dp3-^X1Z#pqD zTrcTOy>^TGN6*9F`8*ACb}dD?erHkEA6h=<8Hv;GVef}qe}0FeJ&Ggk*egV3a9Uu~ ziK1!4r%h#WJxaS!UTH9yMRS*(BZtf64GT0XQdsN!dy?KjYN9^H#b&RFYB{=+g^7QD z^z)J_fs_IFQA%j9;y4I=XUa}Im*ZwUUuibvqwIojZ?eKq!YzK-mqX_}{qj`8oW1&C zNUClcMg$CD`}&JtKjoC23nfvczEc@oA6Hk>KkoDVpETXAL^#u8*~<-eGrnCc7E7 zS5d|EQT~qgwk(PzPrCXsA3D$4VCfM1J>5>lstCYzy6nC5=-Q8!ECl+eT+O_+yY{Ho z5`xENKb7P4+|?3HlQ)H)Xtb|l8D!=l(s#!&3`pL7cd{|u#O{|$6Uj8Wnfq&ILDp6s z`X~mme_&^(toTrj8DGUKq=PP&$2Y2GWwI7(&s5ZQ`Bg8Bty2WAxm13#fksT7lAGV_ zf8s}80ZB=##T$U>+YYHWNtGYoXRp+>`gNAo7hip3=8ef4B+olmFv?fdNiQK)BJzKu zx>D5&=(XbpNO{98AowY_fEyD3|1Q}1W7g?yH;?lpuYk8v)0-IX^~AgNr|V;VUj;vn zzTP|z?gfvpfTo2{z0DU*{11Lyu4~hZeZl9?uCQQXi{9{l{r1iK;)UyPKI_vh2_%S2 zQtY686_##+Tfnyn$|IPL@S*rg$Mpgw%I|gW9SdSeB>Wy&l7A|}Rg-V{`!EHt3iTzy zR})T$oxGj^t;Wc2-2U?%=IxJ=r@!(+K&9V)@!$H&uKg!I{;y{xdjHk6IaZct-`y!oGm%O-M3_)>T{au-HS3`J?!ILbE>;T-J5RndJqS1 z@wL~2jR1ugB$~Q>jfh>oyxF{R{Y&>?9hj{kDgz6hwU>?guL|8s=wwEFn^OJ-iQ}sU zfG~tHp9@kM6ZXn+71u{0&|meTSPAHP=6#}dRp5lpifwJ)Y?&19k&)PmaFaBUr5X}< z0tKErDV96RLB%_5*UZ3EF{7%xs%z$8qJ8t&V;cP`{X_6G*DWP`g zK~-8;GxJ;lK#@qj4h475M65Ttv3qd_NM5r$PE5mN0^`CHL2N2=RxokQ84W@bPs6z5 zj_dJO-?0xAY`rD$Lf`E8qJu$YMcIgLReBS2-N1;qxJzEQn0h%_khYIX_d_oeBaSOK zn^Jj_&jY3ocR@gd4A)BTF-txOJ`6g86cV3V?CdCf=rdJ=IIcL=QnL$SHUqv$WIC9x zz3lfevsTT$&J_1kQXo=M&N&ynV7Wp6{_RexhIMaxhTfkvSj7{CY9ZZWtHFZ%*2ni( zdYs%k-d}W!t?4KW=DADybv2>;)o(ikk?GJFPIT3w2klP7%K64NlaSC|b{{K~94%P$ zvv#}KK(Q5|h4a>++Qtp)j?<31P?~e%$UZ-Dx_i|CMi;qltwhSRopw#^ss^gDp-b0J z`cPuN2w4vRr^D@YE0#`X;M~<C!72edDI=SkDCcgz_VGh?I-B@TO4~? zc{Aup`*bd449>m#HhV`^&o&1+D04%lz3!J?P%1T4>S_ebn}WJ^5FLC>5yG5jpG>%o zFWHlNX~yYm8J9B%v{40HcYKkk9tgtlm_ah&Ns#~u1<(iy@nMdwCV>Y_E#^lSR+hX1K(@n%Q1E!1Hr|32v@OQcrgGo1oY3;&R8zjl_E5xjM61a(x4*b2On7qTvrxj9e z4JVdo5&DzDGayn>PAH5gRWk9$GswdzasFsktks4K-0xQ)7%%Y1WVdxq-EG{U&nmX! z3DHv5=g6xYtnpE}Cc$QojQBc+?+-_>1LW2Z(~_Fvx{2fo+a55>egzgx)A2(DQ~_p3 z%06kyu(a04sj{-lh`mfT#X{bm6it8i0f#??K}1_e5Pf|(aVB87i5Wsb8r4xSrTJY_ zRM3d$4Q^aanNMKKsyrk6joc+vq(xdfUhl?nHr-r!%TxX7QNj*MEaMm+uv=rQ$sYxr!Yy2$2CxaB< ziJ+~D5WgbU0{Xgv;d!!R&6vF~@TwluVypEJ`;bUfc-RT=mVMHUfJxh}w!!hVmvd$| zQ0UY!8P4=HE93&iuh|HJI(e!IA-*r1_D102Jd-*l+4NMaWHM}HehBZIXRX*cCG+-V zA=pv%@`Zwr`(+Rqo!G<7Boi>ztOBXoM`2^Z`3>*0f1YB2iNjV36GaN=(2*z_6s6TM zssPMsmmOmye%J(rzNJ}MH6+*xKQ|Gp+xgekuq%QCcAy5x$CrwG1akjBkZx;jxHX(c zI)D`gb7NjCGp~kLe*yE@Okl6Acq%YGikBJE!?*u64qHC2pybgcMCQg zQzQl&beXKXI+IemSu~fmWU({$MZ`xyqR5jZ?UZjSrhR`~JQ5#j()bJ&=D=~EgVyZe z&~SIB1C$k?a#(&K!Nd{WtdeXw^058!U8q=r8|bG#w}#%Q+|{r|)gC5Pv=WUv2ygrUVEcv zJj7CGyy3uQDh!M^Z5sDK`U_RkD$IPb8rMcLg&0gI+89tIaw9ecM%Hl?Iw*j2p4m_f zvnPyJcNC)2!Wm76DX=gMoQ+?bEEFwF4KfgmaY%C8h`0SXU$DHun-&1)oE)L{TBA$t zL1_Wk)zr>!-2Dr5y_J)OG;Cg6Ej5zxg}$!mG#A1OM`xtjx#e_I4--jEO$c{h*UjAO zHr#ds+uNM8lW0%Y_WS8W4toad1Y#(rJ~)9%Uq-&POph7~R8TBglt^TjodLGFW$MM z_V8Bcke$0K#ha%m3Sar0Gg;-g_lx~K|J*9qw=VR)PoDXn>wiu5ZnHbTiywdO8BcZm zlK~uDhP>{j~kAg~{4yWp7`b?XBt*g@0-m zMtQoC%~O&2-#HiKiy**pacbgXL^}03b*EE&(*3CG)YY1=mm9er_dbz>6+3WIUv$g* z^2_yY&AB;uuX9z-wKnx+Z*4p%?iS^bb#_SS0eAAc@rxYLgZ+nm|p zv$F8TmeXCocDm(|=RYm^V$YPja=+`opwhLk2XpSm#oDlEACRB97_>dQSi9tz$FB!= zM_&+3FYbR$xv3jGR-n=eHgt(Q?25{Nten8G**c$+sPinJRI#~1?76LnbvD&Zg(%r4iNc{;4W}p;@qq3xMR)l^>JjAIW)E_-=6H0W9B@pOby(LHsq_)z$NW8|Ga9A|^1S?Z6@}uPzrC)FJoE2b`9knIjj=>9Y^dzvL#? zspd)|c(oS3VH!eQxZ;-RZMq|BpD>_CE2^--0In zR;xSO{@uh>cBH9)tk{2A%nZ*V=-=w!8gG^*3?<*&)^+l^a@QS;+c`9{$cQy`u@@huk-Q=^=Z%k+6i?o-u^we#m5)6X3D2)-&#>fgGV>ks&9y;scvt5e2?ED`aO^K|BlSdcevkt0$&HLnbuBjK+>bAMhuq^7Wui&j ztA}w!`lY^uLUvw%@-aA|5Gbi+k8C

yuhoXus7q3U`4Ra+MD|tf6PeMuiOnc0|}; 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 z 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 diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Lunar_Rescue(Midway8080).rbf b/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Lunar_Rescue(Midway8080).rbf deleted file mode 100644 index 2edc471506e45b40c30ce8c4f61f87f51a70c083..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 263716 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

POeKzrd_>pN0-{Ilu0Gsb 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 diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Space_Invaders(Midway8080).rbf b/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Space_Invaders(Midway8080).rbf deleted file mode 100644 index 058dd235f02da28d47eddf84cc0e796c1977219f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 255302 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%0DADc^MO7kSA zWI295kO|Zx$6jwH$sv)ZmY99@=&r{rKuJ{LEJu^9NT)MsFM4Zv9X@%r**?r-aa?53 zGieSX&^cI$fF}Ise}f$MGb%>d=t96jB3j?-5zFP=DH2&rL?owrxs| zG14eHgJ8x=8|;4Ky@J=YZ(u;!q!!2u{&-b{>kEZ0KtYDU9*X9P&KM|fP}{>S`onEh zK}NYRncSu{0RON3;yMU3&^k>5D-u<*0W!%$?;hATScs{V)DD=&%?49)vo-w565pc#fF2$t#qaK7}40uPtFAG_YNr`fXK<}kx{qHq9qhmHd696_uzZu z2s5TaIR5vZg{F`e)qf>ndo}4n&tmEh7(=&<@Q5CJkAP^3J%OoNOQRE(b=p@i?6bpw zXUNunXpC`zRdtWJc=2G86$4{>aakmb$a((&M}XlMSoevjObScEjs#}+HWh3hfgENS z?LA1!i0J95|7$JG(%3b4Sh~P>E%j96gT4rr#V3R3;H-v0>yVu!cZ!dAMM;3o$`EhF zW>mmpJ@H=@{Fw-%4=5%}R+D{ljQRpc4?g}vIjEJPpCP6Ue)J+X3v)%FZ6c-qLyX#t zHTVzjeb|-|!gZL{0akL)xW)l?EKfurvhIm=0s+w|o&itZae>s+oyl@Y&P z@(bUAj;k%5ObLRqD4|~^2y}#lAdkr;YdU?!Mh&@-D@gkhcJN^Rj-t+ij>+w^Eq`U( zvr;Jx!~jm{CZh6xQM{8W8Q^gKCv=UQ=E;j7aF*7`v-)w+jTW_GMh=uWNCx3=&oQ7K z+U6W*%*d+o^7Rj?x{sKX83$}YA2@RsL_{cDcjb5g+VKCpQA~qA{m@$knxcExU$|gz zCMGEs@C8QLCMi{jME=vi)=J(?D6F=4g#f1pbd)A>8hy?Pob*^8^%${+ zF?w_M*gyo-%so4)NYqHEFP#G^!w+Da@(h>6HnltOGIXzTmz7@NMRR6Dy#eT=6Wm$( z%g+H*)*u79QKP8i-gf)sPsdqX%@?Jf|>+M=Ix+pUeSYt(Bko9<*3RW0_Oqx=X!QHBMW`UCXoqdr(1s zl6k_Ghl#S;$OwN1Ra%{6l(}8m{1@`_koZ+C$P7shvL_|T^uOwqsAPIN+dkV?hJQXl zff?K-vb_Tn@A~ikH5$W2_fGOxPN{4yUh}H+TtGZmi2;v-lDdC5Au)=TGiE5$m=-u# zm-QA+_G2P*hY70{Z>hW2n51mnX>ON%+=F;=XmSK|m+8lx0KxBV&tqL^44=J!S>{jL z0qHpKhWb~~5d?rSY;ZG7)xE3%zO zVVwL!_C4ep*#oTOuCQ-PADb}-58MB%5!pWMTUJuRCFP{DDXS%I(EjUwnu7<@9ryAd zu#K$3g)F@Ax+_=`T?kwb%`JOU@s|8{&45lOH2xA`7DyAAC#&G zAh4K!AK|6mk{6!N7-{L0fanZ-=3?(b{_=zw6X`HZaM+@*%-$4QA4i_*5MtlyJ1hKn z8+U(hZD-u+%QjZ8b4cb5j)S%bqSJ#yM1tF6C>LvWd4QN7$?rww+=jT&&r0wfmT7?T%GsQlAH%hnWRr3Qn5DG0-nbzs@G-w%soSt01Fy80nWY0el%z z?_KWy)f2dqY(UG)h7!hzOr93UnM>B)SI~k?X{L3_3I35JTz~jBXc3{OM`J8{CmE}W zA@MFr%#^2 z5Hl!d?~6e%_<|Ti@Ottpgg{C20du-v=?v-XHFtr(o%=|c9ray?vh2*BCMx*(%z`ZA zsU%d48cWP{X-|ued*ou4_6uBj%_n`u7B@qKA6Sdyha$?Ml%EX zf%7)azWQ9pNM?}k+U3;*dQH2=v?hY~8K12$`J{xy;5O6xhY!*EDsN7`86Ql_e31i0 znU!TrWb(l0kr_XG?A&+$gq8?)x!ON8-2hUdlmf$J0BE$Sl>(>@ftzwl|z_|bAbIPSF5GWI3hA~%9x%`6Bqt% z*yxkrArphy|I(=RT#vFs4YaLD~50Ggb+(G0WU>TqLKQ@@O zRff2lYG8x_35M+K@Gn3H4VX{(PAr^fn(QumU=IXR^V%SD&=I9AMBV<)-(HWxm|4BYKs(4Y=&Ixde$H@NbePcj*l zs}PhGClZ{c%xE=+U&yHYp$7zhn1|jmEw}ifFKlf91N34-svA8sJkdB;mh^5ta;{w- zlHBB^q${uer)5jDnW<2fUV-F&mnp8Sr=&7dIw{sh4Pl}lto@2oQ!mQnG2O+q$n9#H zpIAKzO;lKf(mPqzbirEL|DS->4B4Ia33{Vj=Y4IA9zYuNlz=jQ_PR8x2>^4plE*QH zWZq0_%{c&0`p!46)}wd*-1FboMo~r*yXyeV0*6&?su_W34%((d+$4V0b0%eDx(*8~ zzrc&xR-1^|F8GN-o|gL3*`bs$GN&>l2WQfiV?SApr)rSDD-k@*!7>>y<~2`MIR#mn zgs@y*LehI3#2k8S6mv5gO@BPlt{5(I2RKLAh}Ay4NF$> z#zL4n{#}qGvTwADXS^0>GL^Y^BpVcW%5ElC+uxYZ@nRZDDPq8(?j<$6K1zzjA$c}Z ztihHzHvB+vJ{(GpSCs_oV@Xfq>lLo!2J#U9j6Yk!L$B=fg zqJMfVw(V~`cvF<;0nh-4VlIxsn8Y@L9ous)CdFJC)%17rHqaETgEA>JwppF@-0AUh zL_cNUYE5nc29Th?dAn>C8wb;(ya!Uk6z`nY{FT)iK+7w?c~ZhkmsOYQ(YGwbQIR*; zL95Y7Wc94H>iW3|`gu`3ssFt=O2{M*&quuGGxiY7IEr5mCmBPF>rD_Gr(+FX#8sbA zjw~EOkPkwAH%Sm@_k;kmtcSmQGw&*m^DrnaQ36~V$;XvES+82YQiD*u%&nHIPwZ>u z;?^ZrG*hk3xbCS}H@FkhN3&n>vgl+C7`yl>5Ny|8%| zV~0s)g7Z<=4dX}r&;MlsAb73y&^ z8-++j61ua2RY&BxZ@93PcC9j_he~^_@=4SsEf+XtSXs;!r8c~<813L4!IMjta;1I55!f=td6DHwgV{RW zR& zkDEHlu)Wb9_P0Au>Ns)bE&z1`+oT&E2YD%!{bDXy`ScG67NpwR$KSv@!DrvM!7^W@ z@-Br3ASFkv#S1pW#zdVLOIt@hAY4RhdEF~ljYc$sF~>du7HJv92yah{?mKK=AjZRE zdU1gJ*eDVd=E@G&FDd4z7S@Zi!yW4@aG~hZPB|9Jm6?OH^(d)NR%}Te3GyJY$|wvl zo7Y5_UHuc-3?mLD$af%FdZ9>XY?J z=hV!mq~$b6(uJh5?v&lSWM4E}^&1a-k!`QMndb6zt=gPOtJ7(6D$2Lww?p&m%fo(j zC}>lE?&07luY*o}_aV=gDVIx(Dkqa94Yn0d)F-0-lkrV{ zT-tNj;-kAK;>ru#w`?34~Fw6T9cpf_Xgw;Dz(Dl zpgjB@zdYQ0V5$7?+~H%T%2w|q3-22leqr3X?UCS@XWy0#A8CyHqxLCh`_Q|$IGz^_ z9dL&nBmG{td~g=}GSWsV)8u(f+r6+5f$$G87&6_x}^NOZWANLpimx;JO|uWc??o zE934sH@~_j-Zk22pWI)u9~v#?>fgR$@AK{HkMFu9{k<2wTI=@X-aYfRuaE_qagyrH zPOpCT{{2qt#lLL)L$B4Wd}MDWarevwtxv^XGV{c#=I-l`wO*v2@rK#TB@a5)-5(BG zuX^78t#0eZXB!`Wr&Isu6-F8olWk}rZZBl-99w()Un3n*QCseHU33F!Z<2y@;8l? z-9KCxIXwEYExgyGKGecXsQ$>Mt>%nZf1-tNa{DtSyZ)$E-F>SUe()bw8tvuXU{RYX z2lb_rH{IS<<(|*%%Ab7nHphM6@cx`%or&x1=N6q@tNHBy-*D~L`gbHzZiMPo>+p$m zjx>42ecbuImp=J{p}EEu=7t(r+4bKY>poo;V(_jC1gmFw9Gj!JiCDQefd z6#7tzK9ajS8qt0Kb(b^N*b;<(gRaUdEM!Bz=9WO844@|-b6U5POn8W`jW@Z$=h?v4 z{myUS5zfrutKAT=M_v6{Cf9d0cLXhequuh~Zl_zRsV>=3c}uIdX$WFoS&3?_?|Qjn z*Qe+PR)oz@m+b2F6#*|$z4O~ALH(@y}T)xEPrr(ORKqWznfd0nE@3?{IBLm8vpyY;D9&1H?ZR8 z+vhyDa!ITCtx9S`OQIc^-&#Mm=vI8h_yZ-|E!{GN(3X%2YECT?&=algF{kOU4zI$D zS3qi}4A(cg)^o3Hh&^8BH0`nra(P>$9ap?uYd1t~d-aLL3*Bi*wQF5CeT%hk>z4XN zWoWWFWrerzAW1)?D()3HG(F^gtZ_w92l&bRMu#s+m#23!;4vVma;cooop3;Zc=~H4 zJG^y>%Dhsrnk$h+_S7pB#4dI+WJ*jv)E!ZM&?JW7oHA3mOxZ^T=Nva=og5b#~-&EbRt7I?F+#5VZN(Ry0I?-zS+t#G5uMXu~w~v(UIjUnu za`kst?DUfj$8YWV!LYD(^E8DqPOfzJ)_i?eb#3`-e@(ia3vWjdli2|GWGgryJL#)iop0^z|k7<8%UR>*l@5)@_NM@(!un4_d81{8H1YKXIxM zj^vn88xJ0S|GFw(R}`K05r?X6qRc~WS$LR3S`cuv%3wGSnqF;AM z9`TEWeaEhe!lv)I$wTQF;{s80I&ZK1b5JK3C-CyD`t=hyVXb46a((YASj&!$zC_Jh z)k&h6vO^d)Q6#4H|8YLN^v>j()EaJHJvVD&WWSgnE_mCANrgim^6azpLoi~eo^_~k zJt->Qm0e3d#6V+*2{%~o9=&PdPGt|nb07V&JEL#!czgK={KL`5`Fq8E{tNGVI{NXg zFVOJRQv*dZ=~(#4inJ!09)0)l2`AwfBLNGY(N+X##EcPMCrDr?4lldgcc$7J z+0t5LBqFlx;xQwlaLgY&@Urjhd&#uj6XdK}OT^xFSk4A>>>M_Sx5y6rp7*?D^FFu7 z5Fmf|oE=-zOiy>!t^4=)``qvEcYBoL`uL_nY0NXN79!sAQx`dL>o?6q-F3nnJk&4o zG#~#zS6&@meJcLtu_{aPEu-c_)%~xI4lcwu7o{((o#rSE_(Cn0__-v9IfZp?UchtD zWti2foWsX#R&XGb_7=R5X1$z?x~;f5+Z@Ft&rRV^#fcLqxtUz8>hEdAY6?3NcQIF< zO-Eg>TK=j3l2_jPAGqyLeet1z<@@6=%OC&YN8e{Z`mTh`GE6&nq| z>NNdY=)(%SwZob|s;n7lThU9YPBUChkcgLG5dGyFyexXWM#yyHG-tiNktKCQp1`Tu zXD8+)qYUf&Sd?v(hds$ttV!DbTpAXjq{ndbHm8*mb{Xav5o(JrNmzM+pc08!e*WklwV}s7cO%Cig${n;Cg09ZVw&k} zpRLjIWkfNtqGw^Pp6*wmj;uA-O~Xv@2n}j5rdG+;3(I65j z3seCoWazeAeH<;)%NN#K$vQ3cpelW#j$BQ05fcitgJgDBmM@LdqKzk)ExE3 zREcdL3%3Pwwn2MtWNT#{H7jaX$rbXe3$Dz?R&#rERH;Zs0EPuu_%he^>|J^M$&hk@ zFKhr))zPA7Eg+tC@5n^=qe4|gYd`+pfzT?~k)s*n0E}e2BgoNa)&b9}<@QNDb$1k( zM5~gl=WvsvZ3xiAay7SIwBsX@W&QEhbut-pCoUS8!%l&fMI7CZyG{Y>?T8nQ6KhK} zd$Z<|X)4PiZ?{u6%#q$eo$wx@UCM~yfN2zU=T&LYvj+Ydv1 z{4{(cAGsSh?eSXMg^H#!DcteK`lS7^9uwxy<;1}e_LY@VS*p3Y+nSZFQ_?xt^+lVb z2^x*6=bV9*;o}ZuZAmV9Ad=M=s4soikM>5%JHnD|GjaDq>b+d8dgQ&1J{YB0c~s`2 zpfx+4_@gp^@CG8j16&#>|o#~krX=2uw zGJ}VHR4oS!*%D)KE<0q~t^{Ct?!@R>z=0=W8)3{2f!WlqSIyH_H|WL!0J&s8^p-brt;BYjg$9_4 znbn-kfah$Ry8$U)3}D@UtQg%RWEV5^vm!%Kw3~*yE9DQiJf^>hKZ+ znbIdtk^_J_MzzM`%>|gid241CWG6Cxr$;||^%Lh=FwyBaEJtP;VxFX{PK;WtVr7|c z!kGAn=BVY_J<)yUk>p8{&^DW;6J}r|D!g9|m!W4ackD4NEUUz9<<;xTDcLaTik&gS z(Y!>NHq6aq$-DNu&r%M$D~(CVe_Xn5cJiN{jwNS$xz8;PPg9^(-}KTX91S^}Ld3INpG@Sus`4TIe}Z z7HwnciWY*oF^^{o%%b2v=|^2Bq$|l+ejdF{VUKT@*D%iLNDOyV>R20qyTr(>n#xEV zp@py5hFg$DDqdiC&^1qEKtc3-4aqr@VG^>35{H~g!rrw^m{mV)rWfU@C{}&f@sycW zJss)6s?6@wm;Td+@ixnUjhU$!ifVf{E4MLz+S;|7aW=D2%DT*zt9Da&(}$bq%51!( z#DS}Kb3Wao-pLZxo!t4ag7D^zu@{!xqw$s5F<pdg`_U5#nOoO)?&m9x~x&z_OffxAGl6Q5t^!&|QFKqI*_M*s(+zY-HZogWQ4=e=b zSAP3BYg%P5SND5|_g}2G2vG{defvE&r7(;(rn?u$$}(L{>QdNgto_M$SbHPOme7S( zx%XV5aquhW(&Hn47%pr)87-ZR;zqh zT%el3&{DG9o&>}d05Km=!@Y|G64$;75?3}PPUTpc9~MEo4xqz-%BBVfe&`PWs?az| z-b{}7wYCgyYu+`(o9}US4|F ziaS~U_Ewj1Z$B6vmv^Xbs{a1;c-DU4hHi8I-Vcam;#YRz(@$?s=g*An8oqsA?5#$X z=WlbmA62c%db~0*S!#RpBR$W(HN0)g28xx$WzTRm@BB^GtMlU%d#;5eds^x(@}b3a zw3fZ{>5*tYd}vXcqwD-^m3@q+^V`K&JP5+uwv?~VPsH)@@K*Im$}yPH$k@5=!?O^r z$D%9K>7Hm)xT3baa_^rdEeSlhEXK6jbx^p-YyP5U>*v=3W+n>B#Lt0%4!#`_H@eHN zf!_>+S=()2n#naMXPm4B?Ww=_z24HU^>8!9d2tlnhiRO@CLkl_U{omYC?*K$21X67 z8W~NWnE@EYGfq&S04UWa6o(MkCiZ+=%RM>H76cIiJj&i^&x8Byo#G}30`=vY4KCEC zF$RqZCx^`ypTBW!^IL`z-fJ&G)tb`b*KQp=FmrMI_fTGsj!jI)AUjH0V5V7_FWK7(zp0A2%YeB zsv@}Spf5!1(ds0?AkI{6U6ufgDKe@*>CNg?S$kRhz1;8pz9T2$x+|@>mPLLt6=Vyw zp1Rj^(4_O$x#eRLeG2Rlq8YldHGo?{@?f3cd>11G!TjD>@p_(N3w zguo9{7K{sP@yZs*-ILk#Eceq97D^PxXW6FKYp}?+ITWsY*(6ZI{vbjy7vaic=VZ+QFQ$6FSkv63rm$-yJsxebMUFT0HS}+rLJ`8|!b=l$9IZyB0 z&2J>7#qIZCaZ`E#+vd_y{{s)&!E-+k;JR)0#DKFMogHAeoo^f9w(DP~WOu>vx*w=K z3gv=Jy$;)+s0{GdjoB(C`-=SQux<4!pHZuj>`(Tb@K>Q7|8kx0R1IzW!0CU;g}!O% z-}V01&#uz8t%LG>XN#eKzp(w5(N$~*A6o@(tDtN^5&stA_V;4D>U$~!Y*&5ob!=DN z|HONoS!)I^HEOsR|KTCwT(7ap<9V~4aVw+AcwF7qW~}$bwsyMJa0AV0_Oh)Q)W&~+ zH90NILF*_#ZBaAT))vFs_^q3(vCYqA`H|~m9Lqi%lU09R^2!5$ZtTs!`ZA8gPkeRk zpZM|b{Nei>YdQ}}$SIlls(yGo2oQ&??yFW-$Y;+joNt{I$=b}7@B8d@A@6eNbo*Ri zmRq4x1wX%cfj4DKr(`-_o{}9~OX;6Vbwl9mCg=}2XgVKmmpM#yEN{1%FZ1?b-pHeK zr^J-T0j-7?yl^o(Wk>8oH1%yeiD>l85--J(iG!!)hd2vv{+!mvfznnBD3Fi(N^8MU zfT1PaiLOstKdxgf!$`s#jq9 zJ52 z0za|T3;Q0=6;#BXl4oQt8Pa%aXZeYM{<6m|}6u4v>GL2j!K zjxK_Nf{HyLJ0@-{*MW0nfBc`{*aX~_RW6Do8iWZTM_#{VyyZUM-auL>_^+!9p%b}A zMc5JRl0f<2tfx9;?;=o#VsAOz!M+;rs{d>lOw)haC;wNtZ%5cr(H_rW1-JS#(oq;j zH;1)ji*(3ojXR=|`MKWiFn-BOaL2r%Qz9iRt|7z8N7;yb2??T&4{Z%dZA-&y1nbeJihK;Kya1H8b&f!}9m%Yb40 zyuf(DfXIsJQ$P40zlA67+7Ua7ipF2>%C%GGt{Pb&KadN?nrc=MJJG?UgCNUMtSHMq z9~NO5iuY+M0GXI^bOVgABn0w-yse1BW>^GA4j_MdK-*rDQ`SFFG)z#LxGaKnhlgDCY8^ z5H?k^&laST77gONvK~dY>Iw_g-xPN-fpS{Ua%_`{3 z^yYjlsbk;CK;ya05-ryrqeP15Kr@=RE}EKOo7e%)unbdLS18IL!plq$e6p_Y$Nb3L zbz!svtsV28o}!khE1sdxza_g_g&F<#GX9c2MXe)TxSPlh)o3MV|Lv5sMj84x@IIWOtRG!&0qf5 zn_M>Qs9Qj~g)EkKZ)%RI9e#m+zd0qJAA zioT4AA*VM-BA1oqJ$}yXFnc4R1b$Lx;2z1OUi;+*z8ggD5bII_N=ghCvsUJ1oUuv( z?+QkkpIJ*PW-ZB=prGdpVb}5KsFGS1Y%+VNZL{4>A?b5~In$*wt(!M_*%=<1%qyV- zcT@_rxiwspNo6=e--M(HvA;dI}b;5xle_KTUG^v*$~E_l1xocUxJtFvCVeJaYDqkT1X zaZkPeBr%8m5Su1%VAcgc(usc%S+740LB8?!b#h9+?D-Sb<|sd)xzKo{JJh@@R^9ZbTCRUl1QT`Lyt%nMXdja&MJxEEI1`){2S)Zy z>22vvbMigm$WeXzggDwe1!ANS<=GVnSq+2V+-3q)Up)^ zTDImqu&e*_u&rjUM{s~r!3f>->+j};D7zSBC;ax$7P6_{%Wph|p#4iz{CpE{U%ZI^O~wYHO^lj5gV(w(6mkRMn?CCq9v6glF5I)4 zPcWw5b@a`(R^M7VIK5fEa0zd{+g{vTHE8RZS}<|xYyDc*y7cm)J;zUbv-uv7WtvUh zuw5ILFT9l2tn>H92fZ_u=RdGF`RIYes@|RW%X{OgO8GZt0SebWis z_h|W*aQ8}aNj$W8LOCO~iSH=ywr%!2?(e4V5K&-?lfLEfE9d?P@FhZgqS%gEM>!F_ zwc;pVDLTzRm;wbfFXN!Mt^-mSC7hvblc){b=CK>K0qsIiII~FC`MI%ce(=>{9%15b zg~!A6(o9XXzdLvYIWZdP?guHmF|344`JcWbl!CzjE)dp-cF`ofh4tcI=%X&(A_%RW99I{s9Bs`+dcG4Oq@#Z zo>`YYKk`}5mY?J<6SL;Zvn9?dzZ4ncC8omm`(FEdGoR$(*QIH2kzI4Vm2lk%d~D=J znf__yK{ZBB_zmY>Uwp&yEXZjdvjGY+%n9~pT`aN{)IEIKa#4p}F8CC)Xj8FZxA!5R zeEzU%Ub^?X-xTpzH?Fzu#T4#!Ta<1+8^-stt9)rp=s4PDpWpOZG}jm!`R1jl69M6r z#e#w4El%2M#+gf1&3iQrYeUQ4%Ogu7K-|5qV`P2~Cf6;uy{V=cA}gRkYBORp*U>BW zb81_F&wH$7 z5=48taBz6FCl+qM&PwlH+nk(a=19lN_DZ`}vRj2nD&Cl%Y%v6^$em0_bgC!Uo*DUX zY0FShs*WDG6h{fs7ws5bB@dDr?dKi_@>KYk9AN++y2NlP)BlQx)$vc}mZ&W_&WBm=q2bH;<75M_*n+YMjH!9xroE7IEy-GMcI{6 zY%O~`mC7!&yUz~T@kX46j<2S3E#IyG(NQOhRd}j*8v6~vIc z?DFK?3*$+_<`y|oAnP~lJI_yw;xoVEp#e?$7D=&Dp} z|D;fXP*aP^g^iho1k};`2#SkscK8^(dft_~I3`cq-J{yQFZ3>u34}$ALhuk|8z1Q$oDEBq;!fFjT^9vbo_92OV_4ZS{tb+oazwWI()T+elsX zoGp|OKJ1Vuo zlF?G);Lzuo1lw8MD|@~du9L>MRT%-kEt+2~K@X4%)Gmjv6!Nk^-OUMiZ2^o&HORI; zvXFq>bZ~hiPO^a%Iz|tN>~62#W_O*2?fQH)yvgP&p|lL8^#3{1tiil}HteeE5C#IIt$U7OejA5co*n5}5{(UkQyzLoVBlp_vUkfT-eC0*!6^a{VV!WeO!c^XKl8~8 zjQf3BPWO_0q;)o>BE1+>H(|Bjs0aXXkpY7UCs6zS$%^i>iC=pXCsp_Sk|>y?K3X9= zLL@|tSc6(iXft&!e>3}W2f`zZ;1-Ruk!5F@?jx0*7RWSCi_HEP_acshLP8Aj{}m!U zBKeqiO#9_);^N>N&7Ty@EQGU%Ce+!;H(*!E5iqFK_3GtBTJ%n?co<~+@0F3v08S9|oXddiZDIGOuHAPr1GE#YVI%&q6 zDIJM_OzDhTjg&UrF@PHI0-z;eMV^Dzm(q%v_rQ+IyH@!okCHg%hJ!08pMGe*l6*J_ zTO53AGKO{{8>otn@H8qr=v+uw_On5}G&xQAJQ0~%C-qqy3__JMheHNj=ahkhs86qd z+FZ)a?vjW-K0wD}oGES%_&3iiYZNPC-vS9E$N``JY%sM?0vx+`w!^Pg>!;X!-=78T1Xl(Y(^k6yKSi?n$f%c|_6=Kr^O{ZY=zYB$T!z z?0#knXpkCJL>~h!+m;y%+EdBUoULG*R^heZxXkCMPReGU(J`GdB(9z+SY1)M7thMN z=)kCWr&}Eg`|%NjrfCAMFBhhj@?cvIM1=X;)EAGfG~m0(Cwa--!Fu+)HdldvaV2_A z%(P`Ln}<+VX?0(R)`5~in+kF0$gjVMz3(zdG!i?t&6@k9n)7720qv4wlsgo2DU@HpR3br z=(;9Jd*)^Akz`DB{3=s@R%_B9Q_Bp_4$nzOTN~Y+Um`EU-ymqp{H0hFf~-M-e`o4 zV)bxc&eV&Iu->X;H+9wSusq!>lkdB)g2uys`S-)}GsX96)}X`Lz7s+nzP~ZmYc

  • xDA=9#M4J(__U`whk^7y~dQ5 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 IV#~t+1yY}5O8@`> diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Space_Invaders_Deluxe(Midway8080).rbf b/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Space_Invaders_Deluxe(Midway8080).rbf deleted file mode 100644 index 77126de256893feb459c8a0935e5dd7c32e74f34..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 261619 zcmeFa3w#`BeeXT9T7nWnvNKwV$pXpFXq9dRfk+NisD;d~*Fj0$vNnb)lr|R<-j-f+ zfu2(Oo@QsYO61xhHVHJmr9~H~HMizMdJd;OB{r9mUQP*+o|Bi-lS}()c}v^KZc6hO zO3wH9%*<*fOSa`~iXr;j+L?K7|NrxU{@3Rjt)71R=AY863Z3Ph_vv`)HN}@c zue@qJ^-t+b`Ize9%J!>0tM6LvRX&rz%D!oz)vlsR-O@gyOZO?A>3!$3%2tE4jjn>D zwMqHAS{s%9J}?XDKBY45YbS5C zW*S|x-vUw^^_=R(v94PZ=%lg&*lU0TsA@Waw3+&R9!SeY&*zQ-e+H~lwB@{|uLuS82H2Ldm@Br`` zK=*>QUFS8fS*oi7shp(vbj@@?N>@4uRf#6`)p$)nI`eCQX!tUa;#uqZD3I25(su<= zOrVn<-K$vFj{~~_9}sQoqxDY9Rj22#C7}Bh(z4aA^%bxO5YJbFXb@;!1*#W6G!OAI z)~xtb{8$N-38-xf4=13i6=c*`;@9&Z0Y3zYj?VfIC7^OqAetnT>Dt`{=vkmK;=3b1 zA4(vt(KwxS38xEmURR?-Wgc)Hpdm%aK0sHEt+Euy@m#k9HvpnX>nAmbgL@er|`Q8=y@2>^|t}>p%YTx zs7(C$8$j0-ZU;KsOBbbwqDN~kP+1CEBhe##x~6of{xm>+B?poV(Ie1vitl)@!ruwP zCx|JEKjV`4^V13FNpy){;%`cyu6kYx>H4Hs)u;EmcG94Gt@~;;q-D1N!j;k{*&=EC zj>=Nd^RZy1J?YdH-KY50x~90&deN@ArR8FmXi!-S$D&E~E9sDrO?6=lBVKBqLu zHVMSnGzLlStFE%Kf>RPm%jB!x3=DL@|L%a4h8+pK2}ti%Ct4IsrgVtEx=(c@<%gbS zzjReRB%3CXuAc=c*8K}0jh}T@JiQjIwE2Gvs4S%;y$W9^q_m}UiSM5P)F$QEdx76d zK=&!6WgYBk-==k`TuJW53xV#_I8AdGu9Obd={b(lPCs2dIu}rxe6Z|W3axDIKzPdQN$|k`B#HxKrq)>+67Q$Dek_U!?2DI>BqGRC?@++Kg?zg7 zSND>Eqe0qN{E%!&mL&V~8}cs#Js%6?GX-fojg#6}T|WuPR;4yeWvSliDtQ#>{$+r! zKLAKpQV=cDWnBfrwKDfqTT{u0?zJwP0nwv5Dt=a33hDZ!&u0SX0BO0_?Q%e6DLewC zwk*B=6reae1+9T&1ArmGIyS_!7`r)JcQx zC3`7;U4>7ed)Y9FpKPmajbIz_SAfb=(DSh%#hwXjtWpzhBgeI6Rg=3(s?GAA(g6?tiZbK#*FEb_BYp>Rm{+z z`&=t)F-T6ME`vSQS=R+k`ePOCLWeXj{^8FxeA}88`Uiun^JfK&PY3(H zW;kPoJ4*g6BW%eoPW=W06>X~_@{4(&5yO};NS#nk8+`6SRe*y93>qj_%N9Z4kCzMs9HIq~jQxj7pyXe5`T;o!02GAs1^fX3gRa zj;+a>H7YhZwgzL?EQVu6#pvCD{Nm$(+>LSKF*eq6y}X2D&Gq(Kt9^LrYd^bI-TKQ< zYRYETKcCfmpn-r{F|NyRBzk6T#~~dFqMGXVpHdChV)WJdVO{a}1PZtRaG7NiM8JES_oM{U1A% z!4O8vB*;qS5=nffg^PdiZ*m&X#?TiWDt>A7zRJAop1=9Ur9ht-j&6PGrs|9Hqi=oc z=BwV}ADq6tJU`%`|An7;`LIvh&(FJOx2_#ipXJx!@yb&-oxI(H2cbRqOzYb6zEYqW zUYb0-_+Pu`k*&p-e(X2|`Z${)_g%A<*1s2y6YFs_dlnS(IItc^lP(gLx9%F~nmu%^ zpPfDq@{iRdA2(S1$XAZl^7!k!$TF)tR{vR=W!IE^BkVqY=}KC5M=+AXPCkiEcEcb1 zpQo*xGi!B#V_g$id8I}i`mTj;9p%nH{u-^j7hJCuja&EsUDs&tsxdcau3J%eXutBe zPG1N2kKXiT*RzeVJ5Eiljj+4)eIIs*I_h(tzEhWH4xC+D*3X+aJ)ikt8sTJgqh@B$ zGGS&}PKbq%&L8ncgISdm8tjYLKmUaKt=8$JHv8T3l-6@;e`>W=UVmAaHL0rs>H250 zRu5*`H5s!Wxu>f!eD}ic2k(*}Su0rXUO4`o*z4Yix}TGq-TCp;%{I5$$F2l{cD@Hc z%Z~7U75}r-Hm;V78aS+zmfIvJ+Su4|#%#%A|= zx!*tOqdDi1@$GYoZkJw#Ux9FuEy6v(y%t^}G)Ci;gI7UB z!uQ@r`o>!($0s_+)2f?JK|3DZin~MGxoF{pUVLA5)?Kt>Is5K6ckMK>>mGj9*`G+^ zksLem-EM2~wLfqoG_2kywur0Ot+({ZS;oJNw%&0}`^C9mJ)wT9c4C%YbCuQ)>Nm-{ z1kWz}p8=5@gsqo(UFKN#Z@8-yK=JFC?_XE?UuDOX$mHOr37 zpw?`9?20Z6S@%qA{)>Nj%CX5m&K9uj>Gww#KX8!G?!Cdi*1IZQ`-Mt#rg-gHC+F)b`3JlAYx`YKELM^6 z6DvwIkZVB z@A6n3`8hX!pZp5sf9NbXwz^lBrZq}WT2lsL-P>o}*y>(m`Hxb(vDJ+=@0ticr+!gn zW3M~;&ctx;vm39Nbn*KGyKTo;9t@uN_f_N$J$2_%jOjY7j*KIZ8bcj@^he&AIeLS2 z)Sk@Y!aAmLjHXAj{}>&PQoX^kqcCT+s?h%Vy{nau9t7!rreQI~K z)~g#!b7*$7ZmZVi?)h5RUhP|Ji~7WJg2i9|=BgB*P~qw`F65$ z>^bEq*Slz|w?A2z^5l(ePug@Kcj(OrExvnr)u=lPdslz`B-eX_U9P?LjMYWz1WLQT zztFWE@8`@fXzM$xkBG97nN|KE%{rT2?%V6^u?{*I{HAUYxhl%V%fEg_R6Z=1Tse4pTzQ@5Be6dZVXQr{?eW%LRC{TwdlD+Lce^%^F267^-}#gpeKmS2?g_f&1;@9M1Aa(3Hnt{4BB?KcQp zlQnBpoYWla*6S!6U+=xf>aSgVvc~5p^`92#n!I-Ni?b~KdA1XbwRsoeh`)Y$jEH_C zJYQR>Rzc^X8lTj`=FtdWSKV`F zDZ3W#Z2a||bqN@ayDVcT?`BHZWbCB=Rev@-SA93-gg4384BQWW^Xu!CwYA%KSqeA4 zlW=WTuU3OQ?aEI1>YLF0?z1}h6*Ej}Rm?}e0KdLOAw2Y3<&FLGj^lu5IY8fduY5J- zJVx2Zd*#Pq&=J+$b~Z;KIMIR)!q&^V4UT=EaqL;~Hg+hj;qIUHQF$3$Hk_OM$Z|J zb!#i*x%G|v9g^}4Zo4dG#SSa^45*@Ox09!nm$F9Jc&0B`*f`MM_*0zg*F4O?`u396 zvqSa0`@(7diJh5&hhBGI4#8Wp_Uz~q6Z<^kG6>pl}GJSb@ zeqi9?_vmj}4?H}6AD6RtKQVS+#k``)_3`GR_(jvJn(>>b--Cnjrm1;(xPL-;#+^|*o}_2MVDRp@uH=j zNfOp>|L7mC=i8N!!MWG{`r3%rTl3xH*fA(QnF;G!0QH>u(xPK5_;FTudn@EW++rW! zJQ4qsm$G%Zl4ICK=QnY>h_W@QTfE_+jf3s- z_sN^5-QJt&?hZ(*EYJAb?P#o+X$CW8Yq+JPZKY+^>HLGe>D-%{V zSIQRiS*w`O`}tPhsoB)sb=#R?*}1ZM{)BawU%jfe_0;^!gX|l;gJtWy3tRb}@7r!| z^?G0Fd~ToBa-CPS{$ty{tg`jAuxtzM;=fd_+Y9cMmwr5ZcQg{b{HI%Y)bcMMtvxy! zxxGL0uGU2KzDwN$yS)fncL(8qA7VeA-Qx^qexP+nC4YW!F|&%Qz07L*VEMd~eM`%m z{*?PrrJTv1U8eCZms)3C8I&%bIjeRsZtV7+cf8}qP4|}1YuQ`JJm@6 z<#6oi6rWRg;VR?R(lRq->saYz+S*zi_*(n^8Q&b2lFO|f58U|1)&4$%QD1d8Ofp%ExMnDgaEwusj-mb9*BvoNXF(3BSb}2>`sg2L zml_{=2XXNTqLRB~vGA3{NBbs(WA$Ev|B?3}<;&)B2)>!Be)%f~qYx{`SoZkDr+bz? zFMrS!!)44{Ucd6`!ym~UHD@vln~Dll9%J_Ti!MAGbrQK`G0iKuEXC0WTs;4qN0B-v znw#)EZ-PnZAT8v(FZhXMqK*RLp?`Vj(WHMomaxqwk|{IBjN)DvF_1 z|Fz8VTIck$Yz3tk&Kj zzcXW%s(Y%IwYit?06xac&xbzwij`D#JlC1xbZ>5QhEL0?&u9UcD{Dt%a~s-R{_>Ys z7I!`~)HFmh9HrANYOfU?eF=v;M?)5%6V{@M`BcqZoOJ6W8;chVPe3^n}iQO;#;M#Qw;?TRJ%FqWy%Mv}@ zEgL9qjDRdFz3Ycwc+B5T3{esm?tx|FSD|>>NUL(;!Cyb)yLgoIXK9#Th_Okhcd&O{_1H_fg8?83sk|>QzEYz}2zxw&kPAl#W*IJtA5;aSA zkYCM+t`u^aFvHtgzuzf8X*$=yIuqHc*^ACu3NheEraBuLWyzDVTLK4@@_Lab)jH^?s>UN?U>| zqggM0;$uriN8Tx<=6^aaW1-@Dj$okbSfuIdWO*M~aX5hz@x>o}FnwC}YNQF~F$k2J zt}-X-AUQYYq576mCM^DcKeK$S<<=&OutNwI)|8Y3S|#t~Yp`Jgp=!Z#nuHS*2uN#R zYiP1LRGpm9RVSPAsJ?jahlq0i-+y>HBA%A`2-RQ`U{VoQ(F{%`N|@j|cw!-Jm0Cm9 zOEW{4dZ&fd^!khs_o~GEC6Jx-hO$PDLvV3JIW97c| zqEqR%GCTR~!~-owonrb@-SiD4C_83a)@Qw>TFFDvnXyC9uSVMmTTKcRS#f`@*|awi z*t?xfeJ;q~Ql54*N@7Ywnd@4at-V~M@HDGiT2^BtucC5j8<+$)|7D8Wf!2 zNwrIXp>X=@+<`*3>8ujmBtZ;?tZOZ3jT;CjpgS6JtCKUyVsOFg3(1Y|O%cS`G~MYa z?L-nMs}Ro6vIQwp75G~2c!f2AQpr3Bi}m4qk4T8>GfI7=E*fiDl5k7R8;Sh^kIFF0 zfRTiJqF2d=L5*$PZNsSx&(l2iRJA_m-y~@hBNzX6T$hI3&YbWe59}5PMfDOkxRYZ@ zhF>aHT0=pSewA`f2NL!MtPN<|<<{cOA6|ju$YVEUU^F^lCX`@~@?};&M`{K!@l;hk zl-X@_F_m!wb(2*OL~i({kDUJ9O_qiq>-@ULwQ{BJ=7HK5-ep$s7$0e-w4zx_jF$0W ziLu1eK<*!V`+8oOS~28`$Ca;)C^VNiw4w6>KN!nnySB5jFG5k@L(`YF>vgl_jN{@o z2ry50-V{S}mFO;qM?Su?h#{8$O`?P>^*y3L<0dGLU*==+J(n!UfU8doecX~XNj~2M z1u-8&!-a$mi;r*V>?|sT9f(&d zzUNcZPj$j2v3|7~G$hV-`Z5H0&~Jz+f%j z^a!5`Fc^1+gOYHGM3j`Jt7lp+8^wz0O|lA&saSl`yFVFJ7eg_FL4qL*S_~?xpj2e* z2g#rzSEd*1LR1e*Ig*duX)#K;f&B-^twU!t+v7u`{+qGm@y(NF%V>h-1jl77KNny3 z=PQeNHe_lP-9V%vkVi8C2!{DkYt}EPOsKW5q})Y05fLZ`Cm!>z-#xWWuTqy7NTaxA zoj7G?V@40AE97dY3NBC^8#cohXaEVTpP3U0tyXDYDXFZp;*L_i~%|`jbv?w+mNm%W+o;Z)f&Kh5=-Vn1$k+6Xfl|tQa0C`%P}{iIVM=@ zmkKQ2d1XV=V<5@3%oz}b8l!aNCqyi($yMnvS@w++Vq!~q80$`0O>EEV^FMbe|I1q1 zrLT$~o!C<)?EJ#a0g^EZQkskHEfa1JXSENmRE*dZ=1%vz+RNuVDao@`Jz@Gze`+X};#4czJeFirBaU%A3dqI=q428preRU4O6&m8?%j}LMjNuZI zAD{{}@VrcHt<*D|AUKaqFdipKN@IM>diuU4yK3Y(L83u~EJ>MISS4MO)YzEBdKHVQ zLEhTu=X%L8dP|HN=X=}<;o{f6Z7oek2Pm-@(Nu&1N5@PwhzRY-ZcIJ)$Rr7xnUGGL zMymn~W)_Py!yv)rPImn9cNQU~lg`pDejwhsaN}4>WDFZ+EMt0-vC5pyyqVUjVIIo2aC&e1_h>-0pDwI%~E{z*s5 z2bmy|eE0#)bg4&N9$62vD~o%XDsLjQ+nLDZCL*kcb)X8K^gJ$q|7B->H}bJ>f4*$K zKL7IF_m-C>Wa;%fc%yxM$ctJnf7;NLCNUx`@!%$$(!-(u zvf{X(xiP~wNQ;e`H8)EWZ#R%@?s%~7dgoFW8q?LTjvwO@4Gugl*plt{Sgz=#eO29D->r`-uVvYfEiYv$Op zoFTiVQDlf^jp>;4TvtXU&M4K6AG0IPcoJFKK)Y|<|HrWim}AH&9>q47_+GOG%=iXf ze9sW3pCUb~%}|DZJ)g5bYcZZVKIMj%nBvpaLBpuH%`ff+9XYMW(@(tJfw?tn$n)Yr z`};4<$b6XL>UpyYR+KlWG@NS8n#D?+ET5@h-U<3JcAr0cmnkMrIm~SFkv;dZV5wmh2*^DaL0O65%b7Qn8;L& zY?XvTSliMPVPQO|g)Irz(7yGza z4A&PQdP@jZDalb@nv%~`kaIjcbSf1Q(cc@|ag*5l*PDhdOPJz2DZQ9Mj%xkCnuN8&69*(}X}FWiFe?KgyW3cYQoXD?9p`EB@v@ot3ZfF+*IFg8IP{y`#ohB_ zq`8gh@u?x?fLXL>+h4sRpG?~IGNs6@M?8vQ24Q~ulzv|HW2YIOI#PISh`C5yBFDK0 zu2CxHIWF2ypsa{P3@R}W1HvTobn+W>My1fvCDkh69;95kWaGzRwk~|-&8Na%6h`Fd zt?&}EAZJ^2yVVbK^U6Rq|CY2Ul4i7J#7tCzr5^*ObTP1DiR@YD+~1pb7(JiQ=TIXn z-#_6@T;iP?p5;wk#>p9v+q~(@M8%!hUM_)WI+Ks?tQ0ES{M%ay9Q3lSrqpn#>RsCF z-&th`pY)F(W*48yh}q1w>J>19eu-nS?KtLAtbarQ{HJFZJ=@CX99!(n=PtR-o8IOj z&U^PxSG==&_c~5)vK)nz=k1GHunKh1?eO>>nM~5Z%$-#RpPVPfRPr~E5KK1X?FB^# zOrOkLvI6Ib5;^fRtLdAy4-cPzd1JysUGyLHPB`f;{dh)^CTE8FD&FKMdEZc`HSO5@ zrX8m`c?ZKgZ~#?EPvrb*j^_CAGGK21XRnBz`Bp^IXeyFz2(!W^=jp3^>w6t5|01Wc z&FQ!GM+o}u`u-Q?`}bB`)0a8dwI=U)X^Z?N4-XvDzRCk$-s&GUiQ%O^MH0ie1lH@z zLl2O1v;NbQ`+YaMrQlorkqa~7o&G-V6*{l2-H^St_glMU*)26{qw`^+>=gt@hkoNvP9W7?Vwt1``wb?x=f zt7G6mDfHZunAB(b!9J5G&%n;ve4^RYoPAArecNYpsw291m0cf3?4}trGC2|nCCQ9Q zY9$iN5v`m%@s=1rx~ZlZb%S2kAaoCJd&25N$MOgTlXsYXza34V8ctN~Y35FL_ZHWv z)b!-Yg-UL=f0W#)-!73TGqI=yA*HmG4LI%q;6Oj#b~8N60+* zjP2OwKroDhLDLhHqkgM@n-gx|6rTvPHbaE+RpT@jxC$|IWsQm2T#|g9 zCn}GHgf~=AYvCwulO$$fHtF8`bufrYopgu?IWOE+MuqdJ#v6SP02HfEhak5h8;PN5@JG(m$BOcv<83{t7wQ^&pMYfDBx$hyCF28gW&o|_ZNoZZ?} zrSz?EN`f3l6?_I2IHeC(;nRavbW7o(B-$#{ks}C87K1@anTPYT*3yfb zPyE#xH!+XAcUmEb`EV*`NECl54v5l{Et2C z(wB6sHA?%OF-dF3l6Nx8_pKP^9naF=mOC=7J^Xl7WI@}IxNP*o_$1^QL5LgF1MVYV z|5pIXt*+ibTbW(TtYDicQ9+yiEC@T7rDn=kQDSTGZc z>q+$IT#b6&K0YB@{Q%52Ln?rx#Lz4^3Gn7l#?V|yXjWkghDu^hshCOhIkGx>nF-&H@ed4xIA8^bZ@OMI{XEeb z({5P4*Q!^{YUcO)c}50d-iSacJXJ)f0H8utE5{71{F ziy_`<5X*8HP(BU2)IF{*#qy+wTs&-Co(!O7i~sev<1*6-ek4zM@*ZwOyJSjOh$z<1 zAqFBhQ=Ji3!(u+n!pA%`MIZi1HW{i-*ADD12to(EhBAqZMuHLMl6FYv;U@)2~Iv&19I~Xyg@r}3RC`R zGsTEa&aIei2kqfn%BumMeG*NH+m>39QXLH=1pqX%Ua&*lA&&N;eb+Y-5awJlG+HCE zMB=4;l#ziI^z=jg+OV{MNfE<}yclb&qNSgBZORm+Tq%3q4=dyqRt}Ytl`%4BmJ2`6 zO2!Bx5II3 zsYx#w68|^PF$&tTfwXuT`hi3kxyzUGb(gF%JQbxhtD}DOR8pB?M%w4dRZolO&e~`n zsb$9GlY2pqh=&M(7ymH*l+g!qHhbSNSgFF#SRx1?c@Hn39>KA|8t)^#UHQ{WMHvjF=7Sr5-p#C}rJeH8L!M(l*b%O`HYjQ64PTJYPdnS1crV;E%n@!Kp7E9h4L`QQE%%L!^{n=6x_+w5%KHVF1@@7tSq zhTiC32=8=W(%XuC-Y;D zsb`S_@+dL&eXKPB1l2=_%dVVd{2z;?G`Q}eDSdW*lxTa@u`V=ED5XPcg8-5Mx9+6+ zqa4+prrd^DzePC7f8O7lp8Pcs*Z1ojk8nH55tI#k|Rp`&w{jmn|w}D{*W>ub^-LV zYDjJ?v~a|nVp6>fs4w}8KYR^ZAxtBtlLJEZ5UaqL4$17cKC8bEUP2P+DBPO|!$zoox2lrMkmRY{XL5qIBn_$t3BDb*=|Y zTE>_uYYTwsQUQ4qUwts0`u;gah4+lW|HLMlDl;b$(evXTeZwl!CGX5+`Tvo8m@yN? z6ZXHc4+%k&si37MIKBPFud+*bniD`y&=51YXbzN>Mv92oz{PWl@d-IJeDM>{*QUXc z+k@g6g6SaRCZ>sy?Z##>FVK;9^}o>xU4;egLMR*8mPE)Z>Li|0MlAWP2Dd9XsnHi7 z{-k(m5m%9lwvD< z)#s70_(|=&fT(F}*++SGwa*-vzRG^E!bX}yR&3=WAtvdwbtsy%4=9bt(9-QQ9xw66 z{g@)PCV6AahT2R6cT=KU##b)slh(1y`(WPULvISTOV_X&$Rv~2YqF@tf$1ThRpsN9J)pmaVG_7 zxs1mGG8T%UR2j8rj#cri1r(UrmVq0tEet-IgK(LjyoXAULn?$5>tl&C#~ zw#=R$Qi}-W(GcXT#9b>lf&R3^LMA})rgx6wpeH{6qag{1FZvZ7G6zMWGNI0`zxG07 zR`{S*gq6e68628|>2SM2hm(Q@hEFI6hb5{voisLa0b|2V#wGJoL5uMo`6D}S7AGdC zgdVkVFQ?6|!+`)}itGfWXE7wPIU_TYpcG%R#*4rGQBpGk!qCZ5L5$__;e=Zhuvs-C zB9(`gY-DLJ%!5lSVneNV3g-yZ8Zi>ZKon*eN@J5`!8M=MQ4WEZqz>1ZSC*;f6#2)^ zxCWq3hQ28T(AmwF_{6!?cxtuMMY#Jv^J+l+eMIzS^nUH{0JPR4 zm1LDQ$`Gy^?9Q^ z^;Rme#oO8 zwRAPQMht4oOiftJRIHi|o0(IIy(ja!YZRXP#NihhR^;;HE-|P0@1V~q2thhjNyMfV zTx&Jq6X9}ZOv_!$0r6=5MgRDG*n;$G4b3uQ;Y7MFoMli5SXbw=4ysje8KQI9ia}vU zMhgvgrUbC%8|jMRAP4u~c7~IyWmDOrngI<+-8ulmj36#AahDv3Fu}DiruGn9Lkpz?3esn39mDNHT4d=6j{UAbDV??=H6`Mhc47JiDF$a9% z;n#dNCYF)K2geL8k~sj)hdqWF1EAvF4SV`|t$Y;rR%#Wr_HS55Kdfm}9HsECZ{}oS1Bh0@z@MI}B@0gHYqCLO(4PnG#Lt zk^lVyqppU{OCM^2XjULBJZs{t%(UH~iF_;3Bz8%S_=z3$D&#{sj;kgFxEZ)CFP9^V zn@0LCde;kg^w;{C_qIxHTTN3yRJ4(zGh$`O2x)$V>yX`F%U_(gE6x^=EOtxfO>Qnz zsSRbf^iF4MVB)q`^P^TxW)z$iW5)Rcw5w}=Z79E^%9>>SeatZ$!qX02>Uu6-iyU_7 z@Ea!beUp_P+xoM4NYU(s8iygtm6gRVAsp-wC#t@@=cj_161+re5Z|9jb1 zu9~mDWcx&Ii?@9uJR_>qn~`Q)uc8?FDw&^OyV9@Jt{ie}`o#+jd#e@gv-Y+8(!SPQ z#36f$$LNc{_kyjHJDhMw-l^BND3Fe`dWt~Dy!M-9h|l}9*gRGt@`Mo?Y-)aeYsye_swp(f7^&Z z{hmuE-^8zazW=fx=i6vL`r3$*3z^#08v2@7lQ8cltDc^`<^Q^BDBAwO)qd&X+U-^A zn(XGu;Jn`YRen@MHkCO0mUHfQw`}>GI)^Tq^Uzn>dcIQ|9{hUX;Gv)Xbck85?;xX- zsGGw*#5^`YC6jse+gESN)<;I*&Sf=!`Yj)|rr)A7-M7qGTLv=IlOJb4VgHt_`KW*V zN~?lnzUCCEcO0vkx8Ae`rAYASm1ZVZx4y}@Ue(uAV;=q6*oOJqo3hd8Uy_OL zd`n;b&xQ(_EwyC#V0!WaZ6vhF4kuZWu$E;#Op-s4slg~HP~L()q?M@PoYS~>4tGZ% zJ@@wkk@?s;T9P>iU<<~!tdCE8lt3Kj|=d&NC+>RxszKMJ8#PB%G0;JIet$;4NRk}hXz=KZ0VXE7l+%g^6TdL z%~W2jFjVP1!;0Hzs_t^VvwtV+P4ZhIADkVX6{7QoGTW}0uN{z_}h?I1?h&^tYytvt!A5Tgv;7Qp*GRe10jl4MLK3v}(% zJuMs)N6tuCnNlU*O0Id~3G;-Udr(l@fvM1;vFf}meQ~9gMkQ-a*Ys=NX4LcuH2EwCj|=D z;(LF1Pm4)e+u~B`bezk{l;UHgV|n}zCP#1gRnnj_H<2d}Q)p&@-=rjo%EV-1$>z{r zVxGyM|Eb@+UokAh8NhJp9%B*`yE(Q=R4cs}LQcSgj>kz7jiO2fBiaajUq&%zjb&X~ zZ^{yJCgwghGbW;vmW1OZiTrB=lT+-~F&64zTDJ%1aJOp5se{^?)7B@xs&}&JNal(n z6JPdH*U}H!203_1nPs+-c~!4pA;=r5V#_adYo#4HPF2&=nxnm6D-nf-*;WbJ$y%0M zth#veR%2Vh3znBSGsM&->k(M7qea{M&*N7w)VYVC|JXB{Z9IvwK|2E9Xx0H?y>PmtPmUfa$&KW}nS~-su280ao8~!%VGy zlRurUguOMF#G!RTVC@M?Q;y5ge|ey3NA7Mn|L(DjcV1>7Gkoax-;OoTA{6xr6OvCw z4)1y8OV(Cj7OHoO*V}50#8#vaS(KP$HER*T`UkgUl-=#qWG^T)UuYjP=>q9rh(D|G z?SEo}WnG8!eDFi3n^mr;pkZ5Elzl>S*0Rb-5p%b4er79!bpVZNYBe}jh~Q^79!|;x zG6ST^rNwXlI8i~Cp$sP%7m}g02 zhOD5uiL47W_pJ3`9&8aeMH@0Kx20B9hB1=J147OusA<@=dO2%uG%cpbG#e7V7v!Zl z^_HQHXSy%WbH;(HnV-t%EUSSES}p~}3^G`w!U{Cq20R3Lk(VFz5(uZPQ2@4#zlUl@ zrH*YU^UFhs;TNnaue%}n_UuTFC>a07N*ikVj6N0#sUL!c8;EpMkS>#ON_*5ccjeGM2R z2`cfW^D`#1v&7uT#ks&XjN`YifASQtK&)X%+8kS4i|?Vih)krw;_3-1O$kQEbaY`1 z&8B$t(RzM^?=N9B}bM`P8W`3#JCt_U_zijjZ9FMo+nUZ^0w=`R=L;=C?-vph0w1%^p+ZW-@u4Rn7{kSJke*_=eg; zK`DFF#8~SKGh4@6jmY_wSMequbDB3ebAz7iysY|~cO~r~uRUoj%@1F^^?}`=eV~lXYuzZ?X^^L^uUuGh#6&j)41IDy4mU){!(qE73~H5hINn3ZCXnbmEK*<+pD zo%3!m77Q;0E}xn5aFEnCaAQoNJRJ4Rjs^wapQ3ASR1Z12lw7Wg(;;TR2MwQ}jS8`L# zH1uyim<@{afnl;-yF2UbY|aH^%q^I6MpYND06lyg{`Pp|kv|`dPuZhoDq&JO>f%SP z$7X0HEzcEs{<4J(EVv0KCdg#lD9xzeR5UkOE(8msg}ISgs7dI-#use2(F}qqsurB_ zIfvezoV70houkVS3m9b7M;|GFJP+PPOdx=PO}`lhEO?vq4O`SV2j_#~!MQ%SFld)W zc*=R^dtIs5@Sl(%k=>LD=1S{fmFT&UxnI(5`FpTg4MdEBjCu%Nb zpL3=_5)AtbL4c|-!IUOgP7_fz>lFNj(J_}D@gnlj4&Uw`JTG{i8m z6~QSQ<{1Z9gcs$h_mzj|+~NWR_*RE>6tGY%=G@>IiFP3feA`HTOtOZ({L^PH!)a!k zI#J`q;cXcKLZg{A?3L3j+8TH)+7*m1xMRZ$qpl|l#LCAbH|$wQk})^Z=qdJSgmhtq z^BZ%?D#F~h#MV>;R2ZG+GNa{yB?Y5F$?rR}Y9qUXDQbozgk%t8G!b}3IO|Cs19y~t z0hvovp^wF1EHp;)u?<+lM@1SQ)=XkfJX*)=%agwT0ZAID`SGoml{5B-}P8D;qSk=Z^EH4PA_B{N@s z;)drV=0*{uT*BU-Fn$u7;cA88g@^skppo%16>XeWdDoyfKJN?%K4NS*jldc3kS2>M z`37yF2hBzGU`Jfd=Of=a6Z#D1S`~RWYk* z5LbnA#)8Mttm7!YZGI3&<8DYT7(eAEuEto5fX^mw6&x(w49|^@v6L*P;)60S6T)LdQT}l01;Qt-1vOkE&|+R$ z%}tKND*8>kF+YejfjwC)$kI}eO*Q963rvaGDO5AI+)ysj0l({&i*tSB7?VPTkH_AM z;|b=AE@*rMfs8kbLdp&aCo=}C zTNuSD`PgI(SdS*Hp#iBg#@rq&%oCaoPGQIsBLcbL9sN}t4B;O`fL~~9I>_Y9$Jj6C zu{bw4>kgx@5HUB1GcF>*bOf=CHeD2;%?}O_&iBoZ6cj(VJ-@6N=x2SeFh4q4F8G6f zk1<7X#2{dt#Z6zZE)k1;U!y4!1(>)YV6y^G-*?M%&afZMV@&-38ONL@BcKcg|DN)_ z<%Lnu`YZ=tWjKRp(J(CqY0M3IK`-HqU5?pCjo{Wl&EB17#ZU&;nGnRd3}w!0uvrq0 zuUDjK2ZaUMUlS=A+KnK2jZb>-8-sUaXprI>;>s8`?9rGwZuxAtFg57o_ax=wUW$Jv zQ@AHD@s?Waqlo!TlngnyFR^8Q?=H{zW5u~mCg4y^0(bQGCUwOqy0^^IH|JfV=xBZr z-hd>rAhYsp$l6q*a}dPpk!rL_XdM2(-!zU+I6{YtMEy!z$Sdz;BXKHKD>Ykvjq5J=0z)Xe8HLBG~6SNH)4{ZfiMWJ z9Xi#!1S0U!#z6Q`Y%0vhB|OSl6%d3zZ)}_=`G0UEJ`HnV&-zpMlm{0Ek=79cK}5hz zlL4@i8X&L>)Q*leh!@p4UI~NX4=*b2%_FUlihWO5k>H0D9;+l4%{qIi8$lMZ#DhK) zi07#E$@K`)MvGVlZqRjuymtXXk&! ziEfRegWlL4)Y={!8!g%}Lz0PHqEJ(N>E%v+vb^AHwR|%61s|gs7~>()jjs3hJ50xI zD7zaOW??lzF{2mm8HDd^mhMg;GaR_CRnBryVfuur>h^ayJM4s1&vSQ87FU>?(M(*p%Q_V=e6$aQO zgl3^)YNEZ~P8fVc*_-h(FY|*9LMF6Ivxk55rapozY;}ye!wZ{0D49|%&=M_$#~aQ* z*-dx?8ECpziQ33WjJI_pzso^n2Fj03x%>OZ7jWkQ10O$J2AOl2@a>ePZo(vD$o1LytCXpN-jU@TCqEgsiS(QQ?@-q=`j~mYFMXCEg^wL zxN*lRXXnLLN6a@WWn86ETEug@cgsY!_Gks2mANfk84XV@^o~XR_?LfU<_nV> zaGTTvnKuEfcZUXzgss$3LcR;m z`My!@aZRxz}uiTiZFWgp+Mu&UG3T*$vTakEp(h8hS7Kr_*W`ToFnSJBVVESgJl#+cJq8sQoCSOq5Z6MR_M-D~a^3(u3~pxP;hKBBv74uG1chL*8Tf2U z2zguRu86#ds1qf2$I4(pQO(wZ)WU=akACKbp4P%h0{X~WBwk3quvUp~@g9xl{MOXG z?+*8j5B4aY7CU1Dh`^3`Q?@rYwF%qYN7yttM@DUENW8LDsFe58&cAXB>5T^Ga4J18 zqrIMrRLZx0BwO1Y*^-7hjqi*M26nWf>GDCZ=$8G=_ zg^_W8ZW9WEI~2f6S}^flSgpq~-E1bz!DtMci6fJ^fR*_Ar$fEeK#Z;|7Jgusvb36O(vqJM7` z%@iAD6ik%#;FB+8`9X~pQz$E6P@yW)DtH6g1Kt5|jF+m|{qaYMItTF-*b|pScA5-UgEw@!}p$?;ksEKkC7{EX?f);Y-@c4fw5|TE+0&KBt zw?VI8iW$g~Q+Tbyl}&4moq4pDnHl3O>WdKvcmw4_xOS17*1sIcTkL>!4jpctUTpl(doYX=XTnKwKm-30~{Q z4`d`~%pDg-`e(}y#zPYTiku9)W9+@LoefXho9|d~W^A)ROJc-iqCrV>!cxsuFV+#s zyCjoM@+x}923mm+P`>|%PDLT*{}@X6VR!;X`2_;HxlL&C2&p*!1X)61jGUTGoyd8Q ztlTEAu;AhbjjXke9$Zm8gF%LCY$?J0#9|~U*fl&%z71oL4S6FYZfyc=NlQQiwyDwV z86$v4*iEGbL>wR6g%&jzd}Pq&JgJ$98KXErE=`^fl8DPk4d-R65?H+OQ$`z-9R~&z zuTsGBAbsqQj1NZGa_W|?CM!kJ9y0VfG>vn?IoKlq8}~;F8H_A9GwTuulIC|HZhZNr zrg6H`Zwb$|n zW-2qcX{`r~bED&MCxGiQWerwO!q$LUp3a=GKC!QDZ)-q9`Px4}bE}U%lUAWEK&N5N zD)(ereN1*xT<9A^ZrYZK1(9ExTHu3J&Vsj%Ou`nlWw-wrB#bv<(CDl?jK6- zXf^D;^`&+V{vh2TkA|NnK+W=lT z!wmcZ{KBSyEjVNeEzmZTKZUrZTMIaK*6H*j? z=9cz#cl!`IJHmVdVu_}o0jW7PNIVT(^sj8PyVu7%7QSt)9(YrRKmC+lQwUAe$+|Oj zZ9uo(_?Fg{70U2s(=)>AHy8R47;VnOFhIND{$B6yvH4L19(#=;2&OW!f7C|&XurV5 z7kTAT4vENd@%MC3*PIt{XAXb;GDd+2WR8Hx*q9}M3In#_P~Cy@wwWuMV~Ex`CY)_) zS3A;j4nV_h$uvfVd%Y&HEqnFsOe1+n7qy~;3GSX_%jK$Qj8)+k51o`U6ZIDG*Cigk z_XS8NL@+5a!fZns>Fb4tR;A=0^y)K(gTxARBhp`VTZ(JqLvYBNdAseKBVy@7&+s6; zGJ##Zu>%gnU$Y;Ik;mY2h|XCgHZc}LLr1Rnk&iyFrodLbgBh^^^1>HvPXo>l1$w7P!A{+ z9U%zq+c;fCcM_!(e)W!o2{F<7-VY2W;K*O22r!4s&M;MwuVrfa#%@{BU z=f#$FpUWB&9SruMy7K{Rl*nVW_~gsjorpaxi-9pqIlu^&FiSocaq7bAk?w86gm8~M z>9F0P5L4W{y*ZylV4cLWQ>vsAuah)jRndqD3*_QJ@JnN|&MAc=I6^vwtKibM}o^E;#IPs9HK9S=GeY51U2S zh&UAK`^^rWW--f8eEInzLRtZS9TjqyxIkXztuTubPy3m?zQ;LbGw2~qlN`k)6w!q# zpUfIhFv_0NIG$2_ok@hpO0gfp)(cUKGfwv@1?MPb+#3QS)bhnUE$lD;4|^Q7836JI zX){`ni9@R}fkesRP5L$*Z^qe=_vOG~jC#&s315>+0s>w&Bh-mB9Wj<#=t}EJcB91` ze%JV2PAy~$akc5Zchu^f8nDMT;^jEK(drf!Hc5`zs7h6t6c5sNM)weaE{ve+qwM%G zb0LYTkVj=BnAge%2YDAP@S9|UD3VznBtSG={$4boVPgw*3Y~Z%b83JV?!g>xn`tx& zZbvw%Rj`O7O9bqSXy^4_@6A!coq;PHADYcZ+VVeR)?Zp0F)2>f*(oLG26-$RRKxk+ zC&o^z!5dg!RA8UPxY`P5{xvVc!rUB0oKosB&mMP|#^xEV;ZHCo+@*oP_K${S$X>h{M6=SL)onN%2Y5F_jp6>OGDr+U1~ zZ8)O!i1^_nD*r5hMqF|LDFkoa#Ag*||9LC2sNL0rTSY2r?tY;^A!$C{hQg7HCCC4OTkq4R*Z6XEsB1IP{= zk)(jEu>40NAEM*YpUBn-&{zs>2g!IOM1=81c#Rby2rcu<)F@{}7#Tub%pd73OQI~S zSn+0f!{J^pL&7r3F(+@zz$-*JT{EPIjj>41k}WI05%G>i97$>qS?gN9>*r1%$Tm3T zRt#YCKZzPDIP8J!)MIRV&DfmN;s-ELpl25Z!H5CthxI{*i=;f-tVMz`UuMDa5_hv0 zSkc`Sm&bd^4YUW7RL5&^^Iyw7%B^D}n16+PHi5JwS3(+Kz*SM1xPQ)v{aS$3#PFhR z#G4c&Q}*y6uThX}jT0WGnZJ=m&fp$n^Wof?Ic&F2B!~WE5 z<)>mYbR^(OCpV}0*H|z-O6{E1;E@OHfqke08G>B3@l)}BSiQwE;IXF^QN1nV{U2lz8_(O9 z#up_a1DPz_&keRBSY?EX1eKF9qamr#Hhejn#)4lQG(#ZLm^vA(_7TxHe(ceT@)Q=N zh)T#tXgzcwa7BgPX*n9+q#PWNu-G_F+zv}^PTRc;%$sjJc_kGNU=7_-V;YcGjbLFq zbgqbA6L1j>@S;;;O2T5+)7Te2u2?X80g^=A1>NF+~xkL2OjZ!#BFTwx1(A7SAom7y{ieqWm6C}Ip4f#c-to0%hl98(PsX7s{fybw|~_HL=|8PiLydZ9~xD~=iDceE+_;`?z~pwYIw zA{U8*0i74rF5qjm^*#lL)gM-bz^Onx28U{nBrrN(n#qinXB}b(*|t`#VuV5!Wf;|h zD2L-?X7Ax7=0-`iMtJRjqauuN;x-kyVLMO|?MxxeyynCRNq<)MN<1uOj6KP(*>%p5L#Mh;U_ zKrAPDkR?sShxp83_lP&GHx|6zyjaE#(iCF3Kvo51tUfDaj`rOaZn1%uBCs5}vm@-d zQlM1!QM^5#MRv$be?bF1C7y4abP49-R!kI&i={MC9UT%Q!S5={VU^(c0mZVzJ);~0 z@$R6(4*{BxRvwKi?}W&J;1!<05F{s2js}LDeCo<3o{nj<;f_=+xqbQENB;WsntU3$ z0Xm5xK{MhQ#-#X>-8$eAd`!X7ITMGmx1t3{v%pTQp*?y(m_q1@j`$C2RMlcC?%2S7 zUR%L>7Xwb2g242ovk-syQy2s}NuA(nJ+yTh3k1K=%$e~)&MQctKP%5v$e6W;d4Z5) zxxyLkYA{<~Y#E#<0A$iEPBC_3CRg+Q$7E4FW!1wGaV~3@F%4uEw0U~z3y5d6X~{3f zYWEbbW~qSj#Ix4!sKVP6%^sx*W7=KN=m7M}v5k;nJw%uM#t9ZS%}n4&`3o0W@Io7?id|v@O2j0qPFNF_LN5P{+3Iw6$er3DsLyI>u{N4q>*u3d;F=t(CCY={~g0}ViIIfE+OQ- zGp&anVP%6C0Wjv=GpE#im|r~7OKnpD0f}B|ODCi;VK^-3MM{z`-a8iV0-9%*+Qc-p zIQ*TDfgsNFSv~E%F!vO;>WyF7vL>dKs1q4V6hERNapVnUr9orLgwdpQhoPvPN7E$= znIg4;Haas1EmFAk-qTSBVgVUEbk2A|Dz%?lf}8XwQPk_RtTY?x?TtWIQDG7rc)T7a zZ732cSj;;f89oE7G-(a}uuSC73ZU9i5|a-80`4jr<{x6xVeGo*wg3z*i4evN* zibv*5mNP>(*mn(5#$gh>V^c(`OiK+|p#MYK+rY@%8G zR*D@g*$%=$Gqakt*NH=RWyy#T8q1MF;8GGhFF<=JJFD4PCQfZRHiXg^%P$=F9B4>L zDTkh3EXTftHnesixA3_=r%4FCJ*TwD0eaH*-pl>|XIC!?;e2{OcjD}hc4nTJ|MP$S zJ^$w!F{JWQWcffe+kqbr@mded=L_qu2w^BjL`HSN1+IvW_ftef@nB3I2$UWWy|T!Z z@P#0f;AI4y%w1vZXA{-ct{CPcv&$lssZ+VE#v{bX1`@0@-qGElOF=2IsSTS%Iy$Lh4mHt{=ygv&!v%&bWR&l8fOSlazVWQsRT z3-c>bd%Q34d>0g>+_UCC(8;_`$00l}5}FmsibSVzAxHHr6C)$RA_Z}(;fiLV2kpvf zbe#x*ltF+piFZ+%;`b$$i_+EU5~wSpCo2m25^rb$?-Cn(QLE+C|x(Q2ZqI z@=p%rcYf_b!5g6-3Q|-G!{15-5Xzsi#is0v{OJbfP2o6`QEe>ns&E_pY3(QE*(^dn z<(`nrMF?BfqgN2M?_<-Mq9(GG`|K1xnq@0|$#& zm=J)%g;yEjVEV@}2QzuBMeAVxSsE!Knp8pbobZUdf;n0iQ7OceOYJ^zOMUO}(QCw1 zL46^Bc$HvykU(}(5o9L;0eOlgLV`BYgrskHp<*_y&ilv&07^fm$N*KF4H>Bg9!Zec zL96IU9s*4Sy~q9H`2+`|-YeINf`IKX=dvoQJ^r%0ibF`oxKcmiF60qQophaXqw9iF zN{X6+H;*nBS3;6;Ttid?cgV3H=I2*nuql#L837_bVb5gvCE|PX>u(m`L+i;9(1sQR zNYq`|BS?=)1)>KElZBM@D=AwVphXhxt%vZ6OITe}&@s89cI2v-msQc20&K)AQ-;`d zV17KA1#3?2+V3CXMygC$S-v>hHRq!h^rhhnu+c5~6Oh$Nd>l!(0(FR33fN5&GKN#= zBlFk^<0TZL9MScJ{CQp0Iv|?K`V-in-pe7?|NFlex{J0I8gOe8>H7kE)PbLp-qT>F zVL-Z*p>Gp54=~g(^W+cXvI5KEX^9G;xeQjT0vS~S16UD+t$}^bqNH}yNXXNoA7Rzs zKdseaJmwZ;2og%rHtP3N`-OV&wJU42>q>+M>LzWklN9NskEw%%d9qdyFamEFA~m?9 zb&Je2J)Gcc%r!xO$ffEook-|{ z8Vn>nXBGEN337lFAgN}UZ(%zrK+G&Cgu=$7ut)@96bAA%%@D4W1I~NlwAhw~BjBVJ z+=pyA5@Wo%n;K=n8?;#NtMj(8XAtz_OcGWy>QG#8kc8mvdmwnkd=3B$jt2^h)ob8p z#f7#fH9zw!%W6(CUlPpMPYEV@R&t0inIdQK63r4NNje*xOEQG;7l;A!C^~dme=p(j z69#E430I6+UbO?LM8soCPXFwkDd|S*Sb+aU$I4ae6)zmM3?1A4c%r@?fN0bg8oqG? znCZlZLCGSkFR}sGo)Dn7J|5+vd&?iDj+StPsXg^Bf2rQ2TGj&y&YpA^A}2>4BIDQ4 zA$bs~rz;U7I%~;7IduY#Ze6D6x}N(g;07XNk*?5rq96MzF6jbWB{=`~FTTFo1X*S$ zR~cV%21QS_I?WiiDJiHmLJ)nqC_;3?EsDm32VsO(!^YWMfzc)R3p!(KM8L%#OE^BJ zaY^OB|K}|#C!a0ek{*ZbArkLu$ZRj_yY2pqD&oO9@u$q6u<&&dLG2jWObpu6B{a2F zyOv;>Q4|eLyWRLO@B~_%i(=%GkH1{KoVS*07FwsTZ<$1@ZjG_9m>jIjgOtwt!9l`6 zZ1lh&c2zpmVgS(9DWXM^+*s9zi9ObzBoD~LQf<=VsShuscFS*C9OE=)L2kqZ%^-@o zJx-F$kGC_W(CnLG?2coiViOsqT&%!Ui>J9qs4RvFkgPROv<*^T*uh>;3r8yo7uAt) zR$8=mGQ@Bdu04a@YOj^4klgcQab8s(SBV&nv0lPTm^In2;AFx}QQwIx-mU|B%vbso z=cM&Zi=ER+r8YbFA-Zg4kR;Ry{6n2oDiTQRrL&z>OR`KiX%tbnsI~?Fpc74xnPdT( zY~OhmlKMAeB7))$fgfyIGb3x+tc1-CsfH@A;azA-`xBuhp42JJH# zC~2cenv?megK}kQS>F_9%MqCtg(-*hj|2h?^a?@i2?Lcl07)8i`BKOqU>Y}4zRA9v7!wTMEStpAVX3-qUA#@O5--3Nm3jHz_gDN&RuMnp(DI+Of zEdFnvNKThN#Lo(ou{5;0AyjFNK6f~bQJrm0!RQ3NBSBwC&nU}*Z9#G&F8RI0e55SV zRmCVW(#Z|54kq?3_qG36_>#nX6d_HaHoAxQOXlt5I2i@ zftp5f?Q7!Nr|#Cz&%#Qdo^PI}!lUB8|NrK=%ok#Lqy)S_*_d`02lSY?(l|6rL!auq=V} zOD!{sg@#|H-sC~JBNhmEzd_EEEQiEv5|!9)6Aa9FUN5gPARyuym`2*kXG?_hDuQ+n3sBwT8^|s&xp*uggcQobd^s~g2Kb^VFK#uRJiz@Y{uw=1bE=>q5g$}}bo9@@K1 z{V*`C$3$b@dM6u$E*wjP$S$Em&xAi)cC*bG$5@Mn3c(^Cc0|ZrJz15Ln79_X3HX7C zhNfAV3!;x`bc;u|V791g{%e)jk#vbmcQxpq+)R{)W=$Gaj}p-TVa57&Na~7Wr56ih zgiMJ2CMVNj<>!?6n=MMCz7rk!uHSrJb!}n_jDS@{66=t(-9M(d3G5`>d64=40h9>I zcVb3`4HLu5ppl#&0gsXj$$TCF0-Uv^YAE$*FX~CllaGW;C7|_F32KtDtdRJNNp(n|xW(96f^SLmLq_YEYk5leNzlzH1HTGL zPn0`jv3Pv0xy-#;U>&I{8RW!xw%UfI5<)>IHLIfi$2YhG)FmseX^XUkgJ=yRDj{RX zW;|wMF{a2x{j`}|Zkn$wH^BTLU62FxpHigl3FYM{f`VgI);Q76b`=u%wyJBF#-K(> zJ4T5ca0f74AOH+3nsKSvd;Xcd^Imr({iGTfN{UY7nA*^#SCJrgBXVcL;z=4 z87{dC4NxlC7QtAk59!P^+fW<;|0FMyd?b{)=%byyGoflB6VZG0U#vIgZ6+9$szueWXMa}&vCF&Sxd@guD0Sy6v+G+$_sV#jkvXe zTG80)147G$Trx^@Qd*ikN{lLqm23_%Fu-E+d z3#~$l`e4+@!q7nhBAH>rorD;zE`p~EXOW|##630132Cp%kp@XGKWG2a&(XCV#DPvr zM1nzpER0v4hH`+z5G*mGPvF@I_Kg1qNt0++N~O~WlPOl3IY?|H5u9kJWm(XlH;|DcB? zVTs{h7@ou#zvtC%2iLKkhf!+lmzhuP30Sbxh`X0ND&yCBfp$iCq0$a_7>A z1X$7*G14wR8%ha3iH0UM>ehaR^s}~?sgnVEkK#dj9Ct;+RFwhPD9u5W7j0kdx*wv=D|tVqgzEtv+&iy9szU zD^WSELU|rJk$h3{?hG7C$-16Zd72KHl7p_?`_M91EBP@H8^e`+61JjulL(?+EtB1O zy_3|)ZV?pnUK$dawuuT=0gzco%rDH^u)$XpbwhL%#6qj-%RNQob?Si^MTj94Kuh8o z=t_xV4U_iBTJ48rPAFzV4rC6VMIxnEEukJaVSpsW#kCbNQd0_rCbnXspVa#3s%4cX zLK=s%H$$u1SnecFI}YvKgl)xzMaXm@BZ#tka!ku!nliL=vcYO0Mvkfeif{qRlI}Dy5p+}Wm-d) zAc%+lfch4W#Cur=*HR-YMcnj6ez{F#Kqgk0a1c-&j0bK7K%`lswUZ8M7BDf+XQbFj zLy_=9MC|Ghzbv;Cq57KEJsVeS6vXUppTIb)k7=ZIo}+>o;6DeAJVkG3x&J7_ay;>EG~ zE>?6wzredr#9~~mAn{?RjwC7A^R;I7LJj_0I9efTdC|-ga>L06B9x$9VuG|fdwJu5 znrYd$gdP#+qLuisRS3F+?FcYa}6jR{XL z!l#ggJ|whk_FF#Peeu@qz;E*^RsFKzL7#rqnENfqb6;$1>{2}d1 z{3t0w!jEL;q(8|imBf2eFJZYw=bf8gIR4Ahq4pudnN%3ca0!$IP$LB<%q=&e6RZO) zKxSbuvH@NJjKX~_;>!)vBFLb-gl%X93=Q0b)>!J-*T=4Sy_wO%#J~ke0?Q&Frj6nY zAs{IIwgfOjBt^--yRg5c?_gn)+@bb$QGDdtybuubZJgY=TfepzUJ>+zqEda zrWm)DU6pEkWC5Wt25?@Y;#!X~(|DTsYj}ug72+a(353`lvjmwEjCDLB>cDj(aYBwH zy5sxSm#$b&UPf{`d$t{*}ukRpHncZOek*?#2v?fQpZw_)hMkXz0gI6xNPb#^y^Cq!*RU1m{}B5wSx*W0wDj|un2$W;*$mFTQpsO-7p zbV5}Y9~@K1Bng-b6Hi43468!`hnfc~XJJDG`!771kn}gZrC;qMlL~0)B2Do=6N*wF z+|zna9L+V1BmE%bhbg#O)(Jpy3Z+32RiZQ`lTd<0P!@*MO)xtKr(Fwdd$9X;u(+%t zZVhD1fJkbA__p*k;X8p>a?`wpU|)lcs+dqg>m}=l7ZeTG`6p}25Mp{tw1cNgAxUpr zHQ&=rFCS2Tj5O&ioh}xq=z_FSI7pf*b`!TJkH&s(`Z%kZi2^Ac)E$Nu3b)EcHNdOv znN5njImj;S5|fK*Sil}`{AP=XliQ{Gwi?!4ncbi;5*`}VEj$3n)~OGU&G#22qn18k zkrNzdu|~82Dg#d&j}wK&UY{=G)JW(HlgV-6^UDI7<=Al&L5XM@(uIUJ)JfL6pnev< zu2_8(D*H^fZ4Or*JTdMdYnoZ5&63Nzf~;Jg&(q}g@uLc_tX?>lag;`c+u(QHl?c?jeyCm=nzwr&i zDDsSPVjvbgbjg{ewhe=Q>;^z?(q+;a`mL^uQjY2keUQ{bp>6ATeyr~YM0{O?;Q3!e)rBH?3xgqPbTOS$AC zt3FwbBM~>NED~%Yd9<#JHzxa^$+*y$w*73Ed+@(3o84U|qzUgJeV`o+e4p2Oo&-d( z)nx79h{5Iy-Amk(#4}(Lfi3!gIW}Wu8Yr=a=c#di%g5UFzV-{EN{67yB3Veza{yZj z0l^|%uq?~!bTZS4gSJ#-GR7o$GF@xrBS9DzZ=bimym-F+ zgce|a+@+ty6L#tYgD(B&*9G!}CF*&dZn81BjM-Aj=&E-tJ-+-*)Hx+D-77jI+5lh4 z?n&n-=MWg24!`!O zC;a@HyXO0r$DT{KixFk;q{w#2jy-|K88$bLR%pi*w=PhIrbBcWt`-8cf0m-=AOER* z{oH~4i&Mitu>gE85{+?0?+Qo*6onpLBs0yBg%q$)zPlUSzP!xGA9-WJ6p^H8s#q+a z$7Es*%hD=+sTi>avNRg~yi6#$KL7aW(p}5WesL$r-AW=<<~;GJq!-7QH2@QaKT=Fm zkQPYWD)vhsd}DqWCKMt;jAa~?%*f=Y7^7tr7q-dki2+*H)K{0CFP(~75w8s6O2Lao zBc~D+;k%%S!BLn3OWdWzHBO!uO`r4-iEe+dcnwo&*FC>f&9XDN8>J@$f+3dA)-|}C z0!g>!bq%~~hp~}1wJ%C4yBHRbM^;=gc4RLsAE3`|e+@4z)&{{unTX?wq{+`%LM7T! z<~vx{D*nKNw4&*0L=iYuX(YMx+~P6+XMeGH{+g2nnV|^5wA#d@7-=s4YrhbY70aTB z7AY&rfu0*62>iUH0^zYwe)u(IFZ_|jt2`tYM#Lrg*W!T$n1C$I2x1c3U758866S;(x?5Kbxy-0a zLJ_Y^BFk9F4pj{F>rzdh`=>Wl5F){b7-B zzLy>I&;M}QU&~IJHKr0NU8vd?cb=7jkz}%D4>Z~5f%#>u9|z$9b_!LicngQaMrUx% zVu648U*4ExEj`LO(9i?{X?2DH6VHr2HII?)hab0S(#2blV6%~Uhl}OI74N>Z?60NM zHgW>{Cg4Mh$=WTJ8X`DRV#Lj$pQsL!o)$7?lQNFsOygyf7YzVCtMWS1lXSOL!;Syx zjY9-zCq9x$4X1F=LL`6&MPIYqk1Ro(WphoU)&%%ycN{cQQs|Rqk5cziN9f|z-OK-6 zJQq-tLplg034+_*qv2RMCK2(`nE)Z_PB^C3dNF;o=nOm#avc_Us8!@&er?5K*~?DE zPNM``Lv~#J#^fSQfnG&CI%hWw2n)`_oQp()DPfpI-4dDzziW763#HDhU!Xp41u>zC zqHk-2#QB6N+`262=tgft)^<5k1>yttN6L00NUx#W9e>J8C*R%^^eEB~5~XrIfz@yHxUYseT9ni}nv;?dMWv#=eJ!GN?a1BEA;0iGok zOYn;2gt_pC>E(YeoVQVPxEV2}8|^CKPJw!hOgMFm>Y0^REby0%hh&F{hJ!_xAAeq0 z{@3Dp5*rE`1FhY57T#%t+ZN!FJD?lcW#~HHBmPWp9v$OW0Vk zYjRoqtmWlsUmtv9O@eGEc1_5h5GHvlkLnWsz*Yg^k?fab;9(9HL|@h{OZ16S<32Hd zv=LTctaJWbpItm(euC>MVu2nJE0gHV1%)T1#)*!YYukVvBz{EeQEC9OfvM#yIa^-j zJx7DUky*@ej}vl!-HOAKSErYY}opLkw#Y?=CA(`?|d>UvlY! z)FV0;`ca_>d|S{3o5gE7)}Lp0XZBH*$R>G=YEUKMd@aq@3Mv;1od4o~T|8fY(nd(= zjz}|fT&PF1IM6T4J^|H4pET%ct0t@pgVQFQsITS6pY|{RYw?_V=uuL;en4nI_+z^Ds8qux>8w;{4wzX?2N_=>5YQMq4L3X1nf%fwr`1LTIHk&CL1tZqH zjPpr2M_CUmKYcRlIqP_kG(x@#&$u8v@!xDSf&}diw~YsEyu~z$6SDspbMfdS?vU+M znY-vo$C12y8I4j(%Tx(vaP@$mDe=nrD6jX{csGgW8<~^H9jvjUm)CbGFD@_x zQH+J1G3paV4+n0!^V&pLqP2WoCnFT1ViAG~ZA0 zm%PweoPq^}LLQ5s#Zf2OZopB^-8gk43dgVgf{{Me}BKr#h*5yUN5!JZA-dB}*ork&qnjc?x|Z8NWXc|+TEr)F#ROf}IW z{>mBO;1=H&Vr6U;1vPjXlLiH~$S*k*A6W9v_CP;LH9$I<6uPY%Pw6TSI!fFqG+^2+ zrl#~sErWc-{y>+P=jB?wz+tY-x6%iHANbuirPA1>4k`_l7V;W&5;o*7UXD(s8QZqA zX>ZEB!pnGioG~_Pk@C#2iXtgwYi`a;2Vb;Ms}C6}W7%U~CgnlEYO!f#jDldHC1<1& zYm=+;80tRrZpDtqnN_#G+ z3e59l-K@8~p_yV+kF!@4My##M*DuDZX{O@IQl$~tkf55HC`=E zrca_xLWS;Wro8X~5shy-Yygcm4S#a_The1RTyjjrk#aPX7UT@A8B!3MrZ-4jyNqXO zqv;?DGG+>rS3NC&Mp4AJGcx?5v0^9iG_3#&+jL*k6x?;j*=9&FpPrWc8Q7EtZS=ww zoW*GOdMO3#R!j6b)}m;}6Xr4^8$)JzTD8m5Ocnc=D<0-bjApM}hO3m1K@tG#id+zE1gR8~aPK{_5dA8g_)PhKWMrH`I(}({+>tdI%e+-SGkRE+@)g6%aR@oMwqdTP!(YOklW?(S26-)XSHU{W%H6iej$a>^&*uirL@9GqY##mESl%1 zXfs2Ft;C*Mz2-BPHZuRz{Za~IF%r!pD@aBd(j8kqq_pIaVJ@Yof-p4494m;*rfrOv zaHSU5+!RjDSXJAa3!{)>#eQiK9G#{$5Gd9%oznkYsZ&xOv>Q=j=-f#2s>J}h+3bqk zq6cFhAR1CL_hHA-*cm6aO}9O->ZnX;Qoj|#ESZMR4kcw%*KBSVhD2P2fRv0%^W%Qo zqg`H@G3F2a28|Fs$VFi@+9VHpUP40O3KNz^HFA^gl_}EpbyInntdPn#{J_W%|M>lVSkypfVes zFp>rzA&nP}g}c|Jfr;_UunkRGl$t@4k^?2Dlynki^X~m1;v_tt$)+=Qx?l?HX&VRZ;NiYEeVuX0GrUOgRu2`D6!a`Q`?vFjmpj zeseXl9!(m-DL4qPC}U&}TWjYWv60nMsLo+s8Sj%QD4Hlo!4S|sIJsSqaSi7JJR}1?P91=J3h*$kDT% zN4LCZs%+J6$d0WYz3Dy8xlNT(yJ=sMF)ozMXR=T9n&wsMcw@~&$Epw(u+wNNc*VAi zLQ1Gt5AIgEvo@RVz;)rJk79HRR;^LcX<9M*K?edn(&J@qJ7?R5pRK9PNRPOL)l!m` zoypn59-U7`(Ye`Eyv8Z)bW+)W=WJau8H~OoK018l)Q*$Qp*!x*RK|9fjq!rfZ5C_Y zTg@kq+S`H^=Sw4Q7zU@T?VV%AW>~_QluJ-%T+zgvwv@sxkJ(mO80?I^do6hFbGa4O z0W(I?Ib(QBcTbk|=131ggKel?oIIW~~JtaSN&Gc{k$Xm?|r)%%tRGY4CbycyvbBkJI?TfRswdQR*MlXAM%)C0Po;<0da>*K= zK7X5QMc-Oeu#M6Cy%DQ8QO=cihvj(Wbn~_?_Z}JkB(FXj{_mTnbl_>*lAYpo}~W{qadB_G{?-&+G#VZ$JLH%@w|n5R-JCHG2-(huBwLRl~oT- zp?N>JLOYeVZVhUGsH|I6Z9+ZbR6}*}Lo2*O$ByZ0zlt*E@bsLgs*@^dTrEr*R#;g@ zHp(fjyd`O#wDR__T8zu7C}vxk?A3a;11g%;>FQ{qHeH=i^wD-}&yJon*K}rg(5kGt z;#|R@gDab3f9GlEe~nru=yS<3&}+}CUFsBROl3RAhcQnMv~lpetGrFamd4}S#%zuE zsab~ofbIuEhJw#@Y<(<@A&Kl4TQ`1?Swi&wY zuZ3E+q90RF z9cV{$My3{OW}vC8?oFqKOk4z))mb zG#H1q<78EX(zGYCT_hRlnEpAweZ)sI6QQy zp#`T>)wsM88aUP6T6LsY4UxR>xT)$E&6?J>2Itf8n+rG16V0#k)3$jauoxD*h{x_< z>`q|{ZYSjNv~#d(17ph-&3~-qk2P3#zwUs&-pQu@v0gj&^#gi#NN3hq4dNPJK6sbJ5* zcgJ4cxBG+R(Id?}ipO)g@BYSrKL4aU9({4>y=$+t)*SfJ;8Vd%aQ3UeofL8~c=aJE z8?@!PmHY1Ir_LX5H-+ywX;R}-s|9<#c2n-#_-`zwc+yLnQo89C&yoI=-sOGv zS8bCJnM2(7%*w#?S0bLehkuI$BtB3kwE1r&ZpxP(5?gM+!X!jE5@p`=WTXZBK0?fH zuQcxm(W^LPQ4^b@HAfzb%43z2JZ=QxWND-)oaDV2cb8>fC@nZQcWyiknxWzE+4P3f zpVFrP&&T|`YvNYMW;6~w6%q|8Ty`96Vh4YVZkLUq(1Bw`NBo^d4{tTjR?_2DH_!^t zSV2gn6UHHKVRg(W`o;5h!r&&y#OWoJ!!M4B$Bht4gI*=#ivl@E`03NSB3bX!P2Z$; zDmFsxq@S+#nLe?%L?3=ioA6WUSOTe&;?)v3;%7$4oC+e1ug0qQ|2YR@O7SEiI`$ta$sQI8Xk=79yd7V|J$U8LS0M+HjAswW~u2xVW z>)~VVkg8iAR?JDoWx_W9a$jc=%D5`)yDS@Qx^CoarClW@7X?dDnKVcn!(8O;megh3 z`n4;!28^vQf=>8U4j5cg2*hwwZc0(0vl)ws zh?G3RN8%4$>aMZ%Q7yJ2!omnnrcEHmXKb}SDCt(roR79G&_Bcz(jyInWHf18W;m$rY@a++4z4Q_t0xY9Y~f-=P- z^3}Co=4H3$IfZk@?dG&KQW*ljTNO5~w13VbB>T&~SJZWwSp#^Km2R;HwCUOTARRHu zqFpQe1E|sOrvYJ_ajgPN@>5{utrV)ItFgPJ!RPx+p_6vCdg%yRY4zQVT&A=;NH~yT zB??D>X#2-Y+l=|I{{u`nPJ9N-GW;R89<~*TiRYcMG@4Rl49zqlXI>{r$UcU2-0PVm zW5Al3Qb;WtbPl)a%o~`O)jaEnnv*8s4oOogH5Lt_K{-vh6~wb4g=T)D{vYnK zVpJo4=36Zi7#9RW;zSw?l%Q8*7}A;5G)BppYUl+XEyX$_1e1C#_8B z?gkeE3gEzt`1*rkX;@i#U@zH;EXu1$htAv0MlAps;Nk2_%MS=R^W)KEI^#TMg|TB# z)ez{201gNY8@SDghiVdz&6f$O7)snLmx65 zIvFz>>kLdcNPR#bWGwWz*t!W}@fGb%aG9-b!|^ezDx&~Unv9tQ;-dFtScfq zx1vsCXvXX?W;2yHXG*=s6ca7MdRODUPU(=o76TPDjht<`{>q>TENJA?`=4vP7#YQN zfDiE*%Z=d{Kh^xniBDdvwXtglBom&=2dUz{MP>qn&S4MDky|+tf)M9$g>cjGV^89ZRsN#5-chVM z2BEAQcXa;pIGywuEto7m!+Z;;D0w!g4w)^p(~{pEW7br9y}CK=r&&cYx$MO zJndn|&STCt&g*MkS3d+7fI##RD#v+O?+s$pb5-MsqOO4JJRB}%xjApR0pDkydvImO za9Bj|9b(jINJ!sJ$MkhN`wkuSDU$}_^(!%`Y?m@U(_qR2Z5Bp>efejA$V?VK@%leI z=!y(KA~2#cv47UB8-tqb8{49@76wFh8#kofT|>+=o30g`&&6~0%_=H}7w%etLR31+ z%=FEoIfGt^EC>lcX4ksx{sOUj{ zpcwBm!!^ZBka7WfbFM;-Xsx`IJd=1aw$I2^Vw7*>SO<2y?~3wcUKdCohBV(VueR$q zhotklhgff3kIW*>&0LqyT5T2csz)}j^e-cFV+tm+FpB3ug*u|4K{}lt4Enbl)aT6Y zU(pjA+9BQ{H?(3XFnW#P+99A5-xE%7%0{ucO&N#+N#)&V-Mpc+eb#S3fU2=%$|lSQ zI*mpUVu7My2oGE98`^fAD@?pt+IsVhlQ&^?ZI^jQX>nagJLl5Ahbno@sk}y{K4peUVhugTMzep?{75E_1>($IcMA3 zH*7v|XaCxo7Yto==j>kd$j0&aH|9Q2da9@2a-BP8EVXTe^|1A{dcvDovo*3lF#N#- z_w_vH{P2?JTs!36xnkbgUlXlrvHXo*OBbTt60Zop_!d4k8j`bwr$q?Dvv%_xzBmNGN&A~IO<-! zdt9yQ>Fe*jRt+7td+dK#JY2lth_yB9Ic#@d^we|i(|y~Y0G!$DO}qWhEdx{EF5c%n z=gru+4D7q}L)|mKdcf^}$3Ayo=|?vkYvRd{XgmN}4ku?!%M7|yV8$x2BNbfPi!? zkAUX<5$`%4sBAmVmix~I+$LaEv2 zUxyM=o%-KHZXfIG<<7Yue9C=T9%#JOs8!0JQa}5<%WfU7o$FuY+|mU!b{eRlSv+nY z*fCvyQSGUuudA(bV%2%+h?D(ZjTLV;J0;BU<{xEl>WCl7m1}IvZT6fsAMQW@?t#vW z#XZ|^Iaym{{a_@#H#VlNeY2bXFQp=?_^a#H=BINH{Ip*+pRpeJa{m)f?bO!YYs}8! zS8v>XyxSYHqnDNW?sDHNM=bNIP2GE(u@9+Z zK(&pF2WlVdJ??^;JPBcNw*7bq&B!a;_O~G7&{ldl{?0^sD07%m43Hs-clfG?*40K zAG*S4ltU-}kR^9!Ifk2t!|Pl(ob=enuDp^gE3eNTo-Uts`(9!1W>o}6Z4^6e6O$+1 z&EHow*KMXfb@0Qh${S;!in99o?K&;dVi}YsJL<&QJ4`D+qQysVH#@x=f91y~2FkV+KC#w%1%jn`BdtdB!AK{X zzbbuP2{tx=-A68jwNS;k*k$0QFh>BDF2}QGIb|IPz|UepE+nY=9`l8u7V=*Az|M@= z)Wl$;P?}RT6v|Ghbyb$=BJ&>ouTins>TZ7OtHVYQBFO+3DmBPesD%< z=mD6W<|ZEwQwMf+x(vWPops_%U0vrdKW3Ik%;=U}83`E4zQxqb!*^Y0TBEgobug-( z&qD3dcjvTCLhg<4RMvsoL}8EfQF~;fyEGPNZ?N`FRqs;OX7)*I*34cs8x7_UHtU7o zB%iS9ct&|FEcV?=)2Vmkz#~PiTZgu0bp9Ey55T`fZ_gduFjWg(_BAtIV~rEe|8W^_ zwK=xk=A~c3y-vE^90p69J~TuxfWD_6A;01L_SC)h$mk}0>$sVXf}Q1enpSz|gV!l1 zJ3P>xZ{JN)Oy$2vMM*;c_iZsvyX>OVMjpS{yXlqXPxj|`SekGj>n-|AlH zqI0@WcISp~?C-o&{a&-!xyR`|;yUHq!fy9bJE+$Vlp8DjsTFlH%ER7R_CC45wCe5C z#5ah8_Lh(R5()H?=A7iyF8b-b2@083{xh-N8JVkfKM2x=t&yHJ^|^9Xa!fs{0U_F{ zGY5jqSYV%FhB0GbcAyrUU9&DlOa;VG7vHw>5vQ4r^sD3dDa#9b8>KF*Q5q?o84SW+ z-Jfw;2y4Xac9XVio%y8X5`bhLc(g0?%G|ZPo+((t-9cGD5RBNX348`~750lgR3hG} z3up*FnZ}rUz?!(rRlGMp>JIE!(RL>X@|k-kuB)1ZT|HM$>}t*CJaa_dPzj?uqX_F6 z9opTevw+*$o+cNSzw3D74YJJPT)^I1Ue_z{IV|wz zHQ`H*JR{Gkew2{`+ZKO3REPlDp>K+>hQybj(xxTS^IE_CT(Y0V!! z|D-2iYw6co2Xk|{lesrFdVCtOQ~v4 z7-zQFVUE9(Ilro#2|+CdyaeLx34Nv=Gh4#SO0BTccdiJ|Q9@{sRD!U4TV-4j(DHCa zMZgW!${CCN7%yk9bVAMl>5qSlz~ko*LB88ZuyFEk`2Njn&P2Hs*+Wj4O=a%4OX))Z z1u3w-qSAN4_da6cRSRYGbaQ37G;-3)mV(`;*=3C#jwbbWrm~sM)$HnX!OPakk?Pra z*KDWz%Po(2L{}t#YTHeByg|S#xtf+z#d}?Hx$3VBf8RG#M62{$ zD;Vp+?FjzsX4>kwRnA(W$lWpb7r-&s}{y~wM3GhDfkfKa$4&$D<5V5D%0`7MV=YV zn2tGNImP;%ITh%pGtyZa4{QR>%tmjU8d!U~(PM#WG3_`p9;vlDbN5=&i`OcpcUvWP zz3APoKsW{l4*vO@hk$-*c*go+!(5q3PwA_z3Tc+jqr`}3yctrj&9YTVyFef5$bU~G zasmQP_=hZxv}T&n?_3a)EVbQC14|c8uom{Vw$i{7nbO!)oZDv9Yo+rSH+GyW_9`O= zq_kK-qlX+p&q=G~+_-<$8gKPQH=#_(D`-yK@VkzGdG1+j2YD+&HEvE?b+b~i{*!HV zmM)9qLTp6-U@^{Yt4!C1eMwE$qi~8Stun5vAU$Smhrj3LHWJr#1!H68Q~n>R;B9tJ znK8SXY}bbl7l+RF*G;1s9|^x#>)B@hnRSab`WyBRZ=cm0HA-WR^;WsmKX6RB!JTfc zlsn?NmBD>I9$9B3nKes?6{t@2rqC%@!c=U|S>3_5k2!h>*g?88jy%$L%j)=KY{ye( zg{cJoH0%AyOt|)9R0>Mj`-|tZ9|(flr#@Zk-Q#_;uUv_P)B!V?GxICfsh;oj@+Qq8 z&zcV06>B#XT`N2GRJ>K~Duv$+Cd?b$$Xu~)&f66f_jRv#oaWgc7c^@-pzuo#^Pk=~ zr)jG}M&KXx7mS1kGb?V8wvi>?0htPd$XdTT^3%L#)6N4I0c&g5Ho)#Xj8F^qH-c#c zY|;kTXet9~Qo5FtyuL!k-s`5O0wZUD^b1Pqtc8IXwZQ+$H6H^U)xu^X^z@1_#wW_9{Efm!@^U0aIJ#xgzs| zRLcLF&tJ@Rq)jwp%FdgT2Ipr(S`WS#`auP#2aH4qii%<{0Av?TB_LBgOhFk9CQx~Hcju=x9s67)nde$SL3-hzecXe<)CyMGippc%&jnGkS z0hMOK;1r|*$ucu2oinQstu_Ho*&2jg%)p%W`|U107@BdMM@vjV^y$mH56Eteb9L9S>*{o+R{BUtsgpRX6X<6x9Djx+S#S4`?gYIYsxYOqiafhw2UP=KW z{>kCYoS99>OevEXz25{ZbK!A&-gK#t?)j@R1>^zoeEM~Ww+!&m2YbHKhKU8s!ptXC&iXw8zDw!7R?6m0ZB5*w!eLMhVS zoMCzMoi`jZcSVv<2Iz()flhYmBbt_{F{!D@+#Q5@y_wo?rg)pW#!Kcz!|QpgXlPek zw#;9Y`<*xd+eR#`0RGF5o50=QRYp+-T|nI92j;N84c*tT_KJlWCfd+Y0DjB}c)>mI zzg+Xrl3O}fynzK+x{9n`KuT~@nMDWlYv}8oXbyn2&phI3XAm(G>qt~9BI(Q&Fq?qX z?}7#Z>LZ6?dMFfWE*U8Sct7dS`blOfG&h^lI`-fv)1Y0u2f@p=AARi#SL=<8*xPP( zVC5aafXYpk%H_L)tuy}nqHKj@Bh#Zy?i>59z*!YrFUH!0s0csSqq@NNO)M>gRc-is zxXaWYu`^d_DB2>g1D=>-V&L9uUn-f8d6-QQ-vA$kxs_wM?ezGhb6viA7za@hvF0L^2KYYGr!%`0tjY%!{ZLkT6RL-S1?o68 z!)upwkq#;J@D^p8R|YVf<>=e2^!6ZZSdngy?nQoAm&oDMLWMMX2fK8YF#!HkIji3s z*Yc{rXtPp&DEOqV{Bt7w-bu^XwJdEsV~#ihQyJPxZBvSh<1nv4$WeH~uIO1)KWBw1 z@JGnYOK*!V#@!I7SX^g4J4_NqT-VJ_C4G%s*Lw{%*@nMFPvj2+=imD6Ee&ANw_7K@ z;wh_A8oPE*kq(RRQU0FysJW)V>m%2!`)_k*ca1c0m`+ocI#>uhxtr0^rGL<`G z2OrQM$?_d;+iQCLSt}Q9=vd$3O!3g1J#%GX0wz9xI52~^bsh=Ab#~4<5SZD2*ZG|z z=2*NnYMM8H=DGtjg9pqzBJ;i0HNkVyx5xJW>XVp{k9z-$_4w{ue7!yNTxF)~meqf1 z-_dx&t=SOjdi!d7>p-!$-+d?G$4kLkZ`;M)&jqD(Uh(E&`=!r*(Ys2m>+p6pu4Nwi z5jXcA)jI28RWPo7@xYvSq`MY%nUAe2e5`BESv@p8{7~oK>~!tg;#*a2u+yDuj+7qp zf?H<~XP+I8FWk1re(Z+K4R$>mzUf{w4(7ZKmx{c$w^!Ayk?wx;5i@HKS2}{*oFJUq zbJY>M5Du=Hxdo&&RzdDVGe>UtSniT?zWwyN!mM@ej={&rpHxp=J=}bEqv!v2ue?U> z?cX@KFUUvLC@u2na9 zr7f@Qn9kRpGQaH$cJ+^81CHp8Px}7 z{8>O=FyTj45A}b#{|3^Y4pa5*AMfc?wUPIM^IAXnbYU~eRFBI2lY+O6+$CUddF3_F zU)EVOi+!b4oi8<>`$DbbI-0UIBEv#vXll$Gp?^z(+dtN1O+K++jZAjNb1K16{4izSYX@4Ms<=3!LWdTfTIp z=Dstsst>;1eRv=k-9$CRU&#KXU-dora&6O%g0GqG8gu_}|23?h&kY3Elp6o1s&#BS z+5OP4b^R%ptUNq0QTWfiN@e?8>FwpmUoqBLHffdjDiF=impTB!o-L<3hexhgF0k5_ zmi0*I5AG{8Yp0K1Qfl7L9lfzzQW;0xeNl6`+%Y`e+*!VALvHLe=xQ-?^8K`3uIFsdJpcltEIy%}rK3iDntm%yMFV5C( z2m1T$y?*4ptZ@jy8~5rNofxME2DXEHaP8Cw~m{? zZdJq40{Hc9Y^5;M5SAl-B6Z?p`;5 z1zjh2XQA)QPVMb#^Nz6aU#;Wr8aupN{c5rL;5yZ3jqUBXWN2Ow!B1w@Q1>(K;@{KvIVm45Qvx_W>;t-~N`u*EPBV*Cdx zU)z7R(vG~Z0Dw03XjXr^_O;#yXd6^IP}|uBz-_;Ts03qzq8|ms2u_;S&vX$E+kJ-0 zsyREWSD)$UqjaU@Q7V!hv%8{EY4R0>MAdNeCrUZtC^5zX-F463KKZsMi5_ri_o#l$ zGDkWYo+sGH+gq<#1Lq}?qd>Eouegd0d~4ILZ~casYOd-t z*5r=%8t{MCtrktUdb-9|SWSb*HviT2H1lS6m-?w^tTkudd3#OO6fQqzp1%pk|4;zR z37=H^Hz{Z_T8@L^ca>8t71}yJdR|GcaOSM4PLDpIUW{tbcxo!R$XlDVJ4)c#o9q*2 zW{R0(mdFw{l@cmh%U0-;Uy@ORm@V(roRe z8!aYD)E_KfL6NUxmCD*)D! zzOmP6UQz|bX8O9_{xAb|P|Y+D_K8zpRfd&)!X*#)3Du~b-Zbl4=ZA+ocSsKu0q3Re z32Tk@z#l7P?ZuAMZuR9!Q$L?G$T!xVaxSM&6e44E$B-6&fOhXJJKnk&T2A!mhdp%_ zlPt`UE2lhSyP7??FY?$h;sS|RzFvRKeL?B2@7P8?_4OWoZEaAicH2(C>Ws>xq)%m2 z{!D3C)YP2=7nvNM=`vZtZraZNpgiY9q!rr5c(kIX%;&9#bklY(1QoTyw8j(@N=zmT=8dJui{aLle&MTq@4@gGx0Vf69c7tc_UPJd}HN9 zfVeEm0InseCF<7eV6Xw1)Vc+ti^ra0jX?!yN+v$TGB*TTJq6;cqBO2E5vmhOaztLY z2Ys;K;3&qpnR2Y#orn!K`hp5`r=W>!M_0|Q-aQrCgR#99#MXY>=Pe6+nxET8(t|o? z<(vjsFAE6XFF5XJTWP8S!7`2hm8XIh>UmQ;HFN>TJ)YZ|B$ys7EzdB$<{ap!`kA2ZHnnjTlUzJ@A^`^oSWMytj7sirauY1TU!NjwzXB#HDMbR z-quQa{R)sWnX`+~a)QJDTL9gqu5Fdv+0%b3ZIR^J58JKI0fUo+yDn){@#Qc{eC2x~ zXZ4!!mBy>b*e%m8_V8XrBiLU`dv0M>@9t7<u7RolCIuiH@@C|>J^<3%_0IH|g= zkHV^g%bH^&nBdOb$ZkNyR%U9Fp4$HSd{{6F!xcUZ<&PCvxA4KL8~*?t@%A1TJ1H$9 z*02dpL-Kf7rj*hMa={W(K`EF&JVu=HKR*b!>m3WCni4Ch=_le2xx{E)mf)3t#0jB%zfw`vpAN4rCc(_&zY_oTwN>fa&rj# zNh?p_<-O(f71#EY5(|i!(h!1B8?iF_H_gG-q&QZ9H5*KnfHaVQ8Tpl98hNY-`u>Zt zLDDJ)004v4U7)~#M5`bJYxb;|$z>KQv-Ce^ed=^6jC8BR$nWW40;Fhb#o*dTFroqB zKRNO%dEHX`fK3g}Dmzy=;2=(T_Z+EUKo=vBA&g0fr&xmKk!mFa8WkDaN{)UtDO(N; zql{{>YtFjYnhegEmVJ(_PN>j@+9*wzV!rl(Z@QN8wsA$)dDOoi(e~%uL$(vELzcHo z_37P4J-GDk|08d1^n5!Y(^kSxyR(0FxY{_NUnuJ5OO;Y(uGl=T9x;nuN?%tj&lGJ` z2PA8zdM@j5$A<>B0kdy>=w_?KisrJJe$P*L7_6@aSFmOx5`p{>L|FTOIeQ!MHm>{3 zcV-0HkfWwJhXd%4hGd+>0X(EWLO_%PD_?Vffd$%BjG;gmcH|97Q>~hMx1!=EZl2yP z&R`INF;x>3)k=xeh_vLWU3X*4Nt#W&8-k{8qW z0Ql%8W%I^={e34=2Nn!ESbo!#3MGhG@T0t=X45rgFoEK(Ui6KWKGsDND+K&s4e0@1 z@70$r!A|N6=uZt-6?K;m&$CslA#?$8S!_KKUJnqA&Ex#?KC3w`gLVvf*4dphJcKVDro6oxE4yM`Tyd>XtS5J2Zu^B$Jz2hjubx zsFA&@TR+U!U%nly`wY-!H#JvGj{08XLZ%08+d0d7*ZqpWD{nUod8=C1&Q*ZYs(~#3S7!!@<)EvHv{u=jukOC zpeNd5)%AgG?f_NG^mb|<9$bP1Cq9elqxnMDd%FcI%9U+LNn=E1vSuR77R0@LnTw$; z(h0AaDx0IRrc96@cZ+TFL?mumwrq0JA1TW;8RYv3zqUkvPjlj_#)kpwoZlBIb&?o@$K&88k90{6B8Je845O~+_ z1u_sC?Rw4E`*PL-Xp&Y%qd`kF=D0S-Q`i=)!!-#xwJulyzXotL-Ff3b{aQ*vSfPnn zStnz1(PWn_9Q00#qUZ+DM-4?StE0Dyl72-ZfJdly8PkQ_E~ZQFK!0n7c_`6(+eBt( z6JKI(23RMKD?e>wj)@?SZrOdR5W(+aS|aLC&6H8>P-SUcfJT06ucoEAPH@h^SBQ)# zO>+*Blu1K`3kDrKLAvw=Iw|nqZoO_`eW+`Fh6FNnqWji##9FG5MbtGk;&NOQ zH8qZINu#S;otRjag&s$CN`8My7hAIqG7;g8g4ZFfGZ#~`rAQR98bF)CDVxwfN;6gX zi?ZsNY@lx#cKKuEFA?O0eo@454+t6aD`i_~!K$~gZ01nuhG~`$En>q55cnLi&F)^Y zt`6XcfdBnAmNkCIBjmXJ2~Nu)U~b$V?b6esTZTC zom%1OV0^)fZF~_yydun@$E}KQrgY9z7_;U$DM2X4IcbHLiBXFTa56?6on#^;m9v~S za+M5@;Ah#UvQStN&4Lc24qW;z+Ln8P?7$11Nd+th**9dVm>8|%A3Q}tE{)W~1?Uzv ztYSMA4}V``(dTfx&42;Tr2tB1ErGi0mpi{)J5(Tf!(Ezq=%UF7^9x&TmOzQViD1)6m z5PlbACLx`Vp)gT85>sv|mrat<37$ykCXD6y1Wn(K?n6sQ5*BpRhp18}`j*7{q#nA< zjr)NnzV~alh9MvTRW!pC1`_0@5I71&>lj3w+gy&cO`8)m{B&oqL0iJ0^(k%|jxT$4 zjT31PAat1tpczMG#2xFxc7p5Hf(H#fOh`ggKp?FK~TNxr|XYEu$4_kr<9Wl8i3+o}N)w;4)91*L`ZWbg91-X*%UWeL?pmZ~` z`9IgW;+K)N^57w?DrPyyt{FOs$pW;t9CM#=i$|4LA@TZSSIKQ zEuWN;tY9XTyGkI|dZ=K>c$>%MWC3<5J@Xdqc9<X9eBf zKl4#~$WQ-<#d^N8a?U27Fw433-svBkkbf|~q-I~|^a**Se>MO4Y;$mPWq0OsZ}GL< zYjkRhSL-@v2d3Kpy4kmb4TD)Wn^WctbcNaMljDVZdFFWf0aa8FckS+AAl*$mWOq9r zFYqhHBi0mc_Ffh;N4D?mzRZqbBbX`cS96>52PbIa1^z4T##9dd;^3VVL*sst8|H7H zjf^MgM$B~!S=s@@4>s`_I?hC%HFSDR4t7IcnD`riymyD0cr-uH{7_VfF9?>~~*$&0UDc`lygRY-|H z>`z(aomu%_LifLr&2`_fNb<5oEH}NW(Dgj=mv~P>tz^mVyt~6ma>d%-J9=cWJ$NTS zOg}kgw&@27EorBGizE~=yP+4+9S~C zCLZjE&?xcX9{hyT_ShQkE!|w0LaclfHy?NatJ2c(G*(;9S4u+2%h2@FP@#15N9h=c z_V8FXSIID11sYy^9}ZjlM7KC%*204)4(zb|A(j-~*ZeG#_7k7EwRHbAKCRZIyca!p zGbq$dW)-r+{dO8s)1JG@bM(iI#vd&8Oa&u<(0!IPM?QtzUDqSctCM=ylzpLRG~u=4 zA1Rne?N_euHJ(sew-l_h(xcYtY%x0A0-+N9^EMm(Z9c_Ln4_nAn^!M-@x$D#4Xne7&0_NP)>+RcTfjr{{vCs69 zOF~Msr|8b}{t-96h)uVxQ13Z;@be-#f564*dc(Mm5&KIgdh;ddvqPRW0dO8(MdVk$ zRGFOQb0##6=MRjYBF%E*9P_#f*b*bw{f1p}*H1hRYGwxN}zd)7%vb#W-)Gj|}( z{(o3jolNmXNCmSzX8sjj+L@>l2!2OgYipMSb*b{I_l<-=_55$~(>sInNdE zUKiVET4~&qAFL^@N$qa!{6mlOMEQUVHrz@Fmu;^fxbY14QQv+Uyt`I9B}xa#4!%1I zLFFhc7rm-h*>?v3DI+L)7GLH4*Q7indXAZK1X^fy@I6^(0Wm`dTE*1{OIdaPI65xo zkGQ4Z6+O5Y*mRhbzQ}JJd3UUOccq09^?WVPn&s%LN*|yzh~dx3T0#rbD7G>%W5Qh& zY9FR7=MNO%X%JYjr8tWhpMV@;QOu$;tw+wK9a|Dwoc?+1imOAg9q(Esh#n~KWDx?) z(N{`KWXAi>rV)@r2tW~?0lV*!k<8-Giu)e)1f$Oj!$MFXHpMw`Kl$*;5`UanyZ8|{ z@`qglb(jHo-c48REi858zZA#D(~)M`j8rbfaZU=Z0n$gt7Ba_Wtj4kPi|8+yD4|5P z3l<9!QdC1b9))Ptn>i(#Y}9>~lZGfD0>e|1`ks58Lq&%=uE}Sad;ngi^1hL!u0*Xg znidkU*fld)Ty!t()ONrYql#%>1zAz0^(ckc(`mGiR$8sF^q+V6`&(xq?5&Dk`W2?z ze{#GoBTYy?R5Q9cEVD9<9pZ8)ZPrL!XJ!UY;x|N5DwB`C4&jPlJx@v5Bd;p&(b4tJL7H#YFq@4LueHxi-LUN#%!Su!!7D?Hz@uS7tI|)>mPRsR z1sM#Z2QtGENBd&0QF6}-z2a^qF)k3TsS#VHseg@oK<5y`uJzvV~({yCV1yxO#sPtWr2lqa@cmFW(=?@-7%$u|-}nPtp52WP$gzVNeEL z#`sp~TdO_m9HYl$eGw}@LhF|wW9y)&C~XW)P`}w9DMeGAq&6eXhlx{G#}JI96?Rvk zJWL~#Y@O2JrqmV9f&_>8<~Fhg1|S8t6lUWAM9EI{J;K>&2TjITa5JA}BV|O^n|VZ@ z;tK_*HYBwJk68-qTx5G-rV0)L!E~X}&QZ&>)m#By9v&TFM}u*oWW;0kDl8(jzk5dl z$EUK6uSrBp4MU|3s`?_8esJII0pz)uUL~TZ=(NQ8K$rO(fNdg*^oZDr2^KWxt$yAK z-r?PE1_NKdNn7o=RIixlT-^iO zdedUyj^O9r0p8-jZ|Z^Xxx-zfwt%fS)w6E_V4QDgG5~%YS{2-J6Sju@cgLDR0G@f< zX5eQu!T&jYCs^ar{{;SiF#WFod>Sve_~^|S@H1S_-h5y=`LhqK?f>P6V`%SxS{wE_^g>eWXt7Bwn6YddgZL+!usqpi zfV{=BsEq`R9yeI#rl>9qaN1qqlCLYm0;CSzTuq8to`C*3e1Zg6t7(u5BJWU3j+o0Z z9ZpBw0SJOHyaj9rjqU0N9W@eLDZ^5Ho1Uwb>&6%Mypzzl0X`RXQFO!QZ8}6jtO_Mg zl9DbUml#l_22TVx7(;fTiS;!!g2*R@KYK}6#CDNDcPIq8=tZFVt*-+jTIM9C3VB$j znJ)S+2+eR<%{|4txB(ahC6XqZ=RS4|7Wz#cDd>ovfDyncpryxH3n^@@K7t;Cd(tLz zh^{y=ecL31pvy=~=y_-!%FIyfC9&9Zl`~F+si5NxWy8pQ!x{~8u@Gd4ge?n(R`ivz zj~|n?rSsFVnu-NQBVQ?lJ$&=5F{DpQ0O~3$ag41twm(G#7~N2NMwSuTfv!%~b(kZp zm!)!^xwGU1V==eQG;HKxmRd53#eNkEBbJ*n)a_tL$RowggW?E?JZb}s)k!Od#BoC9 zHoduGBAZ_}RRR7e*g8AMonP)%nw_zY(i?v~8`iiA49lS4LiNPurN&i2gQN_nXRcKu z8zHPibw&5;uxeQbLwZrisui0eYpe+EZuq?#LIEf2ls*tbIt9rg!`%{E#vk!RrZ9&M zwzWXeS=d{qp0o5Ze=mo*Lt~0Y{}x)$NbGL7KDwTq(V0vPCbhN;T@6zMNt2OwlavWg zgs6(_xN0srrUE2cXllj_E(I%Q%$2K5sWG)|S2dYhq=Bj%$Vp!fGBds&1kgZQs;f*| zk|~2}`DY9a0NeD_L*rZ_bN99&kU|t8f7@cY=?VW4JvGtW@XDX7LUlE(j<7+~F`B`6 zyDkq%ApF%z`6$$eHf7Mz%s`_TPjOy&$s|q5kR6>Um&t|&0u?aWRMuFr&+h*vjMU9CyP( z=6ihOosCMl>2n=`y5`^K>*}ZR^`{iF{|4?1>;~5Z7m8ur z=SpD4Y-z(N0r5q$3N%UQfa@ugoDt*}D_v`V8V#Ts4{XzVW!W|?%`svKwa65NZUB9B ztP_L&HFU%be)@lH(6krF!v+y@4QSA#9kd;*uBW3EY5t5>%#d!y*$EcF`UjdrjKHYZ z7I5uyQUx+)0F@nT1RBYOVNJC0qz5Ocg_P z25JLMBE_5pBvGE?XiRtrRIh>?acw#tzJq^ZcrJF9?HiLq6+u6D(L@+YUtW$2#owG2}&|}<3ytttwX%-6Up(4x? zbp+pH*D&({5FWBqZ)-sHYs|TUT7*^)F*pF99sqj~`lLj|bfN%rn2v-75)$!8iCDrQ3OKyq zvud5}qV9`UGalJuYfi^vCuQ4yQkGu?T8%7VGPK+B+qM%)t#oT}V8s*&ad5~ydE+%A z#C+)HgnT@3&g+x^4c0A%W(1w|0>c;K^ODMnsT4Z*p)e7?{(@<`D3Lm<_$(rLFC8(-q_lRS#r3=F=kkDQiXfKqw=87gsVX`q`_#@=n+}#a^RuPv&sS#11Nsn zl7%?FAT7rgf;TA0MAV!uJWyVMqOeRZprf9q$t=T2aELmHKJ6nFyFTH&2^|zt@Ah@U z_O|UOcgI1aiiUR`RTCp0Qj1VA5XnSgR1~^xyn;?%lVb(V zaU<|br$eM##%bX>=QsvCu(_163_UiOeLJON_@6`i2bwu*P=HS%`iLW_?>%&nF&Q?H z0HIVoQu=aO{m{jxbOySw@GaQ17sF9WMxBicF@Ye+^`l>LR3TlMDOv{R-a?CUvnCiwNP+_Brvs4GNX3c@v zno>8kP$n1?Kn43qH->2}Pf+dai&Ptj|r|dT;_@m9Aov4slEJM0X;(R}CQ2mNy$&OdDqL z#X&=!FprHBHmtnhRYkp^y*i_B27^to+JY0^OBk7L2Q!45lYPMMv-efiDF;zVJun$GP$aHzV2*n6?v_fXd=>u+1>NT4$Rz#obk{PPly z|AE?^?5K{~$J7giCG*LdY%>#ng+w{T%6Z=o@1Z#L%VZ@r2 zL;Q+5N3O`%8Q;AtYaY9{(%$~r!O@8$nFr+UG;tT%y=tD%#eYwHi0{jOJ1h2OgYzHF zK1p`JuQ%9zS<3Gh#$|E5*fXDz&A~zU*Z*d z)YRZ^pd;fi0L+Yp+E~2#?H|BbUij}dCxq$(R&dj@^mEj-_7HTmsu}8N-})JHQyjhf zoQ>@2lW$9Fua=SS`EUbrK^*eUj~!2k77D+GV@#P3_TUTlcFtqzwpW&Z=bAs2th)9W z?)}B#GK7A!5NU#lmc3CVpTF{6E2(H4qRIW{m*_4w+8w!`s`K*VP51Jc4L<$>zfiDs=mdb;cDtzgIEp03(=dlQ{h^5gu zvd7OqRK@i?WI}}qO!TUf`xb>ex+o5_G(``A4@9gs8ehydqY!46 zhR@=;Y89>qM|;xyaY;=VFO@@^&*s0%QfHDb_msAr$y&RVc#24|=XKMxdP8-iD?Zn~ z-c6f@vq--O_;TUB0!Cgvg~KsGu=VJVUz2j+|^e-5{pnpM%Pax7>tDX z(rD0O3plw8@Bpofe(0gy9auo=JMtX>q&F=7sv;#IxmO_h#ZdxK>;3L=fX#X2zCV}W ze|A?F(ALLu(1YHxCKdj_dpVGEyu%N(+DD*z1Og5B7_!0kd?+@LGPnQ6T~AdeW$XvI z2B$WQG|`f4>BkR9EnY>_c>oebq9v+jbgXMx9A847fAb&GX{L@pFbZsX0tJWF%toZAu5VsF>wOd>jMWG4 zQ`iOoF`wAgra_zoDxSHmhfDnwPWd&d^CucW)Y|B+km1fFG7oJn_%=blU7!>96d^d( zxQz5bw?{+A2Hm}$XFZ-o8juA(xl!{%Yz~GwR? z#J}T0l*@2`LjQz4>s|$7t&sR4hvt0!6Mo_TLR>~m-^a7?Mk52XauQq2klzw|^TCsX zy~LU=|1TkJG|romU;iC_NG8@QwH~aAgdw1H{6o(APnsQbsT9=Cm9`PsOxMqhz`UW3!cMFfSRGvT0x zxj13b9?Z^>;104{UhJJ-EG5BVzqBE&$x+DoEe*Z};=_yYbYL9;T-uC|5>j(vB=Nv# zq{s6{BNY$-AgHvVZ9&Hz4Xf?2H)=Wu&_Lm-Nk>N!9~d2#RE?sKRG^hwe7gX~_DKIo za7w^Eb!eYH_`e1$5y1dR*5;06@)v=?FPR8s3Eu z(5F#n5n5OzM`u$b7Z2)GXm`B@C>Ag3=Xp zu+CfZpZ4>%+Gpi6Xe z<66)VH5c#b_F?SP&gNXOPXcqpcCjD)bI9kNCeWuQfMg-^_^FiF1W@zR(;bo;Ah+izI6Va{U-MOdHpN^Xyy&rtbXO^&*n`I`=;vk z!?TFWLaZA8ee+0fg4i#~n?hVzDZJ^1@R>mn&*0b3{&?u7689tj1_ZbE_s#x~+*IP; zu-_!Q-w36+_V-tBo>Jk7w{@={w7w0Cevb9xKYxU&zqmi)ssh3Utiv6MQ`i0p$>>e% z)+(@Q&;hTJ2_$}58ma&?^s$_+W9c2MLMj1-f)sv<9>@K{=6Cx4{9FEKpTR)K9L(GC zxCu0T!GoS12w8U0?K zUf{=F%06w)!o(&>jH^xJFgGukCkmgJDStl`st22BUMXO$J8TR!t||YXU#oD}DBQ`AJ4&}1sYqmPXz_e6Nrx-)MBZ{dgaX5r3{>qKjuKCG z6^^A%@XUB*lSJ2%$fiwn)dG_$n>mYI35DfmAt)qkOQ|KQsbH+3B@0vbpw&QLcYtao zlq;dp5vTZ1KYt%bs`Gktzpmld7!oV7np9o-G4yBTSTdzcQY25BZrUP~QU>W{#0m7( z&Lo7sA=Q=Cq)r^JqL{!7;+6OMYnFnc0O{obG`7vr8GVBSZ~*WHF`J`<3#<&Y=jr48 z&WTxK^g+XQif;2Kc*^MGZDEIIme@G(NAx{meZz@v1ge!tHDr;Zjy|lV-=!-o(bGC& zKX8?Nu-u&BY8%(-GA>rLu!cUxH3;*XmM%;eMcjad(6tH5s1${&*S2%Zc0FsVR464% z=~jZZ`*C;s396_KW&~b@P3?CBvRJdPABSyUDN2A_0jK6^Q*L=JnvYClJF$>wWn9xBr!NBkR-t6 zovw)M0??pYq7}rV%gBF(-=vS82Cb?NL=PC^qV+*u=R_reRa^uXvrwLOQuiorHfYGFMStm% z0K38j)nx`)8=F)ZR})W~t3WX=s$PKSts=2LL0)9g zb~iwmM4LkLh;6)1uvx>ZkDv>8qPwFp+eg*rIGsB_{!V1P0D-(*Mz;eVr~)E!8Xm1Uqlr-QZ5keEhc96TGYbk`wiCD#Jbp!8S&ZD6E^fXvWRBkh7 zuzOYuJs0q#rk?nMfrGdk)M>We9M-{o%1{`WT}hEgTd?s&B>WD_H4F1s{Nadbg~D6F zQb$G`0xS-g)utP?SGQ=VA?6!H9Wb!hlpZ4x8i27u&uA!&dN>n6 zxi(6u7#6O5!T#je(P0d%rsrOsJgAMz(8%wC2NB9=}>n!`7KXQs|P3)?a|(e`#W ztjn~tl!r7obn)7lOb9YISUkVkm(O1e_@@RtTn;7#X>N zR-wRUapMst3ghA^C4uweQiM+#U-NH;gdGSFFKpuknn{JqgZqp3;O;QF53>psg=6W> zLZEAkbCmckLS+I`&`Aex!>7RrBdDLK*8-{R_&T)0uxW}gfTg9lj?=&&S7>{~X+h$) z0BaUa;y-|4Fh0l7Xu}g|exS=F;Tjg+6)WI#7Fs&i30Ry$&6CPn2u9YuGJI|I*(uJl z*=|wTMY_mYo*Gvvl268hc{?{SXf0DZ05e=$gTI6iY^$>b2H1oTgvk^ePqt zrh%5~u-I*Nc~y`{p>f6SDKUX|7b}n0bPo8V94h*8dh^`UIIu_2YZn(IPl%cd` z3+m1otCdmL>tKM8NIQNwb8wMRi|zlQ-!EcfP>0+aCGY;HLjx4!Oc)x_258zudP*YV zHnE5ZE$1Eg9v4;8g;g%Pq%oOmWWb{J1q3=ICJz+E+W3+ zlPoqNVVZ?4X!}6)u|K!H1rb(7en5P~1{TLCt@MD}N6}EBip3Odh$0CNcRbK$3~iGi z1FT0N#c+ao-07G*SwL(TWpLk*BcGb;T4C{M{I+aGtR`~iQ}QYT;V{POn~LYzUUk$w zIP_bauHMsO>`acO2b1YZxsMJ_(c>7}I|xVaV{E3w=6VvXHthw(k4Il@lRKZ=oK#G) z8Nt2>ufaLhVE0lOG<3|N zj#+%c8oE{>FIzYMkAE}9(+1{U7INMW`rw;uj z`b}qo>h3;Z*7Q7`#)6q8ZUbx`5n22|HKdC+7Jp07tu}P~rfPLf*m@O8lLR{vs!t(_ z0}g%Dp+Lb94znY?|Ld|8O!#UJdet@4+BM@@H(Y7D`>Z`-t|goaBKRTKj0wI-ZoK~+ z&dA@TpJT6eFJ#YD`GD7Vnw{>a(8->|F@n|>EW?8XTIqO;`uf!3*=AVT5^{~Fp+^J+_f)*kum z-U7Y?yXe^4rpjl<*70Y&3lA^tyqBe~7XC21C3$e;0OHijPjS$x&vRznhDL>{Q@dM*FvT> zTR**caD?`>8P{Ig@>g$g9#YMCSMP`mH-gy_*Sj5E1*6AL@O~)yK!S74+AFt<+!mz0 z?)g#Dgq9Ci0+ZEz6MN%o*P-hyhw0!-ZtbnK`f=M2zFb(^Ijt7?p63{Or_cZ+A4z{% zTzmPpeTiKZAa#_klT$n4GkSLq_l^>5_cU6D;pA#5f=N>8{%?op&pm6G4y)5q;NkBd zH?%ZF@|-g6M!zxo z5G1*e@x_~WLYAx*oH|mwTNa-gxmY?!LAwG7Nr6>rnbK+Ae9*S{Tp9L0cq+$S(R?Fm zmUfFxA3mio9AM*J>C2ZsCx?i{>W+?gTQq&Y1(&u%c#(2*=rJ#qRI3b z_}k`kY$Wg0TGsm@ z83px?m3`mC)NKW*jX~)%8`YmwQ(| zr)MNID}tnW0)l8#KrjHd{3fVuOl3Mfh!h347F zmSt+Gi?wa7lokaR-BXMTA?rp*!>J$Xm24P{TuEHiumBF-Zb3I16X0biOlDi@$lw0{ zJMTjT#>9nGr_y?<>Os9?q1J9*Q-)R(+UNtAGQG;Z%W-~r((`bF9(Jn3dd^$bU~vnf zH3~f}rHf_=H?{KzX2UdkQ2fwOb~CSBEWOUdHVlcUIl2fRU9Sq;;#cAdCVvQXX#GaX znn!KbE)lp3XL=XO3hb zWR46vD5k4(TQykctbi;&C?PO#h7Z7nq!1Wg?O+IEV zqEo}L*&uF&IV)IMq@UtFvY-0o#N8O&mg>mdW2gguU6zA$tPOvj_dGq;vg%wKv+&so zD!cPY#_+jU-d7k?RvjYB0CJBl80rq>FbqcONYuh0SW>;=+vke72<&c!0!f73|!tMI$hel-IIp$)ghgak3&2>EFw zdF@7VV(4wJfN(RaPpkpckG{15)J;+4(}_FR_O!Z|3DM#|oVRyicdAh2Db^U}?eO<` zGs*vLk>}4@w*IVJz`q1Lu}zkL({(_;d7QVs0_4wbj}=nbf3`o?9l_7j*Dt<#9Jm*( zK~o#h^sP(7%<%2)x?Z`4<>epk2NVu33~JH-&;!_h~WfzETgc= zc)`foSh3UplUBC>^w-?1c>p#Z5-c>@CpS9ZhCdgUPNoxiw{(on)WMF`!@36f5d@GC z2fHoAjD%aO#mk=B2Z2ybk#Ty->}2Z&eStvbqR~@4p}e6|S(;a&h2to`C9Em~GH55{ zBeZGQVjDEm0`f6CSQf|tTegtBGUo#Ha<@5Fo8>oKHg<`@ie6LUeo|3l=jRwS7)li| zfP^psa!;=DY@I5Po+!xeY!FJlpU5Rx3ILRU~Q)n?l@ELT?217J1aXU#ZmJxr3p6gSRL`y~~8j~iz1}`p~7Qig{qKwGZU;yif z;v#B z675G(XAZtqC_;gv+C~l4rqe z*CB~AeerodWwGcN9m04jAoMc;V$ z*BuT~x*KVm^>L|ahdLlUs7eFOVJF}(;oOY`MbsY1J2CiT|FtFr5Dt()Q1Kn*OGxFA z%8j!3_tRq&khbHn@01b1v9cU6*Pg!xqu#bZjevv}~}pDXEWB^jJ{474h2N@W|ojG4`dK#?APq=dBLx*l>ZNWklo2GF5}S~N1I&_G-Q zr8I5>R0xoCmp7nn0VABfdWu*^rSq@(c9Qf=)sR<}EZ5MxEM&(03=meHWb*checpIY z`JPob7BBh8T^q3j*4v@h;oLn1D9cy!`7sWM5$&{=C>Xqc?L;)y(wCE(3=o|uMI~~@ z0jXSf<0=Rdf@;8C(5^?w?_p8~qm}^@>*jiqY($SVgi|VFq|;GVAfqL6InRWHxE)G7 zm@b6BsT{V>D@56%W9xNgq~MEUFQY2JhQJnedVycx@^M@$ZZ?6_`OaNGO9(_V}HweO_N+ zLD4Tn9Q2J;&Z1wn1}qEBNr^@DY60R-MCdUwq3XsCG%WU5`<5bNDHu9rw~in~UGLRV z0}vP(M%JM65W+K0U|*{^1MAdcdm~7L020L~eUwuUveiPNST0@7lbUe3**8I#yB);T z26+2effvz?;rCIeu#+x_a}um^FlYv;(09SE`wETnGkC@fJS_k`LWc^is6@V%1JJ3V zFF?wMf;o?K!jvdQsbPeP(8_yN-Al(N+n35ZfOKS-ON&H0^$rFc^dc6fJ9XU^xDEJ? z*-pXGxS~`n(*Z#(?kVSB-FNQCq7?17|_%M!g)X~8PSkUDl_8dpVGxQeDYhT6z`r_iiz z2b)-O(e%lRU57mawi6lrJG6%e*D>-U+Y1+m`CDk(fw4fVhnP0d}lhUPJMTh3&vmZnlVgvF5N`&l702V=jL^2I#kXyLYlK+hta8-k31 zZW!HA`SsuZ5lo?QU|a&gF}k{=W)jO6)OEtTqp@feBU}V^2b5i@0XQE=2JnoM-8DAm z4Ty$Nf?u29ZLAk!IgC-4%9t~tx0Ebz77L}t5U-;zliLtoXwqOLu&_mLodjL9p zghOb(@Sv^zyOn1HNTbJ86UIa*SP|cV9Ge5>qhvUn_^g>YPAV8t<289K3t#$K z`DpwEDkXVD-r4SM_oTdX{KDpiE>4C{#?8db3Z>@ty+r>vo|t_8j`0a{yzra+0$=Wb z;mU&_9lWrsco{N?&D7hG%q+YYssH8Qry*SYqvt<7ic{1MaBBRM}FWH{XwhumV=aWa?dqv)e3-7mmPkc+nKlllL z&yn{XF|TZYSirhkrvC>MxAU1Ronvd=*jw|z6~n&S4c_dHH#+xh82QJ=ZdBZ7a& zpION~bJ;H3U;=-2*qMpNnRZVwkUvUiro*HmHsEhxZm*S?fzT0 z1ZX1Dp^h~qu8ge`u-B3g7#ly1mFk+ID~5G!*M%R|1p?y$x2uSK>al|vW+dVJrpFhX zn^pK*6F>IjFbCd$7ieqs%XeM#r&x725)qpC`EcVV;H~{;s9&vhpA&fdO+SD&Nox{3 zIZ+KQ2O3_cXTk@O_a_=EjgwK^MZaXN@N@m3uj&j!4B@YzfyLdYLMs5?edF(cddc-J zBY(H%(cq;d;705&t4EEDj^=2nOFdxryxj7>TUsP9)Ven}K|(e>9)iob_6-ux;v-vr zqaAY2nT*@9UwNoR+1^#M)vJ6L>~^O4=|*MtukLs*f6nwiz6s#@o5~xdp{cCgl?_G* ztz^fJ|0WXpi$~-SsE;rD$<8J5jqWq(j&lisNobDH|&-MhvXLmlaD9^zc7T$~b{FWYT&y6Ebro2#^1`#P}POJ1| zLL3-*>W_xNE&hOv;TB?CtRPF2;VVbuI)tDFI75zX!cB!=K(qD_<0%My>)uNq*jqPp zy8k4tUN;j5zeNkRA0FI9S=HLk8=l2uwaxK!xpkeSar$)-&)k-tQ=;di=E%RVk66eg z-vI(w`m!)e_fKrah1ltH6j1DJ8W+-Po)vq>6)^mjmiLFfOJR`;8;(fV8qYH_FP`|l zTS{(~0DXn~dzH+W$s!4$n~b^7W8*HE-2zmVFh8rzj>b7yv5TKcm^L) z%he@eg)W_4-yHWQ>esl8JmIgK+$xYg0frb@$UbgfgB>jL@Y(+p>F#wSMetRF@C-+sx8-+$4@~p32mmWsH6ZJ_QGmjr|?88@dqJ zzrI*{H{Wx_9C`FkIzy|Yms%sis8zt;pi5-*6B(S%`LA#+;9vREbf^L5WY00Pw9S8t zq<0HYe1>Aiyco*&GFqjQe*?CND$`mb%?DdH%o2kBrJdXKt)kx#CAq~iHl5qNPFB$G zKvo86X!2!j#iZdbl>nPz( z`0;H2y1}$$8%^Pw-8qCekdA-8=V=jx;x=bx5q^Lx#wD_p+sn^v#MZCDHE{6~@TZF# z4M&l%n(JwZb1^ojKed#bR%e#LC(g7C2VnsfyJ3A?1MA!Zi0Pqr2cwrsn*}&AoL}W6 z%JaDA!qEbW{-tspD-Guj#>iUr*@CL!;uL>81qlVH{Y+?F0Z2WI-R4V1CiJtYjba0? z^Q^!t9Vf1z5_`gu z_6zs4mU^K;|3mmjgaBR}Q>UL5*D{fy0*YG+nRo>SU54=mQ={-Oi)c`~cY<)5f!Rb1 z>2BEmOpUZKEkU3P#!`zUiHRZ+n0y0@``(2#+H|FAqZHDx9r&VnItRz;>Z|-RZ7t;x ztJ6veA9lr<<&+Yjpt+uPrvw0HUtpw-!|X365QR#xmam5!?0oM(ZVU(}`?3=z9zo%W zsdQgNxth8d&a*ImTxLa`18;P|V&@U>jczX>eOaDpg$>p2@%4HyL5e)W&5*aM*kF#$ z6@X53G*4mY0P7?dTCXUK(7Zzp=PM$j(nh7VJ+Si@GSm#v5bJvGyJIin8)DckZ*6z3 z8q)S_%tL&V{c3;-We}$ABeqENM3}^)2FWbaxNR6!{u;9iFHw3u_7a6P$ z)F_x_-=d9c@X^;?j=H0{2Mw$`@V*GDD=0h!D472v+csRTuRYMQhA{a0_rLh&6aVxt z9RC01fmZeZ{XpeMtmrR3S05@xF-S_~#!7kMy5`G)&YS}(h(F1S9X3s7bu6-n<)B%D zAta-Q2F)FI&cgmh>bQH6Sx7`(Oxz6xKqB5rAC!^RXA1GCob~B~`P6vBDerqPStV`| zECg!0z+DKGa>CtivouQtN5o^c%c?%=;2iJ>0)=pkQscg5&oOL(@vQCnXN+T4KDGg- zc;ypj5wb-T34Dn#U)Hov;CSVPHQrWrpd-_D&6;1qak1!y=h7i1No?onP*>Up z1egcM5KkGxs6jHLHOAPF1^f)u(MFa#IQ005SF2UP2kMD-ph#}j~( zcb608^;IV_EuFYc0w{Y}5t)3YL*B)L9JE(e5De2o)z6p{G95iFhXGRDU@`y=z`ENG zf;q_NdSPe)y?ae;)31MQ)RE{9Oz@{z783{f6k-{Qe#2cLtP4-JbgcidGE`UrLw?(V zJZ(LcPQ(D{F6!=KB)0~rpG|z>kXK$damgWJL*h$2x$!}@Gk2e-pvkdGHHBOxFA|3IM@STlM< z4_A_a5VXkkZ8#rvqS>5-EkUsJQve~4MxQapq>XMGg=T02b{_y(4{bFJOB*85J_DZy zs)8a+ptBc67{!-tY$4|Fj35!+Shx*Z^A9Z0X<^Im=7=J$l|3# z6VlqI$Jjm5Ucuqm=Og5%&*);C7%wdLuF!=4de^r!dXgZcp{d7DU>hSVi@Z;yS^!-% z8rkl4fb~8=2Wm>mEVBdm%n(>nFzN!UM8~jR4(O_@_WG#hMYz|hZHB!Uzy_Xmhtz%C zs1)dK%qN+R&BYS`u#Gk*l#6iTtR4h^;KMDE&a;8!n83w>e2QoI3qmCz?4&{&)cWby zHaJ;^pvs1nj`Ew98)L= z^J1)wH1jb4Q}-+f+U|kW7A~$hF%1wg)W<=@cKzRuqi)QZ8ot3zNj(6yz=q^4+0xPb z*iz_#95CR(`x*Qdp;8=|=mwcvLkXog!TfNnfNwwm1z1gJ7)_V$#o5>JxzxCNmKm`V z$aP8>%P?QY#|$lD)WWx;3_Rhbd8jr zlIBKixV3`K!;xAJNFR3J(CxV?h4f?~JE%2@YptMB!3sKLt|=XRy%`9Z+Az+K+)L`R~i%(x$Otd4E0DiD4teU4$~a}za@G+-LK_Bxy%9K`kpKnUxwQ_#~V!u0Qu zuu)tmw4kUWtk2g$@R-5FsR_O|HX*bWHF|Z8TOuXT@?Sq~P(K_vqD|b{I=%^=L8waA z*AA;eI>Ql?ib8{CK~iYVX2G5k(Qc)5+)1j<**2=U2G!gEwdYL83$c2F11s)_fS;*W zvBRsQXa^eZa($gh0p{)?hra=*R*BL@1qvUr@P?2Ct`Rp5mj9&eMkPf|Zh$3dbk)*2 z1L(yt+1FEgKO$P! zuk6ArNu7j-Oo)SE=BObH2@mH43Ji$Y>!+iZ?H@PWU%8(ltv6cX=MSo+;A4gkz2)Do`~tE9PzNw0sfQNL z-H1$3T%x{=MwvosaE?CNiWy_IQnCp`j`)mgf#;dX?Oz!Dh$fDj<1dhbd6#A z3#UOTpbrQHZ!erx zCxF@j16(;$FGLV4bfU226i@*Qk>ZP#r4+}h2%H&5RdY^IPPa4BYow&l!xPXgT0e#! zCzmm-YI8w~et(YrY>p52;zz$Oa^ zI8!Fs6))K^4Y-SaolL{1Ri5acCdabyF=&%E%-!L2o4_i&fhLXVU$$|%;fcYZaru)| zw5ztHKF{Gc(*R>}uP&*n1*JU0jGY7I z^|kZ8^LFB#owa6`_zcfMv5AOSzL>LfX9`&QrLWk!h2lBF3W5XSr>_Zh1uJ0FSQMvlGo1(E&&}Wlru=w z3eUf>4x=6ZMjLDcqze<*SjC zq^Cpg*89$Y7prU#?*z~|b#sN%pH}9btk z`35`w7e!kyyulY~_V9-NKTEI&BJKpDz9a>n+9-ePqn&pZ9 z0kYfH4!F-d1@C6I5q-+v*|^P;T*gIClsO1*cvK-%B>#uMpFWrL3UZ;w;kU9Mhew!MHRuV@F~FOZB7a%TE$uqu_?dJCB3 zD);VOx%RiC~gPEyKSVNU7I^w(smUJs@$iL0@HkpfxH>+d+az(5sJ4Ih?(Gp20_7n08}~ z6C(`OfUvc#o4_c2&weOve8Zu3(n45GZi2r6dK>I)YLc{kraCj=%gX1|yLhy^9{9Bi z9-9Itw1WQLNxK7TIs#|o@2<_j#%a>>;BR(E z-P)=H%*^;jm4_df5`ZC4y|`bMyVLtEj^zR@)J?%#JZ=@dqbqXugTAqm{Sj`pFa7?F zMvr4|hActAKp7+evAoA(+XM&K#Ok#GFFlhL*cKX%Z zGSCJHH$o2kxy@Vo!58Let~mPKcIA!z^t)%Q!gluZd|@mz`ds0tU+n{(HQdvElccq7 zE83?=(xW3Ac98+P4OsL*=SyLC!@0I#$`Eb{J=Z7Cn|@zEfFiI^m-cG7#be7)ZHQ|9EZ4h!xlbyLnp zlHZcb8RLS{wx4f}5+1?z;zUj|LNBvw9iULJp?~a43-T{NvPk;nYZX%b|ErLNXyDdc zFHLlZ{K+p;HwoDE#klKBeCR7K*Llw! z%dWWFb)#f<{SkkRYv(VtR($C|gwJ2?IiYT+tsIRzUOQK1vl^9SSNdz;=7zc2Sa`r< z-5(y@v1-OBsMBy)*qrbRK`Gp8qjs`mwTI> z%Er<6Ql;JCDyfZyN_Z^nPlrM8*3X3`hoRJ#g{l!eIOI;Hif+TS5BfpbCp9hSk9mLf zKZsDQ%H~>n)+iMLV{)5!2P>>`;d__eQtg1qr|M?xN6YDvKu%7XA|Z`Q-9X4$@`E%u zlFeX%3$faGw3bhi5L(Lgv33ss21TScd+(hI_j_c@NUGSNn}3q}HwGjFi(sU2Ww+ zlG#&1_7*2iJ`nMQB67$aS_8Vl96>qF(C?5mtYgSHxgydSgazZ?UnV#R zlywf&aCYUit%Adx8c-TyW%hF}DMNrZ->6$7=4Nom%2?=a3l&m7OL?Obfp2v3G@iAV zxJRIFhX`$h(VAZ=W7QIl*`eaKW&>jeg+g zF3mn)@`503%+d#z6EixQ1I$mj1o7mw0VhgQpBs22Q}UM2iKi z*K-f`$!4}HR}>H=4K)5a`-C5amGyWH1scE6H|*P4>E2GsqGSPt9vpnnBR@&%-nMYm z3Bu~i3HF@rDF&NsY=V>NVWD=wR++B#P}-`pr9r_8wzHC}z+b(A2`ldJb%%`yR2X>uB3p9!0f zBDbb}s(&-^-lr^gsLu&Wn{vSiLq)Xgl$OJaOdT7(J3^|U@=rJ+dn-6>>{vG&v!Eoa z&C0M+Ulg;0<3QSO6( z@q^JRF{EloP=H@e+*ElOz%Z4~9OKPA0Trlfv5`{52w-K@XR}7aOBr8V_vV$>5%6aA z6QDc=2zJ<3;n!y!c2+bi5+1lXh${ECw5v$hJ7Jdu1t&$dP`U@$)?3TKay)%0U0@rl zjU4pF=xp|sX_MRLmJZt<9^+=)S(j5)S^aKW#w)eBEE1O-KY`@FA zW_HFahTvhRL9R9cR}{hngRB7A?Pbfig0~oFCs#b>TlS#8I~D zdnl0S)U2G#J+9nSSdt3BZFap$P2ej8z!{*GjFB^Y97F(p#f}tETK3DRpbVM%km+J0 z+gg#%R$3{w7I|Y6;kv!7bjCNrHVU}am`s(@pJ&(Gmj>R%u9M8g1fcvBBajYkJ`EC@ zXC^Km*qLTJ>%fR@+;sp$kq6Q*(|M1tRRP4cxic_4>IP{}53?fP+Y7Y9`g?m@8TdIc zj%CZ}Ft$obQH~!%VW79m`)(9YK^Jq%W_=d$mM7>6bMnX&RXAv1nZvW4vo_$Cev3r^ zR3Q)FA^nwIYBe(?EQQZyN>I8)%4ns+)`-Q)a;n(&O{m!LeKulc2aS{g+*DU6A?E$p zzPnUBH*1Q(v6GRB1p@|U%ZCPoP|7IAm3&%Q0F(}u&SMNYa)l%zYO5!i(X;z2>4xc% z?@jJskSk|qpsNpa?UMW z9?K>ub)A*j;1}0ky8E_#rZi&pRnj@mry?}36H=Hf23QsV{K{aWach~4Bqd?k83B2~ z3hT5XTdRSfNxAHc%>J`3d!Q_@sCKXn>rfx?!zmz|FgsLiDVwX%^^<;TrkaAa3MCp|AZc@wa_syuj|rB~|KyWuy03b!Mu1-# zN#{5so=p4+_JB1H?{R0DV4FJU?p;}#lH=h~qni}-fSdQaH?0gGbsn~>Ln{y2>v?yz zQqwD@&Jo@;P-M>{hA-46&ckv;z>!vsZl79JeX+dP-d5N*v2oSNbk3HHK4zZU1I66r zx$;x%g2M2>7M=g}q1(Ji?=QS~>kGhX!RNgtg`EBLy5NtCq0hX(-#+Od@TcB8xzC?^ zaOjKvNuPOC^6%^%-}A+c>vwdL?^iXZF~EGhW1Ztd0Bj4-;D*A0GF^ z?0DhCs@$F5V%O6n_W7{l?(jzTt{Qaz$ZI}W^bXkjyaQ{7r*FE^UeAe9!T;)c&G5c; zFVqIt6!wthv7tEgBej-4dvn8|+&Q`W+~iKx_EWw;*!#jK&K+lQ!4rSBWL3C*OfneR z{wav^9k1=1P)blf`JeeQkQd~I7J3)AmjEVpqjAs^2ZbTtKR zjGo`>ztwwn|MjHwO|!Q7)b^hT2Xfg-E`QuA0vg>{%iI`@w(?INwptlrHYO>pp7ZM5 zbJoC$x*T~=a^M60w=5DAw|Xb+Ukk0?|Kg5)!Rs9eA8lo(#%{^J0&M9WRKwAU(;V#1 zS>MGnJ9C~fBylp+`;Fq*=k6}-efSRl#^b%L$GnF$x!ZI7Lw@o3RU7U03o~Ooy#qrJ z-Ry6$rpf|h6>iDgI0i;~qkrMBeRNVz3G(+37ViE-Ulvr`mu{<)?nXx3>22FdlN#Ml z@*D~W5Q4+WIeP@m&mb!*4KA}!?epHnnd!T>lY1JJWwXbgJII^?n>)}85eiK^wW@cQ zx5wG)UtoI~u*$GGP6}Uhyp186C9(C)QEQd`=&Dqq|3T*4ZuSN9EEoOf-CcW%EGN5)2OcH~V8BF6J(~y@hor-}!{Y;y0+z3UQ4`&}8!cT1GDt z%2pjsg(HqIV&`K4&X04ZuG%94S`$nIH zSCSGH2ZWcme)vZJ3>y0q|U zuYhkHOkOUIwyR;P`N8s@A&As;cl+z4p@EwMzsUGu!LxhKVz|mK9KAWa&2pNr%m!(W z5;l$!6dkilE6vhoJa{H04WpN1?no795ie~cdbMN~wk3yJV46R92m_x7m4GK-Tcoc5A>5K|S+=mnzl6Nr)ywZb$;??tXK0 zrpiKP&>W5};#Oe3?2R3%pZBb5-BrDYO=fE9Com&|aI%|#HIi;ytf^otR&s}!>JEBS zoWC&I0uS2-WepjDQYvKraY;XWf!fVwE<4$;HjB+yl*MMbzk2;<@^}@8;WWt-IVvKq z51{IKzjeaxdH=Thm^x~)F)R=~A~NtUl7LsUL#MFY_^01BV2@7qc;`J*PsuTakn0)b zv%Aa_MMbmx32=bSDElwZ~!VJZjw7uIfX6SbZN{*djMEFb=eg!fC*1 z=vU>)Xdwyb&Z`1m-rA+vRDL$Bi(+Aenc`8)yYP=+J;8eQ9YINro!PEH`= zz1>zGCd9~Y4qWkv*=Y<^yB%2Olr=pJpVntvI7K^@$N7hNOp@M*Uu$eA%Y0(kZlwsh zK~OS>h6-7>)RXilKo+{7h>I5=yRQS?C&LXbvPzwa~Gbz_9=C8>`H ziZbjvse=hd7^8dhj|N%@@7?y+LUf?}aC|gSrx;$JTUvcOPShhouPup(PZjh5^KXsQ z{bcRAMjA=?iNkw(D^Hg0I5xMm7O`PAC z-np!om}B&CPi1^Ppiz1S>r97SG5{YUpYar%IXaKdT0MneuT`8~xjAq)zn`51E7=E7 z%oAhp4ps&vA?CdS_lpE!b#wJVkvtI7GX{4Aqv7hk&R2+B!@)u}om)QTnX12d%>Gb{ z$)kH3<@*aq)>Vu5`OEq)-RuQkFu^Qo&P!iFvf%xdN-^^!4Y~^+58_2 zqx7(q zNgEq~%*ZVd83K2mm0D9CFRy#jw$oo(())rxX{GG7g8-Wcd@^Z`;*A{dRbicPW$olx zv3_a%FY_MprP`*NsqFGSR>dSNtI6u+Op|FO%U&_zmB<3Hs^jdLXY61vlxe#eR05WR zA94@a0l=kws5r#VW`GK_+4R>ZpgOxG(Kp(wScp>qEC{kM%%rNB5bc%C44Z@5On+tr z30Em2uTt5Qg$sYzQ^<|2uDT8<)QskGcBRbe&W!k}QKBN^oWyNy# z2VwmZn=?J&+NPzlx4L#32R9E<*OO6PQI%6*7d>P)7wA|R*44DTg+*wt&0gk}KoUeo zOxCam%lxqI@g>21`{a6ctdXkNp|^VL@%Q}kbws`FWwGtq0yv`8goO*tNBTYGfGqu= zRl!uSE-=XpV#5s<$hkMM0Ux^|j5%s1ARP`^DGWwf+Y0ikDxBv*-lDP_OZwC8fXyh0 z5d(5@hzd)oYASU5PdY(RsAh^D2Pve2>{3!^h97h)xwMjLlp8K>8D#7KlV+1MmzLbU z*WF1S1NWG;sT8bb+k#t}iC&Q@eZ+D~H?0H*-+rs}{##4w>XK?^Ci|Q-O@4OmusdUC zNB)JKu?1B-RSbqI!zbO!tUGe9&-~$Fw!LIZ@Za4*d+$w0+%-iwqq55{geq4i4huG} zYEBMvJYtQ6EERfj9*!tNZREmU18&DJ;uT<_YkU3keIV{~{ zcgStwv(hRuPa6{__XUkq{aebunQcnFlQ(U=X-!6X{h3mF$AnS1-EB`!uK2Oy?Aou- zC~Iiw0OwJ7lWMGdz}|eWw&Xwg2kyxN6J<*D&l#BrJkJ0S4wfM$IRJodUfwi9lnIzQ zhjYlOIx3qM{6G*4#)g3lP91WlI5-2uzp}9qF#Qfx?d}L(4o(V!6js2jz>3)FSvG44 zixcf&d0-fumt6SEBh1C*n4wc`b2db!1;Tsy;aJ!iN0-pE@qIfhb<1~r%`K2>Vvj$~6xH_C}crYPH@trMulPQ&b8cYS$C#;uGxg0?~ zp$! z7BWlB9IPo0JDF05DlU|mAhdUZI6|aynp8E3Dg6ni=8gP)zmsyj67!u#)x)sZs>zAc zpnyOU5DR1^FE?{(6fZ8bTL7DM8 z-&m}(=^|SJJVt(Eag^Cv&rj{}DuKJpZl?3!@{Zdh4?13ZavFs)yaYlpn^m~?lW%f^ zJ_fp?K5eBr-p(eQ%W{JZ2U$^Zou2E90L|Q?zyOQzAE~w6gc$lKl&Q-^*;I;ln!sqm z)FkJ^g#l-zF#!WU7*;m+{fHI|*e%FjI`uU+wVY*QS)jH?LWldpJoqvTV+(8@J~cTwbhgHZ1jQ-O=43K= z&`*)9GM{Rr&v8-G~V&R+i@B@ZnjDeK#kRy<*k{v1Dgl8eDzA*?s=@-cJR0 zs1cqYYfSf@a1J>33Hwz0B73d<=fdnwYdGoMDyG&r>&s8CM**~_+0f&wUbv=sOlZ*< z7%Dc7*~Vb+4rVkC^%feyj{B^f zO)iM@m6e~GUHK_&hO86Fogw!fD48QYu9>wzYENgMw^vx}&GxLrt`(mj==&M9dUC)S z8E|fQv74mfpDI-LV?1&!@wW;Og4wbDqOdg#dnX^n;9ITL4QYFOr}~*mk3GX*oH@?C zXJafJe#+U|7tZsb!_>)EJaNq4@ncn6N4h>HP!O!?#x%3mmJ0|X4 z@ho7i7calwe3B%_-Th=K_6pS4w3-tfq)T$5o0-A@wMi4guJFaSf_%-i(j8~U)^ex? zi?=snD%kw{yapOuvM9PP>#i%sACV0($6H6^t8(&r#62cK4 z9bwbU+#R*s1&4g}PjBJ8pko3`?scLS+Nd@GF;`w%zx(Bhu}=ZZJeFrC%RZo`=5Bv2 znS=jSUirkC zC>$v~c_jGEnsgE=M!N#+F)tS|b{I;3Z`&WPSm;GHpQiXcOIM? zdu(lMYn!8q25z%R?2<*$Gpj$o_nO?cK{+TLJc(UE0q(*)q(CG|0 zlSge(yPGFTo&+$NypNgjqbo>zWW!4_r>vab`ZsrzFLj$we$4of$Fx(QSY9y4__Gj$l1bJnK3B#n+j--noI0mZ&h!R^fS~r3%~op%t*xyfaF~3 z3716%>=|g~$bhWbJJsn;X0GU^y%!=R&dq=)Po?4ZiFztQPq`~IaPrjY? z>zqB)J88?_q_bpV++`geub4UhfEXlrIbuVj}+!HqFMPf`9o*Ypy^Fr!0;*(#xG zKySd(XfrdEW{A5qRw=9nxZYN(jXN*n zW~ED+3w^5;Ls&5hdRZxJ3m7=OTt>#jVfi|SjEs&V72N!rB*8XF$~#bOX2{RAD>!N+ zAk^b+(%zu|Co8g=mlLJl+ior|Zno0098i8M9pXW)X{-lg~XoJp#vq* zS27%XtnqMr1@CNhx@QR|CFz5-On_aJRaRsVg9(ztJI<7toRY4r%9ri)oZAG5_Q<<`k#KKHbB~LEps3536a8wqXK1KL&N| z{7Kg+j@GJ=4#-9h>C!iD2_bKS_{05uQ8HY#}2jb|}Z#7f?MjzBRQ|sRE%I`Hu=? z_Tsn;-htys0wlO5iP|iG9ttag(L8($JFlltgaD$S5EB(nS{XbqNs(kjRY`sX2*}Td z7&AlY04I_KSsW~>)$*w#i=uaJW;QSc)eJaC$PMLGy+YqpImv$1IN%RB^*lNIM`u6& zeu5>&XYDLRHWN&8;h8;;#igv9UrK^(Mu_CqmsZDsxHIvoQ z3lcGtruY=La39Qt>5t`GFWvw1hGezLCAp5C1VtsmH}w_j+nx#~zUC^(56K0K(sOuJ z+;FDB1@p`l2*fM>y>5ymze07q#&JI*jy?&%dFe}$zb@}DdIj_E#xcmSUFQP>{+J&KW`UIe5!Ct4X3haijClu6Kr(cVgEsYW?wm6&pMnDb1JBW zK~WvELjW@-FeL)4KkFBR9sVhA`{l7eJi&%ftl!&6r~w`ag$}S743Y*;Cd5jR*hfDq z2Bu=ztYk;XVj|=)R+~YNUFkS*B^885P(35N7=nw9bjtX0fd0R^Gah)P-PomP6SUVlw`1fpq7h~y|W zW%_wG6w4E4gAGgIYmoA30D`izRvMKDF0W)fue z3NRWS-Zod79;%m~WLba45LN24PQX4CWCYd#o9l{=0P<$T1}_;5LlT`pMxM1=WfZWi ze&Axy*|H{oK7gP_LvrU>3}~z!@PjGSc;>4@Hws2pU{}_3q!}|%u84A=45ZEhDhIkW zEw4HYPX-Kn$)E|F8>e`T1_=aK;0{Phi6EV&gnth#nCgQPg!!P2ERW8)fKeC;p+}&A z2}Ljjk;smNr)nKUR88mxMeD=xX_LgFY^7KRq>lGf#^k2EtJvJYM7hSP&#K=K78S)4P&FU ziKa;bSr5|jEE&0TkCtpHqVsG)mvHf~Z{sBnQKBr%?>Xl4K;@}&#pKN`vhy>FfsKgC z{#(1%T8FwU7jC47-Cx2iO23*nqi?fA;f0Xa$RM!Wf}6>D@@_tmlG8MlZ&{|GzuxtSK(PKnNN$@Jv>t81(&a1o*kuXL_QUNzZ29&e3Y4kJ5Zuk#V;TcloN__DMLr9+R{ zqbXF`y&fH2>}#A^jX4!yx+dYeIypeW@wLm!xg7bSuSn|MKeEFUiP^$jFpf?j@VSJn|cFjtN*YeJHk& zkA)_S-$ifVLJRhU{7A;2$EOyrOt%uU-upX0V4+K7gCp`t5nL+ztLtY>)acIR|8Q-o z;#43zePDwIK3MUa^70jLYtw_8=IWFaW^1-gvqmKr5Dq?F*s>y0s&bcYe~c1oWg6j6 znuG_zf6+_PPm)9#_2eFsQ<9RB%QGnW7e27ZyR2LLJseHJwsj{J5-V@e_!ar(_ z425-NJV7nwy_ae)rOFf%6q9&YKLEb;*-k?w@mM>Y`A6ka5?*pa^+0; z?3plortP-DKiMPY(*r}UwMGq}^LFNn^5|Lrrc-Ov!!MRc&a~yx7tb(x6ax4jTG?o@ z-}{jBHvhw_ywh2`bVGUg;qu0C!>RDOq4r2d9cYux`??-|rZ{lii9 z|B|~Kk1G!-D3gr{wY!K8O<3g0-*wh2F@?>)y3SjWC&EyeOobsCe3$?4{q+gXpW2}S zazfjc<&Y73Us=}TckEtIDMkBO?~ykd4Sk`fOD#_gF!ECud!Bp3oo1SuWs*7f46^_v zn8wd7UgpBPb?=x38r17~Dyl5+CGV?{oqIMiJAC=^bw+L%vz_!)MeD>D7V`uCuG0sT zQl;;h9=Y&wLWS76%s~D2?{XYYU(0F*EU#fBhc`$g`b!U>5S}}8Z&Bxw@6ncWnWpJA zSGmRS9=vYzG;Z~jxlbL^H9*;By?6o5OWw>9X+<9N;DVRR6jsc3vh{Uv#Gc1o3yn=qvA8@&yR}8ftb@~%?WQd6&s9|&N24HRGK=F}(hm~Y*uwk+%H>3W8O1^~Sq35Cp+}8VaEE7V#osANbv|`@Iq|*dPF@(6-r(8G zDVJOb24<9*9|AVF*uV64hote^i>=^{n?wCWR$84e_W}6HT%W zaB*86q9L8Ry!B(ij3MIQm>|D`9b@8(-bhVCHD;CQ9Yd3_GMvXr$}Mg(t$D<~>!vr^ z)u-JFHFX|MlRM(lD4vZeowR$7e$r7hM_dxV+ZX?G z{|Q!XOaZWCK%jy&ZeH2*|Bx8m#6^rk$LKrhi$sm0&*SPtrRY+gIVN_n**|c@$F8gH zQU~0y!CWwYIoATR&98;7(wljmfqz_)RP^OsHNfWv^8w6`fQa4u6W0Xw-~l)S`oV8` zxb$i?)7+kiJVH2X(wE$n6?G!py^svPi@v~ol`{LSy!DErrXOPA5>sujusJ|$pQ>wF zh)I_4cJx~3r;HsW6Z*_GNK~OvZB8Yk{xegcAegZnyHIWU=CvT_M_BlL0J|14X0%I} zxo9<}T5344tM33>AOX1T#QKpI3;gY#?;W{rl{=ETn0%KmfIB!>Ds*T=7Zd z1>-N=+!-hONq@9*)x5_iVRpIj)5lv#6Fp%CnSJnoS+aT7y^TzH)dW^!EoIjbBwAd* z82^Cpga;x*bt*JqJ@F0@cd@Q- z;f*P>tOkfdKcCWcrl>Ge3)g8NY`2o7tkM@7p%hC;VrtzE|` z$llB{582AL7>cWlfv&w{lJZfbk|x1qZqS-Rfvc+J-yZC?n5@#-ih&YTA zhD`S&F`e;BhG^bzQAhL(+3I3R(I29L0cv5{SYE?W0Y4*eL6HecL~hm4d-|^D1l!ZQ z6(@oYpjE_CL!#y?kYQ7Ee`1KC)G=n?<=kDRg-bL~GIR(7ynsD46hnx%iN26M1ytQT zug>Gh$bahM*6*FIombW`y3q6hHDlBosFq|1qbjL+u5xYssjNYVQ4fzvTp^CIepJ3Z z${OW;%FS^Q#FX$|!ZpN8E-Nfh$oplnkWv@_$HCFs?S0R?Bnq&%HR=ZDB@Bu?E`X9$ ztYQDCA*>*QeYIb9P^no=2`&y4P6UK1gp+cd5v3!tDcUFl7t0c{8vv|!4tn=8RkF&x z@Sckso$4<#gK~_iZG1i{DyEh$%s`Ci$qa-LIh$fXqD+XuAe_lS$ycVRn4_|d43-N! z6@N#yp~~a5a=U%$TqVFsm*8lE=bq*WvBzYytB&JU>7l3Dtw}@d}erf-CXv=p}y)0O7K^zG~THWQK}Hi@ymw%A|-Ldqi)GGE$ug0UwIR z7s3?q#)N8kdkf3m>X%3vcAqA(i>XDtyQHDo2Apj03CT)xBc zm}WqaS~xR&)n$)}v*aJ1Az{6^R$F$P6?=Bd8bZh7f1`%@rz={dUb!EQwSf;Rw1hYG z!>}bCl&m!IAd30Xssd z%Ue*Z46HW*38jZrAZ(r34SAjk*Zp|jy(m%b%q3)iSwWQ01v*N8+CAnSIDDbc38p4g z^Jy2!BsS|f8M?bUDI5(MAJlLfe9xoB+&e(4xpJ)v5nqAQfR z7YxyIS%pTgI-#bXp^;cX91xS*MV7>|O>_*_iG2`AJX3;QeedL~aXZ`T9Ta}$c$g!E zzMa92>SmIVE+tn~e&D`{_F^G!i@}875)~#-+1jq5CZVK6&=P#;w^7`pK#47H?zAODLt<tE6|yTSMvPAN-0`iWOIu$S&Vs+e(h+(BOMSs!xFFLk_XBTh{pRPgwF2D0+>fcK zt%F}k0bE^!t1Cn)vtnfSBX0#b!%aCCTprVUZ3>qBe;9Df9%iCzBKp;qnLexc|bL+T!nx z5uD*Sn(>%x(xGk_3JsQk%EWWmA~uhf@|FBYTg2=pWF}Mz4LpjVxR>qepZxN2PF~#$ z&^Y8`df;)mC#KPrU5tc4G)OUju`K_b5(Eby4$E^YnOJN!KsJ0oa|rpG3)MKdSR3b&FsqSX@Rd?wo}2VK{}` z2s*)QJ_LSN6xxq`{$0vEFEQ2ms4<6{E40xF-Dz8j_JkTVaPh|IdAg6o_sUmyny1%^_Ea z<`MjvU=a0r%zI|@byF7+hjBrDSeA&om@^~#jqV@9fKm&f2*Mz-hvs|zi2iOu;fBAg z0|bK}$1P{89D1n$2kU0|(tECV1Kg8Wlvbr~12Vy$`cl!aE*6zi+5dxHoIn_;S8Ead znEoo)5*}x}DcaJ3?${*?-Q6r6!+}7@oNZm)HIU!y+=R%nErA%yxIXQ2i@YzaG1Q`i zy+AeSqB}JrC!#i)+?B>e?M3+LAl{#11wl?g1GVK>-;^s%vxJ9?e!N^9o6aywC#Alw z_(s|RMQO+mRfqW#dhldEK&_%d0RTFDK%NRyV-3D>U%>=F{_vYQ|NH^0tJ#oLm!npq z(6l?Vpf0H%MN3T>04N{VB~J;N`G6%Tk=}8uj#?rRV1<>Kxuhd9f~W!l(({T?S|m`MYEx5{KtP3f1w2g>ee2>E zihJA&TeZ_oYd0zo4bm9_sT7(n97a;M2^Ph|B9&38iG8F(m{;6O7>Xt&wc_XCHGvMY zafD!$ggFDu0^FJPugy&rp*4>p(>r2xyn#m7E?8LluF09i& zMJurQG23GkK@jmt475Of?=LJl7~r+P*aBA|N0uyO3|{p5Rp^RFksur&Qe2A;X?YrU zf<*fOT=92ggragnL7dTDE;IG}RB_9Dmm*)*H(KXfmN>4&3WPM>bzVtR(KRd&rgVq~ zIl9d!Cy9uq?2sBxpo3^RfmtLXx%^+h%xOppgqf*h?JXvh@9JkvG2II>y~u}&wM|A) zXh97KDYhgLu#jG9_#$lVrEkd2&wV*1{y6oB=PC|Pr>#*1T5ZL3@vAP-i$LO(oseC= z6(5EGi>}7Fh$xKEU?T+dJ+XfA-shK{-gauXA^OFluaYT|=rt)o=jq9Z&Xu={1Ni(% ztJ%3Hf9li#iDHxcG*RK8?6)uwAO9^Dul6B|{C9p%{pk(467N|&mZ+Z2p-IU!sD z3(euA^4&(54HT6MdA|A`)iDeifAv-#Lm3!A$%^kB}35s|ZJdOuBug>`)Gkw-) z-mqSn>58OjS_CmJ2e39G8jL!WjagdIFPG$HMJRFcv%h_)uYC^1ruL%BJVFm7XwE!D zDA0WPOW#{1g<}Fk+J-LBRz3FJ;(*m{;-X@owSkuYi@BHSX6Oq(G>vW_x~pIw4A6;S zF+d8VsGANiN5*22ppoS)4FpMiU_n{MmDGi6PPW0V8Fnfb5l%Q*k?M(LuhL$#fOgM3 zbKRz(`ZVD!DsHcc0{6h(eO82t(NQsp6*HXo3MykTQjYKw~yulkCv#zRarEinu#MwlX&5&5p} zQD>%&2@$qR90aKn!h@}uQ^6Vcr9Zj;fU_wODcb=?!j!qdYjb0zA($?=1De;_q7%Ac zVs}Vx2X!X3%7EDTybTi>!KeVCdr^ZVUlG2l%UI%+PrLu&sXb0bJjhw;Es6NFF;TFZ zNv?!*jXWrSkzoz<#N3^ysS_TTX#{jHdcF>~$%Q)4Fd5s6xG==_&^zwDW@_5`3dvt! zTnIlyK%M$gX}3_NOHW7}WS1B?mHjaDXm!+6^fb@rNnSy+WMPS@h|YKtb+Gvh6wvc( znW;=*v`*ImfB{qc#U`8n_CF0IEb$v3k*{$6{SJfhmAZMVq0IG<70U z2+(7)XeH8%Nz{NkXd?aw$`@y}xMeW?mA%dvp$&SHnIVEK1R18+1tDP(o%LVQk4Sfc z1_?1EJFCBt`$siqDkRVlHiVwj$05_E2rM*^Sug<8;xpg7W-9o8ALt{yf{TkF0vq>t zv6`tS51?nsF z9O=M(Oj-)9n@Ws_R7!Z9XdPW002WCkN&+_uiP%iXBcwsVgQCPP?k{h2HUx_8b7(hAsT4%d)E0%WDD2Hdt*`iEr%nsdk zc-iw#?i(R{aXcVVktFiSbeYrLn)~GB{Y9X9*Wz98;>$ZU2=+@>*{X|S3({Ec&J^^z+no8b?x*$a@I&Df!B>2530eCk_024Vy zSHS;_YKQ!2Ub-q?CESN%YG1r{efIlKACvJWCY^aa8IYv)ao5Cg>|9Dzet1H3W;}fP z#7XBF7u*mBLmDG$R(#i}ZoEH(x7gSDkej<49;{EuHlmNQbCMFXp9Dl#t5L^yn6*&) z)OlLk1!03?fRQ!o)R>3>#v3n80++^w8hZ7J`K%fXbFUzt8(r)bA{UKkgxFEcf&r~l z=y^^qiC8%CSKxJ?1D`w(D64Q6DJJow@I&$UX##vb&2U`&lefMc@LVrumEeW>5zz<{ zF|@W{1SVwF7E(jlr?4-H3epdgq@jD=<%3cvKn${yWk@gldcc0-n@DT~9Ten=hIDWr zhD@$`U5o^gi3jlr#7kDZGN%~m0GJT;MiZimV(!Za-QFiti%i0B`*WSpk%w^6*k$@ct3%dy7+H>dGlG`RtlMf_6b{e zsHuCYe`qJ42f~s#v@$as5nkV~n=&yYUx;@Q^;s`)KqQDt1%PT?yywQzk=u|Ewt)h2 z#n_1+i|G@Y%emV4BvOH(M$#%0p7c#OE(!RhZ*no`h7_{RcH30#bFE7sT$^Vfv`{=@ zj5z`bX<`PAY?Xd1`4QCx?J&y;lklA$<*0=T1#trKLC!!dbabwG@x$*Kt=IwT1{_SI z`d%Ui3l(@=7v;l9_-=EdC0v9`5kCZrnY=C<0^K2jYUARMZX)a)3(=jB?huuC<~Nfb zbbjmJ31#sN8H&U|ATtIL{p1PMSeU=gzUCN zIqO#-Vwa-Sw<44SrIm=j+=UIa)a5euPAH@q5XoXoq+auD$Cm}wBg{C3c@tqv+%#Px zKe{RrUO;d~%Zi)UF&0{{i9itx;3Dh#sZ1`ydU4Y5Q}EGLxaC)_tDLH0FU17n%Iaq# zW|}9!kw~FxQMSM~G9Y5iqUZIOGGQd&N*veeE($Y*%}Moh!+#v!5!~)TJ(*pGQ$%?t z8biwz&(0&E^iIi~5Lg&0BW8dYfrBfh5pZLof{BSxhhg&wBV^O(_H^-)Gi=6uSPm@l zNS0t^yBjQoT&NU9ea}iZH4{#-JqjWs2tUQw<6qPiw0S%%A*>JSi*OE7_J98KjsW>T zk1v6alnmQ$)w5WQm{D7_5#xb+Nc4to7!a%chrvl&0VsvzDg9vf>AoMoX38@G7P0)0 zA<;6CDv*wKF^bR^yA6aY;DV4cp}d$h_+L8B6Ld4~Fg`bg{BMmK0o$l`t$ zmf~YmNZc^`BG&>Y5iP^)XXJ5om{RJ~wF$sNmplGAV38ov`2o0IO-&d7_Y9lOZsrM6 z0-3Bwir}&?`ploAK`h0zh;Ru4u8G+Za~;_8C3a4{zr2zMb(5LFz<8UInAd(`^>tsh zMh3($L4RTPP;&|QO7W3E>DT7|AdQ4oci=Ka_0hLi(>U)E-pQM5##8;V{xWn%0=F}q6Z^B&NG2bT?`5L;}I0y zET?3EK*9CR%u79)k@JBS@*MLEJlmmtG;;AU#?>)Uy-H9At-o-!yPz3-1#-cujQ@oD z;x?lXB@rmdJVDmpOOGsX-tRcC5J=#^PI)wLu6I(${Af>_koQPVUeGzA11%6tlNNQD z(+F`nG9_xl8*1NoCOx}}V>6g&$)aLJ9;JrpnqLq1u%Ebps7%C8`v=LB7@&>JlW`Yu zp!c4VHtTQU5Iji`ny~bWx^&MsUk;efv+ICjC}-ZNCnS)k8DmsPr&Rd>y_%v_BAY;m zx~x?mR-x(Ii2 z>>XMQi;&2#qy`G7fYp+|SNw&)C0TqJ4#Ppi6eQ{=f*s~Vhx(p|6}mdCg^@*SAZY~B zNQXw*b!%y;%&L`e#?@!vZ?Iat>(WxTSUL?RYa!^vFve+IT|-TuVL^f#G|3~E-pnKN zWj%f(E`ELo6c1ccy0j@uF%R*2@ONT1Ao~OoQ3;MI{&ns0pSNwS4-s=O7Ev6ZMgF+QOGpm~x=Pc@fs`6dUT zI=TjVUaqT_Kc6Gy(S=nqZzw4Q5Spmuw)H@pQgagU#nS_tHu83SMe?E(Q~F zkmO?VZkfbMx=+avMlX{@%Uu4`U(WtbzzD#;5`aZzc0{ntG9=wfs^z!b!bL`jiJKC; zD&qDD&?>wO7ZGi>u0Mi8XQb#8fEHXXPRb8?!R#!J)k;<*SsT58M)rhB?bVP~j z5%XL;SX_1pMFIl}z49Hcr*(xC*VPTFXMPR3W&z%CFg=sXJX7AKlf(FR0OGJ&Xu}a3MxAdXO<9d0nEysY~Ddv%0cEp%R0DB~OGw zKY2wBkgQ7&$}`MRU_vEi&zt$UeLO-pa5Yi8mp}GP?3Wx!iWQz7q8*FAE?=^Q7nBE= z%ya&w3KSISPuLG)Gl-mU3o?RIXS79)g#Y8IjZOq1fql)*rbP90w>qJa_CTVq>1UK# zKx@zl)W>MYEz}8%q8A=p&tYx)D>SnVb)u$XDoKi1a>*@PB@Ih%MX{LO7Bs@MiWD%1 zC!$~I2gJaE%3l73nM2N&fWtu~4=#X4v>kDpZW1@!Q@$)Yl<0A zj{xLfoMN3?&lS< z4ie`Xzh3|dX)u>$jEYtiZ0$htyU(ZWN}wm1P>xA&rNC&c<%7PW{^{{gZt2knVMhkF zJE{H6s0d3M%5J$DND+l3#L%a^)RKB~WoUqz4i=VQ`NWzxIdA*flkPB}5jXuYNxn zh(wpfh3W4)KcsjRkrH-<0urSp%!>?4FvxaknMeNa%}+Q8JG~PVRrg}%TcnCk$@4zI zFNQQPpFmcytj-j`h`6o${!6NN+R^xf*s!DnNeNvYm_NkH12kJKIP}TK4GT$X2IR(k zFb0qO@O5r3#N9${x?HK`?JIsKy^6jN+lK#5*dSe>LoQ?~853)`JJ|78fA8Ad45ug| z-GXIzCarZ5^M&jxw0X*5Oclijj6XDq8Y@O! z4yU95bs_x6mw{=hNzvOn|0U0eqJl)PRSQpPC`}?q>4)<o{jWx}p6=K9PC#+ka;S z0kMGr8!|-tshCLAG)Fj1OWnaaU8zfKO~_(80^ht)4pEj1zk&Z`L7g%#{J~@SS!bB( z3o%rf&yMa)Ix|<|qQfIq*D0LN5P?h!r-_c$6+tz80jNLPs$Y6&FmDxzz6n3Y3Fs_4 z(7l+?(TjCQ--89TQp`hnB%`Ck=??-*W!cOBx_ggv%862>#Q%#LqAQ_@1q{51--Wr_ zBS|r#n4*qmMQtKA;-%g7?dyhvf^=h^ez;l%^XrtxAmAq=bWpH}SbfP|k$yU2v@bpI zJrS5d^p}t+L60Kyq4DOZSNx3rS{T{jRH5Y6fMkg;=-^;tiOnfESnP7RHCzFTs5GF z*CjH~3jg~)ay|L0PDn?E$?@yEYFaFqS{R;)(QQ~o!V^BpABi~1Vn#+q>br2;xhEWR z7-5t}l=4jMXy{HYy3e@W zInL5-ybv1FH-*i&Ewo#-s;=(x z0#i>koHaH|;?w^*B(d^H@#8~FIaUaVL_^HU7`|35b5=pdi+}}P!`ztO)*>;@ zqLt-;Y32q*%aSQ1Qx}dL6nFwJGDAm>Jv$vCo=Ae`nQFV|xdPvmqoC~V&MMg(g6g{JB ztuyx^39=&ViG7Rmf-wkm3@~Z_X;To>&YcXGk-N^w`-LaV`^@}3xh#M)>#5le$UXNkxQ|Gq@fC5F4M zM?(Uiq;ZS??vfuKpk$;By6P!-oT7Nhp+1Du0p*3`?L&Z6B8~J@yz*{SqY;(`HAxfa z-NFZweP~F15UUx}NPKcQood3VlaG}ORvJ=bV;F;kOi>|SEsh3x9gr?;D4;Jl2^ zSMs6rQn&r0tr|1vCQlOd&%G`3CWZuOLeTSj|8O~ny3BpuDO_~#oa&ehlIHHoOS1Ba zS>(C*quCP3f|`OduYB`5+%1vgjya4Kgzom-i<(@THeD6yXQHimLX{XFs3l{oVJIYk z>zS9#+a0_}galDh*!rkF5kcmUr)Vrl%D?WqVW_-h!n4JMYNHS0H)z7~);oS~ z*=CPZ|G*2-F9O=><}FfwSK~V$W%ihHCIk}Sv*T&Y%$wGNj63+ps%0FA9%AYsro>A; z-zj0r5a+4`kj*Rq>VJrHEnSf& zie-{ZLM%aXC_giG-^Ww83mze`Ii5(ztY5vzu5V=E#JphZpfAQCBC^cMNR)^W8sS}T zs*<}24^gZI-hRSOUB&#Mk1#ne((lAw0Wa54m0qUw>R(&~Fe^rc?#=1?A5>uHJGfIE zR$#@%N{CC#0HBu66o353cLb|ALxX0ErS5>_^A$siI&EE+`yD!~t;r^5QB+dg}ha;|@Hz#iNVfz-YkPFqHOi^&^Ua3p`JB*%Mz~Qd#u1AAFOp!w+*8W#KcR{4TV|N|gcv zh^*t-iY=Ra>a{;1xWZzQs3cCGv{f#xx=2%a_bdV;{#Nq9YnK~8f$`G{ZmvyaiJ+q- zY6;cB|CWwDsAyzgcd@iuavJ9-f=HmsF^b@fcRniWp0eIxp~id)%i5_>35j3&_HsEW zS1uvK>%W9kc|qC|agcPH|JVt*=3ZX?<*ZYXZ_z(==Jgj#_oP61CsrwvSc1u?_lEIH zyZ@)!8dV>+HfamxJ^nk_>GI}AF!}Oz{GRucO!^oX{_IJk8qrev{ra!EnOBh>k9`;o zmmmWCJNUbAaz#sWp?Q+<#GL? zAaBm4N${FfK=ImxHg5Pwa(WRK?4A60BebC?DO~=EZ!C0(8-)Z%#S69E%QyW4_oW$c zh>fGNqSCt?CdjT32ex}h_$HWguHLx%*Yit9Yh8?@H4lnXnrUFGzH$Egheq#q#*LV8&O?i ztmuMr#xwVs(s-or4J!1Ap5h^D>>~OTcaPEqo1y*hc<)lSP?mzZM8;p=5X4UrH7So^ zlYcQw!ATM_pp#3N|MDLshXkI>zfo>QIAxIGK|yAOEL<9l6;mg(*f+d%Eyrob&3Gff zWS8!4gR7OL45rNYj<-JWEA)m(-VpQa`Xd*q6KMi|VdzE8i*v2iT}R%;p{I086o=+o zdichiDuje#lzA~N$x303Q?t>IYW2 z;pdlY(M86jXbC$cjC&)5mz9`|sQw{k#P3SWb@SDaPCenEQuu6O*lpz zW8p@A)LNIUKa%ulhlos%FwZA#czqR!QWm5((YzrX$(tk;KJ(5u5%7s-jtnI@s7eIl z^_5-64WU&!#OXM7I+01HZJL>n|M8NMK%ICFCi^+XwQVW0i!nvO&(e-~uKIhd;%q|eM-YxFMk1caoIh%#` zWd!NMyhmT_55ysAr-;8?xXZ{T9G<=WTkql+2BgY^|B1jEN-usWdh|7ZMlGp#!a0ec zkV)9%-dQ3bQ#eg5uec3ws9;g|z%4LFa$!nQuo;A=c*Fh6ScoDKmi*AOILTA5?>BL{ zR&%iw&}cz1LZkT7!%K(HRfHIbxoDI($jss+(F6#R2pG_X;Emyh|Ndc)v*ufwq?C4R zCI9-GtDn-D7kP>D6Pn1GLpp&b4Apz?yq;Q|iXP(Wu*8ODb<|v)QFpWd~ zq2g-*Sn<}l1O;U3VQs0=4-N;h;Xb&0w3*lg?B7-As<8-X}v_1V6FLo{=iIgQpCKoi*{iJD{;Bw!SALN0I|GCUGAh)Kp zT%T4Z-^dFT)VcVq+i%o6<#tz{iw-N(h4Rh^|0?T@tjrv427m6V0V_9QxqSmxmSgQL zlgcFdL{b0+&7${7B|-`L0@lVB>{fhNhxPQ=r1BBpVkWrQu?vP>&xs#C2bLBJqkbW4 zbNn1lBrosjzgU_S`2YI%g`XO`dKp*6kFN5{%Y)Ze1JlY@Ii|O4s@yV%qv0HDwCOZ^ zIHR2D0>dd?(=;7r^owdXSni!QL-r!$z*aaEg_q?pr_hkaHz6xg87104Hc}>AzN1*R z$NlV!HOpRRcpS2qt)x7|TN|Y0K=9lH{-vKkS8|*I@cFFE;fL8E-~eyKnm#9Ielpw~ zgsNz`46-sDL*-f4uQda5P(--ov;K}BDEn-t|FB)4q5bkzHd82Yq^b)WG*Tzr-@Nn> zkCv<;GaB@`98k#uE3@L^oy?Y&vl@jn&yA9K)2LhGSo&quNGC;`QITdjN{5N%&;gxj zC2cBY0wa6G4*E07EA0-v?AFPRtgtI&(-6QzIyh(c($I~D(LZjN%zmflRGf5B>8X^{ z*`5k7bJ8wnGgE=!8Uf5knDPDRBgr}VF~QS2_#@M<~hWPNkTS%*u-ix6GWa_ zWCDpp{($|=K0X@=BL_B4-X`q#RQE_DX-2l>A%Trbny#u_x9*>F&pr2?-#z!1=u5@) z8p_5<9yil98Y$JYqV7Gb3YDQ-1l2R)|@a9UVk7U}}U(Ykm%D$O+h8mROYR%TM z?_E>-<}F_}B15G}gK2!7`uR9@ZA59ua-ESZQn4N`MR$9AiFi2B7M~f`wvLjTzEC+e zlQz`0g1u$@gvF&-Ijd<3Ko|KMF17EqvNUpX>ea)?Xj`_DullmXOpSs){nwZJMp$W% zM9#>Q*{sD^?5CB^#_OuwsOD~@jj^;=Y34e83B5{}#ufSZ+lu@fA?XJ-E9W!MT1)4P zYd*Bfj9xo~S{d@76}hXEA(NJHRv#TQog=;au%Ex7UTwGAdE4-kK&-D!kIx#Z~PW+U^-P4n)s4*GE{=Yz-@AIu&w zhuxaCjf~RdS1_W*!*(ET5!>8O$8XM(VoNu(WjWpvFS$YSd1gD`ry7${mNbX*^~%1~ z<7TxuFFpoF5|E+=JLz>M)6%|t zG&rtVQ41EcNjFzg376#BZNA`EH#kRpnmCc~cE|R?ARjg% z1g*d&5kksteE9|$*eb3kz$g3y7b6HP=_-ivJ5+NB){!h=RYC?blQ_J>mz*;gCpK|F zVkjKQ4ta{#@upxT!$P5>0BH!vRW-!Q!S{F6ul1lB) zwq<5q;wR@j>&ALBP!lRL4eh0nGVrzSjT`&S8~vWh$RZlCvPv3(9;o@)JRwvd>9gt7 z(lM#J(?85vdpyZpjO#*7O2PI;=J{Q*x?nlzH{fRd=;id>c&g`u>D1R27$3={)! z_~W^0Y~$T0786s7NRzZfP4BKBx9&Bi?m}#l-wEd$79dcR(c;} z?#QGOx<<>2$})JwW&>Kro^Mf*PKJ;<6J~LI8^9pD!Y2!eDsl?2Cf6PeU4mDogfv$v z|NpLw;wq$|y(lo5W+W8XOg?C?otn=lx#2a+M1=y;a;Td$U`7BRmq(8CZ?&N(WWi}{ z4>JJLwLI7}8&;O{2r6B!;#%ac7d64r!8iZpP;B!NR&t9i6a%Mf=VdFMBvol2!$;EC z{KueZRUtZu6LikSH5z-y2OmTXXY@*bh%kJWAHvTxKFOvv#5bXz9bZL$r7%B~XZaI* z5$!! z!wDH(wXHm3OvxTGM!d?vL0{HgtA}sB$f0FK3K?mYh-M1+6_Y`f73PBQ9=%fu@2rNc z0(4b}LBm-M(KRi}7}BVT;5+PdyUmZ#JBX{1Tg}-4hUhA`zwwDuSQ(wX ze`T8AU%#&%W|g3Ed-$98@5t`=ch>UzcLbpmsH*#OK1}0On?o7nQC?}hS2=#O)$+>T z)gHodES+@z#J>ZHLD?KTp_A1R_i;1Nj9fNeW6MlgHf#ntyJfmH|MRsCmmKi#z5mZ@ zjJxe^)IGX7*sLB6)|r)i`Zu@xFKcTxJQn62TXZGQd}imy+pWq-r2NXrP}B&M`r0Vk z*xC}jxTMOv2HQHR*0xvg>3^qsA_+$F%7|*udb_sAz0FBFUCr*ShW=0A6f~-I6>n^x%O}aSjS*CP^=5mxxi-wl_j=Xl4ST)K&DvhRpxjuSKG5?0 z>dv1Si+5hW$?n~?-l^^QNSGc;il;H`#c&;EZkV^MxXC9^19UyHyfHoUmcQ^XAImZ} ze`@oA*F-jomxqnDd=zas;Ze)a!+K4vE3R(xgIZ2hqqp&q!@)b1n!EMxbiDFfFH3d| zUgqWxDvJ5iAKz1H4}IbFKONqvU)QKbv)AvqF(2vs!P3=!(rYCSp!L)yx~Mgg0ItwCvfy-rSrTE^VvtcY;RFG6U}@EPeM-HM5M?J8HGNs#wVr8$OT? z57lceKJACto-KLV)qR!U@{R?;7yffJ?%r|T*Y?^s4mWk*t-;RUNbFznT2rND#}Vfq zztVei5H!XwJ?1x3y{UI|bG+=j&7n=BYqIf*XSJ^1VYIfbY>oWQUVg6HaHGFV8_ABu z(B&6eNu%uMaC!5IyKwW2HlC76g!(;ZM0V7BwV<) z8(S57USsArhxU3;X7wX`z0Xb6H3Vr5PxB3&`jLwLZukB^OMj);x^}D{h5Lbq{-rM+ zzi9)+edUIDWK)RBk=`@vTcf*@c<0wQ#5?zGVEC}2TRkfsHS*D+!Cgbm+kb3 z#=*e4v#nO6pcHqj)2SIFrG(lwX)uMY2}yD&INRLw623h#+&fr*G_l{A zCA+p5l|Cx}cOlXC5;EJ+b9X+J>f2xA0S9SwT$kNiV^2C&ZeAKUKU20_-fI)5nL)kg zxS<+lGaE0P?Z`(OwrW?el)~kj3|plyw-u_6+{Mi!iOq;nkdAS*WqV!1fuCK?XN7{M zW@`{uAEghD8M8I}K;KukWnALviTYHs=4t=BRBsHkWQ%7_r)%=rkvE2Ua{XY~ zYR(vuf2$qcRWZ}?FpV~b>7xB{o}X z@>!O|26Cgl_Veg#Fr7KBylgh0T>CYjBS@~H_pmW!YxSJ(jgzxZyqgbP;H=1_@`^m$ zgbub#JI!sQymE{>w$tt;(&9 zl>PLn(fXQJ&32k?pH{1_oE{xr6OUY6VUPM!?A6`$NO{z4mCALu6*OR|(HB~cWM%r* zgwbp!SuIY1Ejos##c*N~l-y}LAAYa zvi|1TOW<;4x9$nl+_!!P<@~oqKg28rx0JtOwQDdI|h1t02ZOGFrT^e>n7T-OX4kcFn`L%Xh z9W!2<`&aZQmhlyLMe4H+qnDVvF_ij^Fm3(_q|x@__ZZvU)hX&8qBfY}q+8WyO~t|I zt2To(90Up+}~{9J;j(zM0Vk+ zRkCWWyfSayy*X|+>+$1nM-egT*0pGY&Q#(t>gT~KrbPVs9^^e^6A_T2c?>y>Y#ka+ z9zMpNMP7SC1vV1jo-h?V?bNb2WSJT;*V%L^btETMv;sz>V?T4tZuRxeFN$7<%zq2# zwQmnT|B8>RH|#r*zjf&2YHZ(u)@?)o<%Y5BKQJX<=-IVCnt|}O0Z|LDAJ2IzT%6uXKt^)$iM8vQlXFZURG4- z$+exbynL`zn3oSqX{y_w9+ZTJrXh>GPr!e?exPQJrGxShZlj0LpBjU)T|wWO5t}GO zwux!5*dcmV_lQeLwXs%LEM8&ANC$H+t4)&SB1C=%|83uV+|$kr(mCnbfXE6l66O!e z0&B=I_dC(y+)2tKnM&#{QU31t0TD`NzrW#Wf7lGs8_T{oT5XK$mRG;3e9=vZQ2mwP zQq~N1ZXE-mltxKlg*rq&q1@*)Nl?=9;~D&YIKbv2FZPLuBKf#=7R+SfdbM612{b6( zdeBX+)m`}wQsD^83l-H21UE6}0vJsue)1q6W5#l|jFA#G& z#58bL>NsFH%5Zk0_am%io>gOY9+Xexn8uJoWlYz~q$6cC&@zEhYIg4on|sp1Z@71G zJ@&q#u6?Fj;Q+JfATPhTMUAZCdYFGr@#=JBVEzR3}Z<^7VG>-kI>W zkFSVeoiK}6Wf-@)p(ALg3!S}ch2xM{=kYG=8DIC;8k{xufSA{qgN4iy;K*p%%4qYV z>_wH=YaYqxCdQP_`^tlY{-ga)t^)5KOqTW)zMHc#@#e?2u1L`o{Sl$LiX2~icH$*L zFoIQDS-BCGPHePtF}$*21Z*kx!EbD(jYE0{`-Cw;XW$D|T!rw~jRDL6pdna2O)X=) zYVTJ2%_w*5&1RglSc0nUf9$afqI!;1P|d?uRW}$fR8qB`(s@?#J-@Lz4K+r`NCY9U z7yQ~?kyh=zJrn7czfvnH0C-gdy}^Z&(u|I6lw><>*|`DS$xe7^-2p<4qF_^SRxN#% z@3m3)XZ(Ddx(XFEYY&*v!Ob6g@kJp_?2K#&L?YJ+@@W__GLmMsTnnu1-lW#sh|+$L zy=^t%N=?GFp$%RZIVI)kTzPTu!+u*CYXc3873gM-rsFfp&J3%QYvc7aXW1sav%S`= zZgwB>o$)q!3sVs5&0b#*dq>zVxp&oOwMX@q!fooQOTJGVE;f|5q8YH6Cd;J_oJI{bf!=QGUK<7>2*s2Wl(sd1pubX(A_4}?ES|x-LkC-LDpHs*c`3Gn zxo6%MiE$Z1K=|pszAh*qs&V=+-KA!arBzKE(#}G2$t+yo`DkKjb zgoS;<64^A;gscPnAme~Cs30}wBOo`>AHhBl{uQlsfs&+I7WZ3{k5RG15I`o}7+dsK zr`AsykzWuHklj>cTq$Y=?27cSAv%yTAZAziGhhP5Y7^m(%ye$ZG8l`kYUzYxGT8gg zxp#j&)}uql7`k6gFnXA~O|hAND0q@;nX_IaH}qb{KgdWq$0a)(7NJc9D5@f0v5sN zFr`uEikQhr4*I7zkod63TX;jMJj?iFjIeV$J3}GuMNgDHG^imfqz?PB%_;y!XJK1A z%h{*>Uq)l}1j#^4UXUk>=Jy zLmCAVLOK{~wYSgYeIuY(PMG^bvrXbMVaq4Z)VeY&!uJzk_>WAqgmFsf1wWAi@y<=z; zB$)vqtAM%4wkEz|tYv~!k_wD`-*`w;w{(WjApSV%{k0Z9~<7+op2UolQFq-z> zQlGu9GTL05?QIT4Ew41%T(3r(9;0A=JesYJUXB%2j6frPn>ZVFYb3u*CBc^dTK{OZ zJ*E)9YFuSu=C&)VqnPryb$cey4F#yvZf6W7w*>kgSj0Y>Gt;n{JzDeJ8P5)~&Ph>t z(6?LsDL#Q!)1Tx^9UFqpjFunpH;3#)-wr(WAAUD({Fkz7)^1&c!LzqOqbht)a>r%y zNKJ)NrPoeI1~=I=ZDYLilmS961a%TzK!xy(0@vR4GCFAYK^L!riJLWyPB5u?B#OPu z8wl5ZW-M?ONR?n#AQXW&>vylVB4C28?O8kM^=(!JCs(eybAy?T+`J)uFxlj_9*^oe zOn-gro^WXP^;^Olhet+whHH~Z<=FWckq zANjex_VlMdKibkeXUq2OJ3oAJDQSGoY3jWf<+HoAca*(q(y2pRtNwwZEU}|c%_MhK zv(|8ajD3Ws9&kUUW$n4U=yDx4{ z4L$Z~{n3vFkLmgh)^^hS^dF7HjkSi}^um#;)~+{VW`7m!Xe!w`9y+hp@yI8k)^ArB z+Z49*o{Fk9{EFNBYEt*o@v$&(y>6UWK4avYUcWU4t%-O1Ntli&ezl3+o(h@Ui7l`T zkW7DZF&6~+huqKfXT?4cDLbfR{0}R>@`&}=oKc?FE5T?i3nI?j)!mk z`bEje+pywCt|Qk7Q#*NmHB29b^0Q>K^DPy-HFEKWRJVrBWJ|+qHIIz;x}{rvGa05* zt=HZfW@Sda`>)&KG=mKWMbrqT#Etdpf@5_MUY7)-@wj<9lsqHGs@D z6!vwa=>uQ6uIw}~_npSDYuvh~KGh!eH`jJ37Zl8DHNPo%g+B^zxXVw6?q6djJGL81 z52_}>HNsFtyl^?x>oY&(^5r#U^Zg*SGTf9vScCnpZ}+)=^qYZOi}=EEDVPx@h7ZoI zyzKXl@@v+l5AN;tY9o+ry#T2@*M{j`FxK8RJvg?Q?N+~;0;tZuek<73EHIvu>4H5+Z{&w#9lkiLd=*jrPt?VL0fi<Ci|T6htMqLp^|_ia!|``C4vn%r+pAGCqbg#B5Uo zoeT(h*i42gKKwWZm+rfX$wI*kZ~N+nNu$b`IRPGJ_!o~%VUD&AZAqu@evzI3;Q=>p z*2`wTcLev2a)#dNfXWvX>H3OJhz2ll5~ zL8ugk;8V6hVSOIPPoQ7QyeW{^5#HRD4?LDDJCE&GPpzDZK*g;6s=>M84bdsg_|Rsf z)e}En3ryV>y%(baUCxNX0c)dH?*9xzpF$qE-8JqNQe+CcquynJU2zEj&eUV|LVVT+4SWR){RKA_IhL9>@|E3~MBDUCO}pNO zP7ZGUvEQ~QCEl_eU;52eQ@|B{c9>SQzP0K#XBP(eFqeMJKi>UfF#xC zK85m#H;IPzno+zT>yz?<_}H+X=+k+IRF`jEe^?Pq*4Hq-gl*qVxImm#xv*bi>; z@9|}22pXOSHQnI90+jY2Z@5{|CC%G@Uo($;Fx3@0yAH!j)wk}#Da6R1P*|pw+Ll!q zefslI4$wt|0gJ}X^aFN~R$?;bGX}mM*f;i7GKd-Zw3rcSvby9M05(7^$h(aoYuT&+ zVioRfwh=}cH221hO;ouQrx+tIMHA3n5duVT;`wch)h7L#7aZSEGz@C6_M2nAGQWAM8XhSRSRHW>XbuKuMhR@Cl=z7dP!e9CELJ|Q2Ndw>!G6v5 zpL!Zktr8}?sVSlLK7P@$e4S-1M@-AAah^;C22%j(pMDOhwEa?a5D(69GlNQ;p0|i z$kG*C(;l!od>3?&IxKvBz;h)P~bTGm)|=Svee9xbeYS{1*pOGA|l~lE~mYX zJ0;__-V$d21a6GI0omoceTRAN&#e@<30jIN6v5YsPX~5N?}UFGOE8JT0_CJaG9pQ- zSIoFM69IkGtB5EEJxJWD&L*(QcG3g-@@mok2B0*wlBjH*&r0_2U zilXGaEP+55bAR=djxXd*ivQL%bA#?5{FLtzt z#FmK_fH|jBFXOOBBp+d6F=jzHOEiFx6e(Vju24n}=@9&f87Q@ffoV-vESH z0jD`W@EGE}o&C^185?3{W*eN^78(B!jm6Fmp?Z zm|B2GWvJ800XbxCng}tng1iG}jzq=lOgn(?sFwcEzANH!%|{`{bcycD4NQ>CX-qoR zRiO-EA~f(?w(reinctW(6kVc}cRz%|YvuUx%YX_i1)-3QF8IftEL@|t80`!*4nW#6OWXDkTb(Do*n zEsiw3aRwh+h8w`90W~~)Ptbm+>b*hrHgje?-X4rA?~bwd#8}q)hp)Wy#@yX;Z}Qqo zQtw3wMp-sn-QKI*Ym(;uar1K(D~z)8CCw^IMRU?f9~o~ohBAhj#&$K9Bg1s4MFDW| zA;zX;Y7JVZRW*}NBDg4ocbPiqMV`7$MZJxx_ofZL+H6v?4gTga)vKd1rF-p1@r-hB z2{!hBnvKl8M@LjfiRRTYIKk<#KiB zZDTl|U8myyi{eHU=75t0uGC=GP5_OJ*1sXK6L7%%D>iNn1Xrv)t02zz3e?oY$Pe_v zr!QgI1>2RMLCw7vGUa zqt~y=W_RB7N;kW@cW>`?Q?ox8?eOjx`H@?}GX5OQsPVw)k5zA++WBkiO3CZrh&*&W*Z6)&1PI<9)MYs30X*auvs0g^FLldaWD+&)j+y@D*gL}kfvbZn}F zMYUV2`+n00{|JI>+jab-?wZ6u>V?+rgyM}!q0*wO43#6diAjgk0vt2tA_5p6Im8m2Aqjf$&%)9!j@ z-N@`39%XxE9VCs?2bDn{#DuHk_AOu2c1&3gL47p|+OLs;v*7oic1Ol1zxSfdJ=_wV(+=G0!FakSO^jl@P! zwnqL0-x51ddSu~c3h(!Ho_5vvJf}EMZEXY7{pEY(TlSUBnN8o9xB9ENXfefkF>n_Mml-izFmidt zL`KIH9KlJsGC=gE4nsj^?%xiwV6=8#gIu3NOidwWnBj%H5pd}>V_p!30~Bqmsz67| zo7fb{7${st#5YF|n2ZP?a(|TlrVsS{AN%bU$;b|j{OR%zK(-skz_-A-n!h-X^Pox} z_*U7P-sG+5mM5YRz(7JT9cDN*S{XU)suoa8;V^0o-!jnH>3$_JL3?kMnIY3pzIClq zwzo})rSr^f;J!t>+Foloa+~`#---h#!9{5X>q<+bI-k1}Y#8vR*-MMEKm;zKVB)^C zU#C-dg~mokdV^N0d34rQa2mR4)NvV$q;EqgOd9Bu!+}{S!yYsgMq{fc%h-w(!bTfI zWCL322^0MWXc(p8iU3qjYnV_wSNVzcw||*N4G^GBHXFtk%wv^Jkg{}Y^at?J56q`R zX^+^0*LLk;iheN6)Lzeu?d&W47KLCqR1}CI0OSVbg!ZB|m7QC>bTB;VhulqM=rTFt z4<>@sYr;sn;Pknme`dhdfM1^R*d4tACk$COrRfQxMt=gkGga?h>&1I zm3&lhj*Kq8GK8#Dz^G7K;j zc?)#XzRg>akA>(LllAq^nn1U##Itk#(k)Dq8VB;R^ad?8W6}sJ{0@FK^)(MRV}6DFpdrf|STGjGZTA>@nbSk3*mcXiM{ z9DGvQckbx99Y;z4BU6D$00=di?82w3x!uTL+H#?E9`Uo^#T&lnvvvnv4&=On>e67%C%&V{t$(Df<8eA$g$U~G_p0Z*nhdlnZKT;B;2v?y6 zNYQr^fZ!zTC5}>M1==db$iEmiu-FHc){deKn*cW(7lv)jg6|(QN-}77nlg& zdfniUDLsp2HHCXrq;bF0^rGUxzTgQl*J^Yt4JXQ>@up~?#nMICxL345RvqbYz4})> zkDvcUZ>s|vXEGLPH$sSWB%jik6oZA zLbFoZ>^5q-@k!Ie2gDu@kp!$xtbgf`R)dS`s!fhwz`BRPVyf;CT8SB36xtZE;3y@%)N@l;hso zdNbYrjo-y;B!s)MB5GJw4QOA=(GwiK;wyxOHxYR!MJheN^uotmMArQ+~=U(+0$5U%q z^+-olj-S*_NLY4#lPPUd&Z8Kb=-AfMr^!StkJ!fe51nBvlSyEV0U|nmwkW)4p0r98 z8>M7i5#ZI4Ud~JSwO}s&(c2MoAS%*Eq@$o|tj$o7xLk|%B9em<0b)sxR9V79QtZ)S zG#D7zK4HEN<3fxOiYLz<92Bq%8FC~1roOp;zu~&RU&ei;gc$|4Sda2pC$6s~HvyZn zi1ZmMY%E4(xs0LMoicdfC=d^0%wv~}2aMF5DPL_(i$elj5RoOd?k$Z)2gwu+%NYdr znXA6psk(OMf=yca7bvCjirrSO^7VMxj@2rS3CmI`n~7?2jx}yZJ`5RksnZewKRDy zEhed>Zw|q{k<-9QIKrjGErnympm9iFEJo%#gzJRl3}x)+$}Z&_K1@^7>}6Voq-u~J z*+&}{Z&BeB2P78uNFxkNqEI{oOUa|0!YvXnts)|+6_vrF9$)}6^k+Zu{Zdt7sw|Vm zo{cP@iEI5AWEH(qUgCkki_#J3cf$A3PSS&W7>?s$dr94Ivp$Q@{nEX_+N1)Rmj50s zt?kIe>npanw&z~{L&h4`94V~iPD7CnnZWImm!=yKOXt)Te9F!X6Is{5JP;;i&IYtR zVRgG8Wg=h-T7aEwHU++k1VsVWGr#fh3O^Dsfn-e5b}M%7$8L=psX{(MBeD{eS{(&(SID9xHBDbf1`kSO|vQphQ>WD=U znW7Le?L`{3o_N(@70pNI$LnPySfCv_ z_Jnz~icb|-iE^I))yc?kW8`4bMI>#>3+5JTlMy4NxK|=gc!Ac3id@54@=ypC+o8-P zJ62AJWRJ`RqKj*nn~2~-6CE@^`!o%a_cjqDN9W z1~M|Hh7w1iZ~{;k?FQvzG~L*`EDS1ENHd5s;Q(dDRx}ZY)P{FB)|v6&|Jjchmqsdr z#KqAHSOQN%$c(V_WtxWz;U&L6uxDr@k;gO=V@Hv-mWJ%KCDAz2JpdmtjZ{W@Jehd* z&h2ACMJcx)xPDnCRJ4F{LAlYE_He+d{b7b)aUMlFiPJ61#AP2oT)95X{;Yp zC+_N?dk?x>CBs!h8T|6r`Kkj0wSRhS)7l&r$<8`tz|x?Y7x zBeyZ=jcrDqVSXrhbEqD{fp~qJwWBxt-Ys6we|qrnWW`khbBjUEM6J;Z&m9}^1;3y!-cq13ag&+9qqy%lO%N8GeZVWy2eyj0 z51a3BKrQ3Hzz%)6`iepS-5X|K|HcsT#$IQCrT;$nz2UmjwaWE=D*&pR9C&QJ{zmW42Uw9? zcMbmH65cj&+>r$LhYuuX)_R>EH-B$Kx_{P2Zitf<7A{7r7}v8kyI8K%+%G0`filQL z9CRwaH47Ay&Fn=^+40Udfz)Oc7-E}s&&vm@PCn(!} z?yzgIsB>@cm7j=5)(Bx)R8(uaWm93e;On(e2&m=F(ESVvXc+mj{4@p{1W2MhA4@h}rWC92pNzB2E2g>)=V zibuZoA%UFI@rY$*y+*KgY;W(=U#c2wng!7e%zR~(M-$@HlfgRgf^dtpp)$D@Fcv8Cva;O;h9F}2v)2y?FYXO>_p4_o|n-3(oVTf6D zi5Cq#F{Z5DV@A+B^3&l5UtE&5W8IZ9Q(UX45&W|finN*y_%CR#VU3w|2()j6lQL$9 zshzm-%&<5DyBn}WfHnRe+zTL+&~(GS)h0gd;>^+#hoPY;^g!!E!MHN!!%N~arleCu z&Lm!~%;WJ{b%yCne7F#oo~Qrr2jh`q3mM7=$OEwA8jZSWAGK{PbAw!rG*cp(?Yu1v z!3slJcOin9^_-6GNux35S`rK0qcs9r0t)D5QOGF3C=xNo^Iz6G$1xRD+_(6`4~%}+)XCqHzi77j9EO*_jh=OC4Hh%=DbOvKq8G< z;noK#Fhm~07`U3P1+Jc8c^nbCWB|ah_SGY25WCI~zzV21~QE!jF`2vxcyh)U~7&gdia_(!Me4^#k*T038{ zj^7=TU=h&xa4zF-E`wB%GLU7Kd|C~xCJMo7fke7@Y{9=K!ZL=3N{h{nBdhpSz zomYC&q2VA0X^k)G_e$fSO5?ai_(ONpqiDjttLmjUFx{UswP6G^s2!>(wW$i-u$ zKaYwBn1yFFNtDulqVuFzOhZ&OsFsVGN=7+wB@AAK2_`|-7-LdqFrm_6Kc`oF*=B%% z5*`IIk!~3tkDd1hhkGSa6-09%e+rbtb$UPvRw`dLjE0Z<4gY)}c~vwH;^*E-wvO z^Z)3HOCHo%^kOnBa^|#K8&#vKYDU$G>;dtls4ACxkOm??{AZZVaI^iM@(@7wCu{AY zb-8&U-)FwGKD>&3VceJH584OaORIbGdrnQUiVNUX!BKB^8n>u!l4FCrr|(hzx|^%^ zwLyC@KUiIm=DOK@aCg>cNtzEGu;Qy+_aiggjTZ%%J~Fvw>S7AAMcx`R)@{uFJ1FsR zPEG`aOCsclTQdtD9?whSse-+^N}+mG^lIsy3fu=9Sjnk}r&Tf(Bzk zgT*7dFHyTz#W%QLt{$m{?`|yFR%iX-w(`nbu#{tyHw%len?hka3X^f1_yHDxXG6SH zN|_PmfB_i+^eg!X4zWt-uxpV7>r>#o4^0&Y6G8^b!>e%Xd@cY%R*^E%=fjFOV^9p3 zRr(9L$bnUiih-{xJuk7Q=?sKB)o=deC(<#;6zjNCMxquek{s)~iW`29ryg5!7do{q zK!s5@mWO$sNvFkm0=t=&fOrojK@XWbesvX_fsvYX%O9@}je1z5hTheNGDtu>6D5ou zWyhedh$6(n3?W#xVoFjD;-MIbQX3jz6@mf9b|g|M5`QNA4V;l_fm1T4T4I|oASlm> zpL*y*%zhG|uV zA_^l35#&3^A$Mp+@#b0|f)z!KsRgFWJ59k=&r@q6I;mD9b4- ztM*=S{f}O4!OD^-WP>r=v9y&HX}!rSsM?aOiKk3 z`o@>uBKVaYl02ytFidQLe9HJrC5o<%l~Aw{6e0vaueqDv zCKtsN0B5pcb+v@>)6GQg<`4X?p!o5FIS>|0E8PZ2>!ts4Z5ZRELRc=Tff?p$ZhW@b zqmUFuUFp)K!Hh#uh$3yO-Jwc1r?7L*Gby`BJE2a+!*F4J2mMO!r;QfA2|xCx0bzJ0 zY*~~U4w9FJfV77$lI2Npj1w*a#MUgbW>k-24_b`LQ%L~+rXeEkifrR!TmP(xUOYk4 z6iF8$#8gFxlcwQ_VnhyylHZ~+DX1jW?bpQ>&CJ?VdV*nG`xEA6LyC+M1LRBxTS*_& z8eB>gy+U@&tAaX(v}hEE3$0{HoY(wxUITwG!oQI8Bd@RyO6-&25ur24Y=@rS2Phn&> zUg+X{GHQ(80_jF{16LoQr8Ln4r75xX#Un_{4N%2#rrYaQ_#pB^Gy4e((#gbp#K!snPMl%41U_h{sRO90bDB#_a*yCxJTD z=|$}G2>2 zuY=tPJ><_RnyAw}6oD*}S4`bWOQqx7k$IRi4MDATel(1CZlR;Vqh1vsT(Xwjn@1=& zJ~zOMQf~Uw^_TV}8{a8SQZ_Yc2+6n&87WwpM&@+EZcWLpU<#?bmb}SU{##^OO6=)Y zNpg&UASi`HrbT^aJSIa!RZalKZV4PEeeWYb*N-b0V%aSvsnGi)uCfy@t zr4gj~u1fVv5v{h3kt}rIHEL_&9wHO3SBPcrI;PwPNjAx*}|rPThYI zc-g9$h!7`>K6dGSaq(bGBDjG^wWFVQxmed!zqdn=k4^A2k zwur-w(DLN!=e&21Phpmqp8P zCU6WX3z8G((nAjCNPYowCQPdQzCkK}uu3?mto;4GKegPwW@7+N}|5E|5|>ICS`X^G%Z@rCOa z?iBQ5T`a9yE{B=RPTFtil%0ZJ(%En5$-(YcK`-+b-Q{Pw%Cht_um3eW^zH?F9}PW~ zpR&5@-O;z7wkIoAScnyd*aAx_geDXRRlrbUprLbgj!+mqqS0V%`X5}$`jc9fzb&Oa z%(I*!hu;(M3>Zy|1o-QMIQ=yi6Om1$_BZe7CVCDhB+*I7+(!>h1ilAm;R6sSmPYN9 z-AtK&mzc1xU!}aF%D`K4f#gUB(bAZHj;o>^qJek;PS>c1;3%bgVK1Fd#wfBfzh0^J z_l*#L?;35nZ~X-Nfvig)DWofIAt;KHCIKvZDFjiGhvc+?dKi*5D;LK9zsIeZsfTo z)k(Je*lh-Jd=v0XP+{nbGZ92&@4zXB8GV3PKiP2j4f(z}i zA1@afJ;z5OlLx(6GGRndki4Ag_8!V;IREPpCPnuz*i<-kK7A>VM386QEGfY8tKtDq z7KDfs5Y>|Me5s6WD=9dxkiE5Qlm})gnzZ{Uzy4UqR*cO^oUAN? zQO0?QVTHbf!PaT7ZuEtxqTME;s%fU3?4>a*UUIr~!S~te7ZI7UVkK z7M+C1kzBgOm+Ve7O%W)W0g!|(_S#`a;192g{gtC5WA*W*>gg?2D;yiGj)ags+%yuY z4HY#KMo~ho*n8ghaR6n|K~lpykWSc0>R6P&+b+c|0gypt49{XKqe9zDQI@x=Z2lw6 zojvrIJ=Zn;a>L)$+qhX(SU5qdvV%>z>f2>&L&Ynvx$aUwN+a0S_o^7TWAdVOSu!v3 zm+DES;PoO=p=*&NOwP3sLV&Dn8l_@YCb_dwsmF?*;F;h1sl$14cNRBZA^WpP9}q>J zM(|dqSC$z;#rWkv+P-0Gw=dP|2r8*=G9(kxNAo| zBvN%k!=#&oM{@W%z0WW(gi*$sLC7dx6=gTPBCkA>L&7YYrocQmoKT+b&L`|v>Bjvv zjO2(7TBGSOZ(ZQM{I#Ys;vH%e8+_C^#8uBK_qtZuH=_+V;o=Y$yP#v1(DaxA-Kxrl zC$y&sj1c2U2+WHTD#WJ2JO5)b6NNCCfy_Bg3H<`34vREOb8r2TxY2OMB-6LLCV{EH z(MS?As$7?lu?qnNfJi$=V8Og()#)*0PzbAtN#!EXq9h_ypgkPXi3N?Yy7^iKl{K>5 zc=gVeYHN*wl_eY+XD6%SGcOg7cy;m(Y-=|JTtD{*pmQ}9tXp(08Fagu8phE<8=`e5{?kD| z3j;r5Yp5>t zm=#`?>&dd8q8)F(}q=M0EDaHhzVc%}CVe{^o zRP-C#LB^w{k4z*dqfm%~GWVlzSvum`KDn)&v@?8>EtVBgf*80tW{a#rzf$EJT~??< z9a4kXlNxmNZF*rbY|1Z8#)w^HD)k{GMhAx~AbdN%skxLQU4I{5uWRFZSk&ws&-n;%&wlPt|&9?h) z?5;RbQc{qYJ5>-xr}L-?l|y-NN5ua5x@-?C+>S-@g6(I)S{?EzR*rQnv*+r#%+dpopD>x{)dImo^KL zs1vg)N-D;qYLR-k!Gs=CYB|q0qFi>VS45YzinmQkbIT zotsmBj~DcmaG_U0rJ?}E!}7}FBmq1;QC98?j_4+}AVrBbe-t)pmvuT}%9wlMw>t<- z7loORdm>LliW|j6#-B%R2Beo&2_9fZuy}=v7x8FA%69X6;e*03r;9k!Phykjr_@GX zEZ(NPom3=*-ZNN4rO~7!!sMcKasBfD`@-D;E)E+d*dG&aixubp) zBpG(fgQC*87A81xEW9RSr+@@XlJa8rvU|_iTD%IhAtjxA^8Y%KQunIJO|H9)%T=cU zoQ|gs6LzB)Cz36yAc;TxFGAxJ$9#)*p^W3n&&P6a}%0wqQM5~Ms zC*qtS+}zgB4B$lR@|8dGH2DJ)gaF-A9e;^jNV1z3ydY&}80`phsYV4s6gne=3Q=*}D1+X9UpE08<~{X^AsaFe;Y8KU)7JUp722)fdns1JtDn8b-fvGbtF<`OZO z|H2HE2xjPPkmn)KC(uW>4oM0j&nFEwSUBuCR(Vhi!2!F*TBZ`}C@V82A?c;Z-n@nS zrD54bJr=E4EQOdg;&RIcxyTt6TIz)GkT~24hn}#7q=p^CNDP_cJ)X}Wl4k7P_g7>T zZ7SX-KcxAk-2tVq)Yr(1 z(x@U!@vrU}S@Y%(X%_zrg`>FY*e8@kvXs^mks`TPrMiSKJh+?N_bxg(8O^hY;js6i zuyxVYMNx}ed5<R$X8V#s4og}#Y#YZ%}7JrjQORveEdEG0J*seA6! zK|(qenx|GLB~p}Tk*Y|hywj~lw{UZBeqAvySr!{^5PQtqP{ikE6C~`IV~d@OWalk9 zav){7L%}FGUz$kLgK|Z#g{{u@e4tdfDDcC(F5r78MtMabx0UyaNr-_XmHS+k2^BHY z`0YFu{+EZsJYvFyGUYyR!d2ckNLzK5{`0L6N>Z42w7rLMM_k;{5gaeY;<5x0jKYW5 z-Bu_rjzAKL_Bgm%UVKF26o#1<2J(_GDTv)gc9OA!7rW(nlO|QJ9vT#NcAYKO95j}s z#rlJmL)`LFmag@OooCHG`SQZgeBL%ANk=@)i`VdlKY7}+YhiW_MslFwT|4rGbw>)v ztxLzc_Ni-ca*IX&@4e|_`K-yF_jZiCrKk8#HiGz+$P%9v`PVkbmZc<%*mS$LZ^)SA zlYda|IUn;@pcoV~XcQv|%-6l_o?`2t7%rCS;4{1jvrgA7y6b|G2TqU?oKt7WKQU_3 zi)65rgFYY086bj=(N(u7JtMa#6LiK8Op|0`Zx!hmnyS2T`XM51UY3fSLdw9aRg#tN zLHwd5QYPs+#%F&S%A9m`EH&OLO3fQG49}Ok6SF8or^E!v^WsMFiag?e?#1_=lxX)x zl0j1t)q!Xx&^x7B>=5;@lPLx79#Z(X{!2&un-4q7Gl@znLIXK&d>O6{ryY{FC?XV+ zc&=z5Qry!I6a}&J5IAThopKUU(w?il@|5UBwnbQxHA1z37{TURCgBSEk7I zBJ}Oh=i~=-eb+9UCIh0>WNB`ke~U;(y4_mMHQqh{J|(8yin1UbQld-lOEkYkn?E{bAmWX`f5GH@;KK7M^_65#Jr+cf$0SK( zKcT+=)Od2g;C+Zc+c9WsX|){`KC#ev=eg*w-rfK%ToidPI6 zq%ESJ%JT=C9-I1$QzOg0q$h@(2zod=6`hPQvgY!5`HsH{HAsyIL@VTW(PgB=0CTKc zF?BrRi3=Vb|G(I5+=-Y%K$4d6kn(gV?g*e<&P|tJ7_%?%@d>hG`mAdhvCJTkw0NXq%W~ zp)qjmPu{Swfb-X)VvDkiiY&+cdH(V7Gvx1ft&S>P==O!J@a?}p85ZfhQmD$J#*1=I z;)VWw@+8dhv^y7tvM+t1n2-{^y|CTL*D!vlyqLg~G>b``g0j*$qTP4?pOScyYB8MC z3{uOEal)l}{XciAe)1bd+7!NfoVc0~>72#R5SoedQ#3h55>nv{e%t&Cf`xC)CrfNO zmL#{(fQodYk@@`f+#5dLdGqAoZYxTlP;kl8l49|UNHN#P3w!<7SHVb&ngNtV+!u?P z9+=UO0l(A=;DRJ@=-$ZLxshKg@c%7 zD>euzQ*JN3|5Ov_xPijFn2BV_h*j7vXRO7^#XO2zU1a1`D}G|vh0DKi_P*}q)tNt= z*mca5uO;#&$d4`W4RwV_Q}7T4?m}KH;-xsFFP>Av2A1c! zz1V&0xtC0zF`v_@NL^pNcTpqbjOi@(@Z9TpTFDTuzdp27J}1pKEg9*=1FHGzu;Wp8 zBJkX=&b^w8mTuqW6npME#L1)kJaW3I?qf_GtN+KdCDhXK&ol7S zv|0SgIa5q5#o|wf=t3uE97S~g;eTE{qjL#erot5hy(rwP-?Eq`^&E?Ks%CNh-DglW zo@1KFHK3pTh3ELj648o;=2eiNea#ZFBzQj3Qc>n%sN+TZ;H$;2afxG*!Sdvog|4+A z=-Y2NGc36v>dBX3#lg^L&4{LCCJH{0gyFp+2c}7&RX zbc_1`?1AIXO3gJ-hvhl|-1`Ql~-YfA4uaEaIrZ*9d5eb2y60miZ~i zdEqZWp3MFGx7~8q;#w_Ph`C?;i*uCI#oQ!5c!g!qRbe8=fMZYp@RGTm`GE{ZGLjUr zyM2a*P2q6N$^vJm@3PqX=e!k0X`2{6?K9}cgpDmK`rujXnsc%zkRvPj^p$6 zU9V$f?)tAT+!EI=h$c8^*yMh7gFb~7cXzuJug(w-0@F&%8)8r z$OK$;!q-)_rR7ks=gQvqZsO;)^aT#Ki}=RoUp$4Cp2sbt(evuJ^9X%Wgpd94@}VEj zW52PyI?wYUk}>ZL(5dCE=Q=NVdJ&e^t51)6<`71sxt;AZ$2ps)%dDoHP1a|Qd%j?2 zrq5|l{iD4XoECVl0n5j*l;C_*o^3NM7sZOz<8S#c6c@`}u-J5exA$L7L3am^{lgEQ zZIdn?f4Lf4a#+rO`|n1eeDA8z-_eqv*U$e|_4B0##92OBJ{f?r=|22jxs>L-8hn;a zA<>tQF-YvYZPYrBu+Q!IujfFUC0?PH1IuNf`g2cydWme#A^5wE{>Q6uzF@~m@frrw;|4y)$~3ck1yJv3%~g%Pr8QB*zudb1xREz$fl~KChqr?)h4t zOpj;3`#;)3I$r(n1YaCa{P|p*FWA{qZ@DRkQ^I*i^z(bioE;m&gv;T~GJ(o)x{J(r z+7bObTJrO&M|&TC)yHSqt$Y7BmUH#!BK&!N=w5^ORMMK1+^Sl zmYFDOdEUY0tl4a7#yIPwmQR$OrNnslk}h*sS~i9?*t}q3xwzkOzy7_rMpRnwf46rv zAx;BPcv6A{_0X2MwtF!RJ(Lv`Jb5#Qu9Ss^D(u;-2c_P;h-6EO5q817)RSuw5%wT1 z9=r%Hc=fO%;z5wbyJC9MllmsDjT{J%`!yb;|Cg*DLp%qUac zhCZ5!8{JPIQx*NtRCJ@;-l7a#e2+SBc=AVac;nFU#6zO%G;|#O*Y7w)a=ze|EqTTx z$ets}5ehu+USaq;4?<(#L@y7q872j!f+ek~9?p<%ZE;3nz-OWJ6U9pfBUTHAI1LkY zN>+Si;qFUvjZ-I$)C3(*o1*Mu=f^b^bezd;wuyewr|rdMdN$}rce|3R=y57KMXTnU z3_Y}H-(A)iial9uy!jy@_(s(3{l@~*>Lqdb%0MNV@b1p{WI&A4W1#NpRU!g!=U4Il zmA%=E2#OMKZxG!$m!rr8l)W8dVhLhKAqG7-a7HXH03?Z}xGRu_in#x~m@>-h0kUZ2t~t z11)9f736+BM`w~a9Y#ffU%wl3+X?|W7eFEf~p3%m+(uqc6~FWpRfFd2WQ#Dvv0oUv76Knd91*TI?1F)wc=WH3qJ zh%|-!`~@M4WTa{s_F-Y@={wj*!bo_B&nISZ*WNJsT+ES4WAby;FTZfAZwyf7|3n{zK!D(1p&wV)mh_WqNn+dCmloCnt1c zuW)^lvI?A4%G(HOO$i~hFIWxKeM>Phv8maR4&YrA@3*vGnYR9}kZ&nAea zs4`ZZm*o{(ZJF-zOBo=0{1w?MNgbzVR`f-w zXa?%sLxm%1T+A#TXJ9IZ%3E zLV&asJ~SF-Hc`MP@g*st(1KFA_)h2$1UTS_*CUeXqt z_xn4uBdrw4SdMa=Ui?Tqf6knF&U2pgoaa2xGiS~`_SlKxjo&fwt$+R2zx>O;bpH9# z?|t{X-+Sy|zxU7o_Sj?p_Ps~H`_JDMaOq#J+I?a~|Ic5wfN`LAujA8jY8)tZq4(}A z?TPG#uL$(+d&^jSoRy_}1a)91kfm!M0ZLm8O7Df<>%t=lx{#Hdma=fGYgu_Z?xkaG z7cx4s@_Nh4jAd*Rdl8GRWavp%>u|5E3=ce(sZpX|cod$W6%+KVRLmfa(|bez$d9rvCqZ7Im| zXfHTXo{YasYJ67?X$8(hYR%Ho6&w0 zxCi({K*xeCU++G>GJmZKWO9;~r+vN$GP<%l=#psCy}~yEsL#9`5Dk9@WaTWk{|b;@ z>!t51U~?CG>Cv&0wf{J90Pq0OrhC-hS-P(2{7YTXaRyo1Qv1dtxD^o37lUXJs9goR zE`F#U;$_;i(yjQh7+PIW-VE;Vf-Ws0qp`Sro&OKuM*z{$d;LRQP`W4(O_Is1?QR5g zE)b6N=<(ancOknXJiTiCbsG&{Cz!eaTf*w9qN*fGx$UobbbM# z{VxOJLoZ~!QJVPiH-PpT+y?aKS6@^=6g_HlfzmQi8;Ks3r+r3;uJ;4FS8^b^5Iq8& zXXTyjUgh_K$`hm%rQ0+m-TpxrbSApQFYz~{PkWs&hOB+Ey{>1++V|3+W3~HIG-PQ9 z0hN`}CfWKoKxrB1{QJRTebU=kbexs9+&(KSyDr*Qw=7-k5)Der;QP^}>x=2o7@PHl z#k^73(wzbwOMko$_&Ok&y9v--rxeZ8 zB)UaM1|RK$&QC<6`c?*?0$u<}F9~$K7{oi3mBEJrsn_gW<55Q2Qu|wgdx1p-q8#oUTp9L=j)-3@_7wA%^<3)$;0nw@9mJBxXm(*2kR9uqXpt?M z(INioIO`i3KXfkrrM>JS=`?}*`UXI@?iYZ}e%4<0^m4FR=YI`QT1H2z;IqKxz^j1Fc9Tuh?QVC7$KrKL(L$Y}{wll~ttwj}-UxIo z+fjR!`zu}0@qY!hmt8IRBjAf&(6K=2Ki>nAL&=>$#~FwQK}Lskoz63!E~Z0uQ`s5x z()AD^-SNjg@WC#;rweBQS9C!S$xL6%Q=GX1LkZvfI& zna)yL)^D_zJPLIDTtNHh0FspqM2q^e_5zi)*!NUkbCHdX)h?F;qDOU<{j9VMvi8Z& zp8=c;Wa(ft@MR#=W!e6!;>Vp6Jo_18bfrin;qcuNb zMZPs?-F1E5+>+gI_K~$Y&;1B{-q>gMrc6)tS9=V6%bvi;`o>H6xx>PyG!&}E$_Y^97m&9SEp z$LPly^c-eMC$WF;M^7TtNoF}M7bnT6xooF7HphySJUGpB$($#VxY`_}NIcd6!LTG3R#z;ZXyV=2erNA;+>D)Sbdgz@!m&o+V@6prhVnmo$E^%e&*HByTBvw zu{%rWB-i|q?pe4Wd@y|U#;5M>gU6wL@DGz~hNk^N)o@4mNL&Y>Dc$(t>-!`wxL&ggJa$G zohSJL(tNE}c7!;un#J$~<-xX`MeQEEb?ZG#C_r2x!u(!#J@%?}?ul>dQ!PE+Wirzk$7wrq|?eyf=uYJa< zXgJe#zx-?cX1{`szii(3e{{99rJb`Mxp(`r1ub=9d9p0mvL4=Hrb#Vz;|kLlWv=JsEq7M{rgzsJ)y)Zr%O$G)%rMzgKW!wf);wYvns@dJArDh!R#uY}Gg&9T!QTZ#jx)x}a=IZ@hEl4Gn$Xmx&WhV7Fa>egJl z&hI>hmoYg})2-y1dwl&5&TCEo;Y@C|UASzCBYr z(Mr_S(s@6q5n+{Je%uS6IL2$5t2*ERi4&Azn6G7)a_ajPOMjqM7M6j|gMYcql~YKj zmZu}#E92Y0t6-dnR0vzOFyrY+_lY>Y^tIEGZt1zz62a5cx}T_B`=n0m)~N9W1LjNK z?!IL0X}f#%7BX3NJ)X|TTLp{Ma_;@`)0bAHr;s{lVXcBmYIVN)`BNZ)1wiw@iLk8(q=H}P{cj>hLgB?*(`J4(XgpI0imz2 z(t7j4+iAXU*>YEM!Bn^N{NGr~J&W@$Y}DiXPSt6#^IrCEao~A;kvVU9YKX1>eQ}{D zeeO&2Bz>lVgQ~uO6679!7fd`Afcf2aHLL>}(D{qMIu%^K_oNbRL7&yx6!l(N!LgxC zy-e85iQ4ANzj>-HVv6okW_E0D`TJ9h3HZ>JvWxz}0p~_?u6*^1my_zU#BU4+`AXWl zh>2_Ck{hoYN$Qt2t3 zz86&0=HL2^kUg6p1p8OB zzyG8EN7hbxOSV$^bIwawI)Bc2W~uY7X3@nrvD_kSou6kGE__b9SmC|}3mD$}C*txc z!JHD4?4caH{n@?y&wKjeDPf+!Y0kKwPddpXW0YjJiSF?jx1rLx=uM}n4wfi*^~vk} z@Bf1~Tw$98#YDtq=A9X1Q)|E{`TF;rZRy$Us=(dvJ@W*}vLSs@Q9;op$PY*xfhrn9 zPx(9VddYnDQ=(Jy2bhg@{X>O$bWiYTu6d(VM3mMtBkkeenkUVyjC_h%&288GrR=&O zcgi^E3vj)m$8MQgr#h+Uw!3~6bV1Ht zrZ>!0ckZC)UJf(85ts!Omp*$5-AZCy6#X&hATwMD4L)HK??-;S?NGE(u zl-3EhfQ!(n|Tqw&(aPsqN&{oE+)IlrWDvV;A=>koz=;mX-y2|f-n~hs|5`4I@G67d%;-O5Ve%h$aY6Mz4R(O&Xu1kcvrrR1&Qe* znY^%Hf-R!4*U`vImJoD{obLdgtuIbFygWy`_lt?bun5x9QYNP+cQ*xYUz}IFH5}I( z5JS=vC8WPzO!m?=r&(|l>Az2 zX>s$Vpt`D|j}R?LoipB%YpX128M$~!O?_+CG`NvaYuZTBJ3kYY!<-$)Icnw(1x_wF zbgAV!*4{FO7zAKn@WG>H%c|tdbb-djLo!aGc+fh&uPCYQmy`6;;Wan*(!P+&lP=`( zo|Wk7T=~#d;Xm*lqUV=y3jaU$Ti#y&{EI#nzV3#DW^MG*8xESq(bwPK((34=@vrKm zMC{D+=rfPLms_+vy7td6-;%DEzU9%f`CQRrB+rQtnlBrzzyBS-ckI^(Q!LLfopaz} zzHRj2;K`y{6Qr)4iEIrI8i_-d3cl_h^<;}2aIZ%JVjqj@A<#NrZcfR%$^CwUA zh)3F!3?X*T2^|elK^U^pe~MX}?E65ffVvseaI4k%%i5fRS$Ml@y9`L41Pe48e6g%g zzPt)O%TsA?JBdw~NFrz|qw`CXrlxM-6rw1SJAyJ)DRc@9_ozgQfoK8lI6c!)1jHZ> z@^(H>wD%iB?5)_YmjCgC@8o0AK_RjR3VdKY1b@hmk48uQI137%%3J`t*-E-4WLGH2 zi{m(nlPSxtm&-*fNrFc|@G8@4k;~t3#CNYFzPg>W8gA%NAZAJVCW+mrLb(xxQy;ni7*Zwvu+K-kSK%byUE1qk`oI1-F)KTD7pC!Bw@f zyvQ0=MeLCwyWbX562DuRIkS>9kus2UBkCLmCFL|%;?BGNTHnM9oVUC>(=Wge~Lt8F@?#)Wm z=sX8@Ud0%CKlx4UxiA&*l(-<5ehNILR9x*rGl!ykkeO$k26?Ot@gaEVzBRU6fYgwo zKLnctnTFEH@h&i|CT$>poW+jd;XU4z6Rl3{4~q0~mI<_0m>#8Zs-v=$6!B9--aWeQp41b7WM3L0~rV{2@nl7?7(1R#30z<7fX~ zN^wMjT}XA7QxI1c+-4|J0gFI(t=c7}SS>5mSAMV>7F<}3cnFWwApke1ebpxo`Qknh zD*H0vD;>Tka3QGfD5B8e_M5lt71l>ihB(Bs^lX_@mONk|Mto)#3_)g9&Xj$#G1 z?0Hj-iAwd+J6?P|YBilkR2#_EnoTEYMsB0Is}Ss}S?of0pipxQj0QpTYOB_~8h^mV zG3Cx7aG0{j5y`5YDs9fvTxQ$eGii@Zwm0V6t&ds!>|&+A-I}cAw^QPMDmE$|XBe_} zz0EHSaTdHKYDVW5INDsCgt9^$*4DD$l6(33N}s)T?(46~Vs>FA_%6ewY_-u~alq!Z4hf$$wlMtEe%+sHtU9g`oL)wsT#DC)glutkj zuYaelDuuOz-GpiS39l&yyQsi_BMQBsIhN6{o=%r-4ED%yrWWN~&HZTRb}^`z^KE_{ zf*@{FLF4bb0)EZB#>+drD>7M~Aj?pxA z2zmJSTsW|cau{WC@bD^8Xbgw^QyiMqcJtAGbP+&ZVABG&SqlV%VtiUMZco#=H<&C>%{fv5v<}qvIiCuzJlL4Z7PJ&vm`o z^9wL<&YKMx!wykY5?@$V#o~jBMcLZt2%Y2Z^~TC_opu9&ulO*<@-{X^4hKVk~i&plk-gD4nDa4T1Woi zgC+Ja`4syHzK>h^){F12^D)_Hxi2z^a7veOD=!-CqQSpRjDI=tNa~gDn@HW%OI~yW zG z3^h2J*I#t@jSOf5ZlrN8a?yKH*mUg3$%Ql&1_46DIHW%sLO?%4>vt7Vn$+Er#t^5` zw=oeXL2D@Sa5^g0a=kTZk~%;7pO8GEd?Jt){n&6glYq@G)N-yh9{M=CjJm}ZHN<^+_?DN;6EYBCqq{lEq5}ecn%doZJ!is_VYa5s z1!ZOck_#~HV`u!YA69bMz#Gz_PR}!jsJ0@RD)k~%UXi;HOpb0{%+5p#rC6L`i{vIb@QS%#A!4h z1qxJT7f>B@hAH_`pP)0|g!0L2G^JXJNXOc}_pjGrAByr>V~)y?i9nB`MLH%?N_@8j z)1(oY^h-n__#qnYDSRBN2u{o8I(81FPban_Ytcm96H16BQBt{0tVgF_=Q%phSmvoqx58 z$-o9L*VG~{c`gGN0*plw^w_hCJuF6H8>tZ!f>cU-uBsL(W+RKf$j?9=vnqJ&vY3j}?M zNfa%eH(p>(KpwU+UvSXPjT~BWaL+}O1fj^tW1ogu zmcp8G*@RRKUll13V)2|3_y=`t9dDUu=qX-x^?Ar}%%{MjE|}VLOt&xtCoIX5g5ot7 zo^7baN5G|`=fMxt<2iQanvfjM@I^CWgQi2LePdYEU*f29C3N#$RZ{bO)($PXNH$tf}8ZZedI>VPY|Hd;W zOoMTC4#{#9X6Yh{UxrktDKjX^>b&=LY*QNPs|YTqI-mEXEF9 z2XuL!RVhYz z6w!l!QiL47^jFvHEK51_FAuHvN7=^g&&+@Jivfx#pp1VK<9r#vh$0|B$JoiF&N)nE zlNv03?_i`8SVt>``brz$-#CVZ%?N(%*Mdc!%G3P5}# z!eSz`+NyKn_rPt?bI6!tD!RD#@R15qE4&#hETs`h;gL#rm)B;bNQa$&{6(uKIg~R6 z!a2r96w`AeA8s*-5^B?BB$$oRi`|sRw##^PsNtE0{*$*iqRZ;k1F26X&O1H|)pkXQpJ8Th; z4^4xaqHt_MP7!jf;aYkmhknw!=9d_asf1MJ{J*+_`Ioz!;a|8{Z%%ndz0x*OPcw%m zLH*#RFXmBb7gg5u-D(&wcNyfW1C9#JrvfQ(o|q$*$?wZs&Vpryajb8i;lY=mfX<_g z+XXW+FXIk{=>xx5{#bC25bAdzN7sqvN}Zn~Nt3VHSe&Kl#&eL`&LcX}Pe{g&CQ?+5 zL<|~tA|m!f;8<{H88J|5!edG3K4=6L9$DiK8ZRcyVb|}dQg-q=RTRgsXg&PhJ{}@Q z;dlsBmOx3ZW6X%m$2H;tX(p=;vN&}T;Xv_dnX6qC)DOQ?UB)iDuXy9y^`HMSoTQ0s z%`?P(6XucPDfwBe;;jAqBEh*cPe!Xd9?YD*R~$JD3kqNu!t}+6GCOsV>{v-A%i}jl zBx9O}9)Mm(Go<5CmS(xPeCrhFI^=ijOJ>i zv!t6RBV5F$X{6{x7vSmj-%3Xw6cmcexXaugxb=eJ2Nn;kGYp)ou4;%+g#ztifT^&- z+4V)^&ViXO4fAcJ3~Dxm0$vre94E2A_nxy&?J*p=4I*{7oN?KAc9D&NIik{od9HM? zcWvsFlAw6~m-Qwd6;Ina!$Nf;<9sFQZE1FMEZXM^=_1wTv`*N&pZG#Ibrp6`iMz8j1k>z6cAdKD9WS#alb(_!w!kaL}?V_7Dys?8Myd2aiWLkCS>k`eXbg^ zc#LmuhRrLVyVi_o@KvnE7L!4iM&u%Y1~(+CmLe_^nJC6#P{({zAwDj=O0jq<&6W~; z)q%PRNHH#?!nSJMo9^yX&#{WZ3dDnmHI!z48vza3o-vb)S`vv_4UmZf1(;yCpgfKc zavUzp?i!|YMoc`KeR9o@&cEaW*8~y2E`AQ-qN;5dHTgt7mvI1)T_IQqRLi&?CKcJZ(om)|h2v7XMVNW;V{C4C zpb`_ZV2IWWV9o*(2Fct;ITRkF0Lyymqfdt%L#fFCPKXC>zzhYuREWGrH6RqgGv@%c zl5gid1blg38zj1nI_mtlPv}%~0Zx7?*`|cC2)*HlK56k7JgAmjH;=O6fp#IqvD6m4 zDX;9`KCgd5bVIoS{2@OMq5z?$nIbRPj&L*v?M>BI;>DE2W9E5hlleQIZkPjbr_wEygck)d2J zPz~|hKu^&mnm{m$plw|E*nZ?+zhM*n4ZAaioJ$GbX7hxIB2J7K8B!;9;<3H&wrV3+d+mDNAD%o|j;z~L3HL{IDdQuSkcF1^L?*|BqT=hZcMo*gPn=cZ zRud{dSZPF;7AZj`QcZfcDyhP$sYlmsRFR$}3L8UzV;Eu4D2oomX1J!{wi!H3hvgNB-GiP+tr|1RK1Yd_*GiEcV^UDK zzW~Rm^Q1}?^8oWQiw?RVX3huM6*j*9J2_nw6R9A@OBb0SI9$zpjcC-f#w4oyN47Jw z!8*oo%;PbII7zSI84Qdxvxk_>L_21ndt@-As;=|W3DAp)rsY(O8GK2hXgJAhLvFsd zyBf5_$Vxds&8)d&;BHjAg^_QrudcBPj#l5>vZ@WCE<)$DLBE9wShUK}+l{fB7x^!|(af0=s@&WaD+|h6*1;*1F_V&1o3;Yh z%pnT79MYil@u*Oy{Tihqt{krx;#$$Z{}0QB*%+0}w31tOUp+1reMNvhkNHfVBw@a^ zn4mUo7Jp8Im5C_dGP&kP;!i}B;T$i(uq8?zQaPy~h~cdkWIC$dkZ(u<>AjYa8e+Wg zju*-&jaKKWDEH0Rr0X^Y#crzP5>@cXqtn@}q9^}Fm1SQJS;^ZjPcD)rUQfCtS6D=4`DC@0eN}Z9GTfct+>Qi(-pYME)G2O=Vvh< zD!psga3V%fa*1bAlmNt0BDEKktBPfY!ms2m!*rN|#(dO>_(z^AuRIH5Ivr~xqqS6) zNHfELucWptwU|F{6k5oS=^&{G1llhBsdn~=+l@??r{sq%OW;~Xx9mN!G4LVFW+ zh@vtP;{ZO{Zn04hp*l+1ZqeRYXW|S>vf!bEU}$XT8+Bd@DXKSv+8`GZMjP@big_2s zB){};^O!KQd?QsJTZ9AYdkv?wlxd|9EsGBr>_DURLlQ14MF;)%4l_rSLUAiG7-DN$ zmE>Pm9J*31LZR)vMw)ZqekRg~if3%(p&-*>+#*&uoMGlGstUkRhP8IIX;UF&q%8XJ zen{;PF>IUF89zzv!i+aFcTlE;y)*Gt>uf?i8Vw0OcfJ3xroFRbB`tr zKRJ=ohY5O24=v!1JGGBfanJak7+Nl+A=L#rDU39TJasNN>qbmN_+=N{FkfutijYA& zpeuQ^Gl?cGmB-|o*PNvW(}Pswx1={1iS*NaQ4w{I(pJlY1TYe&K4Q#DAp#6$j>X5+ zawo$t-T-Nl?gYPNVXg9MewNCFR}v{WNL+#1&@ANPHiM9+PB`$4)TPv#bX_+TbT0gL zgPl}{AK^j|Kq;b-M65%jf z8Dy#i4JuxRA#a_i+34jJnP!UcF!Fjq-ObZ6App+6G7W&-g;Qu~H--c0l)(j@46F08 z?O+R)OR91n5>=gY`Nyc6H5ss#i2Nj=_G4eV%JWI*RM^bVY>n??>X^i@*#0y%r#fI4 zRP`w0S1AU~YV?4v&_!ktm=eNU-yx>~1{Og+1?^-{Bu++1g#*7rA+zoU%ew2C@)Sk9 zUa3G+!7w0FyI0XUX{(UJI3Na$&Tx$@^!&sZ)oHVeEfmycl%&YClKtp!YXJd>6wxFh zzM4=-hoaF@h!$Kg)k`}|oAQW_KgMfG_WCM<6!~h`lyFaV(Cuc}OIgL0gv(rjfDcv~ zUO}fHKzu+oz(*xSNFD6zro2ZsW{>CF1uvelOT4}p6e~OXC5R1r~CZ}iFYa`W#s?>3m2{aA*_MU1;jA?swOSHeAH+1&521Bp${92V4 zU-}wb{95b5puf`ZGqt#NfiyUOUhF{y9TN#RbN$qHV5S)Y6eDEDTfP3s^k=DGBrUHo z*tqDiy|!JTr5H{bgu@V*!rfhGU88)nttO!#lk`; zxU(@hJ#E*S?cA84rXs_}!W2(Yw4}r^fL26j<3lI7&wn{|G+{M6@vh9h`5bR>;C zxI2CFpN;Q)wRNm{H8L5r-V`>H!_~seV|m=^L6KMYq%ZA+9qc3mw4LbPDU?*FA&if?T#p zJ~o~;ZI{%{d}79Wv|Vivo_%f4V9=T#3+lV89us@w!+WbpUt?#j&xX2o>kXCl`RV-y zO^DKKP+S_S^am&b3aaMmF0pzH!?~F>rCTRS5Gx-0L?N0;%cpRRQ{21yS_lqWv#6Y) z^*27UT}Y;Dh`~;YLSu522MKxW*x9(K!R{?yV`voA!AAA^7^f8uG%oPS0wXD#Xx**JIvT*$gS_dVT@HY)l?Z%mh9)OaAzzQzpDo zuf-#iM9y(i8-t_v{is0Rut+>BuH+AvW6Fx%A)C^LW6z-FUx>ha)-)M3A1s}|#Wl-1 zsuC<8+KUrkVa4>HK~a{C*+}4MBtiR;XTQrF zoa{!!>ax(;7u_nO9r3}0-U%fnt^g2DuU|L?}jg=(7FDJ6>jZ0)ON`AmZJdxoEN^?LzG1%cd4xy8soG zCi_kH0O(A9AC)X6K$)JdEnbjf9tkI#6(&2Jb5<2|

    Jc1G9`bdde4r|hIfh9U!L7z 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 b7K)oov5AE;&rJ)*@l0&#E9bx3vhe=_-+&qR diff --git a/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Super_Earth_Invasion(Midway8080).rbf b/Arcade_MiST/Midway8080 Hardware/Midway8080_MiST/Release/Super_Earth_Invasion(Midway8080).rbf deleted file mode 100644 index 1ef16d02499632b96b112643679cced4788d0caa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 255851 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

    lW1Tgyj#wvEg2ULG?Q)KGt`{0Nr9FuSk&(O> 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 cpu_clk, - rst => reset_h, - rw => cpu_rw, - vma => cpu_vma, - address => cpu_addr, - data_in => cpu_din, - data_out => cpu_dout, - hold => '0', - halt => '0', - irq => cpu_irq, - nmi => cpu_nmi -); - -U4: entity work.U4_ROM -port map( - address => cpu_addr(10 downto 0), - clock => cpu_clk, - q => rom_dout - ); - -U2: entity work.PIA6821 -port map( - clk => cpu_clk, - rst => reset_h, - cs => pia_cs, - rw => cpu_rw, - addr => cpu_addr(1 downto 0), - data_in => cpu_dout, - data_out => pia_dout, - irqa => pia_irq_a, - irqb => pia_irq_b, - pa_i => pia_pa_i, - pa_o => pia_pa_o, - ca1 => snd_int_i, - ca2_i => '1', - ca2_o => open, - pb_i => x"FF", - pb_o => pia_pb_o, - cb1 => pia_cb1, - cb2_i => '0', - cb2_o => open -); - -U10: entity work.m6810 -port map( - clk => cpu_clk, - rst => reset_h, - address => cpu_addr(6 downto 0), - cs => ram_cs, - rw => cpu_rw, - data_in => cpu_dout, - data_out => ram_dout - ); - -U1: entity work.AY_3_8910 -port map( - clk => cpu_clk, - reset => reset_h, - clk_en => e, - cpu_d_in => pia_pa_o, - cpu_d_out => pia_pa_i, - cpu_bdir => pia_pb_o(1), - cpu_bc1 => pia_pb_o(0), - cpu_bc2 => '1', - io_a_in => ay_pa_i, - io_b_in => x"FF", - io_a_out => open, - io_b_out => open, - snd_A => snd_a, - snd_B => snd_b, - snd_C => snd_c - ); - -ay_pa_i(5 downto 0) <= not addr_i; -ay_pa_i(7 downto 6) <= "00"; - -audio <= snd_a & '0' + snd_b & '0'+ snd_c & '0'; - -end rtl; - - - \ No newline at end of file diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/Debouncer.vhd b/Soundboards_MiST/AS-2518-51_snd-master/rtl/Debouncer.vhd deleted file mode 100644 index 2d7e90bd..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/Debouncer.vhd +++ /dev/null @@ -1,43 +0,0 @@ --- (C) Rui T. Sousa from http://sweet.ua.pt/~a16360 - -library IEEE; -use IEEE.STD_LOGIC_1164.ALL; -use IEEE.STD_LOGIC_ARITH.ALL; -use IEEE.STD_LOGIC_UNSIGNED.ALL; - -entity Debouncer is - generic (Delay : positive); - port ( - Clock : in STD_LOGIC; - Reset : in STD_LOGIC; - Input : in STD_LOGIC; - Output : out STD_LOGIC - ); -end Debouncer; - -architecture Behavioral of Debouncer is - - signal DelayCounter : natural range 0 to Delay; - signal Internal : STD_LOGIC; - -begin - - process(Clock, Reset) - begin - if Reset = '1' then - Output <= '0'; - Internal <= '0'; - DelayCounter <= 0; - elsif rising_edge(Clock) then - if Input /= Internal then - Internal <= Input; - DelayCounter <= 0; - elsif DelayCounter = Delay then - Output <= Internal; - else - DelayCounter <= DelayCounter + 1; - end if; - end if; - end process; - -end Behavioral; \ No newline at end of file diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/Keyboard.vhd b/Soundboards_MiST/AS-2518-51_snd-master/rtl/Keyboard.vhd deleted file mode 100644 index 49140020..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/Keyboard.vhd +++ /dev/null @@ -1,61 +0,0 @@ --- (C) Rui T. Sousa from http://sweet.ua.pt/~a16360 - -library ieee; -use ieee.std_logic_1164.all; -use ieee.std_logic_arith.all; -use ieee.std_logic_unsigned.all; - -entity Keyboard is - GENERIC( - clk_freq : INTEGER := 32 );-- system clock frequency in MHz - port ( - Reset : in std_logic; - Clock : in std_logic; - PS2Clock : inout std_logic; - PS2Data : inout std_logic; - CodeReady : out std_logic; - ScanCode : out std_logic_vector(9 downto 0) - ); -end Keyboard; - -architecture Behavioral of Keyboard is - - signal Send : std_logic; - signal Command : std_logic_vector(7 downto 0); - signal PS2Busy : std_logic; - signal PS2Error : std_logic; - signal DataReady : std_logic; - signal DataByte : std_logic_vector(7 downto 0); - -begin - - PS2_Controller: entity work.PS2Controller - generic map (clk_freq => clk_freq) - port map ( - Reset => Reset, - Clock => Clock, - PS2Clock => PS2Clock, - PS2Data => PS2Data, - Send => Send, - Command => Command, - PS2Busy => PS2Busy, - PS2Error => PS2Error, - DataReady => DataReady, - DataByte => DataByte - ); - - Keyboard_Mapper: entity work.KeyboardMapper - port map ( - Clock => Clock, - Reset => Reset, - PS2Busy => PS2Busy, - PS2Error => PS2Error, - DataReady => DataReady, - DataByte => DataByte, - Send => Send, - Command => Command, - CodeReady => CodeReady, - ScanCode => ScanCode - ); - -end Behavioral; diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/KeyboardMapper.vhd b/Soundboards_MiST/AS-2518-51_snd-master/rtl/KeyboardMapper.vhd deleted file mode 100644 index 72ef7b77..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/KeyboardMapper.vhd +++ /dev/null @@ -1,170 +0,0 @@ --- (C) Rui T. Sousa from http://sweet.ua.pt/~a16360 - -library ieee; -use ieee.std_logic_1164.all; -use ieee.std_logic_arith.all; -use ieee.std_logic_unsigned.all; - -entity KeyboardMapper is - port ( - Clock : in std_logic; - Reset : in std_logic; - PS2Busy : in std_logic; - PS2Error : in std_logic; - DataReady : in std_logic; - DataByte : in std_logic_vector(7 downto 0); - Send : out std_logic; - Command : out std_logic_vector(7 downto 0); - CodeReady : out std_logic; - ScanCode : out std_logic_vector(9 downto 0) - ); -end KeyboardMapper; - --- ScanCode(9) = 1 -> Extended --- = 0 -> Regular (Not Extended) --- ScanCode(8) = 1 -> Break --- = 0 -> Make --- ScanCode(7 downto 0) -> Key Code - -architecture Behavioral of KeyboardMapper is - - type StateType is (ResetKbd, ResetAck, WaitForBAT, Start, Extended, ExtendedBreak, Break, LEDs, CheckAck); - signal State : StateType; - signal CapsLock : STD_LOGIC; - signal NumLock : STD_LOGIC; - signal ScrollLock : STD_LOGIC; --- signal PauseON : STD_LOGIC; --- signal i : natural range 0 to 7; - signal KbdFound : std_logic := '0'; -begin - - process(Reset, PS2Error, Clock) - begin - if Reset = '1' or PS2Error = '1' then - CapsLock <= '0'; - NumLock <= '0'; - ScrollLock <= '0'; --- PauseON <= '0'; --- i <= 0; - Send <= '0'; - Command <= (others => '0'); - CodeReady <= '0'; - ScanCode <= (others => '0'); - KbdFound <= '0'; - State <= Start; - elsif rising_edge(Clock) then - case State is - when ResetKbd => - if PS2Busy = '0' then - Send <= '1'; - Command <= x"FF"; - State <= ResetAck; - end if; - when ResetAck => - Send <= '0'; - if Dataready = '1' then - if DataByte = x"FA" then - State <= WaitForBAT; - else - State <= ResetKbd; - end if; - end if; - when WaitForBAT => - if DataReady = '1' then - if DataByte = x"AA" then -- BAT(self test) completed successfully - State <= Start; - KbdFound <= '1'; - else - State <= ResetKbd; - end if; - end if; - when Start => - CodeReady <= '0'; - if DataReady = '1' then - case DataByte is - when x"E0" => - State <= Extended; - when x"F0" => - State <= Break; - when x"FA" => --Acknowledge - null; - when x"AA" => - State <= Start; - when x"FC" => - State <= ResetKbd; - when x"58" => - Send <= '1'; - Command <= x"ED"; - CapsLock <= not CapsLock; - ScanCode <= "00" & DataByte; - CodeReady <= '1'; - State <= LEDs; - when x"77" => - Send <= '1'; - Command <= x"ED"; - NumLock <= not NumLock; - ScanCode <= "00" & DataByte; - CodeReady <= '1'; - State <= LEDs; - when x"7E" => - Send <= '1'; - Command <= x"ED"; - ScrollLock <= not ScrollLock; - ScanCode <= "00" & DataByte; - CodeReady <= '1'; - State <= LEDs; - when others => - ScanCode <= "00" & DataByte; - CodeReady <= '1'; - State <= Start; - end case; - end if; - when Extended => - if DataReady = '1' then - if DataByte = x"F0" then - State <= ExtendedBreak; - else - ScanCode <= "10" & DataByte; - CodeReady <= '1'; - State <= Start; - end if; - end if; - when ExtendedBreak => - if DataReady = '1' then - ScanCode <= "11" & DataByte; - CodeReady <= '1'; - State <= Start; - end if; - when Break => - if DataReady = '1' then - ScanCode <= "01" & DataByte; - CodeReady <= '1'; - State <= Start; - end if; - when LEDs => - Send <= '0'; - CodeReady <= '0'; - if Dataready = '1' then - if DataByte = x"FA" then - Send <= '1'; - Command <= "00000" & CapsLock & NumLock & ScrollLock; - State <= CheckAck; - elsif DataByte = x"FE" then - Send <= '1'; - end if; - end if; - when CheckAck => - Send <= '0'; - if Dataready = '1' then - if DataByte = x"FA" then - State <= Start; - elsif DataByte = x"FE" then - Send <= '1'; - end if; - end if; - when others => null; - end case; - end if; - end process; - -end Behavioral; \ No newline at end of file diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/MPU_RAM.vhd b/Soundboards_MiST/AS-2518-51_snd-master/rtl/MPU_RAM.vhd deleted file mode 100644 index 0d71661e..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/MPU_RAM.vhd +++ /dev/null @@ -1,181 +0,0 @@ --- megafunction wizard: %RAM: 1-PORT% --- GENERATION: STANDARD --- VERSION: WM1.0 --- MODULE: altsyncram - --- ============================================================ --- File Name: MPU_RAM.vhd --- Megafunction Name(s): --- altsyncram --- --- Simulation Library Files(s): --- altera_mf --- ============================================================ --- ************************************************************ --- THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE! --- --- 13.0.1 Build 232 06/12/2013 SP 1 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. - - -LIBRARY ieee; -USE ieee.std_logic_1164.all; - -LIBRARY altera_mf; -USE altera_mf.all; - -ENTITY MPU_RAM IS - PORT - ( - address : IN STD_LOGIC_VECTOR (6 DOWNTO 0); - clock : IN STD_LOGIC := '1'; - data : IN STD_LOGIC_VECTOR (7 DOWNTO 0); - wren : IN STD_LOGIC ; - q : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) - ); -END MPU_RAM; - - -ARCHITECTURE SYN OF mpu_ram IS - - SIGNAL sub_wire0 : STD_LOGIC_VECTOR (7 DOWNTO 0); - - - - COMPONENT altsyncram - GENERIC ( - clock_enable_input_a : STRING; - clock_enable_output_a : STRING; - intended_device_family : STRING; - lpm_hint : STRING; - lpm_type : STRING; - numwords_a : NATURAL; - operation_mode : STRING; - outdata_aclr_a : STRING; - outdata_reg_a : STRING; - power_up_uninitialized : STRING; - widthad_a : NATURAL; - width_a : NATURAL; - width_byteena_a : NATURAL - ); - PORT ( - address_a : IN STD_LOGIC_VECTOR (6 DOWNTO 0); - clock0 : IN STD_LOGIC ; - data_a : IN STD_LOGIC_VECTOR (7 DOWNTO 0); - wren_a : IN STD_LOGIC ; - q_a : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) - ); - END COMPONENT; - -BEGIN - q <= sub_wire0(7 DOWNTO 0); - - altsyncram_component : altsyncram - GENERIC MAP ( - clock_enable_input_a => "BYPASS", - clock_enable_output_a => "BYPASS", - intended_device_family => "Cyclone II", - lpm_hint => "ENABLE_RUNTIME_MOD=NO", - lpm_type => "altsyncram", - numwords_a => 128, - operation_mode => "SINGLE_PORT", - outdata_aclr_a => "NONE", - outdata_reg_a => "UNREGISTERED", - power_up_uninitialized => "FALSE", - widthad_a => 7, - width_a => 8, - width_byteena_a => 1 - ) - PORT MAP ( - address_a => address, - clock0 => clock, - data_a => data, - wren_a => wren, - q_a => sub_wire0 - ); - - - -END SYN; - --- ============================================================ --- CNX file retrieval info --- ============================================================ --- Retrieval info: PRIVATE: ADDRESSSTALL_A NUMERIC "0" --- Retrieval info: PRIVATE: AclrAddr NUMERIC "0" --- Retrieval info: PRIVATE: AclrByte NUMERIC "0" --- Retrieval info: PRIVATE: AclrData NUMERIC "0" --- Retrieval info: PRIVATE: AclrOutput NUMERIC "0" --- Retrieval info: PRIVATE: BYTE_ENABLE NUMERIC "0" --- Retrieval info: PRIVATE: BYTE_SIZE NUMERIC "8" --- Retrieval info: PRIVATE: BlankMemory NUMERIC "1" --- Retrieval info: PRIVATE: CLOCK_ENABLE_INPUT_A NUMERIC "0" --- Retrieval info: PRIVATE: CLOCK_ENABLE_OUTPUT_A NUMERIC "0" --- Retrieval info: PRIVATE: Clken NUMERIC "0" --- Retrieval info: PRIVATE: DataBusSeparated NUMERIC "1" --- Retrieval info: PRIVATE: IMPLEMENT_IN_LES NUMERIC "0" --- Retrieval info: PRIVATE: INIT_FILE_LAYOUT STRING "PORT_A" --- Retrieval info: PRIVATE: INIT_TO_SIM_X NUMERIC "0" --- Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone II" --- Retrieval info: PRIVATE: JTAG_ENABLED NUMERIC "0" --- Retrieval info: PRIVATE: JTAG_ID STRING "NONE" --- Retrieval info: PRIVATE: MAXIMUM_DEPTH NUMERIC "0" --- Retrieval info: PRIVATE: MIFfilename STRING "" --- Retrieval info: PRIVATE: NUMWORDS_A NUMERIC "128" --- Retrieval info: PRIVATE: RAM_BLOCK_TYPE NUMERIC "0" --- Retrieval info: PRIVATE: READ_DURING_WRITE_MODE_PORT_A NUMERIC "3" --- Retrieval info: PRIVATE: RegAddr NUMERIC "1" --- Retrieval info: PRIVATE: RegData NUMERIC "1" --- Retrieval info: PRIVATE: RegOutput NUMERIC "0" --- Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0" --- Retrieval info: PRIVATE: SingleClock NUMERIC "1" --- Retrieval info: PRIVATE: UseDQRAM NUMERIC "1" --- Retrieval info: PRIVATE: WRCONTROL_ACLR_A NUMERIC "0" --- Retrieval info: PRIVATE: WidthAddr NUMERIC "7" --- Retrieval info: PRIVATE: WidthData NUMERIC "8" --- Retrieval info: PRIVATE: rden NUMERIC "0" --- Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all --- Retrieval info: CONSTANT: CLOCK_ENABLE_INPUT_A STRING "BYPASS" --- Retrieval info: CONSTANT: CLOCK_ENABLE_OUTPUT_A STRING "BYPASS" --- Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone II" --- Retrieval info: CONSTANT: LPM_HINT STRING "ENABLE_RUNTIME_MOD=NO" --- Retrieval info: CONSTANT: LPM_TYPE STRING "altsyncram" --- Retrieval info: CONSTANT: NUMWORDS_A NUMERIC "128" --- Retrieval info: CONSTANT: OPERATION_MODE STRING "SINGLE_PORT" --- Retrieval info: CONSTANT: OUTDATA_ACLR_A STRING "NONE" --- Retrieval info: CONSTANT: OUTDATA_REG_A STRING "UNREGISTERED" --- Retrieval info: CONSTANT: POWER_UP_UNINITIALIZED STRING "FALSE" --- Retrieval info: CONSTANT: WIDTHAD_A NUMERIC "7" --- Retrieval info: CONSTANT: WIDTH_A NUMERIC "8" --- Retrieval info: CONSTANT: WIDTH_BYTEENA_A NUMERIC "1" --- Retrieval info: USED_PORT: address 0 0 7 0 INPUT NODEFVAL "address[6..0]" --- Retrieval info: USED_PORT: clock 0 0 0 0 INPUT VCC "clock" --- Retrieval info: USED_PORT: data 0 0 8 0 INPUT NODEFVAL "data[7..0]" --- Retrieval info: USED_PORT: q 0 0 8 0 OUTPUT NODEFVAL "q[7..0]" --- Retrieval info: USED_PORT: wren 0 0 0 0 INPUT NODEFVAL "wren" --- Retrieval info: CONNECT: @address_a 0 0 7 0 address 0 0 7 0 --- Retrieval info: CONNECT: @clock0 0 0 0 0 clock 0 0 0 0 --- Retrieval info: CONNECT: @data_a 0 0 8 0 data 0 0 8 0 --- Retrieval info: CONNECT: @wren_a 0 0 0 0 wren 0 0 0 0 --- Retrieval info: CONNECT: q 0 0 8 0 @q_a 0 0 8 0 --- Retrieval info: GEN_FILE: TYPE_NORMAL MPU_RAM.vhd TRUE --- Retrieval info: GEN_FILE: TYPE_NORMAL MPU_RAM.inc FALSE --- Retrieval info: GEN_FILE: TYPE_NORMAL MPU_RAM.cmp TRUE --- Retrieval info: GEN_FILE: TYPE_NORMAL MPU_RAM.bsf FALSE --- Retrieval info: GEN_FILE: TYPE_NORMAL MPU_RAM_inst.vhd FALSE --- Retrieval info: LIB_FILE: altera_mf diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/PS2Controller.vhd b/Soundboards_MiST/AS-2518-51_snd-master/rtl/PS2Controller.vhd deleted file mode 100644 index 6e42eb6d..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/PS2Controller.vhd +++ /dev/null @@ -1,209 +0,0 @@ --- (C) Rui T. Sousa from http://sweet.ua.pt/~a16360 - -library ieee; -use ieee.std_logic_1164.all; -use ieee.std_logic_arith.all; -use ieee.std_logic_unsigned.all; - -entity PS2Controller is -GENERIC( - clk_freq : INTEGER := 50 );-- system clock frequency in MHz - port ( - Reset : in std_logic; - Clock : in std_logic; - PS2Clock : in std_logic; - PS2Data : in std_logic; - Send : in std_logic; - Command : in std_logic_vector(7 downto 0); - PS2Busy : out std_logic; - PS2Error : buffer std_logic; - DataReady : out std_logic; - DataByte : out std_logic_vector(7 downto 0) - ); -end PS2Controller; - -architecture Behavioral of PS2Controller is - - constant ClockFreq : natural := clk_freq; -- MHz - constant Time100us : natural := 100 * ClockFreq; - constant Time20us : natural := 20 * ClockFreq; - constant DebounceDelay : natural := 16; - - type StateType is (Idle, ReceiveData, InhibitComunication, RequestToSend, SendData, CheckAck, WaitRiseClock); - signal State : StateType; - signal BitsRead : natural range 0 to 10; - signal BitsSent : natural range 0 to 10; - signal Byte : std_logic_vector(7 downto 0); - signal CountOnes : std_logic; -- One bit only to know if even or odd number of ones - signal DReady : std_logic; - signal PS2ClockPrevious : std_logic; - signal PS2ClockOut : std_logic; - signal PS2Clock_Z : std_logic; - signal PS2Clock_D : std_logic; - signal PS2DataOut : std_logic; - signal PS2Data_Z : std_logic; - signal PS2Data_D : std_logic; - signal TimeCounter : natural range 0 to Time100us; - -begin - - DebounceClock: entity work.Debouncer - generic map (Delay => DebounceDelay) - port map ( - Clock => Clock, - Reset => Reset, - Input => PS2Clock, - Output => PS2Clock_D - ); - - DebounceData: entity work.Debouncer - generic map (Delay => DebounceDelay) - port map ( - Clock => Clock, - Reset => Reset, - Input => PS2Data, - Output => PS2Data_D - ); - - --PS2Clock <= PS2ClockOut when PS2Clock_Z <= '0' else 'Z'; - --PS2Data <= PS2DataOut when PS2Data_Z <= '0' else 'Z'; - - process(Reset, Clock) - begin - if Reset = '1' then - PS2Clock_Z <= '1'; - PS2ClockOut <= '1'; - PS2Data_Z <= '1'; - PS2DataOut <= '1'; - DataReady <= '0'; - DReady <= '0'; - DataByte <= (others => '0'); - PS2Busy <= '0'; - PS2Error <= '0'; - BitsRead <= 0; - BitsSent <= 0; - CountOnes <= '0'; - TimeCounter <= 0; - PS2ClockPrevious <= '1'; - Byte <= x"FF"; - State <= InhibitComunication; - elsif rising_edge(Clock) then - PS2ClockPrevious <= PS2Clock_D; - case State is - when Idle => - DataReady <= '0'; - DReady <= '0'; - BitsRead <= 0; - PS2Error <= '0'; - CountOnes <= '0'; - if PS2Data_D = '0' then -- Start bit - PS2Busy <= '1'; - State <= ReceiveData; - elsif Send = '1' then - Byte <= Command; - PS2Busy <= '1'; - TimeCounter <= 0; - State <= InhibitComunication; - else - State <= Idle; - end if; - when ReceiveData => - if PS2ClockPrevious = '1' and PS2Clock_D = '0' then -- falling edge - case BitsRead is - when 1 to 8 => -- 8 Data bits - Byte(BitsRead - 1) <= PS2Data_D; - if PS2Data_D = '1' then - CountOnes <= not CountOnes; - end if; - when 9 => -- Parity bit - case CountOnes is - when '0' => - if PS2Data_D = '0' then - PS2Error <= '1'; -- Error when CountOnes is even (0) - else -- and parity bit is unasserted - PS2Error <= '0'; - end if; - when others => - if PS2Data_D = '1' then - PS2Error <= '1'; -- Error when CountOnes is odd (1) - else -- and parity bit is asserted - PS2Error <= '0'; - end if; - end case; - when 10 => -- Stop bit - if PS2Error = '0' then - DataByte <= Byte; - DReady <= '1'; - else - DReady <= '0'; - end if; - State <= WaitRiseClock; - when others => null; - end case; - BitsRead <= BitsRead + 1; - end if; - when InhibitComunication => - PS2Clock_Z <= '0'; - PS2ClockOut <= '0'; - if TimeCounter = Time100us then - TimeCounter <= 0; - State <= RequestToSend; - else - TimeCounter <= TimeCounter + 1; - end if; - when RequestToSend => - PS2Clock_Z <= '1'; - PS2Data_Z <= '0'; - PS2DataOut <= '0'; -- Sets the start bit, valid when PS2Clock is high - if TimeCounter = Time20us then - TimeCounter <= 0; - PS2ClockOut <= '1'; - BitsSent <= 1; - State <= SendData; - else - TimeCounter <= TimeCounter + 1; - end if; - when SendData => - PS2Clock_Z <= '1'; - if PS2ClockPrevious = '1' and PS2Clock_D = '0' then -- falling edge - case BitsSent is - when 1 to 8 => -- 8 Data bits - if Byte(BitsSent - 1) = '0' then - PS2DataOut <= '0'; - else - CountOnes <= not CountOnes; - PS2DataOut <= '1'; - end if; - when 9 => -- Parity bit - if CountOnes = '0' then - PS2DataOut <= '1'; - else - PS2DataOut <= '0'; - end if; - when 10 => -- Stop bit - PS2DataOut <= '1'; - State <= CheckAck; - when others => null; - end case; - BitsSent <= BitsSent + 1; - end if; - when CheckAck => - PS2Data_Z <= '1'; - if PS2ClockPrevious = '1' and PS2Clock_D = '0' then - if PS2Data_D = '1' then -- no Acknowledge received - PS2Error <= '1'; - end if; - State <= WaitRiseClock; - end if; - when WaitRiseClock => - if PS2ClockPrevious = '0' and PS2Clock_D = '1' then - PS2Busy <= '0'; - DataReady <= DReady; - State <= Idle; - end if; - when others => null; - end case; - end if; - end process; - -end Behavioral; \ No newline at end of file diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/ROM/NitroGroundshaker.hex b/Soundboards_MiST/AS-2518-51_snd-master/rtl/ROM/NitroGroundshaker.hex deleted file mode 100644 index 991dd82c..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/ROM/NitroGroundshaker.hex +++ /dev/null @@ -1,129 +0,0 @@ -:100000008E007F4F97834397828634978386079726 -:10001000817F003F8632CE3D2D0926FD4A26F79688 -:10002000800E3E8E007FCE0033DF31BD10C3860EC2 -:10003000BD10D3BD10EB810327010E3648CE1075DD -:10004000BD10B532810422158607BD10D3863FBD91 -:1000500016448608BD10D3EE00AD002007EE00DF89 -:1000600021BD113B7D003F270BBD12B6CE1323DF10 -:10007000217E113B3E15A2157B17141713158E1404 -:10008000BD12AF14E4157A1507133E13511357131D -:100090005D12A61429157A1559157A140E157A13BE -:1000A00083157A157A14A7145313C8147E13A61354 -:1000B000FB13631429DF2C9B2D24037C002C972D2C -:1000C000DE2C394F36BD10D34FBD1632324C811065 -:1000D00026F239BD112A97809726C603D7825FD7AB -:1000E00082399626810E2603962E39BD111AC60135 -:1000F000D78296805FD782369626840FCE110A4D1E -:100100002704084A26FC32A40039FF0FFF0FFF0F17 -:100110001FFF1F1F1FFFFF0F1FFFD681C4FBD781CB -:10012000375FD78033CA04D78139D681C4FBD781E2 -:10013000375F53D78033CA04D78139DE21E601A661 -:1001400000840F36A60084F0CE12157F003D444493 -:1001500044BD10B532EE00AD0020E03932323937FF -:10016000BD10D332BD163220164D2702D647D725F3 -:100170009625270B7A0025CE007D0926FD20F1DE8D -:10018000210808DF2139DE2120F88DF3201C37BD3E -:1001900010D3BD10E28DE8334D271E200D37BD1062 -:1001A000D3BD10E28DD9334D260F5D2B0DC47FDBFF -:1001B00022D722C600D921D7213950C47F9622D711 -:1001C0002290229722D621C200D7213937DE21E69C -:1001D0000237BD117FBD1186DE319621A700962220 -:1001E000A7010808DF3132972232972139DE310921 -:1001F00009A6009721A6019722DF3139BD10D38DC2 -:1002000006BD16327E11869627489B2748489B27B5 -:100210008B01972739115F123812351242123F11A4 -:100220008A119D118E116911FC129611ED12721234 -:1002300084115B115C73003DBD1186C601200673FD -:10024000003DBD117F37BD10D3BD10E2337D003DB1 -:100250002B031B20011025037E1632BD1632962675 -:1002600085F9260481062605810B2701394CC60134 -:1002700020D37F002FD730BD10D3DE2FA600BD16B0 -:10028000327E117F7F002FD730BD10D3BD10E2DE4C -:100290002FA7007E117F4D270ABD1186EE00AD000D -:1002A0007E117F7E11CCA112AAF08606973F39A15C -:1002B00012B27F003F3ECE0040DF1DC608963F8150 -:1002C000012605CE131B202781022605CE131320FD -:1002D0001E81032605CE130B201581042605CE139F -:1002E00003200C81052605CE12FB2003CE12F3BDA0 -:1002F00016FF39FF0B870C0D0A0403FF09000D0DD3 -:100300000A0403FF07BE0A0E0B0403FF0600080ED3 -:100310000C0303FF055E050E0D0303FF04AF020F80 -:100320000E030307FCC242C343C844C945CF46C1BC -:1003300041C04081472070FB212F7FF550EF00C066 -:10034000023007FC080F090C80196901292878F888 -:10035000F00090022450EB0073021D50E500600293 -:100360001850DF07F708100C280D010F070E0716AD -:1003700080042E7EFA0E102680042E7EFA2F7FED4A -:100380000800F007F608100C280D0100100F070EEA -:1003900007101680042E7EFA0E102680042E7EFA98 -:1003A0002F7FEC0800F007FE08100C080D0100205C -:1003B000A013BB3020A013BB0800F00E20202E7E1F -:1003C000FC0E20102E7EFCB007FC081009100C104B -:1003D0000D01002802280F08A013EA3028A013EA14 -:1003E00040102F7FF308000900F00E082032102E75 -:1003F0007EFA0E081032102E7EFAB007F70C28088D -:10040000100D090F0C96807D2F7FFA0800F007FE73 -:1004100008300C000B600D0E0E028001400201003E -:1004200070F81C2E7EF40800F007FE0030080C0661 -:100430000C0F000E018008181F2E7EF9080A3003E9 -:100440001F8008181E2F7FF9080A30031E2676E544 -:100450000800F007FE008008000F000E0F8008184B -:1004600040061F2E7EF7080000802F6F10800818AE -:1004700040061E2F7FF7080000802E7EE0F0A114BA -:100480009B07FE01000C2808300D090F100E4000DC -:1004900070202E7EFC2F7FF507FFF0963F27078107 -:1004A0000127037A003F390F0307FE080F0E4000B3 -:1004B000308003102E7EFA07FF2F7FEDF007FE003D -:1004C0008008000F000E0F8008181F2E7EF908000C -:1004D00040032F6F0E8008181E2F7FF9080040037D -:1004E0002E7EE4F009300C0E020107FD0D0D128086 -:1004F0000A72FB800008300C18070706010D011670 -:10050000800A76FB80FFF0030F07FC080F090A0E34 -:1005100004010600008000207002212E7EF70830C2 -:100520000C05004001000D0D0F140E0A8004102E62 -:100530007EFA0E0A8001202E7EFA102F7FEC090031 -:1005400008300C2807F706010D0116800A76FB809B -:10055000FFA11555F07F003F3907F502300830093B -:10056000300C2006010D0E8050162276FA0E2080E7 -:1005700050122E7EFA08000900F0F0CE0001DF1DB7 -:10058000C606CE174EBD16FFC60FD71C204ACE009A -:1005900000DF1DC61CCE1754BD16FFC6AFD71C7E8C -:1005A0001650860F971C973ECE0001DF1DCE1770A8 -:1005B000C606BD16FF8D21CE0001DF1DCE1770C609 -:1005C00006BD16FF8D12963E4A81082706971C9796 -:1005D0003E20D54FBD164439961CD605D707D60206 -:1005E000D70843840FD6018D5B5A26FDC6035A26D1 -:1005F000FD43840FD6018D4C5A26FD7A000827173B -:100600007A000726DD43840FD6058D38D707D6013B -:100610009B062B1D01201408090143840FD6028D6F -:1006200023D708D601D003D1042706D701C005205F -:10063000B839D626C10E2603972E39C10726028463 -:10064000BFBD112A379780C602D7827F0082333917 -:10065000CE16F1DF1F8680D6032A09D627545454BC -:100660005C5A26FD7A0008274C7A0009274C7A004C -:100670000A274C7A000B26DFD60327DBC47FD70B73 -:10068000D62758DB27CB0BD7277A001B260ED60F91 -:10069000D71BDE1F098C16EA274EDF1FD6272B0635 -:1006A000D407C47F2005D407C47F50361B1632DE22 -:1006B0001FAD0020A2CE00002008CE00012003CEF6 -:1006C00000026D1827126A18260EE60CE718E600DD -:1006D000EB10E1142712E700E600E708AB04600422 -:1006E00016DE1FAD007E16573954545454545454DA -:1006F000548D073617BD1644323954545454393684 -:10070000A600DF1FDE1DA7007C001EDE1F085A2684 -:10071000EF32390FC611D71586FE9701CE01C009F9 -:100720002722D700860FBD16440927187A00002615 -:10073000F8092710D7004FBD16440927077A000093 -:1007400026F820DBD001C11022D296800E39FE049B -:100750000204FF00010A00003F3F0000010A000000 -:10076000050500000101000031FF00000505000043 -:100770004803010CFF000000000000000000000022 -:100780000000000000000000000000000000000069 -:100790000000000000000000000000000000000059 -:1007A0000000000000000000000000000000000049 -:1007B0000000000000000000000000000000000039 -:1007C0000000000000000000000000000000000029 -:1007D0000000000000000000000000000000000019 -:1007E0000000000000000000000000000000000009 -:1007F0000000000000000000102310001000100096 -:00000001FF diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/U4_ROM.qip b/Soundboards_MiST/AS-2518-51_snd-master/rtl/U4_ROM.qip deleted file mode 100644 index 230a8b5d..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/U4_ROM.qip +++ /dev/null @@ -1,3 +0,0 @@ -set_global_assignment -name IP_TOOL_NAME "ROM: 1-PORT" -set_global_assignment -name IP_TOOL_VERSION "13.1" -set_global_assignment -name VHDL_FILE [file join $::quartus(qip_path) "U4_ROM.vhd"] diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/U4_ROM.vhd b/Soundboards_MiST/AS-2518-51_snd-master/rtl/U4_ROM.vhd deleted file mode 100644 index 5399db6b..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/U4_ROM.vhd +++ /dev/null @@ -1,143 +0,0 @@ --- megafunction wizard: %ROM: 1-PORT% --- GENERATION: STANDARD --- VERSION: WM1.0 --- MODULE: altsyncram - --- ============================================================ --- File Name: U4_ROM.vhd --- 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. - - -LIBRARY ieee; -USE ieee.std_logic_1164.all; - -LIBRARY altera_mf; -USE altera_mf.altera_mf_components.all; - -ENTITY U4_ROM IS - PORT - ( - address : IN STD_LOGIC_VECTOR (10 DOWNTO 0); - clock : IN STD_LOGIC := '1'; - q : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) - ); -END U4_ROM; - - -ARCHITECTURE SYN OF u4_rom IS - - SIGNAL sub_wire0 : STD_LOGIC_VECTOR (7 DOWNTO 0); - -BEGIN - q <= sub_wire0(7 DOWNTO 0); - - altsyncram_component : altsyncram - GENERIC MAP ( - address_aclr_a => "NONE", - clock_enable_input_a => "BYPASS", - clock_enable_output_a => "BYPASS", - init_file => "./ROM/NitroGroundshaker.hex", - intended_device_family => "Cyclone III", - lpm_hint => "ENABLE_RUNTIME_MOD=NO", - lpm_type => "altsyncram", - numwords_a => 2048, - operation_mode => "ROM", - outdata_aclr_a => "NONE", - outdata_reg_a => "UNREGISTERED", - widthad_a => 11, - width_a => 8, - width_byteena_a => 1 - ) - PORT MAP ( - address_a => address, - clock0 => clock, - q_a => sub_wire0 - ); - - - -END SYN; - --- ============================================================ --- CNX file retrieval info --- ============================================================ --- Retrieval info: PRIVATE: ADDRESSSTALL_A NUMERIC "0" --- Retrieval info: PRIVATE: AclrAddr NUMERIC "0" --- Retrieval info: PRIVATE: AclrByte NUMERIC "0" --- Retrieval info: PRIVATE: AclrOutput NUMERIC "0" --- Retrieval info: PRIVATE: BYTE_ENABLE NUMERIC "0" --- Retrieval info: PRIVATE: BYTE_SIZE NUMERIC "8" --- Retrieval info: PRIVATE: BlankMemory NUMERIC "0" --- Retrieval info: PRIVATE: CLOCK_ENABLE_INPUT_A NUMERIC "0" --- Retrieval info: PRIVATE: CLOCK_ENABLE_OUTPUT_A NUMERIC "0" --- Retrieval info: PRIVATE: Clken NUMERIC "0" --- Retrieval info: PRIVATE: IMPLEMENT_IN_LES NUMERIC "0" --- Retrieval info: PRIVATE: INIT_FILE_LAYOUT STRING "PORT_A" --- Retrieval info: PRIVATE: INIT_TO_SIM_X NUMERIC "0" --- Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone 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: MIFfilename STRING "./ROM/NitroGroundshaker.hex" --- Retrieval info: PRIVATE: NUMWORDS_A NUMERIC "2048" --- Retrieval info: PRIVATE: RAM_BLOCK_TYPE NUMERIC "0" --- Retrieval info: PRIVATE: RegAddr NUMERIC "1" --- Retrieval info: PRIVATE: RegOutput NUMERIC "0" --- Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0" --- Retrieval info: PRIVATE: SingleClock NUMERIC "1" --- Retrieval info: PRIVATE: UseDQRAM NUMERIC "0" --- Retrieval info: PRIVATE: WidthAddr NUMERIC "11" --- Retrieval info: PRIVATE: WidthData NUMERIC "8" --- Retrieval info: PRIVATE: rden NUMERIC "0" --- Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all --- Retrieval info: CONSTANT: ADDRESS_ACLR_A STRING "NONE" --- Retrieval info: CONSTANT: CLOCK_ENABLE_INPUT_A STRING "BYPASS" --- Retrieval info: CONSTANT: CLOCK_ENABLE_OUTPUT_A STRING "BYPASS" --- Retrieval info: CONSTANT: INIT_FILE STRING "./ROM/NitroGroundshaker.hex" --- Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone III" --- Retrieval info: CONSTANT: LPM_HINT STRING "ENABLE_RUNTIME_MOD=NO" --- Retrieval info: CONSTANT: LPM_TYPE STRING "altsyncram" --- Retrieval info: CONSTANT: NUMWORDS_A NUMERIC "2048" --- Retrieval info: CONSTANT: OPERATION_MODE STRING "ROM" --- Retrieval info: CONSTANT: OUTDATA_ACLR_A STRING "NONE" --- Retrieval info: CONSTANT: OUTDATA_REG_A STRING "UNREGISTERED" --- Retrieval info: CONSTANT: WIDTHAD_A NUMERIC "11" --- Retrieval info: CONSTANT: WIDTH_A NUMERIC "8" --- Retrieval info: CONSTANT: WIDTH_BYTEENA_A NUMERIC "1" --- Retrieval info: USED_PORT: address 0 0 11 0 INPUT NODEFVAL "address[10..0]" --- Retrieval info: USED_PORT: clock 0 0 0 0 INPUT VCC "clock" --- Retrieval info: USED_PORT: q 0 0 8 0 OUTPUT NODEFVAL "q[7..0]" --- Retrieval info: CONNECT: @address_a 0 0 11 0 address 0 0 11 0 --- Retrieval info: CONNECT: @clock0 0 0 0 0 clock 0 0 0 0 --- Retrieval info: CONNECT: q 0 0 8 0 @q_a 0 0 8 0 --- Retrieval info: GEN_FILE: TYPE_NORMAL U4_ROM.vhd TRUE --- Retrieval info: GEN_FILE: TYPE_NORMAL U4_ROM.inc FALSE --- Retrieval info: GEN_FILE: TYPE_NORMAL U4_ROM.cmp FALSE --- Retrieval info: GEN_FILE: TYPE_NORMAL U4_ROM.bsf FALSE --- Retrieval info: GEN_FILE: TYPE_NORMAL U4_ROM_inst.vhd FALSE --- Retrieval info: LIB_FILE: altera_mf diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/ay-3-8910-core.Vhd b/Soundboards_MiST/AS-2518-51_snd-master/rtl/ay-3-8910-core.Vhd deleted file mode 100644 index 2ac88ad0..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/ay-3-8910-core.Vhd +++ /dev/null @@ -1,375 +0,0 @@ -library IEEE; -use IEEE.std_logic_1164.all; -Use IEEE.std_logic_arith.all; -Use IEEE.std_logic_unsigned.all; - --- (async) 5 to 8-bit linear to log value convolver -entity lin5_to_log8 is -port -( - a : in std_logic_vector(4 downto 0); - o : out std_logic_vector(7 downto 0) -); -end lin5_to_log8; - -architecture rtl of lin5_to_log8 is -begin - o <= X"00" when a = "00000" else - X"01" when a = "00001" else - X"01" when a = "00010" else - X"02" when a = "00011" else - X"02" when a = "00100" else - X"02" when a = "00101" else - X"03" when a = "00110" else - X"04" when a = "00111" else - X"04" when a = "01000" else - X"05" when a = "01001" else - X"06" when a = "01010" else - X"08" when a = "01011" else - X"09" when a = "01100" else - X"0B" when a = "01101" else - X"0D" when a = "01110" else - X"10" when a = "01111" else - X"13" when a = "10000" else - X"16" when a = "10001" else - X"1B" when a = "10010" else - X"20" when a = "10011" else - X"26" when a = "10100" else - X"2D" when a = "10101" else - X"36" when a = "10110" else - X"40" when a = "10111" else - X"4C" when a = "11000" else - X"5A" when a = "11001" else - X"6B" when a = "11010" else - X"80" when a = "11011" else - X"98" when a = "11100" else - X"B5" when a = "11101" else - X"D7" when a = "11110" else - X"FF" when a = "11111"; -end rtl; - - - -library IEEE; -use IEEE.std_logic_1164.all; -Use IEEE.std_logic_arith.all; -Use IEEE.std_logic_unsigned.all; - --- AY-3-8910 sound generator --- Internals -entity ay_3_8910_core is -port -( - clk : in std_logic; - reset : in std_logic; - clk_en : in std_logic; -- Clock enable pulse - this should occur between 1 and 2.5MHz - - -- Registers - TPA : in std_logic_vector(11 downto 0); -- Tone generator period channel A - TPB : in std_logic_vector(11 downto 0); -- Tone generator period channel B - TPC : in std_logic_vector(11 downto 0); -- Tone generator period channel C - NGP : in std_logic_vector(4 downto 0); -- Noise generator period - MCIOEN : in std_logic_vector(7 downto 0); -- Mixer, control and I/O enable - ACA : in std_logic_vector(4 downto 0); -- Amplitude control channel A - ACB : in std_logic_vector(4 downto 0); -- Amplitude control channel B - ACC : in std_logic_vector(4 downto 0); -- Amplitude control channel C - EPC : in std_logic_vector(15 downto 0); -- Envelope period control - ESR : in std_logic_vector(3 downto 0); -- Envelope shape/cycle control - ESR_updated : in std_logic; -- ESR was written, reset envelope - - -- Sound output - snd_A : out std_logic_vector(7 downto 0); - snd_B : out std_logic_vector(7 downto 0); - snd_C : out std_logic_vector(7 downto 0); - - -- Test outputs - deb_clk16_en : out std_logic; - deb_clk1256_en : out std_logic; - deb_wave_A : out std_logic; - deb_wave_B : out std_logic; - deb_wave_C : out std_logic; - deb_noise_out : out std_logic; - deb_mixed_A : out std_logic; - deb_mixed_B : out std_logic; - deb_mixed_C : out std_logic; - deb_env_out : out std_logic_vector(3 downto 0); - deb_ampl_A : out std_logic_vector(3 downto 0); - deb_ampl_B : out std_logic_vector(3 downto 0); - deb_ampl_C : out std_logic_vector(3 downto 0); - deb_psnd_A : out std_logic_vector(4 downto 0); - deb_psnd_B : out std_logic_vector(4 downto 0); - deb_psnd_C : out std_logic_vector(4 downto 0); - deb_ef_cont : out std_logic; - deb_ef_attack : out std_logic; - deb_ef_alt : out std_logic; - deb_ef_hold : out std_logic; - - deb_div_cnt : out std_logic_vector(7 downto 0); - deb_tcnt_A : out std_logic_vector(11 downto 0); - deb_tcnt_B : out std_logic_vector(11 downto 0); - deb_tcnt_C : out std_logic_vector(11 downto 0); - deb_nse : out std_logic_vector(4 downto 0); - deb_ecnt : out std_logic_vector(15 downto 0); - deb_ephase : out std_logic_vector(3 downto 0); - deb_nse_lfsr : out std_logic_vector(17 downto 0); - deb_noise_in : out std_logic; - deb_env_holding : out std_logic; - deb_env_inv : out std_logic - -) ; -end ay_3_8910_core; - -architecture rtl of ay_3_8910_core is - - signal clk16_en : std_logic; -- High 1/16 of input clock - signal clk256_en : std_logic; -- High 1/256 of input clock - - signal wave_A : std_logic; -- Square wave A - signal wave_B : std_logic; -- Square wave B - signal wave_C : std_logic; -- Square wave C - - signal noise_out : std_logic; -- Noise wave - - signal mixed_A : std_logic; -- Mixed wave A - signal mixed_B : std_logic; -- Mixed wave B - signal mixed_C : std_logic; -- Mixed wave C - - signal env_out : std_logic_vector(3 downto 0); -- Envelope wave - - signal ampl_A : std_logic_vector(3 downto 0); -- Current amplitude, channel A - signal ampl_B : std_logic_vector(3 downto 0); -- Current amplitude, channel B - signal ampl_C : std_logic_vector(3 downto 0); -- Current amplitude, channel C - - signal psnd_A : std_logic_vector(4 downto 0); -- Sound out, channel A, pre lin-log - signal psnd_B : std_logic_vector(4 downto 0); -- Sound out, channel A, pre lin-log - signal psnd_C : std_logic_vector(4 downto 0); -- Sound out, channel A, pre lin-log - - signal ef_cont : std_logic; -- Envelope continue - signal ef_attack : std_logic; -- Envelope attack - signal ef_alt : std_logic; -- Envelope alternate - signal ef_hold : std_logic; -- Envelope hold - - use work.all; - -begin - - -- Magic helper signals - ef_cont <= ESR(3); - ef_attack <= ESR(2); - ef_alt <= ESR(1); - ef_hold <= ESR(0); - - -- Debug signals - deb_clk16_en <= clk16_en; - deb_clk1256_en <= clk256_en; - deb_wave_A <= wave_A; - deb_wave_B <= wave_B; - deb_wave_C <= wave_C; - deb_noise_out <= noise_out; - deb_mixed_A <= mixed_A; - deb_mixed_B <= mixed_B; - deb_mixed_C <= mixed_C; - deb_env_out <= env_out; - deb_ampl_A <= ampl_A; - deb_ampl_B <= ampl_B; - deb_ampl_C <= ampl_C; - deb_psnd_A <= psnd_A; - deb_psnd_B <= psnd_B; - deb_psnd_C <= psnd_C; - deb_ef_cont <= ef_cont; - deb_ef_attack <= ef_attack; - deb_ef_alt <= ef_alt; - deb_ef_hold <= ef_hold; - - -- Waveform mixer scale selection - ampl_A <= env_out when ACA(4) = '1' else ACA(3 downto 0); - ampl_B <= env_out when ACB(4) = '1' else ACB(3 downto 0); - ampl_C <= env_out when ACC(4) = '1' else ACC(3 downto 0); - - -- Waveform output - psnd_A(4 downto 1) <= ampl_A when mixed_A = '1' else X"0"; psnd_A(0) <= '1'; - psnd_B(4 downto 1) <= ampl_B when mixed_B = '1' else X"0"; psnd_B(0) <= '1'; - psnd_C(4 downto 1) <= ampl_C when mixed_C = '1' else X"0"; psnd_C(0) <= '1'; - - -- Instantiate linear to logarithmic output convolvers - sA_log: entity lin5_to_log8 port map(a => psnd_A, o => snd_A); - sB_log: entity lin5_to_log8 port map(a => psnd_B, o => snd_B); - sC_log: entity lin5_to_log8 port map(a => psnd_C, o => snd_C); - - -- Waveform mixers - mixed_A <= (wave_A or MCIOEN(0)) and (noise_out or MCIOEN(3)); - mixed_B <= (wave_B or MCIOEN(1)) and (noise_out or MCIOEN(4)); - mixed_C <= (wave_C or MCIOEN(2)) and (noise_out or MCIOEN(5)); - - -- Main process - process (clk, clk_en, reset) - - variable div_cnt : std_logic_vector(7 downto 0); -- Clock divider counter - - variable wave_A_v : std_logic; -- Square wave A - variable wave_B_v : std_logic; -- Square wave B - variable wave_C_v : std_logic; -- Square wave C - - variable tcnt_A : std_logic_vector(11 downto 0); -- Square wave A period counter - variable tcnt_B : std_logic_vector(11 downto 0); -- Square wave B period counter - variable tcnt_C : std_logic_vector(11 downto 0); -- Square wave C period counter - variable nse : std_logic_vector(4 downto 0); -- Noise period counter - - variable ecnt : std_logic_vector(15 downto 0); -- Envelope period counter - variable ephase : std_logic_vector(3 downto 0); -- Envelope waveform counter - - variable nse_lfsr : std_logic_vector(17 downto 0); -- Noise generator LFSR - variable noise_in : std_logic; - - variable env_holding: std_logic; -- Envelope in hold state - variable env_inv : std_logic; -- Envelope inverted - - begin - - -- Debug signals - deb_div_cnt <= div_cnt; -- 7 downto 0 - deb_tcnt_A <= tcnt_A; -- 11 downto 0 - deb_tcnt_B <= tcnt_B; -- 11 downto 0 - deb_tcnt_C <= tcnt_C; -- 11 downto 0 - deb_nse <= nse; -- 4 downto 0 - deb_ecnt <= ecnt; -- 15 downto 0 - deb_ephase <= ephase; -- 3 downto 0 - deb_nse_lfsr <= nse_lfsr; -- 17 downto 0 - deb_noise_in <= noise_in; - deb_env_holding <= env_holding; - deb_env_inv <= env_inv; - - wave_A <= wave_A_v; - wave_B <= wave_B_v; - wave_C <= wave_C_v; - - if div_cnt(3 downto 0) = "1111" then - clk16_en <= '1'; - else - clk16_en <= '0'; - end if; - --- clk256_en <= (div_cnt = "11111111"); - - noise_out <= nse_lfsr(0); - - if reset = '1' then - wave_A_v := '0'; - wave_B_v := '0'; - wave_C_v := '0'; - - div_cnt := X"00"; - tcnt_A := X"000"; - tcnt_B := X"000"; - tcnt_C := X"000"; - nse_lfsr := "000000000000000000"; - - ecnt := X"0000"; - ephase := X"0"; - env_holding := '0'; - env_inv := '0'; - - elsif rising_edge(clk) then - - if clk_en = '1' then - -- Clock divider - div_cnt := div_cnt + 1; - - -- Envelope shape/cycle control updated, reset envelope state - if ESR_updated = '1' then - ecnt := X"0000"; - ephase := X"0"; - env_holding := '0'; - env_inv := '0'; - end if; - - -- Envelope waveform generation - -- Envelope holding - if env_holding = '1' then - if ef_cont = '1' then - env_out(3) <= (ef_attack xor ef_alt); - env_out(2) <= (ef_attack xor ef_alt); - env_out(1) <= (ef_attack xor ef_alt); - env_out(0) <= (ef_attack xor ef_alt); - else - env_out <= X"0"; - end if; - -- Otherwise envelope is a function of ephase - else - env_out(3) <= ((not ef_attack) xor env_inv) xor ephase(3); - env_out(2) <= ((not ef_attack) xor env_inv) xor ephase(2); - env_out(1) <= ((not ef_attack) xor env_inv) xor ephase(1); - env_out(0) <= ((not ef_attack) xor env_inv) xor ephase(0); - end if; - - -- Events with period clk/16 - if clk16_en = '1' then - -- Tone generator counters - -- Channel A - if unsigned(tcnt_A) >= unsigned(TPA) then - wave_A_v := not wave_A_v; - tcnt_A := X"000"; - else - tcnt_A := tcnt_A + 1; - end if; - - -- Channel B - if unsigned(tcnt_B) >= unsigned(TPB) then - wave_B_v := not wave_B_v; - tcnt_B := X"000"; - else - tcnt_B := tcnt_B + 1; - end if; - - -- Channel C - if unsigned(tcnt_C) >= unsigned(TPC) then - wave_C_v := not wave_C_v; - tcnt_C := X"000"; - else - tcnt_C := tcnt_C + 1; - end if; - - -- Noise period counter and LFSR - if nse >= NGP then - nse := "00000"; - noise_in := nse_lfsr(0) xnor nse_lfsr(3); -- Input = bit 0 xor bit 3 - nse_lfsr(16 downto 0) := nse_lfsr(17 downto 1); -- Shift right - bit 0 is output bit - nse_lfsr(17) := noise_in; -- Bit 16 is input bit - else - nse := nse + 1; - end if; - - -- Envelope counters - if ecnt >= EPC then - if ephase = "1111" then - -- If hold flag is set, latch hold value after one envelope cycle - if ef_hold = '1' or ef_cont = '0' then - env_holding := '1'; - end if; - - -- If alternate flag is set, toggle inverted flag - if ef_alt = '1' then - env_inv := not env_inv; - end if; - ephase := X"0"; - else - ephase := ephase + 1; - end if; - ecnt := X"0000"; - else - ecnt := ecnt + 1; - end if; - - end if; - - -- Events with period clk/256 --- if clk256_en = '1' then --- end if; - - end if; - end if; - end process; -end rtl; - - - diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/ay-3-8910.Vhd b/Soundboards_MiST/AS-2518-51_snd-master/rtl/ay-3-8910.Vhd deleted file mode 100644 index 84ed6210..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/ay-3-8910.Vhd +++ /dev/null @@ -1,262 +0,0 @@ -library IEEE; -use IEEE.std_logic_1164.all; -Use IEEE.std_logic_unsigned.all; - --- AY-3-8910 sound generator --- Chip-level module, registers and decoding -entity ay_3_8910 is -port -( - -- AY-3-8910 sound controller - clk : in std_logic; - reset : in std_logic; - clk_en : in std_logic; -- Clock enable pulse - this should occur between 1 and 2.5MHz - - -- CPU I/F - cpu_d_in : in std_logic_vector(7 downto 0); - cpu_d_out : out std_logic_vector(7 downto 0); - cpu_bdir : in std_logic; - cpu_bc1 : in std_logic; - cpu_bc2 : in std_logic; - - -- I/O I/F - io_a_in : in std_logic_vector(7 downto 0); - io_b_in : in std_logic_vector(7 downto 0); - io_a_out : out std_logic_vector(7 downto 0); - io_b_out : out std_logic_vector(7 downto 0); - - -- Sound output - snd_A : out std_logic_vector(7 downto 0); - snd_B : out std_logic_vector(7 downto 0); - snd_C : out std_logic_vector(7 downto 0) - - -- Debug - --deb_addr : out std_logic_vector(3 downto 0); - --deb_TPA : out std_logic_vector(11 downto 0); -- Tone generator period channel A - --deb_TPB : out std_logic_vector(11 downto 0); -- Tone generator period channel B - --deb_TPC : out std_logic_vector(11 downto 0); -- Tone generator period channel C - --deb_NGP : out std_logic_vector(4 downto 0); -- Noise generator period - --deb_MCIOEN : out std_logic_vector(7 downto 0); -- Mixer, control and I/O enable - --deb_ACA : out std_logic_vector(4 downto 0); -- Amplitude control channel A - --deb_ACB : out std_logic_vector(4 downto 0); -- Amplitude control channel B - --deb_ACC : out std_logic_vector(4 downto 0); -- Amplitude control channel C - --deb_EPC : out std_logic_vector(15 downto 0); -- Envelope period control - --deb_ESR : out std_logic_vector(3 downto 0); -- Envelope shape/cycle control - --deb_ESR_updated : out std_logic; -- ESR was written, reset envelope - - -- Test outputs - --deb_clk16_en : out std_logic; - --deb_clk1256_en : out std_logic; - --deb_wave_A : out std_logic; - --deb_wave_B : out std_logic; - --deb_wave_C : out std_logic; - --deb_noise_out : out std_logic; - --deb_mixed_A : out std_logic; - --deb_mixed_B : out std_logic; - --deb_mixed_C : out std_logic; - --deb_env_out : out std_logic_vector(3 downto 0); - --deb_ampl_A : out std_logic_vector(3 downto 0); - --deb_ampl_B : out std_logic_vector(3 downto 0); - --deb_ampl_C : out std_logic_vector(3 downto 0); - --deb_psnd_A : out std_logic_vector(4 downto 0); - --deb_psnd_B : out std_logic_vector(4 downto 0); - --deb_psnd_C : out std_logic_vector(4 downto 0); - --deb_ef_cont : out std_logic; - --deb_ef_attack : out std_logic; - --deb_ef_alt : out std_logic; - --deb_ef_hold : out std_logic; - - --deb_div_cnt : out std_logic_vector(7 downto 0); - --deb_tcnt_A : out std_logic_vector(11 downto 0); - --deb_tcnt_B : out std_logic_vector(11 downto 0); - --deb_tcnt_C : out std_logic_vector(11 downto 0); - --deb_nse : out std_logic_vector(4 downto 0); - --deb_ecnt : out std_logic_vector(15 downto 0); - --deb_ephase : out std_logic_vector(3 downto 0); - --deb_nse_lfsr : out std_logic_vector(17 downto 0); - --deb_noise_in : out std_logic; - --deb_env_holding : out std_logic; - --deb_env_inv : out std_logic - -) ; -end ay_3_8910; - -architecture rtl of ay_3_8910 is - signal TPA : std_logic_vector(11 downto 0); -- Tone generator period channel A - signal TPB : std_logic_vector(11 downto 0); -- Tone generator period channel B - signal TPC : std_logic_vector(11 downto 0); -- Tone generator period channel C - signal NGP : std_logic_vector(4 downto 0); -- Noise generator period - signal MCIOEN : std_logic_vector(7 downto 0); -- Mixer, control and I/O enable - signal ACA : std_logic_vector(4 downto 0); -- Amplitude control channel A - signal ACB : std_logic_vector(4 downto 0); -- Amplitude control channel B - signal ACC : std_logic_vector(4 downto 0); -- Amplitude control channel C - signal EPC : std_logic_vector(15 downto 0); -- Envelope period control - signal ESR : std_logic_vector(3 downto 0); -- Envelope shape/cycle control - signal PAO : std_logic_vector(7 downto 0); -- Port A out - signal PBO : std_logic_vector(7 downto 0); -- Port B out - signal ESR_updated : std_logic; -- ESR was written, reset envelope - - use work.all; - -begin - - -- Connect core sound processing module to input registers - ay_core: entity ay_3_8910_core port map(clk => clk, reset => reset, clk_en => clk_en, - TPA => TPA, TPB => TPB, TPC => TPC, NGP => NGP, MCIOEN => MCIOEN, ACA => ACA, ACB => ACB, - ACC => ACC, EPC => EPC, ESR => ESR, ESR_updated => ESR_updated, - snd_A => snd_A, snd_B => snd_B, snd_C => snd_C - --deb_clk16_en => deb_clk16_en, - --deb_clk1256_en => deb_clk1256_en, - --deb_wave_A => deb_wave_A, - --deb_wave_B => deb_wave_B, - --deb_wave_C => deb_wave_C, - --deb_noise_out => deb_noise_out, - --deb_mixed_A => deb_mixed_A, - --deb_mixed_B => deb_mixed_B, - --deb_mixed_C => deb_mixed_C, - --deb_env_out => deb_env_out, - --deb_ampl_A => deb_ampl_A, - --deb_ampl_B => deb_ampl_B, - --deb_ampl_C => deb_ampl_C, - --deb_psnd_A => deb_psnd_A, - --deb_psnd_B => deb_psnd_B, - --deb_psnd_C => deb_psnd_C, - --deb_ef_cont => deb_ef_cont, - --deb_ef_attack => deb_ef_attack, - --deb_ef_alt => deb_ef_alt, - --deb_ef_hold => deb_ef_hold, - --deb_div_cnt => deb_div_cnt, - --deb_tcnt_A => deb_tcnt_A, - --deb_tcnt_B => deb_tcnt_B, - --deb_tcnt_C => deb_tcnt_C, - --deb_nse => deb_nse, - --deb_ecnt => deb_ecnt, - --deb_ephase => deb_ephase, - --deb_nse_lfsr => deb_nse_lfsr, - --deb_noise_in => deb_noise_in, - --deb_env_holding => deb_env_holding, - --deb_env_inv => deb_env_inv - - ); - - -- I/O outputs - io_a_out <= PAO when MCIOEN(6) = '0' else X"FF"; - io_b_out <= PBO when MCIOEN(7) = '0' else X"FF"; - - -- Main process - process (clk, clk_en, reset) - variable addr : std_logic_vector(3 downto 0); -- Addressed register - - variable rTPA : std_logic_vector(11 downto 0); -- Tone generator period channel A - variable rTPB : std_logic_vector(11 downto 0); -- Tone generator period channel B - variable rTPC : std_logic_vector(11 downto 0); -- Tone generator period channel C - variable rNGP : std_logic_vector(4 downto 0); -- Noise generator period - variable rMCIOEN : std_logic_vector(7 downto 0); -- Mixer, control and I/O enable - variable rACA : std_logic_vector(4 downto 0); -- Amplitude control channel A - variable rACB : std_logic_vector(4 downto 0); -- Amplitude control channel B - variable rACC : std_logic_vector(4 downto 0); -- Amplitude control channel C - variable rEPC : std_logic_vector(15 downto 0); -- Envelope period control - variable rESR : std_logic_vector(3 downto 0); -- Envelope shape/cycle control - variable rPAO : std_logic_vector(7 downto 0); -- Port A out - variable rPBO : std_logic_vector(7 downto 0); -- Port B out - variable rESR_updated : std_logic; -- ESR was written, reset envelope - begin - TPA <= rTPA; TPB <= rTPB; - TPC <= rTPC; NGP <= rNGP; - MCIOEN <= rMCIOEN; ACA <= rACA; - ACB <= rACB; ACC <= rACC; - EPC <= rEPC; ESR <= rESR; - PAO <= rPAO; PBO <= rPBO; - ESR_updated <= rESR_updated; - - -- Debug - --deb_addr <= addr; - --deb_TPA <= TPA; - --deb_TPB <= TPB; - --deb_TPC <= TPC; - --deb_NGP <= NGP; - --deb_MCIOEN <= MCIOEN; - --deb_ACA <= ACA; - --deb_ACB <= ACB; - --deb_ACC <= ACC; - --deb_EPC <= EPC; - --deb_ESR <= ESR; - --deb_ESR_updated <= ESR_updated; - - if reset = '1' then - - rTPA := X"000"; - rTPB := X"000"; - rTPC := X"000"; - rNGP := "00000"; - rMCIOEN := X"00"; - rACA := "00000"; - rACB := "00000"; - rACC := "00000"; - rEPC := X"0000"; - rESR := X"0"; - rESR_updated := '0'; - - elsif rising_edge(clk) then - --- if clk_en = '1' then - rESR_updated := '0'; - - -- Latch address - if (cpu_bdir = '0' and cpu_bc2 = '0' and cpu_bc1 = '1') or - (cpu_bdir = '1' and cpu_bc2 = '0' and cpu_bc1 = '0') or - (cpu_bdir = '1' and cpu_bc2 = '1' and cpu_bc1 = '1') then - - addr(3 downto 0) := cpu_d_in(3 downto 0); - - -- Data write - elsif (cpu_bdir = '1' and cpu_bc2 = '1' and cpu_bc1 = '0') then - case addr(3 downto 0) is - when X"0" => rTPA(7 downto 0) := cpu_d_in(7 downto 0); - when X"1" => rTPA(11 downto 8) := cpu_d_in(3 downto 0); - when X"2" => rTPB(7 downto 0) := cpu_d_in(7 downto 0); - when X"3" => rTPB(11 downto 8) := cpu_d_in(3 downto 0); - when X"4" => rTPC(7 downto 0) := cpu_d_in(7 downto 0); - when X"5" => rTPC(11 downto 8) := cpu_d_in(3 downto 0); - when X"6" => rNGP(4 downto 0) := cpu_d_in(4 downto 0); - when X"7" => rMCIOEN(7 downto 0) := cpu_d_in(7 downto 0); - when X"8" => rACA(4 downto 0) := cpu_d_in(4 downto 0); - when X"9" => rACB(4 downto 0) := cpu_d_in(4 downto 0); - when X"A" => rACC(4 downto 0) := cpu_d_in(4 downto 0); - when X"B" => rEPC(7 downto 0) := cpu_d_in(7 downto 0); - when X"C" => rEPC(15 downto 8) := cpu_d_in(7 downto 0); - when X"D" => rESR(3 downto 0) := cpu_d_in(3 downto 0); rESR_updated := '1'; - when X"E" => rPAO(7 downto 0) := cpu_d_in(7 downto 0); - when X"F" => rPBO(7 downto 0) := cpu_d_in(7 downto 0); - when others => - end case; - - -- Data read - elsif (cpu_bdir = '0' and cpu_bc2 = '1' and cpu_bc1 = '1') then - cpu_d_out <= X"00"; - case addr(3 downto 0) is - when X"0" => cpu_d_out <= rTPA(7 downto 0); - when X"1" => cpu_d_out(3 downto 0) <= rTPA(11 downto 8); - when X"2" => cpu_d_out <= rTPB(7 downto 0); - when X"3" => cpu_d_out(3 downto 0) <= rTPB(11 downto 8); - when X"4" => cpu_d_out <= rTPC(7 downto 0); - when X"5" => cpu_d_out(3 downto 0) <= rTPC(11 downto 8); - when X"6" => cpu_d_out(4 downto 0) <= rNGP(4 downto 0); - when X"7" => cpu_d_out <= rMCIOEN(7 downto 0); - when X"8" => cpu_d_out(4 downto 0) <= rACA(4 downto 0); - when X"9" => cpu_d_out(4 downto 0) <= rACB(4 downto 0); - when X"A" => cpu_d_out(4 downto 0) <= rACC(4 downto 0); - when X"B" => cpu_d_out <= rEPC(7 downto 0); - when X"C" => cpu_d_out <= rEPC(15 downto 8); - when X"D" => cpu_d_out(3 downto 0) <= rESR(3 downto 0); - when X"E" => cpu_d_out <= io_a_in(7 downto 0); - when X"F" => cpu_d_out <= io_b_in(7 downto 0); - when others => - end case; - end if; --- end if; - - end if; - end process; -end rtl; - diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/ay-3-8910_vectors.vhd b/Soundboards_MiST/AS-2518-51_snd-master/rtl/ay-3-8910_vectors.vhd deleted file mode 100644 index c8e4deb0..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/ay-3-8910_vectors.vhd +++ /dev/null @@ -1,1165 +0,0 @@ -library ieee; -use ieee.std_logic_1164.all; -use ieee.std_logic_unsigned.all; -entity rominfr is - port ( - clk : in std_logic; - en : in std_logic; - addr : in std_logic_vector(10 downto 0); - data : out std_logic_vector(47 downto 0) - ); -end rominfr; -architecture syn of rominfr is - type rom_type is array (1136 downto 0) of std_logic_vector (47 downto 0); - constant ROM : rom_type := -( - X"000000000000", -- len= 0 r=$00 v=$00 - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000000200", -- len= 0 r=$02 v=$00 - X"000000000300", -- len= 0 r=$03 v=$00 - X"000000000400", -- len= 0 r=$04 v=$00 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000000600", -- len= 0 r=$06 v=$00 - X"000000000700", -- len= 0 r=$07 v=$00 - X"000000000800", -- len= 0 r=$08 v=$00 - X"000000000900", -- len= 0 r=$09 v=$00 - X"000000000A00", -- len= 0 r=$0A v=$00 - X"000000000B00", -- len= 0 r=$0B v=$00 - X"000000000C00", -- len= 0 r=$0C v=$00 - X"000000000D00", -- len= 0 r=$0D v=$00 - X"00000390073F", -- len= 912 r=$07 v=$3F - X"000000000800", -- len= 0 r=$08 v=$00 - X"000000000900", -- len= 0 r=$09 v=$00 - X"000000000A00", -- len= 0 r=$0A v=$00 - X"00000000073F", -- len= 0 r=$07 v=$3F - X"00000000073F", -- len= 0 r=$07 v=$3F - X"000000000800", -- len= 0 r=$08 v=$00 - X"00000000073F", -- len= 0 r=$07 v=$3F - X"000000000900", -- len= 0 r=$09 v=$00 - X"00000000073F", -- len= 0 r=$07 v=$3F - X"000000000A00", -- len= 0 r=$0A v=$00 - X"00011704073F", -- len= 71428 r=$07 v=$3F - X"000002D8073F", -- len= 728 r=$07 v=$3F - X"000000000800", -- len= 0 r=$08 v=$00 - X"000000000900", -- len= 0 r=$09 v=$00 - X"000000000A00", -- len= 0 r=$0A v=$00 - X"00000000073F", -- len= 0 r=$07 v=$3F - X"00000000073F", -- len= 0 r=$07 v=$3F - X"000000000800", -- len= 0 r=$08 v=$00 - X"00000000073F", -- len= 0 r=$07 v=$3F - X"000000000900", -- len= 0 r=$09 v=$00 - X"00000000073F", -- len= 0 r=$07 v=$3F - X"000000000A00", -- len= 0 r=$0A v=$00 - X"000038D40020", -- len= 14548 r=$00 v=$20 - X"000000000100", -- len= 0 r=$01 v=$00 - X"00000004073E", -- len= 4 r=$07 v=$3E - X"000000030809", -- len= 3 r=$08 v=$09 - X"000007D70808", -- len= 2007 r=$08 v=$08 - X"000007E30807", -- len= 2019 r=$08 v=$07 - X"000007E30806", -- len= 2019 r=$08 v=$06 - X"000007E30805", -- len= 2019 r=$08 v=$05 - X"000007E10804", -- len= 2017 r=$08 v=$04 - X"000007E40803", -- len= 2020 r=$08 v=$03 - X"000007E30802", -- len= 2019 r=$08 v=$02 - X"000007E30801", -- len= 2019 r=$08 v=$01 - X"000007E20800", -- len= 2018 r=$08 v=$00 - X"0000002F0000", -- len= 47 r=$00 v=$00 - X"000000010103", -- len= 1 r=$01 v=$03 - X"000000020808", -- len= 2 r=$08 v=$08 - X"000000CB00F8", -- len= 203 r=$00 v=$F8 - X"000000010102", -- len= 1 r=$01 v=$02 - X"000000AF00F0", -- len= 175 r=$00 v=$F0 - X"000000000102", -- len= 0 r=$01 v=$02 - X"000000CB00E8", -- len= 203 r=$00 v=$E8 - X"000000000102", -- len= 0 r=$01 v=$02 - X"000000B000E0", -- len= 176 r=$00 v=$E0 - X"000000000102", -- len= 0 r=$01 v=$02 - X"000000CA00D8", -- len= 202 r=$00 v=$D8 - X"000000000102", -- len= 0 r=$01 v=$02 - X"000000B100D0", -- len= 177 r=$00 v=$D0 - X"000000000102", -- len= 0 r=$01 v=$02 - X"000000CA00C8", -- len= 202 r=$00 v=$C8 - X"000000000102", -- len= 0 r=$01 v=$02 - X"000000AF00C0", -- len= 175 r=$00 v=$C0 - X"000000000102", -- len= 0 r=$01 v=$02 - X"000000CC00B8", -- len= 204 r=$00 v=$B8 - X"000000000102", -- len= 0 r=$01 v=$02 - X"000000B000B0", -- len= 176 r=$00 v=$B0 - X"000000000102", -- len= 0 r=$01 v=$02 - X"000000C900A8", -- len= 201 r=$00 v=$A8 - X"000000000102", -- len= 0 r=$01 v=$02 - X"000000B000A0", -- len= 176 r=$00 v=$A0 - X"000000000102", -- len= 0 r=$01 v=$02 - X"000000CC0098", -- len= 204 r=$00 v=$98 - X"000000000102", -- len= 0 r=$01 v=$02 - X"000000B00090", -- len= 176 r=$00 v=$90 - X"000000000102", -- len= 0 r=$01 v=$02 - X"000000C90088", -- len= 201 r=$00 v=$88 - X"000000000102", -- len= 0 r=$01 v=$02 - X"0000003D073F", -- len= 61 r=$07 v=$3F - X"00000000073F", -- len= 0 r=$07 v=$3F - X"0000003F0800", -- len= 63 r=$08 v=$00 - X"00000000073F", -- len= 0 r=$07 v=$3F - X"000000000900", -- len= 0 r=$09 v=$00 - X"00000000073F", -- len= 0 r=$07 v=$3F - X"000000000A00", -- len= 0 r=$0A v=$00 - X"000002AD073E", -- len= 685 r=$07 v=$3E - X"0000007300F0", -- len= 115 r=$00 v=$F0 - X"000000010100", -- len= 1 r=$01 v=$00 - X"000000030807", -- len= 3 r=$08 v=$07 - X"00000263073C", -- len= 611 r=$07 v=$3C - X"00000040025D", -- len= 64 r=$02 v=$5D - X"000000010302", -- len= 1 r=$03 v=$02 - X"000000030907", -- len= 3 r=$09 v=$07 - X"0000024D0806", -- len= 589 r=$08 v=$06 - X"0000005E0738", -- len= 94 r=$07 v=$38 - X"000000000A00", -- len= 0 r=$0A v=$00 - X"000002210906", -- len= 545 r=$09 v=$06 - X"000002FD0A06", -- len= 765 r=$0A v=$06 - X"0000045E0805", -- len= 1118 r=$08 v=$05 - X"0000027F0905", -- len= 639 r=$09 v=$05 - X"000002FF0A05", -- len= 767 r=$0A v=$05 - X"0000045E0804", -- len= 1118 r=$08 v=$04 - X"0000027E0904", -- len= 638 r=$09 v=$04 - X"000002FF0A04", -- len= 767 r=$0A v=$04 - X"0000045E0803", -- len= 1118 r=$08 v=$03 - X"0000027F0903", -- len= 639 r=$09 v=$03 - X"00000277002E", -- len= 631 r=$00 v=$2E - X"000000010101", -- len= 1 r=$01 v=$01 - X"000000040807", -- len= 4 r=$08 v=$07 - X"000000810A03", -- len= 129 r=$0A v=$03 - X"000001FA02E0", -- len= 506 r=$02 v=$E0 - X"000000010301", -- len= 1 r=$03 v=$01 - X"000000030907", -- len= 3 r=$09 v=$07 - X"000002620806", -- len= 610 r=$08 v=$06 - X"00000096045D", -- len= 150 r=$04 v=$5D - X"000000010502", -- len= 1 r=$05 v=$02 - X"000000040A07", -- len= 4 r=$0A v=$07 - X"000001E40906", -- len= 484 r=$09 v=$06 - X"000002FD0A06", -- len= 765 r=$0A v=$06 - X"0000045E0805", -- len= 1118 r=$08 v=$05 - X"000002800905", -- len= 640 r=$09 v=$05 - X"000002FD0A05", -- len= 765 r=$0A v=$05 - X"0000045E0804", -- len= 1118 r=$08 v=$04 - X"0000027F0904", -- len= 639 r=$09 v=$04 - X"000002FF0A04", -- len= 767 r=$0A v=$04 - X"0000045E0803", -- len= 1118 r=$08 v=$03 - X"0000027E0903", -- len= 638 r=$09 v=$03 - X"00000000002E", -- len= 0 r=$00 v=$2E - X"000000000101", -- len= 0 r=$01 v=$01 - X"0000027D0807", -- len= 637 r=$08 v=$07 - X"000000810A03", -- len= 129 r=$0A v=$03 - X"000001FA0227", -- len= 506 r=$02 v=$27 - X"000000010303", -- len= 1 r=$03 v=$03 - X"000000030907", -- len= 3 r=$09 v=$07 - X"000002610806", -- len= 609 r=$08 v=$06 - X"000000930A00", -- len= 147 r=$0A v=$00 - X"000001ED0906", -- len= 493 r=$09 v=$06 - X"000002FD0A02", -- len= 765 r=$0A v=$02 - X"0000045E0805", -- len= 1118 r=$08 v=$05 - X"0000027E0905", -- len= 638 r=$09 v=$05 - X"000002FF0A01", -- len= 767 r=$0A v=$01 - X"0000045E0804", -- len= 1118 r=$08 v=$04 - X"0000027E0904", -- len= 638 r=$09 v=$04 - X"000002FE0A00", -- len= 766 r=$0A v=$00 - X"0000045F0803", -- len= 1119 r=$08 v=$03 - X"0000027F0903", -- len= 639 r=$09 v=$03 - X"0000000D002E", -- len= 13 r=$00 v=$2E - X"000000000101", -- len= 0 r=$01 v=$01 - X"000002700807", -- len= 624 r=$08 v=$07 - X"0000027902E0", -- len= 633 r=$02 v=$E0 - X"000000020301", -- len= 2 r=$03 v=$01 - X"000000030907", -- len= 3 r=$09 v=$07 - X"000002610806", -- len= 609 r=$08 v=$06 - X"00000000045D", -- len= 0 r=$04 v=$5D - X"000000000502", -- len= 0 r=$05 v=$02 - X"0000009D0A07", -- len= 157 r=$0A v=$07 - X"000001E30906", -- len= 483 r=$09 v=$06 - X"000002FC0A06", -- len= 764 r=$0A v=$06 - X"000004600805", -- len= 1120 r=$08 v=$05 - X"0000027F0905", -- len= 639 r=$09 v=$05 - X"000002FC0A05", -- len= 764 r=$0A v=$05 - X"0000045F0804", -- len= 1119 r=$08 v=$04 - X"000002800904", -- len= 640 r=$09 v=$04 - X"000002FD0A04", -- len= 765 r=$0A v=$04 - X"0000045E0803", -- len= 1118 r=$08 v=$03 - X"000002800903", -- len= 640 r=$09 v=$03 - X"0000027700F0", -- len= 631 r=$00 v=$F0 - X"000000010100", -- len= 1 r=$01 v=$00 - X"000000030807", -- len= 3 r=$08 v=$07 - X"000000820A03", -- len= 130 r=$0A v=$03 - X"000001F9025D", -- len= 505 r=$02 v=$5D - X"000000010302", -- len= 1 r=$03 v=$02 - X"000000030907", -- len= 3 r=$09 v=$07 - X"000002610806", -- len= 609 r=$08 v=$06 - X"000000950A00", -- len= 149 r=$0A v=$00 - X"000001EB0906", -- len= 491 r=$09 v=$06 - X"000002FD0A02", -- len= 765 r=$0A v=$02 - X"0000045E0805", -- len= 1118 r=$08 v=$05 - X"000002810905", -- len= 641 r=$09 v=$05 - X"000002FC0A01", -- len= 764 r=$0A v=$01 - X"0000045F0804", -- len= 1119 r=$08 v=$04 - X"000002800904", -- len= 640 r=$09 v=$04 - X"000002FD0A00", -- len= 765 r=$0A v=$00 - X"0000045E0803", -- len= 1118 r=$08 v=$03 - X"000002800903", -- len= 640 r=$09 v=$03 - X"00000277002E", -- len= 631 r=$00 v=$2E - X"000000010101", -- len= 1 r=$01 v=$01 - X"000000030807", -- len= 3 r=$08 v=$07 - X"0000027C02E0", -- len= 636 r=$02 v=$E0 - X"000000010301", -- len= 1 r=$03 v=$01 - X"000000040907", -- len= 4 r=$09 v=$07 - X"000002610806", -- len= 609 r=$08 v=$06 - X"00000000045D", -- len= 0 r=$04 v=$5D - X"000000000502", -- len= 0 r=$05 v=$02 - X"0000009A0A07", -- len= 154 r=$0A v=$07 - X"000001E50906", -- len= 485 r=$09 v=$06 - X"000002FD0A06", -- len= 765 r=$0A v=$06 - X"0000045E0805", -- len= 1118 r=$08 v=$05 - X"0000027E0905", -- len= 638 r=$09 v=$05 - X"000002FF0A05", -- len= 767 r=$0A v=$05 - X"0000045E0804", -- len= 1118 r=$08 v=$04 - X"0000027F0904", -- len= 639 r=$09 v=$04 - X"000002FC0A04", -- len= 764 r=$0A v=$04 - X"000004610803", -- len= 1121 r=$08 v=$03 - X"0000027E0903", -- len= 638 r=$09 v=$03 - X"000001280738", -- len= 296 r=$07 v=$38 - X"000000DE04BE", -- len= 222 r=$04 v=$BE - X"000000010500", -- len= 1 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"00000000002E", -- len= 0 r=$00 v=$2E - X"000000000101", -- len= 0 r=$01 v=$01 - X"000000EE0807", -- len= 238 r=$08 v=$07 - X"000000560A08", -- len= 86 r=$0A v=$08 - X"000002250227", -- len= 549 r=$02 v=$27 - X"000000010303", -- len= 1 r=$03 v=$03 - X"000000040907", -- len= 4 r=$09 v=$07 - X"0000004D0A07", -- len= 77 r=$0A v=$07 - X"000001370497", -- len= 311 r=$04 v=$97 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000000D70806", -- len= 215 r=$08 v=$06 - X"000000620A08", -- len= 98 r=$0A v=$08 - X"0000021E0906", -- len= 542 r=$09 v=$06 - X"0000005A0A07", -- len= 90 r=$0A v=$07 - X"00000137047F", -- len= 311 r=$04 v=$7F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000013C0A08", -- len= 316 r=$0A v=$08 - X"000002760A07", -- len= 630 r=$0A v=$07 - X"00000136045F", -- len= 310 r=$04 v=$5F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000000D90805", -- len= 217 r=$08 v=$05 - X"000000620A08", -- len= 98 r=$0A v=$08 - X"0000021D0905", -- len= 541 r=$09 v=$05 - X"0000005A0A07", -- len= 90 r=$0A v=$07 - X"0000013A0471", -- len= 314 r=$04 v=$71 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001380A08", -- len= 312 r=$0A v=$08 - X"000002760A07", -- len= 630 r=$0A v=$07 - X"000002150804", -- len= 533 r=$08 v=$04 - X"000000630A06", -- len= 99 r=$0A v=$06 - X"0000021C0904", -- len= 540 r=$09 v=$04 - X"0000005A0A05", -- len= 90 r=$0A v=$05 - X"000002770A04", -- len= 631 r=$0A v=$04 - X"000002760A03", -- len= 630 r=$0A v=$03 - X"000002140803", -- len= 532 r=$08 v=$03 - X"000000630A02", -- len= 99 r=$0A v=$02 - X"0000021D0903", -- len= 541 r=$09 v=$03 - X"0000005A0A01", -- len= 90 r=$0A v=$01 - X"000000AE002E", -- len= 174 r=$00 v=$2E - X"000000000101", -- len= 0 r=$01 v=$01 - X"000001730807", -- len= 371 r=$08 v=$07 - X"000000560A00", -- len= 86 r=$0A v=$00 - X"0000022502E0", -- len= 549 r=$02 v=$E0 - X"000000010301", -- len= 1 r=$03 v=$01 - X"000000040907", -- len= 4 r=$09 v=$07 - X"000002620806", -- len= 610 r=$08 v=$06 - X"000002320738", -- len= 562 r=$07 v=$38 - X"000000980906", -- len= 152 r=$09 v=$06 - X"0000004604BE", -- len= 70 r=$04 v=$BE - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000013D0A08", -- len= 317 r=$0A v=$08 - X"000002780A07", -- len= 632 r=$0A v=$07 - X"000001390497", -- len= 313 r=$04 v=$97 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001390A08", -- len= 313 r=$0A v=$08 - X"000001180805", -- len= 280 r=$08 v=$05 - X"0000015E0A07", -- len= 350 r=$0A v=$07 - X"000001200905", -- len= 288 r=$09 v=$05 - X"0000001D047F", -- len= 29 r=$04 v=$7F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001360A08", -- len= 310 r=$0A v=$08 - X"000002760A07", -- len= 630 r=$0A v=$07 - X"00000138045F", -- len= 312 r=$04 v=$5F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001390A08", -- len= 313 r=$0A v=$08 - X"000001180804", -- len= 280 r=$08 v=$04 - X"0000015F0A07", -- len= 351 r=$0A v=$07 - X"000001220904", -- len= 290 r=$09 v=$04 - X"0000001E0471", -- len= 30 r=$04 v=$71 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"000001310A08", -- len= 305 r=$0A v=$08 - X"000002780A07", -- len= 632 r=$0A v=$07 - X"000002760A06", -- len= 630 r=$0A v=$06 - X"000001170803", -- len= 279 r=$08 v=$03 - X"0000015F0A05", -- len= 351 r=$0A v=$05 - X"000001220903", -- len= 290 r=$09 v=$03 - X"000001560A04", -- len= 342 r=$0A v=$04 - X"0000012000E3", -- len= 288 r=$00 v=$E3 - X"000000010100", -- len= 1 r=$01 v=$00 - X"000000030807", -- len= 3 r=$08 v=$07 - X"000001530A03", -- len= 339 r=$0A v=$03 - X"00000128021B", -- len= 296 r=$02 v=$1B - X"000000020302", -- len= 2 r=$03 v=$02 - X"000000030907", -- len= 3 r=$09 v=$07 - X"0000014A0A02", -- len= 330 r=$0A v=$02 - X"000001170806", -- len= 279 r=$08 v=$06 - X"0000015E0A01", -- len= 350 r=$0A v=$01 - X"000001200906", -- len= 288 r=$09 v=$06 - X"000001580A00", -- len= 344 r=$0A v=$00 - X"000006050805", -- len= 1541 r=$08 v=$05 - X"000002800905", -- len= 640 r=$09 v=$05 - X"0000075C0804", -- len= 1884 r=$08 v=$04 - X"0000027E0904", -- len= 638 r=$09 v=$04 - X"000000000A00", -- len= 0 r=$0A v=$00 - X"00000058073C", -- len= 88 r=$07 v=$3C - X"000000000A00", -- len= 0 r=$0A v=$00 - X"00000000073C", -- len= 0 r=$07 v=$3C - X"000000000A00", -- len= 0 r=$0A v=$00 - X"000007040803", -- len= 1796 r=$08 v=$03 - X"000002810903", -- len= 641 r=$09 v=$03 - X"0000014600E3", -- len= 326 r=$00 v=$E3 - X"000000000100", -- len= 0 r=$01 v=$00 - X"000001350807", -- len= 309 r=$08 v=$07 - X"0000027902C5", -- len= 633 r=$02 v=$C5 - X"000000010301", -- len= 1 r=$03 v=$01 - X"000000040907", -- len= 4 r=$09 v=$07 - X"000002620806", -- len= 610 r=$08 v=$06 - X"0000027F0906", -- len= 639 r=$09 v=$06 - X"000000210738", -- len= 33 r=$07 v=$38 - X"0000006B04BE", -- len= 107 r=$04 v=$BE - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001430A08", -- len= 323 r=$0A v=$08 - X"000002780A07", -- len= 632 r=$0A v=$07 - X"000001360497", -- len= 310 r=$04 v=$97 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"0000013B0A08", -- len= 315 r=$0A v=$08 - X"000000E50805", -- len= 229 r=$08 v=$05 - X"000001910A07", -- len= 401 r=$0A v=$07 - X"000000EE0905", -- len= 238 r=$09 v=$05 - X"00000048047F", -- len= 72 r=$04 v=$7F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"0000013B0A08", -- len= 315 r=$0A v=$08 - X"000002760A07", -- len= 630 r=$0A v=$07 - X"00000136045F", -- len= 310 r=$04 v=$5F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"0000013B0A08", -- len= 315 r=$0A v=$08 - X"000000E50804", -- len= 229 r=$08 v=$04 - X"000001910A07", -- len= 401 r=$0A v=$07 - X"000000F00904", -- len= 240 r=$09 v=$04 - X"0000004B0471", -- len= 75 r=$04 v=$71 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001370A08", -- len= 311 r=$0A v=$08 - X"000002780A07", -- len= 632 r=$0A v=$07 - X"000002760A06", -- len= 630 r=$0A v=$06 - X"000000E50803", -- len= 229 r=$08 v=$03 - X"000001910A05", -- len= 401 r=$0A v=$05 - X"000000F00903", -- len= 240 r=$09 v=$03 - X"000001880A04", -- len= 392 r=$0A v=$04 - X"000000EE00F0", -- len= 238 r=$00 v=$F0 - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000050807", -- len= 5 r=$08 v=$07 - X"000001B60A03", -- len= 438 r=$0A v=$03 - X"000000F70227", -- len= 247 r=$02 v=$27 - X"000000010303", -- len= 1 r=$03 v=$03 - X"000000030907", -- len= 3 r=$09 v=$07 - X"0000017D0A02", -- len= 381 r=$0A v=$02 - X"000000E50806", -- len= 229 r=$08 v=$06 - X"000001910A01", -- len= 401 r=$0A v=$01 - X"000000EE0906", -- len= 238 r=$09 v=$06 - X"000001880A00", -- len= 392 r=$0A v=$00 - X"000005D30805", -- len= 1491 r=$08 v=$05 - X"000000FF0738", -- len= 255 r=$07 v=$38 - X"000000C404BE", -- len= 196 r=$04 v=$BE - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001040905", -- len= 260 r=$09 v=$05 - X"000000410A08", -- len= 65 r=$0A v=$08 - X"000002760A07", -- len= 630 r=$0A v=$07 - X"000001500497", -- len= 336 r=$04 v=$97 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000016E0A08", -- len= 366 r=$0A v=$08 - X"000002140804", -- len= 532 r=$08 v=$04 - X"000000620A07", -- len= 98 r=$0A v=$07 - X"00000136047F", -- len= 310 r=$04 v=$7F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"000000E10904", -- len= 225 r=$09 v=$04 - X"0000005A0A08", -- len= 90 r=$0A v=$08 - X"000002760A07", -- len= 630 r=$0A v=$07 - X"00000139045F", -- len= 313 r=$04 v=$5F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000013A0A08", -- len= 314 r=$0A v=$08 - X"000002150803", -- len= 533 r=$08 v=$03 - X"000000620A07", -- len= 98 r=$0A v=$07 - X"000001390471", -- len= 313 r=$04 v=$71 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000000DE0903", -- len= 222 r=$09 v=$03 - X"0000005A0A08", -- len= 90 r=$0A v=$08 - X"000000AE00F0", -- len= 174 r=$00 v=$F0 - X"000000000100", -- len= 0 r=$01 v=$00 - X"000001740807", -- len= 372 r=$08 v=$07 - X"000000550A07", -- len= 85 r=$0A v=$07 - X"0000022602C5", -- len= 550 r=$02 v=$C5 - X"000000010301", -- len= 1 r=$03 v=$01 - X"000000040907", -- len= 4 r=$09 v=$07 - X"0000004B0A06", -- len= 75 r=$0A v=$06 - X"000002160806", -- len= 534 r=$08 v=$06 - X"000000630A05", -- len= 99 r=$0A v=$05 - X"0000021C0906", -- len= 540 r=$09 v=$06 - X"0000005A0A04", -- len= 90 r=$0A v=$04 - X"000002300738", -- len= 560 r=$07 v=$38 - X"000000AA04BE", -- len= 170 r=$04 v=$BE - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001450A08", -- len= 325 r=$0A v=$08 - X"000002760A07", -- len= 630 r=$0A v=$07 - X"000000B40805", -- len= 180 r=$08 v=$05 - X"0000009C0497", -- len= 156 r=$04 v=$97 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"0000016D0A08", -- len= 365 r=$0A v=$08 - X"000000A20905", -- len= 162 r=$09 v=$05 - X"000001D40A07", -- len= 468 r=$0A v=$07 - X"00000137047F", -- len= 311 r=$04 v=$7F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000013B0A08", -- len= 315 r=$0A v=$08 - X"000002770A07", -- len= 631 r=$0A v=$07 - X"000000990804", -- len= 153 r=$08 v=$04 - X"0000009D045F", -- len= 157 r=$04 v=$5F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000013B0A08", -- len= 315 r=$0A v=$08 - X"000000A30904", -- len= 163 r=$09 v=$04 - X"000001D50A07", -- len= 469 r=$0A v=$07 - X"000001390471", -- len= 313 r=$04 v=$71 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"000001370A08", -- len= 311 r=$0A v=$08 - X"000002780A07", -- len= 632 r=$0A v=$07 - X"0000009A0803", -- len= 154 r=$08 v=$03 - X"000001DC0A06", -- len= 476 r=$0A v=$06 - X"000000A20903", -- len= 162 r=$09 v=$03 - X"000001D60A05", -- len= 470 r=$0A v=$05 - X"000000A2000D", -- len= 162 r=$00 v=$0D - X"000000010101", -- len= 1 r=$01 v=$01 - X"000000030807", -- len= 3 r=$08 v=$07 - X"000001440738", -- len= 324 r=$07 v=$38 - X"000000BC04BE", -- len= 188 r=$04 v=$BE - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000000C2021B", -- len= 194 r=$02 v=$1B - X"000000010302", -- len= 1 r=$03 v=$02 - X"000000030907", -- len= 3 r=$09 v=$07 - X"000000B10A08", -- len= 177 r=$0A v=$08 - X"000001E10806", -- len= 481 r=$08 v=$06 - X"000000970A07", -- len= 151 r=$0A v=$07 - X"000001500497", -- len= 336 r=$04 v=$97 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000000E00906", -- len= 224 r=$09 v=$06 - X"0000008C0A08", -- len= 140 r=$0A v=$08 - X"000002780A07", -- len= 632 r=$0A v=$07 - X"00000136047F", -- len= 310 r=$04 v=$7F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000013C0A08", -- len= 316 r=$0A v=$08 - X"000001E20805", -- len= 482 r=$08 v=$05 - X"000000940A07", -- len= 148 r=$0A v=$07 - X"00000136045F", -- len= 310 r=$04 v=$5F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000000B00905", -- len= 176 r=$09 v=$05 - X"0000008C0A08", -- len= 140 r=$0A v=$08 - X"000002760A07", -- len= 630 r=$0A v=$07 - X"0000013B0471", -- len= 315 r=$04 v=$71 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001380A08", -- len= 312 r=$0A v=$08 - X"000001E10804", -- len= 481 r=$08 v=$04 - X"000000940A07", -- len= 148 r=$0A v=$07 - X"000001EC0904", -- len= 492 r=$09 v=$04 - X"0000008C0A06", -- len= 140 r=$0A v=$06 - X"000002760A05", -- len= 630 r=$0A v=$05 - X"000002780A04", -- len= 632 r=$0A v=$04 - X"000001E10803", -- len= 481 r=$08 v=$03 - X"000000240738", -- len= 36 r=$07 v=$38 - X"000000A104BE", -- len= 161 r=$04 v=$BE - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001460A08", -- len= 326 r=$0A v=$08 - X"000000A20903", -- len= 162 r=$09 v=$03 - X"000001D40A07", -- len= 468 r=$0A v=$07 - X"000001390497", -- len= 313 r=$04 v=$97 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001390A08", -- len= 313 r=$0A v=$08 - X"000000AB02C5", -- len= 171 r=$02 v=$C5 - X"000000010301", -- len= 1 r=$03 v=$01 - X"000000030907", -- len= 3 r=$09 v=$07 - X"000001C80A07", -- len= 456 r=$0A v=$07 - X"0000009A0802", -- len= 154 r=$08 v=$02 - X"0000009C047F", -- len= 156 r=$04 v=$7F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"0000013B0A08", -- len= 315 r=$0A v=$08 - X"000000A30906", -- len= 163 r=$09 v=$06 - X"000001D30A07", -- len= 467 r=$0A v=$07 - X"00000139045F", -- len= 313 r=$04 v=$5F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001390A08", -- len= 313 r=$0A v=$08 - X"000002780A07", -- len= 632 r=$0A v=$07 - X"0000009A0801", -- len= 154 r=$08 v=$01 - X"0000009F0471", -- len= 159 r=$04 v=$71 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001380A08", -- len= 312 r=$0A v=$08 - X"000000A20905", -- len= 162 r=$09 v=$05 - X"000001D60A07", -- len= 470 r=$0A v=$07 - X"000002750A06", -- len= 629 r=$0A v=$06 - X"000002790A05", -- len= 633 r=$0A v=$05 - X"0000009A0800", -- len= 154 r=$08 v=$00 - X"000001DC0A04", -- len= 476 r=$0A v=$04 - X"000000A20904", -- len= 162 r=$09 v=$04 - X"000001D30A03", -- len= 467 r=$0A v=$03 - X"000002780A02", -- len= 632 r=$0A v=$02 - X"000002760A01", -- len= 630 r=$0A v=$01 - X"000002770A00", -- len= 631 r=$0A v=$00 - X"000000A20903", -- len= 162 r=$09 v=$03 - X"000000A90800", -- len= 169 r=$08 v=$00 - X"0000044E0227", -- len= 1102 r=$02 v=$27 - X"000000010303", -- len= 1 r=$03 v=$03 - X"000000030907", -- len= 3 r=$09 v=$07 - X"000004E10906", -- len= 1249 r=$09 v=$06 - X"000007DB0A00", -- len= 2011 r=$0A v=$00 - X"00000060073C", -- len= 96 r=$07 v=$3C - X"000000000A00", -- len= 0 r=$0A v=$00 - X"00000000073C", -- len= 0 r=$07 v=$3C - X"000000000A00", -- len= 0 r=$0A v=$00 - X"000001A00905", -- len= 416 r=$09 v=$05 - X"000003D90738", -- len= 985 r=$07 v=$38 - X"000000A304BE", -- len= 163 r=$04 v=$BE - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001460A08", -- len= 326 r=$0A v=$08 - X"000002770A07", -- len= 631 r=$0A v=$07 - X"000001360497", -- len= 310 r=$04 v=$97 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"000000DF0904", -- len= 223 r=$09 v=$04 - X"0000005A0A08", -- len= 90 r=$0A v=$08 - X"000002780A07", -- len= 632 r=$0A v=$07 - X"00000136047F", -- len= 310 r=$04 v=$7F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000013C0A08", -- len= 316 r=$0A v=$08 - X"000002770A07", -- len= 631 r=$0A v=$07 - X"00000136045F", -- len= 310 r=$04 v=$5F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"000000DF0903", -- len= 223 r=$09 v=$03 - X"0000005A0A08", -- len= 90 r=$0A v=$08 - X"000002780A07", -- len= 632 r=$0A v=$07 - X"000001390471", -- len= 313 r=$04 v=$71 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000000E702C5", -- len= 231 r=$02 v=$C5 - X"000000010301", -- len= 1 r=$03 v=$01 - X"000000030907", -- len= 3 r=$09 v=$07 - X"0000004E0A08", -- len= 78 r=$0A v=$08 - X"000002760A07", -- len= 630 r=$0A v=$07 - X"0000021C0906", -- len= 540 r=$09 v=$06 - X"0000005A0A06", -- len= 90 r=$0A v=$06 - X"000002780A05", -- len= 632 r=$0A v=$05 - X"000002760A04", -- len= 630 r=$0A v=$04 - X"000002770A03", -- len= 631 r=$0A v=$03 - X"000000000738", -- len= 0 r=$07 v=$38 - X"000000AF04BE", -- len= 175 r=$04 v=$BE - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001450A08", -- len= 325 r=$0A v=$08 - X"000000710905", -- len= 113 r=$09 v=$05 - X"000002050A07", -- len= 517 r=$0A v=$07 - X"000001360497", -- len= 310 r=$04 v=$97 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"0000013B0A08", -- len= 315 r=$0A v=$08 - X"000002760A07", -- len= 630 r=$0A v=$07 - X"00000138047F", -- len= 312 r=$04 v=$7F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000013C0A08", -- len= 316 r=$0A v=$08 - X"000000700904", -- len= 112 r=$09 v=$04 - X"000002050A07", -- len= 517 r=$0A v=$07 - X"00000137045F", -- len= 311 r=$04 v=$5F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000013C0A08", -- len= 316 r=$0A v=$08 - X"000002760A07", -- len= 630 r=$0A v=$07 - X"000001390471", -- len= 313 r=$04 v=$71 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"000001390A08", -- len= 313 r=$0A v=$08 - X"0000006E0903", -- len= 110 r=$09 v=$03 - X"000002080A07", -- len= 520 r=$0A v=$07 - X"0000007000E3", -- len= 112 r=$00 v=$E3 - X"000000020100", -- len= 2 r=$01 v=$00 - X"000000030807", -- len= 3 r=$08 v=$07 - X"000002350A06", -- len= 565 r=$0A v=$06 - X"00000079021B", -- len= 121 r=$02 v=$1B - X"000000010302", -- len= 1 r=$03 v=$02 - X"000000030907", -- len= 3 r=$09 v=$07 - X"000001F90A05", -- len= 505 r=$0A v=$05 - X"000000680806", -- len= 104 r=$08 v=$06 - X"0000020E0A04", -- len= 526 r=$0A v=$04 - X"000000700906", -- len= 112 r=$09 v=$06 - X"000002080A03", -- len= 520 r=$0A v=$03 - X"000002770A02", -- len= 631 r=$0A v=$02 - X"000002770A01", -- len= 631 r=$0A v=$01 - X"000000660805", -- len= 102 r=$08 v=$05 - X"000002100A00", -- len= 528 r=$0A v=$00 - X"000000700905", -- len= 112 r=$09 v=$05 - X"0000075C0804", -- len= 1884 r=$08 v=$04 - X"000002800904", -- len= 640 r=$09 v=$04 - X"0000075A0803", -- len= 1882 r=$08 v=$03 - X"000000700A00", -- len= 112 r=$0A v=$00 - X"000000A3073C", -- len= 163 r=$07 v=$3C - X"000000000A00", -- len= 0 r=$0A v=$00 - X"00000000073C", -- len= 0 r=$07 v=$3C - X"000000000A00", -- len= 0 r=$0A v=$00 - X"0000016D0903", -- len= 365 r=$09 v=$03 - X"000000C700E3", -- len= 199 r=$00 v=$E3 - X"000000000100", -- len= 0 r=$01 v=$00 - X"000001B50807", -- len= 437 r=$08 v=$07 - X"0000027C02C5", -- len= 636 r=$02 v=$C5 - X"000000010301", -- len= 1 r=$03 v=$01 - X"000000030907", -- len= 3 r=$09 v=$07 - X"000002600806", -- len= 608 r=$08 v=$06 - X"0000027E0906", -- len= 638 r=$09 v=$06 - X"0000075E0805", -- len= 1886 r=$08 v=$05 - X"0000027F0905", -- len= 639 r=$09 v=$05 - X"0000075B0804", -- len= 1883 r=$08 v=$04 - X"0000027F0904", -- len= 639 r=$09 v=$04 - X"0000075D0803", -- len= 1885 r=$08 v=$03 - X"0000027F0903", -- len= 639 r=$09 v=$03 - X"0000027700F0", -- len= 631 r=$00 v=$F0 - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000050807", -- len= 5 r=$08 v=$07 - X"0000027B0227", -- len= 635 r=$02 v=$27 - X"000000010303", -- len= 1 r=$03 v=$03 - X"000000030907", -- len= 3 r=$09 v=$07 - X"000002600806", -- len= 608 r=$08 v=$06 - X"0000027F0906", -- len= 639 r=$09 v=$06 - X"000005C30738", -- len= 1475 r=$07 v=$38 - X"0000006704BE", -- len= 103 r=$04 v=$BE - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001450A08", -- len= 325 r=$0A v=$08 - X"000000340805", -- len= 52 r=$08 v=$05 - X"000002420A07", -- len= 578 r=$0A v=$07 - X"0000003E0905", -- len= 62 r=$09 v=$05 - X"000001120497", -- len= 274 r=$04 v=$97 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000016E0A08", -- len= 366 r=$0A v=$08 - X"000002760A07", -- len= 630 r=$0A v=$07 - X"00000138047F", -- len= 312 r=$04 v=$7F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"000001390A08", -- len= 313 r=$0A v=$08 - X"0000001C0804", -- len= 28 r=$08 v=$04 - X"0000025C0A07", -- len= 604 r=$0A v=$07 - X"000000230904", -- len= 35 r=$09 v=$04 - X"00000114045F", -- len= 276 r=$04 v=$5F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000013A0A08", -- len= 314 r=$0A v=$08 - X"000002770A07", -- len= 631 r=$0A v=$07 - X"000001390471", -- len= 313 r=$04 v=$71 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000013A0A08", -- len= 314 r=$0A v=$08 - X"0000001A0803", -- len= 26 r=$08 v=$03 - X"0000025C0A07", -- len= 604 r=$0A v=$07 - X"000000250903", -- len= 37 r=$09 v=$03 - X"000002510A06", -- len= 593 r=$0A v=$06 - X"0000000000F0", -- len= 0 r=$00 v=$F0 - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000290807", -- len= 41 r=$08 v=$07 - X"0000024D0A05", -- len= 589 r=$0A v=$05 - X"0000002E02C5", -- len= 46 r=$02 v=$C5 - X"000000010301", -- len= 1 r=$03 v=$01 - X"000000040907", -- len= 4 r=$09 v=$07 - X"000002450A04", -- len= 581 r=$0A v=$04 - X"0000001C0806", -- len= 28 r=$08 v=$06 - X"0000025C0A03", -- len= 604 r=$0A v=$03 - X"000000230906", -- len= 35 r=$09 v=$06 - X"000002520A02", -- len= 594 r=$0A v=$02 - X"000002760A01", -- len= 630 r=$0A v=$01 - X"000002790A00", -- len= 633 r=$0A v=$00 - X"0000001C0805", -- len= 28 r=$08 v=$05 - X"0000027D0905", -- len= 637 r=$09 v=$05 - X"0000075C0804", -- len= 1884 r=$08 v=$04 - X"000002800904", -- len= 640 r=$09 v=$04 - X"000005900A00", -- len= 1424 r=$0A v=$00 - X"000000B2073C", -- len= 178 r=$07 v=$3C - X"000000000A00", -- len= 0 r=$0A v=$00 - X"00000000073C", -- len= 0 r=$07 v=$3C - X"000000000A00", -- len= 0 r=$0A v=$00 - X"0000011A0803", -- len= 282 r=$08 v=$03 - X"0000027F0903", -- len= 639 r=$09 v=$03 - X"00000277000D", -- len= 631 r=$00 v=$0D - X"000000010101", -- len= 1 r=$01 v=$01 - X"000000030807", -- len= 3 r=$08 v=$07 - X"0000027C021B", -- len= 636 r=$02 v=$1B - X"000000010302", -- len= 1 r=$03 v=$02 - X"000000030907", -- len= 3 r=$09 v=$07 - X"000002620806", -- len= 610 r=$08 v=$06 - X"0000027F0906", -- len= 639 r=$09 v=$06 - X"0000075B0805", -- len= 1883 r=$08 v=$05 - X"0000027F0905", -- len= 639 r=$09 v=$05 - X"0000075E0804", -- len= 1886 r=$08 v=$04 - X"0000027E0904", -- len= 638 r=$09 v=$04 - X"0000075C0803", -- len= 1884 r=$08 v=$03 - X"0000027E0903", -- len= 638 r=$09 v=$03 - X"000001C4000D", -- len= 452 r=$00 v=$0D - X"000000000101", -- len= 0 r=$01 v=$01 - X"000000B80807", -- len= 184 r=$08 v=$07 - X"0000027B02C5", -- len= 635 r=$02 v=$C5 - X"000000010301", -- len= 1 r=$03 v=$01 - X"000000030907", -- len= 3 r=$09 v=$07 - X"000002620806", -- len= 610 r=$08 v=$06 - X"000002800906", -- len= 640 r=$09 v=$06 - X"0000075B0805", -- len= 1883 r=$08 v=$05 - X"0000027F0905", -- len= 639 r=$09 v=$05 - X"0000075D0804", -- len= 1885 r=$08 v=$04 - X"0000027F0904", -- len= 639 r=$09 v=$04 - X"0000075B0803", -- len= 1883 r=$08 v=$03 - X"0000027F0903", -- len= 639 r=$09 v=$03 - X"0000027900B4", -- len= 633 r=$00 v=$B4 - X"000000010100", -- len= 1 r=$01 v=$00 - X"000000030807", -- len= 3 r=$08 v=$07 - X"0000027A0227", -- len= 634 r=$02 v=$27 - X"000000010303", -- len= 1 r=$03 v=$03 - X"000000040907", -- len= 4 r=$09 v=$07 - X"000002610806", -- len= 609 r=$08 v=$06 - X"0000027F0906", -- len= 639 r=$09 v=$06 - X"0000075B0805", -- len= 1883 r=$08 v=$05 - X"000002810905", -- len= 641 r=$09 v=$05 - X"000005530738", -- len= 1363 r=$07 v=$38 - X"000000A304BE", -- len= 163 r=$04 v=$BE - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001450A08", -- len= 325 r=$0A v=$08 - X"0000009A0804", -- len= 154 r=$08 v=$04 - X"000001DC0A07", -- len= 476 r=$0A v=$07 - X"000000A20904", -- len= 162 r=$09 v=$04 - X"000000940497", -- len= 148 r=$04 v=$97 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"0000013B0A08", -- len= 315 r=$0A v=$08 - X"000002760A07", -- len= 630 r=$0A v=$07 - X"00000137047F", -- len= 311 r=$04 v=$7F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000013C0A08", -- len= 316 r=$0A v=$08 - X"000000990803", -- len= 153 r=$08 v=$03 - X"000001DC0A07", -- len= 476 r=$0A v=$07 - X"000000A30903", -- len= 163 r=$09 v=$03 - X"00000096045F", -- len= 150 r=$04 v=$5F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000013A0A08", -- len= 314 r=$0A v=$08 - X"0000002D00B4", -- len= 45 r=$00 v=$B4 - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000007A0807", -- len= 122 r=$08 v=$07 - X"000001D00A07", -- len= 464 r=$0A v=$07 - X"000000AB02C5", -- len= 171 r=$02 v=$C5 - X"000000010301", -- len= 1 r=$03 v=$01 - X"000000030907", -- len= 3 r=$09 v=$07 - X"0000008A0471", -- len= 138 r=$04 v=$71 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"000001370A08", -- len= 311 r=$0A v=$08 - X"0000009A0806", -- len= 154 r=$08 v=$06 - X"000001DE0A07", -- len= 478 r=$0A v=$07 - X"000000A20906", -- len= 162 r=$09 v=$06 - X"000001D40A06", -- len= 468 r=$0A v=$06 - X"000002780A05", -- len= 632 r=$0A v=$05 - X"000002750A04", -- len= 629 r=$0A v=$04 - X"0000009A0805", -- len= 154 r=$08 v=$05 - X"000001DD0A03", -- len= 477 r=$0A v=$03 - X"000000A20905", -- len= 162 r=$09 v=$05 - X"000001D60A02", -- len= 470 r=$0A v=$02 - X"000002750A01", -- len= 629 r=$0A v=$01 - X"000002780A00", -- len= 632 r=$0A v=$00 - X"0000009A0804", -- len= 154 r=$08 v=$04 - X"000002800904", -- len= 640 r=$09 v=$04 - X"0000075C0803", -- len= 1884 r=$08 v=$03 - X"0000027D0903", -- len= 637 r=$09 v=$03 - X"0000027700CA", -- len= 631 r=$00 v=$CA - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000050807", -- len= 5 r=$08 v=$07 - X"0000027C021B", -- len= 636 r=$02 v=$1B - X"000000010302", -- len= 1 r=$03 v=$02 - X"000000030907", -- len= 3 r=$09 v=$07 - X"0000003D0A00", -- len= 61 r=$0A v=$00 - X"0000008B073C", -- len= 139 r=$07 v=$3C - X"000000000A00", -- len= 0 r=$0A v=$00 - X"00000000073C", -- len= 0 r=$07 v=$3C - X"000000000A00", -- len= 0 r=$0A v=$00 - X"000001990806", -- len= 409 r=$08 v=$06 - X"0000027F0906", -- len= 639 r=$09 v=$06 - X"0000075D0805", -- len= 1885 r=$08 v=$05 - X"0000027F0905", -- len= 639 r=$09 v=$05 - X"0000075B0804", -- len= 1883 r=$08 v=$04 - X"0000027F0904", -- len= 639 r=$09 v=$04 - X"0000075D0803", -- len= 1885 r=$08 v=$03 - X"000002800903", -- len= 640 r=$09 v=$03 - X"0000027600E3", -- len= 630 r=$00 v=$E3 - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000040807", -- len= 4 r=$08 v=$07 - X"0000027C02C5", -- len= 636 r=$02 v=$C5 - X"000000010301", -- len= 1 r=$03 v=$01 - X"000000030907", -- len= 3 r=$09 v=$07 - X"000002610806", -- len= 609 r=$08 v=$06 - X"0000027E0906", -- len= 638 r=$09 v=$06 - X"0000075D0805", -- len= 1885 r=$08 v=$05 - X"0000027F0905", -- len= 639 r=$09 v=$05 - X"0000075B0804", -- len= 1883 r=$08 v=$04 - X"000002800904", -- len= 640 r=$09 v=$04 - X"0000075D0803", -- len= 1885 r=$08 v=$03 - X"000000290738", -- len= 41 r=$07 v=$38 - X"0000006904BE", -- len= 105 r=$04 v=$BE - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001450A08", -- len= 325 r=$0A v=$08 - X"000000EE0903", -- len= 238 r=$09 v=$03 - X"0000018A0A07", -- len= 394 r=$0A v=$07 - X"000000EE00F0", -- len= 238 r=$00 v=$F0 - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000040807", -- len= 4 r=$08 v=$07 - X"0000008F0497", -- len= 143 r=$04 v=$97 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000016F0A08", -- len= 367 r=$0A v=$08 - X"000000F60227", -- len= 246 r=$02 v=$27 - X"000000010303", -- len= 1 r=$03 v=$03 - X"000000040907", -- len= 4 r=$09 v=$07 - X"000001AE0A07", -- len= 430 r=$0A v=$07 - X"000000E60806", -- len= 230 r=$08 v=$06 - X"0000006B047F", -- len= 107 r=$04 v=$7F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000016B0A08", -- len= 363 r=$0A v=$08 - X"000000EE0906", -- len= 238 r=$09 v=$06 - X"0000018A0A07", -- len= 394 r=$0A v=$07 - X"00000137045F", -- len= 311 r=$04 v=$5F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000013A0A08", -- len= 314 r=$0A v=$08 - X"000002780A07", -- len= 632 r=$0A v=$07 - X"000000E50805", -- len= 229 r=$08 v=$05 - X"000000530471", -- len= 83 r=$04 v=$71 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"000001390A08", -- len= 313 r=$0A v=$08 - X"000000ED0905", -- len= 237 r=$09 v=$05 - X"000001890A07", -- len= 393 r=$0A v=$07 - X"000002760A06", -- len= 630 r=$0A v=$06 - X"000000DD0738", -- len= 221 r=$07 v=$38 - X"000000D004BE", -- len= 208 r=$04 v=$BE - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"000001430A08", -- len= 323 r=$0A v=$08 - X"000000E70804", -- len= 231 r=$08 v=$04 - X"000001910A07", -- len= 401 r=$0A v=$07 - X"000000EE0904", -- len= 238 r=$09 v=$04 - X"000000480497", -- len= 72 r=$04 v=$97 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"0000013B0A08", -- len= 315 r=$0A v=$08 - X"000002750A07", -- len= 629 r=$0A v=$07 - X"00000137047F", -- len= 311 r=$04 v=$7F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000013C0A08", -- len= 316 r=$0A v=$08 - X"000000E50803", -- len= 229 r=$08 v=$03 - X"000001910A07", -- len= 401 r=$0A v=$07 - X"000000EE0903", -- len= 238 r=$09 v=$03 - X"00000048045F", -- len= 72 r=$04 v=$5F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"0000013B0A08", -- len= 315 r=$0A v=$08 - X"000000EE000D", -- len= 238 r=$00 v=$0D - X"000000010101", -- len= 1 r=$01 v=$01 - X"000000030807", -- len= 3 r=$08 v=$07 - X"000001B70A07", -- len= 439 r=$0A v=$07 - X"000000F702C5", -- len= 247 r=$02 v=$C5 - X"000000010301", -- len= 1 r=$03 v=$01 - X"000000040907", -- len= 4 r=$09 v=$07 - X"000000580471", -- len= 88 r=$04 v=$71 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000016A0A08", -- len= 362 r=$0A v=$08 - X"000000E50806", -- len= 229 r=$08 v=$06 - X"000001910A07", -- len= 401 r=$0A v=$07 - X"000000EF0906", -- len= 239 r=$09 v=$06 - X"000001890A06", -- len= 393 r=$0A v=$06 - X"000002760A05", -- len= 630 r=$0A v=$05 - X"000002780A04", -- len= 632 r=$0A v=$04 - X"000000E50805", -- len= 229 r=$08 v=$05 - X"000001900A03", -- len= 400 r=$0A v=$03 - X"000000EE0905", -- len= 238 r=$09 v=$05 - X"0000018B0A02", -- len= 395 r=$0A v=$02 - X"000002760A01", -- len= 630 r=$0A v=$01 - X"000002750A00", -- len= 629 r=$0A v=$00 - X"000000E80804", -- len= 232 r=$08 v=$04 - X"0000027D0904", -- len= 637 r=$09 v=$04 - X"0000075C0803", -- len= 1884 r=$08 v=$03 - X"000002800903", -- len= 640 r=$09 v=$03 - X"00000278002E", -- len= 632 r=$00 v=$2E - X"000000000101", -- len= 0 r=$01 v=$01 - X"000000040807", -- len= 4 r=$08 v=$07 - X"000002AD02E0", -- len= 685 r=$02 v=$E0 - X"000000000301", -- len= 0 r=$03 v=$01 - X"000000050907", -- len= 5 r=$09 v=$07 - X"000000000A00", -- len= 0 r=$0A v=$00 - X"0000007C073C", -- len= 124 r=$07 v=$3C - X"000000000A00", -- len= 0 r=$0A v=$00 - X"00000000073C", -- len= 0 r=$07 v=$3C - X"000000000A00", -- len= 0 r=$0A v=$00 - X"000001E60806", -- len= 486 r=$08 v=$06 - X"0000027E0906", -- len= 638 r=$09 v=$06 - X"0000075B0805", -- len= 1883 r=$08 v=$05 - X"0000027F0905", -- len= 639 r=$09 v=$05 - X"0000075D0804", -- len= 1885 r=$08 v=$04 - X"000002800904", -- len= 640 r=$09 v=$04 - X"0000075B0803", -- len= 1883 r=$08 v=$03 - X"0000027F0903", -- len= 639 r=$09 v=$03 - X"0000075D0802", -- len= 1885 r=$08 v=$02 - X"0000027F0902", -- len= 639 r=$09 v=$02 - X"0000075B0801", -- len= 1883 r=$08 v=$01 - X"0000027F0901", -- len= 639 r=$09 v=$01 - X"0000075D0800", -- len= 1885 r=$08 v=$00 - X"0000027F0900", -- len= 639 r=$09 v=$00 - X"00000BFB0800", -- len= 3067 r=$08 v=$00 - X"000000000900", -- len= 0 r=$09 v=$00 - X"00000B940738", -- len= 2964 r=$07 v=$38 - X"000000A304BE", -- len= 163 r=$04 v=$BE - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"000001430A08", -- len= 323 r=$0A v=$08 - X"000002770A07", -- len= 631 r=$0A v=$07 - X"000001390497", -- len= 313 r=$04 v=$97 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000050A09", -- len= 5 r=$0A v=$09 - X"0000013A0A08", -- len= 314 r=$0A v=$08 - X"000002760A07", -- len= 630 r=$0A v=$07 - X"00000136047F", -- len= 310 r=$04 v=$7F - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000060A09", -- len= 6 r=$0A v=$09 - X"000000B4073F", -- len= 180 r=$07 v=$3F - X"00000009073C", -- len= 9 r=$07 v=$3C - X"000000030A00", -- len= 3 r=$0A v=$00 - X"00000014073D", -- len= 20 r=$07 v=$3D - X"000000000800", -- len= 0 r=$08 v=$00 - X"00000013073F", -- len= 19 r=$07 v=$3F - X"000000000900", -- len= 0 r=$09 v=$00 - X"000002B0080D", -- len= 688 r=$08 v=$0D - X"000000030050", -- len= 3 r=$00 v=$50 - X"000000010100", -- len= 1 r=$01 v=$00 - X"00000004073E", -- len= 4 r=$07 v=$3E - X"00000031005A", -- len= 49 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000004A0050", -- len= 74 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"00000033005A", -- len= 51 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000004D0050", -- len= 77 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"00000031005A", -- len= 49 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000004C0050", -- len= 76 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"00000031005A", -- len= 49 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000004D0050", -- len= 77 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"00000033005A", -- len= 51 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000060800", -- len= 6 r=$08 v=$00 - X"000000CD073C", -- len= 205 r=$07 v=$3C - X"000000A50287", -- len= 165 r=$02 v=$87 - X"000000010300", -- len= 1 r=$03 v=$00 - X"000000030906", -- len= 3 r=$09 v=$06 - X"000002190738", -- len= 537 r=$07 v=$38 - X"0000005804A0", -- len= 88 r=$04 v=$A0 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000040A06", -- len= 4 r=$0A v=$06 - X"000001CE0905", -- len= 462 r=$09 v=$05 - X"000002320A05", -- len= 562 r=$0A v=$05 - X"000001B3080D", -- len= 435 r=$08 v=$0D - X"000000370050", -- len= 55 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000004A005A", -- len= 74 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000330050", -- len= 51 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000004C005A", -- len= 76 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000330050", -- len= 51 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000004C005A", -- len= 76 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000330050", -- len= 51 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000004B005A", -- len= 75 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000330050", -- len= 51 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000060800", -- len= 6 r=$08 v=$00 - X"000001C70904", -- len= 455 r=$09 v=$04 - X"000002320A04", -- len= 562 r=$0A v=$04 - X"00000266080D", -- len= 614 r=$08 v=$0D - X"000000000050", -- len= 0 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000000738", -- len= 0 r=$07 v=$38 - X"0000000E0800", -- len= 14 r=$08 v=$00 - X"00000040005A", -- len= 64 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000330050", -- len= 51 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000004C005A", -- len= 76 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000330050", -- len= 51 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000004A005A", -- len= 74 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000320050", -- len= 50 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000004C005A", -- len= 76 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000330050", -- len= 51 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000004C005A", -- len= 76 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000000800", -- len= 0 r=$08 v=$00 - X"000001030903", -- len= 259 r=$09 v=$03 - X"000002320A03", -- len= 562 r=$0A v=$03 - X"000005A7080D", -- len= 1447 r=$08 v=$0D - X"0000000F0902", -- len= 15 r=$09 v=$02 - X"000000260050", -- len= 38 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000004C005A", -- len= 76 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000320050", -- len= 50 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000004C005A", -- len= 76 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000330050", -- len= 51 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000004C005A", -- len= 76 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000320050", -- len= 50 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"0000004A005A", -- len= 74 r=$00 v=$5A - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000330050", -- len= 51 r=$00 v=$50 - X"000000000100", -- len= 0 r=$01 v=$00 - X"000000060800", -- len= 6 r=$08 v=$00 - X"000000170A02", -- len= 23 r=$0A v=$02 - X"000001B50900", -- len= 437 r=$09 v=$00 - X"000002350A00", -- len= 565 r=$0A v=$00 - X"000001B80901", -- len= 440 r=$09 v=$01 - X"0000002F0800", -- len= 47 r=$08 v=$00 - X"0000007B0739", -- len= 123 r=$07 v=$39 - X"000000000800", -- len= 0 r=$08 v=$00 - X"000000000739", -- len= 0 r=$07 v=$39 - X"000000000800", -- len= 0 r=$08 v=$00 - X"000001840A01", -- len= 388 r=$0A v=$01 - X"000005AF0900", -- len= 1455 r=$09 v=$00 - X"000002340A00", -- len= 564 r=$0A v=$00 - X"000001C60278", -- len= 454 r=$02 v=$78 - X"000000000300", -- len= 0 r=$03 v=$00 - X"000000040906", -- len= 4 r=$09 v=$06 - X"0000023004AA", -- len= 560 r=$04 v=$AA - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000040A06", -- len= 4 r=$0A v=$06 - X"000001B10905", -- len= 433 r=$09 v=$05 - X"000002340A05", -- len= 564 r=$0A v=$05 - X"000005AE0904", -- len= 1454 r=$09 v=$04 - X"000002340A04", -- len= 564 r=$0A v=$04 - X"000001C80287", -- len= 456 r=$02 v=$87 - X"000000000300", -- len= 0 r=$03 v=$00 - X"000000040906", -- len= 4 r=$09 v=$06 - X"0000022F04A0", -- len= 559 r=$04 v=$A0 - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000040A06", -- len= 4 r=$0A v=$06 - X"000001B10905", -- len= 433 r=$09 v=$05 - X"000002310A05", -- len= 561 r=$0A v=$05 - X"000005B10904", -- len= 1457 r=$09 v=$04 - X"000002330A04", -- len= 563 r=$0A v=$04 - X"000005AF0903", -- len= 1455 r=$09 v=$03 - X"000002340A03", -- len= 564 r=$0A v=$03 - X"000005AF0902", -- len= 1455 r=$09 v=$02 - X"000002330A02", -- len= 563 r=$0A v=$02 - X"000005AF0901", -- len= 1455 r=$09 v=$01 - X"000002340A01", -- len= 564 r=$0A v=$01 - X"000005AE0900", -- len= 1454 r=$09 v=$00 - X"000002340A00", -- len= 564 r=$0A v=$00 - X"0000118C02C5", -- len= 4492 r=$02 v=$C5 - X"000000010301", -- len= 1 r=$03 v=$01 - X"000000030906", -- len= 3 r=$09 v=$06 - X"0000022F04CA", -- len= 559 r=$04 v=$CA - X"000000000500", -- len= 0 r=$05 v=$00 - X"000000040A06", -- len= 4 r=$0A v=$06 - X"000001B10905", -- len= 433 r=$09 v=$05 - X"000002340A05", -- len= 564 r=$0A v=$05 - X"000005AE0904", -- len= 1454 r=$09 v=$04 - X"000002340A04", -- len= 564 r=$0A v=$04 - X"000005AE0903", -- len= 1454 r=$09 v=$03 - X"000002340A03", -- len= 564 r=$0A v=$03 - X"000005AF0902", -- len= 1455 r=$09 v=$02 - X"000002330A02" -- len= 563 r=$0A v=$02 -); -signal raddr : std_logic_vector(10 downto 0); -begin - process (clk) - begin - if (clk'event and clk = '1') then - if (en = '1') then - raddr <= addr; - end if; - end if; - end process; - data <= ROM(conv_integer(raddr)); -end syn; diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/cpu68.vhd b/Soundboards_MiST/AS-2518-51_snd-master/rtl/cpu68.vhd deleted file mode 100644 index 03bdfc63..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/cpu68.vhd +++ /dev/null @@ -1,3962 +0,0 @@ ---===========================================================================-- --- --- S Y N T H E Z I A B L E CPU68 C O R E --- --- www.OpenCores.Org - December 2002 --- This core adheres to the GNU public license --- --- File name : cpu68.vhd --- --- Purpose : Implements a 6800 compatible CPU core with some --- additional instructions found in the 6801 --- --- Dependencies : ieee.Std_Logic_1164 --- ieee.std_logic_unsigned --- --- Author : John E. Kent --- ---===========================================================================---- --- --- Revision History: --- --- Date: Revision Author --- 22 Sep 2002 0.1 John Kent --- --- 30 Oct 2002 0.2 John Kent --- made NMI edge triggered --- --- 30 Oct 2002 0.3 John Kent --- more corrections to NMI --- added wai_wait_state to prevent stack overflow on wai. --- --- 1 Nov 2002 0.4 John Kent --- removed WAI states and integrated WAI with the interrupt service routine --- replace Data out (do) and Data in (di) register with a single Memory Data (md) reg. --- Added Multiply instruction states. --- run ALU and CC out of CPU module for timing measurements. --- --- 3 Nov 2002 0.5 John Kent --- Memory Data Register was not loaded on Store instructions --- SEV and CLV were not defined in the ALU --- Overflow Flag on NEG was incorrect --- --- 16th Feb 2003 0.6 John Kent --- Rearranged the execution cycle for dual operand instructions --- so that occurs during the following fetch cycle. --- This allows the reduction of one clock cycle from dual operand --- instruction. Note that this also necessitated re-arranging the --- program counter so that it is no longer incremented in the ALU. --- The effective address has also been re-arranged to include a --- separate added. The STD (store accd) now sets the condition codes. --- --- 28th Jun 2003 0.7 John Kent --- Added Hold and Halt signals. Hold is used to steal cycles from the --- CPU or add wait states. Halt puts the CPU in the inactive state --- and is only honoured in the fetch cycle. Both signals are active high. --- --- 9th Jan 2004 0.8 John Kent --- Clear instruction did an alu_ld8 rather than an alu_clr, so --- the carry bit was not cleared correctly. --- This error was picked up by Michael Hassenfratz. --- - -library ieee; -use IEEE.STD_LOGIC_1164.ALL; -use IEEE.STD_LOGIC_ARITH.ALL; -use IEEE.STD_LOGIC_UNSIGNED.ALL; - -entity cpu68 is - port ( - clk: in std_logic; - rst: in std_logic; - rw: out std_logic; - vma: out std_logic; - address: out std_logic_vector(15 downto 0); - data_in: in std_logic_vector(7 downto 0); - data_out: out std_logic_vector(7 downto 0); - hold: in std_logic; - halt: in std_logic; - irq: in std_logic; - nmi: in std_logic; - test_alu: out std_logic_vector(15 downto 0); - test_cc: out std_logic_vector(7 downto 0) - ); -end; - -architecture CPU_ARCH of cpu68 is - - constant SBIT : integer := 7; - constant XBIT : integer := 6; - constant HBIT : integer := 5; - constant IBIT : integer := 4; - constant NBIT : integer := 3; - constant ZBIT : integer := 2; - constant VBIT : integer := 1; - constant CBIT : integer := 0; - - type state_type is (reset_state, fetch_state, decode_state, - extended_state, indexed_state, read8_state, read16_state, immediate16_state, - write8_state, write16_state, - execute_state, halt_state, error_state, - mul_state, mulea_state, muld_state, - mul0_state, mul1_state, mul2_state, mul3_state, - mul4_state, mul5_state, mul6_state, mul7_state, - jmp_state, jsr_state, jsr1_state, - branch_state, bsr_state, bsr1_state, - rts_hi_state, rts_lo_state, - int_pcl_state, int_pch_state, - int_ixl_state, int_ixh_state, - int_cc_state, int_acca_state, int_accb_state, - int_wai_state, int_mask_state, - rti_state, rti_cc_state, rti_acca_state, rti_accb_state, - rti_ixl_state, rti_ixh_state, - rti_pcl_state, rti_pch_state, - pula_state, psha_state, pulb_state, pshb_state, - pulx_lo_state, pulx_hi_state, pshx_lo_state, pshx_hi_state, - vect_lo_state, vect_hi_state ); - type addr_type is (idle_ad, fetch_ad, read_ad, write_ad, push_ad, pull_ad, int_hi_ad, int_lo_ad ); - type dout_type is (md_lo_dout, md_hi_dout, acca_dout, accb_dout, ix_lo_dout, ix_hi_dout, cc_dout, pc_lo_dout, pc_hi_dout ); - type op_type is (reset_op, fetch_op, latch_op ); - type acca_type is (reset_acca, load_acca, load_hi_acca, pull_acca, latch_acca ); - type accb_type is (reset_accb, load_accb, pull_accb, latch_accb ); - type cc_type is (reset_cc, load_cc, pull_cc, latch_cc ); - type ix_type is (reset_ix, load_ix, pull_lo_ix, pull_hi_ix, latch_ix ); - type sp_type is (reset_sp, latch_sp, load_sp ); - type pc_type is (reset_pc, latch_pc, load_ea_pc, add_ea_pc, pull_lo_pc, pull_hi_pc, inc_pc ); - type md_type is (reset_md, latch_md, load_md, fetch_first_md, fetch_next_md, shiftl_md ); - type ea_type is (reset_ea, latch_ea, add_ix_ea, load_accb_ea, inc_ea, fetch_first_ea, fetch_next_ea ); - type iv_type is (reset_iv, latch_iv, swi_iv, nmi_iv, irq_iv ); - type nmi_type is (reset_nmi, set_nmi, latch_nmi ); - type left_type is (acca_left, accb_left, accd_left, md_left, ix_left, sp_left ); - type right_type is (md_right, zero_right, plus_one_right, accb_right ); - type alu_type is (alu_add8, alu_sub8, alu_add16, alu_sub16, alu_adc, alu_sbc, - alu_and, alu_ora, alu_eor, - alu_tst, alu_inc, alu_dec, alu_clr, alu_neg, alu_com, - alu_inx, alu_dex, alu_cpx, - alu_lsr16, alu_lsl16, - alu_ror8, alu_rol8, - alu_asr8, alu_asl8, alu_lsr8, - alu_sei, alu_cli, alu_sec, alu_clc, alu_sev, alu_clv, alu_tpa, alu_tap, - alu_ld8, alu_st8, alu_ld16, alu_st16, alu_nop, alu_daa ); - - signal op_code: std_logic_vector(7 downto 0); - signal acca: std_logic_vector(7 downto 0); - signal accb: std_logic_vector(7 downto 0); - signal cc: std_logic_vector(7 downto 0); - signal cc_out: std_logic_vector(7 downto 0); - signal xreg: std_logic_vector(15 downto 0); - signal sp: std_logic_vector(15 downto 0); - signal ea: std_logic_vector(15 downto 0); - signal pc: std_logic_vector(15 downto 0); - signal md: std_logic_vector(15 downto 0); - signal left: std_logic_vector(15 downto 0); - signal right: std_logic_vector(15 downto 0); - signal out_alu: std_logic_vector(15 downto 0); - signal iv: std_logic_vector(1 downto 0); - signal nmi_req: std_logic; - signal nmi_ack: std_logic; - - signal state: state_type; - signal next_state: state_type; - signal pc_ctrl: pc_type; - signal ea_ctrl: ea_type; - signal op_ctrl: op_type; - signal md_ctrl: md_type; - signal acca_ctrl: acca_type; - signal accb_ctrl: accb_type; - signal ix_ctrl: ix_type; - signal cc_ctrl: cc_type; - signal sp_ctrl: sp_type; - signal iv_ctrl: iv_type; - signal left_ctrl: left_type; - signal right_ctrl: right_type; - signal alu_ctrl: alu_type; - signal addr_ctrl: addr_type; - signal dout_ctrl: dout_type; - signal nmi_ctrl: nmi_type; - - -begin - ----------------------------------- --- --- Address bus multiplexer --- ----------------------------------- - -addr_mux: process( clk, addr_ctrl, pc, ea, sp, iv ) -begin - case addr_ctrl is - when idle_ad => - address <= "1111111111111111"; - vma <= '0'; - rw <= '1'; - when fetch_ad => - address <= pc; - vma <= '1'; - rw <= '1'; - when read_ad => - address <= ea; - vma <= '1'; - rw <= '1'; - when write_ad => - address <= ea; - vma <= '1'; - rw <= '0'; - when push_ad => - address <= sp; - vma <= '1'; - rw <= '0'; - when pull_ad => - address <= sp; - vma <= '1'; - rw <= '1'; - when int_hi_ad => - address <= "1111111111111" & iv & "0"; - vma <= '1'; - rw <= '1'; - when int_lo_ad => - address <= "1111111111111" & iv & "1"; - vma <= '1'; - rw <= '1'; - when others => - address <= "1111111111111111"; - vma <= '0'; - rw <= '1'; - end case; -end process; - --------------------------------- --- --- Data Bus output --- --------------------------------- -dout_mux : process( clk, dout_ctrl, md, acca, accb, xreg, pc, cc ) -begin - case dout_ctrl is - when md_hi_dout => -- alu output - data_out <= md(15 downto 8); - when md_lo_dout => - data_out <= md(7 downto 0); - when acca_dout => -- accumulator a - data_out <= acca; - when accb_dout => -- accumulator b - data_out <= accb; - when ix_lo_dout => -- index reg - data_out <= xreg(7 downto 0); - when ix_hi_dout => -- index reg - data_out <= xreg(15 downto 8); - when cc_dout => -- condition codes - data_out <= cc; - when pc_lo_dout => -- low order pc - data_out <= pc(7 downto 0); - when pc_hi_dout => -- high order pc - data_out <= pc(15 downto 8); - when others => - data_out <= "00000000"; - end case; -end process; - - ----------------------------------- --- --- Program Counter Control --- ----------------------------------- - -pc_mux: process( clk, pc_ctrl, pc, out_alu, data_in, ea, hold ) -variable tempof : std_logic_vector(15 downto 0); -variable temppc : std_logic_vector(15 downto 0); -begin - case pc_ctrl is - when add_ea_pc => - if ea(7) = '0' then - tempof := "00000000" & ea(7 downto 0); - else - tempof := "11111111" & ea(7 downto 0); - end if; - when inc_pc => - tempof := "0000000000000001"; - when others => - tempof := "0000000000000000"; - end case; - - case pc_ctrl is - when reset_pc => - temppc := "1111111111111110"; - when load_ea_pc => - temppc := ea; - when pull_lo_pc => - temppc(7 downto 0) := data_in; - temppc(15 downto 8) := pc(15 downto 8); - when pull_hi_pc => - temppc(7 downto 0) := pc(7 downto 0); - temppc(15 downto 8) := data_in; - when others => - temppc := pc; - end case; - - if clk'event and clk = '0' then - if hold = '1' then - pc <= pc; - else - pc <= temppc + tempof; - end if; - end if; -end process; - ----------------------------------- --- --- Effective Address Control --- ----------------------------------- - -ea_mux: process( clk, ea_ctrl, ea, out_alu, data_in, accb, xreg, hold ) -variable tempind : std_logic_vector(15 downto 0); -variable tempea : std_logic_vector(15 downto 0); -begin - case ea_ctrl is - when add_ix_ea => - tempind := "00000000" & ea(7 downto 0); - when inc_ea => - tempind := "0000000000000001"; - when others => - tempind := "0000000000000000"; - end case; - - case ea_ctrl is - when reset_ea => - tempea := "0000000000000000"; - when load_accb_ea => - tempea := "00000000" & accb(7 downto 0); - when add_ix_ea => - tempea := xreg; - when fetch_first_ea => - tempea(7 downto 0) := data_in; - tempea(15 downto 8) := "00000000"; - when fetch_next_ea => - tempea(7 downto 0) := data_in; - tempea(15 downto 8) := ea(7 downto 0); - when others => - tempea := ea; - end case; - - if clk'event and clk = '0' then - if hold = '1' then - ea <= ea; - else - ea <= tempea + tempind; - end if; - end if; -end process; - --------------------------------- --- --- Accumulator A --- --------------------------------- -acca_mux : process( clk, acca_ctrl, out_alu, acca, data_in, hold ) -begin - if clk'event and clk = '0' then - if hold = '1' then - acca <= acca; - else - case acca_ctrl is - when reset_acca => - acca <= "00000000"; - when load_acca => - acca <= out_alu(7 downto 0); - when load_hi_acca => - acca <= out_alu(15 downto 8); - when pull_acca => - acca <= data_in; - when others => --- when latch_acca => - acca <= acca; - end case; - end if; - end if; -end process; - --------------------------------- --- --- Accumulator B --- --------------------------------- -accb_mux : process( clk, accb_ctrl, out_alu, accb, data_in, hold ) -begin - if clk'event and clk = '0' then - if hold = '1' then - accb <= accb; - else - case accb_ctrl is - when reset_accb => - accb <= "00000000"; - when load_accb => - accb <= out_alu(7 downto 0); - when pull_accb => - accb <= data_in; - when others => --- when latch_accb => - accb <= accb; - end case; - end if; - end if; -end process; - --------------------------------- --- --- X Index register --- --------------------------------- -ix_mux : process( clk, ix_ctrl, out_alu, xreg, data_in, hold ) -begin - if clk'event and clk = '0' then - if hold = '1' then - xreg <= xreg; - else - case ix_ctrl is - when reset_ix => - xreg <= "0000000000000000"; - when load_ix => - xreg <= out_alu(15 downto 0); - when pull_hi_ix => - xreg(15 downto 8) <= data_in; - when pull_lo_ix => - xreg(7 downto 0) <= data_in; - when others => --- when latch_ix => - xreg <= xreg; - end case; - end if; - end if; -end process; - --------------------------------- --- --- stack pointer --- --------------------------------- -sp_mux : process( clk, sp_ctrl, out_alu, hold ) -begin - if clk'event and clk = '0' then - if hold = '1' then - sp <= sp; - else - case sp_ctrl is - when reset_sp => - sp <= "0000000000000000"; - when load_sp => - sp <= out_alu(15 downto 0); - when others => --- when latch_sp => - sp <= sp; - end case; - end if; - end if; -end process; - --------------------------------- --- --- Memory Data --- --------------------------------- -md_mux : process( clk, md_ctrl, out_alu, data_in, md, hold ) -begin - if clk'event and clk = '0' then - if hold = '1' then - md <= md; - else - case md_ctrl is - when reset_md => - md <= "0000000000000000"; - when load_md => - md <= out_alu(15 downto 0); - when fetch_first_md => - md(15 downto 8) <= "00000000"; - md(7 downto 0) <= data_in; - when fetch_next_md => - md(15 downto 8) <= md(7 downto 0); - md(7 downto 0) <= data_in; - when shiftl_md => - md(15 downto 1) <= md(14 downto 0); - md(0) <= '0'; - when others => --- when latch_md => - md <= md; - end case; - end if; - end if; -end process; - - ----------------------------------- --- --- Condition Codes --- ----------------------------------- - -cc_mux: process( clk, cc_ctrl, cc_out, cc, data_in, hold ) -begin - if clk'event and clk = '0' then - if hold = '1' then - cc <= cc; - else - case cc_ctrl is - when reset_cc => - cc <= "11000000"; - when load_cc => - cc <= cc_out; - when pull_cc => - cc <= data_in; - when others => --- when latch_cc => - cc <= cc; - end case; - end if; - end if; -end process; - ----------------------------------- --- --- interrupt vector --- ----------------------------------- - -iv_mux: process( clk, iv_ctrl, hold ) -begin - if clk'event and clk = '0' then - if hold = '1' then - iv <= iv; - else - case iv_ctrl is - when reset_iv => - iv <= "11"; - when nmi_iv => - iv <= "10"; - when swi_iv => - iv <= "01"; - when irq_iv => - iv <= "00"; - when others => - iv <= iv; - end case; - end if; - end if; -end process; - ----------------------------------- --- --- op code fetch --- ----------------------------------- - -op_fetch: process( clk, data_in, op_ctrl, op_code, hold ) -begin - if clk'event and clk = '0' then - if hold = '1' then - op_code <= op_code; - else - case op_ctrl is - when reset_op => - op_code <= "00000001"; -- nop - when fetch_op => - op_code <= data_in; - when others => --- when latch_op => - op_code <= op_code; - end case; - end if; - end if; -end process; - ----------------------------------- --- --- Left Mux --- ----------------------------------- - -left_mux: process( left_ctrl, acca, accb, xreg, sp, pc, ea, md ) -begin - case left_ctrl is - when acca_left => - left(15 downto 8) <= "00000000"; - left(7 downto 0) <= acca; - when accb_left => - left(15 downto 8) <= "00000000"; - left(7 downto 0) <= accb; - when accd_left => - left(15 downto 8) <= acca; - left(7 downto 0) <= accb; - when ix_left => - left <= xreg; - when sp_left => - left <= sp; - when others => --- when md_left => - left <= md; - end case; -end process; ----------------------------------- --- --- Right Mux --- ----------------------------------- - -right_mux: process( right_ctrl, data_in, md, accb, ea ) -begin - case right_ctrl is - when zero_right => - right <= "0000000000000000"; - when plus_one_right => - right <= "0000000000000001"; - when accb_right => - right <= "00000000" & accb; - when others => --- when md_right => - right <= md; - end case; -end process; - ----------------------------------- --- --- Arithmetic Logic Unit --- ----------------------------------- - -mux_alu: process( alu_ctrl, cc, left, right, out_alu, cc_out ) -variable valid_lo, valid_hi : boolean; -variable carry_in : std_logic; -variable daa_reg : std_logic_vector(7 downto 0); -begin - - case alu_ctrl is - when alu_adc | alu_sbc | - alu_rol8 | alu_ror8 => - carry_in := cc(CBIT); - when others => - carry_in := '0'; - end case; - - valid_lo := left(3 downto 0) <= 9; - valid_hi := left(7 downto 4) <= 9; - - if (cc(CBIT) = '0') then - if( cc(HBIT) = '1' ) then - if valid_hi then - daa_reg := "00000110"; - else - daa_reg := "01100110"; - end if; - else - if valid_lo then - if valid_hi then - daa_reg := "00000000"; - else - daa_reg := "01100000"; - end if; - else - if( left(7 downto 4) <= 8 ) then - daa_reg := "00000110"; - else - daa_reg := "01100110"; - end if; - end if; - end if; - else - if ( cc(HBIT) = '1' )then - daa_reg := "01100110"; - else - if valid_lo then - daa_reg := "01100000"; - else - daa_reg := "01100110"; - end if; - end if; - end if; - - case alu_ctrl is - when alu_add8 | alu_inc | - alu_add16 | alu_inx | - alu_adc => - out_alu <= left + right + ("000000000000000" & carry_in); - when alu_sub8 | alu_dec | - alu_sub16 | alu_dex | - alu_sbc | alu_cpx => - out_alu <= left - right - ("000000000000000" & carry_in); - when alu_and => - out_alu <= left and right; -- and/bit - when alu_ora => - out_alu <= left or right; -- or - when alu_eor => - out_alu <= left xor right; -- eor/xor - when alu_lsl16 | alu_asl8 | alu_rol8 => - out_alu <= left(14 downto 0) & carry_in; -- rol8/asl8/lsl16 - when alu_lsr16 | alu_lsr8 => - out_alu <= carry_in & left(15 downto 1); -- lsr - when alu_ror8 => - out_alu <= "00000000" & carry_in & left(7 downto 1); -- ror - when alu_asr8 => - out_alu <= "00000000" & left(7) & left(7 downto 1); -- asr - when alu_neg => - out_alu <= right - left; -- neg (right=0) - when alu_com => - out_alu <= not left; - when alu_clr | alu_ld8 | alu_ld16 => - out_alu <= right; -- clr, ld - when alu_st8 | alu_st16 => - out_alu <= left; - when alu_daa => - out_alu <= left + ("00000000" & daa_reg); - when alu_tpa => - out_alu <= "00000000" & cc; - when others => - out_alu <= left; -- nop - end case; - - -- - -- carry bit - -- - case alu_ctrl is - when alu_add8 | alu_adc => - cc_out(CBIT) <= (left(7) and right(7)) or - (left(7) and not out_alu(7)) or - (right(7) and not out_alu(7)); - when alu_sub8 | alu_sbc => - cc_out(CBIT) <= ((not left(7)) and right(7)) or - ((not left(7)) and out_alu(7)) or - (right(7) and out_alu(7)); - when alu_add16 => - cc_out(CBIT) <= (left(15) and right(15)) or - (left(15) and not out_alu(15)) or - (right(15) and not out_alu(15)); - when alu_sub16 => - cc_out(CBIT) <= ((not left(15)) and right(15)) or - ((not left(15)) and out_alu(15)) or - (right(15) and out_alu(15)); - when alu_ror8 | alu_lsr16 | alu_lsr8 | alu_asr8 => - cc_out(CBIT) <= left(0); - when alu_rol8 | alu_asl8 => - cc_out(CBIT) <= left(7); - when alu_lsl16 => - cc_out(CBIT) <= left(15); - when alu_com => - cc_out(CBIT) <= '1'; - when alu_neg | alu_clr => - cc_out(CBIT) <= out_alu(7) or out_alu(6) or out_alu(5) or out_alu(4) or - out_alu(3) or out_alu(2) or out_alu(1) or out_alu(0); - when alu_daa => - if ( daa_reg(7 downto 4) = "0110" ) then - cc_out(CBIT) <= '1'; - else - cc_out(CBIT) <= '0'; - end if; - when alu_sec => - cc_out(CBIT) <= '1'; - when alu_clc => - cc_out(CBIT) <= '0'; - when alu_tap => - cc_out(CBIT) <= left(CBIT); - when others => -- carry is not affected by cpx - cc_out(CBIT) <= cc(CBIT); - end case; - -- - -- Zero flag - -- - case alu_ctrl is - when alu_add8 | alu_sub8 | - alu_adc | alu_sbc | - alu_and | alu_ora | alu_eor | - alu_inc | alu_dec | - alu_neg | alu_com | alu_clr | - alu_rol8 | alu_ror8 | alu_asr8 | alu_asl8 | alu_lsr8 | - alu_ld8 | alu_st8 => - cc_out(ZBIT) <= not( out_alu(7) or out_alu(6) or out_alu(5) or out_alu(4) or - out_alu(3) or out_alu(2) or out_alu(1) or out_alu(0) ); - when alu_add16 | alu_sub16 | - alu_lsl16 | alu_lsr16 | - alu_inx | alu_dex | - alu_ld16 | alu_st16 | alu_cpx => - cc_out(ZBIT) <= not( out_alu(15) or out_alu(14) or out_alu(13) or out_alu(12) or - out_alu(11) or out_alu(10) or out_alu(9) or out_alu(8) or - out_alu(7) or out_alu(6) or out_alu(5) or out_alu(4) or - out_alu(3) or out_alu(2) or out_alu(1) or out_alu(0) ); - when alu_tap => - cc_out(ZBIT) <= left(ZBIT); - when others => - cc_out(ZBIT) <= cc(ZBIT); - end case; - - -- - -- negative flag - -- - case alu_ctrl is - when alu_add8 | alu_sub8 | - alu_adc | alu_sbc | - alu_and | alu_ora | alu_eor | - alu_rol8 | alu_ror8 | alu_asr8 | alu_asl8 | alu_lsr8 | - alu_inc | alu_dec | alu_neg | alu_com | alu_clr | - alu_ld8 | alu_st8 => - cc_out(NBIT) <= out_alu(7); - when alu_add16 | alu_sub16 | - alu_lsl16 | alu_lsr16 | - alu_ld16 | alu_st16 | alu_cpx => - cc_out(NBIT) <= out_alu(15); - when alu_tap => - cc_out(NBIT) <= left(NBIT); - when others => - cc_out(NBIT) <= cc(NBIT); - end case; - - -- - -- Interrupt mask flag - -- - case alu_ctrl is - when alu_sei => - cc_out(IBIT) <= '1'; -- set interrupt mask - when alu_cli => - cc_out(IBIT) <= '0'; -- clear interrupt mask - when alu_tap => - cc_out(IBIT) <= left(IBIT); - when others => - cc_out(IBIT) <= cc(IBIT); -- interrupt mask - end case; - - -- - -- Half Carry flag - -- - case alu_ctrl is - when alu_add8 | alu_adc => - cc_out(HBIT) <= (left(3) and right(3)) or - (right(3) and not out_alu(3)) or - (left(3) and not out_alu(3)); - when alu_tap => - cc_out(HBIT) <= left(HBIT); - when others => - cc_out(HBIT) <= cc(HBIT); - end case; - - -- - -- Overflow flag - -- - case alu_ctrl is - when alu_add8 | alu_adc => - cc_out(VBIT) <= (left(7) and right(7) and (not out_alu(7))) or - ((not left(7)) and (not right(7)) and out_alu(7)); - when alu_sub8 | alu_sbc => - cc_out(VBIT) <= (left(7) and (not right(7)) and (not out_alu(7))) or - ((not left(7)) and right(7) and out_alu(7)); - when alu_add16 => - cc_out(VBIT) <= (left(15) and right(15) and (not out_alu(15))) or - ((not left(15)) and (not right(15)) and out_alu(15)); - when alu_sub16 | alu_cpx => - cc_out(VBIT) <= (left(15) and (not right(15)) and (not out_alu(15))) or - ((not left(15)) and right(15) and out_alu(15)); - when alu_inc => - cc_out(VBIT) <= ((not left(7)) and left(6) and left(5) and left(4) and - left(3) and left(2) and left(1) and left(0)); - when alu_dec | alu_neg => - cc_out(VBIT) <= (left(7) and (not left(6)) and (not left(5)) and (not left(4)) and - (not left(3)) and (not left(2)) and (not left(1)) and (not left(0))); - when alu_asr8 => - cc_out(VBIT) <= left(0) xor left(7); - when alu_lsr8 | alu_lsr16 => - cc_out(VBIT) <= left(0); - when alu_ror8 => - cc_out(VBIT) <= left(0) xor cc(CBIT); - when alu_lsl16 => - cc_out(VBIT) <= left(15) xor left(14); - when alu_rol8 | alu_asl8 => - cc_out(VBIT) <= left(7) xor left(6); - when alu_tap => - cc_out(VBIT) <= left(VBIT); - when alu_and | alu_ora | alu_eor | alu_com | - alu_st8 | alu_st16 | alu_ld8 | alu_ld16 | - alu_clv => - cc_out(VBIT) <= '0'; - when alu_sev => - cc_out(VBIT) <= '1'; - when others => - cc_out(VBIT) <= cc(VBIT); - end case; - - case alu_ctrl is - when alu_tap => - cc_out(XBIT) <= cc(XBIT) and left(XBIT); - cc_out(SBIT) <= left(SBIT); - when others => - cc_out(XBIT) <= cc(XBIT) and left(XBIT); - cc_out(SBIT) <= cc(SBIT); - end case; - - test_alu <= out_alu; - test_cc <= cc_out; -end process; - ------------------------------------- --- --- Detect Edge of NMI interrupt --- ------------------------------------- - -nmi_handler : process( clk, rst, nmi, nmi_ack ) -begin - if clk'event and clk='0' then - if hold = '1' then - nmi_req <= nmi_req; - else - if rst='1' then - nmi_req <= '0'; - else - if (nmi='1') and (nmi_ack='0') then - nmi_req <= '1'; - else - if (nmi='0') and (nmi_ack='1') then - nmi_req <= '0'; - else - nmi_req <= nmi_req; - end if; - end if; - end if; - end if; - end if; -end process; - ------------------------------------- --- --- Nmi mux --- ------------------------------------- - -nmi_mux: process( clk, nmi_ctrl, nmi_ack, hold ) -begin - if clk'event and clk='0' then - if hold = '1' then - nmi_ack <= nmi_ack; - else - case nmi_ctrl is - when set_nmi => - nmi_ack <= '1'; - when reset_nmi => - nmi_ack <= '0'; - when others => --- when latch_nmi => - nmi_ack <= nmi_ack; - end case; - end if; - end if; -end process; - ------------------------------------- --- --- state sequencer --- ------------------------------------- -process( state, op_code, cc, ea, irq, nmi_req, nmi_ack, hold, halt ) - begin - case state is - when reset_state => -- released from reset - -- reset the registers - op_ctrl <= reset_op; - acca_ctrl <= reset_acca; - accb_ctrl <= reset_accb; - ix_ctrl <= reset_ix; - sp_ctrl <= reset_sp; - pc_ctrl <= reset_pc; - ea_ctrl <= reset_ea; - md_ctrl <= reset_md; - iv_ctrl <= reset_iv; - nmi_ctrl <= reset_nmi; - -- idle the ALU - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= reset_cc; - -- idle the bus - dout_ctrl <= md_lo_dout; - addr_ctrl <= idle_ad; - next_state <= vect_hi_state; - - -- - -- Jump via interrupt vector - -- iv holds interrupt type - -- fetch PC hi from vector location - -- - when vect_hi_state => - -- default the registers - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - md_ctrl <= latch_md; - ea_ctrl <= latch_ea; - iv_ctrl <= latch_iv; - -- idle the ALU - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - -- fetch pc low interrupt vector - pc_ctrl <= pull_hi_pc; - addr_ctrl <= int_hi_ad; - dout_ctrl <= pc_hi_dout; - next_state <= vect_lo_state; - -- - -- jump via interrupt vector - -- iv holds vector type - -- fetch PC lo from vector location - -- - when vect_lo_state => - -- default the registers - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - md_ctrl <= latch_md; - ea_ctrl <= latch_ea; - iv_ctrl <= latch_iv; - -- idle the ALU - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - -- fetch the vector low byte - pc_ctrl <= pull_lo_pc; - addr_ctrl <= int_lo_ad; - dout_ctrl <= pc_lo_dout; - next_state <= fetch_state; - - -- - -- Here to fetch an instruction - -- PC points to opcode - -- Should service interrupt requests at this point - -- either from the timer - -- or from the external input. - -- - when fetch_state => - case op_code(7 downto 4) is - when "0000" | - "0001" | - "0010" | -- branch conditional - "0011" | - "0100" | -- acca single op - "0101" | -- accb single op - "0110" | -- indexed single op - "0111" => -- extended single op - -- idle ALU - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - - when "1000" | -- acca immediate - "1001" | -- acca direct - "1010" | -- acca indexed - "1011" => -- acca extended - case op_code(3 downto 0) is - when "0000" => -- suba - left_ctrl <= acca_left; - right_ctrl <= md_right; - alu_ctrl <= alu_sub8; - cc_ctrl <= load_cc; - acca_ctrl <= load_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "0001" => -- cmpa - left_ctrl <= acca_left; - right_ctrl <= md_right; - alu_ctrl <= alu_sub8; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "0010" => -- sbca - left_ctrl <= acca_left; - right_ctrl <= md_right; - alu_ctrl <= alu_sbc; - cc_ctrl <= load_cc; - acca_ctrl <= load_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "0011" => -- subd - left_ctrl <= accd_left; - right_ctrl <= md_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= load_cc; - acca_ctrl <= load_hi_acca; - accb_ctrl <= load_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "0100" => -- anda - left_ctrl <= acca_left; - right_ctrl <= md_right; - alu_ctrl <= alu_and; - cc_ctrl <= load_cc; - acca_ctrl <= load_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "0101" => -- bita - left_ctrl <= acca_left; - right_ctrl <= md_right; - alu_ctrl <= alu_and; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "0110" => -- ldaa - left_ctrl <= acca_left; - right_ctrl <= md_right; - alu_ctrl <= alu_ld8; - cc_ctrl <= load_cc; - acca_ctrl <= load_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "0111" => -- staa - left_ctrl <= acca_left; - right_ctrl <= md_right; - alu_ctrl <= alu_st8; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "1000" => -- eora - left_ctrl <= acca_left; - right_ctrl <= md_right; - alu_ctrl <= alu_eor; - cc_ctrl <= load_cc; - acca_ctrl <= load_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "1001" => -- adca - left_ctrl <= acca_left; - right_ctrl <= md_right; - alu_ctrl <= alu_adc; - cc_ctrl <= load_cc; - acca_ctrl <= load_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "1010" => -- oraa - left_ctrl <= acca_left; - right_ctrl <= md_right; - alu_ctrl <= alu_ora; - cc_ctrl <= load_cc; - acca_ctrl <= load_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "1011" => -- adda - left_ctrl <= acca_left; - right_ctrl <= md_right; - alu_ctrl <= alu_add8; - cc_ctrl <= load_cc; - acca_ctrl <= load_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "1100" => -- cpx - left_ctrl <= ix_left; - right_ctrl <= md_right; - alu_ctrl <= alu_cpx; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "1101" => -- bsr / jsr - left_ctrl <= acca_left; - right_ctrl <= md_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "1110" => -- lds - left_ctrl <= sp_left; - right_ctrl <= md_right; - alu_ctrl <= alu_ld16; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= load_sp; - when "1111" => -- sts - left_ctrl <= sp_left; - right_ctrl <= md_right; - alu_ctrl <= alu_st16; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when others => - left_ctrl <= acca_left; - right_ctrl <= md_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - end case; - when "1100" | -- accb immediate - "1101" | -- accb direct - "1110" | -- accb indexed - "1111" => -- accb extended - case op_code(3 downto 0) is - when "0000" => -- subb - left_ctrl <= accb_left; - right_ctrl <= md_right; - alu_ctrl <= alu_sub8; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= load_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "0001" => -- cmpb - left_ctrl <= accb_left; - right_ctrl <= md_right; - alu_ctrl <= alu_sub8; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "0010" => -- sbcb - left_ctrl <= accb_left; - right_ctrl <= md_right; - alu_ctrl <= alu_sbc; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= load_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "0011" => -- addd - left_ctrl <= accd_left; - right_ctrl <= md_right; - alu_ctrl <= alu_add16; - cc_ctrl <= load_cc; - acca_ctrl <= load_hi_acca; - accb_ctrl <= load_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "0100" => -- andb - left_ctrl <= accb_left; - right_ctrl <= md_right; - alu_ctrl <= alu_and; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= load_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "0101" => -- bitb - left_ctrl <= accb_left; - right_ctrl <= md_right; - alu_ctrl <= alu_and; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "0110" => -- ldab - left_ctrl <= accb_left; - right_ctrl <= md_right; - alu_ctrl <= alu_ld8; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= load_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "0111" => -- stab - left_ctrl <= accb_left; - right_ctrl <= md_right; - alu_ctrl <= alu_st8; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "1000" => -- eorb - left_ctrl <= accb_left; - right_ctrl <= md_right; - alu_ctrl <= alu_eor; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= load_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "1001" => -- adcb - left_ctrl <= accb_left; - right_ctrl <= md_right; - alu_ctrl <= alu_adc; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= load_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "1010" => -- orab - left_ctrl <= accb_left; - right_ctrl <= md_right; - alu_ctrl <= alu_ora; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= load_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "1011" => -- addb - left_ctrl <= accb_left; - right_ctrl <= md_right; - alu_ctrl <= alu_add8; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= load_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "1100" => -- ldd - left_ctrl <= accd_left; - right_ctrl <= md_right; - alu_ctrl <= alu_ld16; - cc_ctrl <= load_cc; - acca_ctrl <= load_hi_acca; - accb_ctrl <= load_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "1101" => -- std - left_ctrl <= accd_left; - right_ctrl <= md_right; - alu_ctrl <= alu_st16; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when "1110" => -- ldx - left_ctrl <= ix_left; - right_ctrl <= md_right; - alu_ctrl <= alu_ld16; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= load_ix; - sp_ctrl <= latch_sp; - when "1111" => -- stx - left_ctrl <= ix_left; - right_ctrl <= md_right; - alu_ctrl <= alu_st16; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - when others => - left_ctrl <= accb_left; - right_ctrl <= md_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - end case; - when others => - left_ctrl <= accd_left; - right_ctrl <= md_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - end case; - md_ctrl <= latch_md; - -- fetch the op code - op_ctrl <= fetch_op; - ea_ctrl <= reset_ea; - addr_ctrl <= fetch_ad; - dout_ctrl <= md_lo_dout; - iv_ctrl <= latch_iv; - if halt = '1' then - pc_ctrl <= latch_pc; - nmi_ctrl <= latch_nmi; - next_state <= halt_state; - -- service non maskable interrupts - elsif (nmi_req = '1') and (nmi_ack = '0') then - pc_ctrl <= latch_pc; - nmi_ctrl <= set_nmi; - next_state <= int_pcl_state; - -- service maskable interrupts - else - -- - -- nmi request is not cleared until nmi input goes low - -- - if(nmi_req = '0') and (nmi_ack='1') then - nmi_ctrl <= reset_nmi; - else - nmi_ctrl <= latch_nmi; - end if; - -- - -- IRQ is level sensitive - -- - if (irq = '1') and (cc(IBIT) = '0') then - pc_ctrl <= latch_pc; - next_state <= int_pcl_state; - else - -- Advance the PC to fetch next instruction byte - pc_ctrl <= inc_pc; - next_state <= decode_state; - end if; - end if; - -- - -- Here to decode instruction - -- and fetch next byte of intruction - -- whether it be necessary or not - -- - when decode_state => - -- fetch first byte of address or immediate data - ea_ctrl <= fetch_first_ea; - addr_ctrl <= fetch_ad; - dout_ctrl <= md_lo_dout; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - iv_ctrl <= latch_iv; - case op_code(7 downto 4) is - when "0000" => - md_ctrl <= fetch_first_md; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - case op_code(3 downto 0) is - when "0001" => -- nop - left_ctrl <= accd_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - when "0100" => -- lsrd - left_ctrl <= accd_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_lsr16; - cc_ctrl <= load_cc; - acca_ctrl <= load_hi_acca; - accb_ctrl <= load_accb; - ix_ctrl <= latch_ix; - when "0101" => -- lsld - left_ctrl <= accd_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_lsl16; - cc_ctrl <= load_cc; - acca_ctrl <= load_hi_acca; - accb_ctrl <= load_accb; - ix_ctrl <= latch_ix; - when "0110" => -- tap - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_tap; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - when "0111" => -- tpa - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_tpa; - cc_ctrl <= latch_cc; - acca_ctrl <= load_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - when "1000" => -- inx - left_ctrl <= ix_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_inx; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= load_ix; - when "1001" => -- dex - left_ctrl <= ix_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_dex; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= load_ix; - when "1010" => -- clv - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_clv; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - when "1011" => -- sev - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_sev; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - when "1100" => -- clc - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_clc; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - when "1101" => -- sec - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_sec; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - when "1110" => -- cli - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_cli; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - when "1111" => -- sei - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_sei; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - when others => - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - end case; - next_state <= fetch_state; - -- acca / accb inherent instructions - when "0001" => - md_ctrl <= fetch_first_md; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - left_ctrl <= acca_left; - right_ctrl <= accb_right; - case op_code(3 downto 0) is - when "0000" => -- sba - alu_ctrl <= alu_sub8; - cc_ctrl <= load_cc; - acca_ctrl <= load_acca; - accb_ctrl <= latch_accb; - when "0001" => -- cba - alu_ctrl <= alu_sub8; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - when "0110" => -- tab - alu_ctrl <= alu_st8; - cc_ctrl <= load_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= load_accb; - when "0111" => -- tba - alu_ctrl <= alu_ld8; - cc_ctrl <= load_cc; - acca_ctrl <= load_acca; - accb_ctrl <= latch_accb; - when "1001" => -- daa - alu_ctrl <= alu_daa; - cc_ctrl <= load_cc; - acca_ctrl <= load_acca; - accb_ctrl <= latch_accb; - when "1011" => -- aba - alu_ctrl <= alu_add8; - cc_ctrl <= load_cc; - acca_ctrl <= load_acca; - accb_ctrl <= latch_accb; - when others => - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - end case; - next_state <= fetch_state; - when "0010" => -- branch conditional - md_ctrl <= fetch_first_md; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - -- increment the pc - pc_ctrl <= inc_pc; - case op_code(3 downto 0) is - when "0000" => -- bra - next_state <= branch_state; - when "0001" => -- brn - next_state <= fetch_state; - when "0010" => -- bhi - if (cc(CBIT) or cc(ZBIT)) = '0' then - next_state <= branch_state; - else - next_state <= fetch_state; - end if; - when "0011" => -- bls - if (cc(CBIT) or cc(ZBIT)) = '1' then - next_state <= branch_state; - else - next_state <= fetch_state; - end if; - when "0100" => -- bcc/bhs - if cc(CBIT) = '0' then - next_state <= branch_state; - else - next_state <= fetch_state; - end if; - when "0101" => -- bcs/blo - if cc(CBIT) = '1' then - next_state <= branch_state; - else - next_state <= fetch_state; - end if; - when "0110" => -- bne - if cc(ZBIT) = '0' then - next_state <= branch_state; - else - next_state <= fetch_state; - end if; - when "0111" => -- beq - if cc(ZBIT) = '1' then - next_state <= branch_state; - else - next_state <= fetch_state; - end if; - when "1000" => -- bvc - if cc(VBIT) = '0' then - next_state <= branch_state; - else - next_state <= fetch_state; - end if; - when "1001" => -- bvs - if cc(VBIT) = '1' then - next_state <= branch_state; - else - next_state <= fetch_state; - end if; - when "1010" => -- bpl - if cc(NBIT) = '0' then - next_state <= branch_state; - else - next_state <= fetch_state; - end if; - when "1011" => -- bmi - if cc(NBIT) = '1' then - next_state <= branch_state; - else - next_state <= fetch_state; - end if; - when "1100" => -- bge - if (cc(NBIT) xor cc(VBIT)) = '0' then - next_state <= branch_state; - else - next_state <= fetch_state; - end if; - when "1101" => -- blt - if (cc(NBIT) xor cc(VBIT)) = '1' then - next_state <= branch_state; - else - next_state <= fetch_state; - end if; - when "1110" => -- bgt - if (cc(ZBIT) or (cc(NBIT) xor cc(VBIT))) = '0' then - next_state <= branch_state; - else - next_state <= fetch_state; - end if; - when "1111" => -- ble - if (cc(ZBIT) or (cc(NBIT) xor cc(VBIT))) = '1' then - next_state <= branch_state; - else - next_state <= fetch_state; - end if; - when others => - next_state <= fetch_state; - end case; - -- - -- Single byte stack operators - -- Do not advance PC - -- - when "0011" => - md_ctrl <= fetch_first_md; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - pc_ctrl <= latch_pc; - case op_code(3 downto 0) is - when "0000" => -- tsx - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_add16; - cc_ctrl <= latch_cc; - ix_ctrl <= load_ix; - sp_ctrl <= latch_sp; - next_state <= fetch_state; - when "0001" => -- ins - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_add16; - cc_ctrl <= latch_cc; - ix_ctrl <= latch_ix; - sp_ctrl <= load_sp; - next_state <= fetch_state; - when "0010" => -- pula - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_add16; - cc_ctrl <= latch_cc; - ix_ctrl <= latch_ix; - sp_ctrl <= load_sp; - next_state <= pula_state; - when "0011" => -- pulb - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_add16; - cc_ctrl <= latch_cc; - ix_ctrl <= latch_ix; - sp_ctrl <= load_sp; - next_state <= pulb_state; - when "0100" => -- des - -- decrement sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - ix_ctrl <= latch_ix; - sp_ctrl <= load_sp; - next_state <= fetch_state; - when "0101" => -- txs - left_ctrl <= ix_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - ix_ctrl <= latch_ix; - sp_ctrl <= load_sp; - next_state <= fetch_state; - when "0110" => -- psha - left_ctrl <= sp_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - next_state <= psha_state; - when "0111" => -- pshb - left_ctrl <= sp_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - next_state <= pshb_state; - when "1000" => -- pulx - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_add16; - cc_ctrl <= latch_cc; - ix_ctrl <= latch_ix; - sp_ctrl <= load_sp; - next_state <= pulx_hi_state; - when "1001" => -- rts - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_add16; - cc_ctrl <= latch_cc; - ix_ctrl <= latch_ix; - sp_ctrl <= load_sp; - next_state <= rts_hi_state; - when "1010" => -- abx - left_ctrl <= ix_left; - right_ctrl <= accb_right; - alu_ctrl <= alu_add16; - cc_ctrl <= latch_cc; - ix_ctrl <= load_ix; - sp_ctrl <= latch_sp; - next_state <= fetch_state; - when "1011" => -- rti - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_add16; - cc_ctrl <= latch_cc; - ix_ctrl <= latch_ix; - sp_ctrl <= load_sp; - next_state <= rti_cc_state; - when "1100" => -- pshx - left_ctrl <= sp_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - next_state <= pshx_lo_state; - when "1101" => -- mul - left_ctrl <= acca_left; - right_ctrl <= accb_right; - alu_ctrl <= alu_add16; - cc_ctrl <= latch_cc; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - next_state <= mul_state; - when "1110" => -- wai - left_ctrl <= sp_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - next_state <= int_pcl_state; - when "1111" => -- swi - left_ctrl <= sp_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - next_state <= int_pcl_state; - when others => - left_ctrl <= sp_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - next_state <= fetch_state; - end case; - -- - -- Accumulator A Single operand - -- source = Acc A dest = Acc A - -- Do not advance PC - -- - when "0100" => -- acca single op - md_ctrl <= fetch_first_md; - accb_ctrl <= latch_accb; - pc_ctrl <= latch_pc; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - left_ctrl <= acca_left; - case op_code(3 downto 0) is - when "0000" => -- neg - right_ctrl <= zero_right; - alu_ctrl <= alu_neg; - acca_ctrl <= load_acca; - cc_ctrl <= load_cc; - when "0011" => -- com - right_ctrl <= zero_right; - alu_ctrl <= alu_com; - acca_ctrl <= load_acca; - cc_ctrl <= load_cc; - when "0100" => -- lsr - right_ctrl <= zero_right; - alu_ctrl <= alu_lsr8; - acca_ctrl <= load_acca; - cc_ctrl <= load_cc; - when "0110" => -- ror - right_ctrl <= zero_right; - alu_ctrl <= alu_ror8; - acca_ctrl <= load_acca; - cc_ctrl <= load_cc; - when "0111" => -- asr - right_ctrl <= zero_right; - alu_ctrl <= alu_asr8; - acca_ctrl <= load_acca; - cc_ctrl <= load_cc; - when "1000" => -- asl - right_ctrl <= zero_right; - alu_ctrl <= alu_asl8; - acca_ctrl <= load_acca; - cc_ctrl <= load_cc; - when "1001" => -- rol - right_ctrl <= zero_right; - alu_ctrl <= alu_rol8; - acca_ctrl <= load_acca; - cc_ctrl <= load_cc; - when "1010" => -- dec - right_ctrl <= plus_one_right; - alu_ctrl <= alu_dec; - acca_ctrl <= load_acca; - cc_ctrl <= load_cc; - when "1011" => -- undefined - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - acca_ctrl <= latch_acca; - cc_ctrl <= latch_cc; - when "1100" => -- inc - right_ctrl <= plus_one_right; - alu_ctrl <= alu_inc; - acca_ctrl <= load_acca; - cc_ctrl <= load_cc; - when "1101" => -- tst - right_ctrl <= zero_right; - alu_ctrl <= alu_st8; - acca_ctrl <= latch_acca; - cc_ctrl <= load_cc; - when "1110" => -- jmp - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - acca_ctrl <= latch_acca; - cc_ctrl <= latch_cc; - when "1111" => -- clr - right_ctrl <= zero_right; - alu_ctrl <= alu_clr; - acca_ctrl <= load_acca; - cc_ctrl <= load_cc; - when others => - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - acca_ctrl <= latch_acca; - cc_ctrl <= latch_cc; - end case; - next_state <= fetch_state; - -- - -- single operand acc b - -- Do not advance PC - -- - when "0101" => - md_ctrl <= fetch_first_md; - acca_ctrl <= latch_acca; - pc_ctrl <= latch_pc; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - left_ctrl <= accb_left; - case op_code(3 downto 0) is - when "0000" => -- neg - right_ctrl <= zero_right; - alu_ctrl <= alu_neg; - accb_ctrl <= load_accb; - cc_ctrl <= load_cc; - when "0011" => -- com - right_ctrl <= zero_right; - alu_ctrl <= alu_com; - accb_ctrl <= load_accb; - cc_ctrl <= load_cc; - when "0100" => -- lsr - right_ctrl <= zero_right; - alu_ctrl <= alu_lsr8; - accb_ctrl <= load_accb; - cc_ctrl <= load_cc; - when "0110" => -- ror - right_ctrl <= zero_right; - alu_ctrl <= alu_ror8; - accb_ctrl <= load_accb; - cc_ctrl <= load_cc; - when "0111" => -- asr - right_ctrl <= zero_right; - alu_ctrl <= alu_asr8; - accb_ctrl <= load_accb; - cc_ctrl <= load_cc; - when "1000" => -- asl - right_ctrl <= zero_right; - alu_ctrl <= alu_asl8; - accb_ctrl <= load_accb; - cc_ctrl <= load_cc; - when "1001" => -- rol - right_ctrl <= zero_right; - alu_ctrl <= alu_rol8; - accb_ctrl <= load_accb; - cc_ctrl <= load_cc; - when "1010" => -- dec - right_ctrl <= plus_one_right; - alu_ctrl <= alu_dec; - accb_ctrl <= load_accb; - cc_ctrl <= load_cc; - when "1011" => -- undefined - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - accb_ctrl <= latch_accb; - cc_ctrl <= latch_cc; - when "1100" => -- inc - right_ctrl <= plus_one_right; - alu_ctrl <= alu_inc; - accb_ctrl <= load_accb; - cc_ctrl <= load_cc; - when "1101" => -- tst - right_ctrl <= zero_right; - alu_ctrl <= alu_st8; - accb_ctrl <= latch_accb; - cc_ctrl <= load_cc; - when "1110" => -- jmp - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - accb_ctrl <= latch_accb; - cc_ctrl <= latch_cc; - when "1111" => -- clr - right_ctrl <= zero_right; - alu_ctrl <= alu_clr; - accb_ctrl <= load_accb; - cc_ctrl <= load_cc; - when others => - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - accb_ctrl <= latch_accb; - cc_ctrl <= latch_cc; - end case; - next_state <= fetch_state; - -- - -- Single operand indexed - -- Two byte instruction so advance PC - -- EA should hold index offset - -- - when "0110" => -- indexed single op - md_ctrl <= fetch_first_md; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - -- increment the pc - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - pc_ctrl <= inc_pc; - next_state <= indexed_state; - -- - -- Single operand extended addressing - -- three byte instruction so advance the PC - -- Low order EA holds high order address - -- - when "0111" => -- extended single op - md_ctrl <= fetch_first_md; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - -- increment the pc - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - pc_ctrl <= inc_pc; - next_state <= extended_state; - - when "1000" => -- acca immediate - md_ctrl <= fetch_first_md; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - -- increment the pc - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - pc_ctrl <= inc_pc; - case op_code(3 downto 0) is - when "0011" | -- subdd # - "1100" | -- cpx # - "1110" => -- lds # - next_state <= immediate16_state; - when "1101" => -- bsr - next_state <= bsr_state; - when others => - next_state <= fetch_state; - end case; - - when "1001" => -- acca direct - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - -- increment the pc - pc_ctrl <= inc_pc; - case op_code(3 downto 0) is - when "0111" => -- staa direct - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_st8; - cc_ctrl <= latch_cc; - md_ctrl <= load_md; - next_state <= write8_state; - when "1111" => -- sts direct - left_ctrl <= sp_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_st16; - cc_ctrl <= latch_cc; - md_ctrl <= load_md; - next_state <= write16_state; - when "1101" => -- jsr direct - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= fetch_first_md; - next_state <= jsr_state; - when others => - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= fetch_first_md; - next_state <= read8_state; - end case; - - when "1010" => -- acca indexed - md_ctrl <= fetch_first_md; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - -- increment the pc - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - pc_ctrl <= inc_pc; - next_state <= indexed_state; - - when "1011" => -- acca extended - md_ctrl <= fetch_first_md; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - -- increment the pc - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - pc_ctrl <= inc_pc; - next_state <= extended_state; - - when "1100" => -- accb immediate - md_ctrl <= fetch_first_md; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - -- increment the pc - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - pc_ctrl <= inc_pc; - case op_code(3 downto 0) is - when "0011" | -- addd # - "1100" | -- ldd # - "1110" => -- ldx # - next_state <= immediate16_state; - when others => - next_state <= fetch_state; - end case; - - when "1101" => -- accb direct - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - -- increment the pc - pc_ctrl <= inc_pc; - case op_code(3 downto 0) is - when "0111" => -- stab direct - left_ctrl <= accb_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_st8; - cc_ctrl <= latch_cc; - md_ctrl <= load_md; - next_state <= write8_state; - when "1101" => -- std direct - left_ctrl <= accd_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_st16; - cc_ctrl <= latch_cc; - md_ctrl <= load_md; - next_state <= write16_state; - when "1111" => -- stx direct - left_ctrl <= ix_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_st16; - cc_ctrl <= latch_cc; - md_ctrl <= load_md; - next_state <= write16_state; - when others => - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= fetch_first_md; - next_state <= read8_state; - end case; - - when "1110" => -- accb indexed - md_ctrl <= fetch_first_md; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - -- increment the pc - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - pc_ctrl <= inc_pc; - next_state <= indexed_state; - - when "1111" => -- accb extended - md_ctrl <= fetch_first_md; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - -- increment the pc - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - pc_ctrl <= inc_pc; - next_state <= extended_state; - - when others => - md_ctrl <= fetch_first_md; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - -- idle the pc - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - pc_ctrl <= latch_pc; - next_state <= fetch_state; - end case; - - when immediate16_state => - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - op_ctrl <= latch_op; - iv_ctrl <= latch_iv; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- increment pc - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - pc_ctrl <= inc_pc; - -- fetch next immediate byte - md_ctrl <= fetch_next_md; - addr_ctrl <= fetch_ad; - dout_ctrl <= md_lo_dout; - next_state <= fetch_state; - -- - -- ea holds 8 bit index offet - -- calculate the effective memory address - -- using the alu - -- - when indexed_state => - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - -- calculate effective address from index reg - -- index offest is not sign extended - ea_ctrl <= add_ix_ea; - -- idle the bus - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - -- work out next state - case op_code(7 downto 4) is - when "0110" => -- single op indexed - md_ctrl <= latch_md; - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - case op_code(3 downto 0) is - when "1011" => -- undefined - next_state <= fetch_state; - when "1110" => -- jmp - next_state <= jmp_state; - when others => - next_state <= read8_state; - end case; - when "1010" => -- acca indexed - case op_code(3 downto 0) is - when "0111" => -- staa - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_st8; - cc_ctrl <= latch_cc; - md_ctrl <= load_md; - next_state <= write8_state; - when "1101" => -- jsr - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= latch_md; - next_state <= jsr_state; - when "1111" => -- sts - left_ctrl <= sp_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_st16; - cc_ctrl <= latch_cc; - md_ctrl <= load_md; - next_state <= write16_state; - when others => - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= latch_md; - next_state <= read8_state; - end case; - when "1110" => -- accb indexed - case op_code(3 downto 0) is - when "0111" => -- stab direct - left_ctrl <= accb_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_st8; - cc_ctrl <= latch_cc; - md_ctrl <= load_md; - next_state <= write8_state; - when "1101" => -- std direct - left_ctrl <= accd_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_st16; - cc_ctrl <= latch_cc; - md_ctrl <= load_md; - next_state <= write16_state; - when "1111" => -- stx direct - left_ctrl <= ix_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_st16; - cc_ctrl <= latch_cc; - md_ctrl <= load_md; - next_state <= write16_state; - when others => - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= latch_md; - next_state <= read8_state; - end case; - when others => - md_ctrl <= latch_md; - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - next_state <= fetch_state; - end case; - -- - -- ea holds the low byte of the absolute address - -- Move ea low byte into ea high byte - -- load new ea low byte to for absolute 16 bit address - -- advance the program counter - -- - when extended_state => -- fetch ea low byte - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - -- increment pc - pc_ctrl <= inc_pc; - -- fetch next effective address bytes - ea_ctrl <= fetch_next_ea; - addr_ctrl <= fetch_ad; - dout_ctrl <= md_lo_dout; - -- work out the next state - case op_code(7 downto 4) is - when "0111" => -- single op extended - md_ctrl <= latch_md; - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - case op_code(3 downto 0) is - when "1011" => -- undefined - next_state <= fetch_state; - when "1110" => -- jmp - next_state <= jmp_state; - when others => - next_state <= read8_state; - end case; - when "1011" => -- acca extended - case op_code(3 downto 0) is - when "0111" => -- staa - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_st8; - cc_ctrl <= latch_cc; - md_ctrl <= load_md; - next_state <= write8_state; - when "1101" => -- jsr - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= latch_md; - next_state <= jsr_state; - when "1111" => -- sts - left_ctrl <= sp_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_st16; - cc_ctrl <= latch_cc; - md_ctrl <= load_md; - next_state <= write16_state; - when others => - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= latch_md; - next_state <= read8_state; - end case; - when "1111" => -- accb extended - case op_code(3 downto 0) is - when "0111" => -- stab - left_ctrl <= accb_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_st8; - cc_ctrl <= latch_cc; - md_ctrl <= load_md; - next_state <= write8_state; - when "1101" => -- std - left_ctrl <= accd_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_st16; - cc_ctrl <= latch_cc; - md_ctrl <= load_md; - next_state <= write16_state; - when "1111" => -- stx - left_ctrl <= ix_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_st16; - cc_ctrl <= latch_cc; - md_ctrl <= load_md; - next_state <= write16_state; - when others => - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= latch_md; - next_state <= read8_state; - end case; - when others => - md_ctrl <= latch_md; - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - next_state <= fetch_state; - end case; - -- - -- here if ea holds low byte (direct page) - -- can enter here from extended addressing - -- read memory location - -- note that reads may be 8 or 16 bits - -- - when read8_state => -- read data - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - -- - addr_ctrl <= read_ad; - dout_ctrl <= md_lo_dout; - case op_code(7 downto 4) is - when "0110" | "0111" => -- single operand - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= fetch_first_md; - ea_ctrl <= latch_ea; - next_state <= execute_state; - - when "1001" | "1010" | "1011" => -- acca - case op_code(3 downto 0) is - when "0011" | -- subd - "1110" | -- lds - "1100" => -- cpx - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= fetch_first_md; - -- increment the effective address in case of 16 bit load - ea_ctrl <= inc_ea; - next_state <= read16_state; --- when "0111" => -- staa --- left_ctrl <= acca_left; --- right_ctrl <= zero_right; --- alu_ctrl <= alu_st8; --- cc_ctrl <= latch_cc; --- md_ctrl <= load_md; --- ea_ctrl <= latch_ea; --- next_state <= write8_state; --- when "1101" => -- jsr --- left_ctrl <= acca_left; --- right_ctrl <= zero_right; --- alu_ctrl <= alu_nop; --- cc_ctrl <= latch_cc; --- md_ctrl <= latch_md; --- ea_ctrl <= latch_ea; --- next_state <= jsr_state; --- when "1111" => -- sts --- left_ctrl <= sp_left; --- right_ctrl <= zero_right; --- alu_ctrl <= alu_st16; --- cc_ctrl <= latch_cc; --- md_ctrl <= load_md; --- ea_ctrl <= latch_ea; --- next_state <= write16_state; - when others => - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= fetch_first_md; - ea_ctrl <= latch_ea; - next_state <= fetch_state; - end case; - - when "1101" | "1110" | "1111" => -- accb - case op_code(3 downto 0) is - when "0011" | -- addd - "1100" | -- ldd - "1110" => -- ldx - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= fetch_first_md; - -- increment the effective address in case of 16 bit load - ea_ctrl <= inc_ea; - next_state <= read16_state; --- when "0111" => -- stab --- left_ctrl <= accb_left; --- right_ctrl <= zero_right; --- alu_ctrl <= alu_st8; --- cc_ctrl <= latch_cc; --- md_ctrl <= load_md; --- ea_ctrl <= latch_ea; --- next_state <= write8_state; --- when "1101" => -- std --- left_ctrl <= accd_left; --- right_ctrl <= zero_right; --- alu_ctrl <= alu_st16; --- cc_ctrl <= latch_cc; --- md_ctrl <= load_md; --- ea_ctrl <= latch_ea; --- next_state <= write16_state; --- when "1111" => -- stx --- left_ctrl <= ix_left; --- right_ctrl <= zero_right; --- alu_ctrl <= alu_st16; --- cc_ctrl <= latch_cc; --- md_ctrl <= load_md; --- ea_ctrl <= latch_ea; --- next_state <= write16_state; - when others => - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= fetch_first_md; - ea_ctrl <= latch_ea; - next_state <= execute_state; - end case; - when others => - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= fetch_first_md; - ea_ctrl <= latch_ea; - next_state <= fetch_state; - end case; - - when read16_state => -- read second data byte from ea - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - -- idle the effective address - ea_ctrl <= latch_ea; - -- read the low byte of the 16 bit data - md_ctrl <= fetch_next_md; - addr_ctrl <= read_ad; - dout_ctrl <= md_lo_dout; - next_state <= fetch_state; - -- - -- 16 bit Write state - -- write high byte of ALU output. - -- EA hold address of memory to write to - -- Advance the effective address in ALU - -- - when write16_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - -- increment the effective address - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - ea_ctrl <= inc_ea; - -- write the ALU hi byte to ea - addr_ctrl <= write_ad; - dout_ctrl <= md_hi_dout; - next_state <= write8_state; - -- - -- 8 bit write - -- Write low 8 bits of ALU output - -- - when write8_state => - -- default registers - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- idle the ALU - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - -- write ALU low byte output - addr_ctrl <= write_ad; - dout_ctrl <= md_lo_dout; - next_state <= fetch_state; - - when jmp_state => - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- load PC with effective address - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - pc_ctrl <= load_ea_pc; - -- idle the bus - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - next_state <= fetch_state; - - when jsr_state => -- JSR - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- decrement sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- write pc low - addr_ctrl <= push_ad; - dout_ctrl <= pc_lo_dout; - next_state <= jsr1_state; - - when jsr1_state => -- JSR - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- decrement sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- write pc hi - addr_ctrl <= push_ad; - dout_ctrl <= pc_hi_dout; - next_state <= jmp_state; - - when branch_state => -- Bcc - -- default registers - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- calculate signed branch - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - pc_ctrl <= add_ea_pc; - -- idle the bus - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - next_state <= fetch_state; - - when bsr_state => -- BSR - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- decrement sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- write pc low - addr_ctrl <= push_ad; - dout_ctrl <= pc_lo_dout; - next_state <= bsr1_state; - - when bsr1_state => -- BSR - -- default registers - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- decrement sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- write pc hi - addr_ctrl <= push_ad; - dout_ctrl <= pc_hi_dout; - next_state <= branch_state; - - when rts_hi_state => -- RTS - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- increment the sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_add16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- read pc hi - pc_ctrl <= pull_hi_pc; - addr_ctrl <= pull_ad; - dout_ctrl <= pc_hi_dout; - next_state <= rts_lo_state; - - when rts_lo_state => -- RTS1 - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- idle the ALU - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - -- read pc low - pc_ctrl <= pull_lo_pc; - addr_ctrl <= pull_ad; - dout_ctrl <= pc_lo_dout; - next_state <= fetch_state; - - when mul_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- move acca to md - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_st16; - cc_ctrl <= latch_cc; - md_ctrl <= load_md; - -- idle bus - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - next_state <= mulea_state; - - when mulea_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - md_ctrl <= latch_md; - -- idle ALU - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - -- move accb to ea - ea_ctrl <= load_accb_ea; - -- idle bus - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - next_state <= muld_state; - - when muld_state => - -- default - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - md_ctrl <= latch_md; - -- clear accd - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_ld8; - cc_ctrl <= latch_cc; - acca_ctrl <= load_hi_acca; - accb_ctrl <= load_accb; - -- idle bus - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - next_state <= mul0_state; - - when mul0_state => - -- default - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- if bit 0 of ea set, add accd to md - left_ctrl <= accd_left; - right_ctrl <= md_right; - alu_ctrl <= alu_add16; - if ea(0) = '1' then - cc_ctrl <= load_cc; - acca_ctrl <= load_hi_acca; - accb_ctrl <= load_accb; - else - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - end if; - md_ctrl <= shiftl_md; - -- idle bus - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - next_state <= mul1_state; - - when mul1_state => - -- default - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- if bit 1 of ea set, add accd to md - left_ctrl <= accd_left; - right_ctrl <= md_right; - alu_ctrl <= alu_add16; - if ea(1) = '1' then - cc_ctrl <= load_cc; - acca_ctrl <= load_hi_acca; - accb_ctrl <= load_accb; - else - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - end if; - md_ctrl <= shiftl_md; - -- idle bus - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - next_state <= mul2_state; - - when mul2_state => - -- default - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- if bit 2 of ea set, add accd to md - left_ctrl <= accd_left; - right_ctrl <= md_right; - alu_ctrl <= alu_add16; - if ea(2) = '1' then - cc_ctrl <= load_cc; - acca_ctrl <= load_hi_acca; - accb_ctrl <= load_accb; - else - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - end if; - md_ctrl <= shiftl_md; - -- idle bus - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - next_state <= mul3_state; - - when mul3_state => - -- default - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- if bit 3 of ea set, add accd to md - left_ctrl <= accd_left; - right_ctrl <= md_right; - alu_ctrl <= alu_add16; - if ea(3) = '1' then - cc_ctrl <= load_cc; - acca_ctrl <= load_hi_acca; - accb_ctrl <= load_accb; - else - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - end if; - md_ctrl <= shiftl_md; - -- idle bus - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - next_state <= mul4_state; - - when mul4_state => - -- default - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- if bit 4 of ea set, add accd to md - left_ctrl <= accd_left; - right_ctrl <= md_right; - alu_ctrl <= alu_add16; - if ea(4) = '1' then - cc_ctrl <= load_cc; - acca_ctrl <= load_hi_acca; - accb_ctrl <= load_accb; - else - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - end if; - md_ctrl <= shiftl_md; - -- idle bus - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - next_state <= mul5_state; - - when mul5_state => - -- default - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- if bit 5 of ea set, add accd to md - left_ctrl <= accd_left; - right_ctrl <= md_right; - alu_ctrl <= alu_add16; - if ea(5) = '1' then - cc_ctrl <= load_cc; - acca_ctrl <= load_hi_acca; - accb_ctrl <= load_accb; - else - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - end if; - md_ctrl <= shiftl_md; - -- idle bus - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - next_state <= mul6_state; - - when mul6_state => - -- default - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- if bit 6 of ea set, add accd to md - left_ctrl <= accd_left; - right_ctrl <= md_right; - alu_ctrl <= alu_add16; - if ea(6) = '1' then - cc_ctrl <= load_cc; - acca_ctrl <= load_hi_acca; - accb_ctrl <= load_accb; - else - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - end if; - md_ctrl <= shiftl_md; - -- idle bus - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - next_state <= mul7_state; - - when mul7_state => - -- default - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- if bit 7 of ea set, add accd to md - left_ctrl <= accd_left; - right_ctrl <= md_right; - alu_ctrl <= alu_add16; - if ea(7) = '1' then - cc_ctrl <= load_cc; - acca_ctrl <= load_hi_acca; - accb_ctrl <= load_accb; - else - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - end if; - md_ctrl <= shiftl_md; - -- idle bus - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - next_state <= fetch_state; - - when execute_state => -- execute single operand instruction - -- default - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - case op_code(7 downto 4) is - when "0110" | -- indexed single op - "0111" => -- extended single op - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - iv_ctrl <= latch_iv; - ea_ctrl <= latch_ea; - -- idle the bus - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - left_ctrl <= md_left; - case op_code(3 downto 0) is - when "0000" => -- neg - right_ctrl <= zero_right; - alu_ctrl <= alu_neg; - cc_ctrl <= load_cc; - md_ctrl <= load_md; - next_state <= write8_state; - when "0011" => -- com - right_ctrl <= zero_right; - alu_ctrl <= alu_com; - cc_ctrl <= load_cc; - md_ctrl <= load_md; - next_state <= write8_state; - when "0100" => -- lsr - right_ctrl <= zero_right; - alu_ctrl <= alu_lsr8; - cc_ctrl <= load_cc; - md_ctrl <= load_md; - next_state <= write8_state; - when "0110" => -- ror - right_ctrl <= zero_right; - alu_ctrl <= alu_ror8; - cc_ctrl <= load_cc; - md_ctrl <= load_md; - next_state <= write8_state; - when "0111" => -- asr - right_ctrl <= zero_right; - alu_ctrl <= alu_asr8; - cc_ctrl <= load_cc; - md_ctrl <= load_md; - next_state <= write8_state; - when "1000" => -- asl - right_ctrl <= zero_right; - alu_ctrl <= alu_asl8; - cc_ctrl <= load_cc; - md_ctrl <= load_md; - next_state <= write8_state; - when "1001" => -- rol - right_ctrl <= zero_right; - alu_ctrl <= alu_rol8; - cc_ctrl <= load_cc; - md_ctrl <= load_md; - next_state <= write8_state; - when "1010" => -- dec - right_ctrl <= plus_one_right; - alu_ctrl <= alu_dec; - cc_ctrl <= load_cc; - md_ctrl <= load_md; - next_state <= write8_state; - when "1011" => -- undefined - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= latch_md; - next_state <= fetch_state; - when "1100" => -- inc - right_ctrl <= plus_one_right; - alu_ctrl <= alu_inc; - cc_ctrl <= load_cc; - md_ctrl <= load_md; - next_state <= write8_state; - when "1101" => -- tst - right_ctrl <= zero_right; - alu_ctrl <= alu_st8; - cc_ctrl <= load_cc; - md_ctrl <= latch_md; - next_state <= fetch_state; - when "1110" => -- jmp - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= latch_md; - next_state <= fetch_state; - when "1111" => -- clr - right_ctrl <= zero_right; - alu_ctrl <= alu_clr; - cc_ctrl <= load_cc; - md_ctrl <= load_md; - next_state <= write8_state; - when others => - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - md_ctrl <= latch_md; - next_state <= fetch_state; - end case; - - when others => - left_ctrl <= accd_left; - right_ctrl <= md_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - ea_ctrl <= latch_ea; - -- idle the bus - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - next_state <= fetch_state; - end case; - - when psha_state => - -- default registers - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- decrement sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- write acca - addr_ctrl <= push_ad; - dout_ctrl <= acca_dout; - next_state <= fetch_state; - - when pula_state => - -- default registers - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- idle sp - left_ctrl <= sp_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - sp_ctrl <= latch_sp; - -- read acca - acca_ctrl <= pull_acca; - addr_ctrl <= pull_ad; - dout_ctrl <= acca_dout; - next_state <= fetch_state; - - when pshb_state => - -- default registers - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- decrement sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- write accb - addr_ctrl <= push_ad; - dout_ctrl <= accb_dout; - next_state <= fetch_state; - - when pulb_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- idle sp - left_ctrl <= sp_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - sp_ctrl <= latch_sp; - -- read accb - accb_ctrl <= pull_accb; - addr_ctrl <= pull_ad; - dout_ctrl <= accb_dout; - next_state <= fetch_state; - - when pshx_lo_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- decrement sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- write ix low - addr_ctrl <= push_ad; - dout_ctrl <= ix_lo_dout; - next_state <= pshx_hi_state; - - when pshx_hi_state => - -- default registers - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- decrement sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- write ix hi - addr_ctrl <= push_ad; - dout_ctrl <= ix_hi_dout; - next_state <= fetch_state; - - when pulx_hi_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- increment sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_add16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- pull ix hi - ix_ctrl <= pull_hi_ix; - addr_ctrl <= pull_ad; - dout_ctrl <= ix_hi_dout; - next_state <= pulx_lo_state; - - when pulx_lo_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- idle sp - left_ctrl <= sp_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - sp_ctrl <= latch_sp; - -- read ix low - ix_ctrl <= pull_lo_ix; - addr_ctrl <= pull_ad; - dout_ctrl <= ix_lo_dout; - next_state <= fetch_state; - - -- - -- return from interrupt - -- enter here from bogus interrupts - -- - when rti_state => - -- default registers - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- increment sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_add16; - sp_ctrl <= load_sp; - -- idle address bus - cc_ctrl <= latch_cc; - addr_ctrl <= idle_ad; - dout_ctrl <= cc_dout; - next_state <= rti_cc_state; - - when rti_cc_state => - -- default registers - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- increment sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_add16; - sp_ctrl <= load_sp; - -- read cc - cc_ctrl <= pull_cc; - addr_ctrl <= pull_ad; - dout_ctrl <= cc_dout; - next_state <= rti_accb_state; - - when rti_accb_state => - -- default registers - acca_ctrl <= latch_acca; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- increment sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_add16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- read accb - accb_ctrl <= pull_accb; - addr_ctrl <= pull_ad; - dout_ctrl <= accb_dout; - next_state <= rti_acca_state; - - when rti_acca_state => - -- default registers - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- increment sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_add16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- read acca - acca_ctrl <= pull_acca; - addr_ctrl <= pull_ad; - dout_ctrl <= acca_dout; - next_state <= rti_ixh_state; - - when rti_ixh_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- increment sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_add16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- read ix hi - ix_ctrl <= pull_hi_ix; - addr_ctrl <= pull_ad; - dout_ctrl <= ix_hi_dout; - next_state <= rti_ixl_state; - - when rti_ixl_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- increment sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_add16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- read ix low - ix_ctrl <= pull_lo_ix; - addr_ctrl <= pull_ad; - dout_ctrl <= ix_lo_dout; - next_state <= rti_pch_state; - - when rti_pch_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- increment sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_add16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- pull pc hi - pc_ctrl <= pull_hi_pc; - addr_ctrl <= pull_ad; - dout_ctrl <= pc_hi_dout; - next_state <= rti_pcl_state; - - when rti_pcl_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- idle sp - left_ctrl <= sp_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - sp_ctrl <= latch_sp; - -- pull pc low - pc_ctrl <= pull_lo_pc; - addr_ctrl <= pull_ad; - dout_ctrl <= pc_lo_dout; - next_state <= fetch_state; - - -- - -- here on interrupt - -- iv register hold interrupt type - -- - when int_pcl_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- decrement sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- write pc low - addr_ctrl <= push_ad; - dout_ctrl <= pc_lo_dout; - next_state <= int_pch_state; - - when int_pch_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- decrement sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- write pc hi - addr_ctrl <= push_ad; - dout_ctrl <= pc_hi_dout; - next_state <= int_ixl_state; - - when int_ixl_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- decrement sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- write ix low - addr_ctrl <= push_ad; - dout_ctrl <= ix_lo_dout; - next_state <= int_ixh_state; - - when int_ixh_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- decrement sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- write ix hi - addr_ctrl <= push_ad; - dout_ctrl <= ix_hi_dout; - next_state <= int_acca_state; - - when int_acca_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- decrement sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- write acca - addr_ctrl <= push_ad; - dout_ctrl <= acca_dout; - next_state <= int_accb_state; - - - when int_accb_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- decrement sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- write accb - addr_ctrl <= push_ad; - dout_ctrl <= accb_dout; - next_state <= int_cc_state; - - when int_cc_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- decrement sp - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_sub16; - cc_ctrl <= latch_cc; - sp_ctrl <= load_sp; - -- write cc - addr_ctrl <= push_ad; - dout_ctrl <= cc_dout; - nmi_ctrl <= latch_nmi; - -- - -- nmi is edge triggered - -- nmi_req is cleared when nmi goes low. - -- - if nmi_req = '1' then - iv_ctrl <= nmi_iv; - next_state <= vect_hi_state; - else - -- - -- IRQ is level sensitive - -- - if (irq = '1') and (cc(IBIT) = '0') then - iv_ctrl <= irq_iv; - next_state <= int_mask_state; - else - case op_code is - when "00111110" => -- WAI (wait for interrupt) - iv_ctrl <= latch_iv; - next_state <= int_wai_state; - when "00111111" => -- SWI (Software interrupt) - iv_ctrl <= swi_iv; - next_state <= vect_hi_state; - when others => -- bogus interrupt (return) - iv_ctrl <= latch_iv; - next_state <= rti_state; - end case; - end if; - end if; - - when int_wai_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - op_ctrl <= latch_op; - ea_ctrl <= latch_ea; - -- enable interrupts - left_ctrl <= sp_left; - right_ctrl <= plus_one_right; - alu_ctrl <= alu_cli; - cc_ctrl <= load_cc; - sp_ctrl <= latch_sp; - -- idle bus - addr_ctrl <= idle_ad; - dout_ctrl <= cc_dout; - if (nmi_req = '1') and (nmi_ack='0') then - iv_ctrl <= nmi_iv; - nmi_ctrl <= set_nmi; - next_state <= vect_hi_state; - else - -- - -- nmi request is not cleared until nmi input goes low - -- - if (nmi_req = '0') and (nmi_ack='1') then - nmi_ctrl <= reset_nmi; - else - nmi_ctrl <= latch_nmi; - end if; - -- - -- IRQ is level sensitive - -- - if (irq = '1') and (cc(IBIT) = '0') then - iv_ctrl <= irq_iv; - next_state <= int_mask_state; - else - iv_ctrl <= latch_iv; - next_state <= int_wai_state; - end if; - end if; - - when int_mask_state => - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- Mask IRQ - left_ctrl <= sp_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_sei; - cc_ctrl <= load_cc; - sp_ctrl <= latch_sp; - -- idle bus cycle - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - next_state <= vect_hi_state; - - when halt_state => -- halt CPU. - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- do nothing in ALU - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - -- idle bus cycle - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - if halt = '1' then - next_state <= halt_state; - else - next_state <= fetch_state; - end if; - - when others => -- error state halt on undefine states - -- default - acca_ctrl <= latch_acca; - accb_ctrl <= latch_accb; - ix_ctrl <= latch_ix; - sp_ctrl <= latch_sp; - pc_ctrl <= latch_pc; - md_ctrl <= latch_md; - iv_ctrl <= latch_iv; - op_ctrl <= latch_op; - nmi_ctrl <= latch_nmi; - ea_ctrl <= latch_ea; - -- do nothing in ALU - left_ctrl <= acca_left; - right_ctrl <= zero_right; - alu_ctrl <= alu_nop; - cc_ctrl <= latch_cc; - -- idle bus cycle - addr_ctrl <= idle_ad; - dout_ctrl <= md_lo_dout; - next_state <= error_state; - end case; -end process; - --------------------------------- --- --- state machine --- --------------------------------- - -change_state: process( clk, rst, state, hold ) -begin - if clk'event and clk = '0' then - if rst = '1' then - state <= reset_state; - elsif hold = '1' then - state <= state; - else - state <= next_state; - end if; - end if; -end process; - -- output - -end CPU_ARCH; diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/dac.vhd b/Soundboards_MiST/AS-2518-51_snd-master/rtl/dac.vhd deleted file mode 100644 index c133f074..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/dac.vhd +++ /dev/null @@ -1,71 +0,0 @@ -------------------------------------------------------------------------------- --- --- Delta-Sigma DAC --- --- $Id: dac.vhd,v 1.1 2006/05/10 20:57:06 arnim Exp $ --- --- Refer to Xilinx Application Note XAPP154. --- --- This DAC requires an external RC low-pass filter: --- --- dac_o 0---XXXXX---+---0 analog audio --- 3k3 | --- === 4n7 --- | --- GND --- -------------------------------------------------------------------------------- - -library ieee; -use ieee.std_logic_1164.all; - -entity dac is - - generic ( - msbi_g : integer := 7 - ); - port ( - clk_i : in std_logic; - res_n_i : in std_logic; - dac_i : in std_logic_vector(msbi_g downto 0); - dac_o : out std_logic - ); - -end dac; - -library ieee; -use ieee.numeric_std.all; - -architecture rtl of dac is - - signal DACout_q : std_logic; - signal DeltaAdder_s, - SigmaAdder_s, - SigmaLatch_q, - DeltaB_s : unsigned(msbi_g+2 downto 0); - -begin - - DeltaB_s(msbi_g+2 downto msbi_g+1) <= SigmaLatch_q(msbi_g+2) & - SigmaLatch_q(msbi_g+2); - DeltaB_s(msbi_g downto 0) <= (others => '0'); - - DeltaAdder_s <= unsigned('0' & '0' & dac_i) + DeltaB_s; - - SigmaAdder_s <= DeltaAdder_s + SigmaLatch_q; - - seq: process (clk_i, res_n_i) - begin - if res_n_i = '0' then - SigmaLatch_q <= to_unsigned(2**(msbi_g+1), SigmaLatch_q'length); - DACout_q <= '0'; - - elsif clk_i'event and clk_i = '1' then - SigmaLatch_q <= SigmaAdder_s; - DACout_q <= SigmaLatch_q(msbi_g+2); - end if; - end process seq; - - dac_o <= DACout_q; - -end rtl; diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/greybox_tmp/cbx_args.txt b/Soundboards_MiST/AS-2518-51_snd-master/rtl/greybox_tmp/cbx_args.txt deleted file mode 100644 index eaf4ac94..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/greybox_tmp/cbx_args.txt +++ /dev/null @@ -1,16 +0,0 @@ -ADDRESS_ACLR_A=NONE -CLOCK_ENABLE_INPUT_A=BYPASS -CLOCK_ENABLE_OUTPUT_A=BYPASS -INIT_FILE=./ROM/NitroGroundshaker.hex -INTENDED_DEVICE_FAMILY="Cyclone III" -NUMWORDS_A=2048 -OPERATION_MODE=ROM -OUTDATA_ACLR_A=NONE -OUTDATA_REG_A=UNREGISTERED -WIDTHAD_A=11 -WIDTH_A=8 -WIDTH_BYTEENA_A=1 -DEVICE_FAMILY="Cyclone III" -address_a -clock0 -q_a diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/m6810.vhd b/Soundboards_MiST/AS-2518-51_snd-master/rtl/m6810.vhd deleted file mode 100644 index 0c114032..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/m6810.vhd +++ /dev/null @@ -1,65 +0,0 @@ ------------------------------------------------------------------------ --- --- Copyright 2009-2011 ShareBrained Technology, Inc. --- --- This file is part of robotron-fpga. --- --- robotron-fpga 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. --- --- robotron-fpga 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 robotron-fpga. If not, see --- . --- ------------------------------------------------------------------------ - -library IEEE; - use IEEE.STD_LOGIC_1164.ALL; - use IEEE.NUMERIC_STD.ALL; - -entity m6810 is - Port ( clk : in std_logic; - rst : in std_logic; - address : in std_logic_vector (6 downto 0); - cs : in std_logic; - rw : in std_logic; - data_in : in std_logic_vector (7 downto 0); - data_out : out std_logic_vector (7 downto 0)); -end m6810; - -architecture rtl of m6810 is - subtype word_t is std_logic_vector(7 downto 0); - type memory_t is array(127 downto 0) of word_t; - - signal ram : memory_t; - signal address_reg : std_logic_vector(6 downto 0); - - signal we : std_logic; -begin - - process(clk) - begin - if( rising_edge(clk) ) then - if( we = '1' and cs = '1' ) then - ram(to_integer(unsigned(address))) <= data_in; - end if; - - address_reg <= address; - end if; - end process; - - we <= not rw; - - data_out <= ram(to_integer(unsigned(address))); - -end architecture rtl; - diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/minibd_top.vhd b/Soundboards_MiST/AS-2518-51_snd-master/rtl/minibd_top.vhd deleted file mode 100644 index 71efaf81..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/minibd_top.vhd +++ /dev/null @@ -1,144 +0,0 @@ -library ieee; -use ieee.std_logic_1164.all; -use ieee.std_logic_unsigned.all; - -entity minibd_top is -port( - CLOCK_27 : in std_logic; - SPI_SCK : in std_logic; - SPI_DO : out std_logic; - SPI_DI : in std_logic; - SPI_SS2 : in std_logic; - SPI_SS3 : in std_logic; - CONF_DATA0 : in std_logic; - LED : out std_logic; - AUDIO_L : out std_logic; - AUDIO_R : out std_logic - ); -end minibd_top; - -architecture rtl of minibd_top is --- Sound board signals -signal reset_l : std_logic; -signal ps2_clk : std_logic; -signal ps2_dat : std_logic; -signal cpu_clk : std_logic; -signal snd_ctl : std_logic_vector(7 downto 0); -signal audio : std_logic_vector(10 downto 0); - --- PS/2 interface signals -signal scanCode : std_logic_vector(9 downto 0); -signal send : std_logic; -signal Command : std_logic_vector(7 downto 0); -signal PS2Busy : std_logic; -signal PS2Error : std_logic; -signal dataByte : std_logic_vector(7 downto 0); -signal dataReady : std_logic; -signal buttons : std_logic_vector(1 downto 0); - -component mist_io generic(STRLEN : integer := 0 ); port -( - clk_sys : in std_logic; - SPI_SCK : in std_logic; - CONF_DATA0 : in std_logic; - SPI_SS2 : in std_logic; - SPI_DI : in std_logic; - SPI_DO : out std_logic; - buttons : out std_logic_vector(1 downto 0); - ps2_kbd_clk : out std_logic; - ps2_kbd_data : out std_logic - ); -end component mist_io; - -begin - -reset_l <= not buttons(1); -LED <= '1'; - -io: mist_io -port map( - clk_sys => CLOCK_27, - SPI_SCK => SPI_SCK, - CONF_DATA0 => CONF_DATA0, - SPI_SS2 => SPI_SS2, - SPI_DO => SPI_DO, - SPI_DI => SPI_DI, - buttons => buttons, - ps2_kbd_clk => ps2_clk, - ps2_kbd_data => ps2_dat - ); - -Core: entity work.AS_2518_51 -port map( - cpu_clk => cpu_clk, - reset_l => reset_l, - addr_i => snd_ctl(5 downto 0), - snd_int_i => not scancode(8), - test_sw_l => '1', - audio => audio - ); - -PLL: entity work.williams_snd_pll -port map( - areset => not reset_l, - inclk0 => CLOCK_27, - c0 => cpu_clk - ); - -keyboard: entity work.PS2Controller -port map( - Reset => not reset_l, - Clock => CLOCK_27, - PS2Clock => ps2_clk, - PS2Data => ps2_dat, - Send => send, - Command => command, - PS2Busy => ps2Busy, - PS2Error => ps2Error, - DataReady => dataReady, - DataByte => dataByte - ); - -decoder: entity work.KeyboardMapper -port map( - Clock => CLOCK_27, - Reset => not reset_l, - PS2Busy => ps2Busy, - PS2Error => ps2Error, - DataReady => dataReady, - DataByte => dataByte, - Send => send, - Command => command, - CodeReady => open, - ScanCode => scanCode - ); - -inputreg: process -begin - wait until rising_edge(CLOCK_27); - if scanCode(8) = '0' then - snd_ctl(5 downto 0) <= not scanCode(5 downto 0); - else - snd_ctl(5 downto 0) <= "111111"; - end if; -end process; - -snd_ctl(7 downto 6) <= "11"; - -Audio_DACl: entity work.dac -port map( - clk_i => CLOCK_27, - res_n_i => reset_l, - dac_i => audio(10 downto 3), - dac_o => AUDIO_L - ); - -Audio_DACr: entity work.dac -port map( - clk_i => CLOCK_27, - res_n_i => reset_l, - dac_i => audio(10 downto 3), - dac_o => AUDIO_R - ); - -end rtl; diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/mist_io.sv b/Soundboards_MiST/AS-2518-51_snd-master/rtl/mist_io.sv deleted file mode 100644 index dcc7ecde..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/mist_io.sv +++ /dev/null @@ -1,491 +0,0 @@ -// -// mist_io.v -// -// mist_io for the MiST board -// http://code.google.com/p/mist-board/ -// -// Copyright (c) 2014 Till Harbaum -// -// This source file is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published -// by the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This source file is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . -// -/////////////////////////////////////////////////////////////////////// - -// -// Use buffer to access SD card. It's time-critical part. -// Made module synchroneous with 2 clock domains: clk_sys and SPI_SCK -// (Sorgelig) -// -// for synchronous projects default value for PS2DIV is fine for any frequency of system clock. -// clk_ps2 = clk_sys/(PS2DIV*2) -// - -module mist_io #(parameter STRLEN=0, parameter PS2DIV=100) -( - - // parameter STRLEN and the actual length of conf_str have to match - input [(8*STRLEN)-1:0] conf_str, - - // Global clock. It should be around 100MHz (higher is better). - input clk_sys, - - // Global SPI clock from ARM. 24MHz - input SPI_SCK, - - input CONF_DATA0, - input SPI_SS2, - output SPI_DO, - input SPI_DI, - - output reg [7:0] joystick_0, - output reg [7:0] joystick_1, - output reg [15:0] joystick_analog_0, - output reg [15:0] joystick_analog_1, - output [1:0] buttons, - output [1:0] switches, - output scandoubler_disable, - output ypbpr, - - output reg [31:0] status, - - // SD config - input sd_conf, - input sd_sdhc, - output img_mounted, // signaling that new image has been mounted - output reg [31:0] img_size, // size of image in bytes - - // SD block level access - input [31:0] sd_lba, - input sd_rd, - input sd_wr, - output reg sd_ack, - output reg sd_ack_conf, - - // SD byte level access. Signals for 2-PORT altsyncram. - output reg [8:0] sd_buff_addr, - output reg [7:0] sd_buff_dout, - input [7:0] sd_buff_din, - output reg sd_buff_wr, - - // ps2 keyboard emulation - output ps2_kbd_clk, - output reg ps2_kbd_data, - output ps2_mouse_clk, - output reg ps2_mouse_data, - input ps2_caps_led, - - // ARM -> FPGA download - output reg ioctl_download = 0, // signal indicating an active download - output reg [7:0] ioctl_index, // menu index used to upload the file - output ioctl_wr, - output reg [23:0] ioctl_addr, - output reg [7:0] ioctl_dout -); - -reg [7:0] b_data; -reg [6:0] sbuf; -reg [7:0] cmd; -reg [2:0] bit_cnt; // counts bits 0-7 0-7 ... -reg [9:0] byte_cnt; // counts bytes -reg [7:0] but_sw; -reg [2:0] stick_idx; - -reg mount_strobe = 0; -assign img_mounted = mount_strobe; - -assign buttons = but_sw[1:0]; -assign switches = but_sw[3:2]; -assign scandoubler_disable = but_sw[4]; -assign ypbpr = but_sw[5]; - -wire [7:0] spi_dout = { sbuf, SPI_DI}; - -// this variant of user_io is for 8 bit cores (type == a4) only -wire [7:0] core_type = 8'ha4; - -// command byte read by the io controller -wire [7:0] sd_cmd = { 4'h5, sd_conf, sd_sdhc, sd_wr, sd_rd }; - -reg spi_do; -assign SPI_DO = CONF_DATA0 ? 1'bZ : spi_do; - -wire [7:0] kbd_led = { 2'b01, 4'b0000, ps2_caps_led, 1'b1}; - -// drive MISO only when transmitting core id -always@(negedge SPI_SCK) begin - if(!CONF_DATA0) begin - // first byte returned is always core type, further bytes are - // command dependent - if(byte_cnt == 0) begin - spi_do <= core_type[~bit_cnt]; - - end else begin - case(cmd) - // reading config string - 8'h14: begin - // returning a byte from string - if(byte_cnt < STRLEN + 1) spi_do <= conf_str[{STRLEN - byte_cnt,~bit_cnt}]; - else spi_do <= 0; - end - - // reading sd card status - 8'h16: begin - if(byte_cnt == 1) spi_do <= sd_cmd[~bit_cnt]; - else if((byte_cnt >= 2) && (byte_cnt < 6)) spi_do <= sd_lba[{5-byte_cnt, ~bit_cnt}]; - else spi_do <= 0; - end - - // reading sd card write data - 8'h18: - spi_do <= b_data[~bit_cnt]; - - // reading keyboard LED status - 8'h1f: - spi_do <= kbd_led[~bit_cnt]; - - default: - spi_do <= 0; - endcase - end - end -end - -reg b_wr2,b_wr3; -always @(negedge clk_sys) begin - b_wr3 <= b_wr2; - sd_buff_wr <= b_wr3; -end - -// SPI receiver -always@(posedge SPI_SCK or posedge CONF_DATA0) begin - - if(CONF_DATA0) begin - b_wr2 <= 0; - bit_cnt <= 0; - byte_cnt <= 0; - sd_ack <= 0; - sd_ack_conf <= 0; - end else begin - b_wr2 <= 0; - - sbuf <= spi_dout[6:0]; - bit_cnt <= bit_cnt + 1'd1; - if(bit_cnt == 5) begin - if (byte_cnt == 0) sd_buff_addr <= 0; - if((byte_cnt != 0) & (sd_buff_addr != 511)) sd_buff_addr <= sd_buff_addr + 1'b1; - if((byte_cnt == 1) & ((cmd == 8'h17) | (cmd == 8'h19))) sd_buff_addr <= 0; - end - - // finished reading command byte - if(bit_cnt == 7) begin - if(~&byte_cnt) byte_cnt <= byte_cnt + 8'd1; - if(byte_cnt == 0) begin - cmd <= spi_dout; - - if(spi_dout == 8'h19) begin - sd_ack_conf <= 1; - sd_buff_addr <= 0; - end - if((spi_dout == 8'h17) || (spi_dout == 8'h18)) begin - sd_ack <= 1; - sd_buff_addr <= 0; - end - if(spi_dout == 8'h18) b_data <= sd_buff_din; - - mount_strobe <= 0; - - end else begin - - case(cmd) - // buttons and switches - 8'h01: but_sw <= spi_dout; - 8'h02: joystick_0 <= spi_dout; - 8'h03: joystick_1 <= spi_dout; - - // store incoming ps2 mouse bytes - 8'h04: begin - ps2_mouse_fifo[ps2_mouse_wptr] <= spi_dout; - ps2_mouse_wptr <= ps2_mouse_wptr + 1'd1; - end - - // store incoming ps2 keyboard bytes - 8'h05: begin - ps2_kbd_fifo[ps2_kbd_wptr] <= spi_dout; - ps2_kbd_wptr <= ps2_kbd_wptr + 1'd1; - end - - 8'h15: status[7:0] <= spi_dout; - - // send SD config IO -> FPGA - // flag that download begins - // sd card knows data is config if sd_dout_strobe is asserted - // with sd_ack still being inactive (low) - 8'h19, - // send sector IO -> FPGA - // flag that download begins - 8'h17: begin - sd_buff_dout <= spi_dout; - b_wr2 <= 1; - end - - 8'h18: b_data <= sd_buff_din; - - // joystick analog - 8'h1a: begin - // first byte is joystick index - if(byte_cnt == 1) stick_idx <= spi_dout[2:0]; - else if(byte_cnt == 2) begin - // second byte is x axis - if(stick_idx == 0) joystick_analog_0[15:8] <= spi_dout; - else if(stick_idx == 1) joystick_analog_1[15:8] <= spi_dout; - end else if(byte_cnt == 3) begin - // third byte is y axis - if(stick_idx == 0) joystick_analog_0[7:0] <= spi_dout; - else if(stick_idx == 1) joystick_analog_1[7:0] <= spi_dout; - end - end - - // notify image selection - 8'h1c: mount_strobe <= 1; - - // send image info - 8'h1d: if(byte_cnt<5) img_size[(byte_cnt-1)<<3 +:8] <= spi_dout; - - // status, 32bit version - 8'h1e: if(byte_cnt<5) status[(byte_cnt-1)<<3 +:8] <= spi_dout; - default: ; - endcase - end - end - end -end - - -/////////////////////////////// PS2 /////////////////////////////// -// 8 byte fifos to store ps2 bytes -localparam PS2_FIFO_BITS = 3; - -reg clk_ps2; -always @(negedge clk_sys) begin - integer cnt; - cnt <= cnt + 1'd1; - if(cnt == PS2DIV) begin - clk_ps2 <= ~clk_ps2; - cnt <= 0; - end -end - -// keyboard -reg [7:0] ps2_kbd_fifo[1<= 1)&&(ps2_kbd_tx_state < 9)) begin - ps2_kbd_data <= ps2_kbd_tx_byte[0]; // data bits - ps2_kbd_tx_byte[6:0] <= ps2_kbd_tx_byte[7:1]; // shift down - if(ps2_kbd_tx_byte[0]) - ps2_kbd_parity <= !ps2_kbd_parity; - end - - // transmission of parity - if(ps2_kbd_tx_state == 9) ps2_kbd_data <= ps2_kbd_parity; - - // transmission of stop bit - if(ps2_kbd_tx_state == 10) ps2_kbd_data <= 1; // stop bit is 1 - - // advance state machine - if(ps2_kbd_tx_state < 11) ps2_kbd_tx_state <= ps2_kbd_tx_state + 1'd1; - else ps2_kbd_tx_state <= 0; - end - end -end - -// mouse -reg [7:0] ps2_mouse_fifo[1<= 1)&&(ps2_mouse_tx_state < 9)) begin - ps2_mouse_data <= ps2_mouse_tx_byte[0]; // data bits - ps2_mouse_tx_byte[6:0] <= ps2_mouse_tx_byte[7:1]; // shift down - if(ps2_mouse_tx_byte[0]) - ps2_mouse_parity <= !ps2_mouse_parity; - end - - // transmission of parity - if(ps2_mouse_tx_state == 9) ps2_mouse_data <= ps2_mouse_parity; - - // transmission of stop bit - if(ps2_mouse_tx_state == 10) ps2_mouse_data <= 1; // stop bit is 1 - - // advance state machine - if(ps2_mouse_tx_state < 11) ps2_mouse_tx_state <= ps2_mouse_tx_state + 1'd1; - else ps2_mouse_tx_state <= 0; - end - end -end - - -/////////////////////////////// DOWNLOADING /////////////////////////////// - -reg [7:0] data_w; -reg [23:0] addr_w; -reg rclk = 0; - -localparam UIO_FILE_TX = 8'h53; -localparam UIO_FILE_TX_DAT = 8'h54; -localparam UIO_FILE_INDEX = 8'h55; - -// data_io has its own SPI interface to the io controller -always@(posedge SPI_SCK, posedge SPI_SS2) begin - reg [6:0] sbuf; - reg [7:0] cmd; - reg [4:0] cnt; - reg [23:0] addr; - - if(SPI_SS2) cnt <= 0; - else begin - rclk <= 0; - - // don't shift in last bit. It is evaluated directly - // when writing to ram - if(cnt != 15) sbuf <= { sbuf[5:0], SPI_DI}; - - // increase target address after write - if(rclk) addr <= addr + 1'd1; - - // count 0-7 8-15 8-15 ... - if(cnt < 15) cnt <= cnt + 1'd1; - else cnt <= 8; - - // finished command byte - if(cnt == 7) cmd <= {sbuf, SPI_DI}; - - // prepare/end transmission - if((cmd == UIO_FILE_TX) && (cnt == 15)) begin - // prepare - if(SPI_DI) begin - addr <= 0; - ioctl_download <= 1; - end else begin - addr_w <= addr; - ioctl_download <= 0; - end - end - - // command 0x54: UIO_FILE_TX - if((cmd == UIO_FILE_TX_DAT) && (cnt == 15)) begin - addr_w <= addr; - data_w <= {sbuf, SPI_DI}; - rclk <= 1; - end - - // expose file (menu) index - if((cmd == UIO_FILE_INDEX) && (cnt == 15)) ioctl_index <= {sbuf, SPI_DI}; - end -end - -assign ioctl_wr = |ioctl_wrd; -reg [1:0] ioctl_wrd; - -always@(negedge clk_sys) begin - reg rclkD, rclkD2; - - rclkD <= rclk; - rclkD2 <= rclkD; - ioctl_wrd<= {ioctl_wrd[0],1'b0}; - - if(rclkD & ~rclkD2) begin - ioctl_dout <= data_w; - ioctl_addr <= addr_w; - ioctl_wrd <= 2'b11; - end -end - -endmodule diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/pia6821.vhd b/Soundboards_MiST/AS-2518-51_snd-master/rtl/pia6821.vhd deleted file mode 100644 index 6a403356..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/pia6821.vhd +++ /dev/null @@ -1,534 +0,0 @@ ---===========================================================================-- --- --- S Y N T H E Z I A B L E I/O Port C O R E --- --- www.OpenCores.Org - May 2004 --- This core adheres to the GNU public license --- --- File name : pia6821.vhd --- --- Purpose : Implements 2 x 8 bit parallel I/O ports --- with programmable data direction registers --- --- Dependencies : ieee.Std_Logic_1164 --- ieee.std_logic_unsigned --- --- Author : John E. Kent --- ---===========================================================================---- --- --- Revision History: --- --- Date: Revision Author --- 1 May 2004 0.0 John Kent --- Initial version developed from ioport.vhd --- ---===========================================================================---- --- --- Memory Map --- --- IO + $00 - Port A Data & Direction register --- IO + $01 - Port A Control register --- IO + $02 - Port B Data & Direction Direction Register --- IO + $03 - Port B Control Register --- - -library ieee; -use ieee.std_logic_1164.all; -use ieee.std_logic_unsigned.all; - -entity pia6821 is - port ( - clk : in std_logic; - rst : in std_logic; - cs : in std_logic; - rw : in std_logic; - addr : in std_logic_vector(1 downto 0); - data_in : in std_logic_vector(7 downto 0); - data_out : out std_logic_vector(7 downto 0); - irqa : out std_logic; - irqb : out std_logic; - pa_i : in std_logic_vector(7 downto 0); - pa_o : out std_logic_vector(7 downto 0); - ca1 : in std_logic; - ca2_i : in std_logic; - ca2_o : out std_logic; - pb_i : in std_logic_vector(7 downto 0); - pb_o : out std_logic_vector(7 downto 0); - cb1 : in std_logic; - cb2_i : in std_logic; - cb2_o : out std_logic - ); -end; - -architecture pia_arch of pia6821 is - -signal porta_ddr : std_logic_vector(7 downto 0); -signal porta_data : std_logic_vector(7 downto 0); -signal porta_ctrl : std_logic_vector(5 downto 0); -signal porta_read : std_logic; - -signal portb_ddr : std_logic_vector(7 downto 0); -signal portb_data : std_logic_vector(7 downto 0); -signal portb_ctrl : std_logic_vector(5 downto 0); -signal portb_read : std_logic; -signal portb_write : std_logic; - -signal ca1_del : std_logic; -signal ca1_rise : std_logic; -signal ca1_fall : std_logic; -signal ca1_edge : std_logic; -signal irqa1 : std_logic; - -signal ca2_del : std_logic; -signal ca2_rise : std_logic; -signal ca2_fall : std_logic; -signal ca2_edge : std_logic; -signal irqa2 : std_logic; -signal ca2_out : std_logic; - -signal cb1_del : std_logic; -signal cb1_rise : std_logic; -signal cb1_fall : std_logic; -signal cb1_edge : std_logic; -signal irqb1 : std_logic; - -signal cb2_del : std_logic; -signal cb2_rise : std_logic; -signal cb2_fall : std_logic; -signal cb2_edge : std_logic; -signal irqb2 : std_logic; -signal cb2_out : std_logic; - -begin - --------------------------------- --- --- read I/O port --- --------------------------------- - -pia_read : process( addr, cs, - irqa1, irqa2, irqb1, irqb2, - porta_ddr, portb_ddr, - porta_data, portb_data, - porta_ctrl, portb_ctrl, - pa_i, pb_i ) -variable count : integer; -begin - case addr is - when "00" => - for count in 0 to 7 loop - if porta_ctrl(2) = '0' then - data_out(count) <= porta_ddr(count); - porta_read <= '0'; - else - if porta_ddr(count) = '1' then - data_out(count) <= porta_data(count); - else - data_out(count) <= pa_i(count); - end if; - porta_read <= cs; - end if; - end loop; - portb_read <= '0'; - - when "01" => - data_out <= irqa1 & irqa2 & porta_ctrl; - porta_read <= '0'; - portb_read <= '0'; - - when "10" => - for count in 0 to 7 loop - if portb_ctrl(2) = '0' then - data_out(count) <= portb_ddr(count); - portb_read <= '0'; - else - if portb_ddr(count) = '1' then - data_out(count) <= portb_data(count); - else - data_out(count) <= pb_i(count); - end if; - portb_read <= cs; - end if; - end loop; - porta_read <= '0'; - - when "11" => - data_out <= irqb1 & irqb2 & portb_ctrl; - porta_read <= '0'; - portb_read <= '0'; - - when others => - data_out <= "00000000"; - porta_read <= '0'; - portb_read <= '0'; - - end case; -end process; - ---------------------------------- --- --- Write I/O ports --- ---------------------------------- - -pia_write : process( clk, rst, addr, cs, rw, data_in, - porta_ctrl, portb_ctrl, - porta_data, portb_data, - porta_ctrl, portb_ctrl, - porta_ddr, portb_ddr ) -begin - if rst = '1' then - porta_ddr <= "00000000"; - porta_data <= "00000000"; - porta_ctrl <= "000000"; - portb_ddr <= "00000000"; - portb_data <= "00000000"; - portb_ctrl <= "000000"; - portb_write <= '0'; - elsif clk'event and clk = '1' then - if cs = '1' and rw = '0' then - case addr is - when "00" => - if porta_ctrl(2) = '0' then - porta_ddr <= data_in; - porta_data <= porta_data; - else - porta_ddr <= porta_ddr; - porta_data <= data_in; - end if; - porta_ctrl <= porta_ctrl; - portb_ddr <= portb_ddr; - portb_data <= portb_data; - portb_ctrl <= portb_ctrl; - portb_write <= '0'; - when "01" => - porta_ddr <= porta_ddr; - porta_data <= porta_data; - porta_ctrl <= data_in(5 downto 0); - portb_ddr <= portb_ddr; - portb_data <= portb_data; - portb_ctrl <= portb_ctrl; - portb_write <= '0'; - when "10" => - porta_ddr <= porta_ddr; - porta_data <= porta_data; - porta_ctrl <= porta_ctrl; - if portb_ctrl(2) = '0' then - portb_ddr <= data_in; - portb_data <= portb_data; - portb_write <= '0'; - else - portb_ddr <= portb_ddr; - portb_data <= data_in; - portb_write <= '1'; - end if; - portb_ctrl <= portb_ctrl; - when "11" => - porta_ddr <= porta_ddr; - porta_data <= porta_data; - porta_ctrl <= porta_ctrl; - portb_ddr <= portb_ddr; - portb_data <= portb_data; - portb_ctrl <= data_in(5 downto 0); - portb_write <= '0'; - when others => - porta_ddr <= porta_ddr; - porta_data <= porta_data; - porta_ctrl <= porta_ctrl; - portb_ddr <= portb_ddr; - portb_data <= portb_data; - portb_ctrl <= portb_ctrl; - portb_write <= '0'; - end case; - else - porta_ddr <= porta_ddr; - porta_data <= porta_data; - porta_ctrl <= porta_ctrl; - portb_data <= portb_data; - portb_ddr <= portb_ddr; - portb_ctrl <= portb_ctrl; - portb_write <= '0'; - end if; - end if; -end process; - ---------------------------------- --- --- direction control port a --- ---------------------------------- -porta_direction : process ( porta_data, porta_ddr ) -variable count : integer; -begin - for count in 0 to 7 loop - if porta_ddr(count) = '1' then - pa_o(count) <= porta_data(count); - else - pa_o(count) <= 'Z'; - end if; - end loop; -end process; - ---------------------------------- --- --- CA1 Edge detect --- ---------------------------------- -ca1_input : process( clk, rst, ca1, ca1_del, - ca1_rise, ca1_fall, ca1_edge, - irqa1, porta_ctrl, porta_read ) -begin - if rst = '1' then - ca1_del <= '0'; - ca1_rise <= '0'; - ca1_fall <= '0'; - ca1_edge <= '0'; - irqa1 <= '0'; - elsif clk'event and clk = '0' then - ca1_del <= ca1; - ca1_rise <= (not ca1_del) and ca1; - ca1_fall <= ca1_del and (not ca1); - if ca1_edge = '1' then - irqa1 <= '1'; - elsif porta_read = '1' then - irqa1 <= '0'; - else - irqa1 <= irqa1; - end if; - end if; - - if porta_ctrl(1) = '0' then - ca1_edge <= ca1_fall; - else - ca1_edge <= ca1_rise; - end if; -end process; - ---------------------------------- --- --- CA2 Edge detect --- ---------------------------------- -ca2_input : process( clk, rst, ca2_i, ca2_del, - ca2_rise, ca2_fall, ca2_edge, - irqa2, porta_ctrl, porta_read ) -begin - if rst = '1' then - ca2_del <= '0'; - ca2_rise <= '0'; - ca2_fall <= '0'; - ca2_edge <= '0'; - irqa2 <= '0'; - elsif clk'event and clk = '0' then - ca2_del <= ca2_i; - ca2_rise <= (not ca2_del) and ca2_i; - ca2_fall <= ca2_del and (not ca2_i); - if porta_ctrl(5) = '0' and ca2_edge = '1' then - irqa2 <= '1'; - elsif porta_read = '1' then - irqa2 <= '0'; - else - irqa2 <= irqa2; - end if; - end if; - - if porta_ctrl(4) = '0' then - ca2_edge <= ca2_fall; - else - ca2_edge <= ca2_rise; - end if; -end process; - ---------------------------------- --- --- CA2 output control --- ---------------------------------- -ca2_output : process( clk, rst, porta_ctrl, porta_read, ca1_edge, ca2_out ) -begin - if rst='1' then - ca2_out <= '0'; - elsif clk'event and clk='0' then - case porta_ctrl(5 downto 3) is - when "100" => -- read PA clears, CA1 edge sets - if porta_read = '1' then - ca2_out <= '0'; - elsif ca1_edge = '1' then - ca2_out <= '1'; - else - ca2_out <= ca2_out; - end if; - when "101" => -- read PA clears, E sets - ca2_out <= not porta_read; - when "110" => -- set low - ca2_out <= '0'; - when "111" => -- set high - ca2_out <= '1'; - when others => -- no change - ca2_out <= ca2_out; - end case; - end if; -end process; - ---------------------------------- --- --- CA2 direction control --- ---------------------------------- -ca2_direction : process( porta_ctrl, ca2_out ) -begin - if porta_ctrl(5) = '0' then - ca2_o <= 'Z'; - else - ca2_o <= ca2_out; - end if; -end process; - ---------------------------------- --- --- direction control port b --- ---------------------------------- -portb_direction : process ( portb_data, portb_ddr ) -variable count : integer; -begin - for count in 0 to 7 loop - if portb_ddr(count) = '1' then - pb_o(count) <= portb_data(count); - else - pb_o(count) <= 'Z'; - end if; - end loop; -end process; - ---------------------------------- --- --- CB1 Edge detect --- ---------------------------------- -cb1_input : process( clk, rst, cb1, cb1_del, - cb1_rise, cb1_fall, cb1_edge, - irqb1, portb_ctrl, portb_read ) -begin - if rst = '1' then - cb1_del <= '0'; - cb1_rise <= '0'; - cb1_fall <= '0'; - cb1_edge <= '0'; - irqb1 <= '0'; - elsif clk'event and clk = '0' then - cb1_del <= cb1; - cb1_rise <= (not cb1_del) and cb1; - cb1_fall <= cb1_del and (not cb1); - if cb1_edge = '1' then - irqb1 <= '1'; - elsif portb_read = '1' then - irqb1 <= '0'; - else - irqb1 <= irqb1; - end if; - end if; - - if portb_ctrl(1) = '0' then - cb1_edge <= cb1_fall; - else - cb1_edge <= cb1_rise; - end if; -end process; - ---------------------------------- --- --- CB2 Edge detect --- ---------------------------------- -cb2_input : process( clk, rst, cb2_i, cb2_del, - cb2_rise, cb2_fall, cb2_edge, - irqb2, portb_ctrl, portb_read ) -begin - if rst = '1' then - cb2_del <= '0'; - cb2_rise <= '0'; - cb2_fall <= '0'; - cb2_edge <= '0'; - irqb2 <= '0'; - elsif clk'event and clk = '0' then - cb2_del <= cb2_i; - cb2_rise <= (not cb2_del) and cb2_i; - cb2_fall <= cb2_del and (not cb2_i); - if portb_ctrl(5) = '0' and cb2_edge = '1' then - irqb2 <= '1'; - elsif portb_read = '1' then - irqb2 <= '0'; - else - irqb2 <= irqb2; - end if; - end if; - - if portb_ctrl(4) = '0' then - cb2_edge <= cb2_fall; - else - cb2_edge <= cb2_rise; - end if; - -end process; - ---------------------------------- --- --- CB2 output control --- ---------------------------------- -cb2_output : process( clk, rst, portb_ctrl, portb_write, cb1_edge, cb2_out ) -begin - if rst='1' then - cb2_out <= '0'; - elsif clk'event and clk='0' then - case portb_ctrl(5 downto 3) is - when "100" => -- write PB clears, CA1 edge sets - if portb_write = '1' then - cb2_out <= '0'; - elsif cb1_edge = '1' then - cb2_out <= '1'; - else - cb2_out <= cb2_out; - end if; - when "101" => -- write PB clears, E sets - cb2_out <= not portb_write; - when "110" => -- set low - cb2_out <= '0'; - when "111" => -- set high - cb2_out <= '1'; - when others => -- no change - cb2_out <= cb2_out; - end case; - end if; -end process; - ---------------------------------- --- --- CB2 direction control --- ---------------------------------- -cb2_direction : process( portb_ctrl, cb2_out ) -begin - if portb_ctrl(5) = '0' then - cb2_o <= 'Z'; - else - cb2_o <= cb2_out; - end if; -end process; - ---------------------------------- --- --- IRQ control --- ---------------------------------- -pia_irq : process( irqa1, irqa2, irqb1, irqb2, porta_ctrl, portb_ctrl ) -begin - irqa <= (irqa1 and porta_ctrl(0)) or (irqa2 and porta_ctrl(3)); - irqb <= (irqb1 and portb_ctrl(0)) or (irqb2 and portb_ctrl(3)); -end process; - -end pia_arch; - diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/williams_snd_pll.qip b/Soundboards_MiST/AS-2518-51_snd-master/rtl/williams_snd_pll.qip deleted file mode 100644 index 7c22c6f7..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/williams_snd_pll.qip +++ /dev/null @@ -1,4 +0,0 @@ -set_global_assignment -name IP_TOOL_NAME "ALTPLL" -set_global_assignment -name IP_TOOL_VERSION "13.1" -set_global_assignment -name VHDL_FILE [file join $::quartus(qip_path) "williams_snd_pll.vhd"] -set_global_assignment -name MISC_FILE [file join $::quartus(qip_path) "williams_snd_pll.ppf"] diff --git a/Soundboards_MiST/AS-2518-51_snd-master/rtl/williams_snd_pll.vhd b/Soundboards_MiST/AS-2518-51_snd-master/rtl/williams_snd_pll.vhd deleted file mode 100644 index 3162a251..00000000 --- a/Soundboards_MiST/AS-2518-51_snd-master/rtl/williams_snd_pll.vhd +++ /dev/null @@ -1,355 +0,0 @@ --- megafunction wizard: %ALTPLL% --- GENERATION: STANDARD --- VERSION: WM1.0 --- MODULE: altpll - --- ============================================================ --- File Name: williams_snd_pll.vhd --- 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. - - -LIBRARY ieee; -USE ieee.std_logic_1164.all; - -LIBRARY altera_mf; -USE altera_mf.all; - -ENTITY williams_snd_pll IS - PORT - ( - areset : IN STD_LOGIC := '0'; - inclk0 : IN STD_LOGIC := '0'; - c0 : OUT STD_LOGIC - ); -END williams_snd_pll; - - -ARCHITECTURE SYN OF williams_snd_pll IS - - SIGNAL sub_wire0 : STD_LOGIC_VECTOR (4 DOWNTO 0); - SIGNAL sub_wire1 : STD_LOGIC ; - SIGNAL sub_wire2 : STD_LOGIC ; - SIGNAL sub_wire3 : STD_LOGIC_VECTOR (1 DOWNTO 0); - SIGNAL sub_wire4_bv : BIT_VECTOR (0 DOWNTO 0); - SIGNAL sub_wire4 : STD_LOGIC_VECTOR (0 DOWNTO 0); - - - - COMPONENT altpll - GENERIC ( - bandwidth_type : STRING; - clk0_divide_by : NATURAL; - clk0_duty_cycle : NATURAL; - clk0_multiply_by : NATURAL; - clk0_phase_shift : STRING; - compensate_clock : STRING; - inclk0_input_frequency : NATURAL; - intended_device_family : STRING; - lpm_hint : STRING; - lpm_type : STRING; - operation_mode : STRING; - pll_type : STRING; - port_activeclock : STRING; - port_areset : STRING; - port_clkbad0 : STRING; - port_clkbad1 : STRING; - port_clkloss : STRING; - port_clkswitch : STRING; - port_configupdate : STRING; - port_fbin : STRING; - port_inclk0 : STRING; - port_inclk1 : STRING; - port_locked : STRING; - port_pfdena : STRING; - port_phasecounterselect : STRING; - port_phasedone : STRING; - port_phasestep : STRING; - port_phaseupdown : STRING; - port_pllena : STRING; - port_scanaclr : STRING; - port_scanclk : STRING; - port_scanclkena : STRING; - port_scandata : STRING; - port_scandataout : STRING; - port_scandone : STRING; - port_scanread : STRING; - port_scanwrite : STRING; - port_clk0 : STRING; - port_clk1 : STRING; - port_clk2 : STRING; - port_clk3 : STRING; - port_clk4 : STRING; - port_clk5 : STRING; - port_clkena0 : STRING; - port_clkena1 : STRING; - port_clkena2 : STRING; - port_clkena3 : STRING; - port_clkena4 : STRING; - port_clkena5 : STRING; - port_extclk0 : STRING; - port_extclk1 : STRING; - port_extclk2 : STRING; - port_extclk3 : STRING; - width_clock : NATURAL - ); - PORT ( - areset : IN STD_LOGIC ; - clk : OUT STD_LOGIC_VECTOR (4 DOWNTO 0); - inclk : IN STD_LOGIC_VECTOR (1 DOWNTO 0) - ); - END COMPONENT; - -BEGIN - sub_wire4_bv(0 DOWNTO 0) <= "0"; - sub_wire4 <= To_stdlogicvector(sub_wire4_bv); - sub_wire1 <= sub_wire0(0); - c0 <= sub_wire1; - sub_wire2 <= inclk0; - sub_wire3 <= sub_wire4(0 DOWNTO 0) & sub_wire2; - - altpll_component : altpll - GENERIC MAP ( - bandwidth_type => "AUTO", - clk0_divide_by => 1350, - clk0_duty_cycle => 50, - clk0_multiply_by => 179, - clk0_phase_shift => "0", - compensate_clock => "CLK0", - inclk0_input_frequency => 37037, - intended_device_family => "Cyclone III", - lpm_hint => "CBX_MODULE_PREFIX=williams_snd_pll", - lpm_type => "altpll", - operation_mode => "NORMAL", - pll_type => "AUTO", - port_activeclock => "PORT_UNUSED", - port_areset => "PORT_USED", - port_clkbad0 => "PORT_UNUSED", - port_clkbad1 => "PORT_UNUSED", - port_clkloss => "PORT_UNUSED", - port_clkswitch => "PORT_UNUSED", - port_configupdate => "PORT_UNUSED", - port_fbin => "PORT_UNUSED", - port_inclk0 => "PORT_USED", - port_inclk1 => "PORT_UNUSED", - port_locked => "PORT_UNUSED", - port_pfdena => "PORT_UNUSED", - port_phasecounterselect => "PORT_UNUSED", - port_phasedone => "PORT_UNUSED", - port_phasestep => "PORT_UNUSED", - port_phaseupdown => "PORT_UNUSED", - port_pllena => "PORT_UNUSED", - port_scanaclr => "PORT_UNUSED", - port_scanclk => "PORT_UNUSED", - port_scanclkena => "PORT_UNUSED", - port_scandata => "PORT_UNUSED", - port_scandataout => "PORT_UNUSED", - port_scandone => "PORT_UNUSED", - port_scanread => "PORT_UNUSED", - port_scanwrite => "PORT_UNUSED", - port_clk0 => "PORT_USED", - port_clk1 => "PORT_UNUSED", - port_clk2 => "PORT_UNUSED", - port_clk3 => "PORT_UNUSED", - port_clk4 => "PORT_UNUSED", - port_clk5 => "PORT_UNUSED", - port_clkena0 => "PORT_UNUSED", - port_clkena1 => "PORT_UNUSED", - port_clkena2 => "PORT_UNUSED", - port_clkena3 => "PORT_UNUSED", - port_clkena4 => "PORT_UNUSED", - port_clkena5 => "PORT_UNUSED", - port_extclk0 => "PORT_UNUSED", - port_extclk1 => "PORT_UNUSED", - port_extclk2 => "PORT_UNUSED", - port_extclk3 => "PORT_UNUSED", - width_clock => 5 - ) - PORT MAP ( - areset => areset, - inclk => sub_wire3, - clk => sub_wire0 - ); - - - -END SYN; - --- ============================================================ --- CNX file retrieval info --- ============================================================ --- Retrieval info: PRIVATE: ACTIVECLK_CHECK STRING "0" --- Retrieval info: PRIVATE: BANDWIDTH STRING "1.000" --- Retrieval info: PRIVATE: BANDWIDTH_FEATURE_ENABLED STRING "1" --- Retrieval info: PRIVATE: BANDWIDTH_FREQ_UNIT STRING "MHz" --- Retrieval info: PRIVATE: BANDWIDTH_PRESET STRING "Low" --- Retrieval info: PRIVATE: BANDWIDTH_USE_AUTO STRING "1" --- Retrieval info: PRIVATE: BANDWIDTH_USE_PRESET STRING "0" --- Retrieval info: PRIVATE: CLKBAD_SWITCHOVER_CHECK STRING "0" --- Retrieval info: PRIVATE: CLKLOSS_CHECK STRING "0" --- Retrieval info: PRIVATE: CLKSWITCH_CHECK STRING "1" --- 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 "1350" --- Retrieval info: PRIVATE: DUTY_CYCLE0 STRING "50.00000000" --- Retrieval info: PRIVATE: EFF_OUTPUT_FREQ_VALUE0 STRING "3.580000" --- 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 "0" --- 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: MIG_DEVICE_SPEED_GRADE STRING "Any" --- Retrieval info: PRIVATE: MIRROR_CLK0 STRING "0" --- Retrieval info: PRIVATE: MULT_FACTOR0 NUMERIC "179" --- Retrieval info: PRIVATE: NORMAL_MODE_RADIO STRING "1" --- Retrieval info: PRIVATE: OUTPUT_FREQ0 STRING "3.58000000" --- Retrieval info: PRIVATE: OUTPUT_FREQ_MODE0 STRING "0" --- Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT0 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_SHIFT_STEP_ENABLED_CHECK STRING "0" --- Retrieval info: PRIVATE: PHASE_SHIFT_UNIT0 STRING "deg" --- Retrieval info: PRIVATE: PLL_ADVANCED_PARAM_CHECK STRING "0" --- Retrieval info: PRIVATE: PLL_ARESET_CHECK STRING "1" --- Retrieval info: PRIVATE: PLL_AUTOPLL_CHECK NUMERIC "1" --- Retrieval info: PRIVATE: PLL_ENHPLL_CHECK NUMERIC "0" --- Retrieval info: PRIVATE: PLL_FASTPLL_CHECK NUMERIC "0" --- Retrieval info: PRIVATE: PLL_FBMIMIC_CHECK STRING "0" --- Retrieval info: PRIVATE: PLL_LVDS_PLL_CHECK NUMERIC "0" --- Retrieval info: PRIVATE: PLL_PFDENA_CHECK STRING "0" --- Retrieval info: PRIVATE: PLL_TARGET_HARCOPY_CHECK NUMERIC "0" --- Retrieval info: PRIVATE: PRIMARY_CLK_COMBO STRING "inclk0" --- Retrieval info: PRIVATE: RECONFIG_FILE STRING "williams_snd_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: 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_CLKENA0 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 "1350" --- Retrieval info: CONSTANT: CLK0_DUTY_CYCLE NUMERIC "50" --- Retrieval info: CONSTANT: CLK0_MULTIPLY_BY NUMERIC "179" --- Retrieval info: CONSTANT: CLK0_PHASE_SHIFT STRING "0" --- Retrieval info: CONSTANT: COMPENSATE_CLOCK STRING "CLK0" --- Retrieval info: CONSTANT: INCLK0_INPUT_FREQUENCY NUMERIC "37037" --- Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone III" --- Retrieval info: CONSTANT: LPM_TYPE STRING "altpll" --- Retrieval info: CONSTANT: OPERATION_MODE STRING "NORMAL" --- Retrieval info: CONSTANT: PLL_TYPE STRING "AUTO" --- Retrieval info: CONSTANT: PORT_ACTIVECLOCK STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_ARESET STRING "PORT_USED" --- Retrieval info: CONSTANT: PORT_CLKBAD0 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_CLKBAD1 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_CLKLOSS STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_CLKSWITCH STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_CONFIGUPDATE STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_FBIN STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_INCLK0 STRING "PORT_USED" --- Retrieval info: CONSTANT: PORT_INCLK1 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_LOCKED STRING "PORT_UNUSED" --- 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_UNUSED" --- Retrieval info: CONSTANT: PORT_clk2 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_clk3 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_clk4 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_clk5 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_clkena0 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_clkena1 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_clkena2 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_clkena3 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_clkena4 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_clkena5 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_extclk0 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_extclk1 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_extclk2 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: PORT_extclk3 STRING "PORT_UNUSED" --- Retrieval info: CONSTANT: WIDTH_CLOCK NUMERIC "5" --- Retrieval info: USED_PORT: @clk 0 0 5 0 OUTPUT_CLK_EXT VCC "@clk[4..0]" --- Retrieval info: USED_PORT: @inclk 0 0 2 0 INPUT_CLK_EXT VCC "@inclk[1..0]" --- Retrieval info: USED_PORT: areset 0 0 0 0 INPUT GND "areset" --- Retrieval info: USED_PORT: c0 0 0 0 0 OUTPUT_CLK_EXT VCC "c0" --- Retrieval info: USED_PORT: inclk0 0 0 0 0 INPUT_CLK_EXT GND "inclk0" --- Retrieval info: CONNECT: @areset 0 0 0 0 areset 0 0 0 0 --- Retrieval info: CONNECT: @inclk 0 0 1 1 GND 0 0 0 0 --- Retrieval info: CONNECT: @inclk 0 0 1 0 inclk0 0 0 0 0 --- Retrieval info: CONNECT: c0 0 0 0 0 @clk 0 0 1 0 --- Retrieval info: GEN_FILE: TYPE_NORMAL williams_snd_pll.vhd TRUE --- Retrieval info: GEN_FILE: TYPE_NORMAL williams_snd_pll.ppf TRUE --- Retrieval info: GEN_FILE: TYPE_NORMAL williams_snd_pll.inc FALSE --- Retrieval info: GEN_FILE: TYPE_NORMAL williams_snd_pll.cmp FALSE --- Retrieval info: GEN_FILE: TYPE_NORMAL williams_snd_pll.bsf FALSE --- Retrieval info: GEN_FILE: TYPE_NORMAL williams_snd_pll_inst.vhd FALSE --- Retrieval info: LIB_FILE: altera_mf --- Retrieval info: CBX_MODULE_PREFIX: ON diff --git a/common/Intel8080/vm80a.v b/common/Intel8080/vm80a.v new file mode 100644 index 00000000..f44fe144 --- /dev/null +++ b/common/Intel8080/vm80a.v @@ -0,0 +1,891 @@ + + +module vm80a_core +( + input pin_clk, // global module clock (no in original 8080) + input pin_f1, // clock phase 1 (used as clock enable) + input pin_f2, // clock phase 2 (used as clock enable) + input pin_reset, // module reset + output[15:0] pin_a, // address bus outputs + output[7:0] pin_dout, // data bus output + input [7:0] pin_din, // data bus input + output pin_aena, // address outputs enable + output pin_dena, // data outputs enable + input pin_hold, // + output pin_hlda, // + input pin_ready, // + output pin_wait, // + input pin_int, // + output pin_inte, // + output pin_sync, // + output pin_dbin, // + output pin_wr_n +); + +//______________________________________________________________________________ +// +wire [7:0] d; +reg [7:0] db, di; +reg [15:0] a; +wire clk, f1, f2; +reg abufena, db_ena, db_stb, dbin_pin, dbinf2; +reg reset; +wire ready; +wire dbin_ext; + +reg t851, t404, t382, t383, t712, t735, t773; +reg hold, hlda_pin; +wire hlda, h889; + +reg wr_n, t1124, t1011, sync; +wire ready_int; + +reg [15:0] r16_pc, r16_hl, r16_de, r16_bc, r16_sp, r16_wz, mxo; +wire [15:0] mxi; +wire mxr0, mxr1, mxr2, mxr3, mxr4, mxr5; +wire mxwh, mxwl, mxrh, mxrl, mxw16, mxwadr; +wire dec16, inc16, iad16; +reg xchg_dh, xchg_tt, t3144; +wire t1460, t1467, t1513, t1514, t1519; + +wire sy_inta, sy_wo_n, sy_hlta, sy_out, sy_m1, sy_inp, sy_memr; +reg sy_stack; + +wire thalt, twt2; +reg t1, t2, tw, t3, t4, t5; +reg t1f1, t2f1, twf1, t3f1, t4f1, t5f1; +reg m1, m2, m3, m4, m5; +reg m1f1, m2f1, m3f1, m4f1, m5f1; + +wire start, ms0, ms1, m836, m839, m871; +reg eom, t789, t887, t953, t976, t980; + +reg intr, inta, inte, mstart, minta; +wire irq; + +reg [7:0] i; +reg i25, i14, i03; +wire imx, acc_sel; +wire id_op, id_io, id_in, id_popsw, id_pupsw, + id_nop, id_lxi, id_inx, id_inr, id_dcr, id_idr, id_mvi, id_dad, + id_dcx, id_opa, id_idm, id_hlt, id_mov, id_opm, id_pop, id_rst, + id_cxx, id_jxx, id_rxx, id_ret, id_jmp, id_opi, id_out, id_11x, + id_rlc, id_rxc, id_rar, id_sha, id_daa, id_cma, id_stc, id_cmc, + id_add, id_adc, id_sub, id_sbb, id_ana, id_xra, id_ora, id_cmp, + id_lsax, id_mvim, id_shld, id_lhld, id_mvmr, id_mvrm, id_push, + id_xthl, id_sphl, id_pchl, id_xchg, id_call, id_eidi, id_stlda; + +wire id80, id81, id82, id83, id84, id85, id86, id00, id01, + id02, id03, id04, id05, id06, id07, id08, id09, id10; +wire goto, jmpflag; +reg jmptake, tree0, tree1, tree2; +reg t2806, t2817, t2819, t3047, t2998, t3363, t3403, t3335, t3361; + +reg [7:0] xr, r, acc; +wire [7:0] x, s, c; +wire cl, ch, daa, daa_6x, daa_x6; +wire a398; +reg a327, a357, a358; +wire alu_xout, alu_xwr, alu_xrd, alu_ald, alu_awr, alu_ard, + alu_rld, alu_r00, alu_rwr, alu_srd, alu_zrd, alu_frd; + +reg psw_z, psw_s, psw_p, psw_c, psw_ac, tmp_c; +reg t2222, t1375, t1497, t1698, t1668, t1780, t1993, t1994; +reg psw_ld, psw_wr, t2046, t2133, t2175; + +//_____________________________________________________________________________ +// +assign clk = pin_clk; +assign f1 = pin_f1; +assign f2 = pin_f2; + +assign pin_a = a; +assign pin_aena = abufena; +assign pin_dout = db; +assign pin_dena = db_ena; + +assign dbin_ext = dbinf2; +assign d[7] = ~reset & ~alu_zrd & + ( dbin_ext & di[7] + | mxrl & mxo[7] + | mxrh & mxo[15] + | t1f1 & sy_memr + | alu_xrd & xr[7] + | alu_ard & acc[7] + | alu_frd & psw_s + | alu_srd & s[7] ); + +assign d[6] = ~reset & ~alu_zrd & + ( dbin_ext & di[6] + | mxrl & mxo[6] + | mxrh & mxo[14] + | t1f1 & sy_inp + | alu_xrd & xr[6] + | alu_ard & acc[6] + | alu_frd & psw_z + | alu_srd & s[6] ); + +assign d[5] = ~reset & ~alu_zrd & + ( dbin_ext & di[5] + | mxrl & mxo[5] + | mxrh & mxo[13] + | t1f1 & sy_m1 + | alu_xrd & xr[5] + | alu_ard & acc[5] + | alu_frd & 1'b0 + | alu_srd & s[5] ); + +assign d[4] = ~reset & ~alu_zrd & + ( dbin_ext & di[4] + | mxrl & mxo[4] + | mxrh & mxo[12] + | t1f1 & sy_out + | alu_xrd & xr[4] + | alu_ard & acc[4] + | alu_frd & psw_ac + | alu_srd & s[4] ); + +assign d[3] = ~reset & ~alu_zrd & + ( dbin_ext & di[3] + | mxrl & mxo[3] + | mxrh & mxo[11] + | t1f1 & sy_hlta + | alu_xrd & xr[3] + | alu_ard & acc[3] + | alu_frd & 1'b0 + | alu_srd & s[3] ); + +assign d[2] = ~reset & ~alu_zrd & + ( dbin_ext & di[2] + | mxrl & mxo[2] + | mxrh & mxo[10] + | t1f1 & sy_stack + | alu_xrd & xr[2] + | alu_ard & acc[2] + | alu_frd & psw_p + | alu_srd & s[2] ); + +assign d[1] = ~reset & ~alu_zrd & + ( dbin_ext & di[1] + | mxrl & mxo[1] + | mxrh & mxo[9] + | t1f1 & sy_wo_n + | alu_xrd & xr[1] + | alu_ard & acc[1] + | alu_frd & 1'b1 + | alu_srd & s[1] ); + +assign d[0] = ~reset & ~alu_zrd & + ( dbin_ext & di[0] + | mxrl & mxo[0] + | mxrh & mxo[8] + | t1f1 & sy_inta + | alu_xrd & xr[0] + | alu_ard & acc[0] + | alu_frd & psw_c + | alu_srd & s[0] ); + +always @(posedge clk) +begin + if (f2 & db_stb) db <= d; + if (f2) abufena <= (~twt2 | ~thalt) & ~hlda_pin; + if (f1) db_stb <= t1 | (~sy_wo_n & t2); + if (f1) t851 <= t1 | (~sy_wo_n & (t2 | tw | t3)); + if (f2) db_ena <= ~reset & t851; +end + +//______________________________________________________________________________ +// +// reset input buffer +// +always @(posedge clk) +begin + if (f1) t404 <= pin_reset; + if (f2) reset <= t404; +end + +//______________________________________________________________________________ +// +// hold input buffer +// +assign pin_hlda = hlda_pin; +assign hlda = hold & (t773 | (t3 & sy_wo_n) | (~m1 & sy_hlta) | t735); +assign h889 = t2f1 | twf1; + +always @(posedge clk) +begin + if (f1) t712 <= ~sy_wo_n & t3; + if (f2) t735 <= t712; + if (~f2) t382 <= pin_hold; + if (f2) t383 <= ((~t382 & hold) | t383); // extend the front detector pulse for entire F2 duration + if (~f2) t383 <= 1'b0; + if (f2) t773 <= hlda_pin; + if (f1) hlda_pin <= hlda; +end + +always @(posedge clk) +begin + if (reset) + hold <= 1'b0; + else + if (f2) + begin + if (t382) + begin + if (~sy_inta & h889) hold <= 1'b1; + end + else + hold <= 1'b0; + end +end + +//______________________________________________________________________________ +// +assign pin_dbin = dbin_pin; +assign pin_wr_n = wr_n; +assign pin_sync = sync; + +always @(posedge clk) +begin + dbinf2 <= (f2 | dbin_pin) & ((t1124 & (m1f1 | ~sy_hlta)) | dbinf2); + + if (dbin_pin) di <= pin_din; + if (f2) dbin_pin <= t1124 & (m1f1 | ~sy_hlta); + if (f2) sync <= ~ready_int & t1011; + if (f1) t1011 <= t1 & ~reset; + if (f1) t1124 <= (t2 | tw) & sy_wo_n; + if (f1) wr_n <= ~(t3 | tw) | ready_int | sy_wo_n; +end + +//______________________________________________________________________________ +// +// ready pin and internal circuits +// +assign ready_int = (m4 | m5) & id_dad; +assign ready = ready_int | pin_ready; +assign pin_wait = twf1; + +//______________________________________________________________________________ +// +// register unit - 6 16-bit registers +// +// r0 - pc +// r1 - hl, de +// r2 - de, hl +// r3 - bc +// r4 - sp +// r5 - wz +// +assign t1467 = tree1 | (id04 & t4f1 & ~id_xthl); +assign t1519 = tree2 | (id00 & t4f1 & ~id_xthl); +assign mxi = inc16 ? (a + 16'h0001) + : dec16 ? (a - 16'h0001) + : a; + +assign inc16 = iad16 & ~dec16; +assign dec16 = iad16 & id05 & (t4f1 | t5f1 | m4f1 | m5f1); +assign iad16 = ~(id00 & (t4f1 | t5f1)) & (~minta | m5 | t3144); + +assign mxw16 = t3403; +assign mxwadr = t3363 | (t4f1 & ~id_dad & ~id_hlt); +assign t1513 = (t4f1 & id07) | t3335; +assign t1514 = (t4f1 & id08) | t3361; + +assign mxrh = t2998 | (id08 & t4f1 & ~i03); +assign mxrl = t3047 | (id08 & t4f1 & i03); +assign mxwh = t2817 | (t2806 & ~i03); +assign mxwl = t2819 | (t2806 & i03); + +assign mxr0 = tree0; +assign mxr1 = xchg_dh & (((t1513 | t1514) & (~i14 & i25)) | t1519) + | ~xchg_dh & (t1513 | t1514) & (i14 & ~i25); +assign mxr2 = xchg_dh & (t1513 | t1514) & (i14 & ~i25) + | ~xchg_dh & (((t1513 | t1514) & (~i14 & i25)) | t1519); +assign mxr3 = (t1513 | t1514) & (~i14 & ~i25); +assign mxr4 = t1467 | (t1513 & i14 & i25); +assign mxr5 = ~(t1467 | t1513 | t1514 | t1519 | mxr0); + +always @ (posedge clk) +begin + if (f1) t3144 <= t4 | t5 | (m4 & ~id02); + xchg_tt <= id_xchg & t2; + xchg_dh <= ~reset & ((xchg_tt & ~(id_xchg & t2)) ? ~xchg_dh : xchg_dh); +end + +always @ (*) +case ({mxr0, mxr1, mxr2, mxr3, mxr4, mxr5}) + 6'b100000: mxo = r16_pc; + 6'b010000: mxo = r16_hl; + 6'b001000: mxo = r16_de; + 6'b000100: mxo = r16_bc; + 6'b000010: mxo = r16_sp; + 6'b000001: mxo = r16_wz; + default: mxo = 16'h0000; +endcase + +always @ (posedge clk) +if (f2) +begin + if (mxwadr) a <= mxo; + if (mxw16) + begin + if (mxr0) r16_pc <= mxi; + if (mxr1) r16_hl <= mxi; + if (mxr2) r16_de <= mxi; + if (mxr3) r16_bc <= mxi; + if (mxr4) r16_sp <= mxi; + if (mxr5) r16_wz <= mxi; + end + else + begin + if (mxwl) + begin + if (mxr0) r16_pc[7:0] <= d; + if (mxr1) r16_hl[7:0] <= d; + if (mxr2) r16_de[7:0] <= d; + if (mxr3) r16_bc[7:0] <= d; + if (mxr4) r16_sp[7:0] <= d; + if (mxr5) r16_wz[7:0] <= d; + end + if (mxwh) + begin + if (mxr0) r16_pc[15:8] <= d; + if (mxr1) r16_hl[15:8] <= d; + if (mxr2) r16_de[15:8] <= d; + if (mxr3) r16_bc[15:8] <= d; + if (mxr4) r16_sp[15:8] <= d; + if (mxr5) r16_wz[15:8] <= d; + end + end +end + +//______________________________________________________________________________ +// +// processor state +// +assign sy_hlta = id_hlt; +assign sy_m1 = m1; +assign sy_inp = m5 & id_in; +assign sy_out = m5 & id_out; +assign sy_inta = inta; +assign sy_memr = sy_wo_n & ~sy_inp & ~minta; +assign sy_wo_n = m1 | m2 | m3 | (((m4 & ~id86) | (m5 & ~id85)) & ~ready_int); + +always @(posedge clk) +begin + if (f1) + begin + sy_stack <= (t1 & t1460) + | (t3 & m3 & id_cxx & ~jmptake) + | (t5 & m1 & id_rxx & ~jmptake); + end +end +//______________________________________________________________________________ +// +// ticks state machine +// +assign twt2 = (t2f1 | twf1) & ~start; +assign thalt = ~m1 & sy_hlta; + +always @(posedge clk) +begin + if (f1) + begin + t1f1 <= t1 & ~reset; // ensure the reliable start after reset + t2f1 <= t2; + twf1 <= tw; + t3f1 <= t3; + t4f1 <= t4; + t5f1 <= t5; + end + if (f2) + begin + t1 <= start; + t2 <= ~start & t1f1; + tw <= ~start & (t2f1 | twf1) & (~ready | thalt); + t3 <= ~start & (t2f1 | twf1) & ready & ~thalt; + t4 <= ~start & t3f1 & ms0 & ~ms1; + t5 <= ~start & t4f1 & ms0 & ~ms1; + end +end + +//______________________________________________________________________________ +// +assign m836 = m1f1 & id82; +assign m839 = ~t976 | ~sy_hlta; +assign m871 = t789 | id81; + +assign start = ~m839 + | t953 + | (eom & ~(hold & t887)) + | (f2 & ((~t382 & hold) | t383) & ~(twf1 | t3f1 | t4f1 | t5f1)); + +assign ms0 = ~reset & m839 & ~(sy_stack & ~t1f1) & ~(eom & ~m836); +assign ms1 = ~reset & m839 & ~(sy_stack & ~t1f1) & ~(m871 & ~m836) & eom; + +always @(posedge clk) +begin + if (f1) + begin + t789 <= (id84 & m3) | (id83 & ~id_mvim & m4) | m5; + t887 <= hold; + t953 <= reset; + t976 <= t980 & m4; + eom <= t5 + | t4 & m1 & id80 + | t3 & m2 + | t3 & m3 + | t3 & m4 + | t3 & m5 & ~id_xthl; + end + if (f2) + begin + t980 <= sy_inta; + end +end + +//______________________________________________________________________________ +// +// processor cycles state machine +// +always @(posedge clk) +begin + if (f1) + begin + m1f1 <= m1; + m2f1 <= m2; + m3f1 <= m3; + m4f1 <= m4; + m5f1 <= m5; + end + if (f2) + begin + m1 <= (~ms0 & ~ms1) | (~ms1 & m1f1); + m2 <= (~ms0 | ~ms1) & ((ms0 & m2f1) | (ms1 & m1f1)); + m3 <= (ms0 & m3f1) | (ms1 & m2f1); + m4 <= (ms0 & m4f1) | (ms1 & m3f1) | (ms0 & ms1); + m5 <= (ms0 & m5f1) | (ms1 & m4f1); + end +end + +//______________________________________________________________________________ +// +// interrupt logic +// +assign irq = intr & inte & ~reset & ~hold; +assign pin_inte = inte; + +always @(posedge clk) +begin + if (f2) intr <= pin_int; + if (f2) mstart <= ~ms0 & ~ms1; + if (sy_inta) minta <= 1; + if (f1 & t1 & m1) minta <= 0; +end + +always @(posedge clk or posedge reset) +begin + if (reset) + begin + inta <= 0; + inte <= 0; + end + else + begin + if (f1) + begin + if (irq & ((tw & sy_hlta) | (mstart & ~id_eidi))) inta <= 1; + if (~intr | id_eidi | (t5 & id_rst)) inta <= 0; + end + if (f2) + begin + if (t1f1 & id_eidi) inte <= i[3]; + if (t1f1 & sy_inta) inte <= 0; + end + end +end +//______________________________________________________________________________ +// +// instruction register and decoder +// +function cmp +( + input [7:0] i, + input [7:0] c, + input [7:0] m +); + cmp = &(~(i ^ c) | m); +endfunction + +assign imx = ~(id_op | (id_mov & t4)); +assign acc_sel = imx ? (i[5:3] == 3'b111) : (i[2:0] == 3'b111); +assign jmpflag = (psw_c & i14 & ~i25) // Intel original: d[0] instead of psw_c + | (psw_p & ~i14 & i25) // Intel original: d[2] instead of psw_p + | (psw_z & ~i14 & ~i25) // Intel original: d[6] instead of psw_z + | (psw_s & i14 & i25); // Intel original: d[7] instead of psw_s + +always @(posedge clk) +begin + // + // Simplify the D-bus multiplexer and feed the I-register by input pins directly + // + if (~f2 & (reset | (m1 & t3))) i <= pin_din; + if (f1) + begin + i25 <= imx ? i[5] : i[2]; + i14 <= imx ? i[4] : i[1]; + i03 <= imx ? i[3] : i[0]; + end +end + +assign goto = id_rst | id_jmp | id_call | (jmptake & (id_cxx | id_jxx)); +assign t1460 = (t1 & ( (m2 & id00) + | (m3 & id00) + | (m4 & (id01 | id04)) + | (m5 & (id01 | id04))) + | t2 & ( (m2 & id00) + | (m4 & id01) + | (m5 & id01)) + | t3 & ( (m4 & (id04 | id_sphl))) + | t5 & ( (m1 & (id04 | id_sphl)))) & ~(~jmptake & id_cxx & t5); + +always @(posedge clk) +begin + if (f2 & t4f1) + begin + jmptake <= i03 ? jmpflag : ~jmpflag; + end + if (f1) + begin + tree0 <= t1 & ( (m1 & ~goto) + | (m2 & ~id_xthl) + | (m3 & ~id_xthl) + | (m4 & id02)) + | t2 & ( m1 + | (m2 & ~id_xthl) + | (m3 & ~id_xthl) + | (m4 & (id02 | id_rst | id_cxx | id_call)) + | (m5 & (id_rst | id_cxx | id_call))) + | t3 & ( (m4 & (id_ret | id_rxx)) + | (m5 & (id_ret | id_rxx))) + | t5 & id_pchl; + + tree1 <= t1460; + + tree2 <= t1 & ( (m4 & (id_mov | id_idr | id_op)) + | (m5 & id08)) + | t2 & ( (m4 & (id_shld | id00 | id_dad)) + | (m5 & (id_shld | id00 | id_dad))) + | t3 & ( (m4 & (id_lhld | id_dad)) + | (m5 & (id_lhld | id_dad))) + | t5 & m5; + + t2806 <= id08 & ((t3 & m4) | (t5 & m1)); + t2817 <= reset | (t3 & (m1 | m3 | (m4 & id_io) | (m5 & id06))); + t2819 <= reset | (t3 & (m2 | (m4 & id06) | (m5 & id_rst))); + + t3047 <= m4 & (t1 | t2) & id_dad + | t2 & ((m4 & id_shld) | (m5 & id03)); + + t2998 <= (t1 | t2) & m5 & id_dad + | t2 & ((m5 & id_shld) | (m4 & id03)); + + t3403 <= t2 & ( (m1 | m2) + | (m3 & ~id_xthl) + | ((m4 | m5) & ~id_dad & ~id09)) + | t3 & m4 & id09 + | t5 & (m5 | (m1 & ~id08)); + + t3363 <= t1 & (m1 | m2 | m3 | ((m4 | m5) & ~id_hlt & ~id_dad)); + t3335 <= id07 & ((t1 & (m4 | m5)) | (t3 & (m2 | m3)) | t5); + + t3361 <= t1 & m4 & id_lsax + | t2 & id10 & ~sy_wo_n + | t3 & id10 & sy_wo_n & (m4 | m5) + | t5 & id08 & m1; + end +end + +assign id_nop = cmp(i, 8'b00xxx000, 8'b00111000); +assign id_lxi = cmp(i, 8'b00xx0001, 8'b00110000); +assign id_lsax = cmp(i, 8'b000xx010, 8'b00011000); +assign id_inx = cmp(i, 8'b00xx0011, 8'b00110000); +assign id_inr = cmp(i, 8'b00xxx100, 8'b00111000); +assign id_dcr = cmp(i, 8'b00xxx101, 8'b00111000); +assign id_idr = cmp(i, 8'b00xxx10x, 8'b00111001); +assign id_mvi = cmp(i, 8'b00xxx110, 8'b00111000); +assign id_dad = cmp(i, 8'b00xx1001, 8'b00110000); +assign id_dcx = cmp(i, 8'b00xx1011, 8'b00110000); +assign id_opa = cmp(i, 8'b00xxx111, 8'b00111000); +assign id_idm = cmp(i, 8'b0011010x, 8'b00000001); +assign id_stlda = cmp(i, 8'b0011x010, 8'b00001000); +assign id_mvim = cmp(i, 8'b00110110, 8'b00000000); +assign id_shld = cmp(i, 8'b00100010, 8'b00000000); +assign id_lhld = cmp(i, 8'b00101010, 8'b00000000); +assign id_mvmr = cmp(i, 8'b01110xxx, 8'b00000111) & ~id_hlt; +assign id_mvrm = cmp(i, 8'b01xxx110, 8'b00111000) & ~id_hlt; +assign id_hlt = cmp(i, 8'b01110110, 8'b00000000); +assign id_mov = cmp(i, 8'b01xxxxxx, 8'b00111111); +assign id_op = cmp(i, 8'b10xxxxxx, 8'b00111111); +assign id_opm = cmp(i, 8'b10xxx110, 8'b00111000); +assign id_pop = cmp(i, 8'b11xx0001, 8'b00110000); +assign id_push = cmp(i, 8'b11xx0101, 8'b00110000); +assign id_rst = cmp(i, 8'b11xxx111, 8'b00111000); +assign id_xthl = cmp(i, 8'b11100011, 8'b00000000); +assign id_sphl = cmp(i, 8'b11111001, 8'b00000000); +assign id_pchl = cmp(i, 8'b11101001, 8'b00000000); +assign id_xchg = cmp(i, 8'b11101011, 8'b00000000); +assign id_cxx = cmp(i, 8'b11xxx100, 8'b00111000); +assign id_jxx = cmp(i, 8'b11xxx010, 8'b00111000); +assign id_rxx = cmp(i, 8'b11xxx000, 8'b00111000); +assign id_ret = cmp(i, 8'b110x1001, 8'b00010000); +assign id_call = cmp(i, 8'b11xx1101, 8'b00110000); +assign id_eidi = cmp(i, 8'b1111x011, 8'b00001000); +assign id_jmp = cmp(i, 8'b1100x011, 8'b00001000); +assign id_io = cmp(i, 8'b1101x011, 8'b00001000); +assign id_opi = cmp(i, 8'b11xxx110, 8'b00111000); +assign id_in = cmp(i, 8'b11011011, 8'b00000000); +assign id_popsw = cmp(i, 8'b11110001, 8'b00000000); +assign id_out = cmp(i, 8'b11010011, 8'b00000000); +assign id_11x = cmp(i, 8'b11xxxxxx, 8'b00111111); +assign id_pupsw = cmp(i, 8'b11110101, 8'b00000000); + +assign id_rxc = ~i[5] & i[3] & id_opa; +assign id_sha = ~i[5] & id_opa; +assign id_rlc = (i[5:3] == 3'b000) & id_opa; +assign id_rar = (i[5:3] == 3'b011) & id_opa; +assign id_daa = (i[5:3] == 3'b100) & id_opa; +assign id_cma = (i[5:3] == 3'b101) & id_opa; +assign id_stc = (i[5:3] == 3'b110) & id_opa; +assign id_cmc = (i[5:3] == 3'b111) & id_opa; + +assign id_add = (i[5:3] == 3'b000) & (id_op | id_opi); +assign id_adc = (i[5:3] == 3'b001) & (id_op | id_opi); +assign id_sub = (i[5:3] == 3'b010) & (id_op | id_opi); +assign id_sbb = (i[5:3] == 3'b011) & (id_op | id_opi); +assign id_ana = (i[5:3] == 3'b100) & (id_op | id_opi); +assign id_xra = (i[5:3] == 3'b101) & (id_op | id_opi); +assign id_ora = (i[5:3] == 3'b110) & (id_op | id_opi); +assign id_cmp = (i[5:3] == 3'b111) & (id_op | id_opi); + +assign id80 = id_lxi | id_pop | id_opm | id_idm | id_dad + | id_xthl | id_xchg | id_jxx | id_ret | id_eidi + | id_nop | id_stlda | id_mvmr | id_mvrm | id_hlt + | id_opa | id_mvim | id_jmp | id_io | id_opi + | id_mvi | id_lsax | id_lhld | id_shld | id_op; +assign id81 = id_dcx | id_inx | id_sphl | id_pchl | id_xchg + | id_eidi | id_nop | id_opa | id_op | id_mov + | (id_idr & ~id82); +assign id82 = id_pop | id_push | id_opm | id_idm | id_dad + | id_rst | id_ret | id_rxx | id_mvrm | id_mvmr + | id_hlt | id_mvim | id_io | id_opi | id_mvi + | id_lsax; +assign id83 = id_opm | id_stlda | id_mvmr | id_mvrm | id_opi + | id_mvi | id_lsax; +assign id84 = id_lxi | id_jxx | id_jmp; +assign id85 = id_push | id_idm | id_rst | id_xthl | id_cxx + | id_call | id_mvim | id_shld | (id_io & ~i[3]); +assign id86 = id_push | id_rst | id_xthl | id_cxx | id_call + | id_mvmr | id_shld | (~i[3] & (id_lsax | id_stlda)); + +assign id00 = id_xthl | id_pchl | id_sphl; +assign id01 = id_pop | id_rxx | id_ret; +assign id02 = id_mvi | id_opi | id_io; +assign id03 = id_rst | id_push | id_xthl | id_cxx | id_call; +assign id04 = id_rst | id_push | id_xthl | id_cxx | id_call; +assign id05 = id_rst | id_push | id_xthl | id_cxx | id_call | id_dcx; +assign id06 = id_pop | id_rxx | id_ret | id_dad | id_lhld | id_io; +assign id07 = id_dcx | id_inx | id_lxi | id_dad; +assign id08 = id_mov | id_mvi | id_idr | id_op; +assign id09 = id_rst | id_push | id_xthl | id_cxx | id_call | id_shld; +assign id10 = id_pop | id_push | id_mvrm | id_mvi; + +//______________________________________________________________________________ +// +// function alu +// ( +// input rxc, +// input ora, +// input ana, +// input xra, +// input x, +// input r, +// input nc, +// input rn, +// input cp +// ); +// alu = x & r & cp & ~(rxc | ora | ana | xra) +// | nc & (cp | x | r) & ~(rxc | ora | ana | xra) +// | rxc & rn +// | ora & (x | r) +// | ana & (x & r) +// | xra & (x ^ r); +// endfunction +// +// +// assign s[0] = alu(id_rxc, id_ora, id_ana, id_xra, x[0], r[0], ~c[0], r[1], cl) | (id_rlc & c[7]); +// assign s[1] = alu(id_rxc, id_ora, id_ana, id_xra, x[1], r[1], ~c[1], r[2], c[0]); +// assign s[2] = alu(id_rxc, id_ora, id_ana, id_xra, x[2], r[2], ~c[2], r[3], c[1]); +// assign s[3] = alu(id_rxc, id_ora, id_ana, id_xra, x[3], r[3], ~c[3], r[4], c[2]); +// assign s[4] = alu(id_rxc, id_ora, id_ana, id_xra, x[4], r[4], ~c[4], r[5], c[3]); +// assign s[5] = alu(id_rxc, id_ora, id_ana, id_xra, x[5], r[5], ~c[5], r[6], c[4]); +// assign s[6] = alu(id_rxc, id_ora, id_ana, id_xra, x[6], r[6], ~c[6], r[7], c[5]); +// assign s[7] = alu(id_rxc, id_ora, id_ana, id_xra, x[7], r[7], ~c[7], ch, c[6]); +// +// +//______________________________________________________________________________ +// +// arithmetic and logic unit +// +// assign alu_xwr = (f1 & m1 & t3) | (f2 & (a327 | t4f1 & (id_out | ~id_11x))); +// +assign alu_xwr = (a327 | t4f1 & (id_rst | id_out | ~id_11x)); +assign alu_xout = ~(id_sub | id_sbb | id_cmp | id_cma); +assign alu_xrd = t1698 | a358; +assign x = alu_xout ? xr : ~xr; + +assign alu_ald = t2222 & ( id_adc | id_add | id_daa | id_xra | id_sbb + | id_sub | id_ana | id_ora | id_sha | id_cma); +assign alu_ard = t1375 | a398; +assign alu_awr = t1497 | a357; + +assign alu_r00 = id_dcr & t4f1; +assign alu_srd = t1668; +assign alu_rwr = t1780; +assign alu_rld = t4f1 & (id_sha | id_op | id_opi); + +assign daa = id_daa & t4f1; +assign daa_x6 = (acc[3] & (acc[2] | acc[1])) | psw_ac; +assign daa_6x = ((acc[3] & (acc[2] | acc[1])) & acc[4] & acc[7]) + | (acc[7] & (acc[6] | acc[5])) | tmp_c; + +assign s = {7'b0000000, id_rlc & c[7]} + | ((id_rxc | id_ora | id_ana | id_xra) ? 8'h00 : (x + r + cl)) + | (id_rxc ? {ch, r[7:1]} : 8'h00) + | (id_ora ? (x | r) : 8'h00) + | (id_ana ? (x & r) : 8'h00) + | (id_xra ? (x ^ r) : 8'h00); + +assign cl = tmp_c & ~id_daa & ~id_rlc & ~id_ora & ~id_xra & ~id_rxc; +assign ch = tmp_c & id_rar | r[0] & ~id_rar; + +// +// wire ca0_n, ca2_n, ca1, ca3; +// assign ca0_n = ~(cl & (x[0] | r[0])) & ~(x[0] & r[0]) & ~(id_ana & id_rxc); +// assign ca2_n = ~(ca1 & (x[2] | r[2])) & ~(x[2] & r[2]) & ~(id_ana & id_rxc); +// assign ca1 = ~(~x[1] & ~r[1]) & ~(ca0_n & (~x[1] | ~r[1])) & ~(id_ora | id_rxc | id_xra); +// assign ca3 = ~(~x[3] & ~r[3]) & ~(ca2_n & (~x[3] | ~r[3])) & ~(id_ora | id_rxc | id_xra); +// +assign c[0] = (r[0] & x[0]) | (cl & (r[0] | x[0])); +assign c[1] = (r[1] & x[1]) | (c[0] & (r[1] | x[1])); +assign c[2] = (r[2] & x[2]) | (c[1] & (r[2] | x[2])); +assign c[3] = (r[3] & x[3]) | (c[2] & (r[3] | x[3])); +assign c[4] = (r[4] & x[4]) | (c[3] & (r[4] | x[4])); +assign c[5] = (r[5] & x[5]) | (c[4] & (r[5] | x[5])); +assign c[6] = (r[6] & x[6]) | (c[5] & (r[6] | x[6])); +assign c[7] = (r[7] & x[7]) | (c[6] & (r[7] | x[7])); + +assign alu_frd = t2046; /* | t4f1 & (id_11x & ~id_out); */ +assign alu_zrd = m1f1 & t3f1; + +assign a398 = t1993 & ((t1994 & id08) | id_opa | id_stlda | id_lsax | id_io); + +always @(posedge clk) +begin + if (f1) + begin + t1375 <= t2 & m4 & id_pupsw; + t1497 <= t3 & m5 & id_popsw; + t1698 <= t5 & m1 & ~id_inr & ~id_dcr + | t3 & m5 & id_rst; + t1668 <= t2 & m5 & (id_inr | id_dcr) + | t3 & m5 & id_dad + | t3 & m4 & id_dad + | t5 & m1 & (id_inr | id_dcr); + t1780 <= t3 & m1 + | t1 & (m4 | m5) & id_dad; + t2222 <= (t2 & m1) | (t1 & m5); + a327 <= t3 & m4 & ~(id_dad | id_out | id_rst) + | t2 & (m4 | m5) & id_dad; + a357 <= t3 & m5 & (id_io | id_mvim) & sy_wo_n + | t3 & m4 & (id_stlda | id_lsax | id_mvmr) & sy_wo_n + | acc_sel & id08 & (t5 & m1 | t3 & m4); + a358 <= t2 & ~sy_wo_n & (id_io | id_mvim | id_stlda | id_lsax | id_mvmr); + + psw_ld <= t3 & m4 & id_popsw; + psw_wr <= t2 & m1 & (id_opi | id_inr | id_dcr | id_daa | id_op); + t2046 <= t2 & m5 & id_pupsw; /* | reset | t3 & m1; */ +// +// t2047 <= reset +// | t3 & m1 +// | t3 & m5 & id_rst; +// + t1993 <= t4 & m1; + t1994 <= acc_sel; + t2133 <= ~id_rxc & c[7]; + t2175 <= t3 & m1 + | t2 & m5 & id_dad; + end +end + +always @(posedge clk) +begin + if (f2) + begin + if (alu_xwr) xr <= id_rst ? (i & 8'b00111000) : d; + if (alu_awr) acc <= d; + if (alu_ald) acc <= s; + if (alu_rld) r <= acc; + if (alu_rwr) r <= d; + if (alu_r00) r <= 8'hff; + if (daa) + begin + r[1] <= daa_x6; + r[2] <= daa_x6; + r[5] <= daa_6x; + r[6] <= daa_6x; + end + if (psw_ld) + begin + psw_c <= d[0]; // x register was in original Intel design + psw_p <= d[2]; + psw_ac <= d[4]; + psw_z <= d[6]; + psw_s <= d[7]; + end + if (psw_wr) + begin + psw_p <= ~(^s); + psw_ac <= (c[3] & ~id_xra & ~id_ora & ~id_rxc) | (id_ana & (x[3] | r[3])); + psw_z <= ~(|s); + psw_s <= s[7]; + end + if (t2222) + begin + if (id_xra | id_stc | id_ora | id_ana | id_cmc) + psw_c <= ~tmp_c; + if (id_cmp | id_sbb | id_sub) + psw_c <= ~(t2133 | id_rxc & x[0]); + if (id_dad | id_sha | id_adc | id_add) + psw_c <= t2133 | id_rxc & x[0]; + end + if (daa & daa_6x) + psw_c <= 1'b1; + + if (t2175) + tmp_c <= psw_c; + if (t4f1) + begin + if (id_sbb) + tmp_c <= ~psw_c; + if (id_inr | id_ora | id_xra | id_ana | id_cmp | id_sub) + tmp_c <= 1'b1; + if (id_dad | id_cma | id_dcr | id_add | id_stc) + tmp_c <= 1'b0; + end + end +end + +//______________________________________________________________________________ +// +endmodule