From a490eec4f3cf4eac5836f6d4e2c6abfc732d885b Mon Sep 17 00:00:00 2001 From: Gyorgy Szombathelyi Date: Thu, 23 Aug 2018 01:13:19 +0200 Subject: [PATCH] BBC: replace Smart MMC ROM with MMFS 1.41 --- cores/bbc/fpga/mist/bbc_mist_top.qsf | 6 +- cores/bbc/fpga/mist/bbc_mist_top.v | 10 +- cores/bbc/fpga/mist/{smmc.qip => mmfs.qip} | 2 +- cores/bbc/fpga/mist/{smmc.v => mmfs.v} | 24 +- cores/bbc/roms/mmfs.hex | 513 ++++++++++++++++++++ cores/bbc/roms/mmfs.rom | Bin 0 -> 16384 bytes cores/bbc/roms/smmc.hex | 514 --------------------- cores/bbc/roms/smmc.rom | Bin 16384 -> 0 bytes 8 files changed, 534 insertions(+), 535 deletions(-) rename cores/bbc/fpga/mist/{smmc.qip => mmfs.qip} (89%) rename cores/bbc/fpga/mist/{smmc.v => mmfs.v} (90%) create mode 100644 cores/bbc/roms/mmfs.hex create mode 100644 cores/bbc/roms/mmfs.rom delete mode 100644 cores/bbc/roms/smmc.hex delete mode 100644 cores/bbc/roms/smmc.rom diff --git a/cores/bbc/fpga/mist/bbc_mist_top.qsf b/cores/bbc/fpga/mist/bbc_mist_top.qsf index a0b82df..8a251ba 100644 --- a/cores/bbc/fpga/mist/bbc_mist_top.qsf +++ b/cores/bbc/fpga/mist/bbc_mist_top.qsf @@ -159,7 +159,6 @@ set_global_assignment -name ADV_NETLIST_OPT_SYNTH_WYSIWYG_REMAP ON set_global_assignment -name STRATIX_DEVICE_IO_STANDARD "2.5 V" -set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top set_global_assignment -name VERILOG_FILE ../../rtl/adc.v set_global_assignment -name VERILOG_FILE sdram.v set_global_assignment -name VERILOG_FILE ../../rtl/mc6845.v @@ -195,8 +194,9 @@ set_global_assignment -name VERILOG_FILE ../../rtl/bbc.v set_global_assignment -name CDF_FILE output_files/Chain4.cdf set_global_assignment -name VHDL_FILE ../../rtl/m6522.vhd set_global_assignment -name QIP_FILE ../../rtl/T65/T65.qip -set_global_assignment -name QIP_FILE smmc.qip +set_global_assignment -name QIP_FILE mmfs.qip set_global_assignment -name QIP_FILE os12.qip set_global_assignment -name QIP_FILE basic2.qip set_global_assignment -name QIP_FILE dfs09.qip -set_global_assignment -name SDC_FILE bbc_mist.sdc \ No newline at end of file +set_global_assignment -name SDC_FILE bbc_mist.sdc +set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top \ No newline at end of file diff --git a/cores/bbc/fpga/mist/bbc_mist_top.v b/cores/bbc/fpga/mist/bbc_mist_top.v index 4219765..0b1f7fe 100755 --- a/cores/bbc/fpga/mist/bbc_mist_top.v +++ b/cores/bbc/fpga/mist/bbc_mist_top.v @@ -405,11 +405,11 @@ basic2 basic2 ( .q ( basic_do ) ); -wire [7:0] smmc_do; -smmc smmc ( +wire [7:0] mmfs_do; +mmfs mmfs ( .clock ( clk_32m ), .address ( mem_adr[13:0] ), - .q ( smmc_do ) + .q ( mmfs_do ) ); audio AUDIO ( @@ -466,11 +466,11 @@ wire sideways_ram = // status[2] is '1' of low mapping is selected in the menu wire basic_map = status[2]?(mem_romsel == 4'h0):(mem_romsel == 4'he); -wire smmc_map = status[2]?(mem_romsel == 4'h2):(mem_romsel == 4'hc); +wire mmfs_map = status[2]?(mem_romsel == 4'h2):(mem_romsel == 4'hc); assign mem_di = ((mem_adr[15:14] == 2'b10) && basic_map) ? basic_do : - ((mem_adr[15:14] == 2'b10) && smmc_map) ? smmc_do : + ((mem_adr[15:14] == 2'b10) && mmfs_map) ? mmfs_do : ((mem_adr[15:14] == 2'b10) && (mem_romsel == 4'ha)) ? ram_do : mos_rom ? os_do : cpu_ram ? ram_do : diff --git a/cores/bbc/fpga/mist/smmc.qip b/cores/bbc/fpga/mist/mmfs.qip similarity index 89% rename from cores/bbc/fpga/mist/smmc.qip rename to cores/bbc/fpga/mist/mmfs.qip index 6e4e45f..0d0ccd7 100644 --- a/cores/bbc/fpga/mist/smmc.qip +++ b/cores/bbc/fpga/mist/mmfs.qip @@ -1,3 +1,3 @@ set_global_assignment -name IP_TOOL_NAME "ROM: 1-PORT" set_global_assignment -name IP_TOOL_VERSION "13.1" -set_global_assignment -name VERILOG_FILE [file join $::quartus(qip_path) "smmc.v"] +set_global_assignment -name VERILOG_FILE [file join $::quartus(qip_path) "mmfs.v"] diff --git a/cores/bbc/fpga/mist/smmc.v b/cores/bbc/fpga/mist/mmfs.v similarity index 90% rename from cores/bbc/fpga/mist/smmc.v rename to cores/bbc/fpga/mist/mmfs.v index aa24fb3..f482105 100644 --- a/cores/bbc/fpga/mist/smmc.v +++ b/cores/bbc/fpga/mist/mmfs.v @@ -4,7 +4,7 @@ // MODULE: altsyncram // ============================================================ -// File Name: smmc.v +// File Name: mmfs.v // Megafunction Name(s): // altsyncram // @@ -36,7 +36,7 @@ // synopsys translate_off `timescale 1 ps / 1 ps // synopsys translate_on -module smmc ( +module mmfs ( address, clock, q); @@ -84,9 +84,9 @@ module smmc ( altsyncram_component.clock_enable_input_a = "BYPASS", altsyncram_component.clock_enable_output_a = "BYPASS", `ifdef NO_PLI - altsyncram_component.init_file = "../../roms/smmc.rif" + altsyncram_component.init_file = "../../roms/mmfs.rif" `else - altsyncram_component.init_file = "../../roms/smmc.hex" + altsyncram_component.init_file = "../../roms/mmfs.hex" `endif , altsyncram_component.intended_device_family = "Cyclone III", @@ -123,7 +123,7 @@ endmodule // Retrieval info: PRIVATE: JTAG_ENABLED NUMERIC "0" // Retrieval info: PRIVATE: JTAG_ID STRING "NONE" // Retrieval info: PRIVATE: MAXIMUM_DEPTH NUMERIC "0" -// Retrieval info: PRIVATE: MIFfilename STRING "../../roms/smmc.hex" +// Retrieval info: PRIVATE: MIFfilename STRING "../../roms/mmfs.hex" // Retrieval info: PRIVATE: NUMWORDS_A NUMERIC "16384" // Retrieval info: PRIVATE: RAM_BLOCK_TYPE NUMERIC "0" // Retrieval info: PRIVATE: RegAddr NUMERIC "1" @@ -138,7 +138,7 @@ endmodule // Retrieval info: CONSTANT: ADDRESS_ACLR_A STRING "NONE" // Retrieval info: CONSTANT: CLOCK_ENABLE_INPUT_A STRING "BYPASS" // Retrieval info: CONSTANT: CLOCK_ENABLE_OUTPUT_A STRING "BYPASS" -// Retrieval info: CONSTANT: INIT_FILE STRING "../../roms/smmc.hex" +// Retrieval info: CONSTANT: INIT_FILE STRING "../../roms/mmfs.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" @@ -155,10 +155,10 @@ endmodule // Retrieval info: CONNECT: @address_a 0 0 14 0 address 0 0 14 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 smmc.v TRUE -// Retrieval info: GEN_FILE: TYPE_NORMAL smmc.inc FALSE -// Retrieval info: GEN_FILE: TYPE_NORMAL smmc.cmp FALSE -// Retrieval info: GEN_FILE: TYPE_NORMAL smmc.bsf FALSE -// Retrieval info: GEN_FILE: TYPE_NORMAL smmc_inst.v FALSE -// Retrieval info: GEN_FILE: TYPE_NORMAL smmc_bb.v FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL mmfs.v TRUE +// Retrieval info: GEN_FILE: TYPE_NORMAL mmfs.inc FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL mmfs.cmp FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL mmfs.bsf FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL mmfs_inst.v FALSE +// Retrieval info: GEN_FILE: TYPE_NORMAL mmfs_bb.v FALSE // Retrieval info: LIB_FILE: altera_mf diff --git a/cores/bbc/roms/mmfs.hex b/cores/bbc/roms/mmfs.hex new file mode 100644 index 0000000..a40d941 --- /dev/null +++ b/cores/bbc/roms/mmfs.hex @@ -0,0 +1,513 @@ +:200000000000004CAE8E821A7B4D6F64656C2042204D4D465300312E3431002843293230E1 +:200020003131204D61746865720055524F4D6C1E02A2068E40FEE88E40FE60200584A976BE +:200040004CF4FF205880004469736320902120588000426164209017ADDD10D003209D968F +:20006000A9FF8D82108DDD10A202A9008D0001203B806885AE6885AFA00020FE83B1AE8D25 +:200080000101CA20FE83E8B1AE9D0001302FD0F3206B8D4C000148A90D20E980686085B300 +:2000A0006885AE6885AFA5B3489848A00020FE83B1AE300620E9804CAD8068A868186CAE07 +:2000C0000085B36885AE6885AFA5B3489848A00020FE83B1AE300620E3FF4CD08068A86845 +:2000E000186CAE00200D81A92E20058448A9EC2051938A48091020419368AA6820E3FF4C18 +:20010000429320748448202A82200D8168202F81D0D720748448202A82201D8168202F812F +:200120004CE3FF20268148A92020E3FF681860290FC90A90026906693060204A81CACA2033 +:200140004281B1B09D7210E8C860204D81B1B095BAE8C86020528C4C6A8120528CA5BA8587 +:20016000F2A5BB85F3A00020CB81A22020B081B01B8D0010C92ED00486CCF0EEC93AD0154B +:2001800020658C20B081B004C92EF0DE204E80CC6E616D6500AA20B081B034C92EF0D9A2E8 +:2001A000019D0010E820B081B027E007D0F3F0DC20C5FF08297FC90DF008C92090CEC97F1A +:2001C000F0CA286086F284F3A00060184CC2FFA201A9209D0010E8E040D0F8A206BD00106B +:2001E00095C5CA10F860200584B90F0E08297FD005202381F00620E98020E780A206B9083C +:200200000E297F20E980C8CA10F4202381A920281002A94C20E980A00120268188D0FA60AA +:200220004A4A4A4A4A4A2903604A4A4A4A4A600A0A0A0A0A602054813003205A8120A682A7 +:20024000B0F2206880D64E6F7420666F756E640020C48120528C20CB81F00320348AA92A3E +:200260008D001020CF81201A92203D824C7F8220C481A94E85BF201A9220CC992035822091 +:200280005C8320A282B0F8602099A4A900F01EA206B5C59D5810CA10F8A9208D5F10A95860 +:2002A000D006A200F00CA900482099A468AAA90085B6A000A90E85B7A5B6CD050FB0496955 +:2002C0000885B620DD8290EAA5CCA007200A83D0E1A4B63888888888888888886020058491 +:2002E000BD0010CDCE10D013E820DD82B01BC8C00790F6BD0010C920D00E60C007B0F420DD +:200300000A83D004E8C8D0D81860CDCE10F010CDCD10F00B20498351B6B002295F297F6027 +:2003200008204983B002295F297F286020CE92B9100E99080EB9100F99080FC8CC050F9099 +:20034000EE98E9088D050F186048295FC9419004C95B90013868602CC61030EC2005842003 +:20036000E6819848A96085B0A91085B120A883A00220268120908320908320908368A8B9F3 +:200380000E0F2903200D81B90F0F2005814C9680A203B9621020058188CAD0F620BC884C49 +:2003A00026812005844CA1A42005849848AAA012A9008891B0C002D0F920F383C8C8C00E86 +:2003C000D0F768AABD0F0E1004A90891B0BD0E0FA00420E183A00C4A4A48290391B068A065 +:2003E000084A4A482903C903D005A9FF91B0C891B0686020F683BD080F91B0E8C860E6AE40 +:20040000D002E6AF60488A489848A98448A92748A005BABD07014888D0F8A00ABD09019DC4 +:200420000B01CA88D0F6686868A868AA6860488A489848201084BA9D03014C2884A6B8A0DF +:200440000084B68AC90A9010E90AAAF818986910A8D890EFE6B6B0EBF884B565B5A89003EB +:20046000E6B618A6B9F0096956A8A5B6690285B6D884B560202E84A8F00A18F8A900690100 +:2004800088D0FBD860297FC97FF004C920B002A92E609848A90085B085B120CB81F04EC9B4 +:2004A00022F04A20C5FFB04538E9303040C90AB03C48A5B00A4826B1A6B10A26B10A26B1A8 +:2004C00085B06865B085B08A65B1AA6865B085B08A690085B1C902B01420C5FF90CAA6B0ED +:2004E000A5B1F004E8F006CA68A5B1186068A8A900AA386020C481205D8C20A1A4A0FF84E3 +:20050000A8C884AAB9000EC0089003B9F80E20E980C8C00CD0EE209E802028A6CD2081AD3A +:20052000209E80290D447269766520A5CD200D81A00D201982209E804F7074696F6E20AD21 +:20054000060F202A8248200D81209E802028A003680A0AAABD408620E980E88810F6209E35 +:2005600080290D4469722E203AADCA1020E480ADC91020E980A00B201982209E804C696249 +:200580002E203AADCC1020E480ADCB1020E980209680A000CC050FB017B90F0E4DC9102913 +:2005A0005FD008B90F0E2980990F0E20BB8890E4A00020C2859016A9FF8D82104C96802002 +:2005C000BB88CC050FB005B9080E30F36084ABA200B9080E2020839D6010C8E8E008D0F128 +:2005E00020C285B02338A206B90E0E202083FD601088CA10F320BC88B90F0E202083ED6736 +:200600001090CA20BB88B0D8A4ABB9080E098099080EAD6710C5AAF010A6AA85AAD00A2023 +:200620009680209680A0FFD009A4A8D0F5A005201982C884A8A4AB20238120E6814CB08576 +:200640006F6666004C4F414452554E0045584543B90E0F20228285C218A9FF790C0FB90F28 +:200660000F790D0F85C3B90E0F290365C285C238B9070FE5C348B9060F2903E5C2AAA90033 +:20068000C5C068E5C18AE5C460FF414343455353B24241434B55508C434C4F534580434F07 +:2006A0004D5041435485434F5059AC44454C4554458844455354524F598244495286445277 +:2006C00049564581454E41424C4580455886464F524DDF4652454584494E464F824C49422D +:2006E000864D41508452454E414D458D5449544C458A56455249465985574950458200149C +:200700004255494C448844554D50884C49535488524F4D538B5459504588001A444953438C +:20072000804449534B804D4D465380001E445554494C53804D4D4653805554494C538000A4 +:2007400022424F4F54874341548E4452495645844652454580494EF44F50C94F55548452F5 +:20076000454341548041424F55548000A58A4F9CCA93F49AAC9C62887488E889CE881D8C3E +:200780005282F91D589F7582EC895B9F038D608AF51D3088C58787B308B3C6B28BB1BFB268 +:2007A0008786BE8DBE8DC88D5F8FB1997299B899BF99DF2D062E7D2FC92EF12D8730F72D79 +:2007C000402CBBAD1E89A2B720CB81B1F2C80920C964F009884C1F8920C481A200BD8986D0 +:2007E00085BE9848E6BE6848A820CB81E8BD8986F028CA8886BFE8C8BD8986301651F229DD +:200800005FF0F3CAE8BD898610FAB1F2C92ED0D4C8B007B1F220498390CA68A5BE0AAABD2C +:200820006D87100648BD6C874860206CAB0980D0F3201A9220CC99203582B90F0E301E201F +:20084000E681201D9CD013A6B620649486B620C48884AB20B2A4A5AB85B620968020A282AF +:20086000B0D86020119220CC99203582205783202C834CB2A420C99B201A9220CC992035DC +:2008800082B90F0E300620E68120968020A282B0F020259CF0034C968020649420A682B9DA +:2008A0000F0E300320C48820A282B0F320B2A4209E800D44656C657465640DC8C8C8C8C828 +:2008C000C8C8C860202C83A4B620D48284B66020628C8DCA1060290385CD60203A8220F088 +:2008E0009220A88384BAA200A5BED006C8C8A202D008B90E0F85C220248CB9080F95BCC820 +:20090000E8E008D0F5203B8CA4BA2057834C73A4204E8B20F09220A8834C8AA420C48120BB +:20092000DC898CDA10205A818CD910208882B022ACDA10ADCB1085CCADCC1020D688205D7D +:2009400081208882B00C204E80FE636F6D6D616E6400B90E0F202082C903D044B90A0F39E2 +:200960000B0FC9FFD03AA206BD00109D0710CA10F7A90D8D0E10A9458D0010A92E8D011030 +:20098000A93A8D0210A5CD09308D0310A92E8D04108D0610A5CC8D0510A200A0104CF7FFC8 +:2009A00020E48818ADD910A865F28DD910A5F369008DDA10AD76102D77100DD610C9FFF07E +:2009C00016A5BE8D7410A5BF8D751020618DA274A010A9044C0604A9016CBE00A9FF85BE81 +:2009E000A5F285BAA5F385BB60A200F002A20220238A9DCA10A5CC9DC91060200584A5B028 +:200A000048A5B148202693A000C0C09005B90010B003B9001191B0C8C0F0D0ED6885B168A0 +:200A200085B060ADC91085CC20CB81D007A90020D688F02AADCA1020D68820B081B010C9E7 +:200A40003AD01420658C20B081B013C92EF0EB204E80CE6469720085CC20B08190F1A5CDF1 +:200A60006020CC9920528C20A283A20BA90020878ACA10FAE820B081B00720878AE00B9057 +:200A8000F320B2A44C968A9D0010E00890049DF80E609D000E60201DA5A00BB9001091B0B3 +:200AA0008810F84CB2A5201A9220CC99205481A20020CB81D02486AA20A682B0034C428280 +:200AC00020D192B90F0E297F05AA990F0E20578320A282B0EB4CB2A4A28020B081B0D72912 +:200AE0005FC94CF0F3204E80CF617474726962757465002005848AC904F01EC905F034C945 +:200B000002900B204E80CB6F7074696F6E00A2FF98F002A2008EC61060984820528C20A1B6 +:200B2000A4682030824D060F29304D060F8D060F4CB2A49808A6F4BDF00D29BF28F0020977 +:200B4000409DF00D60204380C666756C6C00205A8120A6829003202C83A5C048A5C14838C7 +:200B6000A5C2E5C085C0A5C3E5C185C1AD7A10ED781085C4208A8BAD79108D7510AD781029 +:200B80008D74106885BD6885BC60A90085C2A90285C3AC050FC0F8B056206F864CA78BF0AD +:200BA000A420D4822050869890F584B0AC050FC4B0F00FB9070E990F0EB9070F990F0F880F +:200BC000B0EDA20020FC8BB5C599080EC8E8E008D0F5B5BB8899080FCAD0F7205783984896 +:200BE000AC050F20BB888C050F20B2A468A860205880BE4361742066756C6C00AD7610294F +:200C0000030A0A45C429FC45C40A0A4D741029FC4D74100A0A45C229FC45C285C260A90113 +:200C20008DC71060A9008D7510A5C229088D7410F008A9FF8D75108D741060A9008D7710AC +:200C4000A5C2202082C903D005A9FF8D77108D761060ADC91085CCADCA104CD68820CB8127 +:200C6000F0F520CC9920B081B012C93AF0F738E9309009C904B00520D6881860204E80CDF0 +:200C80006472697665004CD299204380D66E6F7420666F756E640020CC99C922D0018884F0 +:200CA000B420B081C93AD00520658C9021A4B420578C209284B02A20CB81F01CC922D001F6 +:200CC00088A5B1D0B7A5B0C904B0B120D688209284B00E20CB81D0AEA5B185B9A5B085B8AA +:200CE0006020BAACA90085B720C9A5AD0D10F096AD0E10D091A5B930902009AD90E220EDAC +:200D0000A54CF58C20119220CC992054819848203D8220CE9284C468A820CC99A5CD48202E +:200D2000548168C5CDD01420A6829012C4C4F00E205880C4457869737473004C7C8CA4C498 +:200D400020BB88A207B5C599070E88CA10F74CB2A4A9EAA200A0FF20F4FF8A49FF8DD61038 +:200D60006048A9CA20060490F9686020518D300748A98A200604686024FF101D20469320D2 +:200D80006880114573636170650048202A8220928D68202F81990001C8604C2E21424F4F41 +:200DA000540D452E21424F4F540DA5B3209E804D6F64656C2042204D4D46530D0D900CA665 +:200DC000F4BDF00D2940F00160A9FF20009648A906202E80A20DBD58939D1202CA10F7A906 +:200DE000A820519384B186B0A207A01BB94B9391B0C8B94B9391B0C8A5F491B0C8CAD0EC10 +:200E00008C82108C831086CD8E9F10A20F204D93202693A0D3B1B01037A0D4B1B0303A2001 +:200E20001193A000B1B0C0C09005990010B00399001188D0EF20B8A2CDEE10D016A9A0A88F +:200E400048A93F20839768991D11E91FD0F1F009201193207E8E209E8E20518D68D00B209A +:200E6000A1A4AD060F202A82D00160A08DA29AC9029008F004A2A2D002A2A44CF7FFA92443 +:200E80008DC9108DCB10A9038DCC10A0008CCA108CC010888CC7108CC6108CDD1060A00E39 +:200EA000A90099E0108810FAA9018DEE106020ECB548BDF00D301E68C912F031C90BB014CC +:200EC0000AAABDD88E48BDD78E488AA6F44AC90B90026915606860D38EF68EFD8E3E8F577B +:200EE0008FD38ED38ED38E638FB48FC58FC004D0E32005844CC98DC017B002A01760984875 +:200F000085B1BCF00D98294005B19DF00DA90085B0C4B1F004A0D391B0A9FD205193CA8A98 +:200F2000A0D331B091B008C8281007B1B0100320FB89A90091B0A6F468A8A902C8C86020A6 +:200F4000058484B3A97A20F4FF8A3009C965D0EEA97820F4FF4CAA8D200584A2924CDD87A8 +:200F6000A276D0F9200584A4EF3030C07D902C20009620E88FD024A6F086B0A6F186B1A47C +:200F8000EFC81007085820BEB0286020528C20A283C83008A000AD040F91B060A900A891E7 +:200FA000B0C8AD070F91B0C8AD060F290391B0C8A90091B060200584B1F2A2A3C90DD09DD8 +:200FC00098A0034C7899200584202693A0D4B1B01015A00020E79520FB89202693A0D4A927 +:200FE0000091B0BA9D050160A90720F08FE011606C1E02202E844820119286B08EDB1084B7 +:20100000B18CDC10A200A000204A81203A81C012D0F968AAE8E008B008BD9B9348BD939354 +:2010200048A90060C90CB0F986B5AABD879348BD7B93488AA6B560C909B0FB20058420003F +:20104000968E7D108C7E10A8205690082C8110100320708D2860B9A3938DD710B9AC938DB2 +:20106000D810B9B5934A084A088D7F1020C891A00CB1B49960108810F8AD63102D64100DD6 +:20108000D610186901F00620618D18A9FF8D8110AD7F10B007A261A01020060428B0042832 +:2010A0006CD710A203BD691095B6CA10F8A2B6AC6010A90028B00320D998204796A203B505 +:2010C000B69D6910CA10F820BA91300DAC601020A090B00DA20920AE91A20520AE91D0ECD5 +:2010E000180820BA91A20520AE91A00C20C891B9601091B48810F8286020528C2099A4A9B0 +:201100000B8DD710A9918DD810D0BCAC6910CC050FB028B90F0E20498345CCB00229DF2982 +:201120007FF00520BB88D0E6A90720DC9185B0B9080E20DC91C8C6B0D0F5188C6910AD0483 +:201140000F8D60106020528C2099A4A90C20DC91A000C008B005B9000E9003B9F80E20DC54 +:2011600091C8C00CD0ECAD060F202A8220DC91A5CD4CDC9120D391ADCA10093020DC912057 +:20118000D391ADC910D05520D391ADCC10093020DC9120D391ADCB10D04248AD611085B8AC +:2011A000AD621085B9A2006860200584A201A004FE6010D004E888D0F760A203A9FF5D6590 +:2011C000109D6510CA10F560AD7D1085B4AD7E1085B560A901D005200197B0F62C811010CC +:2011E000058DE5FE30C3209A9181B84CA99120F69120EF9718602C81101006ADE5FE4CA960 +:2012000091209A91A1B84CA9912CC7103003CEC710A9FF8DCE108DCD1060A92A8DCE10A974 +:2012200023D0F320DC9220A883A9016020B99220A883202C83902420DC92206192207D92DC +:20124000501620DC92207D92501120DC92206192500920DC9220D19220A09220D58AA90184 +:2012600060200584A002B1B09D080FC8B1B09D090FC8B1B00A0A5D0E0F290C101B20058410 +:20128000A006B1B09D0A0FC8B1B09D0B0FC8B1B06A6A6A5D0E0F29C05D0E0F9D0E0FB8609B +:2012A000200584A00EB1B0290AF002A9805D0F0E29805D0F0E9D0F0E6020E6929023B90F5E +:2012C0000E1022205880C34C6F636B65640020BE9220058420909590214CF49420E692B096 +:2012E000196868A90060205A8120A682900C98AAADDB1085B0ADDC1085B160A98320F4FFA0 +:201300008CCF10A98420F4FF9838EDCF108DD01060A20A204D93202693A0D3A9FF91B08D4B +:20132000D310C891B06048A90085B0A6F4BDF00D293F85B16860200584A90FA201A000F0ED +:2013400014AAA903D00F200584A97ED008A98FD004A200A0FF4CF4FF1BFF1EFF21FF24FF96 +:2013600027FF2AFF2DFFF38F000D9600019700EF97003790007E9400249000F2C91BD71B5A +:20138000F3C2BD084F6E1B8A9689878984939392828289DA0F36494151222B88899292926B +:2013A00092929288EEEED7D7457487F9869191919191919190040203060704040404A21146 +:2013C000A01560200584A9774CF4FFA9208D861020C693A900186920F0E8A820EB93D0F55E +:2013E000A9208D861098F0E820E29648206696B046B91B1149FF2DC0108DC010B91711290E +:2014000060F034203C94B917112D8610F026AEC310B914119D0C0FB915119D0D0FB916110F +:201420002030825D0E0F29305D0E0F9D0E0F20B2A4ACC210208B97AEC5106860205794A2A5 +:2014400006B90C1195C58888CA10F6208F8290228CC310ACC21060B90E11297F85CCB917B5 +:20146000114CD688200584AD040F20A283CD040FF0E4204380C86368616E6765640029C0F1 +:20148000D0062005844CE093202E8486BA84BB85B424B408205A8120119220A682B02428A2 +:2014A0005003A9006008A900A20795BC9D7410CA10F8C6BEC6BFCE7610CE7710A94085C34F +:2014C000204E8B2808700320BE92209095900EB90C1110202808301C208B95B0F2ACC2103B +:2014E000D01B205880C0546F6F206D616E79206F70656E00205880C24F70656E00A9088DE6 +:20150000C410BD080E990011C8BD080F990011C8E8CEC410D0ECA210A900990011C8CAD0BF +:20152000F9ADC210A82029826911991311ADC110991B110DC0108DC010B9091169FFB90B0D +:20154000116900991911B90D11090F6900202282991A1128502E3008A980190C11990C117B +:20156000B90911991411B90B11991511B90D11202282991611A5CD19171199171198202996 +:2015800082091060A920991711D0EA8A484CCF95A9008DC210A90885B598AAA0A084B38A54 +:2015A00048A90885B2A5B52CC010F01DB9171145CD2903D01ABD080E590011297FD010E8E2 +:2015C000C8C8C6B2D0EF38B0108CC2108DC11038A5B3E92085B306B51868AAA4B3A5B5B079 +:2015E00002D0BA60200096ADC01048A9008D861098D00520D393F00320E093688DC010601A +:20160000488A48A900BA9D090168AA6860200584C9FFF0D0C000F00EC903B023200096C9BF +:2016200001D0244CD998C902B015200096F011A9FF95029503ADD9109500ADDA1095016022 +:20164000A904BA9D05016020E2968CC2100A6DC210A8B910119500B911119501B9121195E8 +:2016600002A900950360488EC5109829E08DC210F013202982A8A900386A88D0FCACC21089 +:201680002CC010D0036838606818604898C9109004C9189002A908202F82A86860A9C6205A +:2016A00051938AF00920C196D004A9C6D00CA9C720519320C196D011A9C7A200A0004CF46F +:2016C000FF8AA8208B96CCC210604898488AA820E29698204B99D004A2FFD002A20068A813 +:2016E0006860208B9620669690F7209D96205880DE4368616E6E656C00205880DF454F46AB +:2017000000202E8420E29698204B99D013B917112910D0E5A910207C97AEC510A9FE386063 +:20172000B91711300A205794208B9738209397B9101185BAB9131185BBA000B1BA48ACC2C8 +:2017400010A6BAE88A991011D01418B911116901991111B912116900991211208197186838 +:201760006018B90F1179111185C3991C11B90D11290379121185C2991D11A980191711D088 +:2017800005A97F3917119917111860B917112940F0451808EEDD10ACC210B9131185BDA9C2 +:2017A000FF8D74108D7510A90085BC85C0A90185C128B017B91C1185C3B91D1185C2208AF3 +:2017C000A4ACC210A9BF20839790062061972073A4CEDD10ACC210604CC392205880C1521B +:2017E000656164206F6E6C79002005844CF59720058420E29648B90C1130E0B90E1130D80D +:2018000020579498186904204B99D066203F94AEC31038BD070FFD0F0F48BD060FFD0E0F98 +:201820002903D91A11D01F68D91911D03484B48CC210209D96205880BF43616E2774206548 +:201840007874656E6400B91A11186901991A110A0A0A0A5D0E0F29305D0E0F9D0E0F68A9FB +:20186000009D0D0F991911A9009D0C0F20B2A4ACC210B917113017208B97B91411D00B98DC +:20188000204B99D005206197D00438209397B9101185BAB9131185BB68A00091BAACC210FA +:2018A000A940207C97E6BAA5BA991011D013208197B911116901991111B912116900991248 +:2018C0001198204B999011A920207C97A202B91011991411C8CA10F66020058420E296AC9D +:2018E000C210206399B02FB91411991011B91511991111B91611991211202599A5B648A527 +:20190000B748A5B848A90020E9976885B86885B76885B64CE298B500991011B50199111148 +:20192000B502991211A96F208397B90F117911118DC410B90D112903791211D91D11D098FF +:20194000ADC410D91C11D0904C7A97AAB91211DD1611D00EB91111DD1511D006B91011DD70 +:20196000141160B91411D500B91511F501B91611F5026098A200A01448209E800D4D4D46C2 +:20198000532086BF84B7A200BD1680F00620E980E8D0F5A90D20E980A90085B9A0012050FC +:2019A0009A20EB99209680C6B7D0ED68A8A2A34CDD8798A2B7A008D0BF98A276A005D0B86F +:2019C00020CB81F07820B08190FBB0E120CB81F00160206880DC53796E7461783A2086B905 +:2019E00020EB99A900203E9A4C0001A90785B8A6BFE0B79005A944203E9AE8BD8986300608 +:201A0000203E9A4CFA99A4B8300320509A86BFBD8986297F201A9A202A82200584290FF02C +:201A20001CA8A920203E9AA2FFE8BD5D9A10FA88D0F7297F203E9AE8BD5D9A10F7602005C3 +:201A400084A6B9F006E6B99D000160C6B84CE980A5B9D008A920203E9A8810FA60BC647262 +:201A60006976653EBC616673703EA84C29A83C64726976653E29A83C64726976653E292E2B +:201A80002E2EA83C6469723E29BC646E6F3E2F3C6473703EBC6673703ED02F552F4E2F4BA7 +:201AA0002F52BC7469746C653EA83C726F6D3E29BC736F757263653E203C646573742E3EED +:201AC000BC6F6C64206673703E203C6E6577206673703EA8283C662E646E6F3E29203C74FF +:201AE0002E646E6F3E2920283C616473703E29B4302F3830FF205D8C209E80436F6D7061CC +:201B00006374696E67203A8DD1108DD210200D81209680A00020EB9320FB9220A283AC05B4 +:201B20000F84CAA90285C8A90085C9A4CA20D482C0F8D028AD070F38E5C848AD060F2903E7 +:201B4000E5C9200D8168200581209E80206672656520736563746F72730DEA6084CA2057DC +:201B600083A4CAB90C0FC901A90085BC85C0790D0F85C4B90E0F0820228228690085C5B993 +:201B80000F0F85C6B90E0F290385C7C5C9D014A5C6C5C8D00E1865C485C8A5C965C585C9D2 +:201BA0004CC19BA5C8990F0FB90E0F29FC05C9990E0FA90085A885A920B2A420719D209979 +:201BC000A4A4CA205C834C2B9B2CC710104B20259CF00268684C968020628C8DD110206281 +:201BE0008C8DD210CDD110F031984820FB92209E80436F7079696E672066726F6D203AAD9C +:201C0000D110200D81209E8020746F203AADD210200D8120968068A818604C7C8C209E800D +:201C2000203A20900F209E80476F2028592F4E29203F20EA20369320E0FFB00E295FC95997 +:201C400008F002A94E20E98028604C7C8D4C458B20D89B20C99BA90085C785C985C885C61F +:201C600085A8ADD11085CD20A1A4AD070F85C4AD060F290385C5ADD21085CD20A1A4AD06B5 +:201C80000F2903C5C590C6D007AD070FC5C490BD20719D20A1A4A20AE0089005BDF80EB08A +:201CA00003BD000E9D0010CA10EE4C968A201A9220D89B20CC99205481ADD11020D6882070 +:201CC0003D82A5CC48A5B685AB205C83A200B9080E95C59D5010B9080F95BB9D4710E8C876 +:201CE000E008D0EAA5C120228285C3A5BF1869FFA5C0690085C4A5C3690085C5AD4E10852A +:201D0000C6AD4D10290385C7A9FF85A820719DADD11020D68820A283A5AB85B66885CC20C3 +:201D2000A282B09E6020609DADD21085CDA5CC4820A283208F829003202C836885CC202445 +:201D40008C203B8CA5C220228285C4208A8BA5C2290348A5C34820609D6885C86885C960F4 +:201D6000A211BD4510B4BA95BA989D4510CA10F260A90085BC85C0F06DA5C4A8CDD010A53C +:201D8000C5E9009003ACD01084C1A5C685C3A5C785C2ADCF1085BDADD11085CD20ED9D2053 +:201DA00073A4ADD21085CD24A8100720259DA90085A8A5C885C3A5C985C2ADCF1085BD2038 +:201DC000ED9D208AA4A5C11865C885C89002E6C9A5C11865C685C69002E6C738A5C4E5C178 +:201DE00085C4B002C6C5A5C405C5D08D60A9FF8D74108D751060A900F002A9FF85C985B27A +:201E0000101820CC99209284B00D0AD00A86B5E028F007E050F0034CD29920CB8184CAD0A0 +:201E20004B24C9300B209E80566572696679900A209E80466F726D6174EA209E8020776814 +:201E4000696368206472697665203F20EA20E0FFB031C920903020E98038E9309028C904C3 +:201E6000B02485CD209680A4CA4C6F9E20658C84CA24B2100320C99B20899EA4CA20CB8152 +:201E8000D0EA604C7C8D4C7C8C24C930112071A3209E80566572696679696E679017206EF7 +:201EA000A320239F209E80466F726D617474696E67A6CD86B2209E8020647269766520A55C +:201EC000CD200D81209E8020747261636B202020EA24C9300820349F8AF04585B5A2FF8E8A +:201EE0008210E886B4A90820E98020E980A5B420058120CCA4E6B4A5B4C5B5D0E824C910BA +:201F00001F20CAAF20239FA5B5C928D006A001A290D004A003A2208E070F8C060F20B2A43F +:201F20004C9680A0FF8C8210C89899000E99000FC8D0F76020A1A4AD060F2903AAAD070F24 +:201F4000A00A84B0A0FF38C8E5B0B0FBCA10F765B04898AA68F001E86038B0011866C62066 +:201F60005D8C20A28324C6301520C18041646472657373203A20204C656E6774680DAD0621 +:201F80000F290385C585C2AD070F85C438E90285C1B002C6C2A90285BBA90085BC85BF8528 +:201FA000C0AD050F29F8A8F028D0112048A020D482A5C438E5BBA5C5E5BC9015B9070F3868 +:201FC000E5BB85C108B9060F290328E5BC85C290DA84BD24C63009A5C105C2F0032024A037 +:201FE000A5C11865BF85BFA5C265C085C0A4BDD0BA24C6102EA8A6BFA9F838ED050F20739D +:20200000A020C180467265650DA5C438E5BFAAA5C5E5C0A8AD050F2073A020C18055736508 +:20202000640DEA60A5BC201D81A5BB20158120C18020202020203A2020A5C2201D81A5C1AA +:20204000201581A90D20E3FFB9060F4820228285BC6829031865BC85BCB9040FF002A90181 +:202060001879050F9002E6BC1879070F85BB9002E6BC60202B8220128120C1802046696CF0 +:2020800065732086BC84BD98201D818A20158120C18020536563746F727320A90085BB853D +:2020A000BEA21F86C1A2099D0010CA10FA06BB26BC26BD26BEA200A009BD00102AC90A901F +:2020C00002E90A9D0010E88810EFC6C110DFA020A205D002A02CBD0010D008C02CF004A946 +:2020E00020D005A02C18693020E3FFE003D0049820E3FFCA10DC20C18020427974657320BD +:20210000EA60A2FFD002A200A0FF8C821085B086B1203B806885B86885B9A0008C9F108CAA +:202120000001C8F007B1B8990001D0F6A5B0208A8DA5B1F018A92F990001C8AD8910208A02 +:202140008DAD8A10208A8DAD8B10208A8DA9009900014C0001A9DD8D8210A90085BE85BF90 +:2021600085C0207BA9206CA1F00F1860ADFE0FC955D005ADFF0FC9AA60AD000EC9EBD00EAA +:20218000AD020EC990D007AD0C0EC902F032ADC60F0A85BEADC70F2A85BFADC80F2AB00F71 +:2021A00085C0ADC90FD008207BA9206CA1F011206880FF4361726420666F726D61743F00A2 +:2021C000AD0B0ED0EAAD0C0EC902D0E3AD110E85C1AD120E4A66C14A66C14A66C185C2AD14 +:2021E0000D0E85C3AD0E0E0A2E0F0EB0C265BE85BEAD0F0E65BF85BF9002E6C0AD110E0D43 +:20220000120EF014AD160E8D240EAD170E8D250EA9008D260E8D270E0E240E2E250E2E2657 +:202220000E2E270EB089AE100E18A5BE6D240E85BEA5BF6D250E85BFA5C06D260E85C0CA6E +:20224000D0E7207BA93860A20086C4A90E85C5E8A00BB1C4290FD00D88B9F010D1C4D00536 +:202260008810F6301018A5C4692085C4D0E2E6C5CA10DD386018A5BE65C185BEA5BF65C222 +:2022800085BF9002E6C0A01BB1C44888B1C438E90285C468E90085C505C4F01A06C426C5BE +:2022A000A6C318A5BE65C485BEA5BF65C585BF9002E6C0CAD0EC1860A00DA90059E0100A1D +:2022C000A207900249120ACAD0F8900249128810EB09016020058420B8A2CDEE10D00160D3 +:2022E000204E80FF53756D0020058420B8A28DEE1060A20A203EA32013A98DED108CEC1013 +:20230000A9008DEB1020E8A22055A190052047A2B017A5BE8DE810A5BF8DE910A5C08DEAB9 +:2023200010A9FF8DEB104CE8A2206880FF496D616765206E6F7420666F756E642100A00A25 +:20234000B94AA399F0108810F76042454542202020204D4D42A6CDBDE4100A30266020726F +:20236000A3BDE01085B8BDE410290185B96038B00118A6CDBDE41010182908B003D01E60D8 +:20238000F02D60204380C972656164206F6E6C7900206880C74E6F20646973630020438064 +:2023A000C76E6F7420666F726D617474656400204380C7616C726561647920666F726D615E +:2023C00074746564002071A3BDE4106ABDE01008AAA90085BE2A4885C08A0A26C085BF8AB3 +:2023E00065BF85BF68690065C085C066BE8A286A66BE4A66BE4A66BE65BF85BFA5C06900C4 +:2024000085C038A5BE091F6DE81085BEA5BF6DE91085BFA5C06DEA1085C06020C5A318AD40 +:20242000971065BE85BEAD961029034865BF85BF9002E6C0AD951085CEAD96104A4A4A4A08 +:20244000290385CFAD941085C3F006E6CED002E6CF18AD971065CEAA6865CFC9039006D01B +:2024600005E021B00160204380FF6F766572666C6F77002075AB201BA420D6A9AD9E10F0E6 +:202480000320708D20E4ABA901602075AB201BA42055A32082AA4C7CA4AD8210C5CDD001D2 +:2024A000602075AB20C5A3207BA9A5CD8D82104CE4ABAD040F18F869018D040FD82075AB52 +:2024C00020C5A32055A32092A94CAAA4A5B4D005A6CD20C8A3A90585B624C93006207BA9EB +:2024E0004CE6A42092A9E6BEE6BED006E6BFD002E6C0C6B6D0E360A5B96AA4B8C898D0018C +:20250000382A2A2A2A2A48291FA8686A29F085B0982901090E85B19829FE09806018205E0C +:20252000A320F7A420A4A5A00FB1B0C9FFF002AA60204380C76E756D626572206E6F74203C +:2025400076616C6964008A48A203BDE010C5B8D00CBDE4102901C5B9D0039DE410CA10EA6D +:2025600068AA60A9C085B72021A5F00A1004A9C8D002A98085B720D4A22046A5A6CDA5B837 +:202580009DE010A5B905B79DE4104CE8A2297E186DE81085BEADE910690085BFADEA106963 +:2025A0000085C060CD8210F0FA8D8210208DA54C7BA9AD8210208DA54C92A9203D8420F73C +:2025C000A485B220A4A54C1FA6A90085B585B685B885B9A91085B0A90E85B1A98085B220B2 +:2025E000A4A54C1FA6C9FFF03E24B7303818A5B0691085B0D016A5B1490185B16AB00DA5A5 +:20260000B26902C9A0F02085B220A4A5E6B8D002E6B9F818A5B5690185B59002E6B6D8A0C1 +:202620000FB1B030C01860A9FF85B93860A9038D60FEAD62FE09038D62FE2077A7A91C8D17 +:202640006EFE602088A7A9042C6DFEF0FB2077A7AD6AFE608E60FE8D60FE8E60FE8D60FECF +:202660008E60FE8D60FE8E60FE8D60FE8E60FE8D60FE8E60FE8D60FE8E60FE8D60FEAD6A10 +:20268000FE600A2A29FD8D60FE09028D60FE2A29FD8D60FE09028D60FE2A29FD8D60FE092C +:2026A000028D60FE2A29FD8D60FE09028D60FE2A29FD8D60FE09028D60FE2A29FD8D60FE90 +:2026C00009028D60FE2A29FD8D60FE09028D60FE2A29FD8D60FE09028D60FE60A002A201FD +:2026E0002043A688D0FA60A200A007BD87102082A6E888D0F620FBA64C54A6A201A0008832 +:20270000F00FA9038E60FE8D60FEAD6AFE2901D0EEA90360A2012043A6C9FED0F960A200F0 +:20272000F002A6C32088A7A000AD9E10D00A205CA791BCC8CAD0F760205CA78DE5FEEAEA8A +:20274000EAC8CAD0F360A2FF8E8210E82088A7A000205CA799000EC8CAD0F660A904E00132 +:20276000F0092C6DFEF0FBAD6AFE602C6DFEF0FB2077A7AD6AFE60AD6BFE29E38D6BFEAD6F +:2027800062FE09028D62FE60AD62FE29FD8D62FEAD6BFE29E309088D6BFEAD6AFE6020DCC7 +:2027A000A6A9FE4C82A620DCA620FBA62066A6A8291FC905D030A2012043A6C9FFD0F9606E +:2027C000AC9E10D009B1BC2082A6C8D0F860A000ADE5FE2082A6C8D0F760A000B9000E2033 +:2027E00082A6C8D0F760982002A1C54D4D4320577269746520726573706F6E736520666124 +:20280000756C7420008D8810A9008D89108D8A108D8B108D8C10A9FF8D87108D8D108D8EC6 +:202820001060203180A9008D9F10A93285C2A00A20DEA6A9402005A8A9958D8D1020E7A637 +:202840002981C901F0034CEEA8A9018DDE10A9482005A8A9018D8B10A9AA8D8C10A9878D41 +:202860008D1020E7A6C901F024A9028DDE10A9412005A820E7A6C90290034CEEA824FF3013 +:202880006DC900D0E9A9028DDE104CD5A82043A62043A62043A62043A6A9772005A820E742 +:2028A000A6A9692005A8A9408D891020E7A6C900D0E7A97A2005A820E7A6C900D03020438E +:2028C000A62940482043A62043A62043A668D005A9028DDE10A9502005A8A9028D8B10206A +:2028E000E7A6D016A9408D9F10203B801860C6C2F0034C2EA8203B8038602002A1FF536563 +:202900007420626C6F636B206C656E206572726F722000A94A2005A82033A9A01020DEA63F +:202920002043A6A84C43A6A958D002A9512005A84CEFAB20E7A6D0034C14A72002A1C54DD5 +:202940004D432052656164206661756C74200020E7A6D0034C9EA72002A1C54D4D43205702 +:2029600072697465206661756C742000203180A9008D9E1085BCA90E85BD60206CA9202B78 +:20298000A92033A9201EA7E6BD201EA720DCA64C3B80206CA92027A9204FA920C0A7E6BD15 +:2029A00020C0A720A6A74C3B8048AD90108D7210AD91108D7310AD74102D75100DD61049FB +:2029C000FF8D9E1038F00D20618DA272A010684820060418686020318020E0A94C3B80601B +:2029E000A6CED004A5CFF0F7A90120A9A9A6CE66BE66C21007E886CED002E6CF06BE202B6F +:202A0000A9A5CFD00EA6CEE003B008A5C3D043E001F03624C2100D2033A9A00084C220DE47 +:202A2000A64C2CAA2033A9201EA7E6BD201EA7E6BD20DCA62023ACA9FE2021ABF0A1A5CF99 +:202A4000D0E2E003B0DE4C0BAA2033A9201EA74C79AA2033A924C21008A00020DEA64C6A0E +:202A6000AAC6CEF005201EA7E6BD2022A79849FFA8C820DEA6A5CED005A00020DEA64CDC0A +:202A8000A660203180208BAA4C3B80A6CED004A5CFF0EEA90020A9A9A6CE66BE6A06BE4840 +:202AA0002027A9681032A9518D88102033A92046A7A00020DEA6A00220DEA6A9588D8810A4 +:202AC000204FA920DAA720C0A720A6A7A9FF2021ABF0AEE6BD2023ACA5CFD02DA6CEF04070 +:202AE000CAD026A9518D88102033A9A00020DEA62046A7A00220DEA6A9588D8810204FA926 +:202B000020C0A720DAA74CA6A7204FA920C0A7E6BD20C0A7E6BD20A6A7A9FE2021ABD0B503 +:202B2000601865CE85CEAAA9FF65CF85CF05CE60203180A9008D9E10A202B5B395BECA109C +:202B4000F9202BA92033A9A90085BCA91085BDA90885C32022A7A0F820DEA6A90885BC8512 +:202B6000C32022A7A0FA20DEA64C3B802005842075AB4CE4ABA209B5BC9D9010CA10F82055 +:202B80002DA62C9F1070082022A8B01220B9AB20D4A2ADEB10F0016020F2A24CA8AB206875 +:202BA00080FF436172643F00A90085B9A20386CD86B82063A5CA10F66020D4A2ADEB10F03A +:202BC0000D2013A9CDED10D006CCEC10D00160A9008D9F10206880FF57726F6E6720636196 +:202BE00072642100A209BD901095BCCA10F860ADDE10C902D015A5C08D8910A5BF8D8A10F2 +:202C0000A5BE8D8B10A9008D8C1060A9008D8910A5C04A8D8A10A5BF6A8D8B10A5BE6A8D02 +:202C20008C1060ADDE10C902D011EE8B10EE8B10D008EE8A10D003EE891060EE8C10F0EDBE +:202C400060A98085B220A9A5A91085B0A90E85B1A9001820CFA3A203B5BE95B3CA10F9A045 +:202C60000FB1B0C9FFF0472030AB18A5B3692085B3A5B4690385B49002E6B5A00BB900101A +:202C800091B08810F818A5B0691085B0D0D1A5B1490185B16AB0C820B2A518A5B26902C9D5 +:202CA000A0F01685B220788D20A9A54C5FACA5B0D00466B190034CB2A560A2008E0E101811 +:202CC00020C2FFF02020C5FFB01BC92AF024C9619006C97BB00249209D0010E8E00CD0E5F8 +:202CE00020C5FF9012C90DD01DA9009D00108E0D10608D0E10F0E9206880FF426164207305 +:202D00007472696E67004CD299A000AE0D10F017B1B0F025C9619006C97BB0024920D900F8 +:202D200010D016C8CAD0E9B1B0F00CAD0D10C90CF005AD0E10F00218603860B005A92020F6 +:202D4000E980A2202095ADA92020E980A00FB1B03025A000B1B0F00820E980C8C00CD0F455 +:202D6000A92020E980C8C00DD0F8AAA00FB1B0D002A2508A4CE980A00D201982A9554CE94C +:202D800080202E84BDE01085B8BDE410290185B9203D84A200A004A5B6209EADA5B5484A05 +:202DA0004A4A4A20A7AD68290FF008A2301869304CE98088D002A2308A4CE980209E804404 +:202DC0005554494C53206279204D617274696E204D6174686572202832303131290DEA60CF +:202DE00020CC99A90085CD20CE8C2063A5A9004CCB8D20978C4C63A5205D8C20D4A2A6CDBB +:202E00008A9DE4104CE8A2A90085B785AA85AB209284B02586A886B885A985B9209284B0B4 +:202E20001F86A885A9E4B8E5B9101B206880FF4261642072616E676500A2FE86A8E886A992 +:202E4000A90085B885B9E6A8D002E6A920BAAC20BBA5A200AD0D10D004CA8E0E10A5B93015 +:202E60002AA5B8C5A8A5B9E5A9B0202009ADB012203BADF818A5AA690185AAA5AB690085CC +:202E8000ABD820788D20EDA54C5DAEA98620F4FFE000F003209680A5ABA200A004209EAD35 +:202EA000A5AA209EAD209E802064697363A5ABD004C6AAF005A97320E980209E8020666FF6 +:202EC000756E64EA4C96804CD29920CB81D0F8A20086A886A986AA86ABA98020A4A5A910C9 +:202EE00085B0A90E85B1A00FB1B0C9FFF03CF8A8100B18A5A8690185A89002E6A918A5AA6D +:202F0000690185AA9002E6ABD818A5B0691085B0D0D4A5B1490185B16AB0CBAD82106902F9 +:202F2000C9A0F00620A4A54CE6AEA004A200A5A9209EADA5A8209EAD209E80206F6620A23D +:202F400000A004A5AB209EADA5AA209EAD209E802064697363A5ABD006A5AAC901F005A97A +:202F60007320E980209E8020667265652028756E666F726D617474656429EA4C968084B3B8 +:202F8000A9FF85B7A90385CDA4B320CB81F00520658C9002A90048AAA93A20EEFF188A695E +:202FA0003020EEFFBDE4101014290185B9BDE01085B820BBA5C9FFF00438203BAD20E7FF2B +:202FC00068C5CDF004690190CD6038201EA51027A900A891B0C8C00FD0F998D00FA900F088 +:202FE00002A90F48201DA5300B68A00F91B020B2A54C63A54C9DA34CAFA320C99B201DA5FF +:203000002055A320BBA5209E804B696C6CEA38203BAD209E80203A20EA20349C0820968054 +:2030200028D006A9F0484CE4AF60A90F4838201EA530B610C22070B0B0242063A5209E8025 +:203040004469736320A2002095AD209E8020696E203AA5CDA200A002209EAD4CE7FF20685F +:2030600080FF4E6F206672656520646973637300A9FF85B720C9A5B00EC9F0F00920EDA588 +:20308000B005C9F0D0F7186020CB81F00AA20ADDAAB0F006CA10F84C038B8A29FEAABDB5CB +:2030A000B048BDB4B048C84C5D8C72526B4B6E4E7555705029B0F9AF34B0E0AFDCAFA001D2 +:2030C000A202203A81A00084C384CFB1B0300320D688206CABA005B1B018690785B220EB1E +:2030E000B0A4B291B0A90060A90060A6CDBDE41010212908D01AC8B1B085B3C953F01AC9B7 +:2031000057F016C94BD0E1BDE4100A100CA91260A91E60A91060A9FF60A5B2C90AD0F7A9B9 +:203120000085B5C8B1B0C950B0E60A85B40A26B50A26B565B485B49002E6B5C8B1B0C90AF5 +:20314000B0CE1865B485B49002E6B5C8B1B0291FF03185CE188871B0C90BB0B4A6CD20C821 +:20316000A318A5BE65B485BEA5BF65B585BF9002E6C0A5B3C94BF00E20D6A9AD9E10F00384 +:2031800020708DA900602082AA4C7BB1A90085A820ADB2A90F85AA20A0B23820C2FF84AB4F +:2031A00018F01F209284B01AC900D0F7E010B0F38A84AB85AA2016B2A4AB20CB8184ABD03B +:2031C000E26066A824A8100520D5B190032016B2C6AA10F060A90985F6A98085F7A4ABB1FB +:2031E000F2C90DF022C922F01EC8C92AF02620208385AE2092B2F00DA6AEE023F0E120206C +:2032000083C5AEF0DA18602092B2F008C920F0F7C90DD0F13860A4AAB1B4F0E948209E8009 +:20322000526F6D2098200281209E80203A20A92820E98068483004A020D002A0539820E9E9 +:203240008068A0200A1002A04C9820E980A92920E980202681205DB22096803860A9078549 +:20326000F6A98085F72092B285AEE6F6A01E2085B2B007202681882085B260C920B002A92A +:203280002020E98088A5F6C5AEB0062092B2D0EB18609848A4AA20B9FFE6F6AA68A88A601C +:2032A000202E84A9AA20519386B484B560BAA9009D070160A6F4BDF00D293F85ADE6AD60C9 +:2032C00020CFB3A900F00520CFB3A9FF85ABA94020CEFFA8A90DC000D01E4C428220D7FF4C +:2032E000B01EC90AF0F728D0084820FAB32026816820E3FF24FF301F25ABC90D084CDDB205 +:203300002820E7FFA9004CCEFF20CFB3A94020CEFFA8F0C620B4B224FF3064A5A9200EB47A +:20332000A5A8200EB4202681A90885ACA20020D7FFB00D81AC200EB4202681C6ACD0EF1841 +:20334000089013A92A20E3FF20E3FF202681A90081ACC6ACD0ED206CB320E7FFA9081865AC +:20336000A885A89002E6A928B09A90ABA90885ACA200A1AC20858420E3FFC6ACD0F26020FA +:2033800046932004B34C7C8D20CFB3A98020CEFF85AB20FAB320268120B4B2A2ACA0FF84B5 +:2033A000AE84B0C884ACA92085AF9820F1FF0884AAA4ABA200F007A1AC20D4FFE6ACA5AC4D +:2033C000C5AAD0F328B0B8A90D20D4FF4C92B3BAA9009D070120F3B3C90DD0034CD299A91A +:2033E0000085A885A948981865F2AAA5F36900A86860C8B1F2C920F0F960F818A5A86901A4 +:2034000085A8A5A9690085A9D8200EB4A5A848202A822016B468202F8120E3FF3860370587 +:203420009605F2050706270668065E052D0520054205A905D105868896981818821820C5E2 +:2034400006A820C50620D4FF4C9C0520C506A820D7FF4C3A0520E0FF6A2095062A4C9E05A2 +:2034600020C506F00B482082056820CEFF4C9E0520C506A8A90020CEFF4C9C0520C506A88A +:20348000A20420C50695FFCAD0F820C50620DAFF209506A203B500209506CA10F84C36006D +:2034A000A200A00020C506990007C8F004C90DD0F3A0076020820520F7FFA97F2CE2FE50A2 +:2034C000FB8DE3FE4C3600A21020C5069501CAD0F820820586008401A00020C50620DDFF03 +:2034E000209506A210B501209506CAD0F8F0D5A20D20C50695FFCAD0F820C506A00020D15B +:20350000FF48A20CB500209506CA10F8684C3A0520C506AA20C50620F4FF2CE2FE50FB8E09 +:20352000E3FE4C360020C506AA20C506A820C50620F4FF499DF0EB6A2095062CE2FE50FBC5 +:203540008CE3FE70D520C506A82CE2FE10FBAEE3FECA300F2CE2FE10FBADE3FE9D2801CA42 +:2035600010F298A228A00120F1FF2CE2FE10FBAEE3FECA300EBC28012CE2FE50FB8CE3FEDF +:20358000CA10F24C3600A20420C5069500CA10F8E8A0008A20F1FF9005A9FF4C9E05A200F5 +:2035A000A97F209506BD0007209506E8C90DD0F54C36002CE2FE50FB8DE3FE602CE6FE501F +:2035C000FB8DE7FE60A5FF386A300F48A90020BC069820BC068A20BC06682CE0FE50FB8D96 +:2035E000E1FE602CE2FE10FBADE3FE60C909D02A9848B1F2C90DD01EA9E9205193A6F498AC +:20360000F014209E800D5455424520484F535420322E33300DEA68A8A909C9FE905CD01B93 +:20362000C000F056A206A91420F4FF2CE0FE10FBADE1FEF04320EEFF4C2BB6A9AD8D2002F9 +:20364000A9068D2102A9168D0202A9008D0302A98E8DE0FEA000B9BCB6990004B91EB49952 +:203660000005B91EB599000688D0EB202104A241BD7BB69516CA10F8A90060A9FF209E06CF +:20368000ADE3FEA900209506A8B1FD209506C8B1FD209506AAD0F7A2FF9A582CE0FE1006D2 +:2036A000ADE1FE20EEFF2CE2FE10F02CE0FE30F0AEE3FE86516C0005008000004C84044CC4 +:2036C000A706C980902BC9C0B01A0940C515D0200878A905209E06A515209E0628A980858D +:2036E000158514600614B006C515F0041860851560087884138612209E06AAA003A5152012 +:203700009E06B112209E068810F8A0188CE0FEBD18058DE0FE4A4A90062CE5FE2CE5FE201F +:203720009E062CE6FE50FBB00DE004D0112014042095064C32004A9005A0888CE0FE28609E +:2037400058B00AD0034C9C05AE8D02F0E0A9FF20060490F920CE040878A90720C704A00082 +:203760008400B1008DE5FEEAEAEAC8D0F528E654D006E655D002E656E601240150D920CEB5 +:2037800004A904A000A2534C0604A98085548501A9202D0680A88453F019AE0780E8BD0027 +:2037A00080D0FABD01808553BD02808554BC0380BD048085568455600000000000000000FD +:2037C0000000000000000000000000000000000000000000000000000000000000000000E9 +:2037E0000000000000000000000000000000000000000000000000000000000000000000C9 +:203800000000000000000000000000000000000000000000000000000000000000000000A8 +:20382000000000000000000000000000000000000000000000000000000000000000000088 +:20384000000000000000000000000000000000000000000000000000000000000000000068 +:20386000000000000000000000000000000000000000000000000000000000000000000048 +:20388000000000000000000000000000000000000000000000000000000000000000000028 +:2038A000000000000000000000000000000000000000000000000000000000000000000008 +:2038C0000000000000000000000000000000000000000000000000000000000000000000E8 +:2038E0000000000000000000000000000000000000000000000000000000000000000000C8 +:203900000000000000000000000000000000000000000000000000000000000000000000A7 +:20392000000000000000000000000000000000000000000000000000000000000000000087 +:20394000000000000000000000000000000000000000000000000000000000000000000067 +:20396000000000000000000000000000000000000000000000000000000000000000000047 +:20398000000000000000000000000000000000000000000000000000000000000000000027 +:2039A000000000000000000000000000000000000000000000000000000000000000000007 +:2039C0000000000000000000000000000000000000000000000000000000000000000000E7 +:2039E0000000000000000000000000000000000000000000000000000000000000000000C7 +:203A00000000000000000000000000000000000000000000000000000000000000000000A6 +:203A2000000000000000000000000000000000000000000000000000000000000000000086 +:203A4000000000000000000000000000000000000000000000000000000000000000000066 +:203A6000000000000000000000000000000000000000000000000000000000000000000046 +:203A8000000000000000000000000000000000000000000000000000000000000000000026 +:203AA000000000000000000000000000000000000000000000000000000000000000000006 +:203AC0000000000000000000000000000000000000000000000000000000000000000000E6 +:203AE0000000000000000000000000000000000000000000000000000000000000000000C6 +:203B00000000000000000000000000000000000000000000000000000000000000000000A5 +:203B2000000000000000000000000000000000000000000000000000000000000000000085 +:203B4000000000000000000000000000000000000000000000000000000000000000000065 +:203B6000000000000000000000000000000000000000000000000000000000000000000045 +:203B8000000000000000000000000000000000000000000000000000000000000000000025 +:203BA000000000000000000000000000000000000000000000000000000000000000000005 +:203BC0000000000000000000000000000000000000000000000000000000000000000000E5 +:203BE0000000000000000000000000000000000000000000000000000000000000000000C5 +:203C00000000000000000000000000000000000000000000000000000000000000000000A4 +:203C2000000000000000000000000000000000000000000000000000000000000000000084 +:203C4000000000000000000000000000000000000000000000000000000000000000000064 +:203C6000000000000000000000000000000000000000000000000000000000000000000044 +:203C8000000000000000000000000000000000000000000000000000000000000000000024 +:203CA000000000000000000000000000000000000000000000000000000000000000000004 +:203CC0000000000000000000000000000000000000000000000000000000000000000000E4 +:203CE0000000000000000000000000000000000000000000000000000000000000000000C4 +:203D00000000000000000000000000000000000000000000000000000000000000000000A3 +:203D2000000000000000000000000000000000000000000000000000000000000000000083 +:203D4000000000000000000000000000000000000000000000000000000000000000000063 +:203D6000000000000000000000000000000000000000000000000000000000000000000043 +:203D8000000000000000000000000000000000000000000000000000000000000000000023 +:203DA000000000000000000000000000000000000000000000000000000000000000000003 +:203DC0000000000000000000000000000000000000000000000000000000000000000000E3 +:203DE0000000000000000000000000000000000000000000000000000000000000000000C3 +:203E00000000000000000000000000000000000000000000000000000000000000000000A2 +:203E2000000000000000000000000000000000000000000000000000000000000000000082 +:203E4000000000000000000000000000000000000000000000000000000000000000000062 +:203E6000000000000000000000000000000000000000000000000000000000000000000042 +:203E8000000000000000000000000000000000000000000000000000000000000000000022 +:203EA000000000000000000000000000000000000000000000000000000000000000000002 +:203EC0000000000000000000000000000000000000000000000000000000000000000000E2 +:203EE0000000000000000000000000000000000000000000000000000000000000000000C2 +:203F00000000000000000000000000000000000000000000000000000000000000000000A1 +:203F2000000000000000000000000000000000000000000000000000000000000000000081 +:203F4000000000000000000000000000000000000000000000000000000000000000000061 +:203F6000000000000000000000000000000000000000000000000000000000000000000041 +:203F8000000000000000000000000000000000000000000000000000000000000000000021 +:203FA000000000000000000000000000000000000000000000000000000000000000000001 +:203FC0000000000000000000000000000000000000000000000000000000000000000000E1 +:203FE0000000000000000000000000000000000000000000000000000000000000000000C1 +:00000001FF diff --git a/cores/bbc/roms/mmfs.rom b/cores/bbc/roms/mmfs.rom new file mode 100644 index 0000000000000000000000000000000000000000..3e82d4534969f7f2253a0537e3e04f7d8aeeaf1e GIT binary patch literal 16384 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