From 2934cde1598f58f59adbefbe2f8b8ad0bc6c895f Mon Sep 17 00:00:00 2001 From: sparky4 Date: Mon, 21 Dec 2015 10:08:29 -0600 Subject: [PATCH] wwww --- 16.exe | Bin 77504 -> 0 bytes 16/x/default.fnt | 260 ------------- 16/x/makefile | 81 ---- 16/x/modex.def | 163 -------- 16/x/modex.h | 153 -------- 16/x/modex.lbr | 38 -- 16/x/modex.pas | 194 ---------- 16/x/modex/DEMO01.EXE | Bin 10208 -> 0 bytes 16/x/modex/DEMO01.PAS | 126 ------ 16/x/modex/DEMO02.EXE | Bin 24688 -> 0 bytes 16/x/modex/DEMO02.PAS | 125 ------ 16/x/modex/DEMO03.EXE | Bin 14256 -> 0 bytes 16/x/modex/DEMO03.PAS | 152 -------- 16/x/modex/DEMO04.DAT | Bin 37662 -> 0 bytes 16/x/modex/DEMO04.EXE | Bin 24384 -> 0 bytes 16/x/modex/DEMO04.PAS | 198 ---------- 16/x/modex/DEMO05.EXE | Bin 22528 -> 0 bytes 16/x/modex/DEMO05.PAS | 131 ------- 16/x/modex/DEMO06.DAT | Bin 77568 -> 0 bytes 16/x/modex/DEMO06.EXE | Bin 10864 -> 0 bytes 16/x/modex/DEMO06.PAS | 135 ------- 16/x/modex/DEMO07.EXE | Bin 7440 -> 0 bytes 16/x/modex/DEMO07.PAS | 68 ---- 16/x/modex/MATH.INC | 34 -- 16/x/modex/PLASMA.PAS | 103 ----- 16/x/modex/QIX2.EXE | Bin 10336 -> 0 bytes 16/x/modex/QIX2.PAS | 210 ---------- 16/x/modex/README.TXT | 8 - 16/x/modex/SINCOS.INC | 518 ------------------------- 16/x/modex/THREED.ASM | 872 ------------------------------------------ 16/x/modex/THREED.H | 32 -- 16/x/modex/THREED.PAS | 40 -- 16/x/mxbb.asm | 278 -------------- 16/x/mxcc.asm | 644 ------------------------------- 16/x/mxcg.asm | 69 ---- 16/x/mxcl.asm | 151 -------- 16/x/mxcr.asm | 380 ------------------ 16/x/mxel.asm | 167 -------- 16/x/mxfb.asm | 194 ---------- 16/x/mxfp.asm | 326 ---------------- 16/x/mxgc.asm | 54 --- 16/x/mxgi.asm | 132 ------- 16/x/mxgm.asm | 63 --- 16/x/mxgp.asm | 56 --- 16/x/mxgv.asm | 25 -- 16/x/mxhl.asm | 76 ---- 16/x/mxit.asm | 98 ----- 16/x/mxll.asm | 82 ---- 16/x/mxln.asm | 414 -------------------- 16/x/mxot.asm | 330 ---------------- 16/x/mxpb.asm | 22 -- 16/x/mxpf.asm | 420 -------------------- 16/x/mxpg.asm | 589 ---------------------------- 16/x/mxpi.asm | 267 ------------- 16/x/mxpn.asm | 60 --- 16/x/mxpp.asm | 121 ------ 16/x/mxra.asm | 37 -- 16/x/mxrp.asm | 101 ----- 16/x/mxsa.asm | 44 --- 16/x/mxsc.asm | 50 --- 16/x/mxsi.asm | 317 --------------- 16/x/mxsl.asm | 62 --- 16/x/mxsm.asm | 508 ------------------------ 16/x/mxsp.asm | 57 --- 16/x/mxss.asm | 72 ---- 16/x/mxtl.asm | 169 -------- 16/x/mxvs.asm | 110 ------ 16/x/mxwd.asm | 28 -- 16/x/mxwm.asm | 39 -- 16/x/mxwp.asm | 62 --- 16/x/mxwr.asm | 28 -- 16/x/readme.txt | 8 - bakapi.exe | Bin 77981 -> 0 bytes exmmtest.exe | Bin 60948 -> 0 bytes fmemtest.exe | Bin 60555 -> 0 bytes fontgfx.exe | Bin 71333 -> 0 bytes fonttest.exe | Bin 61949 -> 0 bytes inputest.exe | Bin 60316 -> 0 bytes maptest.exe | Bin 77158 -> 0 bytes palettec.exe | Bin 70705 -> 0 bytes palettel.exe | Bin 70932 -> 0 bytes pcxtest.exe | Bin 51372 -> 0 bytes pcxtest2.exe | Bin 51452 -> 0 bytes planrpcx.exe | Bin 53349 -> 0 bytes scroll.exe | Bin 94512 -> 0 bytes test.exe | Bin 49370 -> 0 bytes test2.exe | Bin 41238 -> 0 bytes tesuto.exe | Bin 19486 -> 0 bytes vgmtest.exe | Bin 67189 -> 0 bytes 89 files changed, 10351 deletions(-) delete mode 100755 16.exe delete mode 100755 16/x/default.fnt delete mode 100755 16/x/makefile delete mode 100755 16/x/modex.def delete mode 100755 16/x/modex.h delete mode 100755 16/x/modex.lbr delete mode 100755 16/x/modex.pas delete mode 100755 16/x/modex/DEMO01.EXE delete mode 100755 16/x/modex/DEMO01.PAS delete mode 100755 16/x/modex/DEMO02.EXE delete mode 100755 16/x/modex/DEMO02.PAS delete mode 100755 16/x/modex/DEMO03.EXE delete mode 100755 16/x/modex/DEMO03.PAS delete mode 100755 16/x/modex/DEMO04.DAT delete mode 100755 16/x/modex/DEMO04.EXE delete mode 100755 16/x/modex/DEMO04.PAS delete mode 100755 16/x/modex/DEMO05.EXE delete mode 100755 16/x/modex/DEMO05.PAS delete mode 100755 16/x/modex/DEMO06.DAT delete mode 100755 16/x/modex/DEMO06.EXE delete mode 100755 16/x/modex/DEMO06.PAS delete mode 100755 16/x/modex/DEMO07.EXE delete mode 100755 16/x/modex/DEMO07.PAS delete mode 100755 16/x/modex/MATH.INC delete mode 100755 16/x/modex/PLASMA.PAS delete mode 100755 16/x/modex/QIX2.EXE delete mode 100755 16/x/modex/QIX2.PAS delete mode 100755 16/x/modex/README.TXT delete mode 100755 16/x/modex/SINCOS.INC delete mode 100755 16/x/modex/THREED.ASM delete mode 100755 16/x/modex/THREED.H delete mode 100755 16/x/modex/THREED.PAS delete mode 100755 16/x/mxbb.asm delete mode 100755 16/x/mxcc.asm delete mode 100755 16/x/mxcg.asm delete mode 100755 16/x/mxcl.asm delete mode 100755 16/x/mxcr.asm delete mode 100755 16/x/mxel.asm delete mode 100755 16/x/mxfb.asm delete mode 100755 16/x/mxfp.asm delete mode 100755 16/x/mxgc.asm delete mode 100755 16/x/mxgi.asm delete mode 100755 16/x/mxgm.asm delete mode 100755 16/x/mxgp.asm delete mode 100755 16/x/mxgv.asm delete mode 100755 16/x/mxhl.asm delete mode 100755 16/x/mxit.asm delete mode 100755 16/x/mxll.asm delete mode 100755 16/x/mxln.asm delete mode 100755 16/x/mxot.asm delete mode 100755 16/x/mxpb.asm delete mode 100755 16/x/mxpf.asm delete mode 100755 16/x/mxpg.asm delete mode 100755 16/x/mxpi.asm delete mode 100755 16/x/mxpn.asm delete mode 100755 16/x/mxpp.asm delete mode 100755 16/x/mxra.asm delete mode 100755 16/x/mxrp.asm delete mode 100755 16/x/mxsa.asm delete mode 100755 16/x/mxsc.asm delete mode 100755 16/x/mxsi.asm delete mode 100755 16/x/mxsl.asm delete mode 100755 16/x/mxsm.asm delete mode 100755 16/x/mxsp.asm delete mode 100755 16/x/mxss.asm delete mode 100755 16/x/mxtl.asm delete mode 100755 16/x/mxvs.asm delete mode 100755 16/x/mxwd.asm delete mode 100755 16/x/mxwm.asm delete mode 100755 16/x/mxwp.asm delete mode 100755 16/x/mxwr.asm delete mode 100755 16/x/readme.txt delete mode 100755 bakapi.exe delete mode 100755 exmmtest.exe delete mode 100755 fmemtest.exe delete mode 100755 fontgfx.exe delete mode 100755 fonttest.exe delete mode 100755 inputest.exe delete mode 100755 maptest.exe delete mode 100755 palettec.exe delete mode 100755 palettel.exe delete mode 100755 pcxtest.exe delete mode 100755 pcxtest2.exe delete mode 100755 planrpcx.exe delete mode 100755 scroll.exe delete mode 100755 test.exe delete mode 100755 test2.exe delete mode 100755 tesuto.exe delete mode 100755 vgmtest.exe diff --git a/16.exe b/16.exe deleted file mode 100755 index b6f2dbe73359399267d4da03382884eb7bcbc8bf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 77504 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 - DB 078h, 084h, 004h, 008h, 010h, 000h, 010h, 000h ; ? - DB 07Ch, 082h, 0BAh, 0A6h, 0BEh, 080h, 07Ch, 000h ; @ - DB 078h, 084h, 084h, 0FCh, 084h, 084h, 084h, 000h ; A - DB 0F8h, 084h, 084h, 0F8h, 084h, 084h, 0F8h, 000h ; B - DB 078h, 084h, 080h, 080h, 080h, 084h, 078h, 000h ; C - DB 0F0h, 088h, 084h, 084h, 084h, 088h, 0F0h, 000h ; D - DB 0FCh, 080h, 080h, 0F0h, 080h, 080h, 0FCh, 000h ; E - DB 0FCh, 080h, 080h, 0F0h, 080h, 080h, 080h, 000h ; F - DB 078h, 084h, 080h, 09Ch, 084h, 084h, 078h, 000h ; G - DB 084h, 084h, 084h, 0FCh, 084h, 084h, 084h, 000h ; H - DB 038h, 010h, 010h, 010h, 010h, 010h, 038h, 000h ; I - DB 01Ch, 008h, 008h, 008h, 088h, 088h, 070h, 000h ; J - DB 084h, 088h, 090h, 0E0h, 090h, 088h, 084h, 000h ; K - DB 080h, 080h, 080h, 080h, 080h, 080h, 0FCh, 000h ; L - DB 0C6h, 0AAh, 092h, 082h, 082h, 082h, 082h, 000h ; M - DB 082h, 0C2h, 0A2h, 092h, 08Ah, 086h, 082h, 000h ; N - DB 078h, 084h, 084h, 084h, 084h, 084h, 078h, 000h ; O - DB 0F8h, 084h, 084h, 0F8h, 080h, 080h, 080h, 000h ; P - DB 078h, 084h, 084h, 084h, 094h, 088h, 076h, 000h ; Q - DB 0F8h, 084h, 084h, 0F8h, 090h, 088h, 084h, 000h ; R - DB 078h, 084h, 080h, 078h, 004h, 084h, 078h, 000h ; S - DB 0FEh, 010h, 010h, 010h, 010h, 010h, 010h, 000h ; T - DB 084h, 084h, 084h, 084h, 084h, 084h, 078h, 000h ; U - DB 084h, 084h, 084h, 084h, 084h, 048h, 030h, 000h ; V - DB 082h, 082h, 082h, 082h, 092h, 0AAh, 0C6h, 000h ; W - DB 082h, 044h, 028h, 010h, 028h, 044h, 082h, 000h ; X - DB 044h, 044h, 044h, 038h, 010h, 010h, 010h, 000h ; Y - DB 0FEh, 004h, 008h, 010h, 020h, 040h, 0FEh, 000h ; Z - DB 078h, 040h, 040h, 040h, 040h, 040h, 078h, 000h ; [ - DB 000h, 080h, 040h, 020h, 010h, 008h, 004h, 000h ; \ - DB 078h, 008h, 008h, 008h, 008h, 008h, 078h, 000h ; ] - DB 010h, 028h, 044h, 082h, 000h, 000h, 000h, 000h ; ^ - DB 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0FFh ; _ - DB 020h, 020h, 010h, 000h, 000h, 000h, 000h, 000h ; ` - DB 000h, 000h, 038h, 004h, 03Ch, 044h, 07Ch, 000h ; a - DB 000h, 040h, 040h, 078h, 044h, 044h, 078h, 000h ; b - DB 000h, 000h, 03Ch, 040h, 040h, 040h, 03Ch, 000h ; c - DB 000h, 004h, 004h, 03Ch, 044h, 044h, 03Ch, 000h ; d - DB 000h, 000h, 038h, 044h, 07Ch, 040h, 03Ch, 000h ; e - DB 000h, 00Ch, 010h, 03Ch, 010h, 010h, 010h, 000h ; f - DB 000h, 000h, 03Ch, 044h, 044h, 03Ch, 004h, 038h ; g - DB 000h, 040h, 040h, 078h, 044h, 044h, 044h, 000h ; h - DB 000h, 010h, 000h, 010h, 010h, 010h, 010h, 000h ; i - DB 000h, 004h, 000h, 004h, 004h, 004h, 044h, 038h ; j - DB 000h, 040h, 040h, 050h, 060h, 050h, 048h, 000h ; k - DB 000h, 030h, 010h, 010h, 010h, 010h, 010h, 000h ; l - DB 000h, 000h, 068h, 054h, 054h, 044h, 044h, 000h ; m - DB 000h, 000h, 078h, 044h, 044h, 044h, 044h, 000h ; n - DB 000h, 000h, 038h, 044h, 044h, 044h, 038h, 000h ; o - DB 000h, 000h, 078h, 044h, 044h, 078h, 040h, 040h ; p - DB 000h, 000h, 03Ch, 044h, 044h, 03Ch, 004h, 004h ; q - DB 000h, 000h, 05Ch, 060h, 040h, 040h, 040h, 000h ; r - DB 000h, 000h, 038h, 040h, 07Ch, 004h, 07Ch, 000h ; s - DB 000h, 010h, 038h, 010h, 010h, 010h, 018h, 000h ; t - DB 000h, 000h, 044h, 044h, 044h, 044h, 038h, 000h ; u - DB 000h, 000h, 044h, 044h, 044h, 028h, 010h, 000h ; v - DB 000h, 000h, 044h, 044h, 054h, 054h, 06Ch, 000h ; w - DB 000h, 000h, 044h, 028h, 010h, 028h, 044h, 000h ; x - DB 000h, 000h, 044h, 044h, 044h, 03Ch, 004h, 07Ch ; y - DB 000h, 000h, 07Ch, 004h, 038h, 040h, 07Ch, 000h ; z - DB 000h, 008h, 010h, 010h, 030h, 010h, 010h, 008h ; { - DB 000h, 010h, 010h, 010h, 000h, 010h, 010h, 010h ; | - DB 000h, 020h, 010h, 010h, 018h, 010h, 010h, 020h ; } - DB 064h, 098h, 000h, 000h, 000h, 000h, 000h, 000h ; ~ - DB 000h, 010h, 028h, 044h, 082h, 082h, 0FEh, 000h ;  - DB 07Ch, 080h, 080h, 080h, 080h, 07Ch, 004h, 07Ch ; #128 - DB 000h, 028h, 000h, 044h, 044h, 044h, 038h, 000h ; #129 - DB 03Ch, 000h, 07Ch, 044h, 07Ch, 040h, 07Ch, 000h ; #130 - DB 07Eh, 081h, 038h, 004h, 03Ch, 044h, 07Ch, 000h ; #131 - DB 024h, 000h, 038h, 004h, 03Ch, 044h, 07Ch, 000h ; #132 - DB 078h, 000h, 038h, 004h, 03Ch, 044h, 07Ch, 000h ; #133 - DB 018h, 018h, 038h, 004h, 03Ch, 044h, 07Ch, 000h ; #134 - DB 000h, 000h, 078h, 080h, 080h, 078h, 008h, 038h ; #135 - DB 07Ch, 082h, 038h, 044h, 07Ch, 040h, 03Ch, 000h ; #136 - DB 048h, 000h, 038h, 044h, 07Ch, 040h, 03Ch, 000h ; #137 - DB 078h, 000h, 038h, 044h, 07Ch, 040h, 03Ch, 000h ; #138 - DB 000h, 028h, 000h, 010h, 010h, 010h, 010h, 000h ; #139 - DB 010h, 028h, 000h, 010h, 010h, 010h, 010h, 000h ; #140 - DB 000h, 030h, 000h, 010h, 010h, 010h, 010h, 000h ; #141 - DB 048h, 000h, 078h, 084h, 0FCh, 084h, 084h, 000h ; #142 - DB 030h, 030h, 078h, 084h, 0FCh, 084h, 084h, 000h ; #143 - DB 038h, 000h, 0FCh, 080h, 0F0h, 080h, 0FCh, 000h ; #144 - DB 000h, 000h, 07Eh, 008h, 07Eh, 048h, 07Eh, 000h ; #145 - DB 07Eh, 090h, 090h, 0FCh, 090h, 090h, 09Eh, 000h ; #146 - DB 07Ch, 082h, 038h, 044h, 044h, 044h, 038h, 000h ; #147 - DB 028h, 000h, 038h, 044h, 044h, 044h, 038h, 000h ; #148 - DB 070h, 000h, 038h, 044h, 044h, 044h, 038h, 000h ; #149 - DB 038h, 044h, 000h, 044h, 044h, 044h, 038h, 000h ; #150 - DB 070h, 000h, 044h, 044h, 044h, 044h, 038h, 000h ; #151 - DB 028h, 000h, 044h, 044h, 044h, 03Ch, 004h, 07Ch ; #152 - DB 048h, 000h, 078h, 084h, 084h, 084h, 078h, 000h ; #153 - DB 048h, 000h, 084h, 084h, 084h, 084h, 078h, 000h ; #154 - DB 000h, 010h, 038h, 040h, 040h, 040h, 038h, 010h ; #155 - DB 038h, 044h, 040h, 0E0h, 040h, 040h, 082h, 0FCh ; #156 - DB 044h, 07Ch, 010h, 07Ch, 010h, 07Ch, 010h, 000h ; #157 - DB 0F0h, 088h, 08Ah, 0F7h, 082h, 082h, 082h, 000h ; #158 - DB 00Ch, 012h, 010h, 018h, 030h, 010h, 090h, 060h ; #159 - DB 03Ch, 000h, 038h, 004h, 03Ch, 044h, 07Ch, 000h ; #160 - DB 000h, 018h, 000h, 010h, 010h, 010h, 010h, 000h ; #161 - DB 01Ch, 000h, 038h, 044h, 044h, 044h, 038h, 000h ; #162 - DB 01Ch, 000h, 044h, 044h, 044h, 044h, 038h, 000h ; #163 - DB 07Ch, 000h, 078h, 044h, 044h, 044h, 044h, 000h ; #164 - DB 07Ch, 000h, 044h, 064h, 054h, 04Ch, 044h, 000h ; #165 - DB 018h, 024h, 024h, 01Eh, 000h, 03Eh, 000h, 000h ; #166 - DB 01Ch, 022h, 022h, 01Ch, 000h, 03Eh, 000h, 000h ; #167 - DB 010h, 000h, 010h, 020h, 040h, 042h, 03Ch, 000h ; #168 - DB 000h, 000h, 000h, 0FCh, 080h, 080h, 000h, 000h ; #169 - DB 000h, 000h, 000h, 0FCh, 004h, 004h, 000h, 000h ; #170 - DB 040h, 044h, 048h, 057h, 021h, 047h, 004h, 007h ; #171 - DB 040h, 044h, 048h, 052h, 026h, 04Ah, 01Fh, 002h ; #172 - DB 010h, 000h, 010h, 010h, 010h, 010h, 010h, 000h ; #173 - DB 000h, 024h, 048h, 090h, 048h, 024h, 000h, 000h ; #174 - DB 000h, 048h, 024h, 012h, 024h, 048h, 000h, 000h ; #175 - DB 022h, 088h, 022h, 088h, 022h, 088h, 022h, 088h ; #176 - DB 055h, 0AAh, 055h, 0AAh, 055h, 0AAh, 055h, 0AAh ; #177 - DB 0DBh, 077h, 0DBh, 0EEh, 0DBh, 077h, 0DBh, 0EEh ; #178 - DB 018h, 018h, 018h, 018h, 018h, 018h, 018h, 018h ; #179 - DB 018h, 018h, 018h, 018h, 0F8h, 018h, 018h, 018h ; #180 - DB 018h, 018h, 0F8h, 018h, 0F8h, 018h, 018h, 018h ; #181 - DB 036h, 036h, 036h, 036h, 0F6h, 036h, 036h, 036h ; #182 - DB 000h, 000h, 000h, 000h, 0FEh, 036h, 036h, 036h ; #183 - DB 000h, 000h, 0F8h, 018h, 0F8h, 018h, 018h, 018h ; #184 - DB 036h, 036h, 0F6h, 006h, 0F6h, 036h, 036h, 036h ; #185 - DB 036h, 036h, 036h, 036h, 036h, 036h, 036h, 036h ; #186 - DB 000h, 000h, 0FEh, 006h, 0F6h, 036h, 036h, 036h ; #187 - DB 036h, 036h, 0F6h, 006h, 0FEh, 000h, 000h, 000h ; #188 - DB 036h, 036h, 036h, 036h, 0FEh, 000h, 000h, 000h ; #189 - DB 018h, 018h, 0F8h, 018h, 0F8h, 000h, 000h, 000h ; #190 - DB 000h, 000h, 000h, 000h, 0F8h, 018h, 018h, 018h ; #191 - DB 018h, 018h, 018h, 018h, 01Fh, 000h, 000h, 000h ; #192 - DB 018h, 018h, 018h, 018h, 0FFh, 000h, 000h, 000h ; #193 - DB 000h, 000h, 000h, 000h, 0FFh, 018h, 018h, 018h ; #194 - DB 018h, 018h, 018h, 018h, 01Fh, 018h, 018h, 018h ; #195 - DB 000h, 000h, 000h, 000h, 0FFh, 000h, 000h, 000h ; #196 - DB 018h, 018h, 018h, 018h, 0FFh, 018h, 018h, 018h ; #197 - DB 018h, 018h, 01Fh, 018h, 01Fh, 018h, 018h, 018h ; #198 - DB 036h, 036h, 036h, 036h, 037h, 036h, 036h, 036h ; #199 - DB 036h, 036h, 037h, 030h, 03Fh, 000h, 000h, 000h ; #200 - DB 000h, 000h, 03Fh, 030h, 037h, 036h, 036h, 036h ; #201 - DB 036h, 036h, 0F7h, 000h, 0FFh, 000h, 000h, 000h ; #202 - DB 000h, 000h, 0FFh, 000h, 0F7h, 036h, 036h, 036h ; #203 - DB 036h, 036h, 037h, 030h, 037h, 036h, 036h, 036h ; #204 - DB 000h, 000h, 0FFh, 000h, 0FFh, 000h, 000h, 000h ; #205 - DB 036h, 036h, 0F7h, 000h, 0F7h, 036h, 036h, 036h ; #206 - DB 018h, 018h, 0FFh, 000h, 0FFh, 000h, 000h, 000h ; #207 - DB 036h, 036h, 036h, 036h, 0FFh, 000h, 000h, 000h ; #208 - DB 000h, 000h, 0FFh, 000h, 0FFh, 018h, 018h, 018h ; #209 - DB 000h, 000h, 000h, 000h, 0FFh, 036h, 036h, 036h ; #210 - DB 036h, 036h, 036h, 036h, 03Fh, 000h, 000h, 000h ; #211 - DB 018h, 018h, 01Fh, 018h, 01Fh, 000h, 000h, 000h ; #212 - DB 000h, 000h, 01Fh, 018h, 01Fh, 018h, 018h, 018h ; #213 - DB 000h, 000h, 000h, 000h, 03Fh, 036h, 036h, 036h ; #214 - DB 036h, 036h, 036h, 036h, 0FFh, 036h, 036h, 036h ; #215 - DB 018h, 018h, 0FFh, 018h, 0FFh, 018h, 018h, 018h ; #216 - DB 018h, 018h, 018h, 018h, 0F8h, 000h, 000h, 000h ; #217 - DB 000h, 000h, 000h, 000h, 01Fh, 018h, 018h, 018h ; #218 - DB 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh ; #219 - DB 000h, 000h, 000h, 000h, 0FFh, 0FFh, 0FFh, 0FFh ; #220 - DB 0F0h, 0F0h, 0F0h, 0F0h, 0F0h, 0F0h, 0F0h, 0F0h ; #221 - DB 00Fh, 00Fh, 00Fh, 00Fh, 00Fh, 00Fh, 00Fh, 00Fh ; #222 - DB 0FFh, 0FFh, 0FFh, 0FFh, 000h, 000h, 000h, 000h ; #223 - DB 000h, 000h, 062h, 094h, 088h, 094h, 062h, 000h ; #224 - DB 000h, 0F0h, 088h, 0F0h, 088h, 088h, 0F0h, 080h ; #225 - DB 000h, 0F8h, 088h, 080h, 080h, 080h, 080h, 000h ; #226 - DB 000h, 0FCh, 048h, 048h, 048h, 048h, 048h, 000h ; #227 - DB 0FCh, 084h, 040h, 020h, 040h, 084h, 0FCh, 000h ; #228 - DB 03Ch, 040h, 038h, 044h, 044h, 044h, 038h, 000h ; #229 - DB 000h, 000h, 044h, 044h, 044h, 078h, 040h, 040h ; #230 - DB 000h, 036h, 048h, 008h, 008h, 008h, 008h, 000h ; #231 - DB 038h, 010h, 038h, 044h, 044h, 038h, 010h, 038h ; #232 - DB 078h, 084h, 084h, 0FCh, 084h, 084h, 078h, 000h ; #233 - DB 078h, 084h, 084h, 084h, 048h, 048h, 0CCh, 000h ; #234 - DB 078h, 004h, 038h, 044h, 044h, 044h, 038h, 000h ; #235 - DB 000h, 000h, 06Ch, 092h, 092h, 06Ch, 000h, 000h ; #236 - DB 000h, 000h, 03Ah, 044h, 05Ah, 022h, 05Ch, 000h ; #237 - DB 018h, 020h, 040h, 078h, 040h, 020h, 018h, 000h ; #238 - DB 078h, 084h, 084h, 084h, 084h, 084h, 084h, 000h ; #239 - DB 000h, 0FCh, 000h, 0FCh, 000h, 0FCh, 000h, 000h ; #240 - DB 020h, 020h, 0F8h, 020h, 020h, 000h, 0F8h, 000h ; #241 - DB 020h, 010h, 008h, 010h, 020h, 000h, 07Ch, 000h ; #242 - DB 008h, 010h, 020h, 010h, 008h, 000h, 07Ch, 000h ; #243 - DB 00Ch, 012h, 010h, 010h, 010h, 010h, 010h, 010h ; #244 - DB 010h, 010h, 010h, 010h, 010h, 010h, 090h, 060h ; #245 - DB 000h, 010h, 000h, 07Ch, 000h, 010h, 000h, 000h ; #246 - DB 000h, 032h, 04Ch, 000h, 032h, 04Ch, 000h, 000h ; #247 - DB 038h, 044h, 044h, 038h, 000h, 000h, 000h, 000h ; #248 - DB 000h, 000h, 000h, 018h, 018h, 000h, 000h, 000h ; #249 - DB 000h, 000h, 000h, 000h, 018h, 000h, 000h, 000h ; #250 - DB 00Eh, 008h, 008h, 008h, 048h, 028h, 018h, 008h ; #251 - DB 038h, 024h, 024h, 024h, 024h, 000h, 000h, 000h ; #252 - DB 03Ch, 004h, 03Ch, 020h, 03Ch, 000h, 000h, 000h ; #253 - DB 000h, 000h, 03Ch, 03Ch, 03Ch, 03Ch, 000h, 000h ; #254 - DB 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h ; #255 diff --git a/16/x/makefile b/16/x/makefile deleted file mode 100755 index 8ad2f244..00000000 --- a/16/x/makefile +++ /dev/null @@ -1,81 +0,0 @@ -# -# MODEX library makefile (for Borland MAKE) -# Copyright (c) 1993,1994 by Alessandro Scotti -# -LIBINCS = MODEX.DEF - -LIBOBJS = MXBB.OBJ \ - MXCC.OBJ \ - MXCG.OBJ \ - MXCL.OBJ \ - MXCR.OBJ \ - MXFB.OBJ \ - MXFP.OBJ \ - MXGC.OBJ \ - MXGI.OBJ \ - MXGM.OBJ \ - MXGP.OBJ \ - MXGV.OBJ \ - MXHL.OBJ \ - MXIT.OBJ \ - MXLL.OBJ \ - MXLN.OBJ \ - MXOT.OBJ \ - MXPB.OBJ \ - MXPF.OBJ \ - MXPG.OBJ \ - MXPI.OBJ \ - MXPN.OBJ \ - MXPP.OBJ \ - MXRA.OBJ \ - MXRP.OBJ \ - MXSA.OBJ \ - MXSC.OBJ \ - MXSI.OBJ \ - MXSL.OBJ \ - MXSM.OBJ \ - MXSP.OBJ \ - MXSS.OBJ \ - MXTL.OBJ \ - MXVS.OBJ \ - MXWD.OBJ \ - MXWM.OBJ \ - MXWP.OBJ \ - MXWR.OBJ - -# -# ASM compiler -# -ASMC = tasm -ASMO = /m5 /p - -# -# PAS compiler -# -PASC = tpc -PASO = /m -$D- -$L- -$S- - -# -# LIB maker, uses response file -# -LIBC = tlib - -.asm.obj: - $(ASMC) $(ASMO) $< - -target: modex.lib -# modex.tpu modex.tpp - -#modex.tpu: $(LIBOBJS) modex.pas -# $(PASC) $(PASO) modex -# copy modex.tpu .. -# copy modex.pas .. - -#modex.tpp: $(LIBOBJS) modex.pas -# $(PASC) /cp $(PASO) modex -# copy modex.tpp .. - -modex.lib: modex.lbr $(LIBOBJS) - $(LIBC) modex.lib @modex.lbr - -$(LIBOBJS): modex.def diff --git a/16/x/modex.def b/16/x/modex.def deleted file mode 100755 index 45bd900f..00000000 --- a/16/x/modex.def +++ /dev/null @@ -1,163 +0,0 @@ -;------------------------------------------------------------ -; -; MODEX.DEF - Include file -; Copyright (c) 1993-1994 by Alessandro Scotti -; -JUMPS -LOCALS - -TRUE EQU 1 ; Boolean constants -FALSE EQU 0 - -USE286 = FALSE ; TRUE enables 80286 instructions -USE386 = FALSE ; TRUE enables 80386 (and 80286) instructions - -IF USE286 EQ TRUE - P286 -ENDIF - -IF USE386 EQ TRUE - P386 - USE286 = TRUE -ENDIF - -MXVERSION EQU 0128h ; Library version (1.40) - -;------------------------------------------------------------ -; -; VGA definitions -; -MISC EQU 3C2h ; Miscellaneous output -TS EQU 3C4h ; Timing Sequencer index register -GDC EQU 3CEh ; Graphics Data Controller index register -CRTC EQU 3D4h ; CRTC index register -STATUS EQU 3DAh ; Input Status register one - -;------------------------------------------------------------ -; -; Raster operators -; -OP_SET EQU 0 -OP_MOVE EQU 0 ; Same as OP_SET -OP_AND EQU 1 -OP_OR EQU 2 -OP_XOR EQU 3 -OP_TRANS EQU 4 -OP_ADD EQU 5 ; Must be last op - -;------------------------------------------------------------ -; -; Polygon fill functions -; -POLYSCANBUFSIZE EQU 4*1024 - -;------------------------------------------------------------ -; Macro to push registers, variables or flags onto the stack -; Usage: .push "loc16"[,"loc16"...] -; where "loc16" is a 16-bit register, a word-sized variable or the -; keyword "FLAGS". -; Exmpl: .push ax, flags, var1 -; .pop ax, flags, var1 -; -.push MACRO r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, r10 - IFNB - .ERROR <.PUSH has more than 10 arguments> - ENDIF - IRP $reg, - IFB <$reg> ;; Is argument blank? - EXITM ;; Yes, exit - ELSEIFIDNI <$reg>, ;; Is argument the keyword "FLAGS"? - pushf ;; Yes, push flags - ELSE - push $reg ;; Push argument - ENDIF - ENDM -ENDM - -;------------------------------------------------------------ -; Macro to pop registers, variables or flags from the stack -; Usage: .pop "loc16"[,"loc16"...] -; where "loc16" is a 16-bit register, a word-sized variable or the -; keyword "FLAGS". -; Exmpl: .push ax, flags, var1 -; .pop ax, flags, var1 -; -.pop MACRO r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, r10 - IFNB - .ERROR <.POP has more than 10 arguments> - ENDIF - IRP $reg, - IFNB <$reg> ;; Is argument non-blank? - IFIDNI <$reg>, ;; Yes, is it the keyword "FLAGS"? - popf ;; Yes, pop flags - ELSE - pop $reg ;; Pop argument - ENDIF - ENDIF - ENDM -ENDM - -;------------------------------------------------------------ -; -.enter MACRO localsize - IF USE286 EQ TRUE - enter localsize, 0 - ELSE - push bp - mov bp, sp - sub sp, localsize - ENDIF -ENDM - -;------------------------------------------------------------ -; -.leave MACRO argsize - IF USE286 EQ TRUE - leave - ELSE - mov sp, bp - pop bp - ENDIF - IFNB - ret argsize - ELSE - ret - ENDIF -ENDM - -;------------------------------------------------------------ -; -.shr MACRO arg, count - IF USE286 EQ TRUE - shr arg, count - ELSE - $temp = count - WHILE $temp GT 0 - shr arg, 1 - $temp = $temp-1 - ENDM - ENDIF -ENDM - -;------------------------------------------------------------ -; -.shl MACRO arg, count - IF USE286 EQ TRUE - shl arg, count - ELSE - $temp = count - WHILE $temp GT 0 - shl arg, 1 - $temp = $temp-1 - ENDM - ENDIF -ENDM - -;------------------------------------------------------------ -; -.chk386 MACRO name, jump - IF USE386 EQ FALSE - .OUT "Warning: ", , " needs a 386 or better to run!" - jmp @@jump - ENDIF -ENDM diff --git a/16/x/modex.h b/16/x/modex.h deleted file mode 100755 index 2c1f1ebe..00000000 --- a/16/x/modex.h +++ /dev/null @@ -1,153 +0,0 @@ -/* - MODEX.H - C/C++ include file for the MODEX library - Copyright (c) 1994 Alessandro Scotti -*/ - -#ifndef _MODEX_H_ // Avoid nested inclusions -#define _MODEX_H_ - -// -// Video modes -// -#define MX_TEXT 0 // 80x25 text -#define MX_320x175 1 // 320x175x256 -#define MX_320x200 2 // 320x200x256, 4 pages, aspect 6:5 -#define MX_320x240 3 // 320x240x256, 3 pages, aspect 1:1 -#define MX_320x350 4 // 320x350x256 -#define MX_320x400 5 // 320x400x256, 2 pages -#define MX_320x480 6 // 320x480x256, 1 page -#define MX_360x175 7 // 360x175x256 -#define MX_360x200 8 // 360x200x256, 3 pages -#define MX_360x240 9 // 360x240x256, 2 pages -#define MX_360x350 10 // 360x350x256 -#define MX_360x400 11 // 360x400x256, 1 page -#define MX_360x480 12 // 360x480x256, 1 page -#define MX_400x600 13 // 400x600x256, 1 page - -// -// Fade effects -// -#define MX_FADEIN 0 -#define MX_FADEOUT 1 - -// -// Raster ops -// -#define OP_SET 0 // No operator -#define OP_AND 1 // And -#define OP_OR 2 // Or -#define OP_XOR 3 // Xor -#define OP_TRANS 4 // Transparent -#define OP_ADD 5 // Additive -#define OP_MOVE 0 // Alias for OP_SET - -// -// Temporary definitions -// -#define MXBYTE unsigned char -#define MXBOOL short int -#define MXSINT short int -#define MXUINT unsigned short int -#define MXAPI far pascal -#define MXPTR void far * - -// Functions - -#ifdef __cplusplus // Avoid C++ name mangling -extern "C" { -#endif - -// -// Initialization -// -MXSINT MXAPI mxInit( void ); // Returns 0 if successful -void MXAPI mxTerm( void ); -MXUINT MXAPI mxGetVersion( void ); -// -// Mode setting -// -void MXAPI mxChangeMode( MXUINT mode ); -void MXAPI mxSetMode( MXUINT mode ); -void MXAPI mxGetAspect( MXUINT far *aspectx, MXUINT far *aspecty ); -void MXAPI mxGetScreenSize( MXUINT far *width, MXUINT far *height ); -// -// Hardware support -// -void MXAPI mxWriteMode( MXBYTE wm ); -void MXAPI mxSplitScreen( MXUINT line ); -void MXAPI mxStartAddress( MXUINT sa ); -void MXAPI mxStartLine( MXUINT sl ); -void MXAPI mxWaitDisplay( void ); -void MXAPI mxWaitRetrace( void ); -void MXAPI mxWritePlane( MXBYTE wp ); -void MXAPI mxReadPlane( MXBYTE rp ); -void MXAPI mxRowAddress( MXBYTE ra ); -// -// Virtual screen -// -void MXAPI mxGetVirtualScreen( MXUINT far *width, MXUINT far *height ); -void MXAPI mxSetVirtualScreen( MXUINT width, MXUINT height ); -void MXAPI mxPan( MXUINT x, MXUINT y ); -// -// Clipping -// -MXBOOL MXAPI mxGetClip( void ); -MXBOOL MXAPI mxGetClipRegion( MXSINT far *x, MXSINT far *y, MXSINT far *w, MXSINT far *h ); -MXBOOL MXAPI mxSetClip( MXBOOL ); -void MXAPI mxSetClipRegion( MXUINT x, MXUINT y, MXUINT width, MXUINT height ); -// -// Graphics -// -void MXAPI mxBitBlt( MXSINT sx, MXSINT sy, MXUINT width, MXUINT height, MXSINT dx, MXSINT dy ); -void MXAPI mxFillBox( MXSINT x, MXSINT y, MXUINT width, MXUINT height, MXUINT color, MXUINT op ); -MXBYTE MXAPI mxGetPixel( MXSINT x, MXSINT y ); -void MXAPI mxPutPixel( MXSINT x, MXSINT y, MXBYTE color ); -void MXAPI mxLine( MXSINT x1, MXSINT y1, MXSINT x2, MXSINT y2, MXUINT color, MXUINT op ); -void MXAPI mxGetImage( MXPTR img, MXSINT x, MXSINT y, MXUINT width, MXUINT height ); -void MXAPI mxPutImage( MXPTR img, MXSINT x, MXSINT y, MXUINT w, MXUINT h, MXUINT op ); -void MXAPI mxPutTile( MXPTR tile, MXSINT x, MXSINT y, MXUINT width, MXUINT height ); -void MXAPI mxTransPutTile( MXPTR tile, MXSINT x, MXSINT y, MXUINT w, MXUINT h ); -void MXAPI mxCircle( MXSINT x, MXSINT y, MXUINT radius, MXBYTE color ); -void MXAPI mxStretchImage( MXPTR img, MXSINT x, MXSINT y, MXUINT w, MXUINT h, MXUINT neww, MXUINT newh, MXUINT op ); -// -// Palette -// -void MXAPI mxColorToGray( MXPTR source, MXPTR dest, MXUINT count ); -void MXAPI mxGammaCorrect( MXPTR source, MXPTR dest, MXUINT count ); -void MXAPI mxGetColor( MXUINT index, MXSINT far *r, MXSINT far *g, MXSINT far *b ); -void MXAPI mxSetColor( MXUINT index, MXSINT red, MXSINT green, MXSINT blue ); -void MXAPI mxGetPalette( MXPTR palette, MXUINT index, MXUINT count ); -void MXAPI mxSetPalette( MXPTR palette, MXUINT index, MXUINT count ); -void MXAPI mxFadePalette( MXPTR, MXUINT, MXUINT, MXUINT, MXUINT, MXUINT, MXUINT ); -void MXAPI mxRotatePalette( MXPTR palette, MXUINT count, MXSINT step ); -// -// Text -// -MXSINT MXAPI mxSetFont( MXPTR font, MXUINT charwidth, MXUINT charheight ); -void MXAPI mxSetTextColor( MXUINT color, MXUINT op ); -void MXAPI mxGetTextStep( MXSINT far *deltax, MXSINT far *deltay ); -void MXAPI mxSetTextStep( MXSINT deltax, MXSINT deltay ); -void MXAPI mxOutChar( MXSINT x, MXSINT y, char c ); -void MXAPI mxOutText( MXSINT x, MXSINT y, char far *sz ); -// -// Convex polygons -// -void MXAPI mxFillPoly( MXUINT, MXPTR, MXPTR, MXUINT, MXUINT ); -void MXAPI mxGouraudPoly( MXUINT, MXPTR, MXPTR, MXPTR, MXUINT, MXUINT ); -void MXAPI mxTexturePoly( MXUINT, MXPTR, MXPTR, MXPTR, MXPTR, MXUINT, MXUINT ); - -#ifdef __cplusplus -} -#endif - -// -// Remove temporary defines -// -#undef MXBYTE -#undef MXBOOL -#undef MXSINT -#undef MXUINT -#undef MXPTR -#undef MXAPI - -#endif // _MODEX_H_ diff --git a/16/x/modex.lbr b/16/x/modex.lbr deleted file mode 100755 index b1ec26b6..00000000 --- a/16/x/modex.lbr +++ /dev/null @@ -1,38 +0,0 @@ -+-MXBB.OBJ & -+-MXCC.OBJ & -+-MXCG.OBJ & -+-MXCL.OBJ & -+-MXCR.OBJ & -+-MXFB.OBJ & -+-MXFP.OBJ & -+-MXGC.OBJ & -+-MXGI.OBJ & -+-MXGM.OBJ & -+-MXGP.OBJ & -+-MXGV.OBJ & -+-MXHL.OBJ & -+-MXIT.OBJ & -+-MXLL.OBJ & -+-MXLN.OBJ & -+-MXOT.OBJ & -+-MXPB.OBJ & -+-MXPF.OBJ & -+-MXPG.OBJ & -+-MXPI.OBJ & -+-MXPN.OBJ & -+-MXPP.OBJ & -+-MXRA.OBJ & -+-MXRP.OBJ & -+-MXSA.OBJ & -+-MXSC.OBJ & -+-MXSI.OBJ & -+-MXSL.OBJ & -+-MXSM.OBJ & -+-MXSP.OBJ & -+-MXSS.OBJ & -+-MXTL.OBJ & -+-MXVS.OBJ & -+-MXWD.OBJ & -+-MXWM.OBJ & -+-MXWP.OBJ & -+-MXWR.OBJ diff --git a/16/x/modex.pas b/16/x/modex.pas deleted file mode 100755 index 7d9d26ed..00000000 --- a/16/x/modex.pas +++ /dev/null @@ -1,194 +0,0 @@ -(* - Turbo Pascal interface to the MODEX library - Copyright (c) 1993,1994 by Alessandro Scotti -*) -unit ModeX; -interface - -const - (* Video modes *) - MX_TEXT = 0; - MX_320x175 = 1; - MX_320x200 = 2; - MX_320x240 = 3; - MX_320x350 = 4; - MX_320x400 = 5; - MX_320x480 = 6; - MX_360x175 = 7; - MX_360x200 = 8; - MX_360x240 = 9; - MX_360x350 = 10; - MX_360x400 = 11; - MX_360x480 = 12; - MX_400x600 = 13; - - (* Fade effects *) - MX_FADEIN = 0; - MX_FADEOUT = 1; - - (* Raster ops *) - OP_SET = 0; - OP_AND = 1; - OP_OR = 2; - OP_XOR = 3; - OP_TRANS = 4; - OP_ADD = 5; - OP_MOVE = 0; (* Alias for OP_SET *) - -procedure mxBitBlt( SX, SY: integer; Width, Height: word; DX, DY: integer ); -procedure mxCircle( CX, CY: integer; Radius: word; Color: byte ); -procedure mxChangeMode( Mode: word ); -procedure mxColorToGray( ColorPalette, GrayPalette: pointer; Count: word ); -procedure mxFadePalette( Palette: pointer; Cmd, Start, Count, R, G, B: word ); -procedure mxFillBox( X, Y: integer; Width, Height: word; Color: byte; Op: word ); -procedure mxGammaCorrect( ColorPalette, GammaPalette: pointer; Count: word ); -procedure mxGetAspect( var AspectX, AspectY: word ); -function mxGetClipRegion( var X1, Y1, Width, Height: word ): boolean; -function mxGetClip: boolean; -procedure mxGetImage( Image: pointer; X, Y: integer; Width, Height: word ); -procedure mxGetPalette( Palette: pointer; Start, Count: word ); -function mxGetPixel( X, Y: word ): byte; -procedure mxGetScreenSize( var Width, Height: word ); -procedure mxGetTextStep( var DeltaX, DeltaY: integer ); -function mxGetVersion: word; -procedure mxGetVirtualScreen( var Width, Height: word ); -procedure mxInit; -procedure mxLine( X1, Y1, X2, Y2: integer; Color, Op: word ); -procedure mxOutChar( X, Y: integer; C: char ); -procedure mxOutText( X, Y: integer; S: pointer ); -procedure mxPan( X, Y: word ); -procedure mxPutImage( Image: pointer; X, Y: integer; Width, Height, Op: word ); -procedure mxPutPixel( X, Y: word; C: byte ); -procedure mxPutTile( Tile: pointer; X, Y: integer; Width, Height: word ); -procedure mxReadPlane( Plane: byte ); -procedure mxRotatePalette( Palette: pointer; Count: word; Step: integer ); -procedure mxRowAddress( RowAddress: byte ); -function mxSetClip( Clip: boolean ): boolean; -procedure mxSetClipRegion( X1, Y1, Width, Height: word ); -procedure mxSetColor( Index, R, G, B: word ); -procedure mxSetFont( Font: pointer; Width, Height: word ); -procedure mxSetMode( Mode: word ); -procedure mxSetPalette( Palette: pointer; Start, Count: word ); -procedure mxSetTextColor( Color, Op: word ); -procedure mxSetTextStep( DeltaX, DeltaY: integer ); -procedure mxSetVirtualScreen( Width, Height: word ); -procedure mxStretchImage( Image: pointer; X, Y: integer; Width, Height, NewWidth, NewHeight, Op: word ); -procedure mxSplitScreen( Line: word ); -procedure mxStartAddress( StartAddress: word ); -procedure mxStartLine( Line: word ); -procedure mxTerm; -procedure mxTransPutTile( Tile: pointer; X, Y: integer; Width, Height: word ); -procedure mxWaitDisplay; -procedure mxWaitRetrace; -procedure mxWriteMode( Mode: byte ); -procedure mxWritePlane( Plane: byte ); - -procedure mxFillPoly( Count: word; var Map, Points; Color: word ); -procedure mxGouraudPoly( Count: word; var Map, Points, Colors; BaseColor: word ); -procedure mxTexturePoly( Count: word; var Map, Points, ImgPoints, Texture; Width: word ); - -procedure mxOutStr( X, Y: integer; S: string ); - -implementation - -procedure mxBitBlt; external; -procedure mxChangeMode( Mode: word ); external; -procedure mxCircle; external; -procedure mxColorToGray; external; -procedure mxFadePalette; external; -procedure mxFillBox; external; -procedure mxGammaCorrect; external; -procedure mxGetAspect( var AspectX, AspectY: word ); external; -function mxGetClipRegion; external; -function mxGetClip: boolean; external; -procedure mxGetImage; external; -procedure mxGetPalette( Palette: pointer; Start, Count: word ); external; -function mxGetPixel( X, Y: word ): byte; external; -procedure mxGetScreenSize( var Width, Height: word ); external; -procedure mxGetTextStep( var DeltaX, DeltaY: integer ); external; -function mxGetVersion: word; external; -procedure mxGetVirtualScreen( var Width, Height: word ); external; -procedure mxInit; external; -procedure mxLine( X1, Y1, X2, Y2: integer; Color, Op: word ); external; -procedure mxOutChar( X, Y: integer; C: char ); external; -procedure mxOutText( X, Y: integer; S: pointer ); external; -procedure mxPan( X, Y: word ); external; -procedure mxPutImage; external; -procedure mxPutPixel( X, Y: word; C: byte ); external; -procedure mxPutTile; external; -procedure mxReadPlane( Plane: byte ); external; -procedure mxRotatePalette; external; -procedure mxRowAddress( RowAddress: byte ); external; -function mxSetClip( Clip: boolean ): boolean; external; -procedure mxSetClipRegion( X1, Y1, Width, Height: word ); external; -procedure mxSetColor( Index, R, G, B: word ); external; -procedure mxSetFont( Font: pointer; Width, Height: word ); external; -procedure mxSetMode( Mode: word ); external; -procedure mxSetPalette( Palette: pointer; Start, Count: word ); external; -procedure mxSetTextColor( Color, Op: word ); external; -procedure mxSetTextStep( DeltaX, DeltaY: integer ); external; -procedure mxSetVirtualScreen( Width, Height: word ); external; -procedure mxSplitScreen( Line: word ); external; -procedure mxStartAddress( StartAddress: word ); external; -procedure mxStartLine; external; -procedure mxStretchImage; external; -procedure mxTerm; external; -procedure mxTransPutTile; external; -procedure mxWaitDisplay; external; -procedure mxWaitRetrace; external; -procedure mxWriteMode( Mode: byte ); external; -procedure mxWritePlane( Plane: byte ); external; - -procedure mxFillPoly; external; -procedure mxGouraudPoly; external; -procedure mxTexturePoly; external; -{$L MXPB} -{$L MXPF} -{$L MXPG} -{$L MXPT} - -{$L MXBB} -{$L MXCC} -{$L MXCG} -{$L MXCL} -{$L MXCR} -{$L MXFB} -{$L MXFP} -{$L MXGI} -{$L MXGM} -{$L MXGP} -{$L MXGV} -{$L MXHL} -{$L MXIT} -{$L MXLN} -{$L MXOT} -{$L MXPI} -{$L MXPN} -{$L MXPP} -{$L MXRA} -{$L MXRP} -{$L MXSA} -{$L MXSC} -{$L MXSI} -{$L MXSL} -{$L MXSM} -{$L MXSP} -{$L MXSS} -{$L MXTL} -{$L MXVS} -{$L MXWD} -{$L MXWM} -{$L MXWP} -{$L MXWR} - -(* - Prints a Turbo Pascal string. - Note: BP 7.0 supports ASCIIZ strings (PChar type). -*) -procedure mxOutStr; -begin - S := S + #0; - mxOutText( X, Y, @S[1] ); -end; - -end. diff --git a/16/x/modex/DEMO01.EXE b/16/x/modex/DEMO01.EXE deleted file mode 100755 index 28caff88c58a0b8ce5a4d23c6544c00cda8482fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10208 zcmb7q4O~-Kw(mM0If;>kfJmve5G~DEX(=UbN+HsWLPVb*OsisTMLX@-I+JPrVL12GE~udS1Y%zMW-Go4$|TPRhr!YJ||Rr zJHOuFJFv3$UVE*z*Is+=&vO>8xX7i^!(^s@WB=Z#CXkEhb&hB%5lsM024n*s10eS%6F|a^mCo=n2w@C+#QqMu><1Si%=+xg4aOhtzcz5^}bkA^@o9L zE02i;LmvsNcCwn~QqjigfFv7N%G);2a&f+7Tc^&&v7(Xlwm_-K`08g3Ze;Yq_}A&1 zH}Zqzv%pATrbZQ!R1p+y)JmAp?Gmjmj3xdU3izFJmwcg_Jdd0aj!rsTZi`nN0LG9A z>jTM!#H>!9_sUxD+UGrM|90&wFXiUura%4akAGlYzpiSn_Xq2(KYq1FBkv+~)h-kI zjrE5(-XG$wPtdg?0Sb?%A^{hw+ApB9S%SflRh+qE7mqOLlz0zEQ85l2O5#Rryhk40 z+*uOOtWfTX)fe-g7ppIQjcGSjEa%JP4&Kwudvs5to|_z0H~)3|W~c~Lb^DzWZ>-TBvvugm)=|o_AD&qCuJtCc_bR$9vNh>Jzu9>tH> zNc;Execqpk-frqcK9*j=sOc5Ec8dMn5hBDxhOVE}h@m*V^ezhGHA(Rrx;O`d>JGjDQ)xzO7D1O!+UZt9s!ZeP9Xk$tq7yL|z6axqC?E zn_vBxRh7b!a4WdxPf(Wrb!FqK)EZsaBQQ|@pf}nZ^?xF?8qO&1NfcNydRnPJON$n5 zyzy5I?j7hI5C#J^!)Tt?2%n+%dhc~%G~m0Tx~0KAC@(TFg(+t)Hn<1II^3U&+bc&M z^-q%bd%-mW{>#a&JnXt2Tr=1z!j$W10c)-!NAHl6d#?`ty0>?{H3M_z#N31aHG@Jm z=D^|8?t%JcH%LbPz8kScpI855qzkJ+=CTSqC)!*kZW@X`MuzJLZo51f9?N-atZSlHfMx7G-wxb@@Q2_)R&vMN$u6mkrd*Z@O1= zT=&r^FPw*?LOgfovg#1G)S!=yhx9ja7bux%*vDdXA1`Nq$jj!Bc{%+P-tUt*Z*ucl z5dR;D=Ro{`Z|UX(nLT{Ke2NdG_wqrv^tyD3&%X>CdCJ|*lHIp8+QThp`4&jK4P`A* z;Fii-KHz^yW~Ctx36XBI%I>5V)bBR7zyh~Ha3__uzz(;BR+qJW!b7!_tJam9m4$J8 zSak^#mMU^#cDpat7SJKEkTR>OkNMmjsgHNH`;2P-6PEvw<~95%OA{{lRJIeZZZF|{Y2Cxf1q;w!&~Cft9*oZ z7gCp`O+eTW#N(arG1}d@=w|5k^qz+&hO6%m8L6?m=aH)E0rySpQx4N^WF`mPV@;Je z8xb(Fd#vR{5wgSrS)HZ2?cwh65c6&R_2ysi-0btk`{I39;yzC-7ON|;kfoq5fh|j7 zODr*#kJVXXl;QOGoEa3q64|^tawSgAHM3{0aZ)_8^WXk$XC$r{bhTTzZmq4`vSmx1 zrNA;3e-=w#Uh(we>C3)QVla@Uh}0~wL5zt8a9Le3mz8n*{r)ka?Ah_z zZ2PIUh+(x^ETKLShZe|Zt4u&X{AHt_@`5zjLwt$BVx3I|B?YU0+TbOt)uqWv+!+uu&7ONMfs$2mxANEf* z7z_;!>u77kj*B}QwleSI8KaK9Zz2-5(3WF+-VDCJh1G|rR;>>VYW}AUHEN#8L4Pf4 zPfXQoVfCo|Dk{q(rtHnV9kiunhGj;{7Ah$zVI~kdAI*zVExN_!f;C3P&HWO1^3P!6(Kpz)V5w=+w@ z4+*h^(aTqtml5SLGUI=F$&wQA5!9==fSIi2VQfO5Nc7xlR1A87t4@SH7&{hA2J%dd z@dM3Z`btWcEb%bR9H7yiOrTDLB*pb7WpDZ|KM{sEunrx}_*ED20`TD}ZD zi-4iLJPjAn7y@ey2KfxWG9USN>=@gz<9{PAHUG?jKGyDa30zR3*}0A(&{eb1Zl;&T zQ<)kmwajmDV}Yfh#C6f-+A>yBhw)fvK|BXXSR5v$S~Bu1J61ar?V=3LzNv|NrY7`b zWUz{;j!Ir!vY>=83uRIS`5m%`g6fA=$3&2Q>&hi>POQkb?kFy`g<9Sc2 za!=-I`4N?$NsT1R8J*>s9*1K@rL)?!yu-n;T0UN%D(7%8z08U%wOp&0C7(=`$AOtu zPzR89u6_%`+{v2gkU9~Q2 zh8nF1ST-lKKddLCn9WBqOfi2U+VG3PTgT$`j%UYeHe~~d@)xjw7Oe$LJ07jGSOQ>% zab+_y3(xwVXH+KK-+0zv-euK+J)WTERL#p zd${*v??w5%yv<>1ahe*<#iro40#p9w7MH1IzA5;NCrtUnf%Ms?k^YtvM!~*vfhp<; z#p5^<)!(vg$dQ*x^*5~>?h9nPOpH^G==5|{5mX7bt8|*!4zn1dU+o>oZ85aCQ7E;P zX@%I8^1OO1%RTOJny|&qzl^JA?3y;Q{qJ8;ULJFoh)cvI}l>b~u-WAK#Y2pF$1Q zJV|rXG8{64;?}U&>edd9*!HfC=Qhtbac&&=762Jly%+3Z?RapvFq=id=iC((RFyT%H!(U-|=(Uw_P>|+&9KgnoX6d>S1#s4%j$T-+A8jUlzuX zoCeu9ysQETP8><&%WmM*Tw}}?il?N^uU6DU=V|w~`enlucU#y&^LOJNZ$`%pYS1B~ zg+8IufWAuCBiOziLs!bDUkiKZ)y)*b!s(m~!q77LB<>&JiP+-GMRNC-LvN>NZU1Nb z62~3+jFC}slGj)mLAy}E{R2iMw5!hh$)O9vwci@5ZyoxB(3%vy za`SqtDR}AnEsgBGWe>9>-tA|CD~;~DgnQWUYM54Wi}`Y4i?~GRpELt}KjNO@R|rjF zr7k$>A)M5X=(8;KDX*ojocu!ip+x?zl%~`-CjUJBAo3=CvE@%Gjj10`zLJh(33<5} z_!os=h%f7YCcUm7oUl6i5zDhF+fyqh<)_i))#-j#`wJ53$i;QhgDKCYWTz0>g-aYx zNG@&=Bu|0_E+a@gIL0+~oQntPB1oPD>7{!pjb4T>XF}I`{>lW*UoS(KGokA|53U&? z?cf*})1`7*K)MK$rt3W4!W`w|{x6JJkTBwFB+ZC_U|gD@#&w?m8Y!WkBc66}%lSIg z_6A>=x+mqIQWmCmrSzq&P8~?$QrD-ZrG6*%^;BF`^jJEjG_Z9_Q}7#6r(9exsposS zMyijQlDF-k*M_Sl<#hb&>$Ir%Q@QPDsbkARlOS8ku7E`8Ig8v~OH#l7GM+Zca_nf|5_nfM2tD!}p=Ka@^McKO_IEbxEpq z&Pm>p>(LwEZUcs3ZgYA{K*V&J+nj-fHf3sFRZCOHOVhqtDld{S7a!^p24;`l+&{qn z`bTeRDp_Zpo-jf9R@mXh)-YBS`=m4DR*+p{w|w$yj6 z%Kf?sjLy=PkMpMKmLDMFnQFs38BSpXe}D^q9{fY>WE=To88v(x*JAJl(o;PRX1%9F zk~~->TarLAdm`nTp&#*0=l#W^hrGHDDc!?mEkETiPWMnX7h!p7<9gD)QXBQ8M{l%N zD)$PlbCe80F$-4%G5J3n@?255FRuJJzFTz@W;PIm6-GyJgTWD8EIER&iiN!!zEk*@ z4fn-P)@H@tue~RBqR^b`*)S>AQQn~UaznsYhAr~BAl7$1+e12FN7P?iFV9EwD zc9Ms(s=EqNz9A*{KJPGjswNaVl06#)(p-)}Q|))^$DC(+=!Vz&N(c;+IbzmcG`^hmegZ1fnqHSaJb@?!DQBo++z zIHIQ6;<2Ambksi#MGtXQe}SrWETo1ajCYk7`tZ?1sZ?}!{gja*`TXVQe=AfQl7vs6 zZ~f;_=L934&JK2dIvb*wpU)oq^!aXo@nrOzf%RD{dHGhZd-r7YIf%w^b!z_Qo^)Vi zgKe_Mc)1z@s7#8%rcB52O(NbQwVvxN75%jRH9rMPlNwi=J4-Du35^R=J4*8?3%*IP zhJGa+-YCl5c>Q$XoYx4+cg}?ti1PVBX%3GxT`>Tvc1A1f>-wM>mSo+t%5_ARVO(MLnRT|F-$6Ackl0#b+}e;o9GIp{UJ{HF#J zc`xVMvw$K9Jf3dVw@b_GuViiR{5ko@o>(s&iN`D2mh?=MulX0HbIYH7W<}+ym09{z zq0dd!Oo=TP^t{ADtNS&T6*M#IX0_rm#&*-IEj9aM#HBS!7vn zIb@-ce&J}9-c}?Ts7kUmr%|+5?rMzWWEN0;)Dkd1N`XuVwP)s1V;JftVWr8XmON^4 zQs@=VTrNG`t-8Rh%+%U#R;KY^_v!ta$0x&6%%y|PkJ3cRLEZ-rFW~W#r#YXLd^-Fr zuVhlQ18XF;7Gk*u7hVP(Ud=0d#?rQ+XIgGhZwz}SrGVx{hav}FM9Bdo251x)_`{!x zdF9ZsJlGy754I~DEicE^ttbL5&rTNeoP|}qs1KfQlX|8_h`(prec6vb=6Jl|iNYf1 ztl}rDpQ?VvyB4p%e^6ERYL%6&&wH(uYcf*#t5x2$ufDS0I_K4Oe^a&grI)?d8819w zedLJ(`-4y9TW7yo<$3;<7wzF~l9RgYi*e4c=DM4mbah=!zTs#p;cZ1r`Azz|G+U9b zDj6B6&aer-E)_R$-Juh7wJa7oM^|U#g9EL>zJrTt;+g6R`wP2j#9-GY z!+!Wp*xNsvAKsgV#TbiF`z9k><=M9gz$jd&y zz-q*1<5r4d8B3_s7Mu(lFccb?u9qm9QGPg$l*zOlrY9YqN{W$vwvmvRDx?Zq{B8ub zfFN9@$Fj;?B-)NIO~M?HdH&wECwrzFZK*9wH zea=y@5cHLciH~E!LEGvKK#O0 zCC4`yQ7W-r!~VjfHGJ^sZ64!S(n;uWLlChIK562KO#)UK;j^5hRg+vya^i`Ny!}Mc z(Hcp{OHF%tuiT|pV)#md8Zow@DgV#=aapk5fUh3n!K1^cg)im?HC}ZQ&%{=Jj77+U z!PEJ}Y)NM#IVY>8es}Kv&;L*LWW4hGKt4Hd=r>+7Ch~5%#^{cIY7a-nvK+UR#op9w z4TibQA^UB?`%yvR@6oW|8&7y8wEj2Md|^90pt7>Iw{m;g&TB8`x^ZtA(O&oj#6(LZ zw#8uI7u4fj>qcFtTjB^uetaW&k(0gi#PkEIQdwW@o!dXU{x-U z-BFYJN>(b@YAZ%I_M{D zD6L0?+53vld#!%Zrg()p(a+_xIj0Zel2Oyb)UhEHQC6U(@=3?YOQL*K!@|+}GbA5F zXDhSlCz!krT4}h$Uv2EY)O#k@)jyOU_J6vmTd`7)^H3wmpbd-K=G?ImYn3V-SuNjjY!Tp9x 320 ) then begin - S.X := 320; - S.DX := -S.DX; - end; - if( S.X < -16 ) then begin - S.X := -16; - S.DX := -S.DX; - end; - if( S.Y > 240 ) then begin - S.Y := 240; - S.DY := -S.DY; - end; - if( S.Y < -16 ) then begin - S.Y := -16; - S.DY := -S.DY; - end; - (* Draw the sprite, note the Page offset added to the *) - (* Y coordinate of the image *) - mxPutImage( @S.Image, S.X, Page+S.Y, S.W, S.H, OP_TRANS ); -end; - -begin - (* Initialize library *) - mxInit; - - (* Enter graphics mode *) - mxSetMode( MX_320x240 ); - - (* Print initialization message *) - mxSetTextColor( 15, OP_TRANS ); - mxOutStr( 4, 4, 'Initializing...' ); - - (* Initialize sprites *) - for I:=1 to MAX_SPRITE do sxInit( S[I] ); - - (* Draw background *) - for I:=1 to 192 do begin - mxCircle( 160, 480+120, I, I+63 ); - mxCircle( 161, 480+120, I, I+63 ); - end; - - (* Compute and set palette *) - for I:=1 to 192 do with Palette[I+63] do begin - R := 0; - G := 0; - B := 0; - if( I < 64 ) then - R := I shr 1+31 - else if( I < 128 ) then - G := (I-64) shr 1+31 - else - B := (I-128) shr 1+31; - end; - mxSetPalette( @Palette[64], 64, 192 ); - - (* Main loop *) - Page := 240; - while( not KeyPressed ) do begin - (* Set clip region to current page *) - mxSetClipRegion( 0, Page, 320, 240 ); - mxSetClip( TRUE ); - (* Restore background *) - mxBitBlt( 0, 480, 320, 240, 0, Page ); - (* Draw sprites *) - for I:=1 to MAX_SPRITE do sxMove( S[I] ); - (* Print message *) - mxOutStr( 4, Page+4, 'Some sprites moving...' ); - (* Flip page *) - mxStartLine( Page ); - Page := 240-Page; - (* Animate palette *) - mxSetPalette( @Palette[64], 64, 192 ); - mxRotatePalette( @Palette[64], 192, 3 ); - end; - - mxSetMode( MX_TEXT ); - mxTerm; -end. diff --git a/16/x/modex/DEMO02.EXE b/16/x/modex/DEMO02.EXE deleted file mode 100755 index 14e7dc72b16e421ae94767feaa07cb3988f49db1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24688 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 L6~S)>H$VReFZ-F@ diff --git a/16/x/modex/DEMO02.PAS b/16/x/modex/DEMO02.PAS deleted file mode 100755 index 6b4fb6f9..00000000 --- a/16/x/modex/DEMO02.PAS +++ /dev/null @@ -1,125 +0,0 @@ -(* - DEMO02 - Texture mapping and palette rotation - (c) 1994 by Alessandro Scotti -*) -uses Crt, Modex, Plasma, Threed; - -const - LSIZE = 85; - Trans : TPoint = ( X:0; Y:0; Z:0 ); -type - T2DPoint = record - X, Y: integer; - end; - TTexture = record - Desc : array[ 0..3 ] of T2DPoint; - Width : word; - Data : array[ 1..64*64 ] of byte; - end; - TQuad = record - VtxCnt : word; - Vtx : array[ 0..3 ] of word; - Texture: word; - end; -var - Vtx : array[ 0..7 ] of TPoint; - XVtx : array[ 0..7 ] of TPoint; - VVtx : array[ 0..7 ] of T2DPoint; - Face : array[ 0..5 ] of TQuad; - Txts : array[ 0..5 ] of TTexture; - Nrm : array[ 0..5 ] of TPoint; - XNrm : array[ 0..5 ] of TPoint; - Page : word; - Palette: array[ byte ] of record R, G, B: byte; end; - -(* Make a 64x64 plasma to be used as texture *) -procedure MakeTexture( Idx: word ); -var - I: word; -begin - mxFillBox( 0, 0, 64, 64, 0, OP_SET ); - MakePlasma( 0, 0, 64, 64, 96, Random(192)+1, Random(192)+1, Random(192)+1 ); - mxGetImage( @Txts[Idx].Data, 0, 0, 64, 64 ); - (* Texture vertexes are 8:8 fixed, add $80 (0.5) for best results *) - with Txts[Idx] do begin - Desc[0].X := $80; Desc[0].Y := $80; - Desc[1].X := $80; Desc[1].Y := $3F80; - Desc[2].X := $3F80; Desc[2].Y := $3F80; - Desc[3].X := $3F80; Desc[3].Y := $80; - Width := 64; - end; -end; - -procedure Init; -var - I: integer; -begin - (* Build vertexes for a cube *) - with Vtx[0] do begin X:=-LSIZE; Y:=-LSIZE; Z:=-LSIZE; end; - with Vtx[1] do begin X:=+LSIZE; Y:=-LSIZE; Z:=-LSIZE; end; - with Vtx[2] do begin X:=-LSIZE; Y:=+LSIZE; Z:=-LSIZE; end; - with Vtx[3] do begin X:=+LSIZE; Y:=+LSIZE; Z:=-LSIZE; end; - with Vtx[4] do begin X:=-LSIZE; Y:=-LSIZE; Z:=+LSIZE; end; - with Vtx[5] do begin X:=+LSIZE; Y:=-LSIZE; Z:=+LSIZE; end; - with Vtx[6] do begin X:=-LSIZE; Y:=+LSIZE; Z:=+LSIZE; end; - with Vtx[7] do begin X:=+LSIZE; Y:=+LSIZE; Z:=+LSIZE; end; - for I:=0 to 7 do begin (* Make points 16:16 fixed *) - Vtx[I].X := Vtx[I].X*$10000; - Vtx[I].Y := Vtx[I].Y*$10000; - Vtx[I].Z := Vtx[I].Z*$10000; - end; - (* Build faces *) - with Face[0] do begin Vtx[0]:=0; Vtx[1]:=2; Vtx[2]:=3; Vtx[3]:=1; end; - with Face[1] do begin Vtx[0]:=4; Vtx[1]:=5; Vtx[2]:=7; Vtx[3]:=6; end; - with Face[2] do begin Vtx[0]:=0; Vtx[1]:=1; Vtx[2]:=5; Vtx[3]:=4; end; - with Face[3] do begin Vtx[0]:=1; Vtx[1]:=3; Vtx[2]:=7; Vtx[3]:=5; end; - with Face[4] do begin Vtx[0]:=2; Vtx[1]:=0; Vtx[2]:=4; Vtx[3]:=6; end; - with Face[5] do begin Vtx[0]:=7; Vtx[1]:=3; Vtx[2]:=2; Vtx[3]:=6; end; - for I:=0 to 5 do Face[I].Texture := I; - (* Build textures and palette *) - Randomize; - FillChar( Palette, SizeOf(Palette), 0 ); - MakePlasmaPalette( Palette, PAL_RGB ); - mxSetPalette( @Palette, 0, 193 ); - for I:=0 to 5 do MakeTexture( I ); -end; - -var - AX, AY, AZ: byte; - I: word; -begin - mxInit; - mxSetMode( MX_320x240 ); - Init; - Page := 240; (* Start with hidden page *) - - AX := 0; - AY := 0; - AZ := 0; - (* Init 3D transforms, perspective is intentionally exaggerated *) - tdSetTranslation( Trans ); - tdSetPerspective( 400*$10000, $10000, $10000 ); - (* Main loop, all magic here! *) - while( not KeyPressed ) do begin - tdSetRotation( AX, AY, AZ ); (* Set new angles *) - tdTransform( Vtx, XVtx, 8 ); (* 3D transform points *) - tdTransformToImage( XVtx, VVtx, 8, 160, 120+Page ); - Inc( AX, 1 ); (* Bump angles *) - Inc( AY, 1 ); - Inc( AZ, 2 ); - mxSetClipRegion( 0, Page, 320, 240 ); (* Set clip to new page *) - mxSetClip( TRUE ); - mxFillBox( 0, Page, 320, 240, 0, OP_MOVE ); (* Clear screen *) - mxRotatePalette( @Palette[1], 192, 3 ); (* Rotate palette *) - (* Draw cube: backface culling is straighforward in this case, so *) - (* it can be handled by the polygon filling procedure *) - for I:=0 to 5 do - mxTexturePoly( 4, Face[I].Vtx, VVtx, Txts[I].Desc, Txts[I].Data, Txts[I].Width ); - mxStartLine( Page ); (* Flip pages *) - mxSetPalette( @Palette[1], 1, 192 ); (* Set new palette *) - Page := 240-Page; - end; - - mxSetMode( MX_TEXT ); - mxTerm; -end. diff --git a/16/x/modex/DEMO03.EXE b/16/x/modex/DEMO03.EXE deleted file mode 100755 index c646c4b0283db932174d915432747c2176034195..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14256 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 RADIUS*RADIUS ) then goto Retry; - Z := Toggle( Round( Sqrt( Abs( RADIUS*RADIUS-X*X-Y*Y ) ) ) ); - case Random(3) of - 0: Swap( X, Z ); - 1: Swap( Y, Z ); - end; - X := X * $10000; Y := Y * $10000; Z := Z * $10000; - end; - end; - (* Initialize morphing *) - Move( CubeVtx^, Vtx^, SizeOf(Vtx^) ); - Status := 0; - Count := WAITCOUNT; -end; - -procedure Morph; -var - I: integer; -begin - (* Fully unoptimized, slowest loop I could think of! *) - for I:=0 to MAXVTX-1 do begin - Vtx^[I].X := ((CubeVtx^[I].X * Morph1)+(SphereVtx^[I].X * Morph2)) div MS; - Vtx^[I].Y := ((CubeVtx^[I].Y * Morph1)+(SphereVtx^[I].Y * Morph2)) div MS; - Vtx^[I].Z := ((CubeVtx^[I].Z * Morph1)+(SphereVtx^[I].Z * Morph2)) div MS; - end; -end; - -var - AX, AY, AZ: byte; - I: word; - C: char; -begin - mxInit; - mxSetMode( MX_320x240 ); - Init; - Page := 240; (* Start with hidden page *) - - AX := 0; - AY := 0; - AZ := 0; - (* Init 3D transforms, perspective is intentionally exaggerated *) - tdSetTranslation( Trans ); - tdSetPerspective( 400*$10000, $10000, $10000 ); - C := #0; - repeat - tdSetRotation( AX, AY, AZ ); (* Set new angles *) - tdTransform( Vtx^, XVtx^, MAXVTX ); (* 3D transform points *) - tdTransformToImage( XVtx^, VVtx, MAXVTX, 160, 120+Page ); - Inc( AX, 1 ); (* Bump angles *) - Inc( AY, 1 ); - Inc( AZ, 2 ); - mxSetClipRegion( 0, Page, 320, 240 ); (* Set clip to new page *) - mxSetClip( TRUE ); - mxFillBox( 0, Page, 320, 240, 0, OP_MOVE ); (* Clear screen *) - (* Draw points *) - for I:=0 to MAXVTX-1 do - mxPutPixel( VVtx[I].X, VVtx[I].Y, 128 + XVtx^[I].Z shr 18 ); - mxStartLine( Page ); (* Flip pages *) - Page := 240-Page; - (* Morph *) - if( Odd(Status) ) then begin - Morph; - Inc( Morph1, Delta1 ); - Inc( Morph2, Delta2 ); - if( Morph1 < 0 )or( Morph2 < 0 ) then Inc( Status ); - if( Status = 4 ) then Status := 0; - end - else begin - Dec( Count ); - if( Count < 0 ) then begin - Inc( Status ); - Count := WAITCOUNT; - Morph1 := InitMorph1[Status]; - Morph2 := InitMorph2[Status]; - Delta1 := InitDelta1[Status]; - Delta2 := InitDelta2[Status]; - end; - end; - until( KeyPressed ); - - mxSetMode( MX_TEXT ); - mxTerm; -end. diff --git a/16/x/modex/DEMO04.DAT b/16/x/modex/DEMO04.DAT deleted file mode 100755 index 72aaad08ac55e4d161e7868374296a4e42554684..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37662 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%0D)*4A2IO9KMZYD#oU43C^WOCfTg8_%RD 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�-ncKj8QX2BIutynAlnfJ{;J0ue86t5F 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 XG;Ye`)EVP3#M6mPm!(a=?*#mR$DZhs diff --git a/16/x/modex/DEMO04.EXE b/16/x/modex/DEMO04.EXE deleted file mode 100755 index 1fec5e8aa383353d986ca1e4420838b09e61eef4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24384 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 Im202>1y)VB#{d8T diff --git a/16/x/modex/DEMO04.PAS b/16/x/modex/DEMO04.PAS deleted file mode 100755 index 1a946315..00000000 --- a/16/x/modex/DEMO04.PAS +++ /dev/null @@ -1,198 +0,0 @@ -(* - DEMO04 - Multiple textures and triple buffering (3 pages) - (c) 1994 by Alessandro Scotti -*) -uses Crt, Modex, Threed; - -const - MAXVTX = 256; - MAXCUB = 2; - MAXTXT = 2; - Trans : TPoint = ( X:0; Y:0; Z:0 ); - TxtSunDial: array[ 0..7 ] of word = ( - $7F80,$0080, $0080,$0080, $0080,$7E80, $7F80,$7E80 ); - TxtSapphire : array[ 0..7 ] of word = ( - $0080,$0080, $0080,$1F80, $1F80,$1F80, $1F80,$0080 ); - TxtMarble: array[ 0..7 ] of word = ( - $0080,$8080, $0080,$FD80, $7F80,$FD80, $7F80,$8080 ); -type - T2DPoint = record - X, Y: integer; - end; - TTexture = record - Desc : array[ 0..3 ] of record X, Y: word end; - Width : word; - Data : pointer; - end; - TQuad = record - Vtx : array[ 0..3 ] of word; - Texture: word; - end; - TCube = record - Face : array[ 0..5 ] of TQuad; - Base : integer; - end; -var - Vtx, XVtx: array[ 0..MAXVTX ] of TPoint; - VVtx : array[ 0..MAXVTX ] of T2DPoint; - Cube : array[ 0..MAXCUB ] of TCube; - ZList : array[ 0..MAXCUB ] of integer; - VtxCnt : word; - Txts : array[ 0..MAXTXT ] of TTexture; - Page : word; - Palette : array[ byte ] of record R, G, B: byte; end; - TxtDat1, TxtDat2: pointer; - -(* Add a new entry to the vertex array *) -procedure AddVtx( PX, PY, PZ: longint ); -begin - with Vtx[VtxCnt] do begin X:=PX*$10000; Y:=PY*$10000; Z:=PZ*$10000; end; - Inc( VtxCnt ); -end; - -procedure MakeCube( var C: TCube; X1,Y1,Z1, X2,Y2,Z2, TX,TY,TZ, Texture: integer ); -const - FaceIdx: array[ 0..23 ] of integer = ( - 0,1,2,3, 0,4,5,1, 1,5,6,2, 2,6,7,3, 3,7,4,0, 6,5,4,7 ); -var - I, VC: integer; -begin - VC := VtxCnt; - C.Base := VC; - AddVtx( X1+TX, Y1+TY, Z1+TZ ); - AddVtx( X2+TX, Y1+TY, Z1+TZ ); - AddVtx( X2+TX, Y2+TY, Z1+TZ ); - AddVtx( X1+TX, Y2+TY, Z1+TZ ); - AddVtx( X1+TX, Y1+TY, Z2+TZ ); - AddVtx( X2+TX, Y1+TY, Z2+TZ ); - AddVtx( X2+TX, Y2+TY, Z2+TZ ); - AddVtx( X1+TX, Y2+TY, Z2+TZ ); - for I:=0 to 23 do C.Face[I shr 2].Vtx[I and 3] := VC+FaceIdx[I]; - for I:=0 to 5 do C.Face[I].Texture := Texture; -end; - -procedure MakeTexture( Idx: integer; var VtxData ); -var - P: ^word; - I: integer; -begin - P := @VtxData; - with Txts[Idx] do begin - for I:=0 to 3 do begin - Desc[I].X := P^; Inc( P ); - Desc[I].Y := P^; Inc( P ); - end; - Width := 129; - Data := TxtDat1; - end; -end; - -procedure Init; -var - I: integer; - V: integer; - F: file; - P: array[ 1..768 ] of byte; -begin - (* Initialize objects *) - VtxCnt := 0; - MakeCube( Cube[0], -64,-64,8, 64,64,-8, 0,0,0, 1 ); (* Sundial *) - Cube[0].Face[0].Texture := 0; - V := VtxCnt; - MakeCube( Cube[1], -16,-16,16, 16,16,-16, 0,0,0, 2 ); (* Sapphire *) - tdSetTranslation( Trans ); - tdSetRotation( 32, 32, 00 ); - tdRotate( Vtx[V], XVtx[V], 8 ); (* Got to rotate this cube *) - for I:=V to V+7 do begin - Vtx[I].X := XVtx[I].X; - Vtx[I].Y := XVtx[I].Y; - Vtx[I].Z := XVtx[I].Z + 100*$10000; - end; - MakeCube( Cube[2], -64,-4,48, 64,4,-48, 0,68,56, 1 ); (* Marble *) - (* Load texture and palette *) - Assign( F, 'DEMO04.DAT' ); - Reset( F, 1 ); - BlockRead( F, P, SizeOf(P) ); - mxSetPalette( @P, 0, 256 ); - GetMem( TxtDat1, 63*1024 ); - BlockRead( F, TxtDat1^, 129*286 ); - Close( F ); - TxtDat2 := Ptr( Seg(TxtDat1^), Ofs(TxtDat1^)+129*254 ); - (* Init textures *) - MakeTexture( 0, TxtSundial ); - MakeTexture( 1, TxtMarble ); - MakeTexture( 2, TxtSapphire ); - Txts[2].Data := TxtDat2; -end; - -(* Sort procedure, not worth optimizing with only a few objects *) -procedure SortObjects; -var - I, J, K: integer; - ZMax: array[ 0..MAXCUB ] of longint; - ZI: integer; - L: longint; -begin - for I:=0 to MAXCUB do begin - L := XVtx[Cube[I].Base].Z; - for J:=1 to 7 do - if( L > XVtx[Cube[I].Base+J].Z ) then L := XVtx[Cube[I].Base+J].Z; - ZMax[I] := L; - ZList[I] := I; - end; - for I:=0 to MAXCUB-1 do begin - ZI := I; - for J:=I+1 to MAXCUB do - if( ZMax[ZList[J]] > ZMax[ZList[ZI]] ) then ZI := J; - if( ZI <> I ) then begin - K := ZList[I]; - ZList[I] := ZList[ZI]; - ZList[ZI] := K; - end; - end; -end; - -var - AX, AY, AZ: byte; - I, J, K: word; -begin - mxInit; - mxSetMode( MX_320x240 ); - Init; - Page := 240; (* Start with hidden page *) - - (* Init 3D transforms, perspective is intentionally exaggerated *) - AX := 0; AY := 0; AZ := 0; - tdSetTranslation( Trans ); - tdSetPerspective( 600*$10000, $10000, $10000 ); - (* Main loop, all magic here! *) - while( not KeyPressed ) do begin - tdSetRotation( AX, AY, AZ ); (* Set new angles *) - tdTransform( Vtx, XVtx, VtxCnt ); (* 3D transform points *) - tdTransformToImage( XVtx, VVtx, VtxCnt, 160, 120+Page ); - Inc( AX, 1 ); (* Bump angles *) - Inc( AY, 2 ); - Inc( AZ, 1 ); - mxSetClipRegion( 0, Page, 320, 240 ); (* Set clip to new page *) - mxSetClip( TRUE ); - mxFillBox( 0, Page, 320, 240, 0, OP_MOVE ); (* Clear screen *) - (* Draw objects *) - SortObjects; - for I:=0 to MAXCUB do with Cube[ZList[I]] do begin - for J:=0 to 5 do begin - K := Face[J].Texture; - mxTexturePoly( 4, Face[J].Vtx, VVtx, Txts[K].Desc, Txts[K].Data^, Txts[K].Width ); - end; - end; - (* Flip page: at 320x240 the Start Address Register Low is always zero *) - case Page of - 0 : begin PortW[$3D4] := $000C; Page := 240; end; - 240: begin PortW[$3D4] := $4B0C; Page := 480; end; - 480: begin PortW[$3D4] := $960C; Page := 0; end; - end; - mxWaitRetrace; (* If the frame rate seems low, try to remove this line *) - end; - - mxSetMode( MX_TEXT ); - mxTerm; -end. diff --git a/16/x/modex/DEMO05.EXE b/16/x/modex/DEMO05.EXE deleted file mode 100755 index 21a7c207f7134ed187a08530637509b96b37b19e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22528 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 CoI~RP diff --git a/16/x/modex/DEMO05.PAS b/16/x/modex/DEMO05.PAS deleted file mode 100755 index 819c5cf3..00000000 --- a/16/x/modex/DEMO05.PAS +++ /dev/null @@ -1,131 +0,0 @@ -(* - DEMO05 - A Gouraud-shaded rotating torus - (c) 1994 Alessandro Scotti -*) -uses Crt, Modex, Threed; - -(* Define ALTPAL for alternate palette *) -{$define ALTPAL} - -const - MAXVTX1 = 15; RADIUS1 = 70; (* MAXVTX1+1 must be multiple of 4 *) - MAXVTX2 = 15; RADIUS2 = 30; - MAXVTX = (MAXVTX1+1)*(MAXVTX2+1)-1; - MAXFACE = MAXVTX; - Trans : TPoint = ( X:0; Y:0; Z:0 ); (* Object translation *) - Light : TPoint = ( X:0; Y:0; Z:-63*$10000 ); (* Light direction *) -type - TQuad = record - QVtx : array[ 0..3 ] of integer; - end; -var - Vtx, XVtx : array[ 0..MAXVTX ] of TPoint; (* Points *) - VVtx : array[ 0..MAXVTX ] of record X, Y: integer end; - Face : array[ 0..MAXFACE ] of TQuad; (* Polys *) - Culled : array[ 0..MAXFACE ] of integer; - GNrm,XGNrm: array[ 0..MAXVTX ] of TVector; (* Gouraud normals *) - VtxLight : array[ 0..MAXVTX ] of integer; (* Points brightness *) - Page : word; - -function GetVtx( I1, I2: integer ): integer; -begin - GetVtx := (I1 mod (MAXVTX1+1))*(MAXVTX2+1) + I2 mod (MAXVTX2+1); -end; - -procedure Init; -var - R, N, X, Y, Z: real; - I, J, K, V: integer; -begin - (* Build vertexes *) - for I:=0 to MAXVTX1 do begin - K := (I + (MAXVTX1+1) shr 2) mod (MAXVTX1+1); - R := RADIUS1 + RADIUS2*Cos( 2*K*Pi / (MAXVTX1+1) ); - for J:=0 to MAXVTX2 do begin - V := I*(MAXVTX2+1)+J; (* Index of current vertex *) - (* Compute coordinates of current vertex *) - X := R*Cos(2*J*Pi / (MAXVTX2+1)); (* Get coordinates *) - Y := R*Sin(2*J*Pi / (MAXVTX2+1)); - Z := RADIUS2*Sin(2*K*Pi / (MAXVTX1+1)); - Vtx[V].X := Round( X )*$10000; (* Save coordinates *) - Vtx[V].Y := Round( Y )*$10000; - Vtx[V].Z := Round( Z )*$10000; - (* Compute direction of Gouraud normal thru current vertex *) - X := X - RADIUS1*Cos(2*J*Pi / (MAXVTX2+1)); - Y := Y - RADIUS1*Sin(2*J*Pi / (MAXVTX2+1)); - N := Sqrt( X*X + Y*Y + Z*Z ); (* Get vector length *) - GNrm[V].X := Trunc( X*$10000/N ); (* Save normal vector *) - GNrm[V].Y := Trunc( Y*$10000/N ); - GNrm[V].Z := Trunc( Z*$10000/N ); - end; - end; - (* Generate faces so that depth-sorting is not needed: there are still *) - (* some *very* little errors, but this is the best I could devise *) - J := 0; - K := 0; - for I:=0 to MAXFACE do with Face[I] do begin - QVtx[0] := GetVtx( J, K ); - QVtx[1] := GetVtx( J, K+1 ); - QVtx[2] := GetVtx( J+1, K+1 ); - QVtx[3] := GetVtx( J+1, K ); - Inc( K ); - if( K > MAXVTX2 ) then begin - K := 0; - Inc( J ); - end; - end; -{$ifndef ALTPAL} - for I:=0 to 63 do mxSetColor( I+64, 0, 0, I ); (* Blue palette *) -{$else} - for I:=0 to 31 do mxSetColor(I+64, 0, I shl 1, 0); (* Green neon palette *) - for I:=32 to 63 do mxSetColor ( I+64, (I-32) shl 1, 63, (I-32) shl 1 ); -{$endif} -end; - -var - AX, AY, AZ: byte; - I: word; -begin - mxInit; - mxSetMode( MX_320x240 ); - Init; - Page := 240; (* Start with hidden page *) - - AX := 0; - AY := 0; - AZ := 0; - (* Init 3D transforms, perspective is intentionally exaggerated *) - tdSetTranslation( Trans ); - tdSetLight( Light ); - tdSetPerspective( 400*$10000, $10000, $10000 ); - (* Main loop, all magic here! *) - while( not KeyPressed ) do begin - tdSetRotation( AX, AY, AZ ); (* Set new angles *) - tdTransform( Vtx, XVtx, MAXVTX+1 ); (* 3D transform points *) - tdTransformToImage( XVtx, VVtx, MAXVTX+1, 160, 120+Page ); - tdRotate( GNrm, XGNrm, MAXVTX+1 ); (* Rotate Gouraud normals *) - tdTransformLight( XGNrm, VtxLight, MAXVTX+1 ); - (* Backplane culling is not really needed here! *) - FillChar( Culled, SizeOf(Culled), 0 ); - tdBackPlaneCull( Face, XVtx, Culled, MAXFACE+1, SizeOf(TQuad) ); - Inc( AX, 1 ); (* Bump angles *) - Inc( AY, 2 ); - Inc( AZ, 3 ); - mxSetClipRegion( 0, Page, 320, 240 ); (* Set clip to new page *) - mxSetClip( TRUE ); - mxFillBox( 0, Page, 320, 240, 0, OP_MOVE ); (* Clear screen *) - (* Draw polygons *) - for I:=0 to MAXFACE do with Face[I] do - if( Culled[I] >= 0 ) then mxGouraudPoly( 4, QVtx, VVtx, VtxLight, 64 ); - (* Flip page: at 320x240 the Start Address Register Low is always zero *) - case Page of - 0 : begin PortW[$3D4] := $000C; Page := 240; end; - 240: begin PortW[$3D4] := $4B0C; Page := 480; end; - 480: begin PortW[$3D4] := $960C; Page := 0; end; - end; - mxWaitRetrace; (* Uncomment this instruction if screen flickers *) - end; - - mxSetMode( MX_TEXT ); - mxTerm; -end. diff --git a/16/x/modex/DEMO06.DAT b/16/x/modex/DEMO06.DAT deleted file mode 100755 index 1ac2c2bb8f8c79a7cf1f3c968f75e8e5ac8cd705..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 77568 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 P3zel81wBCVexm$;I2yv& diff --git a/16/x/modex/DEMO06.EXE b/16/x/modex/DEMO06.EXE deleted file mode 100755 index f1308e8a536aa9d3d4574566fd018d698d5ef784..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10864 zcmbVy30zZG_WyZHUP6Gdiq<9Ima)=OAr>Pb;zF!WrD!Xg1GZyJJ9Vm^kbrFk9>Y{g z9@0+d*ZGZn>QrQwPHlgGY-uOp{A39Vno_)2vo_d{`@EhNdPa(0A>S#57Hu}hmkfQJ%?0+^lwN9 zkgQ1OkS37)DS%)k4U!%y3+YuPGt#e-ev9-mQZv$Nq%%n0A+a>JLz<5C2+~p{J5SK7MZ34mH+VDK~=u#zk@RC$IUq|bDCSwj|(|2Ax`wInv`*=LMooXdQqaV{Aw^Vwg-hov|CgHoke-sW~t(yNt%)JmNk6}Z7p zvi2Y6N5j&sz@$burlwZT#~|`nN_^y5fl93`@!1K{jpn_3MjfmNKdni~w9q)<$M=kO zUg^AIemxD$Z)bqi%@nicKhuCqC$jfrPt|)q$pFtMX^5OEAgJsDl}dz(mdL7nO|}zC z5PujEn!rAX4HX!Ksa1mv3czB)?a%zJl_?mzx2TDSlBZu}H)x`f|*t2!?T zZPv};{8Q1WFvi?69}HuK-|v=MeXmLvREjz*G94;CUWAYR=yw}&H9Iw>SX4mob}$~j zo0MFn0O56=uYIQpL15`nLsR% zp`@pVlD0B9LGptzfhOUY3VQeCXh%0n^NKGD1miU9q@~CYr=Zy6aptn#d7Ry>f=a-2 zTTBlC8PRGgS@uZ5gJ*A1LPYo2`UyoR1GKwyD6^l@y!~O`= zFib)LqBO7ssue{ERHwT%5sjLJx?4X5b<~Zzt^hCvSpA^>@652*AC90EBVh8g`u&*j zq8qEx-alc|sZ=mNl%f&WodKL(sg=Zum1ohV+34ReT=@Xn!T{81TzYAd9~h?#`oIN@ zkfz}Km}6f+T(gNe_6T^+Y8$u7bHY!Z_5&eDfdeR{_=$41Og~tbd)1uc7gbfrR`gUf z3VKzPQsgn6DbKv?PJ3FVW8CtW(tsmiYM;H@kywMK*P-)r?kQU4v?v!h$zu4Mv_oGfr*WwbY zz$p;f8rh1oDyl+V$i_R1et@76nhgM&}TUI9#wAEQ@B z#jAJFdt&ghi!P3gisxRU_bkB2FX-YqUdP#+95mB|jOxvj71Kgk3C$OAlrf+x51A%p79jH#x_Sp~R=-4>Rl8_&*e_^{p4-cn z(lHlNM;f9Ik)r)BqPDR*kFLhndc|Ya2%zU4tA2%k5maKC2V1akS5(mZRb&5pWi@J` zS1@|N$Er~eJ%?65R$W3PbOL3PrK-e@9&MxK64IDUk3zLuih?nxVPIiNC6$Wls7UTL zI;o{dDZQ7F_d@c{k#|YaZSqs613^0)B_zH?$F~-SMvg^x7j3|C8+U#qj0oLPRWH$4 z`3tNp)~<^jj~pwcnQr9lpyR(T^pBi~JX17_aYhL^D9GJ~++yE#$i9VgXU1%|Y*Wxm z2|Dp!!07J*`bvNg{0le$257*&^r&aHQL**&s*1civkN7s4 z9r{TxpKMA$*yJ`-F;|@p23pT-&M(S!|1^2fbU$Qg&^ly^kGdXUP&| z*|MFo&H;npA4*R$gw~sG+Q_s2mSYh4K^E5XEUTF-Teq(Cq+-2k#P)$ELWX6g|E8n= zu7JP%#=}p@^68j!I4Hut zFIcnw##HXA$O)Fx*G5d)n5FN{VEjd9Dv2qCqS3T;OktShJZU#D59ceRn8aLegGrRq zSciVFG;I_-`aqJpKAc)ERQJqupQKQj-j8R@Ro*9Tqn@BsnP0L`$@q{(D7b^lq_da` zHb-U&!2>AQAP)~L4SGE|d)oG}`pNfqf+~XFnD*PSI(+w+Ck9>(Di8j8+LbU2Auv+g z>1UaLXJ3%L&Fz(s_&gmD9k?}Ue{gz8OejoyI*cd1Z|6V;NmLu`=HBC8#%5ZkpTcNP zqDGKqon)bu5?OCjMCyepDH>T9kY$}@JwFRV;RVDho5bp&ulRrhStH2uV)f7{wFp^n zQbdYiNm7Bxx_~S%Ru5fGJe5TKAK1T+SY9RmOr*RGy;42&eXL1%3Mc5BR0iFK zy}d#2l@D>0{D3@E{v-JZ@;LcMd4v3Ed7ivWj*CirU@P}DinVgN_-T`JAGU(1+DO!U`+hp#spuMa!MJh3^PXPHV| zHBNAF8$iNc>!|}?+j#xR6sR9Rq;0Iq;k-K%+MB=c*SX-Q2%9sd>;Fv2|6e;lNxOs) zqjT7C<6rA=0%t|lPdPJtBA<(@dKL@bb<^ursWxY-_UZ4}3Mm|}I`wVL&}!HC2Sen) zZ*0N~QQyl9zNauw*rgq}2c*rLbdnMmLBnj^LaM|FMk-Xc;#Eb%?B#^zk1Q-yeuk`U zdu@RDcUgkms7zq;IUIa(3yAMRts=%F{!M0SSx|g$>GX+(Q`mdpq(AguDWI5{H{7wr&fj6>nQ82h3#|0ZKQ>U*X#o~ zcE%;J2D*kxtpzb%mVrCBhpoXuAA`6-W?d5WSNI6TBpE-x*c7JWRr`R#P^tq?d`MOs z{BeZ1P-a7=!)2*cvZ1n!qoC|EDL$H!z!cC&Da$p>-`%Hcfp^cyr)#NdKb<)&OjoAz z)t%&&Ito|+K;#7LY^iE%1zpj@Cn|Jcl%3>e>ZtIHGkoGq9hfK^d52o6J9cYnTnmittkDoj@p;%<+NnyxGGHHV=(s$iYCiop$)6*xz}(Jualwwzqd1(7nr zSjWCMVq_Nt`0>0(rF&VysdSSDuVWX;kFs4C2>*>qJ}Eoxyh^20*uCB%Ai@)De+UT% ztp}r~DpaTK5@pagia-xjP}+-kcqF8*+lcHo*7}d7^}!H-HgBf$y3lj+nfDlz!jHN9 zOwFg4*H~ZFc6QOvd`(>2|#$t(~1U+2M`>{p(xYE2G&o+;lLd@^|ngrjdJ zMXm2L#|l}&UQ$RO?KUd0Df4*rmhWmXpB$Ud^wAC^(o&hCQOXGu~)D`LtAcUntI9^ydQE${| zF6#3T(FJu{zHU;11QBl#sytGE58;6c(d8dxk#8jn#MeVC2Hgn+>jV|RmW7r3l zp27Dh)5JJ_8YcwXk%_)R2WPqR!I3_fJbW8EBrSal*B&U(-j-v7ddzaYj&vRg1K%OjRT}f5}D=tc@ z>Qw7?T7?IuqpV7dlv!~xy30F=yxB6`t-rICzY_4|!FMwGOC$X45u+-JKQl7`IIm!V{2ws&bI7u`59{mpeQEG zHptxSkXt>VJ*7P-d1j(o2SSst&A6f}4161nk5n{jssc%AR-~<9y0d2m1m*?S2jW#6 z(`1lq;yDEvI89Y3I68&4a$BT25lS6_W>p-R)d|p|UJB)n2p57Y%~Gh2h3eH{-ASoZ zxhL(C3smBMRJYmO>$f;#ZPHToU9Boz@d zEG@QFON&TBMk=OmQDh)vK>)iXAnq4oyV))tfFBl^hZGSK#dbv*f z(DImw)w>Koe`e>imVjrl*z_=EMjn=jMSqaS=Wj1J)gL(T-&$%@F92F>6`FP39@?#M1I}@n7R1 z>)33@F)RKluE5_Qi(kv;al%?wxKn@GR2RA0sH^5qDeSYZqu}^C_fn=I}eQ8H1S)w0tZG( zd@@_m&!s=PNhA1cglyWVCB==HVY9i&wpqQU-vltN%opqkqAmy!#wwaMZ^$%nB-0u* z3YoJpPn6rX$u(wwe4#V4#xU*=*zRc(k7^qf1qLozhdSYLQBjp6j@K@ufRWHO1BzVx2EN7F`V|p@Pt%d@H;m7f+*&`rsrJSs-@}L_})I zpgl}B$2X1OjT`?>Kzy$$F22na8;_cr0^-s0CZDNMwc*9{NJX#fkAM8|tqDi6 z6uMZxCsY$JGX#(k+M_7O>5L;p*{!Ew;L?P(8wS3fkO6J*k8H{FarVS>NnpU*(=gCF zQLpVHdw`Z=MeK*~F^%ts<9<&HaV6PE64&ArFM^W&@QEvOvTAB=PF9{)LjBQh zhob(YZU21+Gl!e~g^)!cwqP`oB|ces zED*%U!N_T(4G&rHYrug!rAavNo@Ryyp9rWRSkHrFM(VLp5T`)~s_u7eHi$~xK9CI) zY0sr|=^D=i7)1=`xovXXxe*t!niE_6yn#Nac4hlqLm=rMm1#{@fV7>$k`ll%bdS9D zlx81pJcK#5N!UUj*<@s_&)wO3O@iJpgwgHYn|Ze_b4n-Je6BVTn_~^C_rqg`V-xmY zkIkW{pmv3}%fVS8p`P;Y;}pa<=;xW_`SGNW(BDf_C5Jx_Ss5C>a0wWL)%&+B;lj12 zFrDXd=o&}RTf}Q0cVp;c5=3{f*_i3PISzBRNrjeqP0u5)MCB*zW`k)u))3Qth-p%_ zcLY#qQW4HOShm`g_0NJsR-07+oL6I|_?5>rOTGC-8ty?!;+fMvH!B<`Ym-qXG-F3( z6hB^BM_PTHR5#fwQ2dj}v=T2qabRbwH))*Du|nI4G(Stf1dthS2-kLLoF@FThAVIO z?Ka|clsRU{>y^goW)-m(k?+)zAe3dFR!wQN!DE_>2U{;HaR$OOr-cs0w!-R33$vx^ zA#KmKr_BCVSm6y%{~FpO^Ln4IO^}@JgTBTg&oaxbJGuHD6j|H7!jBNdwe539n|Z5^ zRFN-tOrcV96C*}~_4iW^q@6r&;>}ya%o}HzvuCy@&+g}1lhueP1(~)>dkW!bRPbS* z99HsJZ6oFcRD4qJ{crP7#{-TchI}4Ip!QsRk1>Kr-b^F2#&JzJ8`)9k@l2u+I1=i% z5-0G=Q^wbDg6)oL%9s6m-}!yri21K@GE1bq{996ulIaP#7J_B0 zQQT8jGABd2OI!SYlbMYs%DpD8FBvG|@3<|G>FixKdLqfBSY>I7x!Lh8t~>axafc0E zFlj!HkYqM-L-XR!nIoI=n;;6}hfQ4kc@rIX$-phXggzeb>@oy(Ttqki-@HCAXUySn zx9wJLMsd@nkCGhU2+c>ivlq5zWoF|I%h}Rv9@MIXIDUOe6VDGk@7b*F&U!_*xw9+F zHhPjb%5m{EhTgQrHJMbXkutt}s#BZL+HcW7J96Q$Rg#p?`+MR z%25-$_gYPvZ`W>xyNx*)()G%i^4r}E28r!AM-MHw8@5``V+8WIBJwu#w*n157MIYh z?cxUlNkIBr#xNxNCc|+u7<)RtCc&uu)~KXC(?E*5X+oRtX=8x$+#NMy&eP{?7B~K) z2=8`{T{dyhWr(+neJ;bJcAT}>g>muVZNr0h1YIot)@=y4i*k=$eAr|E1jOwggOB|a zO5Exp%k>!;m~q3}4gFBM#1NMq7u(W7g_nh+lYk>;T4mOcnRCX?X)eBr@3@5@mZpb7%g9&eV?xfj zkmeFIJmNBsyA2V=&nM#aMBlt`yt7uglx;^Mc1K*VE17%zaBoAvDe=ez!ZZ9RpYU_T zPwGm&?Dd;*D8=^MS%yGS=0SI;#7qxji9>D@I*i!mcApYIy#0=W!S9~2c=)zK;cmhq z7q?CzkWa&QRh=BfPw9gOa?T+5_Kbte-(A`L^qPZ9-dghf`zsg4bnpCh@tk2i&v$@- z$E#)drzkq|KK@|~8R>^3%H~}=TC%t))zVbQPaM}?Z(tu4>nFU9v6cWC0CBAw4VGT& zffv6VCz>8`H3SFLad;l0-Hmm{UB{i%8w}Cn-^Mdh*3$I51LBO^b^H|jg$dH;-SLFy z^YF5RfZ7W!2YbwO3I`4gQE`P8{kn?nMeE;Mus*n`{j<+Ld%Tz^x)_yw2R(HcXTB?; zEN=_;;BNfHBVHphl)6d$4_79dM7!IhoGmULZ}>|<9o}5jP??so`qI@ z#`dBx*YIr<-{qWch?WA0!%Hn@paajd#I5Wq)EPU)FA%jJ@ydk3&#PDNMCPhho9c=- z9IqH?*ySg-PvptOZ^2Q}P#;)F!>05o!9Pkc;TML5tXMO#Ez_VVZ4K_bQaa3)wsLoV z!gin7$1ZfnonLT?Fh13-_SW5a|8`v53)>Lm-VTCqWsWw{#?Vbuo|t>=aBqFUdhzBM zR!|sIpYtT9i?5vdEaa);(Hn=C_!Pg`^lK%@fAV|FuC@FxABt-a;U!K9`33~|xrciL z))$I6qV@NT=v()U==%*<1M6gfI&Vt%_A73@wJlTR07r6Q^)0VA@0c1T$fEGT7KQhA zo6;SD_j_p5*qxuHi3$Wk`}+PdW&YAJ)ZHd#;r>lH9qW9a#YrkXr8P}x#*?qO0)B%B zhq?&BK{F{k`*96z>$@J)h@)p0BcMIuU9K~zeHphFi@)RAgW4ax-M;+G_7!%t^@$6f zsG9kx|2Im3NdSlNgn=m?f4Fex G@BaZ%)XT^K diff --git a/16/x/modex/DEMO06.PAS b/16/x/modex/DEMO06.PAS deleted file mode 100755 index f26af067..00000000 --- a/16/x/modex/DEMO06.PAS +++ /dev/null @@ -1,135 +0,0 @@ -(* - DEMO06 - Magnifying glass - (c) 1994 Alessandro Scotti -*) -uses Crt, Modex; - -const - R = 40; (* Lens radius *) - K : real = 1.8; (* Magnifying factor, less makes a stronger lens *) -type - TLine = array[ 0..319 ] of byte; - PLine = ^TLine; - TScreen = array[ 0..239 ] of PLine; -var - VScreen: TScreen; (* Virtual screen *) - BallX : array[ 0..R, 0..R ] of integer; - BallY : array[ 0..R, 0..R ] of integer; - Sprite : array[ -R..R, -R..R ] of byte; - Page : word; - -(* Returns "lens-view" coordinates of X,Y *) -procedure GetCoords( var X, Y: integer ); -var - LR, Z, SinA, SinB, TgB, Q: real; -begin - LR := Sqrt( X*X + Y*Y ); - if( LR = 0 ) then Exit; - if( LR < R ) then begin - Z := Sqrt( R*R - LR*LR ); - SinA := LR / R; - SinB := SinA / K; - TgB := SinB / Sqrt( 1-SinB*SinB ); - Q := LR - TgB*Z; - X := Round( X * ( Q/LR ) ); - Y := Round( Y * ( Q/LR ) ); - end; -end; - -procedure Init; -var - F : file; - Palette: array[ 0..767 ] of record R, G, B: byte; end; - X, Y, - X2, Y2 : integer; -begin - (* Load background image *) - Assign( F, 'demo06.dat' ); - Reset( F, 1 ); - BlockRead( F, Palette, 768 ); - mxSetPalette( @Palette, 0, 256 ); - for Y:=0 to 239 do begin - New( VScreen[Y] ); - BlockRead( F, VScreen[Y]^, 320 ); - mxPutImage( VScreen[Y], 0, 480+Y, 320, 1, OP_MOVE ); - end; - Close( F ); - (* Build lens *) - for X:=0 to R do begin - for Y:=0 to R do begin - X2 := X; - Y2 := Y; - GetCoords( X2, Y2 ); - BallX[X, Y] := X2; - BallY[X, Y] := Y2; - end; - end; -end; - -procedure PutLens( OX, OY: integer ); -var - X, Y: integer; -begin - for X:=0 to R do begin - for Y:=0 to R do begin - Sprite[Y][X] := VScreen[ OY+BallY[X,Y] ]^[ OX+BallX[X,Y] ]; - Sprite[Y][-X] := VScreen[ OY+BallY[X,Y] ]^[ OX-BallX[X,Y] ]; - Sprite[-Y][X] := VScreen[ OY-BallY[X,Y] ]^[ OX+BallX[X,Y] ]; - Sprite[-Y][-X] := VScreen[ OY-BallY[X,Y] ]^[ OX-BallX[X,Y] ]; - end; - end; - (* Draw the sprite *) - mxPutImage( @Sprite, OX-R, OY-R+Page, 2*R+1, 2*R+1, OP_MOVE ); -end; - -function Delta: integer; -begin - Delta := Random(3)+2; -end; - -procedure Check( Cond: boolean; var Coord, DeltaC: integer; NewCoord, Sign: integer ); -begin - if( Cond ) then begin - Coord := NewCoord; - DeltaC := Sign*Delta; - end; -end; - -var - X, Y, DX, DY: integer; - C: char; -begin - mxInit; - mxSetMode( MX_320x240 ); - Init; - Page := 240; - X := R; - Y := R; - Randomize; - DX := Delta; - DY := Delta; - - (* Main loop *) - repeat - (* Update video *) - mxBitBlt( 0, 480, 320, 240, 0, Page ); - PutLens( X, Y ); - mxCircle( X, Page+Y, R, 0 ); - (* Update lens coordinates *) - Inc( X, DX ); - Check( X+R >= 319, X, DX, 319-R, -1 ); - Check( X <= R, X, DX, R, +1 ); - Inc( Y, DY ); - Check( Y+R >= 239, Y, DY, 239-R, -1 ); - Check( Y <= R, Y, DY, R, +1 ); - (* Flip pages: double buffering, avoid wait for display *) - case Page of - 0 : begin PortW[$3D4] := $000C; Page := 240; end; - 240: begin PortW[$3D4] := $4B0C; Page := 0; end; - end; - mxWaitRetrace; (* Wait for hidden page to show *) - until( KeyPressed ); - - mxSetMode( MX_TEXT ); - mxTerm; -end. diff --git a/16/x/modex/DEMO07.EXE b/16/x/modex/DEMO07.EXE deleted file mode 100755 index 8a401169bba312a0d668452c9df6086505c394a8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7440 zcmb6;4OmlGvU7iOa|sZlD7F3s+|p>Jq)IF*M9NADuCHopRZthS)l$3d+FiVX?fV4M zqSfRg^}W7!w|w2N#_Zem75g@}?7o2AXCNqOK9oQ!h`Wm5&&624;t~p&yty~Q*6wb< zx9Hq+&YYP!bLPyMIp<{cW)%?w%RmM5=y|^p2*?Cj4gj+eScC+GMF^P)*$8V9)+6L2 z`~;y0;UL2A5I#dVjnIa00pSh;Ljb4{<{->NSd6e7ArIlF2>*((7oiH_KM))Urx4l^ zt{~h(_$xvH;kP6}4ZT!%!2B?#%nbs!*zm__6e zDk_KQljRTrglS9;p+neUxxUC%-Ad*V<}wv$8c=d|G!FBPnCi=@k&{H`(g>`WNu%=+VXXeEA{pmqtiA=w zu*hX!Cw|sLGqVx3Yi9EBTg_6}fpu|I|4ed`%ZUG-nS{~Vf|6b$l99-WL_Ru*rPv|q z7U~wYG&)sbeT~&?>aFbcoFXT!B*)`M+5pc>2H zCc=`|i<0t0NzJ$%qNKej33pOh(*6EPNiW_Drmllv>UyX?g}z<=b9C(f?t7x)MaQaM zh}O?X*NsER#(g&V*MfUOy)joe!k4k=!b#0Z%@#vITcz%%(*5Nx^QZYM!Yja^_IF|B z1+4H_{Fj7HVGLH+0N>1C7ILsan#)3l)W(h{!x*eC0NxPT=h_p+H#hW<$uvA>2(0B# zV_n7oVF(y}@911x3*yh5Wq~S)q6`Xcy4nkSQn2^}%9FI|Ob6^q#G(_*=V<+!3v%Am z;3KIn^Hs`867AROo2WsnfjJ;|PfqM_$`-_^abka_Y*&F-_W`fG4t(5AFqbg|7h}7K z$V-U)3nH(8-3u0V2UwI}fF-UIQ1)9)Kcrkk9ZAq07OS3bB+KkEM4Jtcnj0)@q7E1W2MQ;& zwr;A*Rn;}oY#6hV&4$tUNHn;fDtTBB+;mqDW$kfL_2;NT?EggUKT28)1Bz?hL+Doy za!||1p~tOJ@K>w`Hn?#t2M6m*#6Bk(gKo$2S8(WDemuBw6nnIk`ht9wX=p1|7G*7* zKrwNDUkr|jTW%0tUoQH76fQFbBt~seMzKIpa*_%8`nY${J4lUI^if*t{&y*FpEl|3 zgH&k@e=#dd`-A~J@+_f6M+UqjO z_n+T?`7OiHQG$!s+PoNAr48kaIZASmX>DJG5MO|Q*Ij?v2-W3aG1_5#%XXkjIOHCE zip#h3C@pe#KoV{-MEWANw$4za6FEoxWp}Aj2hIw$-V^D-S)tbDWQt2t&=iI0?JEl6 zPQM`TQhwBb#e3DVW{hv~_E-#~4s`PYYXOS}|KWkzKjLEBnkp{9AXPTDXNW4kn^ZRH z6WsjQ$b{5me1pV<^vLBP?=vB#$T1vZ4l{kvNLKxK#u^BZb>n--3bTbryYtOxH{4=? z#0?$tr;V)lmiHFbXsq6eDX_X04>$GQ)a`l~<M!p#HmnbehByKUr z`A`a55K3W>NFpS4Lju+)zMIHsol6wSNSUMlbIK8GEo9KE#q=Xhw}26`QP!JdgN|rx z-{82|^UYsG<}`Sy4YAh?5!HjJ`C-&cvtSzRL|LO@SzYAK2)uLbL|LO@SzRPj%}3NBLZlL9NmMFC^&l!F ztBbUYhRP&u`41lGPSCjnKo3anYn;p$#2CBCY?(7Vx}Sx9kc%s>>DvLLR+x^ zEm-5d!Ph<;F|pAZi@XK6<(xD#=mcW0zL7d621+MTgQ6o$8CY>Uv3%fTd%OH&`{xMf zY zYbJ$8nQ^n&&dEbLD&&0M(YfRW6k9N<>p!RDceRU>wA06O{z2c}@7LiJZZliE+(Mr! zX0*1?u@X8#irYiIQR+Q6+1qx%S6owxLNYoY!rv%kGl`-!V?7Nzm%o@@W?=G4l5opD zIvTX!QG~7N6^zw33?&$5?8Ay+F&ivqs`Yr!lFn$8J6~(NqribJwAMC^6~+?Y#;g>A zj4sXX6}4Pic<+=a(}rI0{LmFgXM3q84u5K+;H!b!xW^T=kX zVxESRuY$%pN0T;(8^_XlE%?5mC;e^y_PQnDzhf^1wKBebDdC*;XzSc~x5%L}YxY9` z2V?Yf5$T|ewIJlm^6+ev?3_B~QxI0koC~M?4}1bbrp!FHz!ax3EB6C|u386-@VKmY z>Zb|9qcS%t9WOIZ(oU1*9S23biTz{-p2o=Ig!L=y=Yg}eU=GYECTj_M0iM2h!U1JI zoMwIu1fH{BK+Fzs8`aLwh^j7g#%2sfveV3~K*Z;rH)p&GU?SXN8)}KxIF6}>);Ql? zM}aVha%2fJC_zc}TLS!_Q~4ZPcqAzNGvlt)qtRVkqZ zXGs)R^iUf1mrMzqBU86SQAAqmi%>!djU*-?;SZ#>aRKuJ1Y92Bzewxp1dE#`7L?#w)mTthi2&DpA#sLIt-PiHTLc(hHJ)cGNG zqLk)6ZXOWjUr-K#tgCjwB6R=ha|I&NQ_nY*~++mHCK(6xp#}O@%;7~mG>^gMCBFMu{z5pkcjJoUe3hv3; z2&;M1KkAM8%td`37j;3M zmgR&M&@9>=E%lrC2ajj(x>Z?^CpNE*eWMlpf`gx7;UIX+E@#5ug5@9zDr zun?r7EI5?)^oV8^q>NCF_;44u9URI5A6QSV!0#$Yj9712F%a)g_jB8yU6-q7`148U zBxY-~#2BR9-X6SYAZtYoUl;+&cID%XVK5*K&O+I9OVVHzL9 zFE`G+YsPzT`xxuZV>P`K^7yT2kd3(;m{yfMe`|po>M_c7S29aM_oeWdTsRDTlPngF z(;Y%(JJo1cfISK*h6cM5>@&bV8|;Y~;+KNPMuI&74;l;bX|+=MIA#^{f0vPUv2bWY zd#v`!*148BmDyxPGu=BVM*AoX)fnyTV+rRYVtEOiiDF3;&ZopI;KZb4R2!Y!NhLl_ ztRa;`3+cpU^bIZzadjkK5I@*rz8Uk}uRqvizCL8WH^eD3&F6>0ZH~x1@(j4q@kki2 zXkzjzZpOdS{2rJmmhGla27|e^>s#mYx6Nzfh`cSEHWzHokC&f!wgHl2uxx=%TYPfN zm%1~$OOj>A?J0Qqiga_!Z7PU#aZgmaG@;t8BzMU}{;uVq+O4Wrfxnk(D3WW^85W8d zjcpqEynIWgJ4wA1Dts!7axp&lq(YNg3zaSu7mJxj3-*Oz*8@&dX=I-BNG4DU3qtc& z3UkQ^ZThJC)O56zXwo6uVu)l?@qPHjGbBEL*-}7AffHLuK@GN4%#q+o!*q>Q_)KOQjHgWNOuM+3fBIs=i$z7R z6(vBz^IQUGqZMF$t%!U1wOzXtvR?by>qRfWw3ADizx}a!?L5W#BiCdoD7`Vin9u+Ki=tM>p$uAQT3m8PDcD}ayh1msmnj<!A>QiR&0Vi9HINMG+gwQ2fnSoKS)A3~-D_%0^-|c7PAlSXf*r;mpuri2_+s z)=S`4*ex5_cCiYB5pr#3`kjK?@X zr}nAVxkV~eL4nFNXXE`t%vo4d0Qd&JMXx)f*^gNPIWmz$p47lm&KK_|#<0)_iO5g_ zl*}lORWVK%GqoAWjy*VvIpY~z%~^#FJ*vW(V{NL!hO1)bqN>o}Ul{Y7MwJI&7V&-2 zxDFqW`}i(=9=^)AY|f)PC@*Gvk$K+VGIIrm?-%;NF67TjGVtS3c{b?2jBJ0M&GvUy zw1dAJGiS!@k=fb)ixnNZ@bs)?Z`|zH|xr7*-GkM z?3LA~{(N6tK8BF~`td&hJOA##^N#-xvUKP!dB5DvhJ|IXHp#=olL6|HlV&EolNH{M2Yr=gj|Q4oFbT{F~~A>>HA zab0zn(!00>Gva1)RF>~6z9XrvE*K0;5ygoPx&#`hHKp7W$PdO1%v;f= 639, X, DX, 319, -1 ); - Check( X < 0, X, DX, 0, +1 ); - Inc( Y, DY ); - Check( Y+200 >= 399, Y, DY, 199, -1 ); - Check( Y < 0, Y, DY, 0, +1 ); - mxPan( X, Y ); - mxWaitRetrace; - end; - - (* Shutdown *) - mxSetMode( MX_TEXT ); - mxTerm; -end. diff --git a/16/x/modex/MATH.INC b/16/x/modex/MATH.INC deleted file mode 100755 index 742af410..00000000 --- a/16/x/modex/MATH.INC +++ /dev/null @@ -1,34 +0,0 @@ -; -; MATH.INC - Include file for THREED.ASM -; - -; 3-dimensional point, coordinates in fixed format (16:16) -; -TPOINT STRUC - X DD ? - Y DD ? - Z DD ? -TPOINT ENDS - -; 2-dimensional point, coordinates in integer format -; -TIMAGEPOINT STRUC - IX DW ? - IY DW ? -TIMAGEPOINT ENDS - -; Fixed-point divide: EAX = EAX / arg -; -.xdiv MACRO arg - xor edx, edx - shld edx, eax, 16 - shl eax, 16 - idiv arg -ENDM - -; Fixed-point multiply: EAX = EAX * arg -; -.xmul MACRO arg - imul arg - shrd eax, edx, 16 -ENDM diff --git a/16/x/modex/PLASMA.PAS b/16/x/modex/PLASMA.PAS deleted file mode 100755 index 237e292a..00000000 --- a/16/x/modex/PLASMA.PAS +++ /dev/null @@ -1,103 +0,0 @@ -unit Plasma; -interface - -const - PAL_RGB = 0; - PAL_CLOUDS = 1; - PAL_LANDSCAPE = 2; - -procedure MakePlasma( X, Y: integer; W, H: word; C1, C2, C3, C4: byte ); -procedure MakePlasmaPalette( var Palette; What: word ); - -implementation uses Modex; - -procedure NewColor( XA, YA, X, Y, XB, YB: integer ); -var - Color: longint; -begin - Color := Abs( XA-XB )+Abs( YA-YB ); - Color := Random( Color shl 1 )-Color; - Color := (Color+mxGetPixel( XA, YA )+mxGetPixel( XB, YB )+1) shr 1; - if( Color < 1 ) then Color := 1; - if( Color > 192 ) then Color := 192; - if( mxGetPixel( X, Y ) = 0 ) then - mxPutPixel( X, Y, Lo(Color) ); -end; - -procedure Divide( X1, Y1, X2, Y2: integer ); -var - X, Y, Color: integer; -begin - if not( (X2-X1<2)and(Y2-Y1<2) ) then begin - X := (X1+X2) shr 1; - Y := (Y1+Y2) shr 1; - NewColor( X1, Y1, X, Y1, X2, Y1 ); - NewColor( X2, Y1, X2, Y, X2, Y2 ); - NewColor( X1, Y2, X, Y2, X2, Y2 ); - NewColor( X1, Y1, X1, Y, X1, Y2 ); - Color := (mxGetPixel( X1, Y1 )+mxGetPixel( X2, Y1 )+ - mxGetPixel( X2, Y2 )+mxGetPixel( X1, Y2 )) shr 2; - mxPutPixel( X, Y, Color ); - Divide( X1, Y1, X, Y ); - Divide( X, Y1, X2, Y ); - Divide( X, Y, X2, Y2 ); - Divide( X1, Y, X, Y2 ); - end; -end; - -procedure MakePlasma; -begin - Dec( W ); - Dec( H ); - mxPutPixel( X, Y, C1 ); - mxPutPixel( X, Y+H, C2 ); - mxPutPixel( X+W, Y+H, C3 ); - mxPutPixel( X+W, Y, C4 ); - Divide( X, Y, X+W, Y+H ); -end; - -procedure MakePlasmaPalette; -type - TPal = array[ byte ] of record R, G, B: byte end; -var - I: word; -begin - FillChar( TPal(Palette)[1], 192*3, 0 ); - case What of - PAL_CLOUDS: - for I:=1 to 192 do begin - TPal(Palette)[I].R := Abs( I-96 )*63 div 96; - TPal(Palette)[I].G := Abs( I-96 )*63 div 96; - TPal(Palette)[I].B := 63; - end; - PAL_LANDSCAPE: - begin - for I:=0 to 31 do begin - TPal(Palette)[I+1].R := I; - TPal(Palette)[I+1].G := I; - TPal(Palette)[I+1].B := I + I shr 1+15; - end; - for I:=32 to 63 do begin - TPal(Palette)[I+1].R := 0; - TPal(Palette)[I+1].G := I; - TPal(Palette)[I+1].B := 0; - end; - for I:=64 to 191 do begin - TPal(Palette)[I+1].R := (I-64) div 3 + 15; - TPal(Palette)[I+1].G := (I-64) div 3 + 15; - TPal(Palette)[I+1].B := (I-64) div 3 + 15; - end; - end; - else - for I:=1 to 64 do begin - TPal(Palette)[I].G := I-1; - TPal(Palette)[I].B := 64-I; - TPal(Palette)[I+64].R := I-1; - TPal(Palette)[I+64].G := 64-I; - TPal(Palette)[I+128].B := I-1; - TPal(Palette)[I+128].R := 64-I; - end; - end; -end; - -end. \ No newline at end of file diff --git a/16/x/modex/QIX2.EXE b/16/x/modex/QIX2.EXE deleted file mode 100755 index a10d7db5a0a62654c70c632d8ce6b078a520613c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10336 zcmbVy3s_TEw(vTSoID5tMX9d_w3u4aR7pjJ@F+^O-bz#J1NEZq*xKpbnYI^CaBinU z9O@%E)H?0hnUZ!!WWE_Y+WW;0{cphDYcwb*je_>8JQNX74~7B?7ZB3qu6+V(ZR`F2 zpM3kAz1Lo^z4qE`@3jxh*S!ei!2l7km)-jpIRohcZz=(%006$=FqT&-fC4PyiF z6qYtD-88^C7N7x3HoH{V|fe95SC3Gz-=t+DBwFXRvITXa2_8pDXoOZ^fveybGb-FMZ0`K0}NZp6iB;hC?#A&)8=aPiOJ&1FO3Yye{DS#SS zcG@~~PN)ENoa>fUJjFFqaEfapk4xlnnLL`w;|i6EdYk9E%`O_uu0YW2iUG5z4Z32n zIRYZR1gZ$S(ngR-4=DtEE8yA?Y7)dz7EJ-yHiVKUDWk}hfgBH-@ECwQ4GX>j-&QQK zZmg$cA(|uph;`}8d~SOc4cr>nUNAesT>RJYebij{sEvb(E1P?3 z@RLcLH-+^2iPQT96Gsdx)C(pBWAcAgjxJLnD1vSB@arT_WvOnm+M0%PrFYt;UAKW6VLEW2L!zf zxn-Pp;f6~%UkkYvr1~{hlTEDG_{Y>%8rxrnrm~sT`@AVqc&L!VLj{J1fxF?syU^6< zU10h$gcfRL^VNr-%#$O%qZ_`sU}nljU{IIh&dj0fk3~y+h6&^ewyB2au;)>j; zD{|kXvgHpI5wDY$F|K^!llK8lF8ScykT8UPcSlF%pxgauPvJHiwk`be&be-#EtCGy zuz+lJHjEi1D`4*V73LqO*9n>QM{Cz7Unt<-UY>kB?-@b6;-@sU<=hiA_x!;5f%?M6 z;A{#C8{xiCH7fRQ>>>c+li&XoS1O0>Q9ovp!fous$IU)u+`osCl@A{``@pzY{*;Ec zoO^=)w{eG}FuGLWyZ_BO6r;}Zy}?VqAP`>&MXCq91n1x%u5Qdlzw6V1eN(#>eabaU~CZ~&Z?xp*SJf6$Bj9$95KDbhE( z^|?-v{Z1I%UbPyuxORqudHrNJeh@6W{e&nKo*(S>i@)?^h@&lSH~`9WP%sUpe^kzp zn2ov$ronryLBZ62uhkzk^^qYI_sI_6zSuYC?X(}N7TmEK?n?a6)$lRoYew5u*oU4? zqL~_1m=#~c<5qDv9@Xw0ZHg^;7$^?M;6qLr z#s4Zl0LNCKF^;XoM{$*cn5(pr^RYp$kt2e2johfgT+5~AN97JO*mSeFbD%J_k)tdZ z#1s9;8Y%4>G`Z^&WP1(yRH0@)5Y()|vJ%880Wu#%Uhzhho`XlNXgoNM?43XPs>U9z zevdYcDTxF@I~D}ZI1r+v!J5xed_;)?fhq*55vYMu0GpNun}!8jGzWGQx09Oy3GFeb z&(NUXPpUQdI2zog3MfTtlVWKpGB9yVOEvHd(1^Q(NWsEAR6K;1qI{F86g42*w0dbN z>S5yWh`O{i8j!V-vdGLDae2_-Mq-6T%&pO*+LifZ@#v#38H+WIR2v8ScrFss$#y_` zqDgx!X_G@zNYRb*(`O>V(61L#X-KZxHZFcJ{$l&H}@d z_@Vg0Z8UQcAppr&wuQ$J$Dhle%naxSEf72wp#@<}5PS#m&JB9*ct%;PB-W|-Go1Sa zhG7!Ji4S3CZ>j6(JyciM`*+W7In&rWm85%aS1f&smAO>yP8`gY={(0 z8X-$9tX7GZV8m}f0~^*nV9QePHU)NX_UlWO%pUiidViH^sFuPYaFRlU8=0*Wjlhq0 zw=nh=CsT2j>Bj!6r2isi-yBf2^N&P_4X1tKLW6|y zw`%%$2ThLpP>m-_VxlTjAQ-GN`C)%i){tvwwD-v{w`HPB1w}R9xw+FY+Ta>K3j47! z9;4Ns4MRn^PVlr=s$`HB&_4r`k~Ic*%@o=5vYoR3lvR%<%-0B}NMXaM`S(J^Zwo=V z^FHH#IFKoq-8Jp>V*K7@#V9zw)85JJ?BBHp%d z?s=y&V#gs+wM4x0XAq9ZSJ_Pc!l`%<22;D~_B(EieAl^M%{xs!2Pr;WUjh(cB`qjl z#6g;WLSMp$04xl=-Zzln&(u2=`eYPPkm*E~P~_Xj1h;R&L6%U{5RXd?fxa+(2^VT` zNZCJ--^UC(aa5@F+hI-|6>42TC%7dAEoxM6M{W>T`Zr{i3WEbz>aNuiG`YsV- z5{ljs@d(jFB-xD*$m$xAb^W2TM#x5_-MT03x`#wpT+os~eNfTJbRJY#hAX~ioND`x zp>Aimy{&sV1m=egZW6)o{VCJO!6R*WAMteP4I8QFXfyL$cBRZ3H3RYfg<4CmWA?Bc zWcH}p0NgQoOytL7_KbaR{D;xy*bbMcM&2A#H1^8)8@N#b@YE*yW#$j;&t?0#o$?;# zixG1p*N=I3?3$>AaWMYHXe*J1w<Y^Hdy!j!WCjK=WGDpnAn45z5Mrqiw3i}S zb4Iaf1hpXO%@NS6lVKeE9C?{Xc-7N4l%POR4}wCx>S@H9fuOwR&g`1yNc7}Q!+k@G1As5!gM<%; z<2{^`F$BxOYH;@+8fB`sb{X6yIxZAw>CkrkeVw=d4B2iN)%E{P$p^JlOWGNu_rUZaIA;ZuF;6Gj8rME#M`!GJ#qpHM-WzuPa`O&rYu7IT4t2< zDkGD};lzupK>Rb5DH4L>moj^0T)}}(?m#PNa38qL9r%_z(8Z-6xWw(@7Q?Y$g3kV^ zF6mKz7~ih;;76j79;h8SUp^lOZk39hRufaPfO1Wq?wuOrArv~RZWjbl7-wX2X(wYY z196Qk8#m9{uCZhO0pc>5YtESefX_ipmsy8qTB3DU%`TwOjmm)&XUWRO{v%eLF7u$$ zF*5Tg?l@WY5m24CC_bNn+dX}Rvfs9U9XL}4*1&{3x{NAq;cU@2x!sy89A3+D6dvT- z5ptdLn6<84dQZJI^%CwXvQu0aN5y2Hv!-@&V4*yu4P}%!n&-;E8|~|JZV(@3oQuQ> zjHqEcYysg?qOgP&9}9}V3htN8gi!~9_BEHJPn(QF0&SqByho9i2_+>_}(tB9uv87ThDmex^oJ302w32F}pPEccNl z?B6;jaF$NI#^oxL5^r!@8Sw;-hgk6o+J0gt*UkmpHR7kV{nSkE8mSW=OW1=wJR29G zwpw+q+?xunl^YrG5;jhLggxIv;O~vVNqwNks%hmEH6iN|Cc<-UTNH5yLlC{DMC1(T zMH#gABco6ro+~3R)$1X+8(G)orz*xm@`Wvv26~11_LmMa7KNI*{*v?mTwi4OT+gsq zUC%($_Lt)P*I%l!rhbbvryz6Y1fF(MHT%ECIY*$%Z5f-;?v2K`YParNPStKf2Na_M zsFODFWC2^1NjooAWwKUycZU^hnd+h(O;u*(t4z`Iv8OWUKn&Vu1l9Ft=IAz7sM)@a zK5~&)A?4>6UC**Yy)AQG(eh|p&V-`nlWfbU6fM`{;U4K$37zDqF05jgEz=1Wg|2d& z+R!BFr4j!*SWbaa!9RteWR8*L7e8a1%s+0V_{WSKKi@csHyOkE=Zvwr=aL)w8r^Pc zk@!bQZq9QHy}mEQns}E}A?^ZatoU2N+BW#7)|b#@A=J`#Tci(0#Vzq6)Z zMkluu20oRT1-dFKT(xKsDrO)TFbbV5N0lQDGO@CN)d|ZLx+j(^+9ncZt*Omu*D#%3 zCQgARtph$r{20V<{027?NDpVYNP|=L!t*Q86>}jQ7x_#a)NItmZf{C3&;Np8;~0Ys3? zcKSH`jl+jp{qmTNXpq%wR&m})dCtZS9;m=5*I2|Y0K>Q9;c#(32$ixZ!0TnP=sa@* zb6U)28IA?aXGlW4ETP>s>PB8qZ7M&3=}iX(59a;1@7z=fNVS!;G}qBWTN{<~5m&QQ5< zGr9*WM%Y9ZW*{H0x88_&;ggToTCeq3zw6;O>DF^SBW<2aKkzJg(D7&(F0ACT3va}1 zulf+I{)JnZW5M8>vX$PcLZ>w=n#x|kcHM@JIWh8cu3A7;43^cfcD+xI`=#Nup-HmL zaA^Xb?!!EM3Z~y-ZvM$VZe6H0Io`ANk%9UYh};rc5s6pq%<){gE}2t6E~hIQ2fjL? zy2ul+T>yo?NSo#+{i8pcN#sE&Vf=RxL&6;X6}U=$pjkFu9U{D5w|P9 zZ`0}8ljG4+#H2kXPeB-$2>cUApQXi_P?7**0vugWi&`j2#61$6Nw{4jmN*ZNzDSF5 zf>QRZcdFhlSGjpkTmXxFy`Cd4W6u#4E>Itv(B6NGor7PXAlqK)G21Ie3bM@@x_Uh01*cqFih@HD|fnnCdgxHKXa)0^K>n|JJ zyD-y)paE+&4D8vSkYnAorDjwY--5%FE%ZxOpdjKJ`Fj#OXlVXf2oq z8SWq~#j*?weoNc&a`PQSFZ%`dfVJQV__!mqk3PaW8m?iKe|K}haXCNWux}3jDL2BR zx89*Goa1u6qe1j(dChOsq^@t^k{CxryHD+CZn)d(_!~GHt~&HhdL4G2b~FrrK~L+f z{q`=ux9XhCw949c{MEAl+FHV!rH_9BadHd+GDmZVk8xaXa5UVu-eLJC4l-|r_#AiC zR}+T#Y(DO27^)R(#e|bQcD6X0@A&50TWUM4?Nq`w34~-*B=PN%;C@puoevw)b0vck zn(qkLay&mA?(cG0%M{P4Je&o`Rb{_asu9}ziSJM0>6zh}Y zgAeUN5NY(C(b2PXeO^CidKM+i_jNP8^2dgEFXw%%`Xt+ao-wFx4d4%$X#h*q# z4INm8wvd9MxgA28Lm`NL^YEWO$c?nrUXcMC6 z4>|fx!%w4S8+s%)j{9CD?*^P8>}&YWnl&8ZXm}l~e(UDpUa8u&+Aqyai}d`C%yn}I zUhhJ|@9wgxd)>c9No=`Hl6b`wA|c5ARW#2@!lbdHAB5s z7Ik44y`4Q=zEi%=FSyfq9ejn0md}tU$mh$mnSW+pWS(a$*$Va;`?yRmOOOrw&8s*z8^mu~(bKS(b9mBXLU|Tgg9S%Zm4=|SIquT^*w5E-~M;L+2Fq3)6`~@H>8!1gVul`pPm+x zlEzfbiE@Hv_R8$!N+)HR?r3V0oS+LA8F5*%KvCZ`hamrxljda=2~kewz;e8+HYz>1 z-MXHdUXIt%-*~5{w+;&zai5*2aMJh+S2!&g^-B5_`qHNrCH?qXr0~vf^Ul*7l{MxB z)W#WmegE~??7Iojatz0E@4UnerBBv?PsjcYWq<87Zn5&$@|f(KWcb4eQ~1@RT-L5# zyWX0LRQyCCdZ`kR5;q0yGUfI*=wTWK%~ECI)d)PFjIXGMgREstg%|L;MpbbZ4n|s- zigWOO$2)`CliFvMj=g(hJTH_iQ`+mTZEowZ8xxELYWdE}IJvrBU;42kr9sY{Q!dN- ze@bb3k~gK)Kf*6gx%3F1mQo+XC#779;pe5)&*#HaF3sl^j;2=eZ$V#_e!Ko-Mes?{ z5fmQ>1QLs0PEEyOr79ITC~*vdT6K$+-#Hp|8OrsT_DQo%a7t2@pF$=-=2J-LCw~eo zA1y8LE)Q8)85kN!bjB6s!C9Y{aN6E!ziw@}%JS2!XRYQHFFbEJ{k(9=Yh3>%e%!89 z)p+N1)f9HBBv2Xw(QDVQ%N7Qw2McEBr{zt;RAj3CTJ2Tq*HCx?3eQ8XrmnT_MqMMG zf(%WD^ECmtrOV}ojwJ)$d8rvn{7A1)mwV@HQB^cB*xlxR*z^1& zxTwxO9`oE@>`3ak*Edw-P3_!^k1q1KO&)#ZF|@a)!f>7>K$QiG#FJZDJo_JVIWHb^ zS>X^?4;^|plRs31usdOgT>B`5m205)Q2BEZcHW{qoK&61+N;|XhtX!t-&+S0+<%Y3 zWEYdX$^sS1qA>+w@r@reGS&FTbR<(VnwVs&&ZwZ`$VH!`;`56>rs5wLN#GzERVJN+ zDcIPQ&o80_I4|;eYh{GZ;EP+q;Z4VMSVvf_qLCS4s5%-6;yB7_$HW-jstN#WTWcpqf%%dJHOY=_6jU?hxnW{|uph0p%tl>XM`MU1IH=Ne(!mJA^(vd_I6b8LQ#6E!+huq49+~>7Wd&|G3E0Wk&0^ zIlwF5T{Q=3*4bpPe+jGDN0F0p2>D6jQ5P)sPVGNob-76w`TqsWIEmcCi1FZZj1owB zFs8t^RnfNP6Kpw?sxqgvgjHo~k)M z$CV_Uzzji5fe+A2%VVMcl+~iDYpXjSsBY~|a9ghz)QGX*HU61P4)@OIQnC6+Zhp9T z-gn-G4c?R*40_MC1WQu!qhUG-)p+&1CA{t``OzIr9diL$wJ{gyUi=T6Ho8}aA6w5u zX)4C&bnwXDDVv4qktWo{TZW=WTsA874UXJ__>%{=$eCNrovi1+>-~#=Pa}G`G>Z!C z#jBbntiSi~xIm7XK`SpeE91}Abr{_K-b2zSpOM|@d#@llpZ?$fMWzGnNB4IDUIzaU DJ^3nG diff --git a/16/x/modex/QIX2.PAS b/16/x/modex/QIX2.PAS deleted file mode 100755 index d1b59791..00000000 --- a/16/x/modex/QIX2.PAS +++ /dev/null @@ -1,210 +0,0 @@ -{$E-,N+} -uses Crt, Modex; - -const - DEFVERT = 12; (* Vertex count *) - DEFREPL = 3; (* Repetition count *) - DEFQIXS = 2; (* Qixs *) - FADESPEED = 48; -type - TPoint = record - X, Y : integer; - end; - TRGB = record - R, G, B: byte; - end; - TQix = record - Color: integer; - Vert : array[ 0..DEFVERT-1, 0..DEFREPL-1 ] of TPoint; - Delta: array[ 0..DEFVERT-1 ] of TPoint; - end; -var - Page : integer; - MaxX, - MaxY : word; - Qix : array[ 0..DEFQIXS-1 ] of TQix; - Pal : array[ byte ] of TRGB; - -type - TReal = double; - TRPoint = record - X, Y: TReal; - end; - TMatrix = array[ 0..3, 0..3 ] of TReal; -var - M: TMatrix; - G: array[ 0..DEFVERT-1 ] of TRPoint; - C: array[ 0..DEFVERT-1 ] of TRPoint; - -procedure BumpPal( Idx, DR, DG, DB, Steps: integer ); -var - I: integer; -begin - for I:=1 to Steps do begin - Pal[Idx+1].R := Pal[Idx].R + DR; - Pal[Idx+1].G := Pal[Idx].G + DG; - Pal[Idx+1].B := Pal[Idx].B + DB; - Inc( Idx ); - end; -end; - -procedure InitPalette; -begin - with Pal[0] do begin R:=0; G:=0; B:=0; end; - with Pal[1] do begin R:=0; G:=0; B:=62; end; - BumpPal( 1, 0, 2, -2, 31 ); - BumpPal( 32, 2, -2, 0, 31 ); - BumpPal( 63, -2, 2, 2, 31 ); - BumpPal( 94, 2, 0, -2, 31 ); - BumpPal( 125, -2, -2, 2, 31 ); -end; - -procedure Init( var Qix: TQix; Color: integer ); -var - I: integer; -begin - FillChar( Qix.Vert, SizeOf(Qix.Vert), 0 ); - for I:=0 to DEFVERT-1 do begin - Qix.Vert[I, DEFREPL-1].X := Random( MaxX ); - Qix.Vert[I, DEFREPL-1].Y := Random( MaxY ); - Qix.Delta[I].X := Random(5)+1; - Qix.Delta[I].Y := Random(5)+1; - end; - Qix.Color := Color; - - (* Initialize matrix (Catmull-Rom) *) - M[0,0] := -1/2; M[0,1] := 3/2; M[0,2] := -3/2; M[0,3] := 1/2; - M[1,0] := 1; M[1,1] := -5/2; M[1,2] := 2; M[1,3] := -1/2; - M[2,0] := -1/2; M[2,1] := 0; M[2,2] := 1/2; M[2,3] := 0; - M[3,0] := 0; M[3,1] := 1; M[3,2] := 0; M[3,3] := 0; -end; - -procedure mxBezier( var Qix: TQix; I0, Idx, N: integer ); -var - I, J: integer; - T, T2, T3: TReal; - X0, Y0, X, Y: TReal; - Delta: TReal; -begin - (* Compute coefficients *) - for I:=0 to 3 do begin - C[I].X := 0; - for J:=0 to 3 do C[I].X := C[I].X + M[I,J]*Qix.Vert[(I0+J) mod DEFVERT,Idx].X; - C[I].Y := 0; - for J:=0 to 3 do C[I].Y := C[I].Y + M[I,J]*Qix.Vert[(I0+J) mod DEFVERT,Idx].Y; - end; - X0 := C[3].X; - Y0 := C[3].Y; - Delta := 1 / N; - T := 0; - for I:=1 to N do begin - T := T + Delta; - T2 := T*T; - T3 := T*T2; - X := C[0].X*T3 + C[1].X*T2 + C[2].X*T + C[3].X; - Y := C[0].Y*T3 + C[1].Y*T2 + C[2].Y*T + C[3].Y; - mxLine( Round(X0), Page+Round(Y0), Round(X), Page+Round(Y), Qix.Color, OP_SET ); - X0 := X; - Y0 := Y; - end; -end; - -procedure Plot( var Qix: TQix; Idx: integer ); -var - I, J: integer; -begin - for I:=0 to DEFVERT-1 do begin - mxBezier( Qix, I, Idx, 12 ); - end; -end; - -procedure Update( var Qix: TQix; Idx: integer ); -var - I: integer; -begin - for I:=0 to DEFVERT-1 do with Qix do begin - Inc( Vert[I,Idx].X, Delta[I].X ); - if( Vert[I,Idx].X < 0 ) then begin - Vert[I,Idx].X := 0; - Delta[I].X := Random( 5 )+1; - end; - if( Vert[I,Idx].X > MaxX ) then begin - Vert[I,Idx].X := MaxX; - Delta[I].X := -Random( 5 )-1; - end; - Inc( Vert[I,Idx].Y, Delta[I].Y ); - if( Vert[I,Idx].Y < 0 ) then begin - Vert[I,Idx].Y := 0; - Delta[I].Y := Random( 5 )+1; - end; - if( Vert[I,Idx].Y > MaxY ) then begin - Vert[I,Idx].Y := MaxY; - Delta[I].Y := -Random( 5 )-1; - end; - end; -end; - -procedure Copy( var Qix: TQix; Dest, Src: integer ); -var - I: integer; -begin - for I:=0 to DEFVERT-1 do with Qix do begin - Vert[I,Dest].X := Vert[I,Src].X; - Vert[I,Dest].Y := Vert[I,Src].Y; - end; -end; - -procedure AnimateQix; -var - Q, Idx, I, J, P, Count: integer; -begin - Count := 0; - P := DEFREPL-1; - I := 0; - J := 1; - repeat - mxSetClipRegion( 0, Page, MaxX+1, MaxY+1 ); - mxSetClip( TRUE ); - mxFillBox( 0, Page, MaxX+1, MaxY+1, 0, OP_SET ); - for Q:=0 to DEFQIXS-1 do begin - Copy( Qix[Q], I, P ); - Update( Qix[Q], I ); - for Idx:=0 to DEFREPL-1 do begin - Plot( Qix[Q], Idx ); - end; - end; - I := (I+1) mod DEFREPL; - J := (J+1) mod DEFREPL; - P := (P+1) mod DEFREPL; - Inc( Count ); - mxStartLine( Page ); - if( Count >= FADESPEED ) then begin - for Q:=0 to DEFQIXS-1 do begin - Inc( Qix[Q].Color ); - if( Qix[Q].Color > 156 ) then - Qix[Q].Color := 1; - end; - Count := 0; - end; - Page := 240-Page; - until( KeyPressed ); -end; - -var - I: integer; -begin - Randomize; - mxInit; - mxSetMode( MX_320x240 ); - mxGetScreenSize( MaxX, MaxY ); - for I:=0 to DEFQIXS-1 do - Init( Qix[I], (I*(155 div DEFQIXS)) mod 155 + 1 ); - InitPalette; - mxSetPalette( @Pal, 0, 157 ); - Page := 240; - Dec( MaxX ); - Dec( MaxY ); - AnimateQix; - mxSetMode( MX_TEXT ); - mxTerm; -end. diff --git a/16/x/modex/README.TXT b/16/x/modex/README.TXT deleted file mode 100755 index 306e8b9a..00000000 --- a/16/x/modex/README.TXT +++ /dev/null @@ -1,8 +0,0 @@ -ModeX - A graphical library for DOS programs -Copyright (c) 1993-1994 Alessandro Scotti -http://www.ascotti.org/ - -Please look at the above site in the "Art of..." and -then in the "Old programs" section for more information. - - diff --git a/16/x/modex/SINCOS.INC b/16/x/modex/SINCOS.INC deleted file mode 100755 index 6986eeeb..00000000 --- a/16/x/modex/SINCOS.INC +++ /dev/null @@ -1,518 +0,0 @@ -; -; SINCOS.INC - Sin/cos tables for THREED.ASM -; - -tblSin LABEL DWORD - DD 0 - DD 411733 - DD 823219 - DD 1234209 - DD 1644455 - DD 2053710 - DD 2461729 - DD 2868265 - DD 3273072 - DD 3675909 - DD 4076531 - DD 4474698 - DD 4870169 - DD 5262706 - DD 5652074 - DD 6038037 - DD 6420363 - DD 6798821 - DD 7173184 - DD 7543226 - DD 7908725 - DD 8269459 - DD 8625213 - DD 8975771 - DD 9320922 - DD 9660458 - DD 9994176 - DD 10321873 - DD 10643353 - DD 10958422 - DD 11266890 - DD 11568571 - DD 11863283 - DD 12150850 - DD 12431097 - DD 12703856 - DD 12968963 - DD 13226258 - DD 13475586 - DD 13716797 - DD 13949745 - DD 14174291 - DD 14390298 - DD 14597637 - DD 14796184 - DD 14985817 - DD 15166424 - DD 15337895 - DD 15500126 - DD 15653022 - DD 15796488 - DD 15930439 - DD 16054795 - DD 16169479 - DD 16274424 - DD 16369565 - DD 16454846 - DD 16530216 - DD 16595628 - DD 16651044 - DD 16696429 - DD 16731757 - DD 16757007 - DD 16772163 - DD 16777216 - DD 16772163 - DD 16757007 - DD 16731757 - DD 16696429 - DD 16651044 - DD 16595628 - DD 16530216 - DD 16454846 - DD 16369565 - DD 16274424 - DD 16169479 - DD 16054795 - DD 15930439 - DD 15796488 - DD 15653022 - DD 15500126 - DD 15337895 - DD 15166424 - DD 14985817 - DD 14796184 - DD 14597637 - DD 14390298 - DD 14174291 - DD 13949745 - DD 13716797 - DD 13475586 - DD 13226258 - DD 12968963 - DD 12703856 - DD 12431097 - DD 12150850 - DD 11863283 - DD 11568571 - DD 11266890 - DD 10958422 - DD 10643353 - DD 10321873 - DD 9994176 - DD 9660458 - DD 9320922 - DD 8975771 - DD 8625213 - DD 8269459 - DD 7908725 - DD 7543226 - DD 7173184 - DD 6798821 - DD 6420363 - DD 6038037 - DD 5652074 - DD 5262706 - DD 4870169 - DD 4474698 - DD 4076531 - DD 3675909 - DD 3273072 - DD 2868265 - DD 2461729 - DD 2053710 - DD 1644455 - DD 1234209 - DD 823219 - DD 411733 - DD 0 - DD -411733 - DD -823219 - DD -1234209 - DD -1644455 - DD -2053710 - DD -2461729 - DD -2868265 - DD -3273072 - DD -3675909 - DD -4076531 - DD -4474698 - DD -4870169 - DD -5262706 - DD -5652074 - DD -6038037 - DD -6420363 - DD -6798821 - DD -7173184 - DD -7543226 - DD -7908725 - DD -8269459 - DD -8625213 - DD -8975771 - DD -9320922 - DD -9660458 - DD -9994176 - DD -10321873 - DD -10643353 - DD -10958422 - DD -11266890 - DD -11568571 - DD -11863283 - DD -12150850 - DD -12431097 - DD -12703856 - DD -12968963 - DD -13226258 - DD -13475586 - DD -13716797 - DD -13949745 - DD -14174291 - DD -14390298 - DD -14597637 - DD -14796184 - DD -14985817 - DD -15166424 - DD -15337895 - DD -15500126 - DD -15653022 - DD -15796488 - DD -15930439 - DD -16054795 - DD -16169479 - DD -16274424 - DD -16369565 - DD -16454846 - DD -16530216 - DD -16595628 - DD -16651044 - DD -16696429 - DD -16731757 - DD -16757007 - DD -16772163 - DD -16777216 - DD -16772163 - DD -16757007 - DD -16731757 - DD -16696429 - DD -16651044 - DD -16595628 - DD -16530216 - DD -16454846 - DD -16369565 - DD -16274424 - DD -16169479 - DD -16054795 - DD -15930439 - DD -15796488 - DD -15653022 - DD -15500126 - DD -15337895 - DD -15166424 - DD -14985817 - DD -14796184 - DD -14597637 - DD -14390298 - DD -14174291 - DD -13949745 - DD -13716797 - DD -13475586 - DD -13226258 - DD -12968963 - DD -12703856 - DD -12431097 - DD -12150850 - DD -11863283 - DD -11568571 - DD -11266890 - DD -10958422 - DD -10643353 - DD -10321873 - DD -9994176 - DD -9660458 - DD -9320922 - DD -8975771 - DD -8625213 - DD -8269459 - DD -7908725 - DD -7543226 - DD -7173184 - DD -6798821 - DD -6420363 - DD -6038037 - DD -5652074 - DD -5262706 - DD -4870169 - DD -4474698 - DD -4076531 - DD -3675909 - DD -3273072 - DD -2868265 - DD -2461729 - DD -2053710 - DD -1644455 - DD -1234209 - DD -823219 - DD -411733 -tblCos LABEL DWORD - DD 16777216 - DD 16772163 - DD 16757007 - DD 16731757 - DD 16696429 - DD 16651044 - DD 16595628 - DD 16530216 - DD 16454846 - DD 16369565 - DD 16274424 - DD 16169479 - DD 16054795 - DD 15930439 - DD 15796488 - DD 15653022 - DD 15500126 - DD 15337895 - DD 15166424 - DD 14985817 - DD 14796184 - DD 14597637 - DD 14390298 - DD 14174291 - DD 13949745 - DD 13716797 - DD 13475586 - DD 13226258 - DD 12968963 - DD 12703856 - DD 12431097 - DD 12150850 - DD 11863283 - DD 11568571 - DD 11266890 - DD 10958422 - DD 10643353 - DD 10321873 - DD 9994176 - DD 9660458 - DD 9320922 - DD 8975771 - DD 8625213 - DD 8269459 - DD 7908725 - DD 7543226 - DD 7173184 - DD 6798821 - DD 6420363 - DD 6038037 - DD 5652074 - DD 5262706 - DD 4870169 - DD 4474698 - DD 4076531 - DD 3675909 - DD 3273072 - DD 2868265 - DD 2461729 - DD 2053710 - DD 1644455 - DD 1234209 - DD 823219 - DD 411733 - DD 0 - DD -411733 - DD -823219 - DD -1234209 - DD -1644455 - DD -2053710 - DD -2461729 - DD -2868265 - DD -3273072 - DD -3675909 - DD -4076531 - DD -4474698 - DD -4870169 - DD -5262706 - DD -5652074 - DD -6038037 - DD -6420363 - DD -6798821 - DD -7173184 - DD -7543226 - DD -7908725 - DD -8269459 - DD -8625213 - DD -8975771 - DD -9320922 - DD -9660458 - DD -9994176 - DD -10321873 - DD -10643353 - DD -10958422 - DD -11266890 - DD -11568571 - DD -11863283 - DD -12150850 - DD -12431097 - DD -12703856 - DD -12968963 - DD -13226258 - DD -13475586 - DD -13716797 - DD -13949745 - DD -14174291 - DD -14390298 - DD -14597637 - DD -14796184 - DD -14985817 - DD -15166424 - DD -15337895 - DD -15500126 - DD -15653022 - DD -15796488 - DD -15930439 - DD -16054795 - DD -16169479 - DD -16274424 - DD -16369565 - DD -16454846 - DD -16530216 - DD -16595628 - DD -16651044 - DD -16696429 - DD -16731757 - DD -16757007 - DD -16772163 - DD -16777216 - DD -16772163 - DD -16757007 - DD -16731757 - DD -16696429 - DD -16651044 - DD -16595628 - DD -16530216 - DD -16454846 - DD -16369565 - DD -16274424 - DD -16169479 - DD -16054795 - DD -15930439 - DD -15796488 - DD -15653022 - DD -15500126 - DD -15337895 - DD -15166424 - DD -14985817 - DD -14796184 - DD -14597637 - DD -14390298 - DD -14174291 - DD -13949745 - DD -13716797 - DD -13475586 - DD -13226258 - DD -12968963 - DD -12703856 - DD -12431097 - DD -12150850 - DD -11863283 - DD -11568571 - DD -11266890 - DD -10958422 - DD -10643353 - DD -10321873 - DD -9994176 - DD -9660458 - DD -9320922 - DD -8975771 - DD -8625213 - DD -8269459 - DD -7908725 - DD -7543226 - DD -7173184 - DD -6798821 - DD -6420363 - DD -6038037 - DD -5652074 - DD -5262706 - DD -4870169 - DD -4474698 - DD -4076531 - DD -3675909 - DD -3273072 - DD -2868265 - DD -2461729 - DD -2053710 - DD -1644455 - DD -1234209 - DD -823219 - DD -411733 - DD 0 - DD 411733 - DD 823219 - DD 1234209 - DD 1644455 - DD 2053710 - DD 2461729 - DD 2868265 - DD 3273072 - DD 3675909 - DD 4076531 - DD 4474698 - DD 4870169 - DD 5262706 - DD 5652074 - DD 6038037 - DD 6420363 - DD 6798821 - DD 7173184 - DD 7543226 - DD 7908725 - DD 8269459 - DD 8625213 - DD 8975771 - DD 9320922 - DD 9660458 - DD 9994176 - DD 10321873 - DD 10643353 - DD 10958422 - DD 11266890 - DD 11568571 - DD 11863283 - DD 12150850 - DD 12431097 - DD 12703856 - DD 12968963 - DD 13226258 - DD 13475586 - DD 13716797 - DD 13949745 - DD 14174291 - DD 14390298 - DD 14597637 - DD 14796184 - DD 14985817 - DD 15166424 - DD 15337895 - DD 15500126 - DD 15653022 - DD 15796488 - DD 15930439 - DD 16054795 - DD 16169479 - DD 16274424 - DD 16369565 - DD 16454846 - DD 16530216 - DD 16595628 - DD 16651044 - DD 16696429 - DD 16731757 - DD 16757007 - DD 16772163 diff --git a/16/x/modex/THREED.ASM b/16/x/modex/THREED.ASM deleted file mode 100755 index 5ecd3ba3..00000000 --- a/16/x/modex/THREED.ASM +++ /dev/null @@ -1,872 +0,0 @@ -COMMENT / - Fixed-point math functions and 3D transforms - Copyright (c) 1993,94 by Alessandro Scotti -/ -WARN PRO -P386 -JUMPS -LOCALS - -INCLUDE MATH.INC - -PUBLIC tdFixedMul -PUBLIC tdGetNormal -PUBLIC tdRotate -PUBLIC tdGetSurfaceLight -PUBLIC tdSetLight -PUBLIC tdSetRotation -PUBLIC tdSetTranslation -PUBLIC tdTransform -PUBLIC tdTransformToImage -PUBLIC tdTransformLight -PUBLIC tdBackPlaneCull -PUBLIC tdSetPerspective - -;----------------------------------------------------------- -; -; Data segment -; -MATH_DATA SEGMENT USE16 PARA PUBLIC 'DATA' - ASSUME ds:MATH_DATA - -INCLUDE SINCOS.INC ; Fixed 8:24 sin/cos table - -XRotation TPOINT <> ; 3x3 rotation matrix -YRotation TPOINT <> -ZRotation TPOINT <> - -Translation TPOINT <> ; Translation vector - -Light TPOINT <> ; Light vector -AmbientLight DW 00 ; Ambient light - -XScale DD 10000h ; Scaling factor for X coordinate -YScale DD 10000h ; Scaling factor for Y coordinate -PerspectiveDistance DD 20000000h - -MATH_DATA ENDS - -;----------------------------------------------------------- -; -; Code segment -; -MATH_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MATH_TEXT, es:NOTHING, fs:NOTHING - -tdSetPerspective PROC PASCAL FAR - ARG Perspective:DWORD, \ - ScaleX:DWORD, \ - ScaleY:DWORD - USES ds - - mov ax, SEG MATH_DATA - mov ds, ax - ASSUME ds:MATH_DATA - - mov eax, [Perspective] - mov [PerspectiveDistance], eax - mov eax, [ScaleX] - mov [XScale], eax - mov eax, [ScaleY] - mov [YScale], eax - - ret -tdSetPerspective ENDP - - -;----------------------------------------------------------- -; -; Sets the rotation matrix. -; -; Input: -; RX = X-axis rotation angle -; RY = X-axis rotation angle -; RZ = X-axis rotation angle -; Output: -; none -; -tdSetRotation PROC PASCAL FAR - ARG RX:WORD, \ - RY:WORD, \ - RZ:WORD - USES ds, si, di - - mov ax, SEG MATH_DATA - mov ds, ax - ASSUME ds:MATH_DATA - - mov bx, [RZ] - mov si, [RY] - mov di, [RX] - shl bx, 2 - shl si, 2 - shl di, 2 - - push ebp ; We use EBP as a scratch register - -; Set X rotation - mov eax, tblCos[bx] - imul tblCos[si] - mov [XRotation.X], edx - - mov eax, tblSin[bx] - imul tblCos[si] - mov [XRotation.Y], edx - - mov eax, tblSin[si] - sar eax, 8 ; Convert fixed 8:24 to fixed 16:16 - mov [XRotation.Z], eax - -; Set Y rotation - mov eax, tblCos[bx] - imul tblSin[si] ; EDX:EAX = fixed 16:48 - shrd eax, edx, 24 ; EAX = fixed 8:24 - imul tblSin[di] ; EDX:EAX = fixed 16:48 - mov ebp, eax - mov ecx, edx - mov eax, tblSin[bx] - imul tblCos[di] - add eax, ebp - adc edx, ecx ; EDX:EAX = fixed 16:48 - neg edx - mov [YRotation.X], edx - - mov eax, tblSin[bx] - imul tblSin[si] - shrd eax, edx, 24 - imul tblSin[di] - mov ebp, eax - mov ecx, edx - mov eax, tblCos[bx] - imul tblCos[di] - sub eax, ebp - sbb edx, ecx - mov [YRotation.Y], edx - - mov eax, tblCos[si] - imul tblSin[di] - mov [YRotation.Z], edx - -; Set Z rotation - mov eax, tblCos[bx] - imul tblSin[si] - shrd eax, edx, 24 - imul tblCos[di] - mov ebp, eax - mov ecx, edx - mov eax, tblSin[bx] - imul tblSin[di] - sub eax, ebp - sbb edx, ecx - mov [ZRotation.X], edx - - mov eax, tblSin[bx] - imul tblSin[si] - shrd eax, edx, 24 - imul tblCos[di] - mov ebp, eax - mov ecx, edx - mov eax, tblCos[bx] - imul tblSin[di] - add eax, ebp - add edx, ecx - neg edx - mov [ZRotation.Y], edx - - mov eax, tblCos[si] - imul tblCos[di] - mov [ZRotation.Z], edx - - pop ebp ; Restore EBP - - ret -tdSetRotation ENDP - -;----------------------------------------------------------- -; -; Sets the translation vector. -; -; Input: -; TV = pointer to translation vector -; Output: -; none -; -tdSetTranslation PROC PASCAL FAR - ARG TV:DWORD - USES ds, es, di - - mov ax, SEG MATH_DATA - mov ds, ax - ASSUME ds:MATH_DATA - - les di, [TV] - mov eax, es:[di].X - mov [Translation.X], eax - mov eax, es:[di].Y - mov [Translation.Y], eax - mov eax, es:[di].Z - mov [Translation.Z], eax - - ret -tdSetTranslation ENDP - -;----------------------------------------------------------- -; -; Transforms an array of TPOINT. -; -; Input: -; Source = pointer to source array of TPOINT -; Dest = pointer to destination array of TPOINT -; Count = number of entries to transform -; Output: -; none -; -tdTransform PROC PASCAL FAR - ARG Source:DWORD, \ - Dest:DWORD, \ - Count:WORD - LOCAL Adjust:DWORD - USES ds, si, es, di, fs - - mov ax, SEG MATH_DATA - mov ds, ax - ASSUME ds:MATH_DATA - - lfs si, [Source] - les di, [Dest] - - ALIGN DWORD -@@Loop: -; Transform Z coordinate - mov eax, fs:[si].X - imul [ZRotation.X] - mov ecx, eax - mov ebx, edx - mov eax, fs:[si].Y - imul [ZRotation.Y] - add ecx, eax - adc ebx, edx - mov eax, fs:[si].Z - imul [ZRotation.Z] - add eax, ecx - adc edx, ebx - mov ebx, eax - shrd eax, edx, 16 - add eax, [Translation.Z] ; EAX = new Z coord (fixed 16:16) - mov es:[di].Z, eax -; Get perspective factor - mov ebx, [PerspectiveDistance] - sub eax, ebx - neg eax ; EAX = PD - Z - xor edx, edx - shld edx, eax, 16 - shl eax, 16 - idiv ebx ; EAX = fixed 16:16 result - mov [Adjust], eax - -; Transform X coordinate - mov eax, fs:[si].X - imul [XRotation.X] - mov ecx, eax - mov ebx, edx - mov eax, fs:[si].Y - imul [XRotation.Y] - add ecx, eax - adc ebx, edx - mov eax, fs:[si].Z - imul [XRotation.Z] - add eax, ecx - adc edx, ebx - shrd eax, edx, 16 - add eax, [Translation.X] - imul [Adjust] - shrd eax, edx, 16 - mov es:[di].X, eax - -; Transform Y coordinate - mov eax, fs:[si].X - imul [YRotation.X] - mov ecx, eax - mov ebx, edx - mov eax, fs:[si].Y - imul [YRotation.Y] - add ecx, eax - adc ebx, edx - mov eax, fs:[si].Z - imul [YRotation.Z] - add eax, ecx - adc edx, ebx - shrd eax, edx, 16 - add eax, [Translation.Y] - imul [Adjust] - shrd eax, edx, 16 - mov es:[di].Y, eax - - add si, SIZE TPOINT - add di, SIZE TPOINT - dec [Count] - jnz @@Loop - - ret -tdTransform ENDP - -;----------------------------------------------------------- -; -; Transforms an array of TPOINT into an array of TIMAGEPOINT. -; -; Input: -; Source = pointer to source array of TPOINT -; Dest = pointer to destination array of TIMAGEPOINT -; Count = number of entries to transform -; DeltaX = translation distance for the X coordinate -; DeltaY = translation distance for the Y coordinate -; Output: -; the maximum Z value -; -tdTransformToImage PROC PASCAL FAR - ARG Source:DWORD, \ - Dest:DWORD, \ - Count:WORD, \ - DeltaX:WORD, \ - DeltaY:WORD - LOCAL Adjust:DWORD, \ - Max:DWORD - USES ds, si, es, di, fs - - mov ax, SEG MATH_DATA - mov ds, ax - ASSUME ds:MATH_DATA - - lfs si, [Source] - les di, [Dest] - mov [Max], 80000000h - -@@Loop: -; Check max Z - mov eax, fs:[si].Z - cmp eax, [Max] - jle @@1 - mov [Max], eax -@@1: - -; Transform X coordinate - mov ax, WORD PTR fs:[si].X[2] - add ax, [DeltaX] - mov es:[di].IX, ax - -; Transform Y coordinate - mov ax, WORD PTR fs:[si].Y[2] - add ax, [DeltaY] - mov es:[di].IY, ax - - add si, SIZE TPOINT - add di, SIZE TIMAGEPOINT - dec [Count] - jnz @@Loop - - mov eax, [Max] - shld edx, eax, 16 - ret -tdTransformToImage ENDP - -;----------------------------------------------------------- -; -; Sets the light source. -; -; Input: -; Light = pointer to light vector -; Output: -; none -; -tdSetLight PROC PASCAL FAR - ARG L:DWORD - USES ds, es, di - - mov ax, SEG MATH_DATA - mov ds, ax - ASSUME ds:MATH_DATA - - les di, [L] - mov eax, es:[di].X - mov [Light.X], eax - mov eax, es:[di].Y - mov [Light.Y], eax - mov eax, es:[di].Z - mov [Light.Z], eax - - ret -tdSetLight ENDP - -;----------------------------------------------------------- -; -; Computes light intensity for an array of surfaces. -; -; Input: -; Normals = pointer to an array of surface normals -; Lights = pointer to an array of integer to be filled with -; light intensity -; Count = number of elements to transform -; Output: -; none -; -tdTransformLight PROC PASCAL FAR - ARG Normals:DWORD, \ - Lights:DWORD, \ - Count:WORD - USES ds, si, es, di, fs - - mov ax, SEG MATH_DATA - mov fs, ax - ASSUME fs:MATH_DATA - - lds si, [Normals] - les di, [Lights] - ASSUME ds:NOTHING - -; Intensity is given by the dot product between the Light vector and -; the surface normal -@@Loop: - mov eax, ds:[si].Z - imul [Light.Z] - mov ebx, eax - mov ecx, edx - mov eax, ds:[si].Y - imul [Light.Y] - add ebx, eax - adc ecx, edx - mov eax, ds:[si].X - imul [Light.X] - add eax, ebx - adc edx, ecx ; EDX:EAX = fixed 32:32 intensity - add dx, [AmbientLight] - test dx, dx - jg @@1 - xor dx, dx ; Return 0 for no light -@@1: - mov es:[di], dx - inc di - inc di - add si, SIZE TPOINT - dec [Count] - jnz @@Loop - - ASSUME fs:NOTHING - ret -tdTransformLight ENDP - -;----------------------------------------------------------- -; -; Returns the light value given the normal to a surface. -; -; Input: -; Normal = pointer to TPOINT surface normal vector -; Output: -; AX = light intensity (>=0) -; Notes: -; the normal is rotated according to the current setting. -; -tdGetSurfaceLight PROC PASCAL FAR - ARG Normal:DWORD - USES ds, esi, es, di - - mov ax, SEG MATH_DATA - mov ds, ax - ASSUME ds:MATH_DATA - - les di, [Normal] - -; Transform Z coordinate - mov eax, es:[di].X - imul [ZRotation.X] - mov ecx, eax - mov ebx, edx - mov eax, es:[di].Y - imul [ZRotation.Y] - add ecx, eax - adc ebx, edx - mov eax, es:[di].Z - imul [ZRotation.Z] - add eax, ecx - adc edx, ebx - shrd eax, edx, 16 - imul [Light.Z] - shrd eax, edx, 16 - mov esi, eax - -; Transform X coordinate - mov eax, es:[di].X - imul [XRotation.X] - mov ecx, eax - mov ebx, edx - mov eax, es:[di].Y - imul [XRotation.Y] - add ecx, eax - adc ebx, edx - mov eax, es:[di].Z - imul [XRotation.Z] - add eax, ecx - adc edx, ebx - shrd eax, edx, 16 - imul [Light.X] - shrd eax, edx, 16 - add esi, eax - -; Transform Y coordinate - mov eax, es:[di].X - imul [YRotation.X] - mov ecx, eax - mov ebx, edx - mov eax, es:[di].Y - imul [YRotation.Y] - add ecx, eax - adc ebx, edx - mov eax, es:[di].Z - imul [YRotation.Z] - add eax, ecx - adc edx, ebx - shrd eax, edx, 16 - imul [Light.X] - shrd eax, edx, 16 - add eax, esi - shr eax, 16 - -; Add ambient light - add ax, [AmbientLight] - test ax, ax - jge @@Exit - xor ax, ax - -@@Exit: - ret -tdGetSurfaceLight ENDP - -;----------------------------------------------------------- -; -; Rotates an array of TPOINT. -; -; Input: -; Source = pointer to source array of TPOINT -; Dest = pointer to destination array of TPOINT -; Count = number of entries to transform -; Output: -; none -; -tdRotate PROC PASCAL FAR - ARG Source:DWORD, \ - Dest:DWORD, \ - Count:WORD - USES ds, si, es, di, fs - - mov ax, SEG MATH_DATA - mov ds, ax - ASSUME ds:MATH_DATA - - lfs si, [Source] - les di, [Dest] - -@@Loop: -; Transform Z coordinate - mov eax, fs:[si].X - imul [ZRotation.X] - mov ecx, eax - mov ebx, edx - mov eax, fs:[si].Y - imul [ZRotation.Y] - add ecx, eax - adc ebx, edx - mov eax, fs:[si].Z - imul [ZRotation.Z] - add eax, ecx - adc edx, ebx - shrd eax, edx, 16 - mov es:[di].Z, eax - -; Transform X coordinate - mov eax, fs:[si].X - imul [XRotation.X] - mov ecx, eax - mov ebx, edx - mov eax, fs:[si].Y - imul [XRotation.Y] - add ecx, eax - adc ebx, edx - mov eax, fs:[si].Z - imul [XRotation.Z] - add eax, ecx - adc edx, ebx - shrd eax, edx, 16 - mov es:[di].X, eax - -; Transform Y coordinate - mov eax, fs:[si].X - imul [YRotation.X] - mov ecx, eax - mov ebx, edx - mov eax, fs:[si].Y - imul [YRotation.Y] - add ecx, eax - adc ebx, edx - mov eax, fs:[si].Z - imul [YRotation.Z] - add eax, ecx - adc edx, ebx - shrd eax, edx, 16 - mov es:[di].Y, eax - - add si, SIZE TPOINT - add di, SIZE TPOINT - dec [Count] - jnz @@Loop - - ret -tdRotate ENDP - -tdFixedMul PROC PASCAL FAR - ARG F1:DWORD, \ - F2:DWORD - - mov eax, [F1] - imul [F2] - shr eax, 16 - - ret -tdFixedMul ENDP - -;----------------------------------------------------------- -; -; Returns in EAX the square root of EDX:EAX. -; -subSqrt PROC NEAR - push esi - push edi - - add eax, eax - adc edx, 0 - mov eax, edx ; Just discard the low bits - - mov esi, eax - xor edi, edi - shld edi, esi, 16 - shl esi, 16 -@@Loop: - mov ebx, eax - mul eax - add eax, esi - adc edx, edi - shrd eax, edx, 1 - shr edx, 1 - div ebx - cmp eax, ebx - jne @@Loop - -; Adjust EAX - shl eax, 8 - - pop edi - pop esi - ret -subSqrt ENDP - -;----------------------------------------------------------- -; -; Finds the unitary normal to a given surface. -; -; Input: -; Dest = pointer to TPOINT (vector) result -; P1, P2, P3 = pointer to TPOINT points on surface -; Output: -; none -; Notes: -; the normal is given by the cross-product between (P3-P1) and -; (P2-P1), so its orientation depends on the parameters order. -; -tdGetNormal PROC PASCAL FAR - ARG Dest:DWORD, \ - P1:DWORD, \ - P2:DWORD, \ - P3:DWORD - LOCAL V1:TPOINT, \ - V2:TPOINT, \ - N:TPOINT - USES ds, si, es, di - -; Get vector V1 - lds si, [P1] - les di, [P3] - mov eax, es:[di].X - sub eax, ds:[si].X - mov [V1.X], eax - mov eax, es:[di].Y - sub eax, ds:[si].Y - mov [V1.Y], eax - mov eax, es:[di].Z - sub eax, ds:[si].Z - mov [V1.Z], eax - -; Get vector V2 - les di, [P2] - mov eax, es:[di].X - sub eax, ds:[si].X - mov [V2.X], eax - mov eax, es:[di].Y - sub eax, ds:[si].Y - mov [V2.Y], eax - mov eax, es:[di].Z - sub eax, ds:[si].Z - mov [V2.Z], eax - -; Get normal vector (V1 x V2) - mov eax, [V1.Z] - imul [V2.Y] - mov ebx, eax - mov ecx, edx - mov eax, [V1.Y] - imul [V2.Z] - sub eax, ebx - sbb edx, ecx - shrd eax, edx, 16 - mov [N.X], eax - - mov eax, [V1.X] - imul [V2.Z] - mov ebx, eax - mov ecx, edx - mov eax, [V1.Z] - imul [V2.X] - sub eax, ebx - sbb edx, ecx - shrd eax, edx, 16 - mov [N.Y], eax - - mov eax, [V1.Y] - imul [V2.X] - mov ebx, eax - mov ecx, edx - mov eax, [V1.X] - imul [V2.Y] - sub eax, ebx - sbb edx, ecx - shrd eax, edx, 16 - mov [N.Z], eax - -; Get normal length - mov eax, [N.X] - imul eax - mov ebx, eax - mov ecx, edx - mov eax, [N.Y] - imul eax - add ebx, eax - adc ecx, edx - mov eax, [N.Z] - imul eax - add eax, ebx - adc edx, ecx ; EDX:EAX = N.X*N.X + N.Y*N.Y + N.Z*N.Z - call subSqrt ; EAX = normal length - mov ebx, eax - -; Adjust vector and save it - les di, [Dest] - mov eax, [N.X] - cdq - shld edx, eax, 16 - shl eax, 16 - idiv ebx - mov es:[di].X, eax - mov eax, [N.Y] - cdq - shld edx, eax, 16 - shl eax, 16 - idiv ebx - mov es:[di].Y, eax - mov eax, [N.Z] - cdq - shld edx, eax, 16 - shl eax, 16 - idiv ebx - mov es:[di].Z, eax - - ret -tdGetNormal ENDP - -TPOLY STRUC - Vtx DW 4 DUP(?) -TPOLY ENDS - -;----------------------------------------------------------- -; -; Performs surface removal on an array of polygons. -; -; Input: -; Poly = pointer to an array of TPOLY -; Vertex = pointer to an array of TPOINT -; Dest = pointer to an array of integer -; Count = number of polygons to check -; Step = size of TPOLY structure -; Output: -; if the n-th polygon is invisible the n-th entry of the -; Dest array is set to -1, other entries are not modified -; (so it's possible to use the Light array for Dest, because -; the light intensity is always >= 0) -; -tdBackPlaneCull PROC PASCAL FAR - ARG Step:WORD, \ - Poly:DWORD, \ - Vertex:DWORD, \ - Dest:DWORD, \ - Count:WORD - USES ds, si, es, di, fs - ASSUME ds:NOTHING - - mov ds, WORD PTR Vertex[2] - les di, [Poly] - mov fs, WORD PTR Dest[2] - -@@Loop: - mov ax, es:[di].Vtx[2] ; Index of 2nd vertex - shl ax, 2 - mov bx, ax - shl ax, 1 - add bx, ax ; BX = index*SIZE TPOINT - add bx, WORD PTR [Vertex] ; BX = offset of 2nd vertex - mov ax, es:[di].Vtx[4] ; Index of 3rd vertex - shl ax, 2 - mov si, ax - shl ax, 1 - add si, ax - add si, WORD PTR [Vertex] ; SI = offset of 3rd vertex - mov ecx, ds:[si].X - sub ecx, ds:[bx].X ; ECX = V3.X-V2.X - mov edx, ds:[si].Y - sub edx, ds:[bx].Y ; EDX = V3.Y-V2.Y - mov ax, es:[di].Vtx[0] ; Index of 1st vertex - shl ax, 2 - mov si, ax - shl ax, 1 - add si, ax - add si, WORD PTR [Vertex] ; SI = offset of 1st vertex - mov eax, ds:[si].X - sub eax, ds:[bx].X ; EAX = V1.X-V2.X - mov esi, ds:[si].Y - sub esi, ds:[bx].Y ; ESI = V1.Y-V2.Y - imul edx - mov ebx, eax - xchg ecx, edx ; ECX:EBX = (V1.X-V2.X)*(V3.Y-V2.Y) - mov eax, esi - imul edx ; EDX:EAX = (V1.Y-V2.Y)*(V3.X-V2.X) - sub eax, ebx - sbb edx, ecx - jl @@Next ; Polygon is visible - mov bx, WORD PTR [Dest] ; FS:BX -> current Dest entry - mov WORD PTR fs:[bx], -1 ; Remove polygon -@@Next: - add WORD PTR [Dest], 2 ; Next entry for dest - add di, [Step] ; Next polygon - dec [Count] - jnz @@Loop - - ret -tdBackPlaneCull ENDP - -MATH_TEXT ENDS -END diff --git a/16/x/modex/THREED.H b/16/x/modex/THREED.H deleted file mode 100755 index b993ef86..00000000 --- a/16/x/modex/THREED.H +++ /dev/null @@ -1,32 +0,0 @@ -typedef struct { - long x, y, z; -} TVECTOR; - -#define PVECTOR TVECTOR far * - -#define TPOINT TVECTOR -#define PPOINT PVECTOR - -#define VPTR void far * - -#ifdef __cplusplus -extern "C" { -#endif - -long far pascal tdFixedMul( long, long ); -int far pascal tdGetSurfaceLight( PPOINT ); -long far pascal tdTransformToImage( VPTR, VPTR, short, short, short ); - -void far pascal tdBackPlaneCull( VPTR, VPTR, VPTR, short, short ); -void far pascal tdGetNormal( VPTR, PPOINT, PPOINT, PPOINT ); -void far pascal tdRotate( VPTR, VPTR, short ); -void far pascal tdSetLight( PVECTOR ); -void far pascal tdSetRotation( short, short, short ); -void far pascal tdSetTranslation( PVECTOR ); -void far pascal tdSetPerspective( long, long, long ); -void far pascal tdTransform( VPTR, VPTR, short ); -void far pascal tdTransformLight( VPTR, VPTR, short ); - -#ifdef __cplusplus -} -#endif diff --git a/16/x/modex/THREED.PAS b/16/x/modex/THREED.PAS deleted file mode 100755 index 8b712c9d..00000000 --- a/16/x/modex/THREED.PAS +++ /dev/null @@ -1,40 +0,0 @@ -unit ThreeD; -interface - -type - TVector = record - X, Y, Z : longint; - end; - TPoint = TVector; - -function tdFixedMul( F1, F2: longint ): longint; -function tdGetSurfaceLight( var Normal: TPoint ): integer; -function tdTransformToImage( var Source, Dest; Count, DeltaX, DeltaY: integer ): longint; - -procedure tdBackPlaneCull( var Poly, Vertex, Dest; Count, Step: word ); -procedure tdGetNormal( var Dest, P1, P2, P3: TVector ); -procedure tdRotate( var Source, Dest; Count: word ); -procedure tdSetLight( var Light: TVector ); -procedure tdSetRotation( RX, RY, RZ: word ); -procedure tdSetTranslation( var TV: TVector ); -procedure tdSetPerspective( PD, XF, YF: longint ); -procedure tdTransform( var Source, Dest; Count: word ); -procedure tdTransformLight( var Source, Dest; Count: word ); - -implementation - -function tdGetSurfaceLight; external; -procedure tdSetRotation( RX, RY, RZ: word ); external; -procedure tdGetNormal; external; -procedure tdSetTranslation( var TV: TVector ); external; -procedure tdTransform( var Source, Dest; Count: word ); external; -procedure tdRotate; external; -function tdTransformToImage; external; -procedure tdSetLight( var Light: TVector ); external; -procedure tdSetPerspective; external; -procedure tdTransformLight; external; -function tdFixedMul( F1, F2: longint ): longint; external; -procedure tdBackPlaneCull; external; -{$L THREED} - -end. diff --git a/16/x/mxbb.asm b/16/x/mxbb.asm deleted file mode 100755 index ac6668ce..00000000 --- a/16/x/mxbb.asm +++ /dev/null @@ -1,278 +0,0 @@ -;----------------------------------------------------------- -; -; MXBB.ASM - Bit block transfer -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES -INCLUDE MODEX.DEF - -PUBLIC mxBitBlt - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN subHorizontalLineInfo : NEAR - -EXTRN mx_VideoSegment : WORD -EXTRN mx_BytesPerLine : WORD - -;----------------------------------------------------------- -; -; Moves a block of video memory. -; -; Input: -; SX, SY = source coordinates -; Width = source width -; Height = source height -; DX, DY = destination coordinates -; Output: -; none -; -; Note: overlapping regions are not allowed. -; -mxBitBlt PROC FAR - ARG DestY:WORD, \ - DestX:WORD, \ - Height:WORD, \ - Width:WORD, \ - SY:WORD, \ - SX:WORD = ARG_SIZE - LOCAL PlaneWidth:WORD:4, \ - SourceOffset:WORD, \ - DestOffset:WORD, \ - Count:BYTE, \ - ReadPlane:BYTE, \ - WritePlane:BYTE, \ - LeftMask:BYTE, \ - RightMask:BYTE = AUTO_SIZE - .enter AUTO_SIZE - .push ds, si, es, di - -; Exit now if null width - cmp [Width], 0 - je @@Exit - -; Calls the proper procedure to handle transfer - mov ax, [SX] - and al, 03h ; AL = source plane - mov dx, [DestX] - and dl, 03h ; DL = destination plane - mov bx, OFFSET subPlaneBlt - cmp al, dl ; Same source and destination plane? - jne @@BitBlt ; No, use slow procedure - mov bx, OFFSET subMoveBlt -@@BitBlt: - call bx - -@@Exit: - xor ax, ax - .pop ds, si, es, di - .leave ARG_SIZE - -;----------------------------------------------------------- -; Uses write mode 1 for maximum speed. Only works if source -; and destination are plane-aligned. -; -subMoveBlt PROC NEAR -; Get horizontal line info and address of destination - mov bx, [DestX] - mov ax, [DestY] - mov cx, [Width] - call subHorizontalLineInfo - mov [LeftMask], al - mov [RightMask], ah - mov [Width], cx - -; Setup segments - mov ax, [mx_VideoSegment] - mov ds, ax - mov es, ax - -; Get address of source pixel - mov ax, [SY] - mul [mx_BytesPerLine] - mov si, [SX] - .shr si, 2 - add si, ax - -; Set write mode 1 - mov dx, GDC - mov ax, 4105h - out dx, ax - cld - -; Move left block -@@L0: - mov ah, [LeftMask] - or ah, ah - jz @@C0 - mov dx, TS - mov al, 02h - out dx, ax ; Set write plane mask - mov ax, [mx_BytesPerLine] - dec ax - mov cx, [Height] - .push si, di -@@L1: - movsb - add si, ax - add di, ax - dec cx - jnz @@L1 - .pop si, di - inc si - inc di - -; Move center block -@@C0: - mov bx, [Width] - test bx, bx - jz @@R0 - mov dx, TS - mov ax, 0F02h - out dx, ax ; Enable all planes - mov ax, [mx_BytesPerLine] - sub ax, bx - mov dx, [Height] - .push si, di -@@C1: - mov cx, bx ; CX = image width - rep movsb ; Cannot use "movsw" here! - add si, ax ; Next scan line - add di, ax ; Next scan line - dec dx ; All lines processed? - jnz @@C1 ; No, continue - .pop si, di - add si, bx - add di, bx - -; Move right block -@@R0: - mov ah, [RightMask] - or ah, ah - jz @@Done - mov dx, TS - mov al, 02h - out dx, ax ; Set write plane mask - mov ax, [mx_BytesPerLine] - dec ax - mov cx, [Height] -@@R1: - movsb - add si, ax - add di, ax - dec cx - jnz @@R1 - -@@Done: - mov dx, GDC - mov ax, 4005h - out dx, ax ; Restore write mode 0 - -@@Exit: - ret -subMoveBlt ENDP - -;----------------------------------------------------------- -; Moves one plane at a time. -; -subPlaneBlt PROC NEAR -; Compute extra bytes and width count for each plane - mov cx, [Width] - mov bx, cx - shr bx, 1 - shr bx, 1 ; Width for each plane - and cl, 03h - mov al, 00001000b - shr al, cl - mov si, 3 SHL 1 -@@PatchLoop: - mov PlaneWidth[si], bx - shr al, 1 - adc bx, 0 - dec si - dec si - jge @@PatchLoop - -; Get pixel addresses - mov ax, [mx_VideoSegment] - mov ds, ax - mov es, ax - mov ax, [SY] - mul [mx_BytesPerLine] - mov si, [SX] - shr si, 1 - shr si, 1 - add si, ax ; DS:SI points to source - mov [SourceOffset], si - mov ax, [DestY] - mul [mx_BytesPerLine] - mov di, [DestX] - shr di, 1 - shr di, 1 - add di, ax ; ES:DI points to destination - mov [DestOffset], di - -; Adjust plane for output to VGA registers - mov ax, [SX] - and al, 03h - mov [ReadPlane], al - mov cx, [DestX] - and cl, 03h - mov al, 00010001b - shl al, cl - mov [WritePlane], al - -; Ready to move now - cld - mov [Count], 4 ; Four planes - lea bx, PlaneWidth ; SS:[BX] = width in bytes for plane -@@PlaneLoop: - cmp WORD PTR ss:[bx], 0 - je @@Done - mov ah, [WritePlane] - and ah, 0Fh - mov al, 02h - mov dx, TS - out dx, ax ; Select write plane - mov ah, [ReadPlane] - mov al, 04h - mov dx, GDC - out dx, ax ; Select read plane - mov dx, [Height] - mov ax, [mx_BytesPerLine] - sub ax, ss:[bx] ; AX = extra bytes per line -@@Loop: - mov cx, ss:[bx] - shr cx, 1 - rep movsw - rcl cx, 1 - rep movsb - add si, ax - add di, ax - dec dx - jnz @@Loop ; Repeat for all lines - inc bx - inc bx ; Select width for next plane - inc [ReadPlane] - and [ReadPlane], 03h ; Should be faster on 386 using - jnz @@ReadPlaneOk ; BTR and ADC... - inc [SourceOffset] -@@ReadPlaneOk: - rol [WritePlane], 1 - adc [DestOffset], 0 - mov si, [SourceOffset] - mov di, [DestOffset] - dec [Count] - jnz @@PlaneLoop ; Repeat for all planes - -@@Done: - ret -subPlaneBlt ENDP - -mxBitBlt ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxcc.asm b/16/x/mxcc.asm deleted file mode 100755 index 4f78adb9..00000000 --- a/16/x/mxcc.asm +++ /dev/null @@ -1,644 +0,0 @@ -;----------------------------------------------------------- -; -; MXCC.ASM - Fast clip line function -; Copyright (c) 1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES -INCLUDE MODEX.DEF - -PUBLIC xsubClipLine - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_BytesPerLine : WORD -EXTRN mx_VideoSegment : WORD - -EXTRN mx_ClipX1 : WORD -EXTRN mx_ClipY1 : WORD -EXTRN mx_ClipX2 : WORD -EXTRN mx_ClipY2 : WORD - -tblGroups LABEL WORD - DW 10, tbl00 - DW 10, tbl10 - DW 9, tbl20 - DW -1, 0 - DW 10, tbl40 - DW 10, tbl50 - DW 9, tbl60 - DW -1, 0 - DW 6, tbl80 - DW 6, tbl90 - DW 5, tblA0 - DW -1, 0 - DW -1, 0 - DW -1, 0 - DW -1, 0 - DW -1, 0 -tbl00 DW cc00, cc01, cc02, ccFF, cc04, cc05, cc06, ccFF, cc08, cc09, cc0A -tbl10 DW cc10, ccFF, cc12, ccFF, cc14, ccFF, cc16, ccFF, cc18, ccFF, cc1A -tbl20 DW cc20, cc21, ccFF, ccFF, cc24, cc25, ccFF, ccFF, cc28, cc29 -tbl40 DW cc40, cc41, cc42, ccFF, ccFF, ccFF, ccFF, ccFF, cc48, cc49, cc4A -tbl50 DW cc50, ccFF, cc52, ccFF, ccFF, ccFF, ccFF, ccFF, cc58, ccFF, cc5A -tbl60 DW cc60, cc61, ccFF, ccFF, ccFF, ccFF, ccFF, ccFF, cc68, cc69 -tbl80 DW cc80, cc81, cc82, ccFF, cc84, cc85, cc86 -tbl90 DW cc90, ccFF, cc92, ccFF, cc94, ccFF, cc96 -tblA0 DW ccA0, ccA1, ccFF, ccFF, ccA4, ccA5 - -ccTT: clc - ret -ccFF: stc - ret - -; Group 00 ------------------------------------------------- -; -cc00: - clc - ret -cc01: - jmp ClipQLeft -cc02: - jmp ClipQRight -cc04: - jmp ClipQTop -cc05: - call ClipQLeft - cmp si, [mx_ClipY1] - jge ccTT - jmp ClipQTop -cc06: - call ClipQRight - cmp si, [mx_ClipY1] - jge ccTT - jmp ClipQTop -cc08: - jmp ClipQBottom -cc09: - call ClipQLeft - cmp si, [mx_ClipY2] - jle ccTT - jmp ClipQBottom -cc0A: - call ClipQRight - cmp si, [mx_ClipY2] - jle ccTT - jmp ClipQBottom - -; Group 10 ------------------------------------------------- -; -cc10FF: - stc - ret -cc10TT: - clc - ret -cc10: - jmp ClipPLeft -cc12: - call ClipPLeft - jmp ClipQRight -cc14: - call ClipPLeft - cmp bx, [mx_ClipY1] - jl cc10FF - jmp ClipQTop -cc16: - call ClipPLeft - cmp bx, [mx_ClipY1] - jl cc10FF - call ClipQTop - cmp cx, [mx_ClipX2] - jle cc10TT - jmp ClipQRight -cc18: - call ClipPLeft - cmp bx, [mx_ClipY2] - jg cc10FF - jmp ClipQBottom -cc1A: - call ClipPLeft - cmp bx, [mx_ClipY2] - jg cc10FF - call ClipQBottom - cmp cx, [mx_ClipX2] - jle cc10TT - jmp ClipQRight - -; Group 20 ------------------------------------------------- -; -cc20TT: - clc - ret -cc20FF: - stc - ret -cc20: - jmp ClipPRight -cc21: - call ClipPRight - jmp ClipQLeft -cc24: - call ClipPRight - cmp bx, [mx_ClipY1] - jl cc20FF - jmp ClipQTop -cc25: - call ClipPRight - cmp bx, [mx_ClipY1] - jl cc20FF - call ClipQTop - cmp cx, [mx_ClipX1] - jge cc20TT - jmp ClipQLeft -cc28: - call ClipPRight - cmp bx, [mx_ClipY2] - jg cc20FF - jmp ClipQBottom -cc29: - call ClipPRight - cmp bx, [mx_ClipY2] - jg cc20FF - call ClipQBottom - cmp cx, [mx_ClipX1] - jge cc20TT - jmp ClipQLeft - -; Group 40 ------------------------------------------------- -; -cc40TT: - clc - ret -cc40FF: - stc - ret -cc40: - jmp ClipPTop -cc41: - call ClipPTop - cmp di, [mx_ClipX1] - jl cc40FF - call ClipQLeft - cmp si, [mx_ClipY1] - jge cc40TT - jmp ClipQTop -cc42: - call ClipPTop - cmp di, [mx_ClipX2] - jg cc40FF - jmp ClipQRight -cc48: - call ClipPTop - jmp ClipQBottom -cc49: - call ClipPTop - cmp di, [mx_ClipX1] - jl cc40FF - call ClipQLeft - cmp si, [mx_ClipY2] - jle cc40TT - jmp ClipQBottom -cc4A: - call ClipPTop - cmp di, [mx_ClipX2] - jg cc40FF - call ClipQRight - cmp si, [mx_ClipY2] - jle cc40TT - jmp ClipQBottom - - -; Group 50 ------------------------------------------------- -; -cc50TT: - clc - ret -cc50FF: - stc - ret -cc50: - call ClipPLeft - cmp bx, [mx_ClipY1] - jge cc50TT - jmp ClipPTop -cc52: - call ClipQRight - cmp si, [mx_ClipY1] - jl cc50FF - call ClipPTop - cmp di, [mx_ClipX1] - jge cc50TT - jmp ClipPLeft -cc58: - call ClipQBottom - cmp cx, [mx_ClipX1] - jl cc50FF - call ClipPTop - cmp di, [mx_ClipX1] - jge cc50TT - jmp ClipPLeft -cc5A: - call ClipPLeft - cmp bx, [mx_ClipY2] - jg cc50FF - call ClipQRight - cmp bx, [mx_ClipY1] - jl cc50FF - cmp si, [mx_ClipY2] - jle cc50TT - jmp ClipQBottom - -; Group 60 ------------------------------------------------- -; -cc60TT: - clc - ret -cc60FF: - stc - ret -cc60: - call ClipPRight - cmp bx, [mx_ClipY1] - jge cc60TT - jmp ClipPTop -cc61: - call ClipQLeft - cmp si, [mx_ClipY2] - jl cc60FF - call ClipPTop - cmp di, [mx_ClipX2] - jle cc60TT - jmp ClipPRight -cc68: - call ClipQBottom - cmp cx, [mx_ClipX2] - jg cc60FF - call ClipPRight - cmp bx, [mx_ClipY1] - jge cc60TT - jmp ClipPTop -cc69: - call ClipQLeft - cmp si, [mx_ClipY1] - jl cc60FF - call ClipPRight - cmp bx, [mx_ClipY2] - jg cc60FF - cmp si, [mx_ClipY2] - jle cc69_1 - call ClipQBottom -cc69_1: - cmp bx, [mx_ClipY1] - jge cc60TT - jmp ClipPTop - -; Group 80 ------------------------------------------------- -; -cc80TT: - clc - ret -cc80FF: - stc - ret -cc80: - jmp ClipPBottom -cc81: - call ClipPBottom - cmp di, [mx_ClipX1] - jl cc80FF - jmp ClipQLeft -cc82: - call ClipPBottom - cmp di, [mx_ClipX2] - jg cc80FF - jmp ClipQRight -cc84: - call ClipPBottom - jmp ClipQTop -cc85: - call ClipPBottom - cmp di, [mx_ClipX1] - jl cc80FF - call ClipQLeft - cmp si, [mx_ClipY1] - jge cc80FF - jmp ClipQTop -cc86: - call ClipPBottom - cmp di, [mx_ClipX2] - jg cc80FF - call ClipQRight - cmp si, [mx_ClipY1] - jge cc80TT - jmp ClipQTop - -; Group 90 ------------------------------------------------- -; -cc90TT: - clc - ret -cc90FF: - stc - ret -cc90: - call ClipPLeft - cmp bx, [mx_ClipY2] - jle cc90TT - jmp ClipPBottom -cc92: - call ClipQRight - cmp si, [mx_ClipY2] - jg cc90FF - call ClipPBottom - cmp di, [mx_ClipX1] - jge cc90TT - jmp ClipPLeft -cc94: - call ClipQTop - cmp cx, [mx_ClipX1] - jl cc90FF - call ClipPLeft - cmp bx, [mx_ClipY2] - jle cc90TT - jmp ClipPBottom -cc96: - call ClipPLeft - cmp bx, [mx_ClipY1] - jl cc90FF - call ClipQRight - cmp si, [mx_ClipY2] - jg cc90FF - cmp bx, [mx_ClipY2] - jle cc96_1 - call ClipPBottom -cc96_1: - cmp si, [mx_ClipY1] - jge cc90TT - jmp ClipQTop - -; Group A0 ------------------------------------------------- -; -ccA0TT: - clc - ret -ccA0FF: - stc - ret -ccA0: - call ClipPRight - cmp bx, [mx_ClipY2] - jle ccA0TT - jmp ClipPBottom -ccA1: - call ClipQLeft - cmp si, [mx_ClipY2] - jg ccA0FF - call ClipPBottom - cmp di, [mx_ClipX2] - jle ccA0TT - jmp ClipPRight -ccA4: - call ClipQTop - cmp cx, [mx_ClipX2] - jg ccA0FF - call ClipPRight - cmp bx, [mx_ClipY2] - jle ccA0TT - jmp ClipPBottom -ccA5: - call ClipQLeft - cmp si, [mx_ClipY2] - jg ccA0FF - call ClipPRight - cmp bx, [mx_ClipY1] - jl ccA0FF - cmp si, [mx_ClipY1] - jge ccA5_1 - call ClipQTop -ccA5_1: - cmp bx, [mx_ClipY2] - jle ccA0TT - jmp ClipPBottom - -; Y1 = (Y2-Y1)*(mx_ClipX1-X1)/(X2-X1)+Y1 = (SI-BX)*(mx_ClipX1-DI)/(CX-DI)+BX -; X1 = mx_ClipX1 -ClipPLeft: - mov ax, si - sub ax, bx - mov dx, [mx_ClipX1] - sub dx, di - imul dx - mov bp, cx - sub bp, di - idiv bp - add bx, ax - mov di, [mx_ClipX1] - clc - ret - -; Y1 = (Y2-Y1)*(mx_ClipX2-X1)/(X2-X1)+Y1 = (SI-BX)*(mx_ClipX2-DI)/(CX-DI)+BX -; X1 = mx_ClipX2 -ClipPRight: - mov ax, si - sub ax, bx - mov dx, [mx_ClipX2] - sub dx, di - imul dx - mov bp, cx - sub bp, di - idiv bp - add bx, ax - mov di, [mx_ClipX2] - clc - ret - -; X1 = (X2-X1)*(mx_ClipY2-Y1)/(Y2-Y1)+X1 = (CX-DI)*(mx_ClipY2-BX)/(SI-BX)+DI -; Y1 = mx_ClipY2 -ClipPBottom: - mov ax, cx - sub ax, di - mov dx, [mx_ClipY2] - sub dx, bx - imul dx - mov bp, si - sub bp, bx - idiv bp - add di, ax - mov bx, [mx_ClipY2] - clc - ret - -; X1 = (X2-X1)*(mx_ClipY1-Y1)/(Y2-Y1)+X1 = (CX-DI)*(mx_ClipY1-BX)/(SI-BX)+DI -; Y1 = mx_ClipY1 -ClipPTop: - mov ax, cx - sub ax, di - mov dx, [mx_ClipY1] - sub dx, bx - imul dx - mov bp, si - sub bp, bx - idiv bp - add di, ax - mov bx, [mx_ClipY1] - clc - ret - -; Y2 = (Y1-Y2)*(mx_ClipX1-X2)/(X1-X2)+Y2 = (BX-SI)*(mx_ClipX1-CX)/(DI-CX)+SI -; X2 = mx_ClipX1 -ClipQLeft: - mov ax, bx - sub ax, si - mov dx, [mx_ClipX1] - sub dx, cx - imul dx - mov bp, di - sub bp, cx - idiv bp - add si, ax - mov cx, [mx_ClipX1] - clc - ret - -; Y2 = (Y1-Y2)*(mx_ClipX2-X2)/(X1-X2)+Y2 = (BX-SI)*(mx_ClipX2-CX)/(DI-CX)+SI -; X2 = mx_ClipX1 -ClipQRight: - mov ax, bx - sub ax, si - mov dx, [mx_ClipX2] - sub dx, cx - imul dx - mov bp, di - sub bp, cx - idiv bp - add si, ax - mov cx, [mx_ClipX2] - clc - ret - -; X2 = (X1-X2)*(mx_ClipY2-Y2)/(Y1-Y2)+X2 = (DI-CX)*(mx_ClipY2-SI)/(BX-SI)+CX -; Y2 = mx_ClipY1 -ClipQBottom: - mov ax, di - sub ax, cx - mov dx, [mx_ClipY2] - sub dx, si - imul dx - mov bp, bx - sub bp, si - idiv bp - add cx, ax - mov si, [mx_ClipY2] - clc - ret - -; X2 = (X1-X2)*(mx_ClipY1-Y2)/(Y1-Y2)+X2 = (DI-CX)*(mx_ClipY1-SI)/(BX-SI)+CX -; Y2 = mx_ClipY1 -ClipQTop: - mov ax, di - sub ax, cx - mov dx, [mx_ClipY1] - sub dx, si - imul dx - mov bp, bx - sub bp, si - idiv bp - add cx, ax - mov si, [mx_ClipY1] - clc - ret - -;----------------------------------------------------------- -; -; Checks the coordinates of a line against the active -; clip region. -; Uses the Sobkow-Pospisil-Yang (SPY) algorithm: this was -; supposed to be twice as fast as Cohen-Sutherland, but my -; tests show only a very small increase in speed and a noticeable -; increase of the program size! Maybe this is caused by the -; slow speed of VGA cards, so probably a better test should -; be performed with lines drawn in RAM. -; -; Input: -; AX, BX = X1, Y1 -; CX, DX = X2, Y2 -; Output: -; CF = set if line is full clipped -; AX, BX = clipped X1, Y1 -; CX, DX = clipped X2, Y2 -; Note: -; destroys SI, DI -; -xsubClipLine PROC NEAR - push bp - xor si, si ; SPY code - - cmp dx, [mx_ClipY2] - jle @@1 - or si, 08h - jmp @@2 -@@1: - cmp dx, [mx_ClipY1] - jge @@2 - or si, 04h -@@2: - - cmp cx, [mx_ClipX2] - jle @@3 - or si, 02h - jmp @@4 -@@3: - cmp cx, [mx_ClipX1] - jge @@4 - or si, 01h -@@4: - - cmp bx, [mx_ClipY2] - jle @@5 - or si, 80h - jmp @@6 -@@5: - cmp bx, [mx_ClipY1] - jge @@6 - or si, 40h -@@6: - - cmp ax, [mx_ClipX2] - jle @@7 - or si, 20h - jmp @@8 -@@7: - cmp ax, [mx_ClipX1] - jge @@8 - or si, 10h -@@8: - - mov di, si - and di, 000Fh ; Index of procedure - and si, 00F0h - .shr si, 2 ; Index of group (times 4) - cmp di, cs:tblGroups[si] ; Is index within range? - jg @@Exit ; No, line is full clipped - mov si, cs:tblGroups[si+2] ; Get offset of group table - shl di, 1 ; We must index word elements - add si, di ; Make full offset - mov di, ax ; Move X1 to DI and free AX - mov si, cs:[si] ; Get subroutine address - xchg dx, si ; Move Y2 to SI and free DX - call dx ; Call the proper subroutine - mov ax, di ; Restore AX to X1 - mov dx, si ; Restore DX to Y2 - pop bp - ret - -@@Exit: - pop bp - stc - ret -xsubClipLine ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxcg.asm b/16/x/mxcg.asm deleted file mode 100755 index 42163d7a..00000000 --- a/16/x/mxcg.asm +++ /dev/null @@ -1,69 +0,0 @@ -;----------------------------------------------------------- -; -; MXCG.ASM - Color to gray conversion -; Copyright (c) 1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxColorToGray - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -;----------------------------------------------------------- -; -; Converts RGB colors to gray shades. -; -; Input: -; CPal = pointer to color palette -; GPal = pointer to destination (gray) palette -; Count = number of colors to convert -; Output: -; none -; -; Note: CPal and GPal may point to the same buffer. -; -mxColorToGray PROC FAR - ARG Count:WORD, \ - DPal:DWORD, \ - SPal:DWORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - .push ds, si, es, di - - mov cx, [Count] - jcxz @@Exit - lds si, [SPal] - les di, [DPal] - cld -; We use the standard formula -; gray=(red*30 + green*59 + blue*11)/100 -; in the equivalent form -; gray=(red*77 + green*151 + blue*28)/256 -; which doesn't need the last divide. - mov bx, 77 SHL 8 + 151 -@@Loop: - lodsb ; Red - mul bh - mov dx, ax - lodsb ; Green - mul bl - add dx, ax - lodsb ; Blue - mov ah, 28 - mul ah - add ax, dx - mov al, ah - stosw ; Save new RGB - stosb - loop @@Loop - -@@Exit: - .pop ds, si, es, di - .leave ARG_SIZE -mxColorToGray ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxcl.asm b/16/x/mxcl.asm deleted file mode 100755 index aaa0bac3..00000000 --- a/16/x/mxcl.asm +++ /dev/null @@ -1,151 +0,0 @@ -;----------------------------------------------------------- -; -; MXCL.ASM - Bresenham circle -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES -INCLUDE MODEX.DEF - -PUBLIC mxCircle - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_BytesPerLine : WORD -EXTRN mx_VideoSegment : WORD -EXTRN mx_ClipX1 : WORD -EXTRN mx_ClipY1 : WORD -EXTRN mx_ClipX2 : WORD -EXTRN mx_ClipY2 : WORD - -;----------------------------------------------------------- -; -; Draws a circle using the Bresenham algorithm. -; -; Input: -; XC, YC = center coordinates -; Radius = circle radius -; Color = circle color -; Output: -; none -; Note: -; computes only points in the first octant, all other -; points are obtained by symmetry. -; -mxCircle PROC FAR - ARG Color:BYTE:2, \ - Radius:WORD, \ - YC:WORD, \ - XC:WORD = ARG_SIZE - LOCAL Delta:WORD = AUTO_SIZE - .enter AUTO_SIZE - .push ds, si, di - - xor si, si ; X - mov di, [Radius] ; Y - mov ax, 3 - sub ax, di - sub ax, di - mov [Delta], ax ; Delta = 3-R*2 - - mov ds, [mx_VideoSegment] - -@@Loop: - cmp si, di ; - jg @@Done ; Exit when X > Y -; Draw points - mov ax, si - mov bx, di - call @@subPutPixel - mov ax, si - neg ax - mov bx, di - call @@subPutPixel - mov ax, si - mov bx, di - neg bx - call @@subPutPixel - mov ax, si - neg ax - mov bx, di - neg bx - call @@subPutPixel - mov ax, di - mov bx, si - call @@subPutPixel - mov ax, di - neg ax - mov bx, si - call @@subPutPixel - mov ax, di - mov bx, si - neg bx - call @@subPutPixel - mov ax, di - neg ax - mov bx, si - neg bx - call @@subPutPixel -; Moves coordinates to next point - mov ax, [Delta] - test ax, ax - jl @@Next - mov ax, di - .shl ax, 2 - sub ax, 4 - sub [Delta], ax - dec di -@@Next: - mov ax, si - .shl ax, 2 - add ax, 6 - add [Delta], ax - inc si - jmp @@Loop - -@@Done: - xor ax, ax - .pop ds, si, di - .leave ARG_SIZE - -;--------------------------------------- -; Put pixel function. -; Input: -; BX = X coordinate (relative to center) -; AX = Y coordinate (relative to center) -; DS = video segment -@@subPutPixel: - add bx, [XC] ; Get absolute coordinates - add ax, [YC] - - cmp bx, [mx_ClipX1] ; Clip pixel - jl @@subExit - cmp bx, [mx_ClipX2] - jg @@subExit - cmp ax, [mx_ClipY1] - jl @@subExit - cmp ax, [mx_ClipY2] - jg @@subExit - - mul [mx_BytesPerLine] ; Get pixel offset - mov cx, bx ; Save X coordinate - .shr bx, 2 - add bx, ax ; DS:BX = pixel offset - - and cl, 3 ; Set write plane - mov ax, 0102h - shl ah, cl - mov dx, TS - out dx, ax - - mov al, [Color] ; Write pixel - mov ds:[bx], al - -@@subExit: - retn -mxCircle ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxcr.asm b/16/x/mxcr.asm deleted file mode 100755 index ca1fa7bb..00000000 --- a/16/x/mxcr.asm +++ /dev/null @@ -1,380 +0,0 @@ -;----------------------------------------------------------- -; -; MXCR.ASM - Clip functions -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES -INCLUDE MODEX.DEF - -PUBLIC mxSetSysClipRegion -PUBLIC mxGetClipRegion -PUBLIC mxSetClipRegion -PUBLIC mxSetClip -PUBLIC mxGetClip - -PUBLIC subClipBox -PUBLIC subClipImage - -PUBLIC mx_ClipX1 -PUBLIC mx_ClipY1 -PUBLIC mx_ClipX2 -PUBLIC mx_ClipY2 - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_CodeSegment : WORD - -mx_ClipX1 DW ? ; Clip coordinates -mx_ClipY1 DW ? -mx_ClipX2 DW ? -mx_ClipY2 DW ? - -mx_SysClipX1 DW ? ; System clip coordinates -mx_SysClipY1 DW ? ; (active when mx_ClipStatus is FALSE) -mx_SysClipX2 DW ? -mx_SysClipY2 DW ? - -mx_UserClipX1 DW ? ; User clip coordinates -mx_UserClipY1 DW ? ; (active when mx_ClipStatus is TRUE) -mx_UserClipX2 DW ? -mx_UserClipY2 DW ? - -mx_ClipStatus DB ? - -;----------------------------------------------------------- -; -; Toggles clipping between user and system regions. -; -; Input: -; ClipStatus = TRUE (FALSE) to enable (disable) clipping -; Output: -; AX = old clip status -; -mxSetClip PROC FAR - ARG ClipStatus:BYTE:2 = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - .push ds - mov ds, [mx_CodeSegment] - ASSUME ds:MX_TEXT - - mov ax, [mx_UserClipX1] - mov bx, [mx_UserClipY1] - mov cx, [mx_UserClipX2] - mov dx, [mx_UserClipY2] - cmp [ClipStatus], TRUE - je @@Done - mov ax, [mx_SysClipX1] - mov bx, [mx_SysClipY1] - mov cx, [mx_SysClipX2] - mov dx, [mx_SysClipY2] -@@Done: - mov [mx_ClipX1], ax - mov [mx_ClipY1], bx - mov [mx_ClipX2], cx - mov [mx_ClipY2], dx - - mov al, [ClipStatus] - xchg al, [mx_ClipStatus] - xor ah, ah - - .pop ds - .leave ARG_SIZE -mxSetClip ENDP - -;----------------------------------------------------------- -; -; Returns the current clipping status. -; -; Input: -; none -; Output: -; TRUE (FALSE) if clipping enabled (disabled) -; -mxGetClip PROC FAR - ASSUME ds:NOTHING - mov al, [mx_ClipStatus] - xor ah, ah - ret -mxGetClip ENDP - -;----------------------------------------------------------- -; -; Sets the system clip region and disables user clipping. -; -; Input: -; Width = width in pixels of clip region -; Height = height in pixels of clip region -; Output: -; old clip status. -; -mxSetSysClipRegion PROC FAR - ARG Height:WORD, \ - Width:WORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - .push ds - mov ds, [mx_CodeSegment] - ASSUME ds:MX_TEXT - - xor ax, ax ; Sys clip region always starts at (0,0) - mov [mx_SysClipX1], ax - mov [mx_SysClipY1], ax - mov ax, [Width] - dec ax - mov [mx_SysClipX2], ax - mov ax, [Height] - dec ax - mov [mx_SysClipY2], ax - - IF USE286 EQ TRUE - push FALSE - ELSE - mov ax, FALSE - push ax - ENDIF - call mxSetClip - - .pop ds - .leave ARG_SIZE -mxSetSysClipRegion ENDP - -;----------------------------------------------------------- -; -; Sets the clip region. -; -; Input: -; X, Y = coordinates of top left corner of clip region -; Width = width in pixels of clip region -; Height = height in pixels of clip region -; Output: -; none (no checking on parameters) -; -mxSetClipRegion PROC FAR - ARG Height:WORD, \ - Width:WORD, \ - Y:WORD, \ - X:WORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - .push ds - mov ds, [mx_CodeSegment] - ASSUME ds:MX_TEXT - - mov ax, [X] - mov [mx_UserClipX1], ax - mov ax, [Y] - mov [mx_UserClipY1], ax - mov ax, [Width] - add ax, [X] - dec ax - mov [mx_UserClipX2], ax - mov ax, [Height] - add ax, [Y] - dec ax - mov [mx_UserClipY2], ax - - mov al, [mx_ClipStatus] - cmp al, TRUE - jne @@Exit - push ax - call mxSetClip - -@@Exit: - xor ax, ax - .pop ds - .leave ARG_SIZE -mxSetClipRegion ENDP - -;----------------------------------------------------------- -; -; Returns the current user clip region. -; -; Input: -; X, Y = pointers to integer coordinates of top left corner -; Width = pointer to word width of clip region -; Height = pointer to word height of clip region -; Output: -; AX = current clip status -; -mxGetClipRegion PROC FAR - ARG Height:DWORD, \ - Width:DWORD, \ - Y:DWORD, \ - X:DWORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - .push es, di - - mov ax, [mx_UserClipX1] - les di, [X] - mov es:[di], ax - mov ax, [mx_UserClipY1] - les di, [Y] - mov es:[di], ax - - mov ax, [mx_UserClipX2] - sub ax, [mx_UserClipX1] - inc ax - les di, [Width] - mov es:[di], ax - mov ax, [mx_UserClipY2] - sub ax, [mx_UserClipY1] - inc ax - les di, [Height] - mov es:[di], ax - - mov al, [mx_ClipStatus] - xor ah, ah - .pop es, di - .leave ARG_SIZE -mxGetClipRegion ENDP - -;----------------------------------------------------------- -; -; Internal use: checks the coordinates of a rectangle against -; the active clip region. -; This function assumes that a "raw" image has to be clipped, -; so it returns in SI the number of "raw" bytes to skip if -; X, Y were clipped. -; -; Input: -; BX, AX = X, Y coordinates of rectangle (signed) -; CX = box width -; DX = box height -; Output: -; CF = set if rectangle is full clipped -; BX, AX = new X, Y coordinates of rectangle -; CX, DX = clipped width and height -; SI = number of bytes to skip before copying a buffer -; DI destroyed -; -subClipImage PROC NEAR - ASSUME ds:NOTHING - xor si, si - -; Check clip height - mov di, [mx_ClipY1] - cmp ax, di - jge @@CheckBottom - sub di, ax ; Number of lines to clip - sub dx, di ; New box height - jle @@Exit - mov ax, di - mov di, dx ; Save box height into DI - mul cx ; DX:AX = number of bytes to skip - mov si, ax - mov dx, di ; Restore box height - mov ax, [mx_ClipY1] -@@CheckBottom: - mov di, [mx_ClipY2] - cmp ax, di - jg @@Exit - inc di - sub di, dx - sub di, ax - jge @@DoneHeight ; None, continue - add dx, di ; Clip lines -@@DoneHeight: - -; Check clip width -@@CheckLeft: - mov di, [mx_ClipX1] - cmp bx, di - jge @@CheckRight - sub di, bx ; Number of columns to clip left - sub cx, di - jle @@Exit - add si, di ; Update skip count - mov bx, [mx_ClipX1] -@@CheckRight: - mov di, [mx_ClipX2] - cmp bx, di - jg @@Exit - inc di - sub di, bx - sub di, cx - jge @@DoneWidth ; None, exit - add cx, di ; New box width -@@DoneWidth: - -; Set return flag and exit -@@Done: - clc - ret -@@Exit: - stc - ret -subClipImage ENDP - -;----------------------------------------------------------- -; -; Internal use: checks the coordinates of a rectangle against -; the active clip region. -; -; Input: -; BX, AX = X, Y coordinates of rectangle (signed) -; CX = box width -; DX = box height -; Output: -; CF = set if rectangle is full clipped -; BX, AX = new X, Y coordinates of rectangle -; CX, DX = clipped width and height -; DI destroyed -; -subClipBox PROC NEAR - ASSUME ds:NOTHING - -; Check clip height - mov di, [mx_ClipY1] - cmp ax, di - jge @@CheckBottom - sub di, ax ; Number of lines to clip - sub dx, di ; New box height - jle @@Exit - mov ax, [mx_ClipY1] -@@CheckBottom: - mov di, [mx_ClipY2] - cmp ax, di - jg @@Exit - inc di - sub di, dx - sub di, ax ; Clipped some point? - jge @@DoneHeight ; No, continue - add dx, di ; Clip lines (DI is negative) -@@DoneHeight: - -; Check clip width -@@CheckLeft: - mov di, [mx_ClipX1] - cmp bx, di - jge @@CheckRight - sub di, bx ; Number of columns to clip left - sub cx, di - jle @@Exit - mov bx, [mx_ClipX1] -@@CheckRight: - mov di, [mx_ClipX2] - cmp bx, di - jg @@Exit - inc di - sub di, bx - sub di, cx ; Clipped some point? - jge @@DoneWidth ; No, exit - add cx, di ; New box width (DI is negative) -@@DoneWidth: - -; Set return flag and exit -@@Done: - clc - ret -@@Exit: - stc - ret -subClipBox ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxel.asm b/16/x/mxel.asm deleted file mode 100755 index 2c9dda2a..00000000 --- a/16/x/mxel.asm +++ /dev/null @@ -1,167 +0,0 @@ -;----------------------------------------------------------- -; -; MXEL.ASM - Mid-point ellipse -; Copyright (c) 1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES -INCLUDE MODEX.DEF - -PUBLIC mxEllipse - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_BytesPerLine : WORD -EXTRN mx_VideoSegment : WORD -EXTRN mx_ClipX1 : WORD -EXTRN mx_ClipY1 : WORD -EXTRN mx_ClipX2 : WORD -EXTRN mx_ClipY2 : WORD - -;----------------------------------------------------------- -; -; Draws an ellipse using the mid-point algorithm. -; -; Input: -; XC, YC = center coordinates -; A = horizontal radius -; B = vertical radius -; Color = ellipse color -; Output: -; none -; Note: -; computes only points in the first quadrant, all other -; points are obtained by symmetry. -; -mxEllipse PROC FAR - ARG Color:BYTE:2, \ - B:WORD, \ - A:WORD, \ - YC:WORD, \ - XC:WORD = ARG_SIZE - LOCAL A2:DWORD, \ - B2:DWORD, \ - CC:DWORD, \ - DD:DWORD, \ - X:DWORD, \ - Y:DWORD = AUTO_SIZE - .enter AUTO_SIZE - .push ds, si, di - - .chk386 mxEllipse, @@Exit - -; Initialize variables - xor eax, eax - mov [X], ax ; X = 0 - mov ax, [A] - mul eax ; EAX = A*A - mov [DD], eax ; DD = A*A - shl eax, 1 - mov [CC], eax ; CC = 2*A*A - shl eax, 1 - mov [A2], eax ; A2 = 4*A*A - movzx edx, [B] - mov [Y], edx - mul edx ; EAX = 4*A*A*B - sub [DD], eax ; DD = A*A - 4*A*A*B - movzx eax, [B] - mul eax ; EAX = B*B - shl eax, 2 ; EAX = 4*B*B - mov [B2], eax ; B2 = 4*B*B - add [CC], eax ; CC = 2*A*A + 4*B*B - add [D1], eax ; DD = A*A - 4*A*A*B + 4*B*B - -; Draw initial points - call subPlot4 - -; First loop -@@Loop1: - mov eax, [X] ; Check slope - mul [B2] - mov ecx, eax - mov eax, [Y] - mul [A2] - sub eax, ecx - sub eax, [CC] ; EAX = Y*A2 - X*B2 - CC - jle @@Done1 ; Crossed critical point, jump to next loop - - mov ecx, [DD] ; Get error - test ecx, ecx ; Positive? - jl @@Draw1 ; No, use default step - - mov eax, 1 - sub eax, [Y] - mul [A2] - shl eax, 1 - add ecx, eax ; Bump error - dec WORD PTR [Y] ; Decrement Y coordinate - -@@Draw1: - mov eax, [X] - shl eax, 1 - add eax, 3 - mul [B2] - add ecx, eax ; Bump error - mov [DD], ecx ; Save error - inc WORD PTR [X] ; Increment X coordinate - - call subPlot4 ; Draw points - jmp @@Loop1 -@@Done1: - -; Initialize variables - shr [B2], 2 - mov eax, [X] - mul eax - add [X] - shl eax, 2 - inc eax - mul [B2] - mov [DD], eax - mov eax, [Y] - mul eax - add [Y] - dec eax - add [Y] - sub eax, [B2] - add [DD], eax - shl [B2], 3 - inc WORD PTR [X] - -; Second loop -@@Loop2: - cmp WORD PTR [Y], 0 - ja @@Done2 - - mov ecx, [DD] - test ecx, ecx - jge @@Draw2 - - mov eax, [X] - inc eax - mul [B2] - add ecx, eax - inc WORD PTR [X] - -@@Draw2: - mov eax, [Y] - shl eax, 1 - sub eax, 3 - neg eax - imul [A2] - add ecx, eax - dec WORD PTR [Y] - - call subPlot4 - jmp @@Loop2 -@@Done2: - -@@Exit: - xor ax, ax - .leave ARG_SIZE -mxEllipse ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxfb.asm b/16/x/mxfb.asm deleted file mode 100755 index 41ea5deb..00000000 --- a/16/x/mxfb.asm +++ /dev/null @@ -1,194 +0,0 @@ -;----------------------------------------------------------- -; -; MXFB.ASM - Fill box function -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES -INCLUDE MODEX.DEF - -PUBLIC mxFillBox - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_BytesPerLine : WORD -EXTRN mx_VideoSegment : WORD -EXTRN subClipBox : NEAR -EXTRN subHorizontalLineInfo : NEAR - -;----------------------------------------------------------- -; -; Raster op functions. Raster op is limited to OP_MOVE, -; OP_AND, OP_OR and OP_XOR. The VGA hardware is used to -; perform the selected logical functions on up to four -; pixel at a time. -; -subRepFill PROC NEAR - mov ah, al - shr cx, 1 - rep stosw - rcl cx, 1 - rep stosb - ret -subRepFill ENDP -; -subFill PROC NEAR -@@Loop: - mov ds:[bx], al - add bx, dx - loop @@Loop - ret -subFill ENDP -; -subRepMove PROC NEAR - mov si, di -@@Loop: - mov ah, ds:[si] ; Dummy read to latch the data - mov ds:[si], al - inc si - loop @@Loop - ret -subRepMove ENDP -; -subMove PROC NEAR -@@Loop: - mov ah, ds:[bx] ; Dummy read to latch the data - mov ds:[bx], al - add bx, dx - loop @@Loop - ret -subMove ENDP - -;----------------------------------------------------------- -; -; Fills a rectangle with a specified color. -; -; Input: -; X, Y = X, Y coordinates of rectangle -; Width = width of rectangle -; Height = height of rectangle -; Color = fill color -; Op = raster operator -; Output: -; none -; -; Note: raster op is limited to OP_MOVE, OP_AND, OP_OR and OP_XOR. -; -mxFillBox PROC FAR - ARG Op:WORD, \ - Color:BYTE:2, \ - Height:WORD, \ - Width:WORD, \ - Y:WORD, \ - X:WORD = ARG_SIZE - LOCAL LeftMask:BYTE, \ - RightMask:BYTE, \ - FillFunction:WORD, \ - RepFillFunction:WORD = AUTO_SIZE - .enter AUTO_SIZE - .push ds, si, es, di - ASSUME ds:NOTHING - -; Clip rectangle - mov bx, [X] - mov ax, [Y] - mov cx, [Width] - mov dx, [Height] - call subClipBox - jc @@Exit ; Full clipped - - mov [Height], dx ; Save clipped height - call subHorizontalLineInfo ; Get additional info, init DI - mov [Width], cx - mov [LeftMask], al - mov [RightMask], ah - -; Initialize segments - mov ax, [mx_VideoSegment] - mov es, ax ; ES:DI points to pixel - mov ds, ax - cld ; Clear direction flag - -; Select fill functions - mov [FillFunction], OFFSET subFill - mov [RepFillFunction], OFFSET subRepFill - mov ax, [Op] ; Get raster op - cmp al, OP_XOR - ja @@1 ; Assume it's a fill - cmp al, OP_MOVE - je @@1 - .shl al, 3 - mov ah, al - mov al, 03h - mov dx, GDC - out dx, ax ; Set GDC logical function - mov [FillFunction], OFFSET subMove - mov [RepFillFunction], OFFSET subRepMove -@@1: - -; Fill left block -@@L0: - mov ah, [LeftMask] - or ah, ah - jz @@C0 ; Nothing to do, go to center block - mov dx, TS - mov al, 02h - out dx, ax ; Set write plane mask - mov dx, [mx_BytesPerLine] - mov cx, [Height] - mov bx, di - mov al, [Color] - call [FillFunction] ; Fill this column - inc di ; Update starting video offset - -; Fill center block -@@C0: - mov cx, [Width] - jcxz @@R0 ; Nothing to do, go to right block - mov dx, TS - mov ax, 0F02h - out dx, ax ; Write to all planes - mov al, [Color] - mov bx, di - mov dx, [Height] - push di ; Save pixel address -@@C1: - mov di, bx ; Update video offset - call [RepFillFunction] ; Fill current scan line - mov cx, [Width] ; Restore byte count - add bx, [mx_BytesPerLine] ; Bump to next scan line - dec dx ; Done all lines? - jnz @@C1 ; No, continue - pop di ; Restore pixel address - add di, [Width] ; Go to right block - -; Fill right block -@@R0: - mov ah, [RightMask] - or ah, ah - jz @@Done ; Nothing to do, exit - mov dx, TS - mov al, 02h - out dx, ax ; Set write plane mask - mov dx, [mx_BytesPerLine] - mov cx, [Height] - mov bx, di - mov al, [Color] - call [FillFunction] ; Fill this column - -; Restore VGA registers -@@Done: - mov dx, GDC - mov ax, 0003h - out dx, ax ; Set logical function to "move" - -@@Exit: - xor ax, ax - .pop ds, si, es, di - .leave ARG_SIZE -mxFillBox ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxfp.asm b/16/x/mxfp.asm deleted file mode 100755 index 8eea25be..00000000 --- a/16/x/mxfp.asm +++ /dev/null @@ -1,326 +0,0 @@ -;----------------------------------------------------------- -; -; MXFP.ASM - Fade palette function -; Copyright (c) 1992-1994 ARTIS s.r.l. -; Author: Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxFadePalette - -MAXCOLOR EQU 256 -FADE_IN EQU 0 -FADE_OUT EQU 1 - -; The actual speed of fading depends on the number of passes (FADE_SPEED) and -; the delay between two consecutive passes (FADE_DELAY). Below are the -; default values, used when no parameters are specified. -; -FADE_DELAY EQU 1 ; Vert. retraces between video updates -FADE_SPEED EQU 48 ; Speed of effect (max 127) - -; Bit field record for fade commands -; -FADE_COMMAND RECORD fpDELAY:8,fpSPEED:7,fpDIRECTION:1 - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -DB 'Copyright (c) 1992-1994 ARTIS s.r.l. All rights reserved.' - -;----------------------------------------------------------- -; -; Fades a VGA palette. -; -; Input: -; Buffer = pointer to source/destination palette -; Command = fading direction and optional parameters -; Start = index of first color to fade -; Count = number of color to fade -; Red = destination red -; Green = destination green -; Blue = destination blue -; Output: -; none -; Notes: -; - about 1.5 Kbytes of stack space are needed for internal buffers; -; - the Command argument usually is 0 to fade in and 1 to fade out, -; however additional parameters may be specified. To set the effect -; speed, i.e. the number of iterations needed to completely fade a -; palette, shift the value one bit left and "or" it with the -; direction bit (range is 0..127). To set the delay between two -; consecutive passes, shift it eight bits left (range is 0..255). -; -mxFadePalette PROC FAR - ARG bBlue:WORD, \ - bGreen:WORD, \ - bRed:WORD, \ - wCount:WORD, \ - wStartIdx:WORD, \ - wCommand:WORD, \ - vfpPalette:DWORD = ARG_SIZE - LOCAL bSPalette:BYTE:MAXCOLOR*3, \ - bDPalette:BYTE:MAXCOLOR*3, \ - bLoopIndex:BYTE, \ - bLoopStep:BYTE, \ - bLoopCount:BYTE, \ - wDelay:WORD, \ - wSpeed:WORD = AUTO_SIZE - ASSUME ds:NOTHING - .enter AUTO_SIZE - .push si, di, ds, es ; Save registers -; -; Check parameters and setup variables -; -@@GetDelay: - mov [wDelay], FADE_DELAY ; Set default delay - mov ax, [wCommand] ; Get command word - and ax, MASK fpDELAY ; Mask delay command - jz @@GetSpeed ; No command, get speed - IF USE286 EQ TRUE - shr ax, fpDELAY - ELSE - mov cl, fpDELAY ; Get size of delay field - shr ax, cl ; Right justify the field - ENDIF - mov [wDelay], ax ; Set new delay - -@@GetSpeed: - mov ax, [wCommand] ; Get command - and ax, MASK fpSPEED ; Mask speed - IF USE286 EQ TRUE - shr ax, fpSPEED - ELSE - mov cl, fpSPEED ; Get size of speed field - shr ax, cl ; Right justify the field - ENDIF - or ax, ax ; Any speed specified? - jnz @@SetVariables ; Yes, set variables - mov ax, FADE_SPEED ; Set default speed - -@@SetVariables: - mov [wSpeed], ax ; Set speed - inc ax ; Number of iterations - mov [bLoopCount], al ; Set loop count - mov [bLoopStep], 1 ; Assume we're fading in - mov [bLoopIndex], 0 -; -; Check bounds for bad values -; - mov ax, [wStartIdx] ; Get first index - cmp ax, MAXCOLOR ; Is in the valid range? - jae @@Exit ; No, exit - add ax, [wCount] ; Get last index - cmp ax, MAXCOLOR ; Is in the valid range? - jbe @@BoundsOk ; Yes, continue - mov ax, MAXCOLOR - sub ax, [wStartIdx] - mov [wCount], ax ; Set count to maximum value - or ax, ax - jz @@Exit ; Nothing to do, exit -@@BoundsOk: -; -; Copy the source palette in a local array: if we fade in it's ready to -; use, otherwise we'll overwrite it later -; - mov cx, [wCount] - mov ax, cx - shl ax, 1 - add cx, ax ; CX = wCount * 3 - mov ax, ss - mov es, ax - lea di, [bSPalette] ; ES:DI points to local palette - mov ax, [wStartIdx] - mov si, ax - shl ax, 1 - add ax, si - lds si, [vfpPalette] ; DS:SI points to user palette - add si, ax ; Skip unused entries - cld - shr cx, 1 - rep movsw - rcl cx, 1 - rep movsb -; -; Check direction -; - test [wCommand], MASK fpDIRECTION ; Are we fading in? - jz @@Main ; Yes, ok to continue - mov ax, [wSpeed] ; Get speed - mov [bLoopIndex], al ; Exchange first and last index - mov [bLoopStep], -1 ; Move backward - mov ax, ss ; Overwrite our copy of - mov ds, ax ; user palette with the - mov es, ax ; current active palette - lea di, [bSPalette] - mov ax, [wStartIdx] - mov cx, [wCount] - call ReadPalette ; Read current palette -; -; Prepare variables and registers for fading -; -@@Main: - mov bh, BYTE PTR [bRed] ; Destination red - and bh, 00111111b ; Be sure it's a valid VGA value - mov bl, BYTE PTR [bGreen] ; Destination green - and bl, 00111111b ; Be sure it's a valid VGA value - mov dh, BYTE PTR [bBlue] ; Destination blue - and dh, 00111111b ; Be sure it's a valid VGA value - mov dl, [bLoopIndex] ; Loop index - mov ax, ss ; All tables are stored - mov ds, ax ; in the stack segment, - mov es, ax ; set DS and ES -; -; Main loop -; -@@Loop: - mov ax, [wCount] ; Store count in AX - mov cx, [wSpeed] ; Set maximum speed in CX - lea si, [bSPalette] ; DS:SI points to source palette - lea di, [bDPalette] ; ES:DI points to dest. palette - call RecalcPalette ; Build a faded palette - - .push bx, dx ; Save registers we need - lea si, [bDPalette] ; DS:SI points to palette - mov ax, [wStartIdx] ; First index to write - mov bx, [wCount] ; Total entries to write - mov cx, [wDelay] ; Fade delay between updates - call WritePalette ; Write palette - .pop bx, dx ; Restore BX and DX - - add dl, [bLoopStep] ; Change fade intensity - dec [bLoopCount] ; Done? - jnz @@Loop ; No, loop again - -@@Exit: - .pop si, di, ds, es ; Restore registers - .leave ARG_SIZE -mxFadePalette ENDP - -;------- INTERNAL USE ONLY ------------------------------------------------ -; -; Calculates a partially faded palette. -; -; Input: -; AX = number of entries in palette -; CX = maximum fade intensity (same as fade speed) -; DS:SI = pointer to source palette -; ES:DI = pointer to destination palette -; BH = destination red -; BL = destination green -; DH = destination blue -; DL = relative intensity of destination palette -; Note: -; it's important that a new palette can be calculated in less -; than 1/70th of second. Fading to any RGB value requires use -; of "imul" instructions: "idiv" may be replaced with faster -; "sar", but only when the number of passes is a power of two, -; thus reducing the range of selectable speeds. -; In both cases an extimate of CPU cycles required by this -; procedure shows that it's too slow to run on a 4.77 Mhz 8086 -; CPU and a 256 color palette, so we keep "idiv" and hope -; the target machine to be at least a 6 Mhz 80286 (that's not -; asking too much...). -; -RecalcPalette PROC NEAR - cld - push bp ; Save BP - mov bp, ax ; Copy counter in BP -@@Loop: - lodsb ; Red: read value - sub al, bh ; Subtract destination value - imul dl ; Scale to desired weight - idiv cl ; Put value in AL - add al, bh ; Add destination value... - stosb ; ...and store it - lodsb ; Green: read value - sub al, bl ; Subtract destination value - imul dl ; Scale to desired weight - idiv cl ; Put value in AL - add al, bl ; Add destination value... - stosb ; ...and store it - lodsb ; Blue: read value - sub al, dh ; Subtract destination value - imul dl ; Scale to desired weight - idiv cl ; Put value in AL - add al, dh ; Add destination value... - stosb ; ...and store it - dec bp - jnz @@Loop - pop bp ; Restore BP - ret -RecalcPalette ENDP - -;------- INTERNAL USE ONLY ------------------------------------------------ -; -; Writes a 256 color palette. -; -; Input: -; AX = index of first color to write -; BX = number of colors to write (each color is an RGB triplet) -; CX = number of vertical retraces to wait before writing to DACs -; DS:SI = pointer to first entry of palette -; -WritePalette PROC NEAR - ASSUME ds:NOTHING - mov ah, al ; Save index - mov dx, 03DAh ; Input status register -@@Delay1: - in al, dx - test al, 08h - jnz @@Delay1 ; Wait for display mode -@@Delay2: - in al, dx - test al, 08h - jz @@Delay2 ; Wait for vertical retrace mode - loop @@Delay1 ; Repeat CX times -@@Write: - mov cx, bx ; Get number of colors - mov dx, 03C8h ; PEL write address register - mov al, ah ; Restore index - out dx, al ; Select index of first color - inc dx ; PEL data register - cld ; Move forward - cli ; Disable interrupts -@@Loop: - lodsb - out dx, al ; Red - lodsb - out dx, al ; Green - lodsb - out dx, al ; Blue - loop @@Loop ; Loop until done - sti ; Enable interrupts - ret -WritePalette ENDP - -;------- INTERNAL USE ONLY ------------------------------------------------ -; -; Reads the current palette. -; -; Input: -; AX = index of first color to read -; CX = number of colors -; ES:DI = pointer to destination buffer -; -ReadPalette PROC NEAR - mov dx, 03C7h - out dx, al - inc dx - inc dx - cld -@@Loop: - in al, dx - stosb - in al, dx - stosb - in al, dx - stosb - loop @@Loop - ret -ReadPalette ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxgc.asm b/16/x/mxgc.asm deleted file mode 100755 index 85edf7a6..00000000 --- a/16/x/mxgc.asm +++ /dev/null @@ -1,54 +0,0 @@ -;----------------------------------------------------------- -; -; MXGC.ASM - Get color function -; Copyright (c) 1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxGetColor - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -;----------------------------------------------------------- -; -; Returns the current setting of the selected DAC register. -; -; Input: -; Index = color index (0-255) -; R, G, B = byte pointers to red, green and blue -; Output: -; none -; -mxGetColor PROC FAR - ARG B:DWORD, \ - G:DWORD, \ - R:DWORD, \ - Index:WORD = ARG_SIZE - .enter 0 - .push ds, si - - mov ax, [Index] - mov dx, 3C7h ; PEL read address register - out dx, al - inc dx - inc dx - - lds si, [R] - in al, dx - mov ds:[si], al - lds si, [G] - in al, dx - mov ds:[si], al - lds si, [B] - in al, dx - mov ds:[si], al - - .pop ds, si - .leave ARG_SIZE -mxGetColor ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxgi.asm b/16/x/mxgi.asm deleted file mode 100755 index 7037d411..00000000 --- a/16/x/mxgi.asm +++ /dev/null @@ -1,132 +0,0 @@ -;----------------------------------------------------------- -; -; MXGI.ASM - Get image -; Copyright (c) 1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES -INCLUDE MODEX.DEF - -PUBLIC mxGetImage - -EXTRN subClipImage : NEAR - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_VideoSegment : WORD -EXTRN mx_BytesPerLine : WORD - -;----------------------------------------------------------- -; -; Copies an image from screen to memory. -; -; Input: -; Image = pointer to buffer for image -; X, Y = coordinates of image on screen -; Width = width of image in pixels -; Height = height of image in pixels -; Output: -; none -; -mxGetImage PROC FAR - ARG Height:WORD, \ - Width:WORD, \ - Y:WORD, \ - X:WORD, \ - Image:DWORD = ARG_SIZE - LOCAL PlaneWidth:WORD:4, \ - PixelOffset:WORD, \ - MoveFunction:WORD, \ - ReadPlane:BYTE, \ - Count:BYTE = AUTO_SIZE - ASSUME ds:NOTHING - .enter AUTO_SIZE - .push ds, si, es, di - -; Clip image - mov bx, [X] - mov ax, [Y] - mov cx, [Width] - mov dx, [Height] - call subClipImage - jc @@Exit ; Full clipped - mov [Height], dx - add WORD PTR Image[0], si ; Skip clipped pixels - -; Get pixel address - mul [mx_BytesPerLine] - mov si, bx - shr si, 1 - shr si, 1 - add si, ax - mov [PixelOffset], si - mov ds, [mx_VideoSegment] ; DS:SI points to pixel - and bl, 03h - mov [ReadPlane], bl - -; Compute extra bytes and width count for each plane - mov bx, cx - shr bx, 1 - shr bx, 1 ; Width for each plane - and cl, 03h - mov al, 00001000b - shr al, cl - mov di, 3 SHL 1 -@@PatchLoop: - mov PlaneWidth[di], bx - shr al, 1 - adc bx, 0 - dec di - dec di - jge @@PatchLoop - -; Get image - cld - mov [Count], 4 ; Four planes - lea bx, PlaneWidth ; SS:[BX] = width in bytes for plane - mov es, WORD PTR Image[2] ; ES:DI will point to image - mov ah, [ReadPlane] -@@PlaneLoop: - cmp WORD PTR ss:[bx], 0 ; Exit if nothing more to do - je @@Exit ; (also, never try to move zero bytes!) - mov di, WORD PTR Image[0] - mov al, 04h - mov dx, GDC - out dx, ax ; Select read plane - mov dx, [Height] - mov si, [PixelOffset] ; DS:SI points to video memory -@@Loop: - .push si, di - mov cx, WORD PTR ss:[bx] ; Number of bytes to move -@@MoveLoop: - movsb - add di, 3 - dec cx - jnz @@MoveLoop - .pop si, di - add di, [Width] ; Go to next image line - add si, [mx_BytesPerLine] ; Go to next screen row - dec dx - jnz @@Loop ; Repeat for all lines - inc bx - inc bx ; Select width for next plane - inc ah - test ah, 04h ; Plane wraparound? - jz @@PlaneOk ; No - inc [PixelOffset] ; Yes, bump video pointer - and ah, 03h -@@PlaneOk: - inc WORD PTR Image[0] - dec [Count] - jnz @@PlaneLoop ; Repeat for all planes - -@@Exit: - xor ax, ax - .pop ds, si, es, di - .leave ARG_SIZE -mxGetImage ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxgm.asm b/16/x/mxgm.asm deleted file mode 100755 index a67476a0..00000000 --- a/16/x/mxgm.asm +++ /dev/null @@ -1,63 +0,0 @@ -;----------------------------------------------------------- -; -; MXGM.ASM - Gamma correction -; Copyright (c) 1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxGammaCorrect - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -mx_tblGamma LABEL BYTE - DB 00, 10, 14, 17, 19, 21, 23, 24, 26, 27, 28, 29, 31, 32, 33, 34 - DB 35, 36, 37, 37, 38, 39, 40, 41, 41, 42, 43, 44, 44, 45, 46, 46 - DB 47, 48, 48, 49, 49, 50, 51, 51, 52, 52, 53, 53, 54, 54, 55, 55 - DB 56, 56, 57, 57, 58, 58, 59, 59, 60, 60, 61, 61, 62, 62, 63, 63 - -;----------------------------------------------------------- -; -; Correct palette colors (gamma is 2.3). -; -; Input: -; CPal = pointer to color palette -; GPal = pointer to destination (gamma corrected) palette -; Count = number of colors to convert -; Output: -; none -; -; Note: CPal and GPal may point to the same buffer. -; -mxGammaCorrect PROC FAR - ARG Count:WORD, \ - DPal:DWORD, \ - SPal:DWORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - .push ds, si, es, di - - mov cx, [Count] - jcxz @@Exit ; Exit now if nothing to do - lds si, [SPal] - les di, [DPal] - mov bx, OFFSET mx_tblGamma ; Setup BX for XLAT instruction - cld - mov ax, cx ; AX = Count - add cx, cx ; CX = Count*2 - add cx, ax ; CX = Count*3 -@@Loop: - lodsb - xlat mx_tblGamma - stosb - loop @@Loop - -@@Exit: - .pop ds, si, es, di - .leave ARG_SIZE -mxGammaCorrect ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxgp.asm b/16/x/mxgp.asm deleted file mode 100755 index 6c143173..00000000 --- a/16/x/mxgp.asm +++ /dev/null @@ -1,56 +0,0 @@ -;----------------------------------------------------------- -; -; MXGP.ASM - Get palette function -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxGetPalette - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -;----------------------------------------------------------- -; -; Returns the current setting of the VGA palette. -; -; Input: -; Buffer = pointer to palette data (R,G,B) -; Start = index of first color to get -; Count = number of color to get -; Output: -; none -; -mxGetPalette PROC FAR - ARG Count:WORD, \ - Start:WORD, \ - Buffer:DWORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - .push es, di - - les di, [Buffer] - mov cx, [Count] - mov ax, [Start] - mov dx, 3C7h ; PEL read address register - out dx, al - inc dx - inc dx - cld -@@Loop: - in al, dx - stosb - in al, dx - stosb - in al, dx - stosb - loop @@Loop ; Loop until done - - .pop es, di - .leave ARG_SIZE -mxGetPalette ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxgv.asm b/16/x/mxgv.asm deleted file mode 100755 index 2a54b1d0..00000000 --- a/16/x/mxgv.asm +++ /dev/null @@ -1,25 +0,0 @@ -;----------------------------------------------------------- -; -; MXGV.ASM - Get version function -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxGetVersion - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -;----------------------------------------------------------- -; -; Returns the library version. -; -mxGetVersion PROC FAR - mov ax, MXVERSION - ret -mxGetVersion ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxhl.asm b/16/x/mxhl.asm deleted file mode 100755 index 049a0566..00000000 --- a/16/x/mxhl.asm +++ /dev/null @@ -1,76 +0,0 @@ -;----------------------------------------------------------- -; -; MXHL.ASM - Horizontal line mask utility -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC subHorizontalLineInfo - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_BytesPerLine : WORD - -tblLeftSize DW 00h, 03h, 02h, 01h -tblLeftMask DB 00h, 0Eh, 0Ch, 08h -tblRightMask DB 00h, 01h, 03h, 07h -tblPatchMask DB 02h, 06h - -;----------------------------------------------------------- -; -; Prepares register for fast horizontal line drawing. -; -; Input: -; BX, AX = X, Y address of left pixel -; CX = line width -; Output: -; DI = left pixel offset in video memory -; AL = left block write plane mask (0 = none) -; AH = right block write plane mask (0 = none) -; CX = center block width in 4-pixel blocks -; -subHorizontalLineInfo PROC NEAR - ASSUME ds:NOTHING - - mul [mx_BytesPerLine] - mov di, bx - shr di, 1 - shr di, 1 - add di, ax ; Offset of left pixel - - and bx, 03h - mov al, tblLeftMask[bx] - shl bx, 1 - sub cx, tblLeftSize[bx] - jge @@1 ; Ok to continue - -; Special case: start and end in the middle of a 4-pixel block. -; There are only three cases: -; Pixels Left mask CX CX+2 Patch mask Result -; 1) ..o. ..xx -1 1 .xx. ..x. -; 2) .oo. .xxx -1 1 .xx. .xx. -; 3) .o.. .xxx -2 0 .x.. .x.. -; All other cases are automatically handled with the standard masks. - mov bx, cx - inc bx - inc bx - and al, tblPatchMask[bx] ; Combine masks - xor ah, ah ; No right block - xor cx, cx ; No center block - jmp @@Exit - -@@1: - mov bx, cx - and bx, 03h - mov ah, tblRightMask[bx] - shr cx, 2 - -@@Exit: - ret -subHorizontalLineInfo ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxit.asm b/16/x/mxit.asm deleted file mode 100755 index c0d9cedd..00000000 --- a/16/x/mxit.asm +++ /dev/null @@ -1,98 +0,0 @@ -;----------------------------------------------------------- -; -; MXIT.ASM - Initialization/termination functions -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxInit -PUBLIC mxTerm - -PUBLIC mx_VideoSegment -PUBLIC mx_CodeSegment - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -DB 'MODEX library - Copyright (c) 1992-1994 Alessandro Scotti' - -mx_VideoSegment DW 0A000h -mx_CodeSegment DW SEG MX_TEXT - -;----------------------------------------------------------- -; -; Initialization. -; -; Input: -; none -; Output: -; AX = 0 on success -; -mxInit PROC FAR - LOCAL Result:WORD, \ - VideoSeg:WORD, \ - CStoDSalias:WORD = AUTO_SIZE - ASSUME ds:NOTHING - .enter AUTO_SIZE - .push ds, si, es, di - - mov [Result], -1 ; Assume an error - mov [VideoSeg], 0A000h ; Real mode video segment - mov [CStoDSalias], cs ; Real mode data alias for CS - -; Check if running in protected mode under DPMI - mov ax, 1686h - int 2Fh - or ax, ax - jnz @@1 ; DPMI not found, continue in real mode - -; Get a data alias for CS - mov ax, 000Ah ; DMPI: create data alias - mov bx, cs - int 31h - jc @@Exit ; Exit if service failed - mov [CStoDSalias], ax ; Save data alias for CS -; Get a protected-mode selector for the video segment - mov ax, 0002h - mov bx, 0A000h ; Real mode segment of video - int 31h ; DPMI: get segment selector - jc @@Exit ; Exit if service failed - mov [VideoSeg], ax ; Save protected mode video selector - -; Initialize variables -@@1: - mov ds, [CStoDSalias] - ASSUME ds:MX_TEXT - mov [mx_CodeSegment], ds - mov ax, [VideoSeg] - mov [mx_VideoSegment], ax - -; Don't bother with VGA check for now... - - mov [Result], 0 - -@@Exit: - mov ax, [Result] - .pop ds, si, es, di - .leave -mxInit ENDP - -;----------------------------------------------------------- -; -; Termination. -; -; Input: -; none -; Output: -; always 0. -; -mxTerm PROC FAR - ASSUME ds:NOTHING - xor ax, ax - ret -mxTerm ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxll.asm b/16/x/mxll.asm deleted file mode 100755 index 34fec043..00000000 --- a/16/x/mxll.asm +++ /dev/null @@ -1,82 +0,0 @@ -;----------------------------------------------------------- -; -; MXLL.ASM - Load latches -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxLoadLatches - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_VideoSegment : WORD - -;----------------------------------------------------------- -; -; Loads the specified value into the VGA latches. -; -; Input: -; BL = value to load into latches -; Output: -; none -; Changes: -; bit mask register to FFh; -; function select register to "move"; -; write mode to 00h. -; Note: -; this is for internal use only. -; -mxLoadLatches PROC NEAR - ASSUME ds:NOTHING - - .push ds, si - mov dx, GDC - mov ax, 0FF08h - out dx, ax ; Set bit mask to FFh - mov ax, 0003h - out dx, ax ; Set function to "move" - mov ax, 0005h - out dx, ax ; Set write mode - mov ax, [mx_VideoSegment] - mov ds, ax - mov si, 0FFFFh - mov bh, 8 ; BH = write plane mask - mov cx, 3 ; CX = count = read plane -; Saves old values and force BL into latches -@@SetLoop: - mov dx, GDC - mov al, 04h - mov ah, cl - out dx, ax ; Select read plane - mov dx, TS - mov al, 02h - mov ah, bh - out dx, ax ; Select write plane - mov al, ds:[si] - push ax - mov ds:[si], bl - mov al, ds:[di] ; Force value into latch - shr bh, 1 ; Next write plane - loop @@SetLoop -; Restore previous values - mov cx, 3 - mov bh, 8 - mov dx, TS -@@ResetLoop: - mov al, 02h - mov ah, bh - out dx, ax ; Select write plane - pop ax - mov ds:[si], al - shr bh, 1 ; Next write plane - loop @@ResetLoop -; Exit - .pop ds, si - ret -mxLoadLatches ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxln.asm b/16/x/mxln.asm deleted file mode 100755 index fbc4ab94..00000000 --- a/16/x/mxln.asm +++ /dev/null @@ -1,414 +0,0 @@ -;----------------------------------------------------------- -; -; MXLN.ASM - Line function -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES -INCLUDE MODEX.DEF - -PUBLIC mxLine - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_BytesPerLine : WORD -EXTRN mx_VideoSegment : WORD - -EXTRN mx_ClipX1 : WORD -EXTRN mx_ClipY1 : WORD -EXTRN mx_ClipX2 : WORD -EXTRN mx_ClipY2 : WORD - -tblDrawFunc LABEL WORD - DW subWidthMove - DW subHeightMove - DW subWidthOp - DW subHeightOp - -;----------------------------------------------------------- -; -; Draws a line from (X1,Y1) to (X2,Y2) using the Bresenham -; algorithm. -; -; Input: -; X1, Y1 = start point -; X2, Y2 = end point -; Color = line color -; Op = raster operator -; Output: -; none -; -; Note: the end point (X2,Y2) *IS* drawed. I don't like this very much -; but clipping is much simpler. -; -mxLine PROC FAR - ARG Op:WORD, \ - Color:WORD, \ - Y2:WORD, \ - X2:WORD, \ - Y1:WORD, \ - X1:WORD = ARG_SIZE - LOCAL Width:WORD, \ - Height:WORD, \ - ErrorAdd:WORD, \ - ErrorSub:WORD, \ - DeltaX:WORD, \ - DeltaY:WORD, \ - P1:BYTE, \ - P2:BYTE, \ - WritePlane:BYTE = AUTO_SIZE - .enter AUTO_SIZE - .push ds, si, di - ASSUME ds:NOTHING - - mov ax, [X1] - mov bx, [Y1] - mov cx, [X2] - mov dx, [Y2] - call subClipLine - jc @@Exit ; Line is full clipped - -; Get width - mov si, cx - xchg ax, si ; SI = X1, AX = X2 - sub ax, si - jge @@1 -; Swap points, we want X1 < X2 - xchg si, cx ; Swap X1 and X2 - xchg bx, dx ; Swap Y1 and Y2 - neg ax -@@1: - mov [Width], ax - -; Get height - mov cx, [mx_BytesPerLine] ; We don't need X2 anymore - mov ax, dx - sub ax, bx - jge @@2 - neg cx ; Move from bottom to top - neg ax ; Get absolute value of AX -@@2: - mov [Height], ax - mov [DeltaY], cx - -; Get pixel address and write plane - mov ax, bx - mul [mx_BytesPerLine] - mov cx, si ; CX = X1 - shr si, 1 - shr si, 1 - add si, ax ; SI = pixel offset - and cl, 03h - mov ax, 1102h - shl ah, cl - mov [WritePlane], ah - mov dx, TS - out dx, ax ; Set write plane - mov ax, [mx_VideoSegment] - mov ds, ax ; DS:SI points to (X1,Y1) - -; Select the function to handle the drawing loop - xor bx, bx - mov al, BYTE PTR [Op] - cmp al, OP_MOVE - je @@3 - and al, 03h - shl al, 1 - shl al, 1 - shl al, 1 - mov ah, al - mov al, 03h - mov dx, GDC - out dx, ax ; Set logical function - inc bx - inc bx -@@3: - mov ax, [Width] - mov cx, [Height] -; Horizontal, vertical and diagonal lines are not optimized yet - cmp ax, cx - jae @@4 - inc bx -@@4: - shl bx, 1 - call tblDrawFunc[bx] - -; Reset logical function if needed - cmp BYTE PTR [Op], OP_MOVE - je @@Exit - mov ax, 0003h - mov dx, GDC - out dx, ax - -@@Exit: - xor ax, ax - .pop ds, si, di - .leave ARG_SIZE - -;----------------------------------------------------------- -; -; Checks the coordinates of a line against the active -; clip region. -; Uses a variation of the Cohen-Sutherland algorithm developed -; by Victor Duvanenko. -; -; Input: -; AX, BX = X1, Y1 -; CX, DX = X2, Y2 -; Output: -; CF = set if line is full clipped -; AX, BX = clipped X1, Y1 -; CX, DX = clipped X2, Y2 -; Note: -; destroys SI, DI -; -subClipLine PROC NEAR - mov di, ax ; Copy X1 to DI and free AX - mov si, dx ; Copy Y2 to SI and free DX -; Compute clip codes for point (X2,Y2)=(CX,SI) - xor al, al -@@P2X1: cmp cx, [mx_ClipX1] - jge @@P2X2 - or al, 1 -@@P2X2: cmp cx, [mx_ClipX2] - jle @@P2Y1 - or al, 2 -@@P2Y1: cmp si, [mx_ClipY1] - jge @@P2Y2 - or al, 4 -@@P2Y2: cmp si, [mx_ClipY2] - jle @@P2XY - or al, 8 -@@P2XY: mov [P2], al -; Compute clip codes for point (X1,Y1)=(DI,BX) - xor al, al -@@P1X1: cmp di, [mx_ClipX1] - jge @@P1X2 - or al, 1 -@@P1X2: cmp di, [mx_ClipX2] - jle @@P1Y1 - or al, 2 -@@P1Y1: cmp bx, [mx_ClipY1] - jge @@P1Y2 - or al, 4 -@@P1Y2: cmp bx, [mx_ClipY2] - jle @@P1XY - or al, 8 -@@P1XY: mov [P1], al -; Check codes for trivial cases - mov ah, [P2] - test al, ah ; Is line invisible? - jnz @@FullClip ; Yes, exit - or ah, al ; Both points clipped? - jz @@Done ; Yes, exit -; Calculate deltas - mov ax, cx - sub ax, di - mov [DeltaX], ax - mov ax, si - sub ax, bx - mov [DeltaY], ax - mov al, [P1] ; Init clipping code -; Clipping loop -@@ClipLoop: - test al, al ; Is first point clipped? - jnz @@ClipX1 ; No, continue - xchg cx, di ; Swap points... - xchg bx, si - xchg al, [P2] ; ...and codes -; Clip left: Y1 = Y1 + DeltaY*(mx_ClipX1-X1)/DeltaX -@@ClipX1: - test al, 1 - jz @@ClipX2 - mov ax, [mx_ClipX1] - sub ax, di - mov di, [mx_ClipX1] - jmp @@ClipX1X2 -; Clip right: Y1 = Y1 + DeltaY*(mx_ClipX2-X1)/DeltaX -@@ClipX2: - test al, 2 - jz @@ClipY1 - mov ax, [mx_ClipX2] - sub ax, di - mov di, [mx_ClipX2] -@@ClipX1X2: - imul [DeltaY] - idiv [DeltaX] - add bx, ax - mov al, 8 - cmp bx, [mx_ClipY2] - jg @@CheckLoop - mov al, 4 - cmp bx, [mx_ClipY1] - jl @@CheckLoop - xor al, al - jmp @@CheckLoop -; Clip top: X1 = X1 + DeltaX*(mx_ClipY1-Y1)/DeltaY -@@ClipY1: - test al, 4 - jz @@ClipY2 - mov ax, [mx_ClipY1] - sub ax, bx - mov bx, [mx_ClipY1] - jmp @@ClipY1Y2 -; Clip bottom: X1 = X1 + DeltaX*(mx_ClipY2-Y1)/DeltaY -@@ClipY2: - mov ax, [mx_ClipY2] - sub ax, bx - mov bx, [mx_ClipY2] -@@ClipY1Y2: - imul [DeltaX] - idiv [DeltaY] - add di, ax - mov al, 1 - cmp di, [mx_ClipX1] - jl @@CheckLoop - mov al, 2 - cmp di, [mx_ClipX2] - jg @@CheckLoop - xor al, al -@@CheckLoop: - mov ah, [P2] - test al, ah - jnz @@FullClip - or ah, al - jnz @@ClipLoop - -@@Done: - mov ax, di - mov dx, si - clc - ret -@@FullClip: - stc - ret -subClipLine ENDP - -; Called when Width >= Height and Op = OP_MOVE -subWidthMove PROC NEAR - mov di, ax - neg di ; Initialize error term - shl cx, 1 - mov [ErrorAdd], cx - mov cx, ax - shl ax, 1 - mov [ErrorSub], ax - mov al, 02h - mov ah, [WritePlane] - mov bl, BYTE PTR [Color] - mov dx, TS - inc cx -@@Loop: - mov ds:[si], bl - dec cx - jz @@Exit - rol ah, 1 - adc si, 0 - out dx, ax - add di, [ErrorAdd] - jl @@Loop - add si, [DeltaY] - sub di, [ErrorSub] - jmp @@Loop -@@Exit: - ret -subWidthMove ENDP - -; Called when Width < Height and Op = OP_MOVE -subHeightMove PROC NEAR - mov di, cx - neg di ; Initialize error term - shl ax, 1 - mov [ErrorAdd], ax - mov ax, cx - shl ax, 1 - mov [ErrorSub], ax - mov bl, BYTE PTR [Color] - mov ah, [WritePlane] - mov al, 02h - mov dx, TS - inc cx -@@Loop: - mov ds:[si], bl - dec cx - jz @@Exit - add si, [DeltaY] - add di, [ErrorAdd] - jl @@Loop - rol ah, 1 ; Next write plane - adc si, 0 ; Bump video offset if plane overflows - out dx, ax - sub di, [ErrorSub] ; Adjust error down - jmp @@Loop -@@Exit: - ret -subHeightMove ENDP - -; Called when Width >= Height and Op <> OP_MOVE -subWidthOp PROC NEAR - mov di, ax - neg di ; Initialize error term - shl cx, 1 - mov [ErrorAdd], cx - mov cx, ax - shl ax, 1 - mov [ErrorSub], ax - mov al, 02h - mov ah, [WritePlane] - mov bl, BYTE PTR [Color] - mov dx, TS - inc cx -@@Loop: - mov bh, ds:[si] ; Latch data - mov ds:[si], bl - dec cx - jz @@Exit - rol ah, 1 - adc si, 0 - out dx, ax - add di, [ErrorAdd] - jl @@Loop - add si, [DeltaY] - sub di, [ErrorSub] - jmp @@Loop -@@Exit: - ret -subWidthOp ENDP - -; Called when Width < Height and Op <> OP_MOVE -subHeightOp PROC NEAR - mov di, cx - neg di ; Initialize error term - shl ax, 1 - mov [ErrorAdd], ax - mov ax, cx - shl ax, 1 - mov [ErrorSub], ax - mov bl, BYTE PTR [Color] - mov ah, [WritePlane] - mov al, 02h - mov dx, TS - inc cx -@@Loop: - mov bh, ds:[si] - mov ds:[si], bl - dec cx - jz @@Exit - add si, [DeltaY] - add di, [ErrorAdd] - jl @@Loop - rol ah, 1 ; Next write plane - adc si, 0 ; Bump video offset if plane overflows - out dx, ax - sub di, [ErrorSub] ; Adjust error down - jmp @@Loop -@@Exit: - ret -subHeightOp ENDP - -mxLine ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxot.asm b/16/x/mxot.asm deleted file mode 100755 index 62547665..00000000 --- a/16/x/mxot.asm +++ /dev/null @@ -1,330 +0,0 @@ -;----------------------------------------------------------- -; -; MXOT.ASM - Text functions -; Copyright (c) 1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES ; We use the reserved name 'WIDTH' -INCLUDE MODEX.DEF - -PUBLIC mxOutChar -PUBLIC mxOutText -PUBLIC mxSetFont -PUBLIC mxSetTextColor -PUBLIC mxGetTextStep -PUBLIC mxSetTextStep - -MAX_WIDTH EQU 16 ; Must be <= 16 -MAX_HEIGHT EQU 32 - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_CodeSegment : WORD -EXTRN mxPutImage : FAR - -; Default 8x8 font -fnt_Default LABEL - INCLUDE DEFAULT.FNT - -; Table of system fonts -tbl_SystemFont LABEL WORD - DW fnt_Default, 8, 8 - -MX_MAXSYSFONT EQU ($-OFFSET tbl_SystemFont) SHR 2 - -mx_FontPtr DW OFFSET fnt_Default, SEG MX_TEXT -mx_FontWidth DW 8 ; Font width in pixels -mx_FontHeight DW 8 ; Font height in pixels -mx_FontCharSize DW 8 ; Size in bytes of a font character -mx_FontColor DW 00FFh ; Color: foreground + background*256 -mx_FontOp DW OP_MOVE ; Raster op -mx_DeltaX DW 8 ; Horizontal step -mx_DeltaY DW 0 ; Vertical step - -;----------------------------------------------------------- -; -; Sets the current font. -; -; Input: -; Font = pointer to font data -; Width = width of font character in pixels -; Height = height of font character in pixels -; Output: -; AX = 0 on success, else invalid parameters -; -; Note: when the high word of Font (i.e. the segment) is zero, the low -; word is used to select one of the system fonts. -; -mxSetFont PROC FAR - ARG Height:WORD, \ - Width:WORD, \ - Font:DWORD = ARG_SIZE - .enter 0 - .push ds - - mov ds, [mx_CodeSegment] - ASSUME ds:MX_TEXT - - mov ax, WORD PTR Font[2] ; Get font segment - test ax, ax ; Null segment? - jnz @@UserFont ; No, install user font - -; Install system font - mov ax, WORD PTR Font[0] ; Get font number - cmp ax, MX_MAXSYSFONT ; Check range - jb @@SystemFont - xor ax, ax ; Out of range, use default font -@@SystemFont: - shl ax, 1 - shl ax, 1 - mov bx, ax - mov ax, tbl_SystemFont[bx] ; Get font offset - mov WORD PTR mx_FontPtr[0], ax - mov WORD PTR mx_FontPtr[2], cs - mov al, BYTE PTR tbl_SystemFont[bx+2] - xor ah, ah - mov [mx_FontWidth], ax - mov [mx_DeltaX], ax - mov dl, BYTE PTR tbl_SystemFont[bx+3] - xor dh, dh - mov [mx_FontHeight], dx - mul dx - mov [mx_FontCharSize], ax - mov [mx_DeltaX], ax - xor ax, ax - mov [mx_DeltaY], ax - jmp @@Exit - -; Install user font -@@UserFont: - mov ax, -1 ; Assume an error - mov bx, [Width] - cmp bx, MAX_WIDTH - ja @@Exit ; Invalid character width - mov dx, [Height] - cmp dx, MAX_HEIGHT - ja @@Exit ; Invalid character height - mov [mx_FontWidth], bx - mov [mx_FontHeight], dx - mov ax, bx - add ax, 7 - .shr ax, 3 - mul dx - mov [mx_FontCharSize], ax - mov ax, WORD PTR Font[0] - mov WORD PTR mx_FontPtr[0], ax - mov ax, WORD PTR Font[2] - mov WORD PTR mx_FontPtr[2], ax - xor ax, ax - -@@Exit: - .pop ds - ASSUME ds:NOTHING - .leave ARG_SIZE -mxSetFont ENDP - -;----------------------------------------------------------- -; -; Sets the text color and raster op. -; -; Input: -; Color = text color (foreground + background*256) -; Op = raster op -; Output: -; none -; -mxSetTextColor PROC FAR - ARG Op:WORD, \ - Color:WORD = ARG_SIZE - .enter 0 - .push ds - - mov ds, [mx_CodeSegment] - ASSUME ds:MX_TEXT - - mov ax, [Color] - mov [mx_FontColor], ax - mov ax, [Op] - mov [mx_FontOp], ax - - xor ax, ax - .pop ds - ASSUME ds:NOTHING - .leave ARG_SIZE -mxSetTextColor ENDP - -;----------------------------------------------------------- -; -; Writes a character using the current font and attributes. -; -; Input: -; X, Y = video coordinates -; C = character to print -; Output: -; none -; -mxOutChar PROC FAR - ARG C:BYTE:2, \ - Y:WORD, \ - X:WORD = ARG_SIZE - LOCAL Image:BYTE:MAX_WIDTH*MAX_HEIGHT, \ - Count:WORD = AUTO_SIZE - .enter AUTO_SIZE - .push ds, si, es, di - ASSUME ds:NOTHING - -; Gets the pointer to font data for the selected character - lds si, DWORD PTR [mx_FontPtr] - mov al, [C] - xor ah, ah - mul [mx_FontCharSize] ; Offset into font - add si, ax ; DS:SI -> font data for character - -; Converts font data into a 256-color linear image - mov ax, ss - mov es, ax - lea di, [Image] - mov dx, [mx_FontColor] - mov ax, [mx_FontHeight] - mov [Count], ax -@@HeightLoop: - mov cx, [mx_FontWidth] - mov bh, ds:[si] - inc si ; Get a byte from font data - cmp cx, 8 - jbe @@WidthLoop ; Ok for width <= 8 - mov bl, ds:[si] ; Get another byte - inc si -@@WidthLoop: - mov al, dl ; Assume foreground color - shl bx, 1 ; Is font bit set? - jc @@1 ; Yes, foreground is just great - mov al, dh ; Get background color -@@1: - mov es:[di], al ; Put pixel into image - inc di - dec cx - jnz @@WidthLoop - dec [Count] - jnz @@HeightLoop - -; Now pass image to mx_PutImage - lea ax, [Image] - push es - push ax ; Pointer to image - push [X] - push [Y] ; Image coordinates - push [mx_FontWidth] - push [mx_FontHeight] ; Image size - push [mx_FontOp] ; Raster op - call mxPutImage ; Write character - - xor ax, ax - .pop ds, si, es, di - .leave ARG_SIZE -mxOutChar ENDP - -;----------------------------------------------------------- -; -; Writes a string at the coordinates specified. -; -; Input: -; X, Y = text coordinates -; S = pointer to ASCIIZ string -; Output: -; none -; -mxOutText PROC FAR - ARG S:DWORD, \ - Y:WORD, \ - X:WORD = ARG_SIZE - .enter 0 - .push ds, si - ASSUME ds:NOTHING - - lds si, [S] -@@Loop: - mov al, ds:[si] - test al, al ; End of string? - jz @@Exit ; Yes, exit - inc si - push [X] ; Display character - push [Y] - push ax - call mxOutChar - mov ax, [mx_DeltaX] - add [X], ax ; Bump X coordinate - mov ax, [mx_DeltaY] - add [Y], ax ; Bump Y coordinate - dec [Count] - jnz @@Loop - -@@Exit: - xor ax, ax - .pop ds, si - .leave ARG_SIZE - ret -mxOutText ENDP - -;----------------------------------------------------------- -; -; Sets the distance between characters. -; -; Input: -; DeltaX = horizontal distance in pixels -; DeltaY = vertical distance in pixels -; Output: -; none -; -; Note: this function may be used to set the text direction. -; -mxSetTextStep PROC FAR - ARG DeltaY:WORD, \ - DeltaX:WORD = ARG_SIZE - .enter 0 - .push ds - - mov ds, [mx_CodeSegment] - ASSUME ds:MX_TEXT - - mov ax, [DeltaX] - mov [mx_DeltaX], ax - mov ax, [DeltaY] - mov [mx_DeltaY], ax - - .pop ds - .leave ARG_SIZE -mxSetTextStep ENDP - -;----------------------------------------------------------- -; -; Gets the current distance between characters. -; -; Input: -; DeltaX = pointer to horizontal distance in pixels (integer) -; DeltaY = pointer to vertical distance in pixels (integer) -; Output: -; none -; -mxGetTextStep PROC FAR - ARG DeltaY:DWORD, \ - DeltaX:DWORD = ARG_SIZE - .enter 0 - .push ds, si - ASSUME ds:NOTHING - - mov ax, [mx_DeltaX] - lds si, [DeltaX] - mov ds:[si], ax - mov ax, [mx_DeltaY] - lds si, [DeltaY] - mov ds:[si], ax - - .pop ds, si - .leave ARG_SIZE -mxGetTextStep ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxpb.asm b/16/x/mxpb.asm deleted file mode 100755 index 8c6aa449..00000000 --- a/16/x/mxpb.asm +++ /dev/null @@ -1,22 +0,0 @@ -;----------------------------------------------------------- -; -; MXPB.ASM - Scan buffer for convex polygon fills -; Copyright (c) 1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES -INCLUDE MODEX.DEF - -PUBLIC mx_ScanBuffer - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -ALIGN 4 - -mx_ScanBuffer LABEL - DW POLYSCANBUFSIZE DUP(?) - -MX_TEXT ENDS -END diff --git a/16/x/mxpf.asm b/16/x/mxpf.asm deleted file mode 100755 index db0da898..00000000 --- a/16/x/mxpf.asm +++ /dev/null @@ -1,420 +0,0 @@ -;----------------------------------------------------------- -; -; MXPG.ASM - Convex polygon fill -; Copyright (c) 1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES -INCLUDE MODEX.DEF - -PUBLIC mxFillPoly - -;----------------------------------------------------------- -; -; "Local" definitions -; -TPOINT STRUC - X DW ? - Y DW ? -TPOINT ENDS - -; Do NOT change order! -TSCAN STRUC - Y1 DW ? - Y2 DW ? -TSCAN ENDS - -MAXSCANCOLUMNS EQU POLYSCANBUFSIZE / SIZE TSCAN - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_VideoSegment : WORD -EXTRN mx_CodeSegment : WORD -EXTRN mx_BytesPerLine : WORD -EXTRN mx_ClipX1 : WORD -EXTRN mx_ClipY1 : WORD -EXTRN mx_ClipX2 : WORD -EXTRN mx_ClipY2 : WORD -EXTRN mx_ScanBuffer : NEAR - -;----------------------------------------------------------- -; -; Scans an edge using the DDA (digital differential analyzer) algorithm. -; -; Input: -; DS:BX = pointer to start point (X1, Y1) -; DS:SI = pointer to end point (X2, Y2) -; ES:DI = pointer to edge buffer -; Output: -; ES:DI = updated pointer to edge buffer -; Notes: -; must preserve DS:SI. -; -subScan PROC NEAR - mov cx, ds:[si].X - sub cx, ds:[bx].X ; Get width - jg @@1 - ret -@@1: - push bp ; Save BP - - mov ax, ds:[si].Y - mov bx, ds:[bx].Y - sub ax, bx ; Get height - jg @@T2B ; Scan top to bottom - jl @@B2T ; Scan bottom to top - -; Special case: vertical line - mov ax, bx -@@V: - mov es:[di].Y1, ax - add di, SIZE TSCAN - dec cx - jnz @@V - jmp @@Exit - -; Scan top to bottom -@@T2B: - cwd - div cx - mov bp, ax - xor ax, ax - div cx - xchg ax, bx ; BP:BX = fixed 16:16 step - mov dx, 8000h -@@T2BLoop: - mov es:[di].Y1, ax - add di, SIZE TSCAN - add dx, bx - adc ax, bp - dec cx - jnz @@T2BLoop - jmp @@Exit - -; Scan bottom to top -@@B2T: - neg ax - cwd - div cx - mov bp, ax - xor ax, ax - div cx - xchg ax, bx - mov dx, 8000h -@@B2TLoop: - mov es:[di].Y1, ax - add di, SIZE TSCAN - sub dx, bx - sbb ax, bp - dec cx - jnz @@B2TLoop - -@@Exit: - pop bp ; Restore BP - ret -subScan ENDP - -;----------------------------------------------------------- -; -; Fills a convex polygon with the specified color. -; -; Input: -; Count = number of vertexes -; Map = indexes of points and colors (integer) -; Points = array of points (integer X, Y coordinates) -; Color = base color -; Output: -; none -; Notes: -; vertexes must be in counterclockwise order, arrays are 0-based. -; -mxFillPoly PROC FAR - ARG Color:WORD, \ - Points:DWORD, \ - Map:DWORD, \ - Count:WORD = ARG_SIZE - LOCAL WritePlane:BYTE:2, \ - ScanOffsetT:WORD, \ - ScanOffsetB:WORD, \ - ScanCount:WORD, \ - Holder:WORD, \ - Height:WORD, \ - MinIdxT:WORD, \ - MinIdxB:WORD, \ - MaxIdx:WORD, \ - Width:WORD, \ - BoxX1:WORD, \ - BoxY1:WORD, \ - BoxX2:WORD, \ - BoxY2::WORD = AUTO_SIZE - .enter AUTO_SIZE - .push ds, si, es, di - ASSUME ds:NOTHING - -; Check that at least three vertexes are specified - mov cx, [Count] - cmp cx, 3 - jb @@Exit - -;------------------------------ -; Find bounding box for polygon - les di, [Map] - lds si, [Points] ; Pointer to vertex array - mov [BoxX1], 32767 - mov [BoxX2], -32768 - mov [BoxY1], 32767 - mov [BoxY2], -32768 - - xor dx, dx -@@MinMaxLoop: - mov bx, es:[di] ; Get index of vertex - .shl bx, 2 ; Get offset in point array - add bx, si - -; Check X range -@@CheckMinX: - mov ax, ds:[bx].X ; Get X coordinate - cmp ax, [BoxX1] - jge @@CheckMaxX - mov [BoxX1], ax - mov [MinIdxT], dx - mov [MinIdxB], dx -@@CheckMaxX: - cmp ax, [BoxX2] - jle @@CheckMinY - mov [BoxX2], ax - mov [MaxIdx], dx - -; Check Y range -@@CheckMinY: - mov ax, ds:[bx].Y - cmp ax, [BoxY1] - jge @@CheckMaxY - mov [BoxY1], ax -@@CheckMaxY: - cmp ax, [BoxY2] - jle @@CheckDone - mov [BoxY2], ax - -; Repeat thru all points -@@CheckDone: - inc di ; Next map entry - inc dx - inc di - inc dx - dec cx - jnz @@MinMaxLoop - -;--------------------------------- -; Check if polygon is full clipped - mov ax, [BoxX2] - cmp ax, [mx_ClipX1] ; Is poly full clipped? - jl @@Exit - mov bx, [BoxX1] - cmp bx, [mx_ClipX2] ; Is poly full clipped? - jg @@Exit - sub ax, bx ; Get width - jle @@Exit ; Exit if not positive - mov ax, [BoxY2] - cmp ax, [mx_ClipY1] ; Is poly full clipped? - jl @@Exit - mov bx, [BoxY1] - cmp bx, [mx_ClipY2] ; Is poly full clipped? - jg @@Exit - sub ax, bx ; Get height - jle @@Exit ; Exit if not positive - - dec [Count] - shl [Count], 1 ; We'll work with word offsets - mov es, [mx_CodeSegment] - -;-------------- -; Scan top edge - mov ax, OFFSET mx_ScanBuffer - mov [ScanOffsetT], ax - mov si, [MinIdxT] ; Offset of bottom point index -@@STLoop: - lds bx, [Map] ; DS:BX -> map table - mov di, ds:[bx+si] ; Index of top point #1 - dec si ; Next point - dec si - test si, si - jnl @@ST1 - mov si, [Count] -@@ST1: - mov [MinIdxT], si ; Save new index of top point - mov si, ds:[bx+si] ; Get index of top point #2 - .shl di, 2 ; Convert indexes to offsets - .shl si, 2 - lds bx, [Points] ; DS:BX -> point array - add si, bx ; DS:SI -> top point #2 - add bx, di ; DS:BX -> top point #1 - mov di, [ScanOffsetT] - call subScan ; Scan edge - mov [ScanOffsetT], di - mov si, [MinIdxT] - cmp si, [MaxIdx] ; End of edge? - jne @@STLoop ; No, continue - -;----------------- -; Scan bottom edge - mov ax, OFFSET mx_ScanBuffer + OFFSET Y2 - mov [ScanOffsetB], ax - mov si, [MinIdxB] ; Offset of bottom point index -@@SBLoop: - lds bx, [Map] ; DS:BX -> map table - mov di, ds:[bx+si] ; Index of bottom point #1 - inc si ; Next bottom point - inc si - cmp si, [Count] - jbe @@SB1 - xor si, si -@@SB1: - mov [MinIdxB], si ; Save new index of bottom point - mov si, ds:[bx+si] ; Get index of bottom point #2 - .shl di, 2 ; Convert indexes to offsets - .shl si, 2 - lds bx, [Points] ; DS:BX -> point array - add si, bx ; DS:SI -> top point #2 - add bx, di ; DS:BX -> top point #1 - mov di, [ScanOffsetB] - call subScan ; Scan edge - mov [ScanOffsetB], di - mov si, [MinIdxB] - cmp si, [MaxIdx] ; End of edge? - jne @@SBLoop ; No, continue - -;-------------------- -; Clip left and right - mov si, OFFSET mx_ScanBuffer - mov ax, [BoxX1] - mov cx, [BoxX2] - sub cx, ax ; CX = bounding box width - mov bx, [mx_ClipX1] - sub bx, ax - jle @@ClipL1 ; No need to clip left - sub cx, bx ; Update width - add ax, bx ; BoxX1 = mx_ClipX1 - mov [BoxX1], ax - .shl bx, 2 ; Warning!!! This is an hand-coded - add si, bx ; multiply by the size of TSCAN -@@ClipL1: - mov bx, ax - add bx, cx ; Last scan column - sub bx, [mx_ClipX2] - jle @@ClipL2 ; No need to clip right - sub cx, bx ; Clip right -@@ClipL2: - test cx, cx ; Is clipped width positive? - jle @@Exit ; No, exit - mov [ScanCount], cx ; Save number of columns to draw - mov [ScanOffsetT], si ; Remember offset of (clipped) buffer - mov ds, [mx_CodeSegment] ; DS:SI -> scan buffer - -;------------------------------ -; Check if Y clipping is needed - mov ax, [BoxY1] - cmp ax, [mx_ClipY1] - jl @@ClipTB ; Need to clip top - mov ax, [BoxY2] - cmp ax, [mx_ClipY2] - jg @@ClipTB ; Need to clip bottom - jmp @@ClipYExit ; Skip Y clipping - -;-------------------- -; Clip top and bottom -@@ClipTB: - mov di, cx ; DI = scan count - inc di ; Increment count for pre-loop test - sub si, SIZE TSCAN -@@ClipYLoop: - dec di ; Any column left? - jz @@ClipYExit ; No, exit - add si, SIZE TSCAN - mov ax, ds:[si].Y1 ; Y1 - mov cx, ds:[si].Y2 ; Y2 - mov dx, [mx_ClipY2] - cmp ax, dx ; Full clipped? - jg @@ClipYClip ; Yes, skip this column - cmp cx, dx ; Need to clip bottom? - jle @@ClipY1 ; No, continue -; Clip bottom - mov ds:[si].Y2, dx - mov bx, cx - sub bx, dx ; Clip distance - sub cx, ax ; Height - jle @@ClipYClip - mov cx, ds:[si].Y2 -@@ClipY1: - mov dx, [mx_ClipY1] - cmp cx, dx ; Full top clipped? - jl @@ClipYClip ; Yes, skip - sub cx, ax ; Get height - jle @@ClipYClip ; Skip if not positive - cmp ax, dx ; Need to clip top? - jge @@ClipYLoop ; No, continue -; Clip top - mov ds:[si].Y1, dx ; Y1 = mx_ClipY1 - sub dx, ax ; DX = number of pixels clipped - cmp cx, dx - ja @@ClipYLoop ; Not clipped, continue -@@ClipYClip: - mov ds:[si].Y1, -1 ; Mark column as clipped - jmp @@ClipYLoop -@@ClipYExit: - -;------------- -; Draw columns - mov es, [mx_VideoSegment] - mov si, [ScanOffsetT] - mov cl, BYTE PTR [BoxX1] ; Init write plane - and cl, 03h - mov al, 11h - shl al, cl - mov [WritePlane], al - .shr [BoxX1], 2 -@@DrawLoop: - mov ax, ds:[si].Y1 - test ax, ax ; Was column clipped? - js @@DrawNext ; Yes, skip - mov cx, ds:[si].Y2 - sub cx, ax ; CX = height - jle @@DrawNext - mul [mx_BytesPerLine] ; Get pixel address - add ax, [BoxX1] - mov di, ax - mov ah, [WritePlane] - mov dx, TS - mov al, 02h - out dx, ax - mov ax, [Color] - mov dx, [mx_BytesPerLine] - shr cx, 1 - jnc @@FillScan - mov es:[di], al - add di, dx - jcxz @@DrawNext -@@FillScan: - mov es:[di], al - add di, dx - mov es:[di], al - add di, dx - dec cx - jnz @@FillScan -@@DrawNext: - rol [WritePlane], 1 - adc [BoxX1], 0 ; Bump pointer to video memory if needed - add si, SIZE TSCAN - dec [ScanCount] - jnz @@DrawLoop - -@@Exit: - xor ax, ax - .pop ds, si, es, di - .leave ARG_SIZE -mxFillPoly ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxpg.asm b/16/x/mxpg.asm deleted file mode 100755 index caa7cf1b..00000000 --- a/16/x/mxpg.asm +++ /dev/null @@ -1,589 +0,0 @@ -;----------------------------------------------------------- -; -; MXPG.ASM - Convex polygon fill with Gouraud shading -; Copyright (c) 1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES -INCLUDE MODEX.DEF - -PUBLIC mxGouraudPoly - -;----------------------------------------------------------- -; -; "Local" definitions -; -TPOINT STRUC - X DW ? - Y DW ? -TPOINT ENDS - -; Do NOT change order! -TSCAN STRUC - Y1 DW ? - E1 DB ? - C1 DB ? - Y2 DW ? - E2 DB ? - C2 DB ? -TSCAN ENDS - -MAXSCANCOLUMNS EQU POLYSCANBUFSIZE / SIZE TSCAN - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_VideoSegment : WORD -EXTRN mx_CodeSegment : WORD -EXTRN mx_BytesPerLine : WORD -EXTRN mx_ClipX1 : WORD -EXTRN mx_ClipY1 : WORD -EXTRN mx_ClipX2 : WORD -EXTRN mx_ClipY2 : WORD -EXTRN mx_ScanBuffer : NEAR - -;----------------------------------------------------------- -; -; Scans an edge using the DDA (digital differential analyzer) algorithm. -; Also interpolates color for shading. -; -; Input: -; DS:BX = pointer to start point (X1, Y1) -; DS:SI = pointer to end point (X2, Y2) -; ES:DI = pointer to edge buffer -; DX = start color -; AX = end color -; Output: -; ES:DI = updated pointer to edge buffer -; Notes: -; must preserve DS:SI. -; -subScan PROC NEAR - mov cx, ds:[si].X - sub cx, ds:[bx].X ; Get width - jg @@1 - ret -@@1: - push bp ; Save BP - push di ; Save scan info offset - push cx ; Save height - push ax ; Save colors - push dx - - mov ax, ds:[si].Y - mov bx, ds:[bx].Y - sub ax, bx ; Get height - jg @@T2B ; Scan top to bottom - jl @@B2T ; Scan bottom to top - -; Special case: vertical line - mov ax, bx -@@V: - mov es:[di].Y1, ax - add di, SIZE TSCAN - dec cx - jnz @@V - jmp @@GetColorInfo - -; Scan top to bottom -@@T2B: - cwd - div cx - mov bp, ax - xor ax, ax - div cx - xchg ax, bx ; BP:BX = fixed 16:16 step - mov dx, 8000h -@@T2BLoop: - mov es:[di].Y1, ax - add di, SIZE TSCAN - add dx, bx - adc ax, bp - dec cx - jnz @@T2BLoop - jmp @@GetColorInfo - -; Scan bottom to top -@@B2T: - neg ax - cwd - div cx - mov bp, ax - xor ax, ax - div cx - xchg ax, bx - mov dx, 8000h -@@B2TLoop: - mov es:[di].Y1, ax - add di, SIZE TSCAN - sub dx, bx - sbb ax, bp - dec cx - jnz @@B2TLoop - -; Now get the color info -@@GetColorInfo: - pop bx ; Restore colors - pop ax - pop cx ; Height - pop di ; ES:DI -> scan info - - sub ax, bx ; Get color range - jg @@CL2R - jl @@CR2L - -; Special case: same color - mov ah, bl - mov al, 80h -@@CV: - mov WORD PTR es:[di].E1, ax - add di, SIZE TSCAN - dec cx - jnz @@CV - jmp @@Exit - -; Scan left to right -@@CL2R: - cwd - div cx - mov bp, ax - xor ax, ax - div cx - xchg ax, bx ; BP:BX = fixed 16:16 step - mov dx, 8000h -@@CL2RLoop: - mov es:[di].C1, al - mov es:[di].E1, dh - add di, SIZE TSCAN - add dx, bx - adc ax, bp - dec cx - jnz @@CL2RLoop - jmp @@Exit - -; Scan right to left -@@CR2L: - neg ax - cwd - div cx - mov bp, ax - xor ax, ax - div cx - xchg ax, bx - mov dx, 8000h - -@@CR2LLoop: - mov es:[di].C1, al - mov es:[di].E1, dh - add di, SIZE TSCAN - sub dx, bx - sbb ax, bp - dec cx - jnz @@CR2LLoop - -@@Exit: - pop bp - ret -subScan ENDP - -;----------------------------------------------------------- -; -; Fills a scan column. -; -; Input: -; DS:SI = current TSCAN -; ES:DI = address of top pixel -; CX = number of pixels to write -; DX = base color -; Output: -; none -; -subFillScan PROC NEAR - mov ax, WORD PTR ds:[si].E2 - mov bx, WORD PTR ds:[si].E1 - cmp ah, bh - jg @@L2R ; Color increases - jl @@R2L ; Color decreases - -; Special case: color doesn't change - add ax, dx - mov dx, [mx_BytesPerLine] -@@V: - mov es:[di], ah - add di, dx - dec cx - jnz @@V - ret - -; Color increases -@@L2R: - .push bp, si - mov si, bx - add si, dx ; Relocate color - sub ax, bx - xor dx, dx - div cx - mov bp, ax ; BP = color step, integer part - xor ax, ax - div cx - mov bx, ax ; BX = color step, fractional part - mov dx, 8000h - mov ax, [mx_BytesPerLine] - xchg si, ax -@@L2RLoop: - mov es:[di], ah - add dx, bx - adc ax, bp - add di, si - dec cx - jnz @@L2RLoop - .pop bp, si - ret - -; Color decreases -@@R2L: - .push bp, si - mov si, bx - add si, dx ; Relocate color - sub ax, bx - neg ax - xor dx, dx - div cx - mov bp, ax ; BP = color step, integer part - xor ax, ax - div cx - mov bx, ax ; BX = color step, fractional part - mov dx, 8000h - mov ax, [mx_BytesPerLine] - xchg si, ax -@@R2LLoop: - mov es:[di], ah - sub dx, bx - sbb ax, bp - add di, si - dec cx - jnz @@R2LLoop - .pop bp, si - ret -subFillScan ENDP - -;----------------------------------------------------------- -; -; Fills a convex polygon with the specified color. -; Interpolates pixel colors using the Gouraud algorithm. -; -; Input: -; Count = number of vertexes -; Map = indexes of points and colors (integer) -; Points = array of points (integer X, Y coordinates) -; Colors = array of colors (integer) -; Color = base color -; Output: -; none -; Notes: -; vertexes must be in counterclockwise order, arrays are 0-based. -; -mxGouraudPoly PROC FAR - ARG Color:WORD, \ - Colors:DWORD, \ - Points:DWORD, \ - Map:DWORD, \ - Count:WORD = ARG_SIZE - LOCAL WritePlane:BYTE:2, \ - ScanOffsetT:WORD, \ - ScanOffsetB:WORD, \ - ScanCount:WORD, \ - Holder:WORD, \ - Height:WORD, \ - MinIdxT:WORD, \ - MinIdxB:WORD, \ - MaxIdx:WORD, \ - Width:WORD, \ - BoxX1:WORD, \ - BoxY1:WORD, \ - BoxX2:WORD, \ - BoxY2::WORD = AUTO_SIZE - .enter AUTO_SIZE - .push ds, si, es, di - ASSUME ds:NOTHING - -; Check that at least three vertexes are specified - mov cx, [Count] - cmp cx, 3 - jb @@Exit - -;------------------------------ -; Find bounding box for polygon - les di, [Map] - lds si, [Points] ; Pointer to vertex array - mov [BoxX1], 32767 - mov [BoxX2], -32768 - mov [BoxY1], 32767 - mov [BoxY2], -32768 - - xor dx, dx -@@MinMaxLoop: - mov bx, es:[di] ; Get index of vertex - .shl bx, 2 ; Get offset in point array - add bx, si - -; Check X range -@@CheckMinX: - mov ax, ds:[bx].X ; Get X coordinate - cmp ax, [BoxX1] - jge @@CheckMaxX - mov [BoxX1], ax - mov [MinIdxT], dx - mov [MinIdxB], dx -@@CheckMaxX: - cmp ax, [BoxX2] - jle @@CheckMinY - mov [BoxX2], ax - mov [MaxIdx], dx - -; Check Y range -@@CheckMinY: - mov ax, ds:[bx].Y - cmp ax, [BoxY1] - jge @@CheckMaxY - mov [BoxY1], ax -@@CheckMaxY: - cmp ax, [BoxY2] - jle @@CheckDone - mov [BoxY2], ax - -; Repeat thru all points -@@CheckDone: - inc di ; Next map entry - inc di - inc dx - inc dx - dec cx - jnz @@MinMaxLoop - -;--------------------------------- -; Check if polygon is full clipped - mov ax, [BoxX2] - cmp ax, [mx_ClipX1] ; Is poly full clipped? - jl @@Exit - mov bx, [BoxX1] - cmp bx, [mx_ClipX2] ; Is poly full clipped? - jg @@Exit - sub ax, bx ; Get width - jle @@Exit ; Exit if not positive - mov ax, [BoxY2] - cmp ax, [mx_ClipY1] ; Is poly full clipped? - jl @@Exit - mov bx, [BoxY1] - cmp bx, [mx_ClipY2] ; Is poly full clipped? - jg @@Exit - sub ax, bx ; Get height - jle @@Exit ; Exit if not positive - - dec [Count] - shl [Count], 1 ; We'll work with word offsets - mov es, [mx_CodeSegment] - -;-------------- -; Scan top edge - mov ax, OFFSET mx_ScanBuffer - mov [ScanOffsetT], ax - mov si, [MinIdxT] ; Offset of bottom point index -@@STLoop: - lds bx, [Map] ; DS:BX -> map table - mov di, ds:[bx+si] ; Index of top point #1 - dec si ; Next point - dec si - test si, si - jnl @@ST1 - mov si, [Count] -@@ST1: - mov [MinIdxT], si ; Save new index of top point - mov si, ds:[bx+si] ; Get index of top point #2 - lds bx, [Colors] ; Get pointer to color array - shl di, 1 ; Convert indexes to offsets - shl si, 1 - mov ax, ds:[bx+si] ; Get colors - mov dx, ds:[bx+di] - lds bx, [Points] ; DS:BX -> point array - shl si, 1 - shl di, 1 - add si, bx ; DS:SI -> top point #2 - add bx, di ; DS:BX -> top point #1 - mov di, [ScanOffsetT] - call subScan ; Scan edge - mov [ScanOffsetT], di - mov si, [MinIdxT] - cmp si, [MaxIdx] ; End of edge? - jne @@STLoop ; No, continue - -;----------------- -; Scan bottom edge - mov ax, OFFSET mx_ScanBuffer + OFFSET Y2 - mov [ScanOffsetB], ax - mov si, [MinIdxB] ; Offset of bottom point index -@@SBLoop: - lds bx, [Map] ; DS:BX -> map table - mov di, ds:[bx+si] ; Index of bottom point #1 - inc si ; Next bottom point - inc si - cmp si, [Count] - jbe @@SB1 - xor si, si -@@SB1: - mov [MinIdxB], si ; Save new index of bottom point - mov si, ds:[bx+si] ; Get index of bottom point #2 - lds bx, [Colors] ; Get pointer to color array - shl di, 1 ; Convert indexes to offsets - shl si, 1 - mov ax, ds:[bx+si] ; Get colors - mov dx, ds:[bx+di] - lds bx, [Points] ; DS:BX -> point array - shl si, 1 - shl di, 1 - add si, bx ; DS:SI -> top point #2 - add bx, di ; DS:BX -> top point #1 - mov di, [ScanOffsetB] - call subScan ; Scan edge - mov [ScanOffsetB], di - mov si, [MinIdxB] - cmp si, [MaxIdx] ; End of edge? - jne @@SBLoop ; No, continue - -;-------------------- -; Clip left and right - mov si, OFFSET mx_ScanBuffer - mov ax, [BoxX1] - mov cx, [BoxX2] - sub cx, ax ; CX = bounding box width - mov bx, [mx_ClipX1] - sub bx, ax - jle @@ClipL1 ; No need to clip left - sub cx, bx ; Update width - add ax, bx ; BoxX1 = mx_ClipX1 - mov [BoxX1], ax - .shl bx, 3 ; Warning!!! This is an hand-coded - add si, bx ; multiply by the size of TSCAN -@@ClipL1: - mov bx, ax - add bx, cx ; Last scan column - sub bx, [mx_ClipX2] - jle @@ClipL2 ; No need to clip right - sub cx, bx ; Clip right -@@ClipL2: - test cx, cx ; Is clipped width positive? - jle @@Exit ; No, exit - mov [ScanCount], cx ; Save number of columns to draw - mov [ScanOffsetT], si ; Remember offset of (clipped) buffer - mov ds, [mx_CodeSegment] ; DS:SI -> scan buffer - -;------------------------------ -; Check if Y clipping is needed - mov ax, [BoxY1] - cmp ax, [mx_ClipY1] - jl @@ClipTB ; Need to clip top - mov ax, [BoxY2] - cmp ax, [mx_ClipY2] - jg @@ClipTB ; Need to clip bottom - jmp @@ClipYExit ; Skip Y clipping - -;-------------------- -; Clip top and bottom -@@ClipTB: - mov di, cx ; DI = scan count - inc di ; Increment count for pre-loop test - sub si, SIZE TSCAN -@@ClipYLoop: - dec di ; Any column left? - jz @@ClipYExit ; No, exit - add si, SIZE TSCAN - mov ax, ds:[si].Y1 ; Y1 - mov cx, ds:[si].Y2 ; Y2 - mov dx, [mx_ClipY2] - cmp ax, dx ; Full clipped? - jg @@ClipYClip ; Yes, skip this column - cmp cx, dx ; Need to clip bottom? - jle @@ClipY1 ; No, continue -; Clip bottom, need to scale colors too - mov ds:[si].Y2, dx - mov bx, cx - sub bx, dx ; Clip distance - sub cx, ax ; Height - jle @@ClipYClip - mov ax, WORD PTR ds:[si].E1 - sub ax, WORD PTR ds:[si].E2 - imul bx - idiv cx - add WORD PTR ds:[si].E2, ax - mov ax, ds:[si].Y1 ; Restore AX and CX - mov cx, ds:[si].Y2 -@@ClipY1: - mov dx, [mx_ClipY1] - cmp cx, dx ; Full top clipped? - jl @@ClipYClip ; Yes, skip - sub cx, ax ; Get height - jle @@ClipYClip ; Skip if not positive - cmp ax, dx ; Need to clip top? - jge @@ClipYLoop ; No, continue -; Clip top, need to scale colors too - mov ds:[si].Y1, dx ; Y1 = mx_ClipY1 - sub dx, ax ; DX = number of pixels clipped - cmp cx, dx - jbe @@ClipYClip ; Full clipped, skip - mov ax, WORD PTR ds:[si].E2 - sub ax, WORD PTR ds:[si].E1 ; AX = color distance - imul dx - idiv cx - add WORD PTR ds:[si].E1, ax ; Update starting color - jmp @@ClipYLoop -@@ClipYClip: - mov ds:[si].Y1, -1 ; Mark column as clipped - jmp @@ClipYLoop -@@ClipYExit: - -;------------- -; Draw columns - mov es, [mx_VideoSegment] - mov si, [ScanOffsetT] - mov cl, BYTE PTR [BoxX1] ; Init write plane - and cl, 03h - mov al, 11h - shl al, cl - mov [WritePlane], al - .shr [BoxX1], 2 - mov ax, [Color] ; Make 8:8 fixed color - mov ah, al - xor al, al - mov [Color], ax -@@DrawLoop: - mov ax, ds:[si].Y1 - test ax, ax ; Was column clipped? - js @@DrawNext ; Yes, skip - mov cx, ds:[si].Y2 - sub cx, ax ; CX = height - jle @@DrawNext - mul [mx_BytesPerLine] ; Get pixel address - add ax, [BoxX1] - mov di, ax - mov ah, [WritePlane] - mov al, 02h - mov dx, TS - out dx, ax - mov dx, [Color] - call subFillScan -@@DrawNext: - rol [WritePlane], 1 - adc [BoxX1], 0 ; Bump pointer to video memory if needed - add si, SIZE TSCAN - dec [ScanCount] - jnz @@DrawLoop - -@@Exit: - xor ax, ax - .pop ds, si, es, di - .leave ARG_SIZE -mxGouraudPoly ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxpi.asm b/16/x/mxpi.asm deleted file mode 100755 index 9e8525f5..00000000 --- a/16/x/mxpi.asm +++ /dev/null @@ -1,267 +0,0 @@ -;----------------------------------------------------------- -; -; MXPI.ASM - Put image -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES -INCLUDE MODEX.DEF - -PUBLIC mxPutImage - -EXTRN subClipImage : NEAR - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_VideoSegment : WORD -EXTRN mx_BytesPerLine : WORD - -mxTable LABEL WORD ; Raster ops - DW subMove - DW subAnd - DW subOr - DW subXor - DW subTrans - DW subAdd - -;----------------------------------------------------------- -; -; Move functions. -; Note: loops unrolled and optimized for CX even, no check for CX = 0. -; -subMove PROC NEAR - shr cx, 1 ; Make CX even - jc @@Odd ; Special case if odd byte -@@Loop: movsb - add si, 3 - movsb - add si, 3 - dec cx - jnz @@Loop -@@Exit: ret -@@Odd: movsb - add si, 3 - jcxz @@Exit - jmp @@Loop -subMove ENDP -; -subAnd PROC NEAR - shr cx, 1 - jc @@Odd -@@Loop: mov al, ds:[si] - mov ah, ds:[si+4] - and es:[di], ax - inc di - inc di - add si, 8 - dec cx - jnz @@Loop -@@Exit: ret -@@Odd: lodsb - and es:[di], al - inc di - add si, 3 - jcxz @@Exit - jmp @@Loop -subAnd ENDP -; -subOr PROC NEAR - shr cx, 1 - jc @@Odd -@@Loop: mov al, ds:[si] - mov ah, ds:[si+4] - or es:[di], ax - inc di - inc di - add si, 8 - dec cx - jnz @@Loop -@@Exit: ret -@@Odd: lodsb - or es:[di], al - inc di - add si, 3 - jcxz @@Exit - jmp @@Loop -subOr ENDP -; -subXor PROC NEAR - shr cx, 1 - jc @@Odd -@@Loop: mov al, ds:[si] - mov ah, ds:[si+4] - xor es:[di], ax - inc di - inc di - add si, 8 - dec cx - jnz @@Loop -@@Exit: ret -@@Odd: lodsb - xor es:[di], al - inc di - add si, 3 - jcxz @@Exit - jmp @@Loop -subXor ENDP -; -subTrans PROC NEAR -@@Loop: mov al, ds:[si] - cmp al, ah - je @@Skip - mov es:[di], al -@@Skip: inc di - add si, 4 - dec cx - jnz @@Loop -@@Exit: ret -subTrans ENDP -; -subAdd PROC NEAR -@@Loop: mov al, ds:[si] - add es:[di], al - inc di - add si, 4 - dec cx - jnz @@Loop - ret -subAdd ENDP - -;----------------------------------------------------------- -; -; Copies a "raw" image from memory to screen. -; -; Input: -; Image = pointer to image -; X, Y = coordinates of destination -; Width = width of image in pixels -; Height = height of image in pixels -; Op = raster op (OP_xxx) -; Output: -; none -; -mxPutImage PROC FAR - ARG Op:WORD, \ - Height:WORD, \ - Width:WORD, \ - Y:WORD, \ - X:WORD, \ - Image:DWORD = ARG_SIZE - LOCAL PlaneWidth:WORD:4, \ - PixelOffset:WORD, \ - MoveFunction:WORD, \ - Count:BYTE, \ - ReadPlane:BYTE, \ - OpInfo:BYTE, \ - WritePlane:BYTE = AUTO_SIZE - ASSUME ds:NOTHING - .enter AUTO_SIZE - .push ds, si, es, di - -; Clip image - mov bx, [X] - mov ax, [Y] - mov cx, [Width] - mov dx, [Height] - call subClipImage - jc @@Exit ; Full clipped - mov [Height], dx - add WORD PTR Image[0], si ; Skip clipped pixels - -; Get pixel address - mul [mx_BytesPerLine] - mov di, bx - shr di, 1 - shr di, 1 - add di, ax - mov [PixelOffset], di - mov es, [mx_VideoSegment] ; ES:DI points to pixel - and bl, 03h - mov [ReadPlane], bl - -; Compute extra bytes and width count for each plane - mov bx, cx - shr bx, 1 - shr bx, 1 ; Width for each plane - and cl, 03h - mov al, 00001000b - shr al, cl - mov si, 3 SHL 1 -@@PatchLoop: - mov PlaneWidth[si], bx - shr al, 1 - adc bx, 0 - dec si - dec si - jge @@PatchLoop - -; Setup planes for output to VGA registers - mov cl, [ReadPlane] - mov al, 00010001b - shl al, cl - mov [WritePlane], al - -; Install move function - mov bx, [Op] - mov [OpInfo], bh ; Remember additional info if needed - xor bh, bh - cmp bl, OP_ADD - jbe @@SetMoveFunction - xor bl, bl -@@SetMoveFunction: - shl bx, 1 - mov ax, mxTable[bx] - mov [MoveFunction], ax - -; Put image - cld - mov [Count], 4 ; Four planes - lea bx, PlaneWidth ; SS:[BX] = width in bytes for plane - mov ds, WORD PTR Image[2] -@@PlaneLoop: - cmp WORD PTR ss:[bx], 0 ; Exit if nothing more to do - je @@Exit ; (also, never try to move zero bytes!) - mov si, WORD PTR Image[0] - mov ah, [WritePlane] - and ah, 0Fh - mov al, 02h - mov dx, TS - out dx, ax ; Select write plane - mov ah, [ReadPlane] - and ah, 03h - mov al, 04h - mov dx, GDC - out dx, ax ; Select read plane - mov dx, [Height] - mov di, [PixelOffset] -@@Loop: - push si - push di - mov cx, WORD PTR ss:[bx] ; Number of bytes to move - mov ah, [OpInfo] ; Transparent color for subTrans - call [MoveFunction] - pop di - pop si - add si, [Width] ; Go to next image line - add di, [mx_BytesPerLine] ; Go to next screen row - dec dx - jnz @@Loop ; Repeat for all lines - inc bx - inc bx ; Select width for next plane - inc [ReadPlane] - rol [WritePlane], 1 - adc [PixelOffset], 0 - inc WORD PTR Image[0] - dec [Count] - jnz @@PlaneLoop ; Repeat for all planes - -@@Exit: - xor ax, ax - .pop ds, si, es, di - .leave ARG_SIZE -mxPutImage ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxpn.asm b/16/x/mxpn.asm deleted file mode 100755 index eaaf61b4..00000000 --- a/16/x/mxpn.asm +++ /dev/null @@ -1,60 +0,0 @@ -;----------------------------------------------------------- -; -; MXPN.ASM - Panning function -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxPan - -EXTRN mxWaitDisplay : FAR -EXTRN mxStartAddress : FAR - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_BytesPerLine : WORD - -;----------------------------------------------------------- -; -; Moves the screen. -; -; Input: -; X, Y = new X, Y coordinates of view screen -; Output: -; none -; -mxPan PROC FAR - ARG Y:WORD, \ - X:WORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - - mov ax, [Y] - mul [mx_BytesPerLine] - mov dx, [X] - shr dx, 1 - shr dx, 1 - add ax, dx - push ax ; Push the start address - call mxWaitDisplay - call mxStartAddress - - mov dx, 03DAh ; Set the pixel pan register - in al, dx - mov dx, 03C0h - mov al, 33h - out dx, al - mov al, BYTE PTR [X] - and al, 3 - shl al, 1 - out dx, al - - xor ax, ax - .leave ARG_SIZE -mxPan ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxpp.asm b/16/x/mxpp.asm deleted file mode 100755 index fc1755a3..00000000 --- a/16/x/mxpp.asm +++ /dev/null @@ -1,121 +0,0 @@ -;----------------------------------------------------------- -; -; MXPP.ASM - Get/put pixel functions -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxGetPixel -PUBLIC mxPutPixel - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_BytesPerLine : WORD -EXTRN mx_VideoSegment : WORD -EXTRN mx_ClipX1 : WORD -EXTRN mx_ClipY1 : WORD -EXTRN mx_ClipX2 : WORD -EXTRN mx_ClipY2 : WORD - -;----------------------------------------------------------- -; -; Gets a pixel. -; -; Input: -; X, Y = pixel coordinates -; Output: -; pixel color -; -mxGetPixel PROC FAR - ARG Y:WORD, \ - X:WORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - .push ds, si - - xor ax, ax - mov si, [X] - cmp si, [mx_ClipX1] - jl @@Exit - cmp si, [mx_ClipX2] - jg @@Exit - mov bx, [Y] - cmp bx, [mx_ClipY1] - jl @@Exit - cmp bx, [mx_ClipY2] - jg @@Exit - - mov al, 04h ; Set read plane - mov ah, BYTE PTR [X] - and ah, 3 - mov dx, GDC - out dx, ax - - mov ds, [mx_VideoSegment] - mov ax, bx - mul [mx_BytesPerLine] - .shr si, 2 - add si, ax - - mov al, ds:[si] ; Get pixel value - xor ah, ah - -@@Exit: - .pop ds, si - .leave ARG_SIZE -mxGetPixel ENDP - -;----------------------------------------------------------- -; -; Puts a pixel of the specified color. -; -; Input: -; X, Y = pixel coordinates -; Color = pixel color -; Output: -; none -; -mxPutPixel PROC FAR - ARG Color:BYTE:2, \ - Y:WORD, \ - X:WORD = ARG_SIZE - .enter 0 - .push ds, si - - mov si, [X] - cmp si, [mx_ClipX1] - jl @@Exit - cmp si, [mx_ClipX2] - jg @@Exit - mov ax, [Y] - cmp ax, [mx_ClipY1] - jl @@Exit - cmp ax, [mx_ClipY2] - jg @@Exit - - mov ds, [mx_VideoSegment] - mul [mx_BytesPerLine] - .shr si, 2 - add si, ax - - mov cl, BYTE PTR [X] ; Set write plane - and cl, 3 - mov ax, 0102h - shl ah, cl - mov dx, TS - out dx, ax - - mov al, [Color] ; Write pixel - mov ds:[si], al - -@@Exit: - xor ax, ax - .pop ds, si - .leave ARG_SIZE -mxPutPixel ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxra.asm b/16/x/mxra.asm deleted file mode 100755 index dd8e6839..00000000 --- a/16/x/mxra.asm +++ /dev/null @@ -1,37 +0,0 @@ -;----------------------------------------------------------- -; -; MXRA.ASM - Row address -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxRowAddress - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -;----------------------------------------------------------- -; -; Sets the row address register. -; -; Input: -; RowAddress = row size in words -; Output: -; none -; -mxRowAddress PROC FAR - ARG RowAddress:BYTE:2 = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - mov dx, CRTC - mov al, 13h - mov ah, [RowAddress] - out dx, ax - xor ax, ax - .leave ARG_SIZE -mxRowAddress ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxrp.asm b/16/x/mxrp.asm deleted file mode 100755 index de820c16..00000000 --- a/16/x/mxrp.asm +++ /dev/null @@ -1,101 +0,0 @@ -;----------------------------------------------------------- -; -; MXRP.ASM - Rotate palette function -; Copyright (c) 1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxRotatePalette - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -;----------------------------------------------------------- -; -; Rotates the palette of the specified number of colors. -; -; Input: -; Palette = pointer to palette -; Count = number of colors to rotate -; Step = step size -; Output: -; none -; -; Note: if Step is positive palette is rotated left to right, otherwise -; right to left. -; -mxRotatePalette PROC FAR - ARG Step:WORD, \ - Count:WORD, \ - Palette:DWORD = ARG_SIZE - LOCAL Holder:BYTE:768 = AUTO_SIZE - ASSUME ds:NOTHING - .enter AUTO_SIZE - .push ds, si, es, di - - mov bx, [Count] - add bx, bx - add bx, [Count] ; BX = Count*3 - - lds si, [Palette] ; DS:SI -> palette - push ss - pop es - lea di, Holder ; ES:DI -> local space - cld - - mov ax, [Step] - mov dx, ax - test ax, ax - jz @@Exit ; Nothing to do, exit - jl @@RightToLeft - -@@LeftToRight: - add ax, ax - add dx, ax ; DX = Step*3 - sub bx, dx ; BX = (Count-Step)*3 - add si, bx - push si - mov cx, dx - rep movsb - mov es, WORD PTR Palette[2] - mov di, si - dec di ; ES:DI -> last byte of palette - pop si - dec si - mov cx, bx - std - rep movsb - push ss - pop ds - lea si, Holder - les di, [Palette] - mov cx, dx - cld - rep movsb - jmp @@Exit - -@@RightToLeft: - add ax, ax - add dx, ax - neg dx ; DX = Step*3 - sub bx, dx ; BX = (Count-Step)*3 - mov cx, dx - rep movsb - les di, [Palette] - mov cx, bx - rep movsb - push ss - pop ds - lea si, Holder - mov cx, dx - rep movsb - -@@Exit: - .pop ds, si, es, di - .leave ARG_SIZE -mxRotatePalette ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxsa.asm b/16/x/mxsa.asm deleted file mode 100755 index 3ebae67d..00000000 --- a/16/x/mxsa.asm +++ /dev/null @@ -1,44 +0,0 @@ -;----------------------------------------------------------- -; -; MXSA.ASM - Start address function -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxStartAddress - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -;----------------------------------------------------------- -; -; Modifies the starting address of video memory. -; -; Input: -; StartAddr = new start address of video memory -; Output: -; none -; -mxStartAddress PROC FAR - ARG StartAddr:WORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - - mov bx, [StartAddr] - mov dx, CRTC - mov al, 0Ch ; Linear Starting Address high - mov ah, bh - cli - out dx, ax - mov al, 0Dh ; Linear Starting Address low - mov ah, bl - out dx, ax - sti - - .leave ARG_SIZE -mxStartAddress ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxsc.asm b/16/x/mxsc.asm deleted file mode 100755 index bcae45e6..00000000 --- a/16/x/mxsc.asm +++ /dev/null @@ -1,50 +0,0 @@ -;----------------------------------------------------------- -; -; MXSC.ASM - Set color function -; Copyright (c) 1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxSetColor - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -;----------------------------------------------------------- -; -; Updates the selected DAC register. -; -; Input: -; Index = index of color to set -; R, G, B = color components -; Output: -; none -; -mxSetColor PROC FAR - ARG B:BYTE:2, \ - G:BYTE:2, \ - R:BYTE:2, \ - Index:WORD = ARG_SIZE - .enter 0 - .push ds, si - - mov ax, [Index] - mov dx, 3C8h ; PEL write address register - out dx, al - inc dx - - mov al, [R] - out dx, al - mov al, [G] - out dx, al - mov al, [B] - out dx, al - - .pop ds, si - .leave ARG_SIZE -mxSetColor ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxsi.asm b/16/x/mxsi.asm deleted file mode 100755 index b88d3b11..00000000 --- a/16/x/mxsi.asm +++ /dev/null @@ -1,317 +0,0 @@ -;----------------------------------------------------------- -; -; MXPI.ASM - Stretch image -; Copyright (c) 1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES -INCLUDE MODEX.DEF - -PUBLIC mxStretchImage - -EXTRN subClipBox : NEAR - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_VideoSegment : WORD -EXTRN mx_BytesPerLine : WORD - -mxTable LABEL WORD ; Raster ops - DW subMove - DW subAnd - DW subOr - DW subXor - DW subTrans - DW subAdd - -;----------------------------------------------------------- -; -; Stretches and copies a "raw" image from memory to screen. -; -; Input: -; Image = pointer to image -; X, Y = coordinates of destination -; Width = width of image in pixels -; Height = height of image in pixels -; NewWidth = new width of image in pixels -; NewHeight = new height of image in pixels -; Op = raster op (OP_xxx) -; Output: -; none -; -mxStretchImage PROC FAR - ARG Op:WORD, \ - NewHeight:WORD, \ - NewWidth:WORD, \ - Height:WORD, \ - Width:WORD, \ - Y:WORD, \ - X:WORD, \ - Image:DWORD = ARG_SIZE - LOCAL PixelOffset:WORD, \ - MoveFunction:WORD, \ - ReadPlane:BYTE, \ - OpInfo:BYTE, \ - WidthStep:DWORD, \ - HeightStep:DWORD, \ - ImageLo:WORD, \ - WritePlane:BYTE = AUTO_SIZE - ASSUME ds:NOTHING - .enter AUTO_SIZE - .push ds, si, es, di - -; Get width stretch factor - IF USE386 EQ TRUE - movzx edx, [Width] - xor eax, eax - movzx ebx, [NewWidth] - shl ebx, 16 - idiv ebx - mov [WidthStep], eax - ELSE - xor dx, dx ; Width stretch factor - mov ax, [Width] - mov bx, [NewWidth] - div bx - mov WORD PTR WidthStep[2], ax - xor ax, ax - div bx - mov WORD PTR WidthStep[0], ax - ENDIF -; Get height stretch factor - IF USE386 EQ TRUE - movzx edx, [Height] - xor eax, eax - movzx ebx, [NewHeight] - shl ebx, 16 - idiv ebx - mov [HeightStep], eax - ELSE - xor dx, dx - mov ax, [Height] - mov bx, [NewHeight] - div bx - mov WORD PTR HeightStep[2], ax - xor ax, ax - div bx - mov WORD PTR HeightStep[0], ax - ENDIF - -; Clip image - mov bx, [X] - mov ax, [Y] - mov cx, [NewWidth] - mov dx, [NewHeight] - call subClipBox - jc @@Exit ; Full clipped - mov [NewWidth], cx - mov [NewHeight], dx - sub [X], bx - sub [Y], ax - -; Get pixel address - mul [mx_BytesPerLine] - mov di, bx - shr di, 1 - shr di, 1 - add di, ax - mov [PixelOffset], di - mov es, [mx_VideoSegment] ; ES:DI points to pixel - and bl, 03h - mov [ReadPlane], bl ; Set read plane - mov cl, bl - mov al, 00010001b - shl al, cl - mov [WritePlane], al ; Set write plane - -; Relocate image origin if previously clipped - mov ax, [Y] - test ax, ax - jz @@OriginYDone - IF USE386 EQ TRUE - shl eax, 16 - imul [HeightStep] - mov ax, [Width] - mul dx - ELSE - mov bx, ax - mul WORD PTR HeightStep[0] - mov cx, dx - mov ax, bx - mul WORD PTR HeightStep[2] - add ax, cx - mul [Width] - ENDIF - add WORD PTR [Image], ax -@@OriginYDone: - mov ax, [X] - test ax, ax - jz @@OriginXDone - IF USE386 EQ TRUE - shl eax, 16 - imul [WidthStep] - add WORD PTR [Image], dx - ELSE - mov bx, ax - mul WORD PTR WidthStep[0] - mov cx, dx - mov ax, bx - mul WORD PTR WidthStep[2] - add ax, cx - add WORD PTR [Image], ax - ENDIF -@@OriginXDone: - mov ax, WORD PTR HeightStep[2] - mul [Width] - mov WORD PTR HeightStep[2], ax - -; Install move function - mov bx, [Op] - mov [OpInfo], bh ; Remember additional info if needed - xor bh, bh - cmp bl, OP_ADD - jbe @@SetMoveFunction - xor bl, bl -@@SetMoveFunction: - shl bx, 1 - mov ax, mxTable[bx] - mov [MoveFunction], ax - -; Put image - mov ds, WORD PTR Image[2] - xor ax, ax - mov [ImageLo], ax -@@Loop: - mov si, WORD PTR Image[0] ; Get pointer to image - mov ah, [WritePlane] - and ah, 0Fh - mov al, 02h - mov dx, TS - out dx, ax ; Select write plane - mov ah, [ReadPlane] - and ah, 03h - mov al, 04h - mov dx, GDC - out dx, ax ; Select read plane - mov cx, [NewHeight] - mov di, [PixelOffset] ; ES:DI points to video memory - mov ah, [OpInfo] ; Additional raster op info - xor bx, bx - mov dx, [mx_BytesPerLine] - call [MoveFunction] ; Draw column - inc [ReadPlane] ; Next read plane - rol [WritePlane], 1 ; Next write plane - adc [PixelOffset], 0 ; Update video offset if needed - mov dx, WORD PTR WidthStep[0] - mov ax, WORD PTR WidthStep[2] - add [ImageLo], dx - adc WORD PTR Image[0], ax ; Next image column - dec [NewWidth] - jnz @@Loop ; Repeat for all columns - -@@Exit: - xor ax, ax - .pop ds, si, es, di - .leave ARG_SIZE - -;----------------------------------------------------------- -; -; Move functions, on entry: -; AH = additional raster op info (e.g. transparent color) -; BX = 0, -; CX = pixel count, -; DX = mx_BytesPerLine. -; -subMove PROC NEAR -@@Loop: mov al, ds:[si] - mov es:[di], al - add di, dx - dec cx - jz @@Exit - add si, WORD PTR HeightStep[2] - add bx, WORD PTR HeightStep[0] - jnc @@Loop - add si, [Width] - jmp @@Loop -@@Exit: ret -subMove ENDP -; -subAnd PROC NEAR -@@Loop: mov al, ds:[si] - and es:[di], al - add di, dx - dec cx - jz @@Exit - add si, WORD PTR HeightStep[2] - add bx, WORD PTR HeightStep[0] - jnc @@Loop - add si, [Width] - jmp @@Loop -@@Exit: ret -subAnd ENDP -; -subOr PROC NEAR -@@Loop: mov al, ds:[si] - or es:[di], al - add di, dx - dec cx - jz @@Exit - add si, WORD PTR HeightStep[2] - add bx, WORD PTR HeightStep[0] - jnc @@Loop - add si, [Width] - jmp @@Loop -@@Exit: ret -subOr ENDP -; -subXor PROC NEAR -@@Loop: mov al, ds:[si] - xor es:[di], al - add di, dx - dec cx - jz @@Exit - add si, WORD PTR HeightStep[2] - add bx, WORD PTR HeightStep[0] - jnc @@Loop - add si, [Width] - jmp @@Loop -@@Exit: ret -subXor ENDP -; -subTrans PROC NEAR -@@Loop: mov al, ds:[si] - cmp al, ah - je @@Skip - mov es:[di], al -@@Skip: - add di, dx - dec cx - jz @@Exit - add si, WORD PTR HeightStep[2] - add bx, WORD PTR HeightStep[0] - jnc @@Loop - add si, [Width] - jmp @@Loop -@@Exit: ret -subTrans ENDP -; -subAdd PROC NEAR -@@Loop: mov al, ds:[si] - add es:[di], al - add di, dx - dec cx - jz @@Exit - add si, WORD PTR HeightStep[2] - add bx, WORD PTR HeightStep[0] - jnc @@Loop - add si, [Width] - jmp @@Loop -@@Exit: ret -subAdd ENDP - -mxStretchImage ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxsl.asm b/16/x/mxsl.asm deleted file mode 100755 index d7908855..00000000 --- a/16/x/mxsl.asm +++ /dev/null @@ -1,62 +0,0 @@ -;----------------------------------------------------------- -; -; MXLN.ASM - Start line function -; Copyright (c) 1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES -INCLUDE MODEX.DEF - -PUBLIC mxStartLine - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_BytesPerLine : WORD - -;----------------------------------------------------------- -; -; Changes the video start address to the specified line. -; -; Input: -; Line = new start line -; Output: -; none -; -mxStartLine PROC FAR - ARG Line:WORD = ARG_SIZE - .enter 0 - ASSUME ds:NOTHING - - mov ax, [Line] ; Get video offset - mul [mx_BytesPerLine] - xchg ax, bx ; Copy it into BX - -; Wait display - mov dx, STATUS -@@1: in al, dx - test al, 08h - jnz @@1 - -; Set starting address - mov dx, CRTC - mov al, 0Ch ; Linear Starting Address high - mov ah, bh - cli - out dx, ax - mov al, 0Dh ; Linear Starting Address low - mov ah, bl - out dx, ax - sti - -; Wait retrace - mov dx, STATUS -@@2: in al,dx - test al, 08h - jz @@2 - - xor ax, ax - .leave ARG_SIZE -MX_TEXT ENDS -END diff --git a/16/x/mxsm.asm b/16/x/mxsm.asm deleted file mode 100755 index 183fba1e..00000000 --- a/16/x/mxsm.asm +++ /dev/null @@ -1,508 +0,0 @@ -;----------------------------------------------------------- -; -; MXSM.ASM - Set/change mode functions -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxChangeMode -PUBLIC mxGetAspect -PUBLIC mxGetScreenSize -PUBLIC mxSetMode - -PUBLIC mx_ScreenWidth -PUBLIC mx_ScreenHeight -PUBLIC mx_BytesPerLine - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mxSetSysClipRegion : FAR - -EXTRN mx_VideoSegment : WORD -EXTRN mx_CodeSegment : WORD - -mx_ScreenWidth DW ? ; Current screen width -mx_ScreenHeight DW ? -mx_AspectX DW ? ; Aspect ratio for current mode -mx_AspectY DW ? -mx_BytesPerLine DW 0 ; Bytes per line - -; -; Tables for setting video modes, sources: -; - MODEX.ASM, Matt Pritchard -; - Dr. Dobb's Journal, Michael Abrash -; - Fractint VIDEO.ASM module -; -TBL_SingleLine LABEL WORD ; CRTC - DW 04009h ; Cell height: 1 scan line - DW 00014h ; Double word mode off - DW 0E317h ; Byte mode on - DW 0 -TBL_DoubleLine LABEL WORD ; CRTC - DW 04109h ; Cell height: 2 scan lines - DW 00014h - DW 0E317h - DW 0 -TBL_Width320 LABEL WORD ; CRTC - DW 05F00h ; Horizontal total - DW 04F01h ; Horizontal displayed - DW 05002h ; Start horizontal blanking - DW 08203h ; End horizontal blanking - DW 05404h ; Start horizontal sync - DW 08005h ; End horizontal sync - DW 02813h ; Row address - DW 0 -TBL_Width360 LABEL WORD ; CRTC - DW 06B00h ; Horizontal total - DW 05901h ; Horizontal displayed - DW 05A02h ; Start horizontal blanking - DW 08E03h ; End horizontal blanking - DW 05E04h ; Start horizontal sync - DW 08A05h ; End horizontal sync - DW 02D13h ; Row address - DW 0 -TBL_Height175 LABEL WORD ; CRTC - DW 0BF06h ; Vertical total - DW 01F07h ; Overflow - DW 08310h ; Start vertical sync - DW 08511h ; End vertical sync - DW 05D12h ; Vertical displayed - DW 06315h ; Start vertical blanking - DW 0BA16h ; End vertical blanking - DW 0 -TBL_Height200 LABEL WORD ; CRTC - DW 0BF06h ; Vertical total - DW 01F07h ; Overflow - DW 09C10h ; Start vertical sync - DW 08E11h ; End vertical sync - DW 08F12h ; Vertical displayed - DW 09615h ; Start vertical blanking - DW 0B916h ; End vertical blanking - DW 0 -TBL_Height240 LABEL WORD ; CRTC - DW 00D06h ; Vertical total - DW 03E07h ; Overflow - DW 0EA10h ; Start vertical sync - DW 08C11h ; End vertical sync - DW 0DF12h ; Vertical displayed - DW 0E715h ; Start vertical blanking - DW 00616h ; End vertical blanking - DW 0 -TBL_Tweak400x600: - DW 07400h - DW 06301h - DW 06402h - DW 09703h - DW 06804h - DW 09505h - DW 08606h - DW 0F007h - DW 06009h - DW 0310Fh - DW 05B10h - DW 08D11h - DW 05712h - DW 03213h - DW 00014h - DW 06015h - DW 08016h - DW 0E317h - DW 0 - -TBL_320x200: - DB 63h ; 400 scan lines, 25 MHz clock - DW 6, 5 ; Aspect: 6/5 = 1.2:1 - DW 320, 200 ; Size - DW TBL_Width320, TBL_Height200, TBL_DoubleLine, 0 - DW 819 ; Max height -TBL_320x240: - DB 0E3h ; 400 scan lines, 25 MHz clock - DW 1, 1 ; Aspect: 1/1 = 1:1 - DW 320, 240 ; Size - DW TBL_Width320, TBL_Height240, TBL_DoubleLine, 0 - DW 819 ; Max height -TBL_320x400: - DB 63h ; 480 scan lines, 25 MHz clock - DW 6, 10 ; Aspect: 6/10 = 0.6:1 - DW 320, 400 ; Size - DW TBL_Width320, TBL_Height200, TBL_SingleLine, 0 - DW 819 ; Max height -TBL_320x480: - DB 0E3h ; 480 scan lines, 25 MHz clock - DW 1, 2 ; Aspect: 1/2 = 0.5:1 - DW 320, 480 ; Size - DW TBL_Width320, TBL_Height240, TBL_SingleLine, 0 - DW 819 ; Max height -TBL_360x200: - DB 067h ; 400 scan lines, 28 MHz clock - DW 27, 20 ; Aspect: 27/20 = 1.35:1 - DW 360, 200 ; Size - DW TBL_Width360, TBL_Height200, TBL_DoubleLine, 0 - DW 728 ; Max height -TBL_360x240: - DB 0E7h ; 480 scan lines, 28 MHz clock - DW 9, 8 ; Aspect: 9/8 = 1.125:1 - DW 360, 240 ; Size - DW TBL_Width360, TBL_Height240, TBL_DoubleLine, 0 - DW 728 ; Max height -TBL_360x400: - DB 067h ; 400 scan lines, 28 MHz clock - DW 27, 40 ; Aspect: 27/40 = 0.675:1 - DW 360, 400 ; Size - DW TBL_Width360, TBL_Height200, TBL_SingleLine, 0 - DW 728 ; Max height -TBL_360x480: - DB 0E7h ; 480 scan lines, 28 MHz clock - DW 9, 16 ; Aspect: 9/16 = 0.5625:1 - DW 360, 480 ; Size - DW TBL_Width360, TBL_Height240, TBL_SingleLine, 0 - DW 728 ; Max height -TBL_320x175: - DB 0A3h - DW 0, 0 ; Aspect: - DW 320, 175 - DW TBL_Width320, TBL_Height175, TBL_DoubleLine, 0 - DW 819 -TBL_320x350: - DB 0A3h - DW 0, 0 ; Aspect: - DW 320, 175 - DW TBL_Width320, TBL_Height175, TBL_SingleLine, 0 - DW 819 -TBL_360x175: - DB 0A7h - DW 0, 0 ; Aspect: - DW 360, 480 ; Size - DW TBL_Width360, TBL_Height175, TBL_DoubleLine, 0 - DW 728 ; Max height -TBL_360x350: - DB 0A7h - DW 0, 0 ; Aspect: - DW 360, 480 ; Size - DW TBL_Width360, TBL_Height175, TBL_SingleLine, 0 - DW 728 ; Max height -TBL_400x600: - DB 0E7h ; 28 MHz clock - DW 1, 2 ; Aspect: 1/2 = 0.5:1 - DW 400, 600 ; Size - DW TBL_Tweak400x600, 0 - DW 655 ; Max height - -TBL_Mode LABEL WORD - DW TBL_320x175 - DW TBL_320x200 - DW TBL_320x240 - DW TBL_320x350 - DW TBL_320x400 - DW TBL_320x480 - DW TBL_360x175 - DW TBL_360x200 - DW TBL_360x240 - DW TBL_360x350 - DW TBL_360x400 - DW TBL_360x480 - DW TBL_400x600 - -MAXVMODE EQU ($-OFFSET TBL_Mode) / 2 - -;----------------------------------------------------------- -; -; Enables 80x25 color text mode -; -subText PROC NEAR - ASSUME ds:MX_TEXT - mov ax, 0003h - int 10h ; Call BIOS set mode - - mov [mx_ScreenHeight], 0 - mov [mx_BytesPerLine], 0 - ret -subText ENDP - -;----------------------------------------------------------- -; -; Enables the selected graphics mode. -; -; Input: -; Mode = mode to select (MX_???x???) -; Output: -; none -; -mxSetMode PROC FAR - ARG Mode:WORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - .push ds, si, es, di - -; Set DS to code segment alias - mov ds, [mx_CodeSegment] - ASSUME ds:MX_TEXT - - mov si, [Mode] - cmp si, MAXVMODE ; Is it a valid mode? - ja @@Exit ; No, exit - test si, si ; Text mode? - jnz @@Set ; No, handle it - - call subText ; Back to text mode - jmp @@Exit ; Exit now - -; Set video mode -@@Set: - dec si ; Skip text mode - shl si, 1 - mov si, TBL_Mode[si] - cld - -; Use BIOS to set 320x200x256 linear mode - push si ; Save SI - mov ax, 0013h - int 10h ; Use BIOS to set 320x200 linear mode - pop si ; Restore SI - - mov dx, TS - mov ax, 0604h - out dx, ax ; Disable chain-4 mode - mov ax, 0100h - out dx, ax ; Reset - mov dx, MISC - lodsb - out dx, al ; New timing/size - mov dx, TS - mov ax, 0300h - out dx, ax ; Restart sequencer - -; Unlock CRTC registers 0-7 - mov dx, CRTC - mov al, 11h - out dx, al ; Vertical sync end register - inc dx - in al, dx - and al, 7Fh ; Clear write protect bit - out dx, al - - lodsw ; Get X aspect - mov [mx_AspectX], ax - lodsw ; Get Y aspect - mov [mx_AspectY], ax - lodsw ; Get screen width - mov [mx_ScreenWidth], ax - shr ax, 1 - shr ax, 1 ; Divide by four to get bytes per line - mov [mx_BytesPerLine], ax - lodsw ; Get screen height - mov [mx_ScreenHeight], ax - -; Set CRTC registers - mov bx, si - mov dx, CRTC -@@TableLoop: - mov si, ds:[bx] ; DS:SI -> table of CRTC registers - inc bx - inc bx ; DS:BX -> offset of next table - test si, si ; Last table? - jz @@EndLoop ; Yes, exit loop -@@Loop: - lodsw ; Get CRTC register index and value - test ax, ax ; End of table? - jz @@TableLoop ; Yes, go to next table - out dx, ax ; Set register AL to value AH - jmp @@Loop ; Get next register/value -@@EndLoop: - -; Set virtual screen and system clip region - push [mx_ScreenWidth] - push WORD PTR ds:[bx] - call mxSetSysClipRegion - -; Clear video memory - mov dx, TS - mov ax, 0F02h - out dx, ax ; Enable all planes - mov es, [mx_VideoSegment] - xor di, di - mov cx, 8000h - xor ax, ax - rep stosw - -@@Done: -; Lock CRTC registers 0-7 (some cards need this) - mov dx, CRTC - mov al, 11h - out dx, al ; Vertical sync end register - inc dx - in al, dx - or al, 80h ; Set write protect bit - out dx, al - -@@Exit: - xor ax, ax - mov ax, [mx_ScreenWidth] - .pop ds, si, es, di - .leave ARG_SIZE -mxSetMode ENDP - -;----------------------------------------------------------- -; -; Changes from the current mode the selected graphics mode. -; -; Input: -; Mode = mode to select (MX_???x???) -; Output: -; none -; Notes: -; this function assumes that mxSetMode and mxSetVirtualScreen -; have been called first. View size is rearranged to match the -; specified mode, but video memory is not cleared. -; Differences from mxSetMode: -; - video BIOS is not called to initialize graphics; -; - row address register is not modified; -; - video memory is not cleared; -; - mx_BytesPerLine is not modified; -; - system clip region is not modified. -; -mxChangeMode PROC FAR - ARG Mode:WORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - .push ds, si, es, di - -; Set DS to code segment alias - mov ds, [mx_CodeSegment] - ASSUME ds:MX_TEXT - - mov si, [Mode] - cmp si, MAXVMODE ; Is it a valid mode? - ja @@Exit ; No, exit - test si, si ; Text mode? - jz @@Exit ; Yes, exit - - dec si ; Skip text mode - shl si, 1 - mov si, TBL_Mode[si] - cld - - mov dx, TS - mov ax, 0604h - out dx, ax ; Disable chain-4 mode - mov ax, 0100h - out dx, ax ; Reset - mov dx, MISC - lodsb - out dx, al ; New timing/size - mov dx, TS - mov ax, 0300h - out dx, ax ; Restart sequencer - -; Unlock CRTC registers 0-7 - mov dx, CRTC - mov al, 11h - out dx, al ; Vertical sync end register - inc dx - in al, dx - and al, 7Fh ; Clear write protect bit - out dx, al - - lodsw ; Get X aspect - mov [mx_AspectX], ax - lodsw ; Get Y aspect - mov [mx_AspectY], ax - lodsw ; Get screen width - mov [mx_ScreenWidth], ax - lodsw ; Get screen height - mov [mx_ScreenHeight], ax - -; Set CRTC registers - mov bx, si - mov dx, CRTC -@@TableLoop: - mov si, ds:[bx] ; DS:SI -> table of CRTC registers - inc bx - inc bx ; DS:BX -> offset of next table - test si, si ; Last table? - jz @@EndLoop ; Yes, exit loop -@@Loop: - lodsw ; Get CRTC register index and value - test ax, ax ; End of table? - jz @@TableLoop ; Yes, go to next table - cmp al, 13h ; Row address register? - je @@Loop ; Yes, ignore it - out dx, ax ; Set register AL to value AH - jmp @@Loop ; Get next register/value -@@EndLoop: - -; Lock CRTC registers 0-7 (some cards need this) - mov dx, CRTC - mov al, 11h - out dx, al ; Vertical sync end register - inc dx - in al, dx - or al, 80h ; Set write protect bit - out dx, al - -@@Exit: - xor ax, ax - mov ax, [mx_ScreenWidth] - .pop ds, si, es, di - .leave ARG_SIZE -mxChangeMode ENDP - -;----------------------------------------------------------- -; -; Returns the aspect ratio for the current mode. -; -; Input: -; AspectX = pointer to aspect X -; AspectY = pointer to aspect Y -; -; A rectangle of width AspectX and height AspectY looks like a square. -; -mxGetAspect PROC FAR - ARG AspectY:DWORD, \ - AspectX:DWORD = ARG_SIZE - .enter 0 - .push ds, si - ASSUME ds:NOTHING - - lds si, [AspectX] - mov ax, [mx_AspectX] - mov ds:[si], ax - lds si, [AspectY] - mov ax, [mx_AspectY] - mov ds:[si], ax - - .pop ds, si - .leave ARG_SIZE -mxGetAspect ENDP - -;----------------------------------------------------------- -; -; Returns the current screen size. -; -; Input: -; Width = pointer to screen width -; Height = pointer to screen height -; -mxGetScreenSize PROC FAR - ARG SizeY:DWORD, \ - SizeX:DWORD = ARG_SIZE - .enter 0 - .push ds, si - ASSUME ds:NOTHING - - lds si, [SizeX] - mov ax, [mx_ScreenWidth] - mov ds:[si], ax - lds si, [SizeY] - mov ax, [mx_ScreenHeight] - mov ds:[si], ax - - .pop ds, si - .leave ARG_SIZE -mxGetScreenSize ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxsp.asm b/16/x/mxsp.asm deleted file mode 100755 index 1d08e711..00000000 --- a/16/x/mxsp.asm +++ /dev/null @@ -1,57 +0,0 @@ -;----------------------------------------------------------- -; -; MXSP.ASM - Set palette function -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxSetPalette - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -;----------------------------------------------------------- -; -; Updates the VGA palette. -; -; Input: -; Buffer = pointer to palette data (R,G,B) -; Start = index of first color to set -; Count = number of color to set -; Output: -; none -; -mxSetPalette PROC FAR - ARG Count:WORD, \ - Start:WORD, \ - Buffer:DWORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - .push ds, si - - lds si, [Buffer] - mov cx, [Count] - mov ax, [Start] - mov dx, 3C8h ; PEL write address register - out dx, al - inc dx - cld - cli ; Disable interrupts -@@Loop: - lodsb - out dx, al ; Red - lodsb - out dx, al ; Green - lodsb - out dx, al ; Blue - loop @@Loop ; Loop until done - sti ; Enable interrupts - - .pop ds, si - .leave ARG_SIZE -mxSetPalette ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxss.asm b/16/x/mxss.asm deleted file mode 100755 index 97df7366..00000000 --- a/16/x/mxss.asm +++ /dev/null @@ -1,72 +0,0 @@ -;----------------------------------------------------------- -; -; MXSS.ASM - Split screen function -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxSplitScreen - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -;----------------------------------------------------------- -; -; Splits the screen. -; -; Input: -; Line = scan line at which screen has to be splitted -; Output: -; none -; -mxSplitScreen PROC FAR - ARG Line:WORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - -; Modify the line compare value: bits 0-7 are in the Line Compare -; register (CRTC #18), bit 8 is in the Overflow Low register (CRTC #7) -; and bit 9 is in the Maximum Row Address register (CRTC #9) - mov ax, [Line] - shl ax, 1 ; Adjust line for mode "X" - mov bh, ah - mov bl, ah - and bx, 0201h - mov cl, 4 - shl bx, cl - shl bh, 1 - mov dx, CRTC -; Write bits 0-7 to line compare register - mov ah, al - mov al, 18h - out dx, ax -; Write bit 8 to overflow register - mov al, 07h - out dx, al - inc dx - in al, dx - dec dx - mov ah, al - and ah, 11101111b - or ah, bl - mov al, 07h - out dx, ax -; Write bit 9 to maximum row address register - mov al, 09h - out dx, al - inc dx - in al, dx - dec dx - mov ah, al - and ah, 10111111b - or ah, bh - mov al, 09h - out dx, ax - - .leave ARG_SIZE -mxSplitScreen ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxtl.asm b/16/x/mxtl.asm deleted file mode 100755 index 69900c88..00000000 --- a/16/x/mxtl.asm +++ /dev/null @@ -1,169 +0,0 @@ -;----------------------------------------------------------- -; -; MXTL.ASM - Put tile -; Copyright (c) 1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES -INCLUDE MODEX.DEF - -PUBLIC mxPutTile -PUBLIC mxTransPutTile - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_VideoSegment : WORD -EXTRN mx_BytesPerLine : WORD - -;----------------------------------------------------------- -; -; Copies a "mode-x" tile from memory to screen. -; -; Input: -; Image = pointer to tile -; X, Y = coordinates of destination -; Width = width of image in pixels (Width and 3 = 0) -; Height = height of image in pixels -; Output: -; none -; Note: -; no clipping is performed on tiles! -; -mxPutTile PROC FAR - ARG Height:WORD, \ - Width:WORD, \ - Y:WORD, \ - X:WORD, \ - Image:DWORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - .push ds, si, es, di - - mov ax, [Y] ; Get pixel address - mul [mx_BytesPerLine] - mov di, [X] - .shr di, 2 - add di, ax - mov es, [mx_VideoSegment] - - lds si, [Image] ; Get tile address - .shr [Width], 2 ; Number of bytes per plane - mov cl, BYTE PTR [X] - and cl, 3 - mov ah, 11h ; AH = plane mask - shl ah, cl ; Align mask to first plane - - mov [Y], 4 ; Number of planes - mov bx, [mx_BytesPerLine] - sub bx, [Width] ; Extra bytes per line -@@Loop: - mov al, 02h - mov dx, TS - out dx, ax ; Set write plane - mov [X], di ; Save video offset - mov dx, [Height] -@@Loop2: - mov cx, [Width] ; Number of bytes to move - - shr cx, 1 ; Move line - rep movsw - rcl cx, 1 - rep movsb - - add di, bx ; Move video offset to next line - dec dx ; Done all lines? - jnz @@Loop2 ; No, continue - mov di, [X] ; Restore video offset - rol ah, 1 ; Next plane - adc di, 0 ; Bump video offset if needed - dec [Y] ; Any plane left? - jnz @@Loop ; Yes, keep looping - - xor ax, ax - .pop ds, si, es, di - .leave ARG_SIZE -mxPutTile ENDP - -;----------------------------------------------------------- -; -; Copies a "mode-x" tile from memory to screen. -; Skips over color 0. -; -; Input: -; Image = pointer to tile -; X, Y = coordinates of destination -; Width = width of image in pixels (Width and 3 = 0) -; Height = height of image in pixels -; Output: -; none -; Note: -; no clipping is performed on tiles! -; -mxTransPutTile PROC FAR - ARG Height:WORD, \ - Width:WORD, \ - Y:WORD, \ - X:WORD, \ - Image:DWORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - .push ds, si, es, di - - mov ax, [Y] ; Get pixel address - mul [mx_BytesPerLine] - mov di, [X] - .shr di, 2 - add di, ax - mov es, [mx_VideoSegment] - - lds si, [Image] ; Get tile address - .shr [Width], 2 ; Number of bytes per plane - mov cl, BYTE PTR [X] - and cl, 3 - mov ah, 11h ; AH = plane mask - shl ah, cl ; Align mask to first plane - - mov [Y], 4 ; Number of planes - mov bx, [mx_BytesPerLine] - sub bx, [Width] ; Extra bytes per line -@@Loop: - mov al, 02h - mov dx, TS - out dx, ax ; Set write plane - mov [X], di ; Save video offset - mov dx, [Height] -@@Loop2: - mov cx, [Width] ; Number of bytes to move - -; Move one line - jcxz @@MoveLineDone -@@MoveLineLoop: - mov al, ds:[si] - test al, al - jz @@MoveLineNext - mov es:[di], al -@@MoveLineNext: - inc si - inc di - dec cx - jnz @@MoveLineLoop -@@MoveLineDone: - - add di, bx ; Move video offset to next line - dec dx ; Done all lines? - jnz @@Loop2 ; No, continue - mov di, [X] ; Restore video offset - rol ah, 1 ; Next plane - adc di, 0 ; Bump video offset if needed - dec [Y] ; Any plane left? - jnz @@Loop ; Yes, keep looping - - xor ax, ax - .pop ds, si, es, di - .leave ARG_SIZE -mxTransPutTile ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxvs.asm b/16/x/mxvs.asm deleted file mode 100755 index 992eabab..00000000 --- a/16/x/mxvs.asm +++ /dev/null @@ -1,110 +0,0 @@ -;----------------------------------------------------------- -; -; MXVS.ASM - Set/get virtual screen -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -NOWARN RES -INCLUDE MODEX.DEF - -PUBLIC mxSetVirtualScreen -PUBLIC mxGetVirtualScreen - -EXTRN mxRowAddress : FAR -EXTRN mxSetSysClipRegion : FAR - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -EXTRN mx_BytesPerLine : WORD -EXTRN mx_CodeSegment : WORD - -mx_VirtualWidth DW ? ; Virtual screen size -mx_VirtualHeight DW ? - -;----------------------------------------------------------- -; -; Sets the virtual screen. -; -; Input: -; Width = virtual screen width -; Height = virtual screen height -; Output: -; 0 on success, else invalid parameters -; -mxSetVirtualScreen PROC FAR - ARG Height:WORD, \ - Width:WORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - .push ds - -; Set DS to code segment - mov ds, [mx_CodeSegment] - ASSUME ds:MX_TEXT - - mov ax, 1 ; Assume an error - cmp [Width], 320 ; Check width - jb @@Exit - push ax ; Save return code - mov dx, 0004h - xor ax, ax ; DX:AX = 256K - div [Width] ; Max height in AX - cmp [Height], ax - pop ax ; Restore return code - ja @@Exit ; Exit if bad heigth - - mov ax, [Width] - and ax, 0FFF8h ; Align to byte - mov [mx_VirtualWidth], ax - shr ax, 1 - shr ax, 1 - mov [mx_BytesPerLine], ax - shr ax, 1 - push ax - call mxRowAddress ; Set row address - mov ax, [Height] - mov [mx_VirtualHeight], ax - - push [Width] - push [Height] - call mxSetSysClipRegion - xor ax, ax - -@@Exit: - .pop ds - .leave ARG_SIZE -mxSetVirtualScreen ENDP - -;----------------------------------------------------------- -; -; Returns the current virtual screen size. -; -; Input: -; Width = pointer to virtual screen width -; Height = pointer to virtual screen height -; Output: -; none -; -mxGetVirtualScreen PROC FAR - ARG Height:DWORD, \ - Width:DWORD = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - .push ds, si - - mov ax, [mx_VirtualWidth] - lds si, [Width] - mov ds:[si], ax - mov ax, [mx_VirtualHeight] - lds si, [Height] - mov ds:[si], ax - - xor ax, ax - .pop ds, si - .leave ARG_SIZE -mxGetVirtualScreen ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxwd.asm b/16/x/mxwd.asm deleted file mode 100755 index de55208f..00000000 --- a/16/x/mxwd.asm +++ /dev/null @@ -1,28 +0,0 @@ -;----------------------------------------------------------- -; -; MXWD.ASM - Wait display function -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxWaitDisplay - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -;----------------------------------------------------------- -; -; Waits for display start. -; -mxWaitDisplay PROC FAR - mov dx, STATUS -@@1: in al, dx - test al, 08h - jnz @@1 - ret -mxWaitDisplay ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxwm.asm b/16/x/mxwm.asm deleted file mode 100755 index 06158859..00000000 --- a/16/x/mxwm.asm +++ /dev/null @@ -1,39 +0,0 @@ -;----------------------------------------------------------- -; -; MXWM.ASM - Set write mode function -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxWriteMode - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -;----------------------------------------------------------- -; -; Sets the write mode. -; -; Input: -; Mode = write mode (0,1,2,3) -; Output: -; none -; -mxWriteMode PROC FAR - ARG Mode:BYTE:2 = ARG_SIZE - .enter 0 - - mov dx, GDC - mov ah, [Mode] - and ah, 00000011b - or ah, 01000000b - mov al, 05h - out dx, ax - - .leave ARG_SIZE -mxWriteMode ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxwp.asm b/16/x/mxwp.asm deleted file mode 100755 index 19ca99d0..00000000 --- a/16/x/mxwp.asm +++ /dev/null @@ -1,62 +0,0 @@ -;----------------------------------------------------------- -; -; MXWP.ASM - Set write/read plane functions -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxWritePlane -PUBLIC mxReadPlane - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -;----------------------------------------------------------- -; -; Sets the write plane(s). -; -; Input: -; Plane = write plane(s) to set (bit 0 enables plane 0, -; bit 1 enables plane 1 and so on, different planes -; may be selected at the same time) -; Output: -; none -; -mxWritePlane PROC FAR - ARG Plane:BYTE:2 = ARG_SIZE - .enter 0 - - mov ah, [Plane] - and ah, 00001111b ; Mask off unused bits - mov al, 02h - mov dx, TS - out dx, ax - - .leave ARG_SIZE -mxWritePlane ENDP - -;----------------------------------------------------------- -; -; Sets the read plane. -; -; Input: -; Plane = read plane to set (0,1,2,3) -; Output: -; none -; -mxReadPlane PROC FAR - ARG Plane:BYTE:2 = ARG_SIZE - ASSUME ds:NOTHING - .enter 0 - mov al, 04h - mov ah, [Plane] - and ah, 0000011b ; Mask off unused bits - mov dx, GDC - out dx, ax - .leave ARG_SIZE -mxReadPlane ENDP - -MX_TEXT ENDS -END diff --git a/16/x/mxwr.asm b/16/x/mxwr.asm deleted file mode 100755 index bd29fe59..00000000 --- a/16/x/mxwr.asm +++ /dev/null @@ -1,28 +0,0 @@ -;----------------------------------------------------------- -; -; MXWR.ASM - Wait vertical retrace function -; Copyright (c) 1993,1994 by Alessandro Scotti -; -;----------------------------------------------------------- -WARN PRO -INCLUDE MODEX.DEF - -PUBLIC mxWaitRetrace - -MX_TEXT SEGMENT USE16 PARA PUBLIC 'CODE' - ASSUME cs:MX_TEXT, ds:NOTHING, es:NOTHING - -;----------------------------------------------------------- -; -; Waits for vertical retrace start. -; -mxWaitRetrace PROC FAR - mov dx, STATUS -@@1: in al,dx - test al, 08h - jz @@1 - ret -mxWaitRetrace ENDP - -MX_TEXT ENDS -END diff --git a/16/x/readme.txt b/16/x/readme.txt deleted file mode 100755 index 306e8b9a..00000000 --- a/16/x/readme.txt +++ /dev/null @@ -1,8 +0,0 @@ -ModeX - A graphical library for DOS programs -Copyright (c) 1993-1994 Alessandro Scotti -http://www.ascotti.org/ - -Please look at the above site in the "Art of..." and -then in the "Old programs" section for more information. - - diff --git a/bakapi.exe b/bakapi.exe deleted file mode 100755 index fee866d459ea0db41a0293ec699420ee03b387b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 77981 zcmW)mWmwY<7smhVv5mp#W`J~qG$=Vx1ScR}qmdN0fub-{#()P~!9r}o2b7+YQX)zy zjxK|CA`T?B_qpEl;aunQ`EZ~3-7dbzfj|HRfPpdz9`Cl;f5rbp=D&;t?xUO5{99N} z^ewrkb+p1>7z`+8!4T-;w*B7^_jG8nLW0RZF8y1D#bV*|2(dQ;0P`p9WdBK`w*o%| z!sjDe0yqBTaERjrl4}B1r$N9QUTUh9av0y4Gbu0>;J}L~hbQ6nwea-@U_+mSaS2$S zF`k@&Pol*0@FaY4Xi|7MCq9`(Rj!e$3D<4a!=I+CMU!=G5*&aK(ryeXF&eK_rE_#& zNAIAHzTpfE6`hQa+b4yE<3rB05)w&CF=u!OGov%}vPUy_b2CrjBRu0`p~?P7Ih160 z!!dl|ZXoJdbZCel*qnoRBpxG97zP5oAkc9z5t0SvdBA9Je#9X@o{iu#u2N`5n5QNJ zi2e|Ri@#h@P`xHr)?@(Use;uYc&H}qVq%G1tcV?4*IG_qSfWoM-0rx;NjmQvu`v}W zg#o-xgtwcgSN19|xN$&)S&e8;fEBYExp<%lzK(<@Y#_k^uY!%NSVcC1c7ejNie*&# zBC<5>(v)$j?Tkg^Jp>cJ3+VTi{)>4-?<^i?qV(JBD(P}>kid1Bwir3dz$j6zs&M|T z!tsiGN-wP%OnWhCaYzX`4{9rkh14|8uXiH=oz)_0izKy4h@U3`&?P`xPQ@LD!PuwSK`k>FCgc;n6H zYNJE;p`c?xiWqjk(G4J$cF*W!zl9b>aCd?NeFI$jf8M7DuF^YPH~I54`SH|O8!^rB zON)NXF{O&rGW7KI9&twCwfXOU?2x#xrVSkQb}93ZSZ-S#X`9~8GxlUE z?s7_(>vQ?o!%Hc=(H~8?Tt#FLuPbnoXHpy(?;7}h6mkC@@Le0SCINf)5d*?Zm0BQ( zaZ>!3-@ro@zXXZ695<{6hs2c&#mOKi3g8tnX-imM#;qc;Bc;+IjPx9ie_V03fPZO> z_G!|Fzu%d486QdGdgP|yz_jL6UwPzinQCY=5QIe9z|m0zI{9p7M&Dsx&*j?ajR^$IOA%6b)-c(iR>Qw+2M^~ z^064EU_y$)`S^sm1id*g6(9}pAcY9Fo=P~A3^>Jzi}-4OiC0TMnFtW{4VEDKEqZ_} zC2n2BHpYEL%nTfET5obXdCHSu{1R-`f6!1wKHkpa`^6BW@y*}Z@ zBjm4_2l(y!`TBT�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 JY}>CW{~vDVP#gdN diff --git a/exmmtest.exe b/exmmtest.exe deleted file mode 100755 index beb8f6e23bf50c31b01a9d0d013e75948b0522f0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60948 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 diff --git a/fmemtest.exe b/fmemtest.exe deleted file mode 100755 index f7f7ff4deca7d685618cf173f82597c8555d3d46..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60555 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

J^>fV=TA4}M*&mJ$@yT4 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 UqN2UsD(ZzJ75wEcrrpTusu$mx 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 qrn1tin`hE!akg%E-51@zl-*pRwZr diff --git a/fontgfx.exe b/fontgfx.exe deleted file mode 100755 index ed49d78ab4ec2e9c0176f5aa640d4a85dcc7ca9f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 71333 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 V(2c#!*j8`aTUJuF(6iSW^IwyZT<8D* diff --git a/fonttest.exe b/fonttest.exe deleted file mode 100755 index 882c4d8f93d5736f633507d0ff7a58b043764c14..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 61949 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 a{G29=GOA%$9c=JK<@sf18+J@Y=>Gsr7!H5{ diff --git a/inputest.exe b/inputest.exe deleted file mode 100755 index ed7e43c8c65fec6d352bd63d759e71422dab29bf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60316 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

  • 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 MwJWq?{R1NZ1$AgTI{*Lx diff --git a/palettel.exe b/palettel.exe deleted file mode 100755 index bd3308a941f45872965469e17b3d01dc10f035b5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 70932 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 diff --git a/pcxtest.exe b/pcxtest.exe deleted file mode 100755 index e9ccd81f4afe462b4e2a011aa81f9eb2c4d41d63..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51372 zcmW)m^;^@A+r`%#V~id#It4}xh;*wcDIJ1{qLjimP>@C$1H|r+AO@l+AU&nii4uZ? zkz#BNkaCRL`}tna{lmHLzu;WgIp=jO&^SBcDA5M8@l#4?hzb#5D-fOA-QzQ3sXO zNoWA%;Nhc0j8|Irb+Hq^efl#>SUtnaCMxpmnW*=Mhut{-zNc*{DWIWNX;u#e&4}00Y+d=$UdkN z?57U={3!>#gaf!(AE_u_Bdr|Z;7w_51Iu;Llp$|y04E>Huf{MC7O-Y1L%cn`d;!1g zMaRYvP$8c@R`7{t3;!#nO)Yee#|$^201TFOqo}wMJPB$>PfMM@**K#}gMkd|`w2CF zh1DTVVtf$Ad5z+`@mDDLZdcm!TEUnNku6p-1@EXR4z!i5ID^}5gHf}6apNh7vR2u=@xrkiE=t!3QOO| z0RK&f1>ztiDHruC8Y!1fgecOnfxN~nC=HzU3l8P$aeFaQkes56&er7Qw=_Q?=#|OEekBn3DyIT?w55y`t z=sW1>7y_nBUZgnP<7a``NTtM!iNr`CR!_+zK7n|4DLyVyc_aS(#RPz%w9i3H3Glvn zGCVPoptN*2ER)Dp-o z9up@LPhvVKNyok6*D2~))}UJF zEK{t#DFDI;LWJ6_KjUk+RaCgw8cdsLJT;xhAoUpmXMss-_fva_(x%23lycv`iO|zp zz}NX|)V5w>igv&YNH+%kE{jJMV4apBWiE(2hh5{3L5!Dne5i|!>2h)I*i}zRBfv|v z!OsYe$`*U1awekGn0=r%Vw1=W6}mg?B3`n>opkyNhsKp`FXP%xK~i?XuJuhW@=lQCjCjlD>9$zqmPRKM{^#PyJD*@6 zAi7PX7g3QZncLcyA*{stb;g30iMX95ID2!~!Jz|5J^z=6dRd+Boro2`oI6Ys9&;0n zcXN_!w|9>^EH#ZA zvR-sTU&5K^*FMB<%o6Wsa!#0qV}#%hYP(6tE}$nV$mhMH6y8)phh$L0j^-fse3WnT z@mdMpn_BgO;O%8C_7i4ifYA*;DK$!;Z1TIdvJ1(+B?%l zS=S;r@Lz(-x!a!e7q^RJE!njO`ybSNk^Ef``;BIf!5Q&3W7#&YDZ-~hey_nB-X;I0 z3I+p{LfzjL{d=4%J5M&iJo231c9g{vItnJ@Z8j(?F(LT3YG_~l@$9tC4k6NkgJ-j? z4#plsQogu9aS~Rpvw7=a4OytMN|@S$Zp_P)_T7Tcvs$-C6xecrrKmOG0M9&=@Th+eRwXyHgCaDzyZh!vz)Ru$ z*A7u$A`Qdr?3ZXkhqY8qi+eq3I_hwF-hIVC+Zgvvm7C!*TU}GC%@`Tk{_Q34+p<+( zc0a=8XqYR9ro>ly4-a`qS2x58#E;X^_=Hidy)+cjkA~<^S#0GMpPi5$Qph1Op1bOa zkcEz6C1NxL`&HIi*}URwS%tmVqG7Snn`fez;$npetr)2y<_4gUEXwhXAFIqfl>%@! zW))cGva`9(hZp$mGfdVSwa#?m6VzywXlZI#$W~qMJEFMF* zqTKEZb&qC?QR|OF)m8(nH!lCCh|F+~brc#fGeqr@< z#{vW5IXn41k3RCLe0NIL1D7_`mn zEpqO=hd8k&D)z8a=eF6y41UW|gvu7dQ_gNf{duzPMwRCQ=aYAc**x zt#&R#?Lt){sPMmnb_-y3-C<&pOoQPJb$}3&YO$eZC-t!bnSEDIK_Er(|GF*n;FVZu z|8v#GsfIRRo+7`*q-jfGHNPIFBK@C6I2-8Ci50Um*R%LLoD*0N(^OT?qCVTrM? zZ*a1mM9&-jC%DVE8d@vX`xNnX8{wj$E76|xvUf2?wepQpvJKmJPnw3!zJ9xU?G=}5 z#VJVY?3etJk37yS$!-&JcJsFYR%tnyHETH4XUSw{ z^>H2C%1+STn9Y0xdIUzKeu3vSk7Z zF(VG<1Y3qj2xN_Myx5ST&}(1mNdgd52e+7Szzzjj5>0S57~X`s7MK&SCJm4dal$Qi zNYXKa+YOdZKF|T}yIc;EV~(QpXxZR7{k^~T_YS~v{F&BLe#C=-Wkh1B>&1$ah`#1un`S?iq5|9x6U-6!DClo0-0|vL2fu*IQ0Z;cgiL?vmP!(jCE6TQQRsdUIz6n z-SZBVHJ0(4AkcJI=(a~X4b3Y~$%tqmOQ8xNNgb%I6fheK7~UXrWgArvUci-dWmbq{ zOdKsk@$4^9xbo)tpO}U=mR<~J@z8me*FLz%kXY}bKRpl!_v-&42{?Bmm8DwGU9D}%>x#1!XIz%0MM?YMO|U$$5R~s!f4a zjIoYifcnWsAt|MOnYvssNLbIji_rc`lNVp;pg zfW<6t*2J3VOG%S@>w?{7PLl(Kq|~#8{5=Y%AZ{!zQE?MX8l_p#7RtPYYFwb;75zna zIIv~!o7Ju}#y)=J$Z@$@6+1$4y>fcBb1>^B0*sJny+|m&#Z$U5WOh|t zIeYPK__p}0uN1|vNA{H9o#ZoM+vsYK_gSwtHu4o`L=6B|*e+=K(%}wH`O`!GVZGH> zKqbiPH;}}GyAG*=n;)-O1;Y~Iy4EW#h(hN@nwCt=aCA}~M^LFd9+Aa#el;vvHN>gC z-kzAcj5`agSRkSx#fplnA;%v z&c)_tT{FoGm{Eb*xW)ZK;x3u!q`%v~9ZAZcDK~wqc%0{kZFYF^e~jIRG&NR%>mBus%P6|i+jfc0U;~VRMBeau@;Gz(ZtUm=W*i9pJPAWfd#Qy zQ#09)pS~NvIX4A#YR??&pfunRZ1p;zrm@Wr=5eOBn=XBWDJ9B^*8k%*zrscW!DXAx zcfm5vY&m@0KZt*bMAfuNZM~R)fBk;UgAi<{|HF&>OAtr>jmz{5`0GUJ%y#taV80iKI##9EL1z=iPTZV@Pg4*an%0Bg7};P z^opwAK|@NFm`nJYOq56zz}EM}8p+0qz2zKH|E5%J^jm>2@!B`;HBr8piT*7ghpk8p zpuiP>!P#CG_zH(Ge@Y!qYKf)RztD&1A5Bb8WUleJu_3`+Gf*M#c z+<7-uIs59a)y7d4yNA+FeewQEk4508sBo`k3lzt`YlIiTtCcIpO~~`=QlfOENy2aZ zukx2-2r%DnVS5{3Gys1*UE=3Sp4(YF}vsT$p%YW?8U~&if7_CYk43KMCJZSjND^ud;xG zKgVN#Naz3Tueh=Xob!GhZW`dr?Uar+Tu=o5fbs{!a?nTKo;^0-IRfgwgq|uvCIqE- z>=<-p{N~qILeR0eAG!&HZo~MX7X0gCvZ=x7rA|S4+tLidTLT*AwZoyllo|d&_uJp< z1;Y_12b&5je0&uN%t`s*f}u(bB4x|%{%?__AZfVmVy(PJ%CQo0mZ(5HcYBlkrHy@V z1xeLB5PEgvW-EruCI$tO8zB#*x48335ora33FDFmlvnmpQ;W4Nb zbCjP5kWNx>eiu-oeF7t+(1RQLaT)I5DiMirq+yocB2ienJNZvA?jK)y{!^<~XJ870 z=?J%sli`323_m>il{tVZ%=p#+UZ~4CW9;&<^PuYDVv5y=AoVk*&eOQS+3Y~aj+Ul7 z`i*(c-|+07Dd$lqmyf?bRxF&pWW@X?d=B!yu6$5`u`a@3pKxVFnZ-7l)Jc^RS2qI3 zY9O|UkhG5zpowSBBH0gT3Vyz4if1gJ0&h!AWE}l7>snGARL>Xd_%bo^-%km`IXI;9 z)$7iN6rsjpDB=~u(RTTb_#7?Pt@mZc^rAFK zA+17=N;&HK&tHc8-4Ua;ef-KL=%JhrU4|FeL9`$IQ{nHtfSG~7-vd}MsZ{Ct0s8#m z_H!bmqxuzJ)eImv40wvbJp9&8&i#2c=trR$=^=}7sK2flP_2o0tn{QnDC6px@CUo@ zL5-4^JsM9cV$wkq5bn|zWjk!A%Pzkf`L#;b-CS9ova;kXcHZGcGfN0w97aC~{II>x z=5P4pG4uEE9|VxL+2l`9nOV+;#tZb)&BuVkTS+RmO0u-4MpEJj1g3cSz-+wL)WrdMGCcjax z8$eeNthS@~qXnx7sPa%e?Ln|*1lZ&auoyqNc|)z1Azuwx1k3CFNePzo3I~@x-+}$A z2F|3wS<)eK%cttK5Pt?v4MudzH15D)Qb*x|h_^p>5GWY?7(5Ow7?Y)77Q}cs#Wj1V z7=$^hxoCDN!fwnizl+@Yhb%^%pY5exlEu z!otK=V&Nj!$YL-hqM!tWGw$HyDyrZbTQED=B<%0kCRkpd_QPtWg#p#pJwdI8jqrGC z!j=MLpRfCjC(`n!9s!`c!h2#Flw2Quo9g*u0e4fc)KH>wZw*O2jNjw_kCx&I(G3)) z?6I^tzvE(9dOFP2rwy@B4eOrjHXk(s-VQa}o5^;4i7NUpUc1dVxt;U=w$YNFeB2># z8e5u4=0Xj6VAp9G9-jdY!q4}xqm#Q3KKoY}EC^xT7zIf?DK%Osi!ZUTrQ9NJ!hkmA?sF7CK3UX0p|A1t zh%p`E=NeBF2^#%4o%E`g;tR|CKK|0Xv~R)Y)CQV~bev`T04dM=x_$aurM7BqxC6>E z!#%61kkE43P<^f9P}rM;Fj;n*d2)feeXVJ9EhOCsGBiB&iKvG`h^QC}N=%4q-M=-R z{2dQ_7zt5*1T>{PJO~Dq3h*LD6r=JWw!{GkZ#YNV-I?eVxUbDt3-p zDHvV)eb(>a!swJ;i&#XJq)clh2I+4g-X?Q%;-v$KR2>KRU8W{v$ln7AS^VwgB3#x>N-K%H&Lj$-VDFZJg$sq?w#V z89tW#YuNQ%S7h~p&PnmsX1{8rz$J@-d$)9!)@VwkW7j}3XY&Sere%T>sA6EP^KH^06#O0F>J$Qt>%cNggM^CA?;mt*p$>O3} zDV}GM&_id+bH7HZs`Kd$(ghuuk#TilSn}e9{rdA%=k4QHd$84@qY>f1GMH6MF;kbM zF}?BwOq{ZyYD1M~edkC2C{Cl1m-C??tr?;x++&z=`@2ob=oTO1PhJoSz-LB`#)NO% z2g>gbO5QP@p=>G#l(qhm-fq7;?#-m-Vw#~Zf|cWB;J-tbN>fE0yA;xl;{-foGYiH9 zDH>H%BZ`?OIM*gE^pznw;iY}hs<>_i1GLKMH(hskqgIRWk5}r7_Z7Nen>9IoP6r!j zJgJPZtxRoj$HK@$WyW5+$jEPKkI?7PB;<7VcNWOvdq|T-r^!Q5rtt}#PMM}{L$SZH zcYy`<-2QX~NrIotB#V@1kP4GmK4(xmRFP-$G}9GWBRj>324gNBAn|ra`_3P2W1VV` zzlUz*F|JUHa@(Bwd2Y{Q(+EH@(Vrp=ZTmZ(ZE2HF^%Paed_8;b)Bls16%qX z(mue0W}i#9vIC`}toVVTbSPX21QRxNl|ms~hISve4aaVH#^mes^p+By^ z%$dK;E%e>M1@XMpvJ0$AKhz6`a#d}ac%Lr-h?@}v?5EK;IoVV(%O zY(!cV<^HRe45E<0twm@syj$M&DL+Br%CC-ICqZ4U*~Sd;yYKk>{y}oX^~ym^SuXU? zWN&?=mvoSRK#)c;NvERt!^nGj5I6W_f@s=pRW(Z!?Z<+sfzCpH#uufG)4X&_iS1Ns z#wV!wt7a7VEO;66rddSulUc+drqOmySK!EfAY4{B&0ADoB9Ch`AK_KDdZ>Gxtj@rqY?#sY|D*l z!iyo@L3E|_$!=n~7bUKrUu9+O9gb6RxHJ1d&ntK$*Exp7mwIPJ?M}#}-kiImoMnD| zUG<4}l1+Dbsv7m}#1n9Xo{~`#k~AQo_4t0M2`bF9lKi%`S&m)Hhi3KsP+DPZF zK??Gxm#z;(&wD6uy*hU`ED`^-QBC%c*&NhXq)K$b`MSX_WKYh@HAW0!k}Nv*qIF`d z35%XuD(aDSTkiMEpA}Sze9f&mL0PLyW{(z(9ORuJ4!$L99cTA-^!22~eutzO{F*nl zUcc$6aAjK5CDXV@)+3wdA3GHA-HRHp7!)Zf!?mSGY=gCQSr+WnK(5JooM1rqoW}8Y z%_lOv1=WmT{m02|CS!s;C;!vC< zQEE#{3;_=VFzmPdMlo_Hk}YP|wbGAbxrbB_^Tl2V!$*%r3xb?Q0)=K`oCcBaw>=6N ziZ9ok?-Z^yz%9-DmJ&{=$vLMEw(B3w-a-hzY7*2n-)>JjLiI7L2|=uw50O3fZL@ns zqG=K}$0&TQKEMfMHKUpkK$)Hef1#KdR4t@8pBAQ=C{@~>t9OKuEHh<;UuC$AVuurl zNS&Tp)snG(60NT}<>rHA_vRBknE5)X=)>WFwFDGnO)Rl=gOQ!U~Mum;uXS2yM<|?xqwzmD@a7h1(!U+0{2pfl0?X&Q$?OTlH?mQ%m$Ct znrNjqntoXMDtqhJ0Kcq0yldD`mki`{y zaE`n8{p(^2PQ3SKU|NH z4Tk@A6?Q4Yt;R)A6~9MvOcS;dTLSKj;e#=^G$SgEXVEyLhZFISH*pCYmi@p$K<#R^Dl8efXYa`r;C>dydmx^sRv)8Tcp6=NE^p8*E;Efrm{E;xt>z5Oi%lsUf}$X z$G2VNP;t+T*NgFjogi4=LMcQC;tksNxetGcI0|mEZMC8p!%%p>Q6lqzQsnokS{B+)o@z9p*ua=;3BS5Z zA&HE`tc_KFQs4EpZch7^4*XbWBTi|9r3*~lVrfoZEm{Rtj!jArPc!!LiKcH}NXBPd z+lM8MF2%d9nRhUf0;My5Jb2EQ!GPb}8jUBxq=fcm9eL7BQVPS2?Dn?b8+(8eIUCfx z%(1(p3~DRH7O`DycN<@(>YiA`yrDN3saIXO`P7l&@OPm+k*92>BT zIkGpvz6_*_{xKM%d48hgF;b}*x&6v?yIeA_ppOQjm(k>^1<{kk_6xrs5o)lHS!hV`ejqBd==U@TUGSh!X3o$ZW<3wggWK? z{vT{(##2I2(kf0||1A=|F7GweDdaZ{<|zK@FGijEVc7qM@?@l+hLs2tF#&M8tk!mQdQf45xIM$>uwB=L@M{@ogluB2p*Jmi-mXDvU?=zh{A4Q`4? zYFKos-`kT7*S4VFDx%8BVrgRr<5KIloX8A;H4;6HjBO&mxJ< zb9wfn9bF?rmqbd0R(LeEVG!*7x4z>O!CvsBLf?2CC-*ONyBnSX9Y+Tqm?#j7MJZ%4 z=F)JwR+W9!4vm@Se59qi-vwgYM&2>`!YJE2a|VN@t#^S?EawAApIR9Dh8Z&;cY z?fu~)b_JY1vcb}KAgGgk8fYtJI-m!VV{pYh+MPV-JXY0Bl1tyfdUG=?FsC)_0wAip zbG%k$1m7e}4#|e;KH^$-hwO^(4VQ}$6{`>vt!LPdKskg#{2`yM+>ur|D+oLBgU^|$ zM1DklsZmkxvV9vMm~r1mhAry+b42z)zz@;oYGLuL5%Y;E2m%5B&?8QaUBva)d3`Pw zRF8EQBo27NDpK(3S6D*`)Y0>q_3swxP0OEJ;FD12>2b(xPitb0LPq%3ko#w=y za{z;c7)$e{sF7xLrkUL40$4RxLcSnx#CK!sIX3^_C7^pQLFmESPWFNUc*Ma&mxL1J zbsf8&J&c6Vze&+qrE&b@-b^QyB__-BZWOEicDF^VA~OeV*F0>gH>RTKD*laoB3?aK zF6N2%)kFIeAE9#-Oh9zBM#JWFjSSu~7>b?1{G?k6nMFsfhrV$_vb*4$=OCgcXAP3f zE1Wg=M!Je=V5cj%G7EgGxV>M#*-OhPAW_ZoXri~};X#sT(o-8#QoVKz_b+Nc(Vjhi z8nnK{d60yg{9qGB3isNpJlDv*hso4E4>(&A6BR6DNXYOVGbN3;{3RJ%hT)=Nu#Ho&y>hzL09K=(>j1kw zxQx3a$R}kZR4zN>IZZ5w=QEB4ij-KF8Fb`xZWnQ>s?pi3koe2Ci?gbBvwJ2l6zDeMwhqV*v-!FnR)teP&foSzXWdQ5U73T7M)sHxysh6blv;C<};N{JTvVJ zl|%j9FC^dA?5*OIcK+p^Yh8s_4NY3cZNS>w&7s3?l&`Sbd^Nq}mjlX3aNMAFJr>n*ih}pg$oUIFsyc8c2EYRd|6y;wa6HZ}PZ)i3OvOxG|BRnoyuShGDoANl zwbnx@hPRU2pK2T5hRROI7ZP9idArQ-`?+T_|FvSixst3yyvxBL9Nzz%YAlrT)uoV2H>O--kKtPPt0nYS8tL`jRr z%Lku54Kw^NfcIoeV=CngdDEA-EpX?dEG*05)`s4f6_@;Ipgq*0Mg75HN{Fvrc{6VB z*K6p#lWx1cf`PxMiTgh4VZ_|K#{)YyZez-p+x3Vpz5V8-+IU-Cg`TXqU%xsWzr{)c z{%sLee4O~uROxwK2FIeHd*6-e)ye-cV;=|_2~I3IWbw_#_g0LE`h7w-4qfKVbBuGN z+YC&W+OqB~e`X)v-K>5W9^d9<=qt+S!`Mc<-g({k^a&)D3}!msN6!A=97+cp1Q8*K z)kx5B(($foQ1CgiYy~VzC2-r*@a}c7Mj0QwwsMAK=!;}<)xC7u!OZKGBU+=&mNR$<8F@oRv4ZEl|%=o>}UaVty#I}ZHfqG zzS8#d@2v`fl8oME5%$@geVq=2WR%Kj^J^tXdW9UN9m3i+DzBlW*daKm#D1|65nYkF zd`DT);-H%sll4GD-$=z_ydESB+<`OMha+KR1$h;-(H!3CW(at`J0S4Jphp3PBfpi)vS8kx0XaJoxW|qL1U*vuH#h|x!Oa=kmFyY83VaSf*C58kSahdc zfKOHVDfmQ*J+*gA=he|SLpmR+q2pR}AB1(-tMB)cPB0X+Q}O1o9>n!7rTH>~ZPsOK z8NOQoHY&DdMtfGLN>!6*NK$sz$6qE%R>2oRC0}KPVZ0mceay(?kPBnb*2u&V%hL&S z5lN?1VT1)gwcf@X`kzif5c_>C?{yk{E<*m>Vo7a(w#?$OW_XX^X?7afGYqh^x$bd9T0kcZr>Fgnhgi3=`d|^FQc9d;o%Y z0jsD)y-Ae0m9tvC^}|KunZ%a;EP#z(uXoqW#>Fdf~Vm$#aNM5sR=G?X>-*Y%N7J? z4NjvQNJ$9}3s*vA`)OSvqUP{5uH|;$VRho)P}1ciS35u9zJ#@*?ICRNXx2FD#|Ni>7_|e z6&PwHW`r?Dl>N9sJ^CS~@4lUFr|sp4qn9v=&*m>gHlI;4P&i}oMfCc>Kda_q<;k}_ zft|8*A|c23BHkYRx5t*+c`dD(WO?SH2c`;3UZmN~wr0L1j{9o6G^A|+r3wib*z}57 zxO=>reHtAcCZU-w^{}1Kr}-lH%;4f`{|9g&u?JPf#o~pT*tJ zxCV*oB5%?*cbU?Nk4RgP`QSa zdb9guU;WP8Z~nH@bZgL1X!*9~l;~c1ezaWHam|y#coZ?HGj!~?fywUGCP_6gTBZ3J z!{AaBSoCl=yeSRi{0GL30Bq|&?M@kHzGY`F^8|PSW7T|lM3r2z7tqmI>f5KW%?{zW zYYJXk@YhB?02u>L>i znxveZ8O<=*n9B52+ysP8;M!HZ);-B!WMC@3zrgf~bi(o9X|97OgKx673Vk&y0Cd4% zw^>o!^Foo2&q0%VO4(cI?ZJ0F4o#Lm+i?4qc54y>Sk2TIhIW7Rs^fd4VixqTdCC+E zMk3;Leo%7LoOA$ql*E-6_BowYp7K@ChFjw~VLdK`av>K}o5s(QJ)^HyzQJa^w}} z`ZnRk3gaO@RMyhNDQDW=!b4^nC`49Y*ZQwM$EO5jAQAWo(Q7WHIWbztt}JTK*JTOqG8_O;6jbxRr#8o&ripQN!{-1)g9PcXlKW1y!ALWWdxgz3RnH zg=c^icByeZefRm`V87?FzHvxlH;Rc=xDk|`-(IU7=%gqy0c*~E5Hl)OCmqlpD^yC! zAc7o&e)Y4s9T}STpfh&7!Nz(8t-eFtT1#i&PpYSaG&vJ66w{(KusjwAZ43;Hnz>SU zRN|lXYf0C03TAJa#4I74kAN(C26Zm-Z$X%yphd7l@vJ>X!1Ts+wPbc-dKy(Oy9Xz9 zSTwp1c4qAn7k8kI(k2tClFh-5!lMo-|8TyT(I~2G9~3nJEqg=r0JaIxkVe zBo_Ys&t8aNMnZXrl@X*e7K0U33g;Yy7Uv-%HI*TNd)7eYlQPi7 zp?30cJ|g0&(kt+ky*{uRdPB;go%P+wWYRQMC{_3iXrqNgtwf51QdT2Sx?7X6o8Esz9S+UAQmZpM?x|H z7b$f|S|&g?5`RZdK0qN-@s5&mfJ&q)pw`JQg0OExm;;)E`(hwkHQIC?0ztP%kFIY( zFsw168}BEW)R@xE4iL<14$>_w305`MbQ@cOU5!26!I9up<4kusL^xb?gzkEjaID6S z?(RYGtns3IA1C~^M^q^ouNKGjHL>M8w<|IAh6d|(aH2q8z;cU%0dUOmS zwkD1qf1YrmCV`$vB#>&z^rU3M#hOd>lvKjynlyTP1|hR1i=LfB$gR0TznVv&)a28t z1%$$yBKoyr!u6UP^qaQ`w`=au@7^QauX#X!_=xbh=0EzA5<+RsQ+nAm!tT#2~#!G^qE=0T+I*q{7=HK zn&0$4ECRb`fzDYZEY&R2|E>^LYu4!N8-#x~T>2)DuvN27-`OSX)$r+nx@*DXSn0=O z3K{|mp1u%=G)m}gEH3kiN7W$-Awhn79?a{|fzSYJDXzeS>O4#Tsh!c+lpa-~eXA0G z4#{eJG?D!a$#v`E&gpKu27Lu1dConVzkFLq2Zek?ncIaBW8SdorkN=!RfaNR*HWGT zBmuPOFIOP?sZZXkWS=g$J@Iw^h%%kkCf|-5C~>JjXe3g z30C>{Zc0wHkUo_OI+ZvI>`Bv$X(Hk;vQ8NGWpATljK8U38a9;nXR~IRLvkFtVEtyv z%q1f*W=MX%Lhd`7kv*bfmuo+HKBv`4mJn_!vzr8i+2tWYH@8`J@Ac7Pc|Uz|aVlV_ z>EdpaWX3!gRJFrM4y*UoKv&Jrd0C9&dwS-a--7Ik?+P#yN~UTUO3rPP3btNiWvKg2 z{c3qx*NY>MrbR2L+xTids$fv(o-xzZLLwn*9p~Mlcw+xeBJ}#mU3hehgbG#t<;qvK z9>{E4k~+eqwi_CM=r`6S^#R75FVrDwL$8=IkS@_r<*9yjvhiJ`d`Vos6eLg~c(D8m ztsyFdID&7@&%OEq)*M$bf#LnHjD2t!m6WtLlac9 zqI6>`4g1ALglEb*8BJ>Ljh+D&-zrBh$^Hg~of;HF3!t9*9)esA!-?~dH?9t`RzYTRH>u3W!55o-@PO-CcN^bCx14lJ2pc{My9c!;HXgG zC1>zy?=_9kMHrus{)N2>{>()T`8f6IMy`1)WkpS3%C=%NKkq7C)@})dIs7aX=ccJ{ z_G&DU6s4m?iF4)Qk%>46wyYrqu<6Zpbk%N?Aj)UJ5?`m-;$4jz z3I$kuf`{nQS)wt07nP$w9MR|8OfuY@U{&=SU)c)fd~)i3LaZAxa}!AyOMv(7Mv^0#UY=(td#3@}yeZw3{QF?M1p%n$+yMGz({Wc4cgAUE?wxT^p{EJm`eVpbB zczys!I_YVV9PV$6DV@tLYet{BW|zP1XX;))byWg+}eCo{c2m+GH%g zNE2|WvA~2P!gTsEeX1p#V1#4?rN^jy*>7M{7W*S`nr`3jOb{N)tnFH%6*rAda z4p)so+n0^@zstfVA20DTs(09TAkbr9H}*;GGC|&>lJTsV9FMQkB8N*vu3Ud+mu23u zLS|hwK6&erv;4kW6<+i!m!Zcl&+*wi{7l9&%T-ryaWJ$#VXbZnk*bPb{PXfjQdb&^ z&26V)%OC>}8P~{&Qo#SQl!*0u8OlH?BpAVuc?B^EhyHMpnZac)2j;zQ@F{i(3Xn#qX|U3oESFc0HP3m57@ z*`}p6pzGGgWyJ=j2Y9YSRS3<<1&=R)=CvOCg6|~#^{1F$_=80=PG7z@p#B_k_z4OE zo;qdJbu8LRJMX>wiq|2pz}Qm!|JwWjrQ?r<8h32_9=)wgn13Co$o2<@`4MZ8JCU%{ z#m`Qm%tGv>* z244fW4e=7@Wt+h&sQD>K%1&utl1FVUrdmrBPKq#SufPi$6 zrgTK9p-Jx`gcfQ77!tq+p-LBf_W>-Aq9~{!f=W?}9Z-=XMMO+!A|fDdzXcoeKEMB$ z%j+_G-*e8)oH=vm%&^%_K;*K`O5vqoC66^=p}Opjr+5!uZt;oQ-2!t9m9bF`Q5_Gw zdp5c7fKc&xnNGEv-K1ik+a5&qXi{Ok(O4_Fd!Kf^a=gTuS*erpo`qMk5ATgERo{qb z%-)SldCDQJCN~o%{614iQpeOoAmTvFemQh3>kGWTtHB#A5H{X4DK=z6^# zW9k@<-ddI(^xD}wMjfk+ID4u9=`U1M{$29K#_H2tfg&;5)q;lZW)+Fb^^cH;>Nz3AY-x8r@M<}Qz%opu7o{?sK|0jP=Gwti3r{}u6{X3fBotll#bxCeOn10+ztnS9k&RA=*U3D5Cw{YJ~*_kyoQ|y0G4AD#IG{BP zR-?iK%vmDmT+2V|tk(;k2NyAmEU87=&J7;hrX_vAv-vXNIK7jbg$4GQMZ(J*LD*!OhNCZq=D85$lURutN#ku=(p4ooc$?Yl66 zjkP26r^mHqJ~^g(;amWFM3eEZdxXKfdaP=d{zUS`U3}hG*|YiEnL~AI2iuxC&r)A# z4`ExOTf(2jY(ynInesFSi_Z$*A}LHgZ53;il#J{5`iURsjc4P)hL zl>|c(qZka2dgF-L%T`3O30k&tL5lLUx74-w$u8Fn-0>;DE(H(p6vJ4@yi$Jz@mfAE=#{-tJ>({0CQ;|`K=`W~9>gsCe zO-&!pd2XuJ&M22IBXmAF)N-v-2ACmggNbwvBh`nw6<^|2I$J7_AzQ$ciJBwtSy}D3<2?)Nc7d&c4nR|SFeIZX@MtIX#;Y60Y|OW zUtwGLi%m<$-}V{}vPBDYY`FmV;Kvi}S(&MX^YU6JQMy+%93o4Jaw&dHDTOp~pQ^n2 zdO3d%CTz2jG;urAz$vuRyG5O6&s3ta2t)bFGrvi{Jpw0Gu8ftoo^azf%);mwC|(VA zsBs+WWO&yT@9{A*P^j>3RP;Tx(BRo0u|=0aZUw)O9_aj;13 z=(u7Ra-uF2AnU5|l-@JzLmMuDd$FAMa?=K=y&@`ndUF3tF+@3sc{U{<8MVIFhwRPi z1k+<<7MXKjSd4|Fb&09pSfm98U8kwVu=U;pm70N44vbpy3qUfR%4?&l*=CpO{a;2_-&sCqb{UR7{x zh2O{BS?7z%&F%N_@~Ht_of71`3Eezi1a9AoxShF#*T|&p6p4dRXxY8&i_J2Ato#v* za%YXgkZ7K^3TRRDSQ%eI=f+9B@|JiuVF)0pQPkkx1r}?3epncl(f<#5LEYAOH~|~8 zFckKRU#YJAj-S47tzVyL&9z$BiYh`!d-JY+k3KyquMKI3*MHg4c<+H=5B|fKdHy6$ z_L>U|j^?=U32oA#?oRlA!};u^j$^%&14eSn!Gbi_p@rQ%x8HR<#4M?9)dHIpxqH&J zj9zsus2b~8Go>%?aFV_(h`j)Y9DUE4UC1&k>fVZyQFH3g^d0sdL6(M&U-Ign5WB9! zU!QYEXnWd;6i$nGMlxFq)*EU7;(QgzN!2P&aoKaCP4tWFs;7rq-I%ziJ=Bd|HSbay z!4bv>&Kq}F8}odr?T)&rR@EuH#^i638^NOv)a>(!Bzvs=`|15BZKG-0#Ga`PmE40R zPZ@&ocWTBzG@x7WO|=co;oK&=k!&Qkh|@dFe3)3fNqr8)GiP)qjI-ndhFbF#_Al>*GxslG! zoZN`s)c&abz`i$!^FuafcF#2MCS^A5jL%HOhQF}WOm|Yu+F|TdZ|=Xlm0fuMWl@zZ zF$ZnC4BxDd%mqK8cQqrP~%OT8h)2M4BV(KCp$ULjM5U#O%zWRLhrKYt-E1PnQ;g z9pd)hE~LfRbC$u1uQ4;Gb&h;Biz;I!z|8#E^!pA;=XLu^qKCgI&>hiRwlW_d%7648 zThzl{qs|zU6)$^P+uu)Tv#8ucajR92DLcMkg^e20IU)qtTs=25ZjlqB|6xzI?4C^BhYU%xDkV+h|!kaAHXf zQ|x(EppcF3cCNL{Mxnin6(%XvbbJJSzQu)BJkqpf-jjBJr0xUaroT^YJPpy~(fnd` zsTwXJ^e!IHDqpIj7V#3!F3FNwVn+*=ge|s8$%Sd?q_#FsWW^(H^YF}^XM5?_m?dI{ ztZw3%R@#H5ue0+;jWo4q7j@ge#)MSToStU{-o=3#quo0 zsQ3JOO^GGs>BhuxxeU~#gXnEcIF^l%vJI7k)e2fTRewBugs`XC#^^=%>Jm4#Zlc>R1jJz6g?HTbYRf+9)0EhM9Y0u)~ z4O=h+`#A6RRnM?s9mEPk>cqw4zFFyD(t$5x5}>4j?)d|a_gTH8icK)Mj!6@1Y%`c^ zKblFHPEp-MkW&;F=GU{i`kl*t8vU4Gl+LP$g9E^(NfQ|8e_#N}x8=^o4p6-}NAGYD z!_yC8dz+^j0$O%{d|cbGc)Cis8UqhFKN8Hnv&|6+-HeYYAIGR*933hP zUo1Lmt6C>u8HvGYfX2mdaMM2!^CWc`DR9B1V>1EPd#KU0{-ML=y(P;0D$ez9%m;aT zo-$2l>O~H?G>kEn4&`L6XFknQDrFO%Eq*01RK75&`J_44;U#ZG z$Bpb8z5rlmy@9gz=L0F#3`tM77o(&d+*0EuR&Em*Qne|4NJBJY;Jz|y;RZy&# zOY67lY}w#g?woiht(WS(=*6i0kmwdP(@hsd7;)pWG8w*G9^qVB<;6R2*HhBw;grqu z8`JvLGcOZE4MEd=V36T+gMI#n&xXOh#G_OW^9!c;dwi|+i^w>_5(aZ+x@c03;Zof@ zJ0oPgksXid-*5^!$wt3gt4^6wu9y%+jb4ppb16SK5y~lg%=YQ@h#Tu7<7GZQLmAog zp)}SZ@}uB&7J4f9+Of&v@CjuL@5iyzGmMe@N*tHZTsm{%Op!P1Rcr{FZG&HfKsIq_ zJh~oszW>zS(Os;4#`0m!5$Yvzg^j3~slrDwlZEvtz8)WNTjLe%?sJ0}!}<{>0#;Fu z5=mEhNWhH~MhU|NX6Mwn1amhwUtC|7!eLkp_xZL2fPiYs)`?v>adm#-d!VALgR|3m zGw!{@2)KANgSshTVL4ujxx z8Z}c3B&yk;PI*)YJrPMYZ@p}qDrba+F3G3Iy_N}#)~V#Ll_hK6N)QZsnjAjziaDMkE(XKo9;xhWIF=0e%r~mH4@HOk<6y)pjL`yQpR9+Q#p>w<3|M3*hu21 zkSU&gM!c@=GvW1cmGQgT$6M}ZiN2wMCY4o!Io(xNpm0um_JTn#9mE>U#UTx5W5$$n z1o`GOpdV8w zuwLHP`Ia=_GuIiFp%PWaKHJ&ejOzY|hl3;j*{_lY@CfVbZUp@?#d&?11O5ao>Y`*% zM_=bSckNN2072ZzRDjJ~eAwGXgA32UmJwZ0ho#J|JB&+7L}oo>yw`o*!s4x(f08nQ z60lG=n0V-%?w*&%zW;q^ZFluQM~OC$Gi^zq^oNr^_vy~`r8LbM;lKo3pHXXfYv+7x zm;J~WF4Dg4fmYzvcx#IVSKIV1XRvjqE2R@8LifH4cqeB9`V=Hvhb=rO_TlrFi`)F} zZ53l`0QJ?eWI%QOh|p7ET*Y|dPxOb~^+laR3tG|<+xGd+nUR^E-q?*^oYd(udEA6tcaMOFTz#hi zGGpT#b2}mSCGOjyvyZvVtT0L*_Pt4&y3vYP!oqE%DJW5`q|Ai*-5m6g>z8~PsO|g) zZ#m6qqU@aOBQQJrolotb!HXtlb|fsAy#a9|u_*ia+USkNt}fyf9u*0n^3z%Q8+EEY zyUyS;BJ#OSV@Jl>lf%nTOH%Yl-n+MF^*ncC2N+))9`S|MWnSYr`H3U@iRe7r$Q2F4 z%%?XuuV;>&;vh;m7@~ldy==nk0Qov^MF*^!X(UNZ*sTRXld|E@N1@st!E7v}a!2l&Z zLIF7WcCt3YrQ|c8*OBC%ac(7v27+7Q)PBRvS64ad54n}l%7-skw~D%)+IN|W#BU%j zl4DPG+SB8x)4bW(p$Gd>=WwtC%$P?M-T`6i`g5 zgVBsF&p_z_B)xi@hpUE<)~Id+UWff#f}(&^&-7J!Dcf=y+%=k@aU zSmLwXZ4@xC)u$`>F=dWhnT}+!PTYarsCK3Jk;L`x@-j1IC315W-w0w%UXBwMNumcn z!v9T8+|m1b1eTPZQFAb_%k|v0h!m{Y2%e72E>nE0c_U}{!ofH7_9?Tu40beU?0Na1 z(xk+DCmD2Mi*_ipv+c6Nxm~)^fOKkDCt>?lu4e|NB4lJ0I*-H9F$!X|F6cJAHyfBw zS{^t$aV{32(H=}P=tatL6TJ9lAzm2wc$WphCZEg|;=R3Vai$}s3wWB0VXf!qW{P(J z`8b`Y%4BYULvWL*vTIqQjoNingRVz$Y}*s>*v@>dI0(;{{Rp-yKYnWPgt|^Nz+kB( zjzjrjc1Js2JVS)gi|IbR{|RSTgPU>P^9iyNu;{w-P&%HQ6S(;l7sMsN zpWgG5s}U`@u?Ze3dCd6kYY}`on8bE|LS{*&Xd(5ok@dE6iDVw+DgC6Y$9AWT?M2@M zcjqP|Qa&x|74^BW6{B%4OMH1}2rW5nTI>JZE9NV^qOwRYS?U3 z6u95N$q@bIfsYC@yIxglQ;SWY?`8fy81?P@_+bgbMiJmP9cSR!pn8WH|Hb`xG3pf( z&B_hU(zk4r8MjQk6E;aUcc;8G-&UKn)S4g0lSjzw1--MkE+Al9AS0J(cDtV7(t22C zx}P(!jQ^OE->!~ScJSi1f;x|ar#coLa=Rbkv_P7iLBj6Xav9EQql8g`)5z@1ePZ!l ztoJ)OL9`BTW~nCXHS5dLYnD)Zi{HO@oDyW>x7?A&z#L2N=w~!&wF^iZ)+Kb@IGAX+ z$4wBfbL53URY*!b&i75!c_b^o8o|mtSDB@X4tV&`<4a`rxrqCw6v=^*dB?KEs$;tP zd!D_VG)#=O=6|^zANW!}MA3-M?=YjF*vzMG!v9k9QJ~^tSpxqt7q>maij%B_SP%Y} zme@eWSMqjb{-7D8VsnjlH2+K5LZIRmc`BJder8s&`KV!RUj0|T{^lfYZH3o6;F?&4 zcF-_(3;)ZlulFjtrv#Asy{6wO>Ki9qPyuPLHUbOKf zy^}I7*9&z!+z~GPbVol0t34)y>2OE#F}G%Bvu)5QqVCwY$7(>6+Lg@7D<<2H%<3?#M>!uN%A-+{HUlrqXfksDc$fuhtmL6 z6{AP)kkapVl*C5qN=0C9n7P^C#?lebCh^b4$eCK9>wD~d9V+DU*j^*ST&W5aw`RAS zLP?0ptO97y)$rNh029MG3nN4-VgR88jqXRRfKso~f^hFb0o%~f*4FdPTmJJ7CQ)~# z)IA)OD)w$PY1{Z&zizM54N9oPg^f3QHVkeY47qjo=H3k-$wh;<``e_&9*Z^a;t0Pb z_7q7T$R$iE&uS3BGU;$B*`khwscjYKeMV%$H&*xp(o_uuupv#a%7+~MU7ACW6UCe@ z>^YX+h4~8Yh;oDXMr(SdOY<0&#%WX{Ocs)jt`EO;U|L@&V6p^VxGPwbi!JTq*&=xH zx9kEwT?4PD>+Y#?Y1CTo3zcRVlCo^K+Tog0_*UC#_l@cDc_Kj88cuCL#= z{G0D7>7aDr%S<05cgX&e;R|N zT%k?e77#|G_=j%BR`sdEH@@0{GVUM!7dGI%%j48A{Q5^@)snjmLm#`ej`i`%dSQ9n zc3>1lyxG1pckWW&B|L|{pO`ITiZ`zH`Et(nYShb9>#v@R(|D}ts#u$%YS5s!%TwUC zfVs9-CT7q8b)Z~gS9KZM;ZVJKNfIfoaL$>&Ty8ZyUS7(l%j75yd>$;`0n@z!_4@Oq#$!(-KkoidaaTX_I0s%@ z5ZGcciMYky3&!O?N{$R3%Ims}=YJ!9_*RrqcI=SxY&sGQy^tZry?0K1?>$K%DV03l ziFeW{(zP<`W=o7~y3EWr;c=hvqqp@@0mQy%A&Oj~AeuF%{wYuGVrz2@B8TGZ5A3*z z?%{8zZ2On7zv09Xryw)5JY|4fO%*mL(9}imyozmw9@+CDo8iW|T*6AL-d>pldZjZ$ ztQI6?l=X8tvo81Vf1EY>u2*|e$8{!n$ebBe$WxTXnL}0`;Jpz`th=RTr1mW}Kf^_B zp_VZhWgaB6jmDP&JS}^9{ji8}aZRCZf$f!RyY=R%caqHvBJE;g*z>EpqTe|!*~Mw? zjLi>zQGWWt%aNxe>$T*g3TiVP%)CTfMasOe!%o`H30I)o>QzQI6^XhESh#2-@{anA zrHj6+$d+r2<5bbu(LLmhDK5z@ZcLjVWyOLF$Ch*p6+cv83U#`&KcmX+3)irrL%|49 zJY*bgG|IGF?5?k1oNlez2Xo)z*Pkc&{$d>f3*7{p%_r_!U<+$Cv8|@Fhph`y-`S#J zN3QFYq*;@Ao z2md%W6YK8H-TYx@AXA}?&`vzmA+UIEptT?Uy}tEQOKhy3MrJ`7L6G)gAV$f5;%UHC zW<@R9UMhiLRojU0(0h`NmbYjc8KFt=n;qLB*#*+l=L9GxCz3S%5MzEcSiYd_by(|! zg~I0y_qVZR>apisvwnD8!Q1DJTR!cbbnO*-rn*F2=M2;XMyd1s7h>)aV@8H&*E={B z*-IUWfxnj&bm=NI=EudgKg!<13B~}}I0l<%a`o$X*3-~4qQ*PYUOU=3dq{q{R*!^j zcI8{D>m{FyqdYk)7I1qz{7|_vyATdbi;Z1Z)Wh3;l9JuA!53dg5g^9t&*s$wmUa=Z zl53+!=e~WT;sh3_^SVwR(iW)O>fBB3uv>CMjco}u2t zOPKo|%0;qCCS7RTo55*-meRMO#(NE7AJj4dnJWfbjxH~syEs~Y3{@E!m7wO|6+F?! ztbR#q7)d>GabQDUb?VNGdib4{Viqk7DIUMHkKB&Uy#IC>QNW#qufhU}4&klr{)DZ& zYIe#fj1BTuOp74U#>pqy$mzY0hB|m!KcD~Xh0O5KYf@AZKe&^n;QG0g`cBDohIvM8!WNwBD3hPc&*nv_6*wdVgPfzE_K7L&34*^mcBdm(g_^ z8yf{DFDesQ81*`o+9W6?RmBEKTKIb}$*OM(^3j)^6OPkCvhVZ*TG?~?G!83BPAe$w zR+J<2%Y_*ej-r@x)YsZEN7qxLkHqXzkKGxK){*4)P{G~QI~A?7k3_TBBYm>RD~2Mu ziIEx`2beU=c^ump7#fi~D_QLsl)wc$AJe#xN=slDo6^Xe>dM;qZa34&xE$4IVv&_5R-Bc4D0>tg-CK#iSv-4N<%tty}yBK!v%uzYS4y((2``?_TIBgJyi&{cUd39oY z3dPy5>NTQ_ccP~Mp=$PirJ^I8?TepN<~PtMZG^ZNsvaRet9QfBD4W6t6lDdCaW5Gi z)G?yH9;NIWa(@po`??Oj?$!7VMan;%Fom@16U{8s*>#Yuyk66OX>RNlvw9Naqaht< zJ3_9ml?0M4xnds8$z`?bo03(9V0mm=IkHpwVypsf|; z7PoH!FmuK4T!Ms(m8~Al8t)5Foo{vC?#kuO83nTmLWI4Usnp> zlQ)Q=m!T}!%6Kv-(>_c-OE&E@@}JskA#vIl$?t<73WT<#dT#`xv5IH?UJE2kWVGul zO(Z(fH@vp$5!2@vuMYF;V{LRp7B{ALj@=dD;WVrVS{f$p&$LE5bhRFK=P}%Q{D~A7 z=&18wec`VKBWjCe-G1LmuIyDvQ)&T_zLq zTv+={NNSTVJNNrCwT0#h*DiC4VFH)Fiv)%zJVFPay{}n3-hg zg$9D+^)RmUY1iEhQ0<9L5;j_~We7xdHH=U*QJ(S8_NMxWS`H4LJ6XYOvz%332qCRe zrGmkZ#P1@GI)Yy z(Om0?tNDv>UX7*)8%z7N+Onp}$QeO!Vgf<9;_4FZHabRvRVb@lDx8!FbjIoo6tc&m z1`9cO6CcL5(}oJU!e@@8#A#=l4Df8;dSoZU*YWxdzDWE~M)$~cPB=pPN%%vbOUTA@ zPVUkd1%k3O4@SX{I>X~84O!`K+>3d`U{*&B+Z;Ha^{}hhN~MRRl)Ib#Yq7xK>~6$^ z@hr!^Xx&F`!qt)vI%kBG_&^hq&`wF$EPCd1zbP1qCT-sN%59jpkICfFH`lj&qPKgi zK?Lc%j41nb;V_&sjA;x4Z(|Fg+ni2Gq-rt37^cgWaLQ+8E5q@aZg6VfRh|{e)CKb-aCI7}*qD zU=}vWr{J;Bh-sk5)pgjeKBUyY>BWySqJ+9>K|DH6u^}4u(+gE;5k~7y@Ql6j478G6 z5~_^HD7g&@szW8bT|tTg$1ZVrL1 zcd`PkDie0?ZNGWBAt#0ln5YhbMQDn-%<#k-X1%cBz=|BU%uV2`s%tmSdIWx2p7B!Q0*BjFL#Kub4=<5i^~pS9Q?TQEN5@JhyYOdu#GC!+MA7FzSu_K% z_7j_nat}sn#yqX22q<4B2oalR#=oYudDND`nOR54D21(BiZBWf@%6TTo$h&!$MGU% zU^4LnyEmcV*ysAwAdOa2Wi~ZjsA(hY_*;RE3PCX@&&M;LYL*@g#sh{RaZS|AQp zf$rCP=VPDkbR882xaYEaA7Ki_p5XlM6H_gKKzs+Hq%%v0zYmX!sHK0`l4pF^`v<^{ ze(=pd#F_W~rEkXbgD;*xDy4kia?6*o>#VQzAzkr3zG>Q}-@gRde;|5q80+2;4q=U@$- zx1wYGu}0gerL;Qq^_!`8YVx4`+{2iwsu^R(WLYnc?rf`8KjM&ZeK$XuSI1SQZn*i< z`^eTcU9z^a?Irl!6%7?f^LQce_`teD9=k|G&FbSOD z^GRx*FipG}7hSyo3y;`yPzriBQm(^Q!CXd*C3hV+r`n+f?6&5On3Vh-Tz(T?40bH` zn92@3yP?9uO(F5ko(dIP1_XqVxt;8&Ljm~`LD1U<66>nb{>=Nr(0Qjfa8?xQ)z%f! zeuFCt(~;8(bECW-B&H6OJF)FPhS+tAy`#w?#9!aX!B_*Mo)`u*Na&4|=NJAgweP}E zi?+={@1lc3X`n63V&rXeG**Kh&t5&ecU=|z>TF*bZ%RF^LV#+}5tsPx>sJGt5-K60 zKNibyds#qt7e9Y3bxsH``V>Q@jC~ga-=45I>Nk>P7lo(vdBOX_aX?uJ+lhU5J)Pp# zPiJxqrFx~670tO;m)Y;N`A4^yZGQg-W!#}wF#u6y^6AalZKVEPsD)B&Ok}r4+yQ#N zDMfR>+3!x|TWn9#ydOSLq(N@j?yHE>aT~Oz$a7TbWosYRjO315`mo$A=(*Xm96xRn zP&Z?qr=c;UjbCs?6%$ld(!4eo6u@*NvsW-NYoPDD=>jg5^p}FiA@oD{nZ?S9ZQa=FAtPt-3{b(JmXnBN>r9=L!~Y{aKRLetHClf{L(Xkqf7dHjT^Q#c(k?7ZQQvfSvl3%1k-s`EjgCjia^jf*lklWB9dwA z>7owlVjV(=?VGjKVS(NI)_p|fIZ&Jt)reVyjE=4j#}vW^j5@K%@>=qQ?e1~26GG#J zR6^!4e)pT~c11JZBYNF$!`cSfu(hE@Z#%dtUm*%ROi^5xM3Ye z5~_$OlZN$3BZ_EN<<|_1>HSVPkW00cxCkr9k9of5)hIk0mEy z*MWnnpF2hEGdGx93fCj5MjOzX#zEaWVrfB-UGZk|>ywR@%V#8L1GDVna0gvw8q$H6 zm7Eef8>`zefu$s)$_`sQKA1WEc(iTza0=SPD(lYhh-Y$PVO?<|icS4!Zu#VsnP~+(_r+JH4#=p0REdAn z@vT~Lo)kXg4A9jkfc;u)2tUBS`fY0bRs8^BHvkh^9y-GZr(y4$=XTKsIG z&PU8)m(u)WweD{VI6oI~UCR}Zb1B`yf!*H6b?}sIMoKGdnwK@f+&>hbll@>w#Rs0d zl$SmXDh=YcKFH1+1!uGyC*W# z$4lRHc1~+7g$@oAi?Go* z0V$G8)kH_9q%I8oyV0RRX$}JbV4IK)1lS25`T2HTb9mJ+SJgY9{Q018lkRzk4L4b{ z1F+fsTQY}kjb@6};T92g;<}t{50wPY-`X`7H#BJrQz_3qFUvolhCbtSUO*ePb< zmECmmJBDzw^r_QtmymGR%fr^aSDFKmW4eZ*|Mo{*+CFtl*|YbstcoQYN3p>Z@x9`Lr_C9IA(qC>a)R{>>F)>hv#E&4`BFnak zM>hgj8~ReMbF1AVIredXBrV}WPAC+c`}7ALeBmwkbESsb-!&3Udct} z2`Zuk6*!@v{dXjTPIgGsFi;WOOt0RXW1S;k9&N&ffeaztNVPrd7VSi&erc6_$4k?quFZozHFBQ zB&xdu1W^0<-DfV!Vr#kBfsG$?5V;;9q+~6Q9lSa5!_#+X-13hORWVD~?C0}$oLWHGstC;xXz<`rgJ=9ef<=vXH8Q1M(smWN7; zC+sZ_zT6dK0ZjT>@a$p{BqzBo%m+Ucl%}c)NhR(fsf3r=Z5D(Q7)BwsY^OP2Tr%&3 zyA{o^=mpQw776#>*75Zb&m|n2`71zkrCHLf%pykEAIUHs^fVW- z#+iw=Rbv~2S}B}q6< zwbL;3Jxu2mwA$JyAJgEUJ=ZYb3#djbqMt*ZmVJ=jf+fZTbGIeMUJa?n2Dwn5wdcCZRo z^jbEeA{-0ffdsUlFnv352x2s|(-{ogw9`Q2F@9?!hD%A}qqk{kzF-yBKF-uMNH9)N z#Y&}u3y(M&>V-Tm3Ih}ZfZ`{*F5B-aJ^aT=UHEEEB9$IUqf@6zF#tiRToAY)q!Jxf zg3=v}p+{pYsF=u4W+LW6t~D9z8k;t2f?C=-x_bTrffRgjjeA&l1ep>g6}^)hWl4{X z8;#$!`veza8aUz3UdjR7)s^G0^B`Cn2};DC05)X+HR3RU1h|ed5)mhBr-2C!=j;(~ z12WPS=f`bYz~biOkT8kp!(g~Kt0}YbaB>{2*)xhmXafXZ?`k-o;wT(|^Xx|eHxbe& zkVY2)4*(@>YbCY+vE(8tK9Cd*_*hF$D5$F|rlyx{8bxl0{@9kti?zFfLbL&FeziD) zLN+Mn*05s~)VKE+CRDp*t8|U?YKRXYOBosTEHXY;w zFI_JX`EZ^f^o@g_lwPCz*wXf+4`|rnV~~CBkQaFRxMUXG$?s8{EPeZWF!3o{83$cYQW`ek6&L@OC7%{VY`T}-%=;&K1Q zexzvoEqa7gj3akxi^w`*P9D)dB)ixfSpPkkyovhK z`h%vhfBVpI4qmQ>cy+v{j)~1(u`jOja-!t(@;Xz32r&>kf_GC^)Wy$pZ;+D|&;W50 z%`lUv{WzSm^*-#QQ0(&xm{>z4#Nwf}12ESE z^iNqgre#gzzV8*10wv}0LN)}4^K=UdaU_31!Y(227n|HhrvR|pld$D?48tVB3jjz* zFns{(v~f-?(-QdL8S~xBipEj*9+~+(ON=o6O5-tf3nI^BI@Xw}2*k`A8z(Kc0x6wK zicBh3UPmrWVd2=<3&--hM#}5@k>P*@tOGVXGQ6S|4aq@YP+40Dc<`YQS|YbRWU0ja zV9BA9<0Y_%c@H&eVNG%{m1~wX0VDd9g@qi$@D%;KoSrKp?rSMxWFV<&2^e^fK}*~N zx`w9_P?Nhlxz;6`ZzsTDD?M251@yvX1oZyoKOfDXUo`3E760q2=$dlsP`Pl-FZR#>@@vYSG6aBpodT<{~-tw{ki`|xP*~OG0>>>|Iet!qgSec9Ph`d8T~(v8cp_(gkE9(w*&h?A_$`c z{|}=E{1^GlsHtnnzl?fm4f&T*o7a-7jXDgGE3WmU&BOqDFfo`KMIrvM7-Xvaga2D% z<>n@c%Yx?E|4Ne}(<3MT$A+_OY*>!`?fGjWz_Mdfpa~tXp}oe4Ly%VF%6wTpsSrv> z{vT%D{$J!Tvqr8V|1xX-8uBl*-dszrHtTDMTrmvviu&cActFO|KKiqfu_6A>B--+< zg3w?HT`38n7QfL;zt9ykm`Bn`RH$smiJxUx(CsAu*kug`f1xoXnhEq8aF3trd;cQM zNWuPeGR*;+IFR6jldIL)k>Y<5S*QMsAdpG%VF6^4bJ*@>X^+#Z3ps~I#r;(4a%MH* z;2-%Dzwj6COd^v4X%5g#SytBk7iUT)`BR-pAz@Ka3`O*xU9Ha)dgb}D!r!#@KdWhi ze-O!jS!(zH!ok51e)(^l>>m@lQoj8^@D%}c!Ovj}hE)FvEtep8W!zTA0>YhtjK;!W zxE%?y3K^<)d*SNhD}l(LOn~AI#Hkjo=9cw9GC#RXe{m3QLiP`gfP`As67Hd4D=}|w zE#Vp+96|^Gn^K1;^($+n>|;sPm_Yw!BfI?Kpc`KTqsURqPD;ME zx_mU9<`5Q7S~kJlUqlG$H^C@bEfGpyUO5p9e}U1|ut*w&p185P=n5JT76K9cWj~4N zAUY))0%*U0Kr$545yQVOSBA^oKa6G)MGab>RY)X!MHGtd&}0RW@yp52N_3%7qNDxE z5CW~|tCwsj^ZC7GM~C_U?|Oam&-(0OWejB^tFN5_zyYce`Uid1=02+;ACwMJNs&+! z*Mz_~Py&IFy9o*ZUx|<9f04feUicdFuYi}chWsnwU0+MC4tOmP`DZ$qQT^i_Oz6SC zCu!B~|DvIB*--wIh$06qOPQ<;-rkC}#ed)f|AqgqWP9aWDQCz-R$Tw)|3UqhRjOJm z3)Q&X1*nbr{}=aLdain{^pBcF#^p_K^utWe*UnQ|JlY-ZZH2o6!K|?ZlX#M?FOJEGmpGx~H zQ-xOal}74D3KBqLWJnJKeUCpiQfPNdQz0R&?W0X1@k04!G7 zF_=uF$B=^77!s-UyKg@WKw*dD_eOw7^pA{+)YO4;^;N0@mm?MVe}hZ%?+1a19s{}YcN16207#WT05pnZT^#_a`Uiq` zY`Qum3Ox`?1p%b`8e&-hfR2j(I7>Wa@HJLJ{BHEm(fU0w0Al~|P7;ItY0wHvrAN}j zC?q0@3O!E(a>TUNj!2DzRyhB^J#o{YCI!-|0n`Wpss9IZb}=@!f%Z%Qa?2Xf#ohrx zZv6uW2JE7d0Ho0>Bs7d11RzcRAdyka*0KKstaweRe`FAuL8g&Sv z*!fc+RQnGa1^GyL6x2kWzp${#WlZ-k4Du-esrLu6bPf#*ru{fmfKcdzgaPOn zG-JQSeg+;cj$h6F0U&q$u^sV`B!Ki=g)ax2pKi0F7XSiRwKh10M2cA3TqUTUADIA= z{v*+Yws65K+l7HY6y!~ir~PIuIe#{8MI|&Q-m9yDoHB52HAdXOx(k3PJtJ_r4kAeWS=>A^Nf+;Ke+O=)F`b&!VvjC*& zH}*pWLPSM=x0DzOEy>X#)TlVf4}(?>Z}2h>AcNOJPEk-w4Io2T;oJSGAy5QZ-fNj? z{^W(%tQZ=aS^$u-ssmwB0c#qM3}2-aq5sc-f4gZ<{!OWIdRbcgY zCrp#_zZr@3uRalpR+_c|V%4=PbPbsQ=@J|ocG~~snE{Z3l^C)zPoXU%6f+Qe|7cwi zBL3}Pfy*bX|1r)lC4csoNHn#DiU7d*Rn;#ai$cLXW{m|AbCA?Z3zqX4$U>3O0R+?r zUa7y~;1yI0LVqq#%jR@~^Z|%fAmI<1|EDMcs{2RL)!=XRugL@DkmTUCK@!>iBOP8@ z(teZx0F70hgL1MMQpjIv5Mt_21I+B5AsWhh0Vr(z4tmhKKnnh!)a=_IF{pq!!6KLf zxeZXZN)X!eFDH|0Ey=gxr^$%KnB^0Zbye)p5Kme+t{W680JWh7x?3H*?Zgdeet*0NMf zmas%Hvf7W;Th>Y|Ygd;10Li$)y1#p8?%a9ZnYo`lHZnXl1+5gg?Nwo;hthr>4$^u}7ZN<8-u^HI;qYL_-O zgJqM6>KdO>r{K@zU8=m`Np0slHEBg6+B-!!Uv5CR%$IB73hB7qY_vD5d4@u#eaW?NzjA|S$ zavF#7{&COVUZ@iChpXd#)7Y&Y@?&TpF`Fnln>(};MTcog=iKbIDuKk78EV=C5NH@XJnJiSGTJG( zTtS-w9qvP~<7gMWAFHAHk&oJe1*H`}xb0BmDv9-$**)NJ2l-UWr;p>>hmChV8d=-G z;lMETh~oO|EdgzDS$!J?h2tOB(7f)kFBC51yenz7fu#j3*d+xviDQ|lP3;P9Mm{ed z%*gzVmV|mg0abL?yJk&%%OPSy;RCQS``ApWy*>>mdG-yf_pU1{Fq-5scdfH5$Ee&N zbpt4j6@oQeOT|bBV$>D^VH{` z-G|vF4GX>O2nh;_qL^2iC@=TVw>Uk-Vi@-CW7nEn1rx4pm$Fks1HA41{tg=$I-HUN zQzo`G*+lk2aq^MIK3UPApPI>yV(0H-ue#Vou6}fgH$5{u?Mzy5D>K-Yfnlwd%ruS) z0X8<`VH(~jc36~}gjxn(d@Pk6fy0QcLclXN3k#$< zc<>{VU^-{*Z_~S4dq&uW{aT2m`ECK>G^YG9EXnNIZ&PvsZ02*ucS+6|VLF5Z^}<}}Q@(TC%-&6DM+S#L>j`mN{& z51DIh7#mdTUSB`Jj%<1;uNOSv$!LbuoT4v>i5qarK>n7W0?rYi$3M$xqB$r*4ZI`9CdqS%nLSoGGm`_t@Aa=URjWo zS?i;Ty~K?(d;H{#rG2|=eQFJ7k4%Oq3OeHyFDRPqKA%K37hRRlIYO2tdTK7%EeEgA z?giOVjIVL5Z>$KQr#;B4r!v2aSxMVbZ%3U`pI-GTG=P;EC-ixhf5=q`pe0-|{5SKdlS4Q=4P?n)RlX1Z zGgnmODa5Cs@AvvNWWXAlWMnW{zsZX@r60JNS`G`8xzkra?o)h36tWC`1W7%WS-622 zziA5bA04f%0CuVSoQAjBQ`sDQL7+YYsx7f|@Zd}~hj1ZWbpiQ5kAK(P6iyG5yZ3e8 z)CEnr5NB;06`6rH4H_z`4kz;Wl~{tyy{5I0E8A<+z86xV`j)>zu{H{zQfE^oHVm7V&?IZh@$*Pu4^~ zyWO2Q8Hd9#gH|;!c!S95KtXNU95xuG80-=hB?f}ytxdM4*QVHn zz-eq$7SA~Xi1QMoAI05{xBIU*J&!uI5K^#}$;^Su@%H*V16 z*IjaZax9z7%;+)rduRlhO&S4S&HxUXr!#4#5DVcpdU|l+aNb<^OXMf^Zce2Kx^W;o z)RIDn#F|E5?z17j%x_N$xN!sfwave4*D^>x4zlEx%(OWE53S+-95-k(v&$u}ghwT2 zvXBF`LfhWz)}TGvm6_EIt3C~3XY|1Z$mVAHBhHH84cfVBhoQj&FV*li4?Beg4vx!RI}p+BC<~U{x+CEDwg43;UOYYm$2Hg< z%V|k?N-S|j9S+#aCE7yB3!a~=n|LS@M@?_Jd0EY)<2^mMxGvj)+Z_chhZa~&;VopQ zqryNa?Mb4>!UqM9=2HSLcniNrKd(y{dwN9$-Ns* zAoIvhneZtN8 zCj3@)sFTx~#}H0}NjPK?^H0EH*TY$+0y}kF-lqp6d&QkzVZC}fQWU=f+3^tEi=98N z`hDfY;*tL7UWnMno0Ug%NP%ruKjz=OYHoM)5g3L0hgE-c z;r*VFTT-kfM)9inWtYLQ`m2nUlGu(!OEJY^=z8V-;C0$iHF%H3J~oT-Za+MBu?M5T ziTt?92tEp}HojtDTpb{)xh_TY6ww|k_?T#xsPxoliPoN=f(NMRB$)$buBS`7=h9Cc zK`B2%28Nt;{@QW_&k1qKDEe>D=%QB|kE3X0O*`UKMDYVuaDa}lZLg(*-Bd8%v;R3N zJo(x9_1o$2`0=LaXz>n;XWFUo0GX>BX>kJ;)hr`wsIP6L!ir=Q-89fzOUu@#YilV{ zx{3-*p{B36g_!ZLi((r)h?>bfNk#MRwOzGD>ycY+nrQ19np;ha?utK1)VT&skUsU> zSJHiM$F3xv))D(w8jr+cR5(KP-?e3j%CA8^?^&~)Xenx4-9be!(rxj1iZ@fiNZAwZ zK1@e--G0L={zd zQ9-7!x@@$)vaBgs%>TrUpC)2W?W0sMK)0=@Md-~LnDQ>Vy`r{iLsKo8Te;%qeEiSK z%PKe2C(+zwT2z!-_>ic(qaMGjtII065L(-qCbMB7*N*<)6)fmg!}#Z=F_>oU!v5Bt z2b;ReQ2)+GRh zFA>$P2p01Drg3IvZ1eIenp#aI6*OB{MoUVG=F67dy@AZSU95az4ISIsL~)A>j-h?f zU3+R#OwE%EJL@T3Q%|KUp$i5}&1fSXslmV~UYhI!Lo!&{4^88a@)#A=j16Kelx|!_ zMF(i{>J$|kucP0Vmaa-sT)vv)@vFI?UYP&*IR0X5=`yIYiW2X_umFlXX|93HzxobU zzKNbq-&9-aYx8wv{texBfC}f)eyjgz4b^Z@n_3gp;cTJt{<;{ERb93s2QBL44Lz^A zY)yG>{fctX*6ymVgx%3OtlBG@7EVy{F)G>$qufZ>8efgYT0v{ArtUggYCIf^{dHfk zh*L$z4>n<%JB`__nVvn?y@6gfSO0SJiJ?^;Ki)_M4--9{-oBY=gy`lc1_!C)9HpM+ ziRfjbcd6tYN`hi!&Q_x$JT5L>z2Yo76jZAyucj+c)2_N;k?$56?`(l(OUvoJ+|-a%KA#Q1DPXhDl5CHn>Jv`Bj4?D^uDd_RMd%VHe*FM6n6di{%a=ni#+jR zkNfiT&J6zqTGE_f*iXeHbhLDoicp>SEZvTB8~!f-y<}Ng59Zqxt&2BczM-P{$!&f2 zmY=Eor_uB_G9Mj^Z$RBY7jN8lrn0hWVeZHkR2!ewwRH;l$C&Y0A{N2f5Py`+J&^#G znB9@UqrtqNCgVaW`p13ohj@VAUWyreBNcwUe8sA&%NLS6Dc4L(;uV9C+K;;bmaCE* z4riMSL2xo*uY#?zw0PvPTTtnq@(tS>yGBPRkhlNDNo15fGK;TOe0w3OFVTpm^OBZ{ zgJv3<`v!o_U6n}Sy%4Yc34ZsImKhTnER{%EFu)st48L;;eTfBp^OBZ%9;>=($aA9V zA*>kXV9+ubE-J$}V5Wfy8|li``dqClQHEa}!;NwlG2*1F@WoKivJ+zPlSxW_3a?hY zsuCdjlGf-$;Y24v>R6)VDzvpOAm%w-i&fwn3;sld=@Tzj{e(w_XFE%V6TK9iI1DVDNX&jhO^@S!8$!pVZ4h~U(<_&4F?#~75V>q%D3Lh-q+qG@d+x&iCR|w-Wcqu*J84W~kPs zEOWnbjzWg}qsMtb+IXAPJ=j0B#@`WX4lEA$C5;y^u9SYOier%oF05S-(Km3o3Z ziJLTjkKi2otJINzMRY5@C^!fDD*T}p)Cb+mn@yPNv{D%ki%kQQ6w(rul$1JM6|kZ% zlVb!;g9B-mV!L@s<8KNsakFY7Lg)JBEdQ-?maFlE@lDGg6#V^ihTi8lH)*^C?PnT= zQWG96Uefq(!8y1T%bN${o5qg|&QYYgH9Zz>v!?}@SW&ed8N{U|F`>(<$2-cz)Qqp;B^pVqA$d$wOfp~HVuxcM7(uCeT_E@&e4;4{^d`d zG(Iah$4M&1J=jYc|4YF+CQ@HGh4CK=&hd|kBn_BX%U}LU){jFSm3o8U+@$ea1?K=p zeIMe&w)MXtIL9mM;FmD|4Z*KQj9@hWj^G@Ps1$~~FX{3tF&0dNBM+6j--kM_KP@P*< z{fyuovxf)%Tv`62<$o?X2j?mER76jyyn@T;Ks=?^M&v&wI0x1#bvQ!)D}r-w>Rm>G5(@0xe7zZG&mRze|ZM4TCr3i|8$ei=`rEtfHcfvF2-MUP9>OY zOoIc=5RL>*xiZBGsTh+a>73eyQzFXL>kcHJI;W=u=U6bMKENw|(Q#N%&Si3tmr|HS zeMy(Jxtwv1=+ftl9)rfm1?T83rEcXnH);IAa+c>nEv!`$)_+xSj>}T2KhV*&{14W! z{G{j~w5hJ?RaY`j?JUpP^D~Fxe#%X6sBa6Wg#RckS90@NoB&br!-3H&^$nPxOoL;1 zlzKHnd!D~cgF|(cg2{bJYyYI+{Cs0rC$0TY1efR=(VicAjMk(B6R&A-0F6En^NP|X zofe#fWRx6Pdblp>dxCS=i&FD=wMa?97T27IFejP@2cls9#;aF2qk3T+0@!2=X92Uj zNn3o2;2Z~{eWyZvYEL3}(f;^dk>LmpJu3K9Ctc4an31v97Mv+wf*@MCNpOz3&@0g4 ziZD7m#N2Kg9Q~kY=s&nrV@<2N^H`~|@|5MBii^= zCyh4>em0_hx}B#4=bL+-Bf6UHJI-nAM~s|zM20WhahnieOS;V01n1jFrM~Y&owixMp5^(PQIA`X zMav%&oUaVS>%7Ka5S(uTm73!>H)*^8RWpr!pcW_CUS87H+ab7IChfPxFKt=6d z^!LJ9y1+S{^RmG=UDBl+xuo+8486v0Zqg-n34ZDXlexj;c$FlKK-=q_P75brh$;0F zzqv`{uL#aJUGNB8jK64n3)XtmC`QgD2@E}7()iB>-y}F|;U(PbXq5P>CL+Il=kz1bvd<+@$3n z7M$-%l#)T`;_BMLq5hc>zC+76-&6hl(?f@yU-)YfzY>d&}4Wk7_x=~b0x=|EqVH+r2$`~N(ZKAh?CU- zh5gik$6c_I5VQdoYa?X@>O|#yY~0E19bm~WsvP8v1z_hv{?!}|!UE=uD-d^AH&4JT zd&Ran0942!jTU^STEhQ`T%#1)$6|(CcmNERu~1ap44wkDa?gl#+-aVbp~67Aji2y! ze|U+I7JdLk#evB7n`FA@w#F;Y{o;>ln+1cbQbpr*y{$^^NBA{0CkQo&+)EytESlu~ zEhtIKhRNyz`jBFBH+d*lh+;o;K=GW*MhY~oKflt%vt2}=aKQtsMn$ud2b;h#UAjY~ zUWsWc6$2{r+5(T7yFrnwI4XAhfH4g&ZaD}P`)%xKEHbNc{b8Z!Xs#}5mFCi{-XvV= zRyGfVP^6Udr_X)` z^fz(2gbq#Dn!?J0o7bB_o|fR)nhwfY&bABrvkS#&8WOnK&NW^#5xCY=a=y64#9DSH zeXL<$uk60{sio=MqPlw(tWvipPlU=F8v-D+8@U~X9ZZ{8{o8DzF2UQQY!rF%1l>N> z@L*a7+bmrgWb=m&%KnHEmsx7o;?@#9u762!R_0q|rfq;c^`@v?*Bww$NG_=vq?Sw- z7g>90*Md;}aP_}>S zl%8vv_1@u(n;=d=5>WK&jyKOgPj%A^m)$tTQPLh`$&Wn*Hzvo$nk9>{q=E-XgYD`@?E zY_u$3qiv(1p=&4$xDjJC&s~lV17s7fCJ@4+wE$U{*m%O_*qEjSx!Aa|tMRIUtg4Ng ztov0UG$bJmFMBek>AZrjF>w62rk;+Do>r4ONcJq-!a-Oo$+4OIw(0K16jx-*m!Tta; z`UB%xla)1_@8Zu)0FE0GRWedwfEiIPdjQOm1k9o?62&RDkQR(=n*c7~7B|#CLuSi3byg#+T=NvGH|5dGBy56VjOH^~@h?1n3( z8Q4v*keEgP5HEH~VNHfB(uY8sgcjWFKj5wZya~G|l=0@rv5xP}#oYh8xD|YBe%MN5 zMVRgRiOK-Jl+D98IUPjcfbv!2^T~S4NI_}pH&{z{5ZXJ`Rrs-@$rBzIpi~J`uhb)~ zOofQL=>O?xT=ShfYLk^w0hh!QZ2-!V* zNJ(Rh92NyR3EHpkdJQpSz6g9WWCe{IVXSzf6c5kZtR-@jkxP|)=H%Uiu2mtw1FFg( zB|NLR;ar*EooF@RCh)!*GA{I@&Sr19_iEr5*@Gz)WPBV~*jmo=c@>ERe*E?G#Os3k z5(yv3B4meA)NB%J^=03a&&1m5^K->9mvKo|RLESht&rP~F;mB_>V{qH!R8XYIG59ki>kUE%y zM=g}T_K)N(H4-QG1(>vtcD>rWUmTsptPeSM4EU&mg}Fc$(Ys+C*B|_?yF*FPQzD-a~GS_YzhAK{9&V_eM;al0d4$_{fuU zsl-Yq7ARQ?j@?&zbidax-#r9C#pS`ec@#t1TC?Q$nbLr(RbmV3Z`sC%u}^RJ z1?YFhzaFAtlH*j2W3<4;#;#+ddu?MA*K{nE`@X~v`TIvG!ipCak^FD_Zt=k7YH?{% z;+e`Ur{6f9kTcjQYjl+SQ%3e~@$ucPzR{bonrP!ohO6~4;_(e$fJhM?kWPBR=NTAV zUyZ&1jI*}qb{NLux$u*t%bZy(;|*Q0Thx=@dh()S?Knfz-R8ngh;JFk+}tpOPjEq< zX~0vIAT1?mZsN%|%e&aRliej^%u$Yhr%bOWA9$ziOBNF%huo59SiR{F$>iS-aSiU( z6q&}y+p-}&=kskqewq40_yGE@S{SKCjfOTI_)2`acPaF98&2QLqP zJ_u`E9Sft}_SMe?+>|s=th(8i zb5e_+8rVLKT!9;nn4b4}=vCJB%wXwx9V+PsI~jd)#&qevQ2(u{TPn%y5J62JY|faE zajR6ol|04p%iUH|F9kW-abWqzvSZ4b3=+Izd#Q@?v*B;C zk>e-sMuR7IS$9NGENUCZ>BdJP4KJa~+{LSh78P)Vxa@trw*hZ}j;LSiX9(y9&EvVq zOiN`$EYEx{(3?7KB%c<=1!5T*XZI2?ogbRjDB_n|s+xEA&8UizW)jkbRzZskJqBL_ zj*CB{Pj07QU+8#PU8LK%rnSx+lDS_TbA)fyL9fwecFP~VkdT!)`)>VJ48=!$?-i=+ z)QTHWp2RphnnExgqXDZ1gJ{$uLr5)Uv5~{zNi`?)g9PqGU+(E7 z2AUn+6(P-f*yB8H$9Q#AhK)$wXO43e+qw{Y@|~_-R@;?cnv`ubd$2?opF){MDi zkT1bi#gQdost^QJ^-Zd*agSKAQqr%jTB)2qYO7Kd@NFx&Q@UlV*j>CR2 z2-j&w{8TiIP&Bzx2txfkRbV0wY{4eYNmN+3Fh5WmfaV{Pwp&#i5DQlgzMu;E6We2& z2lvJP5T!)ui|Br_m@6lJO;hg>Sy4Ipmx8=ru5S;S-{mi6ZVIcV=v2Jl+eAg1!w9F_ z$AY7cU#qfo?L_pr(0>li7KS#9mp+&4?1wn4XbL8Z_mNfVijGsUw@mJC zzLcSuu}VXd^;4(1I)q+_t2C)Fk5d7JY+o)MG|$uo*q!=J^Ycdv*RK?{qz-f!{3bj4 zOqj)HOnUPEqkzq;Esyn5+N7Sbg-wztaANs&Dnd#5$h&maY#koHduOr0{00@X$qT1Y zJq%_yE;YcNtB700&`rOkTjv@NY<2#ek_t`90wQCoHkgZ2Y&@)vbVgUMmSrX_O0QMv5mLmg%y$dnK%j0xMVS5kwpW)($= z97k4&sRmJW0=*w&YWEtdUUHwciewq1?(b5;i21;yKRFNLU^z8(b8Roe2~*Dbgfi1m zVn>g=I)wgh*rLXg^->99zfRvaXNQ|Cm6ncEan33nR@*CGVjp8X^P~BGBLlMc{zO16 zGsjU~M{AXYsk~f<)jysW?AfeG<^Dt)zVfFb+9%fKkPBI#Z>&KU3SAvEt`PQV6a;f7 z+2UL(!OdPHD2-M6Y(~YG`fGG|!0@BXs0}>B^FLVU{=erXL?yDaKfd6;TO;Drb*BUQ zZ{s%Twk=&_=h>R=3{Hkj#im-#-xB(UplR5H8(4 z&}?L|gg(kKy#lH^G@3Dh=Ze2Ce%FOV<=!pc$v7WN5h&Rih zSQKX4h|LrDg&V0EGQ+<>U2;3~KQSFK46Sk2isKx^%>`a|YVy@P%cN*euiTl!PEO%b zE~j8RP_H9-y&~@fOu_K>>D4sYIF+0U6) z5U%0RIyMTdWVtgYH~C%&88n&~9ImliY#>D0-aX{f4>%cddv%o}Jh`e|mIZAiFA6He z_@b|CuP{S^J!{XbPK{CKxl^akNzTdZ^4QGYxb=J+hx+HG-OGa$S$7a%gcRd>eDOcK zvbTqfZV1R_ue=S}7nt)DA$#?TUqIhWx&*e2taW*p^>TYVUuKq12Vevrg4V8`>|#}w zJ9-EA)tUj-AhRVPaTo41qzG<(vTo)NOMq*dueTuz?N_L3Vo}49i482YY|nedFx~#; za7=X>OZZl2QA+6A?B#V6L^uE;MN$keLUPyGgaje4RbRT;??iqRn<`@(ub@fmI3p+p2p)5e~*T(A3pZ!wH@Nch|%M|K%^NT-(0QK8Ma_s!rKqQi;V(5 zCr5uK0n4}M8jZw%ig+%uO7EP}D8CflMHc>mU@8ICbsb$^uuHi;ximF81C%Hd&Bv(L z{_V8L>_h?y6|GbE5n{_sNr~@&xx7h&GhMjGL4IZL$zzy^04%~g=ISv-rnk*OsIFOhn{0d?JFxqs#kSrU9Z?nXM<#4Hg0@o7cLqacr=(D^h(ME*qd za<9k@>x-ycE5)%7xu30H^0Frz@;hKQHN|i|024m%rPm$f!T*V+2YSZ5Ct@8aeV`VCiY!gobSRqmdRz-;Eu#joW2zK)JJ zTDe2N-^Ao4-zd-%5-rej5m7!{YiiDl~GF-udy6 zc1fO7@b2xk4opo5V*~hIcy6Iq^rz1&oy`Hj-96;F&$uUBG+MV}8JPRcH+VV+e9Gg~ z<;B)+P*2D;zf$Du`1JHHovw@}4zV6m%`IHH5dU&;xZ97|CQ*EmG^ul~867Sqn4yP$ zsN85g9GFiha|ZtQEDb3Q7n~pTDm3soB}2zgNrfy0Cd(4Ydt6-)mlDyU;c%(?9H~#q z^#W3STs-Xk-5t_bW`s170z1AQxV>`+Lt!xqeu<>DL1^Xa0cT9F-RTV04)OV1JVC} zqlN$Ga2Ac*?KHZR{phx!YE!XZ7D!j*Y4I;(Oikf0v3GJGYwSmPhwYyYuEegGMZQN#&>Wo-1kA7*FB}?#XS4(%;aACA9hU+zdkf9pT0)d`_3C2;rXtrReMGFyiO&r zQ2lw6n0;b*7v-nGbMTo`<;i`d(T7P8VbVSeS8`?cXURK()Qk(@eY!}->EHfNg2m`Y zP7=T0*U5kV1#=@Z;2zb-Uq>|YR3;J;2vu9DH&X)C=(E~=ExlItWg>op-eR&f{-}I4_f1j9{`M{um|Lv7^W@=Tuwo+5Y{d{V1RCaD?g^;K zetaTOu+EclX)EN=$+9h$U3t7_@o1RIVb;vQIRx27m=}c4;7X(xc#CLDk3RhAOZg>FZV|o zkdY_5UOR@jk#^euHQ%lS5A&1Zu=Dye54eXCsD2g@t@P|}1Z({SS|c8zvpSQHV6*;Y zawN71B83rQ&zD}Jwv&Kf*uAd4`zDN{M!-b|4VH0;4sF2<_)!*P6X)uV%#=0 zPSi5>mp&1(W&mb;4P4@dGen~U)#`@WZI}i#_tp6iONl*40F7VOEj2<%-0F*M3vAXf#6TG&$;jQ9cJ zNG^4(W+aaxnEsh|0lNx2FAuN9k=FQOap)33)&$DqGT&wC=#+xN7GAVh2bffwwlHJX zHV%brI#Fr?*vPITuPGOa`&*^HL|UHTW1tSiyKv;1p`Kf5F<-k_?5ylYOBpA~)vXW( zIMU7#`bx4Zq~6zpe5B4QTZ*DGv@|xN%bOa@b<0OJPcIt)twYuYm_* zPS!gwJ*@^Qs-rtqw31F|Lv>){xBg_fd|@FDy*y9a+Bq9ZWPgPH<0q~^7tR&00qQvO zROcgCaoB^Vu!C8_f31n~a!%0R#o4Fw%__zs!NSCjQcgy!!iHVgp9*H!qWiG%nj| zKNqTi?N@~lQ8Y_Xh!&{ko7wdL#AaQtQ?gqG9YfJT@Jw-bZ>v;QbTYDi)e^+y1q5G_ z11eDfJ+!D(J5u>n@c<1G;6!c5`F)u2n0nbq_T(Q!zPRXqqyMGFcCjj5#+K=k2~^JY zS3WBpkKL=c7?7ij4fm$>LITChw3F0|195K{uyAJDQj(IM^^jq8J>%AWrnCr-z$=1#N6J_g24j*8?Ci7VfD9C>D^nEoSh z(_dm6W%+pfKL^Iz%N`MUP23*w{?@oFn{WOJ&x)EbO@6L20wUPQ^Yx*$gB+J6Fm-ws z{Ge(qx`S2sJ#khxp`Vk;9#;2@_*kpf(LME~-D|KGdGgwn&x5knfKAy+;+dPd`c25F z5w5vzf`r5ti9sZFduDg+s9LI}eowgB6}?~HCig;8z#5kQ;e2Y)Bqg;;SV9kR&0(r7 zt(ULN_2wOesp3mTB1qScqKFa$vZj|vcTIY3vuHur#Sx``UWJwJW8}qa6#M;Wy=GVt z<#dSTFFHJXbvpQ3FGlM40KG;oK%u5hrSXG=H>=s|wwsY-dj>8)C^?FLjM!r!Mx(!v zy@Jc|naMo=IwW)-=eu?&lzDHqmb}B`(=PhEcmF=to&JTYiGdD1_eaHig9jLurSQer zN~g)iJmR8c#uT6%$jaBJAIqQ&8l3voJg-aUC9SGT)bvQl>3GV2f9Y)bwpt;eVZEVP zwa@|Es>15GJJCGrN*NE{%Txz6nMwXzxJYND6ku%w243NoKK#NJYK?x{R zKS-lntYu%9|4;ONU|A{mQ#yhu$jPOXa8((^!ld;t8RRYnppb1thb0}u(c7+3IfuR} z_bv+kkHC*>PbjUi7E{@Up4-BHyKaiv1!iUM8_|Jm1&gl?<=hVa7qE7c2|^tf?{`au z4rc2@rwCSj;QhD8D*t}b85ce<#BeQ3%JOCrQI;A5zJ5R;W!uy@VbI3w7C6>LOKmuH zN)`jgl`5JTCxBA*h%0>Tzl}nEWFok|h#L&=k#Z{M#B*K$)zxQ*)>NBo&H(>6Ch^eQ zPja|X&W|q6hW?)FYixEC_0#t8Q!XZIyefV_@{Z=m_79EcOS`L}XlkJT1dST#F63l< zmCd-gn@%pZoKDI33>A3UiUMB-uR-3l;#58xogc(BTW)G{MNGpX1jtiI#+D+r7|F8f zWO-Z<2A#D<^VnS1;tm$b;15_uiryBo3?f&~$+Muaap^7?sN0dvYGA3NMNiO2=hnoN z);GS@Y{wW&D*f61$dmy@zmHQzCAmyvb!EasNnz4ia?Jo~5E?op`3V2As$ z!)Pg#XM~fSmE^fSg{OB-EP85E6vrr&PeF7oSv@L}IKcJKmnVUbP&KZeq_MJAEYp_* z&RSfMO`;R`B-|n(Jq0tQTf@+17u@%~h?>g@Jmt-WijETV&^$|TzGa15qKDukteH|& zHot)>->7?g^k@qf9q?|23 z#|?T`79}M!6eC0s*%RSMz=Ht{^DU>DpVW zJhM@DgUEOLE(PN?NbIjwNGd7Ad(3-~kor$L?9!7Nm zh;`#3lB>35b}ufHDp+@h%u(wH>@a4t3h_SVnK|%RvVl&`a(e4UUb2B~wN*r;Ere*A zDenI=!{G;ZIAMs`?V4396zwJ0{+d-~JVoK5nysRoM9kEeFuXrA%xpdT$n=`7CeUIn&lT2 zOofS-@ecbT#I@i{O1ymz!W%~CDKe2^tdjVB=pM|O9Woeos>tQdB+H!uwdNW+JzS3Bf4wI+-_=wLYe%HZzte@%$Q)cn!>SM~e;4 zu(Bp|EO+%FaDQ#Zbq(U#bEP(hlGrTblcLZv@ZHW`tn$HhrDjHe2ea|#d+_AEyas!lk=kIv3@7qRCNh|E0N2H9 znA*VY?vcfZ;iVF;58PMRh8Fv~GP@%vPWM0=HEK`dHvOq$!sWS$e_-NiH7O=*_B#?Sc5^H2Jmk;~q z9u|fa-iVjhI$c#{h~Z?heckclFD00H@5!FP3~YkV#w`OlcWSLbPRWp zbz;5XPUL`@;iWIyF529wZm4vdMiFmoydo{T_m*e!fXi1Zf!4^>;^;^2l9ay_NS*-kDII;x# zoy26c-G|FaLTguEE?>^a5%FtsJXZ6&iiyJ@*v0StRg=wr=tNKPSWOoC&wgXi|4d~Q zf(^$fMfvF{>2Y{h8eTKGx}Tz)+t!+oG*xyLL8W4zOy$1zR z3Io3i`%`mut+U45-y34rA)JwIhW2&*DdKBt%zA|v$UvwXF2k32FVCLA7kr21(7#pE z${_mYqy=9AvY4*3p-t8fGvM9Ac&bfzs(1tHWfNFn8N z)5PaQU_qQ7)}$X2mHbscOpa{n6M%jQN)u!975;oKe*E16-*hdnzz8g15)zEyfhYAU z6X+|#eQuFo(AG+m_Grd{8&~oaU-UZJz?A&07^s7}n%V%^x?&(OL5L{+!-c+S!_qy&@0A}`VvvXyB|w#Wg{ygw3i}`du3CcbI| zbi^8jFXD1=V*IN@mHm;A#Z)jwn8)74uw5Y6OEC6@X?OylXnH!q-Si}})b&rfg&|Qr zI*L7uI!3T&UVI1I+F?CP6rM`52q%VA9{EME;~t1+`o-A;ri27((r$!LhG`Ogl&R|yW5a|`* zMG!JQOB{^5XwX$^HA`Z3vkcg#_QZBy8#sU8c!h!vOw;x$TMC*48GoExmTfK7>9rup zBiz{e%N7ht&xf085~PMr75tkNPs5&po9v-Ux4LzI&#qRB*+3ln>_IMYU8oBuJ}4?wm45p$yB9fY_qUXn3S9)#J6ZUCVPjIanv|qpdwPhb zUSGnjA6+7?=_`fxMfj8WiH_Fi^7(1=FEnp{lrU?FRnza-dWP}%85g#@qD?nR5P{YR0D-xfUx)g&*17E2Uy z;~i_dv-rOZr(c9xEr&(c!cL99)aV7|Dkq!!Okr;aOjE;H#Yg5xX{{mmXj=KjXhW)p zxh{|(rtELU6f(Jzdcv{1Q`gLA*L+WTdgl^p&2x8O;GU5IZ*}l5_qCu3r4xTT+T zZw#FF%Qm;_e^$iWj`P7BO@WH(I2&QG$yh+KI4Q!H1~d%W^5yCF%W+?|PcX0_*| zRe2O04_J#V{YZ3%PULFG1Nih8=E=jg+W)#@JM2QM`Hna+rrx1DU;cw2JW)O)y-~tL zGWTy6N(0*n!TIoq3EmSHopDNof`9NMq$N?d_4}^p@AE5&#d%~`W!4G>o=$>32uVLd z`f# zK5z%R+q1amEch7mgQ9O1%@%>u;64)^^K$-yj?Fd+g}PXDGyIe;&!Da7dhoW!O_bdj zQy6+ikpCEthD*w~6~DkId}rpW7UR$t>*vjhcu4{-5E#(^aze`ENiqmZwGLBs4BZkHmb>hzZ{WRrwLQ zk-_VQSEJ!;?tM0KCo67YxlfEfuuT!56@tO6E#=k4tEuI$-Y z^Aem~jD&$cEUk)*(@$wZtH?4ZrjIn#BTo-$Xj1}7YV+@H4mFtXjuL}NGTA8z<4#y_ z?Je2k6@z%$)bien+F#n%(b}`k>Kb?j6?0vp9G~`638GLGdK!@q(2CdfAJsPwO`NbIx_;AFBh!=+hAR0B9^NJ!7MaX+TR8u?0!njeOl zY@gO3; znENFXEBT%3frOkq6Ov@#bOWTu zTWI$^JpSdX!A1?Z0Lov0DL^o$7AU7;OqYo zO{!UIvEx)^@4fEp^Y?M*j=bLKwuz{nx#wy6W5$ic(VT6_9>@xDUIwHl5|jYL{5l`fLQ5nR~0|BHDw zhm+W>aSxTdqpNlNn8eGa&|}!Qk%oH&T^^IWrcHcD>Av}rKeD(&d;L+PgzmqAOFHca zH(G=g!4Ubk&kDw`iGyJ$ufSV^F!q_h*`mOz<>$kK>C8xGCUuu<*QcSDlPUE^Qcl;;xUeO`2zJ=gukp~$Pd|!0F?{1%uW7V|Yy0O)C zmUt8EaQOhm%Zy9%yQ~o%OP)Mkeem#>`o!olLA;kkG1OY2Y>n<(IR4JKi&$1jmpnV$4o+)c(&E6*P5Z@;~AJ&W6v@DxNf+_7}aSo)c+1+ zuh3KZ6~J9E*ke@GQCW!lPzjpSlFi z1+%Pu(^ae(9fpX}SRm)7*=YdqaKY=(t#i65yK*;NoBo-|3GQ_mlnl6<(n3;Kl{9}4 ze&X=rw~)e%nTM3*fHR+IL^HcVo@Pnc{K+q)D#A14ka=+}8Py?dg7X{e%paV<9F_KP zc*`km5!>CuT+bE>{=!&@2Zga(GHp+VOYEf$fdb04XUw%(9_yu0LHOf02>sMiasc*G z@{}HVLkej0OvY%Qai+X=&b+3^&Qa?>6Qk0<*dRN7Xai)pW*Dp7c71DHLsj|Md{zQD zGXxRs{N{6q<*Xj+S0OoDT=JJDq@r4u6`d6AP2luX3ra=_E`B@!i& zDEf|cMwFML$Gom|+QeGP%pM)y0g0YNHB69M@^yYE{@o!!YM=_K4=BF^x*^tUC>rb) z)Yge_|6*SExOtx8xHNZAGYFjE#K|x>gh1oX3aupK>i{eZVJaW5R(B-OEDXyVsaP6% zr12Uktp|sSSol4#tmt_q6p?#LkiKlN`t#=euFO}tEnmG=`16%7 zq3x_Kck(x6PHdpTjfa=%Lrah{VX0irZckVw!@2&M&5zO?sKm;cVH-Rsu;W;*J@BKx zFw(UB7&B3m+<^<0(-cL;uT$}`NQ@r5+U(K+|3oq2n29%^R^oTf;?M_%;~Zf>chzVj z@eIGb6x_4;Oxb&KMZFM|a?sF6?mMPq?G}!~ktkSsdRxp8W!}J5?C}ZKi<@<@SMQG3 zM>7qZ6g0kD^bgIAkhdW9CsWV7vl|`iJ29uzQP2z@ldO0J-<_`Tgzq+07&D_@0iDLd z^zhuPug0Uj+=1&j@rM2$< zsBiG~*}Mx4-vmW{g&LitE8Zs22|RKhAza+0v)99_{(KC^)tmU67h97-4-GYDghUIC z(kYU2*}cL;Cx!bPVVhUkol(ch7%{l~YBoz4?s+^*a3TCEnlHU z)!=?_>Y5>05c|6-sOcnl+@VUzY*G&rJ&0LABUpS~wsd5Fc4rqd@oqYOK) z>Su&G4v||i5a$55;#8f_{f{WQavZHBy*dt+R%|taCdeN56EqJvt)b$R_33{{xWdo~wm&&dj|=$6b*hc_KMV%>t$(vXEIoS~f$ABoP{uhj15 zS#In=n;ZJz3a%34xLORjoFdd)h0C4m036Uw2Gfhh-3N$*!d_@5`NhaS?MZZ7SwDYT(Q=+Q)GclWsh?Z2H2 zyhOP)^e6N~?cwOT{0~t6`xj@PRq!|XVqoXa&qz4 z>u%8U$oTv^3ay|JUsQLKR(uP8yY3F{pS$>bb@yox9^xO>mCznP!T($LlvY}XFR!bh zJ*&h&uX{nOdWnBk_nP*m8vnNLKUz&KzOL>at-b-@Sl2{rZo#+KQEBf#;M?ljX&s&T zuDWj8#~yrdT_3Ig6aI4@jrL^#|F!NLZEy%bTsK1d{sTW+H%1$uz)#lEX;ahqnYvlp z+&q4vZjtu$7k;VkH;uu>FW0eXE35dmx<9n_4g6-^7H#`4o?W*?+ug(O*B#IfkMNv2 zU|6Yu{zUW%QCj&1murS+aoR$l&D~PrbEoi*f>3lECl7Y6$T84|S0sxa^(fEObK3mJ zYjSV5!l@1TZ+>y^e_Eux3#&<6wzKwU4|VzrhDP#Adp&+Nv=7>Nk^=V&Asqc-!yO|- zh>RF{1Q%PI|1_Qo@|G-s#rNNE3s*&h;}Twnj^tgVbs#(Kss@Aw{02m<;V>Vg?H)gLhv7p)a2q4~p-DYisO)ptT)X^uJre zK=+@Y^8j#Ve&WBz!k73644?JcSGAWU^f|$<`j;~h!>At}?T|mgDp5lSkm$wp@ugqE zcW0!=<_N!cL#o-+<4|)9L(n!*Xhach}9j*c^XAedN^$# zEX2Mx55OYx`!?bwvNUa~!*xFukEG02v0A`N&Rwpr2EP9Yzc#o8y@24);68)mcdUmT z4{j1b-tN0Gv|)eiuZ~Drn8iooB6+pQV*g`8kKmsuC=s@gWaMH(6~|^aDb-4RlqZl33$G4X1c4P^vKuJwAoaDEGsZ+hmqLJjQt{; zs=m+`43qpBE0CtJ)6}O-lyT_@FOVY)0Y88jVpgj&?OHpmA=X9d?(-gn=AaR{KhinTD6l)Y!8e^?H(9 z7cTBzsnHOwGdQE&>7h>+N!e%pcJaRj^-O~lmjrl20t~-E|HZ{XeqbedWFqgj3YlsT9zMQf5=tzd!JLutUJ0Nb|x90a`g4~*sRZXPc<6K zM$S@k>HP54^%PNxY-&Hl7Vuz4vp3Tw(GWw#pr>)Ol!7Q|M{oxZ( zbJ$%#g*)%RzOu1X>AId|?i><9^?i~S0Jwq|!qn6VM4SHoJF@3AE4YU*-Nfv>8GdlKzp)|+R(gKfsYWXz z6pIIbR!SiMY1$co9-78wTt~+QA~X<~vkG=d{{Vy#xvf`kttz^n!8KOfZLvH9E^1G; zFruD>rLx|@3bZLC>hj5nXOQfS%KI6NUrDFjppA<9s=m39o($I0HN4fdOZBtj>!bq- zH4;KlChXQTn5Z#+U4?P=qQ2T=+fXU;D?3$MaH`Rnc@A^@fHN-5aGKW~SP4YOZ^kqr zQU(>?uDnQm`Y{ca&g`UOgDdbQ(>F=^2q7TzNdj(et0J2RKJAYnBlEJnKboYzNOQgQ zZl$N<tLk>WQ__1mbYt73IpiaYyGSDp<{fc5yL&;sGp>c$Y-g4C?K*gcgx_68yvUR=u7te{J z^4Z_tnqa>b<$h*p0_Ei$4IwL57=@$%E=g$Yl3+{`j&p|>fKz{hXf8dt@Yt)tc+ul# z4AUC`!%qT@3?lte(ONKwW|&u!;qul#b%g2;XdHwAiQQ7wH{A2%(n*5R!m`5UO+md%b{NL_q}vRC=)kDpI7#MQ=hA zkqb!6Td*Pj``*jv_qqG~%{eo3=FFMG?5@T^_3VrBt%5t8TB{7iT5A~Sc3Jbq(}(x; zb-{F0p$01@1(f{*^>RaN<_p7Lbea=k?F>r=n1Wu&6BWvRZG`mMtU{L%Z>>XJko#`C zBoyx{R?gHmT_~~OeLLf!HRNVD*CFE;52;^BE{PK*cjKoIYsNj46R}&uoO!sf#N|m& zLQRFTJlb$+e{9pULgr&i@u7UPS-j^&O>S|ATXeNZBI{{iptu3Qa(ZsD5&sf~B0m1E zxZs^(vyS1sHIWoj*%A=utPqo?EC+dUp%|{5(=hO@;51LYEo-iS%(;3dVfRw6BzFOo zLH8^zb%g6h27_XG4TApRyCN?!?B#TUnigU?ONmU-QGI2}XsB^WXj|$Xh1& zF3R~ZqY-}eN&fc52KCf+SS&w1>udMliu7xtD>&LBB-tv83L9aaoSJ5tEsNG8 zHF&~4)x%g~hy)Ln4pV!<3V!P#hBEd}*Gx zuu_@vH%)pKBGWE%vCCeW_U6`V;W}!KCbm}8Unsw40i#I2P*4VV zf!44#_!yQwoxc{E%6K;P@osN)fEt&%ict6C#Aj>gf=3`XLh6FM@ge>y$<(O~;LzHq z-Ir(6$WrE`Cb1z|PpuW5E~+qUbQldEG#}4zhAVpO&KkwlqAk8kT(Gnue)3i7>=|dd zpz~7T6FQ`8S?Q^cd;{Y7g86F-w<5F8_|#rHT{1s2@+~Fkb&?~Ae*TE-tWnUUlKoWe z`2wC?@v@RYg`K_(y@6RuZj`}5GXLes>Ad{5+#XK&8g-Dbz~I57Sc&<>!FXKIv2MOl z@*bSnx=Y0sz~8|#8{)8MRHQuUEh^%oyTJK06cRnagG;trL4cZ>@CvY{>2np?hUavG zk?&f$Lw0)!F#9$n2SZ0jlB=X(Y2uytD&81zR-lirHC{O9=L8&N42DW)0bq)KhDQC`?nMy}^U?q)w3#iA9 zg>Kh<0N*))LsEe=hIhnmE>Q0~wJUTfKVqLxl56DWep>N-PC1_Oxq?gIboXgFHsNfP zZkLSf^&qU{_!AJoFO0p;>H*HolNIVVXsbMM z-C8_ts_%wW@M+%=il(*#y6>TBB+_7&o{)jIUy;;9B=9RR9Mf?YYZO3EWS&XcJ0)=| z5f-Rsy%Pk!_ylJxHdRR4Vn|!J&&0C)K?$KGf#PAXj3iH`Lr%)7_kK|_X`gEW%coN$DMY#RpW2PbW zfiEkKTp5f#4Xchj)4$OY#lbgRKwAvjR!%H94vT&s+C--@f9+o^u`TL{~d8OIunk&2}6VLG0pnn$7Z=P?&_@ub6T6 zB+Lrl&ep=^+VM)J+oU2bir;hWc3?A50a!T);d6@KEJ7R?^E!G+JL*?Hb-PiS0*6jU z4`AP?w$mFY|3=;!q{-*k`t(X`r%)B=ueBQ;5l-qzluhuF;l8!j*w#n??O7SFqBxzL)hRxS=tz46=u;I)e?wHM{kepCsq$Ox>hU;| zI4`7#&C7;YgLCKtg%;OfYDDax{AwCmNlS#7`ZDN_6p7~#`iLSYzDScCk@~x-Pl^g! zKcGv8*cy~6(-K0JuNp^3NemVb^s!vlNqr8!-1JjLlim65_&H zk6k5mvCx!zO@Za(xS~pAZXa+)*sQ2&$GM}4yLaTG$ksW6De>Yl{WKSBQuHY zO;y7m;Jc5c_Z9LT4kZOrRL1)YFA_;khT{zv4w4*7&RxINmvxcGN6+jHNNBfg96P

    nb$qsgYfVRv!fN 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 diff --git a/planrpcx.exe b/planrpcx.exe deleted file mode 100755 index 2a242c93835d2922ff3c022e62f6182a5d8bf9f2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 53349 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 diff --git a/scroll.exe b/scroll.exe deleted file mode 100755 index ee058e2881bd93d5875a765dc227790a4c75167f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 94512 zcmW(+XHb(1(|yuI5<=)5LY3a6_ZmQ2CBHf7GfV6z?eEVZ(|L*M0&YrVpJ&sF(C;$im13EH1o}BFeg8w&}|9J>-0o&$F z?zq25+md_IlwCRig8}6%*iCFXbN|nSJ)P`$AzbRuOD}7&SS(x~A@&9ZFz#d@eRq@? zpui7-@a3%Ty<#ry^Y<}9OFx0LfndOm=NJ`%*Vo4ztm)|+A$WS`hYih*%m7|;eE6BD zlt4XRuui%;UL_KkA)kSxctFCb$jJC8{51I#GhQ-+WZqC_n!4e`; zaz3<3MkmFMJ+qHXFgX`q)ivJSq_BuSOte^Q5N}D-1bmulI{$q3l#8}WXO^~f59M+^0&2Ls+`r&g|`cU47p+a?fk0@2_1e0N}nmxLPN+L zXQT{@|G~COgVKooh*QB6B6++XXsZhrYrV+kT$hHiKtz!Q%+*VuBippHTJbQ(a{(f| zbm$p4O9t7R%mC?AMVeYgXWaGKRU18V;`;I5tp$9*78dKoYv)X{3o2-#i zoRq*aCm;^5{@EqGpphD@k3aaVBgsMpPWE$u8R3C4YF)NUQmbO>5jLh@_xyE-q%3)8f>?T@Pb z+P;ZYXEvgfP`xIM10+C)(*3|fgZl`&KbWn&ys2MhC)?g(Sk@fG>sM$Kiisr+F0iZE zm)5I7epK!fF3~fqxg#>y?)%Ky&<@nSWeHl_m0GG4bh?mfZD31w!LjY->%`66RJ-U3+@XZGrxx z#{x;Ps@y*0mnN%PBgyt^9kB^@5s8zIqSQgUu`9b;i&nUCPvWBS?a~X41*%Rl;NUL| znd`r!w;mUWwO%nW{C5KnQvk0ael=e)d-!>sbR2}Z@!%G|KUH2V&-WP2J4FtIQYs`h z-13p=iVm=8RyX-(+@gIeBwQ78A{?H6sH=Vrs!GG9QDEilE!yPRtaL_A7{C5tA!S6q zEa|q=v9Nspdwm<<#}=Xl2+awy4fv{hc`nU_0bK|oRP$*9yfxeBy-XMu{K}ka&8_JR zU1U2=oRDUf3r@Vej%NRh{7}$(4Wb>UXxjh40fMIdyPanPWd0|iBI9^H5`C_!-*8yp z=u)RZMEYW+rl21pyh-Yv{Cvc1v$ZKw!EofuMWL<?Go4gpU;m9PIwMhjz zL75)|q9UEvcHkZ70|2C}>EV)W4 zH|Dy$^j^8Lf1vX3p&RH3C4aK7d8wG{^vJ9tFeAF5TG6;&XJAkLPc9_$Hd~=h zJRByO^R@xhUnk(tE14Zx`twY9aQn~G&{ov>GoD7+DwF?bhSr-yt{@@j4~WM2NhY zI5~eHNV~o0ii()wgZxN->0iVI=;wAp22%Jv@{L+p_{DFvpAyv|;G&YSLpd3D)Zln| z6@VD7+NzML$20!g*eVJfN=%3cOPD9aBU|z_1I=5%1cMX@p#JAB0~PR>CZIz|6~)sK z1ErbV=RBjd9SDoT}NeOXU=hOHIrWkqXE_*YWm#6BSsd|Pqa7AILkl>$Ga z;)X;A+yYo4PbJ;iYIMUxP^nm!x@+*>*3uiP=XBYyg;ZmA%Y2~#zswSZ-u&u^R%g7^ z7m2eGS^;N+GV`Ru6+_a1A?7hfIZcqK(2x^DOcCs0)3@H}0k1gB!jt^}*YGSwl5g52 zz*ja|F4|Iuk!X1>DLy~YFC7dKxFS%x3zT9j1+ci6 zjy50@PdPMe@Ka2^<^k*5Qq9Iy$9sH4p%idJZ{Obr{_)P$H5@;$`tMTH-xc|lJlroC z_1(~GOI*d>73nixe4v$vd`zYjc!|mz=0r}b;EdOdvz3MfaZ zBu^Mi@8kz1(>Sq_hx>a8+w~+(oAg-jGiNO1({0nBFHf<;MgffGq#0;RtM!GIQ9uX*zo~GS`Ez~3@h{N z6KEqf;kYiZV?QKLEQ-;_ZySr!jC$4h(|cQF&C94ads>rc1xttiahnz^BlWzHB#nrd zHK&wH|0*4Ig|1mjXM~K0KTimJGCmlj!&h@$o)39l)=k34pqj>(L@BsqvJF56Sdl?o zSBF-9!B!?p{zvJ+HGqIQlC3hk4OK0MS%&%vmN*lIlWTdI6PD-~ylJxeCR74p+@;K7Dn2JV zT;Ru)iG){AI1AQE38{>>2p1!mD}~Qd@wx@0$=-oKj79@|2omqS1p0i(awN2LPcNDA zzA&ua-4PKUat%B$9i*-G(n0IDTkrqT_UY~WlY6dm&#M-`y^jP@kF;7}l>L|Ye0W9 z3Rr@&eryAG6-7#PmpHV{&V|yuLVcnORlhBobyC?nbx~B9h2}n$%cE`^bS@Ym*{ncL z5)7x$OM+rG328V?J%rFFv;7_?UHK;tN(%q0e{a1TgS@P5gtq_kX4j*|5o9^VA}x3v z)AH0{yO*}_67q)c)e6_aAFSE%#QSz^e+K@?08{K1lQ!2nHlW=J}1;V~Zyi zqmdgn+!O>wH1XF)+QbEeI)d!VvF2p}Jdf z-)6ypgT(#M3DPa6KXnIC4R!w^YK3aL3EMcBtcNP{A4qTRERKC2A*rT>cZRX! zMnA`yw%dau9r=)2;oX@;BCq+Y_|fLs`hC?Yd)(-6{kuppkG};srshFx7HvN4U7*|I z?&s~Lq=W1j&VPR>KPxJN+m7dF3?32^*^V&A3X#DUMhviHPGleA6BnAo|9Dk@)R@x+ zw!-qdAHGI6+SVSCm%MtnRj-KTRVb1-QO1XMprP{-VkFEq{2_QnV8h1$f}R*o=9NHo zWIAi_aJA5UJeNeZH$ovtd9*APFa+tD+H+oXSw33nu`9Bi@xo&}WLm zc7FGDDq$N_mG1rhInrrA{zzN>4O1Rss4#Sp*ISG3r zK9^;gLH=qPyicCAG$&8wyK6h{rzl!xrOL78c+j&Bg}cQoPgaDp_{lYvd?^QmmMH4Y zm2QsZS2FZ}IBYN^$T|PynA|X@QSxATP=az^}nwRo3vu;jS5Z5nG2iJMKLm9M8B>vhlHfxNV{TvenHd69zW(E7}qz{1Y^jD2Avf%>AIf0u4% ztcxM5 zG=04|t;2yk++WZP)Nv$ZWU*QM715%Y0=Fb)xVkPaWzE@i`0GJp6k8~MW&igE( z1*2A*)}z3plk=kdKc`7wW#z;FJKIw1-TLCUSDy^%T08vjF}|yJE51$XNoTBiersxum(p>YMP|428RMpK@zIU!disQ^_u}<=7mQBeTq&EY$pIbJpT#zLeHU?JhNg z)i8M7RSU#3W5mnGLipB{JumGC`Qm7&3sZTK5o9Ki9mx-l987xkQhYY(4%0tW%;+1> zle3+{0W$8_`)(-QDUX$w4c?RTzE?@Cc;)=SrIha zIzv|ETo+|ZC?HHZyyu%7k0d6!>WN})E?O}h3Ck*znZo9iX+3_`%66RE!v(h3E>&@} z?97&(^QSxDvCUD-hYmR_D}LLG@0bVgCC?%Ma-lRt7ox!Jt~IqI^PuXi3U24o{avM> zfzjY3H9UEEW$DX)PsiZW=>7_%0EE`*NIJcg!IKn~y*qp>gKhN)xN|+D@$B(37H=VL zh@cg|Fa)&rIcZ+nkZz=eYArM@Otr(rO+4x6d>+@o+`lM`rFgA*ue7f8ojtu`#M9uE zPU;VaQz^6qiA9Q7Z<+LDKlH%zwPv(%nC-8cB?_-K{{ROKi}$2dNoIU_rqc!6*Rr?J z`n`9**9kl-9FawA?0F}9xes|<^NfSPZQH*m?eISZn=$*_Vy@fbUR_J9_&r;gAQ;_~-*?L&KkEAq6zy_Xbb)#ma{wnL6p2TF+nHtxPL z(d2DFEg@aKOpeC~IFM7~0TpfpUL_s8MnTE8N6Gl~D-uu6Iwk@IHG&)`Cx@X-z&ANO zB5KLvjFn^5TXSLx**7A|DLgrq?H-3qYDqIlOyVXaQBqZ>(*R)IFZ={3 zEhh`>Tfz3h2S6Zj95@E>S_1%ofbE(XMT!d~ACI0^1-u!`fY)&<;4!`nxB*9G19N~T zXNTH=hjB0C(*V2ioPi*+wvYv9* zz)e$LQrF1B$oL4YFzY_aFZS5|crn-6rP!I1@u1el6K?8rDr%aud&0W<5f7Ki;-F8)vDP%GBh?;E(GQotne3AeKP|23D1_x)d zfr=UDizOnrDiZ$#$U zC#9R`v1K9a8j=C$efeKAV}xS*ML{PTa~Akg52f5in;5?4i4LUAtD|heftm>2h=Y^y z-Tre@|7$)yX4jGUag~Ha>vtD#3#~r9jaDj_{s>On=9YNwa_c~&vwRU7AMc(qa&P9_ z{vSYG+q`AJv(pX&uLjFM+-Tf=p*ww;dzi;F;2nKaEWFC|APbeS6sI8Te@fmVc+-$w z@H@(K@OVji^Pw@FweoEk?-#9kl}GDXf4~Db{&NOecb+5bu?}AT3V%s2ml#@ZV(J)p zh!l_>Q6)MMs3BV4#7sr$rsHdWISxo$fnH}FLbx%z=}X!~&T{mx4a0cD42cN&N`6a5 zrxfVmw*Fx2`XzwL=W$|RkM{yxHCm?%|s7BWeqtY1Wn?2AC;*Ek6N4 zL$Vm~e8h&5kl_Y*!yMk7e{+LMipYVg!8<_aA8wSqUC@-X7aBpQvUy~gyj>&}!ibS> zZsdYl#os4Mnn2L7(MWm~Kz&Ht^lD^C~=$d)!vS{mv%ADy$r*L)45 z2xUB9r9Zj2O#-_P?ff6#EjV4Y>#8=bL56&;cx zTip9BW|zXzC1>FFuI?3&KOFD8QNav6R5VVKM=~A(*;|@2RecVR?&NOn5IOdyLBco7 zF#qF1b8qi%mfBBB(o~EEvV(B~v^VXengU;aXz%m~Klq8b+<>cs36n1IUB0WTeuY9V zH?XQGd#sqPxKAI#)~kEZ37jmXF4LKO%!NkC>zbg6?|z~Et|)XY{wx*Mw|1PgF%c_r z4J|NPlec)9CXW84+2ScZO4}aT`ZKchfE@cOAY>?KHe5ZW1vEBucL58rJFZJG31}1>9`ss~VFY zs*F-lIJPgosJb7}mJS9g+Ahw1huuS|@xScc6l-Ss!biEn<3w#Iu29*5pjD=D8s?`R z+5<)v;RJ2ptVvJjj?6y$nK4Qn`Cfb0aMbO9ptqgfN#pS2T}Dv3H0?paz^jSN)a59d zc=lVsx9b#Ay=aIx)g$v$8k=zGYkwB2pDIj!d9HAXwOIrjd)Rgqmz?oT_O8owHj$yN z$2{_niF2Z%h4qYQO8sJb&h9_i{7)8#IlI>_(~D|G^jL@Wd8KJ}hmXv$vljcm9o%|V zBrau{XVvmYQc!{auJcTB9uJ)IWXJ^8{s9CqcWvb*)7p4nFzXN%J`_}2qU__VqdX)U zl(z#;Lo5P$?++kAB?#Jh8?X3&eJTkDqev3e`Qdz9vK=k5aO3zN0A2CSK{c{kp*9V(PQMv;5Ef{oqc@k%xR4WF@xDPyV6yIhBKMg)gnxYGeQR z7=DF@XIJWI{n`F=FaR14yC_C84%P0GT357H^G$aQy>^Z`-ipGX#Q)bYGsEo$QS@S< zEQ)bn7Vh!0WIK~$kRuXI7lz&di9L*%Hx{Hz$Mg1f$knMIR7Po6e;atW}~X4^j*6BWxAOpO%agPt)P8 zJc==bH8z2hhLH@okW3J^;>6HHVy!2ZKzMYkk1$H2y_Xor+H6OUj*!MHJ|v7Tmy8o1 zHd3Z4-fYLh7_b5HPpSHDg8t)1`qy0^5TXgVn%i#~-~p?bD z-%k4GM}iOgUB8C!)2@LvA=nDXF)wqu{*=#ErNsD?rk%*B<}=KfQHg%EcYG)Hw2G`r zR-NcWG2J^$yATH01^S%7eg2pu_B?QDpnSdpF~12~wPrxAN`8}LFP=;8z75XOD0Y51VrWhQ~s&>~Ig%}4YQDmLrbGNC+cWfcl! zL3^Vj;M;$@6t!;~CfEgNJ6{9TN|Q@YWx&o6HUHw}mw7x!KFp@%$NJql`wyI^ohu;f zT(`_R-bT6`C3&GB@Vm{7`pir#(oXZyuQryCc9)mtb_ZrgX5){ZjQg%~nxPX}md%+9kWd_Wcl47! zA{<{laE|50E*|dK%m%%EuFV5nCTeyvSgP69wSsv~hG;Ppwz)i|L_l_&?`PQ2KAZ0h zC{RZ@HU8e&sK7FH^WPEz_gJT1yF}DxD*(BPq1cB7?@Eg_8KY;qhXr{UAOWqwJnUQ z@&6?Ytx7-FJkN(@QMgcbXqG7FC%L`}$@}?}vbFMU1?%HweZQB=Sv^fIR}t3VQ7KaQm`DeMfUTMz8sebzjQ|3>l-d$UT zsI@#RyIj=T1NoKxMMB;|bN@&F*_;Dh|C?5^{OSQXL82U=WE2>7SB9f^-L>E{=hB80 zmO%u|lpHT5S>kL&1RClHz% zMNT*!QR{}|CX(aN#D)SM9{Zt=l!RnQ!8d2j@eXej;v*9ekrS+wn-Afoc#cOsh&uYl z1q#wFl;o)BxXhbXYT#=jCn(9usH9RLz{8i95S3u15>G*8xOp_^I|(+qGNDRwvUuRV z9=GZK#=?gfk&!9$fe%wb=h&yUS&o!MH<_^C{y=J9 zlCAIQ_0%&Wg$a%`iKpx%+9P6sX~mPNwOqz-Iv;Q%91~cRl8DwbT;cbXNHTw)h#(Wi z51))m_-Ow%BMzUK1io6Z%}@aBuE!09C7$U^fK%4y#Of)>3!%#fP7e(i5!S^^HkN^RO5D z^a>G|GbP5?9cdgNK^ek*+Z5KW!Nef-)(+LbPTtWIo>g3%bZ!iA(iDDi4zHu5`+}U# zi1$nZG6uDW{gS^u77Q#*i-E+ck>l1-Ihy^ zF)WI$4(nUHP7CxsA;Zu55E14+IUg12sy~q!`A&#?Ydi#hQg1;u1bA=4Nzh^#8gap9McYK^Zc0FdVh5Kbn3*%$buqyjP~vN2+0$T*Wxce z&n=QH)m*P1+R?6_Jr#Y*{)|e6-=m8`Rd{aWt(@TM1V84-pKMlI(!JAsh#9J0x=J8d zO(g>KNgYG`k$qVxAtu{lNA^dQF)H=zaH6(#ZzEpRFshI=tpDU(w{AGqwGm+z2H20g zTz8W_OZP^R1V!_?5|m4#*EMiK6~ux&^&jEa6wYhm-?+G(49tqgo;OsC)B7jaZ}eov z@ot~h)Kh041<1$(k&~NgKk2u%aQPx11rzyhY(PqjK%`tAe;zfb9AF%1eDw%n4IUM#@c22=sK`Q3$Zyn3s~K%> z80^GwNJt>rk&v|?W7hRtPDLNf?tD(mnN{fu4gw9ws?}DXt49IOu;o^vuES@+?RAF# zCRx2#NLf>-vye9(@j0Dy*>4_8wIX&f!l-MH1R5FEe0=@0g`2!|!EwOxYs zhFtlxa#rgAVy;h2(K^UA(z*fwEiZkB`f1rC2F zuXGd|xL25@vA8Y2CRSF7c;Zu#e8C-5C_1a?`oV@?NZ`@8D;;?Ztd@l;=RXnOC`&vp z?6Ly-x|F+6&cLF(NY22jyI9V^rn^KAdqYI8fmz$tk}MX`D+_fjlN7V>7pBF|E411R zenDBDYjiqkf4nHJj|`VfP$<|87HvJTO~}7x9OvADE6g%ccno+O(Ye|2)a`s7uWe|C zexoC4K6tI9JK^HCVBLGv*r%NUE_sIwB0J~tw-7e<*3W-LKfPh~5AZg)(1%x#wZ(`0 z0GO+lL|#0CW+K>nkOj{FEciw8w4<4y+V7B^T47~rX+3H2*(zDTBk?;V<6ZyfCvGb` zRw^V5Y%nB5D(ZLhY;05asT4rJn?p8!cFj} zW`gf%a+T)3C}CUi@KuqLJ4Cxy2GuOg7hX$U&rIeJjzXZ2_i2rS^x^hd-lS%4ja>)V z0-Dl~qm=vfl@dQ)@!dF2LNW|(iTTBiLV}tXw$mAwwi#iB?SEC*VXp;kXa}HJ$=S_X zO=+GCBnWKQohtN=wpFUu5rm=pVRHuTuX0xAAZh-S>Rm2gg_qB183bOVtVPltRhELV zZDtC`#YAYD_#?%XpjC)2i3WT^P1er|amS(o)&EBXDXJ&~Z zJ~(aEr(%6_Lzkw2u;~F)iDIuZ3RVzZf{MnA{p}diNN3pEI#ivMqK{;*A3Hw4VZ*>4 zv3V2XH}_S0_-P+&`G=^2*q(_)_nW0@p*=RL{STa2tpLn@U5e=6*GoS|_dXKzbMMeG z?2JUbQjf`Db95TCXE|s?+$7hepX&(E2EKw#AM5^A@1~*8EzRv5I6<##>3${BCXk+?VZv|f{2M8hV{xG^nf(cCU!YIXa9f) zInS=wb>xiAdVa2kyx5#trF(7_6gk_5753TRaqyS+Mu3nH&PhWq>K7at??3kHwPYA! zgG=i}zr300CrgkmR4pu2ElQC^vyy3|-6)mkU=vueD~dJjxT4QhxFgroEu*UV8m^%@ z0YxZjUG@r)X&JyA#=2T|WOln1BBViqu~pf^WuE^EiLl;c62hwdJ267W>qtIG<&EC1 z;pT-Im+UzK^)d80b>565H>V#s$jh1VPv50&XoPOAj1B46jI~pF07Wvfk+HvAo)J2DK$%zI6WkxyiS< zhk-ex+8u!@k_{6X1!{ga8l?54>|Z1Bvfg2J)WEDM$MftiGs*Bf~b_#-i%B z*v+I%g&TTrkkSlv)h5D9YHLFH0s5@Z_CWu<0bGJoV|wH@Z76Rv*=xjoG;G*#nE7+F zbFR)_#qLwI_&c1$gvhKdm>Fu?=aD=sq3)=nG}-AkAsz>|C-+#syDfOvDfos6jV1o2 z*J}4N-<(>N-fY1@JCzRws~gmE$}P~h|ImWxk(*Iq4IoRb$g}bg-W* zrs2}QMznXhed?>`*L2d9^l?6)ykv@qOXRc1#u=^#cbq=laS}y;+XcnMoAijS<@1@; zr%qo8KhU7Uc`^L(fVUwa;Hk^CFgYb3kn7)N+RzaN&T4N;kyUodr;F;jJIWpU&L=Kh zcIc=<_`R=Nn+`_)MgbCv-G+q@^x9xgaYsYHJk3v~Oo0Nf!yRJ^^-GXnxZ~r*iNNKR ze|uhf0%(eAL8%XWLA?-^@@H@xF8B5N%jy`p znjHnF@2&2y@;Sq^)f&F2MS7?=DSm7o@BK2gF*RQ9T7V~RGVePtuUwm{M@(d;j(_of zUd7S|vW?8K#2hWTY9AqO&talasM~ZNka_Q~MGI*`qAP@s*!mI=X}!x#?z|^t=>>Mq zc}pex86a_xdX4cx-_La5VK+nplvhnv%#~tNTV|L}n(RD?8`;whLapce{?qsTZ{Y=o zr4ZOnf(hS}a5R=q6?{fNU!EeTxz0}+ z`z)&tmyw5Z;GqWsRLwSk0|DI~*1k>Hm`)Uui@n3=8ufs8Up|}gTOhlyUO=NW?Nf}q zN?)9ohJ8n)7OpvdSQF8MH3EIV-d0y{tNB~Z?+9;#wNAgN)H8vLtnFcH7z|bRnm%?M zv;CS$uQdI2C^xOU(EJxzmJ=Xe(NMI*losDeqKJx|Ra8fi%f*%N)QKcBs+3h|Q-adb zvWG0yBt8;O*}f<&`(%l?tc4WcLo>9o#iwq*L^#>~F!0PeZo*iukOLg7dv@iY0O(J9=C=bK0Os54U zi(m3saSw^{Dj0UIy8TFyN^7BY3(j@vQetS5EDyh1(f!I$OI5n|Fr8Fi|P^I2?-FYg75 zudX3N;QJAU0?nus$dgl1Q;25fNx^?DZ1U0%eG3%1RA`e-`ykPc4ostM1O?tcRK=E- z6k6)@-#-Vp60GPyO{Z{)0!iLDspZB z$M6mCdr;dON&~91eN_H%osoK@G0;*oV24-EIufUcB43K@QA;t=FCB3SM!G!;SH=7) zmW#;*<;-Oetx$pdPQ?W}5x>G zRT@VU7V=M@W0UO^!WTj+KEV{!Jfv2oA#QKP3I@;Dp>P?R=#GJn(vVF7+1FeR(gE65 zy1TUYt+4~9C4_7l&)bmyNM4PpBceLrJPL1gpFtIO@zTKCdfeh!AC$L<$X(muh2|pz zh*lrFlM6WCA(K%LUZx9Wi~eALwd$FSpmB<;OHQz+Et=_gu=2A`d!@3G1^MUMC$MAo zX08s_X~2-Bpnr5llh<_uqmD7x{P9oxbx6>UkxwaapP?vBP~t_w{@PH%q0?&ybjK}? zFRM-r+q#qn((vBgu$2iBJB%&Yd5H3K zO9yfL1xegWp!c&TsZyb}$06|wiQ99$$;Yy2GN4rDQ?fPAC8}W8KwRVA zHuz&e$%3<{jBOqUkJ-4jSrm2I@e-~%BT;D*;`Re3-bLF`4ID@g+xNJ7xxrmb^1aMi zXTot5oQURzib}h1(-a_3;qf4FTs1-rYT~PHyRNYK3F-1D2E>&;F2sNY2q~l#6TFss z4@&mxhUx>&iuYOByBAaaUPFsgZC~f6S~up@GN5kH&1>@?&6;(*U4@o+@g24YosjQd zss!yW5y4Au!BGX=p8(a4z`dF30^PWpYQAxWY|6V#G44oqC~be|&9*&s0SZVrFSUG! zy@E2RRd-WcoS^@tOq)>M?ilyDb^U|zhOw8~bAyV}Fm?Xf0Zudt7CC-d@g+xX;;fcz^myZLftC%xx6tVwq*+xZPQ ze9CiYoY@5zq|7&m|9uI1B0KHAbvUjg4fE?{zALOF9!T7?V->x!8wKa#)Sl<5`Y0Oi z1gtzeZ5QxUN;C1^aiy=y#B9y1TekvKc0cn%B#t zWI=Ko*`hN!Dl8@*337hQb*Wh<+VZE{5`7fEDwGpiizRLDCS7XOou#7Rl=XzXjtX|E z-R6vzQC~~ewuUJG7r-CJ$$VYTlnk=W`wJCKipPRFc2}tM%yygXxWP0#m1_YPzSJSl z=B*BNtbBS#R$2Hr6FiSn++3nw5sKAM?}7vT=Sl~TYMfo_JE;4MIcjc}yUe$K)38Kd zP}ZOOz32u|6l1Kgv%Kt-3Bk=4u&w2UJH?x*;HTQbIoUS#K}t@Szq|tlj4U!h22gKZ zjn$P~@w)5Y%tiEi?93xYXqM!1X-M6sik(jXV)+EWsdWjgbW%}-3dSInn#r5lGU;@S zs~`B3;$~Ewd@3JYe7&u1rz_D%_$?x_fJeK}atuY{ehe<#7UXbQ|I-LdwfXFR580XL z&yjlTW=>%2M5ObgzumL!gw@Nly>tHor5}C%VOez}yCM1*U=ta2f^yQ<>J!1w0IjJP z6RyJEC*x0q$Ax>xzJL7nYD!Y{f~2B`*1K{NIB}qra~3_5*m7;FRRKigS1WJ?*x!CC z%`j6itgR}=u9dJIJ+{%cEJjI{Udf#*H|4eGeBt?yVPRzWvqyH7R>eg!er~lpxo5j$ z|97X8a7d6okfYz;;L*#Cv+3EPRpqz2y!}R-_X_fC=xkK`$+#0c~Lw?+PTQ*nqj?|GW|uMJcRXVay!3R>X9rUO38Vcf&}uFuE71p8jXmh*ZZly zFsrHh)M#jm5^9hNB)skOl}e;TWja%ogtrrN*7-!DbHMtiMRgH$D))p=&1)(HYJ=g~ zkGnSWz#V_L&L4St7Y zax#fxWi9W0s@}Yag|@%x!QkVYc3^~G-Gc9I`2+4O(pEt((#X4LfV{Gbe|OdZq`(F- zaUi}uPM-Dn+dRsV`XKsp^TL6M2atH$ytC4dfVJBFPm`-T8h_8Gg=Nv&jn8rmnl1s$ zhWpM3FG~~1#r8j!CgngID|)Bpluq|e0V-Rq~1ciEviEerZPg^K=jO#Ha$Ni zTbR>HB8qh*E^kW8Iu<*w52&p1t@xMfMs)Us`9o9WLV3*-jgY42;M;dY?_=9lvetac z%5|#62GYGtN1d*L>$b`Y7vD$z1ky^!KAN}b7r!I+WOC~tE=G+s*U(qKzZ+BCSg%?- z#d{x7cv|c*SMuOW)L_o52$8^!172_DdbX7|#VXwDT(OFc6>YcBjy=V(n|A4ABeb2( z@TQbjrGSf_`ht${t)B?9pTZtyAC!LPfB>;~UW-dPqG4vG9x57D|Gmv+-10yAM)>@x z_735)+uH|E?j~%Xo*n_$pI~Qq2q^tWUZ^)e`u;oWsQX!50}QIX+4VsuyK|3jiO!~TF4=dC zz%BJvMZWG73}!lNlc#op%EcB~eRN77o z<>KC7NAb-%qVKHRo2uKu#KyYTgW37W#FpX&%b;blO^GBjm~Y+wv}rNyuAMIn1Xw&( z)fz6Hyq2|c?`^)E6Vjaw!sYzRzHlea*fKG75oZ~mckf&fMLnit<;Kznpmr90h|5E* zlv|QhQI@qSb!q(kE7{X&7zCf7bp1+=*J?Uonf|G@r6G`Oh$UI!nP>_MGqNNEFIuMvp*YAT z1dopNY+c$r$PJ2VgJ5+R$v#im+}-^cgN=_Yh;sVC0l{!tR9EI-`cI@|l|peit5NXt z(QoJT(=%1u85y2Co*e$#7k?wsS2Afrx2xz23Q}v9{CEG4qO<;M!fV6udSe?fYJk*e zMt64`bcl2+(gFj%QlpeHz+tz9D1s;`jna)s3ZqjU3=k0k0k_xpA2`3A&*z-yzOU;! z&SIv{bfd5IKrDZW=p$n@w=X}kyDoi1Cr#Wzm{@l&MRD@(7ey1G`zB(QNVmH>kOO0m zEblZ9LYL79=0(#TJKO$yOu0Y5Uc^HA`)L`|Oa&Sd)2Hm$4RlUFmGkeCnXNpfe;FA6 zQtkue_n_Kl?Rj>eVcvh!elx?P4B(=@%yrj-TCOVHRM-#Rz3t>Pa)^ksX4!gj7DHG? z^GJNCDU5UmG@y5A<|E()8s8#z^+>|hf3YJeeBNS$`v%L1IuXJ!L=(_5Vkz15=6cz zc-f%I4JB+FL=^ylJWg4{jJX%60d1wbJXpr9MXQiWu7XzpP#7zq#D-u5Ge{hTvEI?kRA_e%7O3tL}^0P=T2 zGJ()+&5PQqapp$h87vCNwn2W;@_1@Qkb<89cqSq;5x}P=ts4`3;(|LbP_0=GXnU(} zrkT-xl}H*vjh*UAa2jpd-2%83!Pm6mGQp&Au>O+p;tk+5sV@+}84DNsJ}^R9p;f(U z67c1Lm4Vva!dK9L52&IeDjo7GCzg$Xbk+uJM^S)dLdMT^J9~2*5zu^$pbiJYN2~Zh z)gtPDD|DLqqRGTC_)VsG_;4rpQ12Hiy^;Tw27&&|C7U`s$U6Y1zvmz(D#QM;>^8rm zda4L}(8iD!96y)7Vi8`bi`oTaBc$oF)4;#Zt=|`bpGiA@22l{Qq$K~Z1Hz1TB2T{e zu8}@ThzI8@ud6siPnhI3Q(@^%=%n|_w0+T6Y13B87-~EFZWpDytuK6I8xqqbV<{BE zpTT-Sa85)B!f}>rDjiE^S9{G-(+(&E(83117rwzVq67tVWN7fAg5BX(QuMn~?am&q z_RI7i9wQ5MEpjTT{d)~b?+hkg^*0BuxueCm<}KoP<=EuI2hZ(}Nv;;w5{X1WIA3@H zXZHn($2*vLPtIH=OiZ5qOp6dthc{Lm8MS4tVdg0t@+Dd$@>7px>PB}Q70yMT%as;5ChLC_?K%rzdQZ%7T#ooP?8wNJcoKp9k;L+)%Ax^erj7c#x=A` zu~pV~v1cP%SE`PsK6kx7zOVv1k!*f!p7y!tjpoF#Yn_0Q`Oju5*B4pM(j(;0bLYc# zK^=gWY+53<&wnnh$78UKg-3C4ejJ!5ijya0MC|tfw$)OBjr2c#O1xVBq|cDk6CjCv4F*eoJiPR}9uNBLIWc?Py9}5s?C0LH-KHG3v1;=J# z^?GJv$3~2;1#XW)gNhO&S&D!UiU7)e9Kk>UA#$?%Taj#0PxxBV>puCqqBSu5?GQqv z94Bj9ayh|XxeXtam~-7;Vb<{6%oc@09uJtgC=)$@U8LDLI}m@0%VO6s1af@%Z#21Yp zRhc<#pg$O%^j+2KJgN#9A&InVf$VyfvFiZ%GyiP;ZXDKO?QynD%EJ=;77HgY3S=qv zx-A1_$>TeD({&UgHI(~H#n+Pi%9!}-2-cFvb0X7hQdDp0**7NJ_z7|Cv#HK!#M-CtyEj)F*HC>r2R5IowD)h0(a_&~ z#!dC0gS|}x;CT+K5S{a4&)q9Kc#{wwEj0&lyo)Y zwJbiYioDcO=3|gLeDPRaV%gixyK)j`*z$-5*>n3aqvWz#mOC--Zvh z@4zmaffjmC>4Q91rzsrnhU8Cf;%Fk*qOl}+uKl@d9t>&3LUuOh?+-5WTb{1OLmLd5 zpP%(bHgc%#* zTr6`BGN{)TBPd7f61Er7b~|8D^>wW4m%1`eeA(c12BL}KvMhHcgEMtV2mS3Tqs%d5YPmVA(vzZFIJ|6j&MFQ6Pv|T zj2W>pPEnHLRf#%s6m&JUTj={Hl#57I)HV^)*aXA_PRLf}Nczc<>uf_e5T<(+3!#@@ z3kAriBwidud4%oHLP~_`C;4=Z^=kmY?9v7Kpx_R}Axp#wNn63}HqD)>^EaP^gRA>m z4R?$ABtK&n!CqCrX5;~oHU9?i20#~yx86U!v#+3q{Rmr^WLCaw8$AzEJ~LAB52TKt z<>jD(3rj)H^<&+mm<(*IgpgtZz4& zHlMdkm3_s=;h?NlT&&I|-xklO2isW5 z*%=jJ^JgXHexM8{+$M$rNj@0dwN_T(+V^45v%UT*#1_-vMZ94sEEXOtkaqaO2mt$< zQaj)x*LlC#fJjC-&P>TnPEJ;f-I1^oq2P>gFm-vBsfe@ZaoZY+ft}fj`Y##~kHg8B z{lw#({Zh15>4Pg()cT`#Fw^{0kAQJX!ZC zo8zM!z!6vD)!V4f1S2xrkDWHTKE3VHXx9Cuh9BT5#&NiZBzG5i=5-iwlJ}sQ!8AUb zKhqATR@z@cxyb#iP@NeP&0WlA_O_-0a%}!VURx(sxLQ8n1}j-WsXX<|zpKVfpXCNli+z_Bj)FoO-(E*myE&j9heh6uWwmD(hNEgEyRi{XC_ekFqs1on z#6SCLZZ+pHX*=-F!BgY{$uo9&N+#8>2M_mp5&>`}^uX;X~tp6csvq$%?Ag6*v8uhX?`B33=d5`RC??~z|cm%Dhr zMV^T!tpDeD)P6Yca*zZ66cNH|X;OL&KWjWNTaj|&R37a0`7L=MxO90g?j&pSS61Wi z*7av1`(4Jfv9PogfcwBV=;tV!i(KAM3{ZyG1h|AI^*s09I(g953Un$br7Z0q;rd_Y zFLT5&+obdi`%tG!kh%*-bMN)z!}ExRWG{Lopo8ONjK0B9?*Zdtt=sg}_hX4lr<<}H z^}^nXvMd8s+Pu_5Mijp@W0lvv0s66obi|{qSjk}g#-zk`z;A21pMKRmAIHHDeT#5# z?@cpw6r8SOR+f&*pB;Mt@J~LU33rvNp?N%1KOiQ(Nb_=AuMMCQzjML@2P#G=uNl_!abs-~x$A(8{n=9>q{C+`1lgGIXpz|Q z2{hK_qUBSgM3D)UeWYgy>FW||^>)8BgDAz5A7)NSUy$sHns-@E4g!U%sJ@D&|s z9Ni%1zVp|?M8gM(z{_FpIQ@2Xwt86W1BO z2zVWoa{Deo@yY@na97}{Oeim3?)$#T*?o8pSoho!M#j84y7SXEyN8Yqwjv8H@a_aD zLWMAhZa?E_9Vfvz)MZ_tXZmJH$3ZFSu=%=u%I);JP}Px_6&gy9PUww|W^PwYIj%95 zA$GOr!_jSZ^4NcljPR@A7SbxW)P-P_*uu=ZA5;GA`q)Gp=C_>ltutg=3X%-r)I6VA zaCr}tejAq)h;G-t1qO2dr%ihS4lSCz3DYXmH^6vg{!XK4cXEZhl5Mun_rODTh?juI zQ`PqG#pbheM9j6im^9zuV8D0%(_!>75}zUK^&F(UPnEq|!9i8V@B0C>F+5yXTMjN} z)it%;5a`Ui@V$yUDYK8Gf7MHDhTY;fb4jax4!)xFn}=vQ&u)tfjNA-TH^h!9u>S=A zZiet&`?JGmk+^j}mcBQ6r>~Q~55*p|03RD_py%XLx@4a7zKvT8Lrl~yLDLR9${O`+ zSyzUbT64{?Z^aspHyvl?M=n=A*sBrmGaH}Y=F|0FC|^!@)Z3yZY6S?-$$v5tI`l54 z84_tr9ks+zLY!VzKpa7j(TThmj^xim=AgP#a`!_lV4FEN?|5jT5v-!Op2Ul)BP}i# zEOTHx<~w*$b$ikyVvQ;sL($x*TljEyVDk|k?oTvKEe1^EKKafesL4@?L!k}RfT+P= zwxY||Fk8Mcu3_oq+5I*0cskjui&xfTqL9(OZ&h-|+dpmbH7E{}*7Y6WF85UfQkV*G zC>N66w_2Q0KMOankb3javalpWOdKB2;mbVT*x4-363@E+{VA0LpM57wsch^ZPTxV{;?%Fj<)Xt1!~^77Ju3yE$7 z`^2+$Pr==2J(iu%UDrGIggbI)Q2w)CgLAtS3ET%~ftMZItORXc3$JOLF!*Pe&&n1Q z_R+H+AWkdOYX+)$@V(Vj1ex35Ra)fkINv%qAX%I``=nKD?_=pY8}s3}@2b+Dta1v9 ziA>UCKM3nJiO!ZL^Y67d;a8k0_9N|sk|L9ii_eGoqMD3DaBrTason5Ta}AVy)pvgQ z4L5I)c5&3FFe71YF1Sf(zKZXTpq`TD2q^{h(%+5h`)blFC%>Uh-gCh)g#&s2dh!+M zMPG>0@gN=5DI&N--ws8d_XRt%i$^ZUXd6G_hc{{`wtFM}7&pVapjjuDn~5>GusGr35K^D_N7aGt0p(e>{VpFH9JvCH{EAi}Jy3B=Kft4Iwu5 z!?V(~e(dlTxNxv5ar#~eQv*e~nt+)yv%ssT8(ZHQR{zZEQoRk(@-Ow4GKD`te) zP^!IT6KG02a0f33qp>^>Bh~uwu2X)jZLGo8MjveIAaoj~c5IQhMHUe4hhKfnZ#-s` z0D{kKTAqjort+PL-3L))34ExP{{O7Fc-UP4%!8Q&YQ_v;&==k$%x$($69Q0Bh`$BwfOK@HYNQCsvBzx)Hgqj$ig?C8oe zb|$!!Yc%F3eK8Sk8$g~33H6I1V03>>Ls;kF3By;Y5WMheE#-bVk z7@d`ocu@hhd{{RHRaJe~)^@4@jf1i|UY$M0#pTWaZNrZwVA4G@v1d|@mG{S&WOZK4 zTXhIFXSFW@M-*btueO}Su_gB}Ku+dwl z>4q12&bc=`>HIB&Wdt91S!6q#BySD_SLU#_aMY0f)xqeZT)oGS{@vns?V^of-(x zW>w7!QRM@_iRCSS8dnUsQ4Wcn=5{9EYJH=ZP#WXXX^#B49M9cnD)HXn(wQNMtL62! zyzi#vj=Ab9O$%vE;RMZXjEI(zIQ%A<6amoW&i|WF?G}8DNOI*rS%1AvYV%F{BJatL z{V)OYDgHuQ%q5P`1?JCsA7y=YAGi(l=*)`*sr73z^?0M1@#!?|ps*8*3}HuN8yqmuXVr_)^qtx zu&N!cXB=Taa+IY|8kkJVg_X|iMLF`dlfSnz6c z04BGKYT9_h&ZB+YYq&uLz+Rr2Wq z<8N@D!}+nLJV0S`R|2!n0xx#L-$NM55EE21jDXX}yJUcEr zT}>{}Z;;;@P(HLww?XoEk9EUVv-Zy(LQQqHQbFruDjiWr2t6%=+v13nE-a)To4jRq zl(ym{rWDkw^!a3>K^1_CU7%=Y_=ztg&auK)I=T0iMnz1~V1}XjI^w}YPOLflU>nn!k|i)m?bpzjgs^QB#@;%3yNtebmH+nF?PQpcXzw1cvht6P4SfeYv-u$ zLeIk(XMq2S=!_*)`_}hDl_G(xNbU{?E~OvI-zivH51jQ&KPvPvQu~Au!Zqdc&oUrY zltlAu?jUvP>4>G9>EW3Y|KK})VO9g)WCB-I3X6?H=)s#-B4FK(Nk8CUzX8zJ=26;1 z$9{0>5J3DLw%koC-lF|nPI+Lt4|=}MTYGu_TiutC7cLDR&$HjdOIw-CC$VAIxW*3Q zweS8`cnCSXV-nVO;p=m(w>Ody{zK4}K!yXS(bD9dN;h@`pKlbGK-v-pSQBDOJ+J~| z{_}+ci_PT1q_ys|tCHn1?C1R+sPy}$jvs#2?B#K@y@9h=Pk>|p(><$HaAi}l8Evh} zwYl}xy3OH3sxpOzL-=#QK*12wT%#Ed50IMNifCiqw&6W+)4&d-03g&{7S&n6nlYDPvM@B3Xazmi}vn63d~Y z=CL&l9wc3vKd|2DYGJgxd> zR{VPQD!%&EK7jU2$@urr@Kx`Vo)C%hW%5GB$pc{LsXY#49=_O5b`WdQ^cx-$N*mYJYe%v^ep^!6ZOGl_cz&hZD3PMPo z+v`6D&j{~u#`>?eWlB=rE-Xkv08r<+$d%4t%CqVV3Wa4>OsBGy<#@&-foJw{@|R4L zvwqF-Pib%%1hkgqESo+(q!la=Ndi@kv|nI6F~?WT%QRK`uKa69`!URT?=5*OEB~3h zg+vnFrJ~VmW{w}M+ z8g)G*mWuv(_3M&s0w;2*!zKDFBB(dC!KgUUSY}Qe2QLUorHVe#h5&W1iJU*8&HwjT zUKt7>&aVu!{G){vu-&;-PW%2qfs%ocGH_((7t{V`DHpeWS(4Gx&SJ@!@s-~6A+;w} zZpsC~lf5_j$N&1y;QKCu}9&-yH12|A6aHL5Y zn2JF)jCM+D9wtD$g=Q}?SPDE3a(?cmYBvypu8OHxHuS+*ov6nw@qU)M=Z2E4nZ}LN z^Lg@e<$)h`-veH96#Gm6X7tHWB=kugy(oQokqcl3@iUHi@i6tpC$o71aR4m#WgP*0 z32X$tR?|hep!CrV#=8nEA@fjBEa;JSe0;hBJc@2cFUy-vG2H11Mx&|}KOwm|h-syA z({vs_-1a8zqjYI?F8D+}=9x7+y_QOsK?T!2C%3PQ=>Jr!+Uu(NA;%zft&1>0N+ZtM z31I<&Oo+g-6Ufmwt1lW61)J&(Tq-P#T){Ka}Ni+kP9Y?^P#$I zIc4U>`NYG1{pEOuU0;xHC$-(o#C^#O3SB9ZdKfqLRE;x{b$O|y6GUv1242F)r%AbV zuioei`6G25e7ajI!I1j)vv?T*tJMC1e@Z@A8TjlhS@_J3SkXB#T}^3ufCj}5g#7|b zUbV1-iaPj^$iLOe$sp^{6-WBKk{ns}p|icOQ}0tR{Gq)V9{oU{Fn3y`a=x7&u~c2k zD&j(@GF6NED32;vXrW9GfZHo8g}5LRM#=aN!ut$Ko(zRwuX~KPSroEHcd7Io0mDRj z0|U()q;}SJy8MOrGT58DX%3(Qfz%`8bh~1`E2PgB?vSlK%Wcabnb50}FN=2sqRW6M zu>obq1V2^_m9o!NlkT9)5k)mdDwWQ`ezV!ZQdQb2RiEOD1WhmNeTj;`@Q_!m>#=h% zf|ofzPXN=P43Wn>4K=41(4FaGk-Vj^)on9^PBy%U5{qA9-lq0V<82tU1_|~Ao}VyR&pu7L;l4>6P33; zn^aVQ8^x*Ifeq&*cCTWVl->&=!|6-c9L-Gc9(J6`8ezGZ(B|IRIPe-0q+a!O!SMa& z1|TwYgoPSg3b&ZV#20m;`0F(XIl6$H@ja}cX5uVaug$+@+O0xm>Vo$g?aw%t@64_o zeVAp`SWBrdJsxRj0~8aKZ++kEs-EUAD}(8nv?T!rEu)VSF|g{5*v@e|s<7`tjmG4L+=26ediT;80chwQSJtCYu%V>J5zJ|_Jf!H@AQ;~_c;`% ziX!?ic#xS2tSJjFA@`{R5&UfIe|iZ^;nE|T+0j51zPFVe*T?261|HQn4OBGn z3W9=(I1ePmR%jopa1q9$U1C+0=ah|hMNZd0{lnlW{@#S^`XUnc56b*70$8Vq8MlEX z!^g9!AM>b1q&{}(pPy&FFPJWZR9|nj>%-2c9@^(pMZ^pCV}mtkp&xa&`=WjF$ctr# zR#e2F9Bg(YuZ&JRBmNB81wr;I<^MSv=Rg99rbR};xd&`W3Lj}q3-qb(3xLNU?(z+L zG)GGSJ1Ge?X%doU9?Y2?HbVe$6pDOx>vXeuN)Tj7In12r{!w41GZM#T!0>_S{2~;B z`RiSf(xpGjn3ZgE@gVm}w=-FD?eupN{%t)&ycN|W-B|nHeLj=;>gsKoCq9(e-(+sV z^^Cjr4bH%E@S|ix1ejN#R4=qs!tKmF=rXC+3)G2d^!EQ+t2qwlc_o~zGf6N&da|du zIxL=7PQ4B*k7Q@sp-c6A{>C8mtPpX{JXQ$KM@XbTQqC|7JLb>hSQM(Xval6?1@KV~ z6#wk=H@3$6s#X87DNv33;&$%8GWc*Ut^EKc*6~w^8Y8igho_FN%p>FMJ@SEBzk)&k zHBb67&4PO2pA$RJ5a?#Sp7W~URW{XW*qqLnI{G>)#O=<*QP#II1`vP`j^01NbRjY)9@XI1* z`IibAm5$?_^L6z~o;={vYCChn z+V0baIIA=G34*)ERWhw21e{c!L6_mgs-AAhgC%}!e5}=*)@IAbDposPg-$hV%zBay z;kzH)C)%^@BIZ0<>YT7M#Weq@1Hm6o@F-MION~mJZ$Tj7)6kkw&(Nn2;Vx$zf;uKB zr@(tM#r$V1l+lRrE9>PUMBY244EtM>NXrS)808lIQGme`G1x?qY6i1cFH+IDws%eK zZqK&ij}{)$LVL^4vyXe^MTd-KEKfh2-v^|ArHltLf_2h$ix(xCT_g>?QphF95Dbe* zWEzHXbLJAY`yRmo*q{Y=7?R`Q1hAy(aJIT8RF)S@Gj*CY} z_QMNB3uq{Ke#pn-E6Okv@71wRO^(RAHKO#=u!OQD;}Dd@+dT%GH+$bcM&V0B+_PyT zs2Tz39PcP@`!uq&uemjpN{eO1pN=?Ui%cQf0bP6lZn4-mMA~c}o$3G5Y2bb2x~LE{ zqA6>zb5i$S+zzZKP5QWF`G(WX#O!TYpWq-HZ+B(bFb?Xudbgd~Ca`ln`YiE~18hg74?=VdY?K0j(Fa)zHdj5T&HwNMq=BE zCq)T}y4PGd68yxI(F_>{Rp<0_2}QTXfb)ds6#=DZFYU_12BA9%qdfg zC*$xZWnG>L*J!4#i)Jz}Ry%|U3CXCX3mBKZ6WJPFjq6M6NFJ)q;s$!q&Cqo~|SK3cQuKD4p-)akgS#MPL-PC0|?zSa!Y}m*uhBAEHB&WlHogW#3tsQP}$t&yMK$pS1?==8$3p!7= zDIJnY_~B-l3*W52o|@z_hdOiEQOAjy^VxXNIOh#gQ_6WJ4XX8mxK<+ZAwc4BQQmqd z!K@>OHuRZNaQv^~j%97~s{L%4IVyBgC;6g)bkF=}BI`V*TR$81X4>0Zt=qSBDdTgt z9aoC1AFpQUX>Bt6^^%Hk%R>iNSp{OkI%?>CjK*h==Hh8byp_;CR>5tG;c(2!KMMdFp<4;2%*=|CR6dM zHyN|8%^Zc{Si{%J3K)!Dj&#W1w7~STEHt;c3FN|macPk_tTcPh%p%Y%peFP@paX2L z;S?a@6?Q?|#CT?$-Yn5oeb1KGq@{+&?2Z6GA85Q6uT6ulD!m4TJqC&z88AOlHYDPV zg}a`)MT-zwajUIN=6RO3(N7O8+%&xFAFvWK_39vU%+s3KYwVp#XMVQ}nq+?oO0NP_ z!CNy0;vb)FeKFcRMc^l~5!Q@8S4MXc(JhY;*8vOxmGz^Xzdig_GG4dogK3d{7J?FK z(V{-<8q7yMMel$sZw@|wFqow`j7&yN zgb!M$u1G3}giyn>B!;60Za=giBR6*=*|IhJ*k<)Pgl@H=!3BT)XEH7SCDyB zZi&>l&At4CgG-i&fX_O}9+eHTJIWmuX*$~bl66qieB5Y6SlTuR)gB%#x|5{bLHx#b zT`qv){7T&P@`(QSnA6yT`jT(fybXZ{mV==LDWGotbBet~&juPu?8c*6BWC`xGpZ=$ z)7fv*IaQ=TA7TcqOAsX_Hz7}#T(T_Z?E~AFFaE52UJubtCxaaXz4r`mp_j-d8OBxZ z+g{hz<2%B4r~=o3#PT#gr`VW4)9kLMNG}|3{zqY#-NuIg>!K@|h%WONQv9gvP%2HpfU} zAn=H{hImdZoo30!`Td6=gA?_6#%xxD8zQ5ZZA5l*;CXh=QH*@T<}6m^DyGn^+7gO; z$OZ=T{5GFA3+i@?sYndYc#d3h_t6(-@`{+_?_bUoF{;X*?85bx|@_SR^txmT!;S1IkLxlX*I zxu>wMA|wWSe17N>44SnT?zKG`h=;X*mx32kr#o$=z_ECA;tNrG_^CH?k%mmo>UtyL z_mN<>T2v(JEvl%)O)R`pkpr}AWGF_$8Y3Mi_`IT*&20{7l>tv_vUEjBqyn zi!JAD*`P-It?uk)xwqTGngWn1?h9RV=O2k)k)~(AfBLFXHfujh{_X?LoG(j4*f$Am zBE_!(L9QK!muf2k^P77rv(Rgv&?m3P`J?>Em9iXAtE?Ix9=_aCFi@ct)fOZ@;SgTR z4(hIl+JTI>pL`}NPb8m;eKChQbGA1Qu5au`zc zc$R%Ag+GlizT@&vhp=&$3Bv>+^lLm1aO~O{T~FIPIHZfhbo>m=!z@}xFZG|=8jls} z_;Qr9Sd?#hLOR5V9&OW3>sV|q+rTxt5PCn?(-|;hK@xkrP*_E$>@IG`Y5Jc+hxnvz z-49sx89G&s%s0E?vq>P$vTt<;SjL8$4>=XqHn*XA*I|=5b zxa@0=aMbe57>P{T(?M=2eJCIx=j;niLM7T{|9WSon6FY4mwO;Wl|Czq2Iia60@lRE z+Hyh$F~L?d4WC#oaPg{e!ca8J+S4F5a(`@Vf+HEn=FV!`P1I0f_Kc09Mz5UCNziyM9`F?=UDr_~3Jc7&{%ywAh$FPI*3oAS&bfNf%-@NjQo<*1o$K_mn z$WmeOCKt6y@&t`4>yprq=kPod#e&!9&4%Hk-3`LZ7Gf+KX`jVI_m{uq&su4+NiWg+ zj3c{%ZImJPdZ8jefA6Emc*3IaX?}0W*`0Z1}Y+`8^Qb>k{Q~(k{!rmBDs1ar3^cCwW}r zVj;}-_eR|+{n-2v_OI_BDX}}JK<>Vm3-ZHO`4&BRS7*k{i{5oU9wZs^1(iTWzi)dC zVu4ZWff6I=*_}^VZ<|+BJZj8r{dcaXW^26(Yy@&`6v0h{@ zcXC1j+JM{0ZPEvX3NbI1o|v{vINdqWsrwsmUKd;o)cJ>Gwma}$A)fDgN$Y5N9plPu zo4W9IQK9h!Bbt*)=A4iF?E?h+Z7jPgW}ozQNaj=iSfoeDJdDyd7j-=Y^^u|T1$N=$Khvh`o z{DnyLEeJVUk=<_=4b!5&oigvymoeO6VU#9-CR{epC*&{u^&lHsamTT=P<%AaJK8Lr^c*DE?S55%nwN50#&L-Ofn5M5c^6>C-G{W1gnQ}O2a0PgOYGEgbq{hSY};j z!cffzjMj;i^`DG&UMb63-8Vha2TGx#a2mZVW4Y!~NkFFlJv7^h+}KxjC-dY!9G<*=#DPo^DP zcZXlOk3TEWGGYP`cej$PJzV!^u5WsWbja~6*aT-BsncWvH9O!uk^Q1>>9Sc#b@Hb2 zw|6#-*OWwve3&;tJdmI5-x@H*59eI}h@%C6H>U3#o*S*X26f*m*Zr6T zFTs@kS(B8V$&2eYJ;7xVrec5PIq%qDtJxh>;wF!zM05CqR5=h21{ZgXN>b-O;Z!3Ra9`dxae;!`eE)0<$_>9WhY; znhOp}oK4Jsosnqya+g!#3cNLf!j^s0-&}sEq9sFB6rT!69d`^hj5e#`JC^8UPAcs0 z?Pc4Q(L$*i^@gzwLKza{ZH(T^R=N-A5h zlFAKA+y8dxbjG#dD=TH&@~oVjtmEIwsR&v!aK7nW<#$u9H`sh`aqPqMk{Aahrv!ps z2CECEV^i}vIIk0XhNz;`K*iWNLukEL$f6s*=EE1(1{x{DkcJ|iU!u1m>NSsWCWksZ zG0$c%W|;X4hCY(BkOZAc&rph@0U#q{J(hA2PY&r1RN4md6HVy~sJ@~h@@T+2gLbg2!(35@8CG0+&Q*V2g$TYl(0!JI@ z+oLAmG1=%aeX(f#yT4owpHSK3Cbp+Xu+l}H38jw` zkGSGKxjGkuE1Kxbj--#}1+0___d)Bo{z~8K;F;b#8s?(jTSds4bu1d~-$Wa&EeOgY zOBc^2E=*}EL4B&c)&Dg?H8qgGH`SIV=`<4fz>ghcAe)n;BHM?7w+RUZ02`y1e@|3;-em6 z<2x*!u>z3EjkwmCQB~Z`+Cf&5^Ch}u&fk^_(ZiR5vTC-F{O7aIZM9#He&^h6u!TUVq(*{BtU7m}w!}X*I~$E zhM+Uai&A$$OY>NB+c+bQwW4y`YoMr95l2y?7x5toP#y23eV%xQ6_{Gg-@gxvT#1EC zwEzQt9+oyR0k#8u)^RoZmaYThfgX})o`TK}y|(`-(!7GoeLh{mT~?RRJSCC^ulmK| z#ok10m3Y?R^s~QAO+r%}D*8mKs2)^eeqD^KO}R?&msop?NK_~Pn^`uomWYVaWwExV zrI*sBz(TPU??bZYjJVuanrP1RV!GELqT5 z4`Y_M@B7Y1^pAgPod|PcVl*PIbWyscCUuJ%Yd=@=D*Y>*F~zG{Amru6v<9DO_U7>v z&-z9Pun$vr_RXn8JwpNGqC(tG>>1$k_$sjAntYovd^L>&WA9repQ@i##d5Yu0)jg& zibBwdC5u+{Ez%+AEM&>9O1^%N-ftz>LDKvyn0FqSkEu50cE64cVHuQL1824T*>Y|9 zZxmoHnSRO-KB498e~{B#`S&g4l0i=<{Buu%hAYPR+!raaAChyW>K=b%xpH`w_anEY zax!;(#3X6_=+?G4UClb*A{ z?_k7Ub8J7JLawW({kY`<)G9Y742y``g&>YeCy8aP#bykC5$&KiHYOh=ar8p#%1>ls zK2ICPom0q@P3CKwl{uox_wzKq`?BD#yaAW0q!SSwBUlPK@-W#Bl{3%Mc1`0@=P*{H zVs%PNOu7vNK3Rzs1Z*FeL-gh~2>mpDR~Z`bBE&l z3K)o|_EgBZzJ@nc;ycw;6Dv83ecLCJ(H2Q(Mc~|8Fe{LWxIc>`(_|~zft_-Y0$t!S~24{#dQIQ&P2h zDA3IbVspCf3X5}tN$j3Ef*pn;<#)d6#bLeL{PS%6@~9pHLzpnAJ&&EjM#QBFEY=`b zDyVMKd!m8CEf^q6JMRv%6mTKF<(MMax|h{&nlX8NeM<}@`s0X;kCs;c62kV3V!w99 zrJuZtOV0QoMduw)_4mi|yYJ<4U3+uwJ(Ce~t&0@b-ZQsk$F`_vbWMr%Eb&=$Ytk2Ky|MNM2d>-eV&*!|}@7L@3^AOsEGKB2JaZ$H9>s{h5kspG_ zF_m@knY0c|p+;&m^5`RxGrh@gA+J3l_*K&)cMdum_?f!647=21!6W;e&%*6wL2TZn z+)MoS-o4|Bd#Avbou-vrwGK<=%4`Plge5;^ejwN7NonEIv4j;VYAwtl5n|gR`!Y{r zc4hqbwBGF%Nv}Z;1BH&fq*DG|G};i{G>FWvoPCeFJ+-)ddqQ2GBky>77bcYe2s~y} zHlRM{)J47@glz7e;P7#UM;URb$ikCPa)h8C;y<${{Cp%d67z>&IX--%M?O)YykU3~ z%Yk_FfC@Gv0z0x?Mr?7AY#0i3>Xx9%kqpW;d;stGR>hlC`kDStw9zqTi!9ZsAInR( zO|CTUGe*7x6UX1lK{u5(PEc{PpQ*))(WTl$YLLeY@{pnr329b}`WVp&vY?7-) zC+oSKRI<9bo2-hpfY72k2Za)cawI-DJVdy;+E`fHmm|X|uuBj+x|{k^09vWjA)Pcs zwWBm@nexWtYpg{)1%VnmpDf{+b9u+N_1iU$fy${aCSZgiG~-Imo$wld>%W{BytW<3 z#QFmUcrzU~>%dNiGE)LbamV#EaG8i(<$jQ!yL`3$P2NbHf3~Z?s7e%Djs3J%`Md6` zJKNRtHcXZ__%h(tH(z~62ma;-G8U7S9X0)zUK$aQeBxDg)sW~enXmi?$j4B=rz_!n zF{eR-O|f3ldG?#TW6AO<@m(f?iPf7^yxYg)PCr6T$*G1TASq;hn3QM!hlmagJm@}y z^`l z*YKjQ>lseFwFQ}$AItTK_cUF;Tql)a$d~&i%O>OO^~rOmd5!wAcfxA>;*delZ)tw8C*T z%ui4P)ue=?DD1nu9jL~WF%0xgnUPHIs z`8c&zhZ-Ym;wN)X>$ZO{u$(t7oY1Y$6Q9>Vp1qK)V*T|HcnH{iSI#j%V11>eF>xW) zs8!Ci9%l|fJa|Y=a$$_MT>Bf8hHcaI=hvRe(d{&fd1@D73&n*=&(*6-dhVx$OVXaX zt1{+T)$a9J{~F&b%HzS9+NQU+TwSY~Ne6kVke=LAEK^itmTcnVug}Rhe^{s##pk_mj&cdrZqKN;!(K{Jt)!a3-a3_KQ_u47^;sM{eE2Si6A?7eXOs5f-mQN zkfoBu*yx3UcmbKo)!YA7Eyzk$X@c$+%~$cc5j6~qf@1(#qth`?MmDiE4gwOovC8ZZ z&qktj$Yv|dbD+NmtXuH{_J4u}#%r&|z@KX0fM&$*un3mzObMf~*wbXg6KHGkAn`s5 z?+(kJ6$J82j6)eE^^!dhz28M%@aTP)0iRFss-j!%uIGDPtvxE(I7^_N#1BSM^mnsgWBsAa2rk=7F z5O=FRxjv(K%hf`?1g3F9jV%7zNXENK_O#kp>*jo@`18s=W!AJ%pHc4*p5wC|?662! z5bWU8AV|O*qc#(64pSKx_+G+)cuI;>dfP&j^~#*0mI%*JqJ~+`+CDW{9wx6&@(|jy ze&9P;e}b+K&nA77GL6~;YIDd5>E1%rZoe!09a()&7l!$Dofg4rn7r9bm$y8+l_bRs z{?(_ez5d4cch+l4G|lseK*I;98JrW@>LU06;+s{*PcN{m-f66HXv_MPO$nC$el695 z@C+rTi-iKF6_C$3DWb7Gl`i?73Z5`+f^-QW8J#f|!#;=jv0yHNb-P@ywyV^2J#>SE zTeF?JCW~^J9>iVwf_ivuJU0a|?NX*jWPkC|t;?w*ubl9BoaqZ&6CK(tYCJ9iS@8{Ab5?OgLI7yF&iB!xb48tO^)A^UHWF_pG2R!U z{=?fsEj-+qKl5zIVH^X@n@f8GPspc{2!HDrSMqy87+;J>$T$lZu=+ z)?2Ja*0E4Q&1?)Xevf`b{ljmj&3;4Lv*LR_7R1P^Ll|>Td*7*;%T_gZOPZ1{>Qc9r zV1-g~#XttJJgR(+0@W(L$!SN5c zuxFuOs8P^*jH(e46d7z8qs%ZeC+pg=k0c%AY`r7BTAz!|%Qp~vMU%3Q4%q-P-k(Y^U$*S=s;xIzr{`XLH!j5A z3j>%H>|HA&fie>;4IiJIncj2nl|7H6Ckc6=-g;gKeNpxcyWy0|ZcCUb7rV2s)zkC6 zYapmL62-?8SP)L8KS}?rlrRHWpJ*|Tx2ixD zl8VX*>`(=6W6vS?W|dVkWxgty$9G9-Xo(6AjPkpTi^OsvxcDVynFWfZW@pG4RFo8R z=woy)`fPjo|(%dOw`O6L2&eh`GY>y7U257LqU{bLC3dK-PnMEC6QK6_vU_E}tC zW_0Y;V6|NCcE@9Gvb7+Xy0dbdVCK&nFv3)n`o&f_O5E}H^L=tR9AOs81LFv9M>Rjf z@(w`|4`H=yC>TgM>e}6gf5ukuj)sDRqJD3G)4I%%*q4%C>aB6Aevp+KyZvZV#CgWM zouNmjS&ynJZz&aVcJgy3ooIuv*caS_8D2k`?K(AEGD6u&5h2E+v)&=oF%9%TNt09c z+kYf6Of(Rsd5qmFHohWydAkq!q)==gUJW~iU9{d2_krvdr|%b4vJb<*W~SBLxp`sT zDORH(S@lN1j3hfF_hS%`_=xy;IYf|Q!H(|qgh{LY>tf2Cn(BqvpwA>&LZ@4lQVPI& z+R>nD`{VWbU}z9e5Qoc%`HHHDlLPxrwbY)QreaTYQ%`Fq_21X!youxeTcmkj=p*X= zP^{lgsqatwJiA5au|CcRXP=(=?|><|S0|(pZ*=~40>>T@7uRM&ZZ~bMoN(o{!fQMN zB+M2$n1gdfp7|y{chG~FRwu(Z(-Tv>UwPDDdz_7x*W2R(gCwuv$6_PQ5CS%N?!Ck? zQ9o+1k-+_%ObR6Z%YNJyBdZZ|;gE}2vqlbm*ZTHK(xIU$A}#OW+oeN`x#8@Fd1m5a zyt;}U>P@!RM|B-U&G=89tf#kh6{a%Ls-p4S2kD-9VtMz2hXY?Xcl-Vv)&xke`^J;l zQT=X8HymVs5Hfyk2?4A4_xt(N8KKOKwjH(|kCzRH8RCz{6d1oQl~#a*Cxq(f!IYmHRAuSp)K)aCTwJ_Y_jy$w2;simbHn zfvFUR4@%Jmp@G&Uv(A3Pq6hcfDHGfua(1dVqr_RQ8O8B}pX6g5+{`F~f{*Ew%&3H^ z3o4Nj)YGF+_P!Rwn;!f`K80tq&2??>mD-wieNf-vxG_D&M&~Qsir$lT2;^A-hwnM| zpS|FCrwMMMVt+v3xS7}tw??}R;u59HuJKmq>F(01!#)xY%~xtaWywAmCA*`3VSGxI zWRNB_??}p>cMk7=y##Iu7iyxxTu!qT@OCX#g6~Q0@U-*hBgXdW9k<|?IpQS58pTE$ z74K0979c?(^Q)8UX@1uqP~07E%CT&vu1v0r)LT^yaI$6@&DGao$S7OL}A?nT{= z_{+}wpskNb&|rCojILK%=K$d|>!?L7v#h_;uhEt|Im^G_YfYgk zZ|`@(_&daAlqu&9*~dfnRnEJ*e|40+9-28OZ^J*A_Bg~8y-Uu;$d+ijg_{2dt`xQL zYL8V}!kX~3x=1WK61BnUgCmR3iHyT;(eV6tg`K%RJWdka%I7onD0hmotxEY3MY${N z)cA;!bdIAs0fdA(b*~@~-)*yaa*tK#|x=*wG#wB+e2Hmj{-_UBbib!AIgR5fJncA_

    ka$PnqTLS`8t`vmo^?%l5s!#TkK35e?6fq@M2OG9K||LWd- zRAP?+l0|f;q$c$d4lgfOh=mB>*Mp{sMfvFpk)lElsLyItsi;^gL{tN~0gS%H7v@Q1 zc_medsxeYSihvPOh^M|MUdfY573DICR8}k>k0`btu0%Y(Sc*_DXiOb@R#Kb`P8JqR z4SZV+8YsR-7Nd8O=00Iak}y#`K3*m(LDW(WI7N~V&`fcj0#Pe9&|;|^?$^RS_yvkp zEG?@*m`|F7Vcn=Ju1`lub;V^EAoVJ)(g3MfaVrgxx)pZ_kaWeV3YRV}uPn|Zm6ri0 z@Mui3tU^uzQvg8QPDta#3K||QmMBDk+^(ih7(#G^W#c1qNj*!LT0}_21PC>YJ2V$v zd4P(nP$*;rI!g`q44z82tWgJ~5NWk9{jQVWe17lO$`v+bP!Pz_|Y^#$)g!2hfX^7MC6aHkSn4p%H^_h;F}9LwI0&@ zG>FaC1_-7%0m}?$Ee1**#UL`qml2oztb>F~22V+ch)M}&WEU;la8a=$7S5B2iMtlH zM?|DYB_sgqv<@mFuOw2GR|3$TUA2+`3XoJ6EhIrcOfD`@fWAch_(lh#3-2$`a)22s zPfgQ-s=Ww8-s^zJG z08gdpngV!qae0O)S0YB#V`DXp1ho=6a8Xb7fclXR$VsQ!!xz$SB<=^%H2`Fw=|#l_ z3Kf(dA8Fe3GI3t9NTQ}@tOgk>1EXLNkt1{+qUHY?FiT4f0_GVgDxTr3@^*4^k}#@B zoL2(1ACsI8zP+Q1qB{`-U)f8CC0*467!(DAGu>vBlZDBmG6o1ofpvjd3{>E+foc_J z(TXSOqG-hoJioUNi&`;*dZ~+o)|6f*qT^sofDQ}YZX(GD1*OY?{6%f5w#&~7(Sd3^ zw{t%&82V1Cf^<;30a{>exme6VEe2|#V0&ssc_Haz5B0%Gj1kR)bcki;iezyq(C&=T zffmWC04ggd{c%XV77<-hS{5y$!}pd1EqIs|;(fk`!)LG-l_67zB*ajVbX*6XCN2Zj z1eioOM1-LBppwMpq?8jfv=Sm^rMW56nDTNGpr{;8mr#%T`5K5$R})v4mO=sm!5!QU z{U=vkAS)L`jDr!D(m+K83NZHX*I_DeR6(2s?~GO77Zgjx^5O}^w=HT|8H5@| zskpRQ3cmthEG4)fhO798r8B*aI0}4Oqw$=|m#7f>`F|G~Ow1D*7`T%dIAnxMK~#h= zrA#c1CO^^*ir4DEqa-r9SdF-#gNPNClaU6CsLF%em3=L!qNio7DAbIw=M0St0nG3oZyQgANQHHC~7 z(6k^@$O;i90H1-~&})lC@*;&O7a@}C|DWx$D9@l>8bg|fe=ksJP7*;tlq*OaQitNP zFuS5du`mxJgG5|Fde&cRpqfEcuFLafk(#GKRIbA|xL99Ld_|#Hm#_a=HD3{6bQn!a zR0xRggdv^j%=x-t#sn2+rw)ev7OoD{M>Pt>p^=W7rHC#evM;=B?CGoo$N!XUSV*`XYqEX{{TO2K-Gsxhf!9P|>kooq;;{6qTs zisYqwGiJ=0tWqKrre`D~?4fs`k{Od0o0Kvf%tU~IwhGf~2nY%x$V2FoR)N9%Ts4c7 zOAW*PSHu%7FI7rqWs*KJI$iDbN(%~LKtpsv;%ZXMbJd{O@81c&g~D*3T6@+vZA^gNDgZs)VZ+9I(FN<|V#XAJ5RM`~Q8A^`Ck7{daP-BZ;5 z5(=fHQ5KfVs-T)qf=X355Ec+PqD~uv(qxt5azy>816OrZ(m5gnRrsFF{1L*3P$-hh zq`d=!5E`IUfU;sy`x-wAhB4tln3@oQ@B!WXbQrv$Y5#ZYhJ_cXRI>h(-mY#(!ZZ() z1RvUo$WoXdnp6uv@El*G)X2SE$9YQ<08vp^e6??0DK8UJ1rmqns$t|kVz&Q zp|R7@XfbK>8n}b03Z5zvjZdzS7w3V9X}UmCa!6pANwUZ?T_Gz|)AiK_GISTzpi~hg zmuf;!=qR*yXy_HC8gM0m=|a(iI}{EEOgKWKhmmryJL- zRV?F6144TD5mu>|rUu$*;XyiZ1;A;O7~iGKDx~>puTU+FW1%ss!Vl#S{sW5u0<9%A z7Yd80=NcGv{WMsT6Vl}c1o%&fSOw*SYZ$1SoJc`1fl)V6Hk}0)81~Vt>PF3=At&W) z2Ud0-9f9=%A+eqmj&vqzg+wBP3<6QVXnUZnQc@rh!Jz%C76$pJREDUlS_n{8it`XA z%e){Bq9vmXn!|MsXoyT9jFHMJ3X6oAnS^Prnn5V8rgPt(T1Y;8hZzA@6)TE_rSd`{ zh?}iNLsAqCy=);sz*(S^E`cyMHAYyjkit5H0RoJq5ooB6AM;8fbCk3X7hh=f$5sB)M2#DuOHsp?V#mkc{M28q^InhH3A_(}1r;RIV1Ff)r>WLN1=7PDGyLIL4XMtch+ug^ z;~kjMi7F+ADvoIQ7(5hho(_|=W$ba8qLqjRqfSAcP!>G(<;)v?CFNXK4z=uux-ldWPDd zSdhjTkGAPZBr(L$rkL3pfe`hWFatq@)Sm{!gcIlreFD_MDOQbC1*<~!y^4UkqvJF! zC!+4_z)65A5=rwV;&Pe|9!uz0Tc*fs-&$vA^axWkqV$`$L?JVrv*Z10dRSbRk+t}W zI#qd@dz7i8kskjH9drU1=%_kDTrLxq(bM;D=BQxMP1S?u2Y}HLUj;zRbtD&%DXO95 z9?*c9F+xbsV9D@8W}9jARnmpRd`Md8x$VORYT5$13Y4-?1)_xm-v|KEmNL^^vSb3# z@JD$Ffr!YItB@=Azj zEtaS}BqY(51_N{)KGaf{hfo)7SLIX;RC6Z#*{0mWijnqh0GTsM* zny-%0CAmfIyWdK+ZW;>_K$ip7>?G|1;dg2d8VekGIywsEVsVL~SE`oMmXW-GS(*{% zRumLKpF`MhnFa-GhTswnW*J~;r_drnO@NM?V#uFhiQYgFwGv2xhYaiqa%K@+#N2g3=UCq!5H`Vmaq8m!k zp@*KHUr}brVfU3rLmsRYz+wWSg7&CEs38cleT_qlVAZT$(o_Vp=z5h&CF6xMSO(6e z)91-*9l!-_AUt=iN^6m7v`y5JP3I_8qITV_Sj|M%tjmCaJlxO%)oi2%LYAj7l}>It z5I035PB?_57{eKXRqNCaQ8N;OWV3>5CJyU2FwN^Acb%=~qzOcoqGDLfL=`%m!Vv$E z;EvXQsOQ?Tn9v~Vg%$vHDIuVjS`Y->kYI6X1v~?mAnLUNf-oSx>Z*pBieb$!SDPzj z5(UkS2H`bYQ~_Ba6_!^>$r_mu9+Z#=B4{Q{>yEtgDp+I|=}+O_XidtiD9V4DS33z5o*cdWGldb*{` zW)SsGtG7%JOFTweLNfA@85mt*h%(h;AOtI5g;p19sl_rOhH#R=fhc<|Dyb~0G(QPe zEfD3T3r#I7C66@`^XQ}}Pd`9KC|;*^K{jq! z$IaS`gz0Sr>3t$77p&ejs9QOi_mU))+2*8f<7A2;7q@FO57ukg;(#Ju3=drN`Uc&> zJ765WQNu`E(Vnva%$JJA?Lu18CJm>W1a#_+%^gL;6g3+J7?LO=k~^wPS1ijl@DwG` zR+bRZh*IceKT+giMSeP+D#2syY8_MxjBgr5q(R~l6a>!>4Pg*UVsvaNC@WXATQfQR z4N#Ev13GhrT?8a(-T@$;2MC2U6BJ4}eas_UlsX7Y0b4a}QOQ7p5Y&a%6|kHJlZuMj4oE$T%koCVV`l^3H^(g6)CIB0=^N62D`K?}hnw2Y)U z!U&*&vj3m~Lo^|L0DJhY%6Y={GH@Pw@=0>u$2&BtNhwtls7cVAz}0jq)WJhtJQORG+gR=lrB$! zq(WX~SXQ)G!$ac@^b~Z+l(1jL#Grx4N5{5~X4_-b90UpUzB=?B_Fb8pLEUpxbU2`$ z%gQ@S#c_k0jjZ{=#sNCx#XH+WdxH^yIwHx`6*vstb4bHUdNwn^)tglp%S8&qh=uQ{ zxo9kGi9#^_({xG3FsaN?*GDxMv#O#d6EeMgnx>blN(N6%^a5{1sYqT@*>2`VwP<^Q zP)!4SsC5j=g8>Kjhqfy`KA>(Jr0_HqwCNu0p;9qCkwq(XM9LK%2cCEhvyhG|3>8TA zJE+zrlo!EqlKx&MkypPy77cK zxBYtED2+%4PgXub;7c8W1OXj}VDj~ws;D$qQUV(n4V+88)^e*!^y7N5j2=J@_;9Jl z7>F}8g;0Nh9oJD3{^6L$D>NQ>vY{5$gLwgDX6>4`({T+C%m*dfmEle&ft7j83Q6OHo*O4ekrj&+d*>y^zApuC}%nVp{*RzXd9X+#hIHR&a^^^hp05<#y zP{sy2iC}<_)j*iOlIL5+swe6CBY6P{n}+7SQM1xmFw972{i&n*^ZB!y@(?tbH0y%O zP;fB4rYncN<|NVPUQ!{%Fz~6L`^eQmGQWidP*@uV(gnIunW6|HlLq%ugDX`87KzD| z>vb(E$+5-N;`~$@%+!RiP12Xq#6%xjyk?=Sxm42GFSPf;KTvZiA;tDEYA3v~o zUs18ZuHsTPRBtVTY(9b~@&@jszR(U4LVD7PsO1JAsA(xkS2sg>A%p|Sj`XI^l)Dk_ zRWeacr}xceB`^>Ap{@xqMw%})05NnUfUaE2Oy~fFqI5JCL5P%>NeuHKYNd{$ghp0g z3@Z{sAT3suk$E-J+d7d?yj-qlHuh~*H->0g!jOzKaOF4v(H#fq6$md;-vTrJI7RZGn7z`%!MHnu*2& z$6y^F(up>7HbYG_)J)LxNCMCFM~6Eq{aTn_l0z2GI@)vBRm~?JoXU?)wFK!xHm{lHzC zTP)Ad%`;3&sW;k)4^PLUBcmX-t^rZ%)=&80_)@#2NcKIo6|lo57e*Mm&)Nf26@*K3 zN%TyC1wq(VN}i%nYjv7$GAL3%jH8A?cTm|*Zx{@MY|Ow05M@}CUDdk4H9}G}A>CZT zL;cm5JaX_#A2&*4HzaX%q6@3yIz9lyV1}G3DirIF7NxoQbOvTPq^l8d}5119Rd)>MW-e_$dR5rG@9;dIc&)C=s{l0vwqqbT)JD@~ZL zVuj}r+UO)qgItOT)Snv_mWy%=%G#^RP!~xkj02L`RFYWfr=HT{j-UGASz2DYT8LI5 zJk~*Yo)%Lb5?q|G{~Wduc6YTK!yl+x3>tXCbSkm9 zgIyd$)EpJeCXQ$7dqQlW6UL~DvUcl<{r*zvWYEA6vQp%6a&9MqBwJ3$KRVR3#+8N#72RItR91gRn=7IsoVvZn>6z{HOMK2QV6 z3Mn)^Z2VHiO3n@;+*^GM+mg#6`1mb24-qUqroi!x-1=6j9AO0sf9cp zHkj@~-eaihh}t$fGRfe0gJw|crqip47l9j5835EB(0T{J+8E1m>S-% zSA++~J+RSmpGD3wX#@N{F*nNJQy{?O(>(dI8`6sYv(yy-HOJi&3?m#r_+! zFgG1zw^T=rgRx&pb(aC|I3X?sQ`te7a=~s@fjGzQm!gU+Y!~H^B@;a`l{Y#1OH9?L zF2dHlL@+fT8+&6s9E`(`ZkSsY5)PYZq12eI*0h7o-eJPR{dl21KG--9Q&pIX%K3V7 zSg#pbp2^tUesVtfge?boM0XK5_=7DWIJ*f~4a)CTo#fdMTh3-aIOxkgirK&L!CNWr z{tmX-c#sHl2Z7TeaF9eQCd z&k|#o0S*=6e}>?3=?>V=UW83}@MyKTs2DG07vg7=^RQwCwo!s_F)j?mTc!@e*U@wz zM{FY0SNb!Dea3|qhIu_Ol~`7^67zz`xq|qNBs{?{2Ak($ZsC_Ru~B*iHvR^Go)~~% z;efz+Y-H`36&CN0O%kzbUWhw(u;)2~^mXiaNCB@FANC%W0P|d4yYqbXHP#rhUwX0J zp(UL3sV<6Nx^h*R1FxtQcY$K@Lh<^k>{`sy6$Ae8b{vJRz2g&bsl7YiIO!L<$vKj`61S7G*eOcjPNB8>-68y`jR zub`%^dq5@GV9MJWe)*I$e4M`a?~U1;2e1arX&%uRW8jhTye{_z5-#+`|Nq`aAJ$g& zt_D}8cm0Og_pPCAX5&839I$C9G&!h3XcR4o_n=o}YDUDOYPfQ+S*S=b0(Wx5WdYbS z9a~PtoIKYN{cz{m*vKvHlmJ%+G{!?q4#rN?UB%FH`Y}aNE82kBH=J15)Gh1>0nYHo zu5P>HF;2(U!6LyhY!MgK2U|cxEd=kTW7jnp^Wp@q*whm2qecPQa>%o!BcD;$px#rB2R zyfBGW`KHA_MVM0$O~$>>(3xDXq^ z3hR}yO22Tgx$OHsEZjBk-~nurC&p&OaYcaROsLW%Y&jj|t>S$d7}0|96^y^frin4p zU_bOzY?P>&QB*fNq|x0UyR_n{!k}={FkI{*@^r!+w#)yz`oEhM(uj7#^TX_ivc*+SofDyt-XnNIxej~7D zD03$a355Hh*lbX3%*jQID&iH}fB0c(QAP_k+eq3io{e9ibvW_pb1WGC9Ged3HDb|l z-X?uD^UT@XZy?rvY!OB9QCNBu;|CbSyZS#@{Q)4F&&D)Ra|;>W&@5*=SlxlqV{aNN*;e0BhLk5RW_#F z@Dy)kvhH$P^c7I6;a{?pYW{wGY$^%u|hxYK5nH>~%&g?E4M248S-MltVcd z(rc+CkNlr5)juGvF3o7BG%HviFh8!EIM&$P9Z%?ijjOO#2{sSKRtupsdt>3CKy2nc zGzr^7ze~g>-Z-QlM}=Zjc{JusjUGP=;8<-2-Q=roR7n}Wr%ZkQ@*0>9d7eEt*sZh}82I&@_LP8hDej*Y*IW9f} z9DT5?5D2xMgcIR`m+amM`6c>`i_X%A;$QuS4}!i$)_ zz?9{T#{<&J-UsvSiw49vU~_NCqsC({guHB0Bm6PG7vl=DgtwZN88xgz~JiRfnB_D!65LRzk{=F7aKgqnl6S*Z^!_w zA&fcXc!c%C81g|`SH}5jZEINU9b6Vk6dduy^c+TL2qV;XIF^9xdxW?Lx&{eop#e70 z0?YxCg$@`mA?YQANxZ)k$aa7_@xYSV5b4^v4tJu|*Gj0mVUPZR_sf=?uNL%K*&{5BfR{_r$y<*r>##`FEcTRa&er$}-G; zX2J4jZ)YzmD+_E`31cix<%vz8EowiD8=vpVFRN~ZXps-EEO;fUK9j#i@XEobP%AzR z<5n89NcK-`7LkZe*Xft&FlOKOU{JOvhCxHbX5XE}WxVHcp@|vhf#P^05o{}5%+sz zEPNf2JmN>t15eOFk1xFc&oBXzmpN^&QUqtrRe^jowq6r78uO>ao7F^;9dn><497Tt z{5OV9ljuWY1g3<65xzn0*u)QVVRuMMdSWbx++zu(n(~2|Bh>j@rMj<*WgM$kcZ|iJ z&1HpG1N0o-p~!>l|7pD8scKaj;18xmmbjh;5yZGkEP*yRC?3)gQeoW0{OwRn?)eT| zNa(=$vqbPxDjjR zfT29I3+u!FDXzo3g$gn-h4f1G#1~N&_Hx7c+kDWLjYoj*hQpjGy$FwSf)3Tg0gtG1 zb-)=tk{lokM>}9{0Ji=PubVQQ^y6DBZ-KtHb8Pl@OO^wUvWK1>2tCr#-vRz(BYV7Y zN**v+I|Mp9;7;~D$X)Dt0^H5s0q*VXF(k#D?6RDY=t(2IR`Qm0jyaG8Q#yzPgIq)O zb!>)cY0HA>5e(fi+uidI5|D84Xn+VOgLg;*4AoB!7xY_I6f_yK{m_WsLEgEQW&TM1l+_bQ~n@O&pTd+F=>gJQRJV--b@ zmq>!J@qS2YdkH*Gt?Zoyp}UI!_ZWnQc~F`R=VczLo`M)D%n1RLgem*zE|bGyvc3az zheI-GKNMH?=!H$J^~Im#u+Mw4f@~p9a_qgZu@ksgfX$t7MR4-yEm=wAS!toKIIBgfPt2eG@P~~?0v$z`7T{`eVK966o8X@CJ>oY)KOuZ^R?k%u z85)21!$$CvPQVQbFKCSyl7tjAGoNNV8v1WP&3X-Z&0i#o7_;W=$e^Nc1uCb01I zn&u%7kQzGRVJvzDXo?LZ16=jC@CLfH9wtzP7|InEgpz!#2<$lkdF1;OAMuGr+KaJc zkR_p{zrlk(4{bwJ5<3WWgjGkLX`p!^ticrm^n(ACE(do}Z1N2l2vtH2y3>?ICb;ZB zqz76N9`e-_2z7;5PYn-&Fc)Kc1x-mHB1;eOhrh-S(r)6ceBoVtIm1UbaXd0hH$fn*lASaqIRec*jUj)Ti;?t##*-7z2z`Lp-?UHls$10)q8y1%a$p(Jr?A6m zozUTQE=K1InsNqBNoF6~i@|q;z(TRfsbPf7I;fpI8c&}IM){ycdolcnX*@aEixByu z2<^q-hdUAZNIPnIIP4*W2W z#*-Sj#%Fin#}hQ3ocu%x!kEs*$p4qdlT)7XZTC7@wSFH68Wfv8(}`y4H3^2lhQ^cQ znGn}I;NMN-$x%#%#&m#hqw(a#rC~iW@?BvZquAtdB|>fFO>;5$VKkncq-3@cYS1eG z&7$$-?0Y?buI=kr19jOB0^*k(OwLGr-1O2 z(})NecfhZt@#Ju!q5qk7+Rv5nr_ybX3p7Nk;W)x*+D%g~rzN=)ahi*fWYLXCIz;1% zq)b|7PYo6Mz(`u*MkvYYGK6|`Q0Mn(JUK1Kj6>uvb20o*pq^rrLtzMh=ur1!@WW_4 zIr>Epx;g|5ej$w~XS@(3!#ZeHk32@>YXI|zUj#mdf~kB$MhIqHAg3ndtU8KJ$sWWy z`V1B-1#a!dXkSj_$+;>-KdmyvU!d{y2`cnni-b=MzZ~36u^)o|NA&onC1LPeX*@Zo z1oIUw5EU)JzAfw)85E zr%wPOeN!3!98V&joXhFBo>tR%(m*criS62p;s1rklS4KzI%$#ci7Bax7m-iS(;zez zUS!;P#MdtgL%D&bBu89ecOZF#P!ngR*ECf!pV5@$_zFT};YH4+KH~e5Tg}DDoCQrE z=It~k$sc?`X2&)58%^o^pLlb4s7bNOp%6IwuhBw2Fn)-l@#OdiLU+lV=3?**XgoR6 z(Q&47n#PmE8_cE^@|U?7{`WMV9Mpg(*?LZ4@V-98K5{0b;~14o}{m-1REWLw4sgdp^it=3>fe3Zf}C*@n+-FjgVq z4}*`U@np9>LT*~520xX?lTGyu&=m5fxfuD}-b6pW7al#-YjI598cE~n zjqPXv1i3zRjdayWAs-k@%RWR>NHc-B!z-1h)Dx+q%%dqs(Uhc>rgcEcShtU+%=l0I zGa6q?OIn~8f*JlEkg!s0vX>iXW8_V9G5Bm6Pxfsiv|Mj|V#;)g#*$;33tAYrBuU3L5?47_T zaR#$cMpH&#Lg_%`^}WyF*U)&f*%oFidSzzt&uKi_H;Yg;dDC1BzIQN@Pj? zIOtrAq%AaMCg2T61LzbGBks_6vRjm~os2C^M%I<_o?bmM+VlGn?ezXmtx?6uDiR`rO7(ar>kL*A`W61&BeCPm-!qKpC;JVV zlOW_Tb20TaipJAB3z0P-GU0WZ-wodL|Fg_L(L7{-AVNF!>XEU@Y5>tmcK#s*6DOUE z!HZ}-*~-V9c+?Uw_$@S^Y|%rAcwT!kcqNS|`|1qK#NZPK68&TY9gM_!_AzCyrSbjg zq?-%9R6>{34yXlO((_?$O6Ou^iU$#yWbYY59y(Zc&s<64$u={DM(E)gotJ1ly`hX= zCz(d;B*sB-YByIwzWMYwd6VxFSAQ1e=9Y^q)pz7;pVgm5

    hT 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 diff --git a/test.exe b/test.exe deleted file mode 100755 index 78e4ac3298fcc36b279628ea872371fd48d53ce2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 49370 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 J`)jjO{{@0O{S^QJ diff --git a/test2.exe b/test2.exe deleted file mode 100755 index fb16b1f74f7dc82134251b02cb84b1da1d5e9d92..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41238 zcmW)mXH?RU_kh_TAa2}yq=_?U?rmA-$i36b+$mtgfs!VoW_x`r&4vw2&6VUr(~?R} zGZnXGAZluc9?+g(KeKx)l-T-z~P{h5%?smq+2IDxgWC8=KQ&8f94D`e`^CbeNXwci}C!ZA*f2U~%Y zFAq~lOv_`R1LT*ts9DRfOiZ>1P<(W@b%WD_CEEL?DM6odiJ-ueykl~;)d;#H22kEfnU0Fu*HK^vnR z>|N?82--;~mbul_QQ3Y@^aMIN^GE>?0AtmV@J(Xyl zlXezJBOXuGSMf^TNhO|2PD*Q2O-?zRdI~rhOH|Qz(oq3?&mN0PJ5EqpI*=5tzH4M@ zVWDSiXx^s3HyNbj>9=&~kcvV>nr;%?ElHmobKIRB4T)I-c_w3%M3YHuCl#5*!~phL z(AlI7kT80y7wBMom!NivY*Xe|v}j5OQd&hy4WAaqzlfFKpUv^4hWO_P2Nu9~S`^!U z%u&*c9UTX03vSo_U^UR0Dr|AO=?~;p$}e^eSdzXtHZTX?B|#ax0N1`ZYYaM~Rn877 zG0q;TJNQ|(2$(AAY0Ci>9tHs8rR{2!Kd)wrNdTd>gsDZhUA{oGO9uZz9sU51 z_O?HNex%MY*;MP{mt=f_R$sDbpEVRn4J=V2fOPqDEg&Z|gli55D;gtD!ZNXVR@>%cCxyX~ws=p|`09ZqU~ zIpOMxd=x7@b%nl4Gi&@kg;-5KHBNsIJRAe5Xyrp_#M^HT2yJ*MpxbBM{^vQ>HlHoD zCDVk4SD>9+KF?mhf zc>6W-TTul74F2;vkZ83+A88t%a(@>f>FWjf6!n!%HN&Ba@-|ifWB}!0`r7u(3+(`D zi~dEo_ds2}z2vx(5cI9?Ma*KLx8r~8E^i`V*sJWlZN)w$b8I{17fm?$N&)w*$_T{W@QrH3THq=T9`d+E~|U{uIShJc^}P2LjNg8AbmRggX{j~k23u5Nd}J4PM+|X*(xnk z8gKZ7A6tPmKUidoahSQj?0D(zMyqHtBGGJ@jebwIP7H?tp4;>+KHa1Qh=7#13IYbW ztA8F#d~D!Fm@~1$7>%Uu^t%_)w71B|1!B@pMNG2P>8*)9{q&C5(%_^0k_}gNg4y6r zohIb5eTHk%4+F{JpH$k%hiy`XSj!8jXiuXpcnLOoAz$*OeA;=MG|dfJ^+SAavIluR zSFS;5XsT?N?*?9lk~^i{ zJk|*FDsX+ptVkv>i^dY{*5$aPVMd`ElKzHA%`KS19VCl&Pn(AQhmq_rjI|6Gk^Esh zrzTsuM;~oI{P`!cE=MZTz9z!?R`hT13|9fzQXjeZ0Yu}Vx5nIZ5<5+w^C#z`hr5oQYcMFsIs|;cQ-g@*jXWT*}Px`>Z zZs3#^=cPtsr%W)LbKp3;W<;;tHwFi>4c>)GXS_F4!fDTjagEp|X-arWTPuIDDUpB8 z8&syW<*ruZ8!dJnZ7VQxGq8_1HK0J7zE8QH2g1rTaWfH1idH!cdO&4OwJU)DoCh4e6=3?e!3uZ ziI-y-xjI8-v{duYhacFmzG)`))G6w+)n&ePDNo!g-Dqc zVYNPlqLK&yuUVP(d!-NZJ3;1r=s;%zm!?mVw2ve!1>#P_*!oQN^VyK+e~c2B^{FdS zyv=h-JA`M3vv-vRX%C+|sgUJ8SDq)*r-CG&qb$M>`TzwF1C4ja5nT5~z@c7UKzH7g zeoP`l^RjZ)B072isjnqFxE(pB<6*m%hE5MgPn_Xk_=(IoCEo4#MpSHh3=BS#UE^HI3R3Tz3*AYZilkOkOhWFx{ z$SwLGMVTHC#uH7T`{$nyFt_iIFZfBx1G&xtNJ|GDZiqqrplZZLYn-kw1{L2g>aYT) z|2T~;k{K|(kuDG>S|dKN?4mjRSzJ3m1_CKb{`=m#0A7WY35=`Rmto}hWIx_HKw5uIw1ykD2U8~W_$g3C;DW-L85f8ORh9>@aQO4_X2{qn>Y1_8>wMH-P zz4fqT^P(G}S~&ew&mvpBQ&&aFj_YqH!@xyeUVO3kER$}-E4y%h=IWZ&c)Qe#*gcJV zxE2fmq0*BF2hDKx0DgOFcT{Po`f0bfwx2t@f6+985`2@#(3)L7>Ny4NCzGuP*BH)Z z7;RKEzc68s?kybUAQdYNJMKvZn${Rtr?q7`-OqIN?`r)Z++hf_vyb}{RQ(?~&+d2M zszyB@|4r$ED$^h*h{G%c4=yY8@5N(WZ-`K1xsZjupqbLVP#V>PUYSItVk zEd?&sxVXBa%H^8!5GR%oaJ2zZ=VWZ!6B<`ez7CRN*CG~|r8uBi_HmU2%VTTrJ0fXi zyK@af5-;h{Q?$dJwEmk;5~Wl@{Kk_(V%BROR@Td@B!t8km=|gtC8U(g^Qq?I!;AXP zu+oL_D86*5A$K(#WKFEXV{ZsF`*kopjcgf`J8vt>T9+h)IlkF!?E-zZH~A(H$!oAg z2|^iQ*_m?^D`K~punX*V+qMAWe(UJ8t#a#Qq;_A)7m&WBuXap(p5|kS{K|TwEx*F5 z>~0w&O4N4GF7Nr45s9Nbl4E-VLT=!~R`-)@xbC8R+nblj*c+#C7xv8*_~#nWG0?0% z7k?k9uMcYV+7?0<_FGobq^Q?q9q}bWY)SAgKT!_SfNlzXiwa+wn4)}=uVWAR0u5bW zPIYj|>ju~+HhP7LpU93|~!2IX6S~5`wVc&uJ88)boWtnGvJ@7v zHdF74`YoR*&(fV?c1xx0l@lI!<DmNKd|i+ z9DQERqPve#4&3oz{@AlOXTS~q0h7|jyT!=7joqSwGabtHSsmX<=-8&xqA}B@JiZk6 zLS7a!On6k@MB%W4PqOi*S7E-wg-*j?RLwIG?~z^gI%$mF$PTZ=--z$u;&~Yem(7nQ zP948+o^$6mkr;9O!U~79RANQ@ccI!)Ev=D8M7Umvn{l7BvynfbD>V@WB?)&(Yr{nJ zz%?KdXd?3uwzzg-TMjpWICJhjnOVMl>H6a4g$Z?hH73_&7+B2p<&3SNpGuiF*cNRs z^WHi^NGjd`kn`W*G{lvqB|3g=Nvm81+De;~R8I=V4<1#R zRx=WIn!0%T$+{@&TH%<;R^?)AWJdi#lfLAwb$lqIe zYy)Ga!EM>mtFj>}OxAQW|-6mpjrjmhq>66)S`Sm>dt# z&E&v&d}3OvRPz%1yKK6p_=uCIl%i2}n(qfj=AYxz?bz!e#m>d%W<7JM)7Wo9(@Bda z!V+#d==9&4{>*gMPqeH4)dJpQqjm>*iNB_pmIN7aMXM68glC%5;n)6fF`D_(2()DK{G!FAevMD9np|2*$%&ji&r z_T*hA4WEqQY69`K?I{7U@{{kQSURUT!(^JY*ciuP=-0bBE)tNguxW0;nIy|)%2xfg zzZoQ%Fe$3nAPxyiGY7q(Uaz0x;*+`A@j zH0_KvIf@#Jy?1J4&68h!V7-MKc`GtXB@y7FE~~K)^y9$OU+jTV^%k=-QLoKpSf7TW z*x!eO&5~1Gszv@j;1bhY(Vw|H(&io$Gq&52=YghDy&qUCzdR5ijo-57EB=3{s)EIX`BzQo3jL zlCN=`+kIz*jdU_c36O43cJzIZ_q=49_zdbeBP9O{u9mK<1t@2!dHaYlJnkt0oUw&A zG?cLx0_^e&KICknchc|_J4l;8wG+Wx$=k16oZ9(fa&HUocg}8$JW;wht_^2TMR{fb z-7rWn9*d%A}E*hOmZ;nJHn62Af+&XLrrfm`!NXDM1Iw5p3=RxI!zEjY)SbjJrZ@Lsa+44*U+%y7=4r<6BTuD%4J5K7MqXCy%4d#GDHQr z6lXt?BLajLG}NLl@m(t#474nN3m?-`USTjqL%#hiD~+lo+43*6aaw*lCB3ry1AaEf z-Q@ZKTL(Y9w{LGX7u4DDKdZ`q?f#nq3E!z`&<&6BX2Z0KJ<{2cvuLfgP=C zfHaghEvslP=NuCen&r^wW$A2eO5(8DaLJKwQ>pLQfn+^;kPKd9Bi znzR1PvZp0(I)SYGf8#EBbQ*y*BTIVjy1=x=1m49z1bIxyiLLKl;mL`^()gHSE%4{0 z!zmkjk4M7SLdVuoZ*D(({Y&xL`w!Bw$^Yc6|BQRP=$^Z0%hSPK6#M-04){f2+VwLx zL^a7$KU%0a`QLSdmwC16FQ?9p=_{(fV((A+T6Lsr=={r#{942Y*Wy!|6Rg0 z6;i|DOAG43*|b5SPNF<=ZJEp=mvsi_ZU|rXTRP#=h1<3HtGe=3;g;hghsE;|31gXo zjWzO@5!WL|N@(5A<%r+sJ?2XGOAGiVckhJHdjv?QR8MCowG=UB2fu1+MlW`nPz#83 z*C?$O76a#QT_6BvMO%(GgiM^nVoxg0mCbgj|90A2+K}H8*uiVk@Gf>AXj8fqPD~(w zdvB_vDpm;|+jrWKEq^;&5)--U8gzKOQR}I>so8Qtk+1hy@vk@doAdgKJt)!5!{;ew%8dKd{P@$uw%=x-i znr8Uj&0D3fqkSuqQ|PJd^?pU|>XZCu^t=_@ZmNmZ8dhyG!L&)dNw`fI&`ng+o>4?QY(9kX#oTpEq>k{@?Op zVfT6j^chIM1Ygea%*+*+$xAO_nufxVkw(KPjlQt^`~p~_E(6@ID}u)elamDg z<0J6(bIaI~c+LsnY|+ugSsBU?W8tVZV0L1A%~fzqhe+KGto_o;p;J&efKRB zzlMYK7I!awPM@HqhzO$l!7F$C;IHEd-ht20o%f^t!wh*$P?DakL@B1~=}Ewz6SGq{ zH^^VwxpBley3B9mb!85hxBIIyO!N#=-u1zvp~oC*p=j4B%2ap zp?*+g-$C0`jngk6`&HG&*t@0z*P&!?x9hhomw)W;1+0PU+aZyveU(ImMZIXlgFy3|m8Sg&sgv&6!#=q3 zhW+2!VQu8i(_Y3oe}>MIVSa_MH0+~ zi;I>;;wBq~n+hQd2*gommEjdeqGxN*+ir*Qe(8kqq6jgI6%gFgkQ7z%MvRtC>!7x0i)QWA*yy>ch9=KH_mwIYiAQV63!9lQ*YO z*ciQz4{7pg*PsrWbxxeXg!8i!_Gw^ldTDtwnynBsb&yo6^LxO2qw`RrgV<($`Ftb}aZH>p^B3DASlU zE!KB$Nc?D>A!+I>8VrB0=y-5^SBPFz+0%dPe67xzCJI<5iy6b5RayF~8bV{=dj%ao z-_zs}_wtGAM60^)^O$%0-+)B^YdR*T_&{Z*RKuDch?z}PSEf?FY^qRB2(pFUd^L!a zUZ|267X^L_Zic)RUEI@4(f@?CpI&Peii3mW5+LsE^l^qNlIQe|=a-Lq#@mm%!PA#T z=SsYQ=_5yFq%>gf3^|6%9t@}-HJdpC1G#7M>Ur9om;h?%@bc|kJXiU555zaNw8VL}3}acvGrFL|ODoSAr+j;69ZA#hY0=74=A-=abM zbr&mA`i!TzMT@Jn8>cIGCq|0mVEeX5Q#FEPG}7|mg^qo`;y09rSe+{T!%4Emy!zbG=nX`ex--*aM`0lbcH5qDdW# zx_pS?hH8$0`8O^9cXyM9d-2Q!)L!i7L*6EA`{g4Gn;VVdH7;E_-;L861aJFsKG&v8 zy1&2wm=aJpZF1tp>j2GMJ?hL}F~Zj( zDw@un{MShteuMCRBz%)ZSz~_62P%f`tTcBbv77^fX)S>o8l<{vMOT)Te@ASUmKJxq zmS%_LzS^B?67P(-uwY&)d>SQk1jONf-8J@^hkrc`ye<-{L+6b+_g@13dKHZ*E8ij( z$Np}FTUmZsN{!G^aMXU^VX#L1hrm?6#Skokj`V|cKNLM|6Ja?(_BNlVcGrtGk4he< zW$SzZT(CAt>Zw7+PwC((=lBe6RQB;q5n2YM$|0`78A7tApo1#3+=g%iY5k;5uUsQW zVt{1Zb6%xoKl#Yp2m#FU52-9O#t*%_hc^rymh{@!6dW8lbua_QtA)p?<(MZ8yr}7a zAM%N>Xp!!rw;Uo1+XNH;(k1VfP-c_e{(uKT@0v+TQ2j5GR>PedH3u1xQ?#&n2r56I z005R9`2U$owMMmBzrPA<>pZvxpD()qhQ-|q$f?o z>b%a#z$`kO>_t}q|G~soGQh);0Ca|lyt4!DJV@fvokEw5p%>?j6Au7>kdK zpWMU=B+;*$z;EPLWeMs1bKxyF_B z!C&9#p>-M7BVOSv2vL}BUiLimsn$P_A6X?U!|`!eA$3}X&;)NP&p>>Hc)+*MY@dMt z);v`e>3O(8AXYOrc&I?gC-+`E4Ew<3gG2<=Pc0Y!=;-8`?|`$kB}}JTAfg}&@1 zl$K}xcK~EFEu5qv=alo;(J0?iZe4C)ci^(%cdNImhon1B>A!A0)z8(r{3~}fBf^2s z?CZNVmhZ`4Q-hCJo}2QcV0|#e9Xx7F2n+jz14oDoiD$}4@?kO}d0!I{a!v60n>aVT z!sX?bYLJso3Sz3vj_u#IQyvGGWN(HsDtM1SIS|G18kcGjoaQq z7#}(}<<4uQnZ@t7h`cq~@X@G!3t557xP)$)=K#HYk+5Ac@Uh%UBLC!9Z$vt_k2!J8Y=>BmYA zOW_ap+cysnPP6+&B!dsL&$_Rk1NZA824?Da&C+v^P4lX27uTB{Ep9!sS+(ge2Dj~{ zA!XJ~K6!Zw31haq|#o zp>wGe6Wa+AyDX+wIj-K;cS1}f25wSPe$ZoJ$oly1(Yv#9|CK6o8^n|pXcZSa;-lBI z`;`5gwyTwBr{Yy7l1z7#G6Sn4g46A~iu`SMT>we{ zG%+rv2U^5CsW+zKT>5{5gQLXW6%|~|f)3|26;>l&UBaZ2&OCbl> z_?FD{U>TLTS>kybRu=rm-gq<}CM~R;d+)pXqdTe~~$&bH*HseVE9x13TVDKE3iu{`zr~RPU#i z<+yLp(T0{O&OfK$`3aJ@(L|_dRIL>!%-me13n6?k0$y-Lw=G!FWW$+hfJK`UfKN`N z)CWVVe*}u37&zKE_!;o;rI4?4s|;Mr3OP*6QyQP=-ApnVT8TH!$w$F#^fUW{!bArY4psXYbD5_P{b z-i}lG==qKJQ-x~b$8teFObow-BsR|!ASReygTm*)Wuq%f42`cK*qfmb4r4>tT@&B< z$8Oe%>Hpq*KL)4F03JuiB#X;Y)k-6WDpcJ5ZS*$LwLGQ^7m(JPNjI|A3!W`h72As= z#|+D*Zvx@7INm$y_2TfsFZdZDq)T0;@8?-u*-Do6I>$iYrx1HR%Iy#WF8$aP{!kfr zY_`CagN=~84FA<2Xyz;gU&zQm4cIsI92NaGsFyD{5=MpHWLm#xhi!{}bHj&9yA@$Z84hy;%Dj=8G&w9#B!@LElo0Fo9QbXBEC$sa`X(X?t zD^RwI+B8Am*KcY&QCV&HHDUiWPuhv87_RVSC`*IPyA*ScM{ zW5X7s)sh0_}g?!!HjMZ^OCb?!f0 z^xxBel|QtnGTPRt`~^espi||TBMPt7b@wtA>GO1`{b03^%I73(^WJ{etWtPT>O1d#HLVo=I=e?R6}_aj@pxB@au|l< zrkeHYwO2Kv^X?XeS5GPI>yfxL4iOtV#Z1Rj#zyZdk{DpftlXmqNkXp+IvdlhV}Udc z>qBY2)(5_kyv>vC%t#G;6ZpSTCPYW>=n2rDE#94U{P;V&SW=XaT2)*V{}wh!^9JB* zO-xg=P9QZOvf2-KuT@lxrbuM+j__i@Z7;|u>vP1yAUq&9U3bHrr*2VYCO@{Hbp1$ozw5EKKHBrCELJAS@!)^00=Tk8=Ozgnw@HfkJ#JpwnnLeH?@8~vK( zO~{y8|I}tD|4%-F!MHK79hOV-8cvI!_`i>EKYsj%^ezd3P}_2r{~x#*K)-m#lc9~c zP1Vyq6o|B?u1MG9V&YGGUheA0x4Bb_4PnHsJRo1P-L(0yj8tXzm2GM_aw?J`hPb#z zoCA082$3I*URQVOEGUHh%+?dST6|}UJt3d;u}@UTq8<@T5`tMyfR$&t(RIRU9c|_maE^y0BDYH_|ot{1KWm=5`G>OBhnk#G9A^ zUE;T%^soy>@Se;9k*oD;7tBY`2CzK?4Lf)jWx7xUb-orEg1nCz_VVqhZfbThml)uC zxm`%B*GVY&`dr1-L-Ot0DZDO(&6_Lw8;jCd7Dd2V%BLW{BD?@0r-ZBcnM$ z_;uY6_d4`Ph;ASGmZW6+Jf-UHq|l#D&cTV4c_2Dr7h&5ElzZYSJgcIv*rv(Vah^Bh z9YHJAg`8yNGLutid%WXt=-Dun(;>FVMj$3<_5O9tViW!{|6f`Y}p-4{rxkZ5n$o5tei z(SCa)#S)~#-R^?|TeHLVf7>b(j??GAZeF4*Q-3OQE1uxWm3iMz?9Ef1%eE~ZbYSq0 zP$kRTH}==~iLXabX{SSDC!IlQw{SSr2I3jC*PeeDNi@5YVUXPpC z7Z4)OS887;qT|&vLeXXMq@kSru?6{fYak|#VC|KrYrX4|w%6K;s6&7B(D|frv!xol zx&SFI8ZykSYCAU@z{P#rZS&xo!?{w9z1zt|sx^s}oPjxcW{3FCI*|C6;Ysqnq<_%f zfLjf!{Li~2%y=qM9~K}?9lob6NJeDta;ctb=Ph{l9%7-%($`B|S|CTX?e4X=YaCa= zzI+TjCxjp27qxhiWF;GKoqBLC0pOyQm~zZxHavstVI#Lg^?M<~%atmw!-b$~l_x(^ zz9QasQZ(aW8bclKPtaJ`?tq(g zX4*8e{cld{>F#(Et?L4G)1)9#O&4P2=Vc)^sQeYvXw;gp3wOhMw^H;>(iwoea*G=e z7=kmLvc^x&T`y@zTOvxi3I15{?r5ct~Q+rc%1J(Cr7?D)f4diV} zQe*JNXLs$5MZn>!TZrhlfCD`#SHgQEAc$E1Gq*aU zJ_+mn<8h=nt#9X+A3r7_zJ6|vlgeE&Wrupb{S2e-q(8w4B_X(G=9=r^1@1ifC_+Ac z&_gyw(dYM@ZDJ=J;g~EA!^XGi{*V1je1;&Nz@As3UZ%-jyRcgGZ`w`&n0*4b=X|IG zJS3MCXB74o*~}(HK%P+`y~W25pX7{w6g+({aj%2bqGC`Zg%RH0&VY*mEut2GRsS_| zZVc>FGUU8Sm~sP=eVAjbyJMWCjhks^v71rR&e{jl|WPmz9N{A{}UPN;WVrIk#2KqkNnlzH?uLrHVqFo$q*?kQ^Yb5W7dlu7CuAOq zI@jwtKKJ@vkV=o?$)Yc?n9rFP-<7(L$9Lc8%%8a_dUPl7)z0A^uJl%%%)}n+lS6m0 z1RU9lVQ0~X4m&^Uk9LDJ1_Me}^Sol#w2Q91c~)Q=+S-?A)iRpS-W2!O4_b*PX^n4* zgF)HX>`6(1jxs?93ca*Dg(K={)|f}Pi4;iN;5PY+HOGxuGVkZeHpnl1w0W0&Zr2JA z%}UQ>OCP(i`=6o@W`%op_h!1TIBGJ_=$F0;^jX5ZiNohtW=a1xkZNQP>t(T>?D|55 z%G@^v%w=DKTW7l60z7fE-@7T7S7=ySaPt=N78>ikSe-F6A2?k<0MQU5j4r=2Ylu zROx?|z?g+4&H)M8g)@-9pYq5V8OLW{tRIs~D9@4~&wRddeAw0E8Ronpk=G|98qC`2 zrigv|WGYyfNm=AIUsfHoX(mA1}Exii!q*}Sg=ay2{Ppf z0;hTGQf$9~ps6;RPdu*I0yrMRS}j$lc3YyU3{o(t_olhZKo=u+v-0hmt0cQyt@aga zxTc|ag|k)G4XGyZs!4#dDM9|k`%q9Y9X34UBLVZitd|@teV{OE|pUD;8$Ga(JCt8w?P^n2ehB&qiBi8#3U`NVQA zv*IhCy^^dc_35@ryR0=u<1v|zQ)9O#4dl#hIt2CZ=RMtX4^(;P)&q=^S%SK*p-G1J zz%u25) zO<;I(539lD{%hVx*-vcMUfR*ShdBrT>VCNHembJ)1LHZQ+Bn4Ok~YLiecG;Q1f1Sk z!%uH0l|i=Ke;AhkSk!+~IbaX1+U^m@JOAwC(N9#AYlG62Z-T;(I-3!ia=ono!q^@C zn~boax?X#ei!}XBkh4|AM}9H$BP1@*{OJ8Bf~M;&qMuCNFV$HecTG@#65^P`8xy6@ zmlynyqBKH-BjHG#{O#qxGHiV`U5PGnhD{WPHhY`AodOT_{&s)Q&M*m;=xcYBdx{IF zageGiZr!9SP`mL11>&;}u(h-N_PF%^vASw!h6oQ2_lc%lbJJD@lXIopL!QetqZnWO z(jz?~YU6_l(NrBmnqHts_->y7&K<^8ImpT9)x+tgw5zWRD{yhNoZ zC_;$2M&d5%Il7}0Y#2AD{8cA1OkvS84;*%W1gfNwWChJlD>(r^>~4~aUhQeK@3s*D z={rozPI9YGRn=a0vD@R3q4ZjH7uO5Bky7__sM*r>BzF=nVvhj1RGhK9;bBV}J3`g5 zxaG3`0NP~G0~czL9}%s=g3FTY;gzC~FHZw**sZ0XeGOc1fd7Y#){Lqvzw3asTv<bmG0$i2Gshx2Qg)-#Qx!++o7-S+lBAY~eU@dh6LP;>+%`CwqTfC76o zb~-$0{XSoSEwI+8$P9Wz>&{mnIP)wi5~=N_I8~fSJ}348J7s71p=fZfz;z_S(Y32T zG*2(Au^6)N>tC}Cb2FzG)3iaodmDuhQbB=n3PnwI0WyQb5xk9BAxWq3j`lMbA76zv zj7~|PYH1P_Du60--LI(+NPLeqfhf#O*R`-djthwhnr0&(+%eOd4r%pX*Exq3)04N1R%;^{RU;SF!(;FG`{^4v-F}%sGaX1SxNFJ2Fv_0tFun z&k9sVx9cmAzTfL2p`{$e$1ZGY7;dWpC%H26fI2r=biM;t|)zaQg-J) zwwaYAJ+<6%sgs$yY;qNP=km?S#w)HNykAiX2WXy3<`eT@Yl_O0^1 z&=ZGx7~=Z?$@T`MK+>eeZF_Z%_60UP{Zfee{P0XAqxTL)Vczjp#a_q03b&e~F`)qq z-5SCR=U~C!rKc`{drx`%89wRHR^x3y(d_Dj=eSbT0ziU%e{5807m^s#`?@vh?V-eNB|c?Ufo zs`_?L?jPMI&$FA763|(_9mS6vuG&Oixi}C9yX=aRmOO4@r|rB?Dn+!yIQLGWB~4A9 z$5)6~{P|i%j4fEJbeI0{5ZCkC-TK+<3wfjM{+|#5C=dPVVcHbzVh3d5sa!eV!Rt^~ zjzS*Itrg(x5fpc``;*lv z(J7g);>y2fAaciY#-xQvCt16blM?0Zh3Fh_ZfS8~1-v?cYn&9ydJdBjJ&UJZ_vN}ESfv|%xH*q*hY_o;oa$U8}PDe24x5tLtIv0e?Q6nzTc!g zh__$rmF_QPH?TdayiZ~22r5}>Vxv@8stu~h|5GxeA96hXXO%ufQ-$}e?2;_~o^&E@ zeS+ktRIO{=_8)6t4mv8x=^Q*-H0jvEA?PI*DCx<26d^eOU2+@BueUxDnyi_J8OUzH zilRm#IPYd*H_`IiEafm3!dEMiI`SnFr>UBtO|PZ1=yZB=bg)`s#ARjHXV6mTXE1~U zxqhMn4ui1Z2m-Pe#S%gjFtu2gFpeNnE6NfRCrH#vvZU|?=~@|O<_jBEF?OiT%8wdO1fOTzwI zE0(nl!M4_pW$!?6taV~JyAWJ!-B|7i2nTCDSceW1JZq1zyu1lMwZ5#Qegyy809IfS zA-Fb#6&gkeuZ>_uMiGwHMzdm$6He5gWW}B$#MQ>L5)uhXwaKiM(}dL8G!~IWAlIg| z&YUHjt3A)k$RuRdX0s?cgxp#x>p~tOzxE=lfJP|%-#Chj2_?0cSf!TYU!wG7s~7D8)n8>_v8z^v_Lb-gEa*Y>bJd?fVNvRI!!6TZ~;vHAxH zUuy?hL*EF)wclAIqlB?qHfwx>Fj+grnw}xd*3Pkh{3OiR{$g>sgoRojYjKINT>G1~ zvPxL1{li-SOW@aTumt}Io3&f4?H$5yEzqyo5O7as;+~RLlu(5vQOJu)jkp-dgXsDk z8%hhg8#l62iW%@JMnV;a`z5qb?6L5KVeG9VLuIS6)yaSrWl27D-I1M*Z+dQh}D<_qDdtslZC&( zixvie;TTK)uHg@k2H@mWJRLq*emC52B=Y!O$Xldiz%zA9(?dM6aH7L?r~UXO>Svg; zSa#YZ&t6;!eW&g1H=V;kB|Q4D26I>M&O15hnUaP;F_q5e4|BqOsY@A9v$k`^*-+{) zpQ)v()QJul*eNh1T->#=e}5(<{siP$|AngwHX-&-qv8FYk7panM%rMS&Ul%zPTO7V z)o~bIe=kYOY$jY1a{ry-)FDZ5)(P)^;HksCf94G=L+3HcJ)r#+C)mm#bnR1`!9e6w zqw`5BS;j{bd-~qF*yZdhmYtG1rXyvs9YVLgrFi^xyl#ZNGc(dvSK+zFo`{j#PbFDC zk^4;=Kzh&ehWt9@b6Mg6zeluM{omLTwXCwvjgd8kC+xEpKTE;B(KFwrj&W!7g#m;- zW@ERpZHT+d+2u;(Ya)lA`uxt)uzsO&jUljd-GA(Tl_S`_+bGMXO|f9=nib)HWVCOu z^mi)Lf836v04wEAoPlynChiyN>lF9=6A4V>)9)96oW@jUd$y*Yob0nmXx`8N)Mxea ziKOholZRSG`|3M%8tf&#&TH$)KCp6>JZaL}r9*dUI4bFXUPecjWECiR(!CX>6Xnq0 zDH(GPMz6x_kW(c4h}#)D=G4>#$uoR`jNeNHq-71g|sOBd;G=5dQ{SO zaY%SSYPmXhE8AQ{=RU$c@jQ57_UDxf;vXdMvfrGS>fZ@uM1-1M-SKa$9j0h zMazWhO*f*!2JI@xY;E8OuH=1` zl*f#)0PLEigDjgu8nL;@LRJ?saZI+Z)Zy4}>Lw>ICU46No%}oKa|bCR*ANHH_Kn`026USo;d+I z`X1}_y_x2ecXcgc@ za;i$|@u--cQ%NWF(V$j%%<(felsn%KOsOU%oKH-K>Xhk7mO|@eKbB$tj!97xrD(`@D~y%$>oNu++KZ`C42=F?W8VSS zRPx0Cl6`^D5vhU#f{2Jx#e#(nHUv>oQA2=GBq5lDqN1RP(nPFhIX!H5HWW|A!kuET zr=XsP9XSqB6glMpYyPwEr4jl4|Nr;Vkj!^xc6N4lceVt|O2ckGa)=H;8dj>2)x5B* zG{+M?@a9-#=Zs^gX-;(c(#Lb}*H8LYpEwb#XIkf#5oMD+Py1HZ?t54yn6Axvpy|L4 z>h17l{a-)X^)?@P>IbIui`frRVIvyS`)=Cbq#1gte(G~cx#o$vZ?sOaChT;a-Oz}* zrv5qlj3v98PTp*_>%VDLUd(ZE$$8&YJ?utQ|HuuiV@e(|w(9j3M){i+Jx^~E z7hWW#d#2|{rGI+in)Mq&>MU!GeweoLEF{lfHl|KJ2dMJ)9yYO5@^Y- z_(A&5R~{0+b$walvbXlK7!{|@YYOFPJX*!FKCt6Tc2l%h@8+Pl0g|d*Q6O7#(e>n_ z*d3)aYyAIA>$7VKL%5`BKy>kAX??|#!);%t*=k>2y(?K@5Y%?z&FVcDy}nLg&>7#v z%sepe@43GUH0vvdHq83%5$F6ZC!g}?zm(-a%c#!z^eiyWe%zbh`9Z@*w;i+4^W5N= zoj>#5Tu$dGnpDmYXg8<_~NwTf#+mW&8T~O~HlzO8^f^Jpr>Z&h>tolGmCqvQ zkKFsbbai@tNkrPry~L1ydC%heeA3=w_@#H!HouQQIwmE!UUl;gtvLHES0K7_q;wj0 z?9RS|-z}u+?^iwVXEP+(By;eA`inKWzxpq6+>GLC>8(iyb zD6n$Obr0TQcg3f7%zq8F^~`q%W)4cvdE<7lg3&)|$bz>G;*764H`@b7ZQ2tMHY0G( zv*P-tR~P?y)S5K^yI;bOO!L$k;<`3ZQ>Ll($K83R0}eB4+Jd!rI{mdaoiEz-hkjQa z(eUH_veC7>M^As2ck|Y_GR~nH4~fLw!R*}e;+OBXa$fhV4V$XSVL85=!3kx5wLMGdoO%chAO=~qhuEyT^ z`puxqoM_AX%V&GWn_~jA0~Xrw1(mGnXIGNTmNqk^ju~3J9cOfn7*|hjw&}aaF{|i5 z-xAx$TXxKDT;4CJ*|Eaq)8#FtTW-`(8^qS__4{8(wv;YEojz5UCY zd0YJV{$O~@D$M=P!OzPYGVC_5(9bWD&I(@s3!l)5)FgBV3|x3=%9ibpjg>|n7S*WE zcMCC~)ACtU?_LXP-&K{HkiI(euM#uu-q~&$K7M9?uc@;cdfM7cdr5P)9J=c_V^swD z!)A3|^ZU+$KYz|WwDaC#zveTjePBn(;>PQnU%vja*=tYM$y>1lCheO$k0<@{qtU}D zo4q>VGGjqk6k~nI+V=GVYyIHBs-MbBXTPesY~J4Vx52NRyN8k1ZY`a}fluvYg*x{| zL8fDDZME(aHlw&vj?Z=D=8m#iVxD11YF8{E61A`NcDwHQ*~Zan(I5ve5rUG zt#)o`_914cJ*yuh}*6c3XcpxBo`)EOH(COCjx8vuXduMsJ(yUcKr{H3q@%0Pm-fSG& zIiuBWAf+c-e4YKZ zYWJnAMc2Ou*=l?pAHHt%?jKq1X71-=H7v_VF6^9nsy7jw-3-4Zh17U=^3>vY6`%h; za{;w#3DLZ#6}_@sJ1Vlz{K={qGt&LU=e5xZ*X(x%Zgq6r^3`>8&eFb5+^Tm3JUcSJ zw{M+ZZO-BH^F^8wZ>t;9mvydPZWtKgH|4aE_4CHsqvYlnwG|#t2HP}`l0$B^<@S2t zJMZfITP**xKHTvTFbR zr*>yXJ-76~=RAXqxRRv(i&VtxGx7rCa@qSGKh{1CdsOQX>3G(6;6Jv(3yE!&?GBea z2h2P3*0T7~m%dtSOT!0vRhr&!9muFDS@og*u3NQ(ZbZY=x>+US2d&flNc!nCp8vR_ zNoUTbZ?|swoc`Q&yXNKXtedxT7ELLw*gq}gt@EAj3rma2&;FRyboctP+W1@SKcz)8 z{`kwVC?=|AAnVPV8nX?o7lDbs;+J?VPU*ho8Fm6$Yt0Y zr$*n3tdH*DDP!IhT>BxYck5)|{3ms-{iIfG$;XOLk2BRM-nTWTcvqi+CG66w6rxXa zZGG!R0sH!J{m;C-k|iHWT+s-uGJjFPq;M?OyJr&_(Cw-0vR6=Lx$HiA98VW)Np zWAy8tx{R8#=MS28>N9eu=9YLh7y31n&x{y1AI)PWiF+HSH|4iH?kGmAsQnkG{`{7_ zqE~KkdwH3e``I_ArT?6L-Rf7kvh4ZwlGoD0lXY63q@P<0FCG{_BuclU%0TojWevPOU_0BvfU!Uu{-t69k!kGt$u}?iG^K+**BrEkDjS^xePk(~8MI&7JP_QmeM&))x!Q5gvtxlP`1H z+VjqAh`QdIvgyqA-wv7;YKQ(dV_-aK*{jfa-Knn&vmWsF6^SkN|7(9*z$lNl3efw! zBXi85;09d{$<)=>`ltFnO%AiwEi0^@IOY7Hx^<;CmU}g91gi@MChHyv>zFMt@42H#{dgYl+P#%@-$DghVAC{QHw(nv>3lOV$T1cKu+Id&8qRWA6Ea zw7~WyhM&-m@CWR^BmOQm%=)jOhAb)nX@`x;*yS${cfDyonE#@l9m;FZa+)7Gd6xaT z|wN4sKE}V`kJF-CMRr;>3;I()58(Q!Dq**(wl*elKhu`?bbzcHX@@twFPA3>f5YZ1kf!qq1t%&6pqbBEmI( z(l^LwR^+`N{_pbCH>)4b`EliYtN4-uE1Sss`XxaHPJ>dDm^MB;1y3rfm`gYfx6R$! zmW|6{7!|*LNmvy&8_yz>`@CQLs7jY>S)LYNY^h=F__pyHaci!JFLUBaPw~ylDwDzY zgLF7oJ3Bw*-JKa-&Xg2R;1kAOeFhbs=ZvfOf9&)5-4IxD?QFMdqixTmU><;mY+ZTBg?LU`$|cim%A4B2{F zJhy)OpeyU#3bYr!tgS84*!Ni|&AYVpHSu=ntKfM$;gx2Ccu#A_p=4LTGhx!A*h;`OB9n+5_O0DBa$@*Nw`dP=CGtHf5N^|>%{z;bK6(m21)IX_N zS6o=Tx0KMeZTWkuR^+DThfgPKU-kLx7xt*RVZLsfuGvWp@1@T&1_s(Ru3WOd$)|3j zZLZUmPN~`C;Fi6AUE9Yty;SYgdNZp}TFb$%qf3o)FEC6Vi@Y;pvp+2O;60>VWSI=N zxXRxrltqTu?LPF$*Nk!Urlw%%$EQ}(&B5s#Tb7Z+Cc_%xa);+-+b$<)Su81s zKm4($|MCHOt3Mf4l}{*@G{4R{P2b^&G4ygYKVyH@rEPBmjv%Kn9AZJA5QMvcwUt(l?c#2C}> zMNTQXbaR`VexJrmuJg(?mc2QjQ|jKU`fgx$=dgn&)osg`J-p^=6S}ORI>{$L`{?$E z;vBDM7ls+UtV%zYtN9!HVl9?xnfFHwZVqQ~>3NY~4soa1aedB-uev1*%ya5T#wPr* zXXEkFhJ@`P_YQGK;hOTNe`G)HVmnxlNj;ri>hR_kF~rXyW`OiSw!wC`!wS2uRoSJb zci*+W{`C(RKiiB1w~+Qp(@S?pmUXZfJnXxB#>9^Jt~a$aT8sKl^KsH1KC5{^yo;8o zu2v7-&}B^Bt!d+WxSwT3nAKx5q~)>F^-!x1dQ^Q{SaNz0c8 z)M)mb+WGFl)@Przt{O1vrjN-*=lm}BBN>dyu2hYD%~iiMeg!r3 zqtD!4Qh4g5$vdvVwb8QLrY)IRyYt;c)*=6b+`!nWNaxJuqZ$RQ(#KD&@@CnVt?~_E zM|rJ^JlwFXtFO<55iCg}c|1qsRleDf^bu<=vo)4KX04wP?vl>Ry?TPQuV`Rj`_J~n z$@gK0G7CP2F{bZwPiG|=r|f9;-dk{9bZwJ_xZdmG)2zk!O?04T_Ivkx|WLB1%YJAHq zp;4FrQ}F%v1l?YzRtM=1>KCwU$9UVry1y)Me8JP6^7G(d(&PV~(NH|^(K%k$F`=>G zm~PpuP0cxaCmXcWV&V=N)M&<6eLOu%>-do2Hve?kWtDE~6J9;-=w99FWr1438k!G| z8sr2`(*L-2t1~ervSW%-+oWdirsAUWXPbm`o24aPD_={U8i$VUDk^y+?X0`fw(VpA z>))W@@oB_yo?%7$GuFTR>pgrQ1(`W9V247p2zg#I?b%v3#s`%o?O0MtXZC{qX zF($o#{Nwl4o0>mQ^3u34@!pt;D>C+JO?h0l^28}U*H=&Pwy@4?oSWD2?YUoBX?2&6 zv;X3$8tmoasex;l&DM)6N{wH<4p|l~@f#V|J1|Cwc4skG)_=COTln`PozkoCAc>t= zns!vW>B1|4!Hu(~wy%?#9a=*I%gXKi&!#6IMMcf?@6~qhJGb$5wchFvEtL(Q->jRS zxBv3JrZxYyGai`K+{rC7vSmeCNbZd-V)}({Y~9po*if6&wzyO3=(GQd=9!gEpJ%h# z{bvqnVShSsqjftw*!yX+s7#Z^WUVe5Sbj#krF!D}^OqNL1$kM<^Ts=P%)ds=b#6af zp;4%r>>zkn@R8TTl^Xh(wYbF<3I0w0RvLHv@edj8X+^iz*l`x}QaR4I{#q22AJ}k; zxurcb(%mC1Z(#^)*^8m#XTyrpJBsx;HW-ELP87U4QF!G5=~H*fA$a?n8M*xps+!+r zPBnZaN&BeP*xy69f*>{>7;Zf5#pz6KO?Eyj-MM}G$&tMZSD(G}>JP)>s9I-ng^0I!pcI)#$YFI_raL4SrI_u;U{eFkX8`hpr zAEn=F>)_2Q`SEfvw`62r`2i98hXfoVb_xM zDr2_$vS;&Lq|4L0CNyvOr;pc=2Zs4!%RZ(K4$|r0uJa2c$Zi*>Wogs5Yb>YD4vUy6 zMYBs2N1chP7&4PFA)wWN$IF6&ZGUa)jCx#@>n#Y(I{Ncct0U~2S!?x|8&<9VH|<>M z-6thSAK9?HADI2~kmYJUxV|*zVy$JO?yzuy;PTKTjH|2tSnk5-N1pYITx+VAQye+M zn%%1`F<|zPXOHuqIefdOWr<0_zmE*uIF+9w+#Z`< z}vdBR5s>Ec>%O@39&)RRW^`0L~ z93I_yW^=<)y_jibr=l8;j$4)Lb0zUl^LK#_djy|}Plk66uoR$J<*x)1mEI}0w0be1=wtHFk2Qqb_J zX_InK4)$3*`j-9bDs_VbbQw^DkPjys@@D+?@5I;Qi(Q-il@>IW~(JlF`xc+zNW582#eL zDPRArFR0tG^R(zdX@~FA%6S^-h=tSSW7@EBo|cq#Cc@7+7Rouy1gmsyF+i=aXZ!r_OQuCrrO-h?VKe z+zTf*EBls&F5vCl|*;qkSm-rgX;MpK&c z@mookz~q>PWsF|!`Y8r?maJRgvU7n=zoG?xE@lht`;A!;@>|~pdGlVSh7A2J#A;*e z+J$MU{l^>%4IesIGuZ4d<5l7k|0nBSZ@JHm``N*-w0!hWLYt>nM(Zyw6AFm7a^Z@n z^F|6oMstK~7mgFMH|-pyBlIahc;RHqQ`R-ZQ9qu-O+!OLo`C*_69a}mN#en9bhjXzVTg9W!{I1 zD^o^2n0-v|!~4m>Gxr{R;Zqp4Exma{@8!!b{QgZ#^yjZe{<|Wl_j*K*H<`Nc;QqYN z+AW0}P~KQc#rzHCHu-Z&Cn6_4|AEw6VAe~=kzXaXwjnOHJhOSR`1kn*R*d1cTdUb= z9L5Itt=xgUvrZ1DO}IamnVU~PcTSWRD@pq-;)#hMv)QIO^Wui23LmgWoEMi5VONSY zQ(gvG_{RC1(|2`q_wbYs^BO*4BsV5jU>JWcGHHG?Um&ziT_6&Mq@`!nXD(diE=}c= zAqEo-9N!bVe$_nsX7aa5pY_8C zWIEg1rfu%;j1hayKI=5Nu|9Z(HTCtZH(oQLavo7NnXr};0nR^_yqW6s3ty`Uw=$`<7wnVAN&GuxCto{?)#}XU54AJxzvm z1LK(SP{ToD>3pX_KXB`vw!byETW2br6wVmHFq&;E)o}^&?qeNgDczuFrMr5xMV}6H zy}u#aJZ;FyXshY<105`*CJg)~n{A4$Ons#~GX@VD zVQA1_>R@A1_@DkY#z{Z(fm@%B_VBtPHMZ2XGBUP^cspTotKP|ZOp~D8QR5aH^znQx zIKZu_ncFHs=f<(;Fj|rryL(rTaYEnL<*i{%A1pO_S$Jf?TmOuY?9W;AdzqPSLSJ-k z97+=UyXcaP=1w-LtwFRg#xkg1$sQuzLrBw5^ISsI;agnY976m(OZ;*Cc!}=$7i7U7 zg;qfw_uQ^GyAi#vr?GvT2NB}WzP`)8))Ki7zYS^@>6g^4W;lM?^kL7Yl1D8k&exOk z32R0jqpRgLrB(yv;0>#AbdaI+;#>{u)h8}|E00=RzOMX-a>m7yi*D77s}77Ihe9MK zK56a2!45fNwx)e_7&#qfe5gPz4a=^6BN|?4YFPh9JbImjf1CWHa{WHpfs=w547vum z8cYJg?|4@}p0c-|gbloNBs2(?68wL>!+KP8*~5pWgTEKjQ{&s^Ob|oAXCo}t_-cS} zvgY@U1J(HYLM8n4zvuG;5>g>^{0PEF<+J?ldw7HWMGz#zB~B=IS>)p8vQP~KAk)p$lLil|gI=zgZtgO*w*h2eg9O~96b?a_(aa0AII(b>AvuE} zO|dJGHc%4bjs!u>g^#jYGsTi**AZSrxne=Ls-pj(MJcTuPQx6g0;dK| zni9z&P#cZ|${$H7NfHj|BZzRI_3T!DQj80AuOd~=w^3Njv}n1m9(O!UJSwtjtk#H7C)6 z*iqnl%7fj2X-RyZ7+MV$2(mVkx7sGPR`dD4IyDvkkONnw=2R?#!s2D7_7t$9oiQ#oLZ>{c5`Z-I;iT@PXJPmpl#;Fq{VaMMM43Gb_}?x47!Rs2X!|Gu&qhoWAP#$ zxSp*3&WEO?+^cltkAaV}z+|Q-ala4yk$}p=JZ!u#f!tL;M-Y%9s3;I6rAXq{T#mxz z5~&o-AqYcd!!cvU60S(nt*c=ZahcFPIVov;J{K-B5#%K$QJBt;=W`PX^0JZ!C8r1p z@`{oIT=t_kOC7i$%VOl~WXEIM96fFca4-Al1nU@JYm_U1! zlsF-WB4#8>5;+2K0ta9Q%o8$!;J|4C5d_l0GY2&WP&MELg#~g%k`y4R0bnEr5aA#I zhQdQKV+Amf^1p8jT}3%DNeP@-V1mLGM1S~v&Rgo7Ia!Y~#re6BB?^O*n8xB^z#_;NB{V73 zUl2DbDFvwSRH5pisImzP$F~rgYQ7Lmyrbjh4skgGLyeTOZnr<;DQAkh~Q5X4zt%&G2Azf7h{i~%QiWAc$al(uga2u2; zfH2g7`IhPf@iKOD6WwWWEjd#K(*&tO;HaP!f;ga3Jnl>Cg{R9^(S3*NZqRw45G6uG z(COVh=+GrlhFnb6X*bJ1%NWRZrSCXONrLQBq2rD!3mZy|AYk@VI!nysC99iz9LkaP z^|Vyz20T1|$Mc|%Aij3^0M8u+vM`jZ$Era631|$NdbPX`Cm?vd$#nBlEAl$@aFWVusj(Q^6(>(<6y!5> zeS64B=JW*0r_ZHoV7KYBObzTdeO^!pRj1EJ04dMR2=>J_nF$UE;>(OoPvA!IB-m0M zKR~58ff}r!R?4ZA8v;`#RNHM9%6KX2Bpx>%YpCc(g(mfbKlw9LroOcs7{H6?rtu|V zkRXBJ?Nn8Dp}b5vuysLCKoB3IIEK%QNLqxY6Gf^_5sAVKnc6t9DiFp^k#I)T{q01&*O@w@)F=r8UfY@0}ACKs@DGS7mlz(1w1=l6%OLY@upy@!tcrP zI1Ep9r}MeuM2f$u2RbESnjvepcu=iOAuEBbvM+B$J?L9-T z0QuyoN#VbDC647{C&$S#xV0B6055k}`SN1==fA0T=}2KxsE1k&jnM zNHW)6iKT<&y$xV{@2}N$gMCefwAyWB1lc;@_~XExfF#?P&dIx#keShztN>ONTKLnGGkye1(<^~ zLu^Em5v2&0rJOh+g%HTrSk42zq3L!uU(n^Is zi7QHg)CG?mex5SC3%ii=Du=^O5vI6#4kHL?C53B~gfVKyll@e50t|)2z5?BL9F9Lu zf8rvj*4k!tJ?H?qi5diCILvC} zRHg8mM_uNjT!s^mVQ{~KLVqR#RaK;lzF)osnN!vh1QiL;#b7!`(LkhZftJBSV2f%E zV)4!c-bLuXU4o8TD8&3H0}DayRw*8D7eJmPR+oAPQglQ@kimK+1qN)ep+k)vPf;!U zD2f;l`lf>Zktju|?&7aXjWAZ?HBO3e?u1scA4&#ls9j3{g>)3d!$x+i#&tsjzAO>H^~L z1(vG{z(&PTl@fY%OpE5)vMtukMjXxc~;C4ii-PDHlO(sLT8(mw|x;dl^{3 zB?Y!Jmndn3i;A`cSj~Ueh->6RIK@wdv5oLk5rG9xW)CCKez_3fBfK)9Y-c-J*%Sq| zsK#l0h6oZJ^-9c=i_kF0;H_Xh(&OC=5v;n^CGI-N3c(;03g0fJLtRW0$U-blO;9P2 z8WThbe3U8dVZGw!B>^tALQcUl7r7QtdI$oXGF2!D5~fIeg1^xu8N><$BtdJQ^?lddo;|&@av3nMSI|^o1Q%G)7%Ee<` zO$wGK8Q;Y(nj^PDLgO%Kgem(t6X(=w<)HZ>LghUijyzj08YFX5#gRq?`rHgnq3kGo|OH&l-iGi~#~}vodh#g-#4)gydEg>SV|` zLtv#NTekeD0(D!~bmt>rcvjdWUqGolFA1_yx+ZcC=;TTwwZNhmUTD68Rb@Fw3|A=x z%#`5ufO;Vf3P}#0V(`8KtVO%+AtniX+VdRm0ow6_fo!`KS`y4Ng}|h2rZ-h-B0l1k zHwm1MaFS#v5(E*dVqpqS$kfdns1T)KXp$Q+pnx)JlUD9j9FKGZbW57z@!CgSV}Dpj z(iYMyBSMp*Y>J+iQ=Jg6GVAGu6Z& zoQxm#4QKO2!Z0q*SbmpNsf>t|kpx316aina2Qbn{UIZwSQ@brKVGkUZhMS z<10!?C&(H#QY=A$j}_s~6~yq9#Yv0Q8iL%R>?(2=f=E#j6eq;-;vpmKwge;JE5+a_ zS0v%g98WLMWkC@L>6#je=9>k4_!wP<4@krYl@ejeC*rARX=pYKnz8_(8Mv7Q;;0i{ z2^6oS;dzT*lYt2M`}Y5WpgiD%xGsZw(fMR1pDQ7V^(uBH3455;&_kupV4h_Bl*#m# zu|8BvW-i2ojGQ8rZP6T8x{nh|^>%`+RH5NO_4~P>X;FDp* z!3qGXQ9?@Rz%id9OM!D1aDd!1h7d1wqtLrhBVjCnnNU#~=!WWfFUpuGD;Yn~rE(P0#VtOl)=(Y$;5_2WrwU5~(xp^3c(_;db znu?-86BV}VWqHV@z}FDkayHqH!+qrlAV<1S^JxOEI2p!7HML}eN{GpM2x5wgL9yU3 zIJo<+@}m?60mz}apn2zgPfg*$&SW>0csBh$cgt3Y(l{5+GN4;Fs#u5t4le~Gaoy{e z@;{Q1QiW2EoCS=5U228HapdCdF*VPi^&m;j0UQn-%qCAyg|mXmA=m%{nL`pS>*15Q zVhNu8fI1GR*7OO!Z`}Meu>_8m-~=3ybxQug%v4y<1_V!?GCd3|fs{vKNk%OEZk6wL zu6Dx|O_fE%AcH3^a0)ymGf5)ks$1SFmq-H;N?!xbNol~$YGuOAla~5j-5<&&Xc%M! zDrKe!dGQG_Gpd&h*Cl23hn+BST575gCI@`ChX=DE*`(5rfkD9>ddHR^U#rpa(M5ds z?k9*z634~Fs)r!isve#UM z!y6w2%ymkAFec!oiFyPWD?}lcq&Oh_6hsB7Th>X<3_UEm+7!At{)x%crp;2!uk)tK z4dlpa-R{D~;p9xzEonh13Yh@m_|R!n!LFk~qPi>aO9*sN{t<*FRNHnNvtUpbih8`| z*Bq%Z2OLK6f%cB?sc?|jty#rz!A0GJ%$YJ}7z8y&^3NO&MNnJ2r6zJ?zRQf>RS*<0o(VZh+p-M@Ule#4VF+DA-@Yql5pPw(v!1%enUFr5L-A2 zX+$B?dIZuLjx+}wBQ)I8c?8n13-CeHV?&%_-541s#Cw>3qmH`Lm3GSa+?mawxC+aIwK%qu1V>cNJ>T@Z_d$S7m5W%vj% zqy?rOCKYD?PjBPIo4%l#EdDbeJNd5n60)17t@VPjr=VsbTBohoe*3E*LPE11#@o+U4>h ziy6%AS`1ZOja}uV8`3r#V~;fL5b2LCL6+1%JA?)zWH$i*BbIQEqj};advl-e#r(%$ zzSL#-OiDzoShU0iX+g*e!Ied5sh#rxS086YdgF?d+3X)}%WWB@Ky19mV6@oV2eCPbwHVq5!gZQ66f^i}j;|-; z5B5Z6mS78XmcfZ5(89scF|>OJ%mIdg?uFHp%;h!=#2TCw2YtcJ%?fEoAsuTj(qKM= zxHU7g;vzQnmP}?3!f|>kTbgA7oy!I+N{z z$a82(6w=6s_Osq-iw5IJOSSE8L$L<)lM@3Wj-$DS1g!9&ULf)u&24R*JuPg2HZai9 z9{di$!Ex^Eld}wIFGiZ);FNGQlzE)N2mxA%BZ}}qy_vr-7^mlSFCtHq`P3Z-;8n{I z%O6!Oj&Mb{Nb7%xE#p~D{>Kfmet`jwKV}$02{71I#Kj@IZHQZi2claDb)sI|pd>I1 zkr|Fq5!^2ftSyQmpujXc8%NZC6$rDiZ2xFHRx zsfE=5lbirwB=JXjY`Zv+a-|vtJAkAUZQ>2M5A6ljZ2qcsG z)(3S0i@9^Pbm0{%+NXsjl@Bcw3A#xy;2-J~G>dOnnUYId# zC>hE&(55b91t^nf13r?8@9YyqKm4M2Xxt6NK_`V{%al(5yk!zR3eTbNV(OJ37HZkZ z*cNMHl0E#-Rn+pNHt|RXQ$Of(ZnJPX__{gGujHU{C-4EubOLg&7JgMeG=5AIhQG%F6J#?8y zT9}i%-Ahnk7?Q&Tt!W{J<7>GDfxntE2Y%AAqF|Km2-H!WFm1xq-b#O~NnwV}2Sj-{UbkqO~RGVv`edS49xq#xSi!xWD1SJ68RG7x^y_`eiRU8f=h zP`dJ=@ljA$l8LWK5yW662=8b-mBOjZP{gMma5GrdlguX2oJ+-}l7*I^OyT&>5e$w> z5Z=-4xtzlB-6A?hn|shibK?C2l8NsO5d;JtVMO^%);%y09=c4s-k1|#2ZAdN-3q1g zC<@0Hf9U>VF-e14h0V_|2u`_OD_ab(S!dH^dFLm@3X+ThVZNWp<8-5 zh2z^RaC`*+UxNd+>65Txjj8n z;GgtE%kwFmI;1D^x|vVo)fA48+u;tbOj1?8gTnE-IzjvjRwy4@ekk-Bn2Vh;eP9pz z7g0Dq6DNrD9^`+eaD4Pl5byAd;-U4wp>TY_4XafJhTqVhbO1JziO;d&>%;KBi}I8P z{-}6pO_dZUK1+ruQegNEt;rJlAIZdL!*DMNwBX7t)}jo@B9HM^G zntrEne2hyFpW*)*Dh|3iN7ge9V7e!n_;?oPj~=|^OX2u5mLOufbv@dWNiZgm%-<;e z-Rn$SvXR1Pg7SsGKE zJ^4v!i#hS(7(JWfpY%gpzlXx{IT)e#C2riDOyU8B<0CIRUx2AeHve7tpB`P%AD4;G zqo8-=7sW%Dxs$^2;S)VpC}3HO{6*pTn2C-Hb=&|(A(Dv?l<3h-iPPTkqi}q5M9(^x z{->o|C{91hd+?(2(3ak#aD3)NP>0k?2D&5%Na;u>KEfdg92x=tQ`16<6Q9ed_aVBZ zV-!xEz7U4pOrh~H18_WX$KW^AL*ol59G`&@L<)5w0sJM zWAhhl;TTgsbj0nWaB9n%uz>pG6-m!ooHNW9Bol8e(`Uy@O>{|O3dbA9kdd>Ls61o1 zLE(6pS3P2AdE>!YKi<(L2nZgPhsJ{`9B^(OoM#M{( me}XUD@Z|5gaPbwsra=r9C&IZLY|RtX##7Bh={w>_5dQ}u51``! diff --git a/tesuto.exe b/tesuto.exe deleted file mode 100755 index 6dbf027edf2117d3a5a54f2fd40b88760076686f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19486 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�T*I{zzV8d_EjJJQgkFVI3n0kNY1f!qLhc zfXzR_>qR(PY>Q)Hibbq{ScIcxwD^o*I=&nZEgp+j&El*#9p5Cv(cer);Y5Kk$$-9L z!37a6s)GUgtNnlAJw3yVITxy-me6Vya=`nch*Q*YC`ojQIqO86XaNa88oWnDoM;SA zUE?F4lBOgrg;zc=XW`obH`i69!fmcr03b0f6oXrY^B2XAzE8 zRsamcTOIl|J#&aTe-&|}<&t>q(fkRg*rrg#iPk^j>IMBNzTDvtEIJ+GT8Q9f;dcfm zzs;h9`+t06LX^tT%t$0)6v9?QIqVD!Mg=FWL{w4Kk)A80ZH8uGR>-3&V23USQ!nC{!T$^u$&H0a;4w@v{+!5-WWZmvvM1gt zED8gj2T#1x&|l4tvr-}>S=6M7H##LstVjF}5i*M!LuFAJQK&3C4jzrc%@|nc=`Xen JKXqX`|3A2m5vl+H diff --git a/vgmtest.exe b/vgmtest.exe deleted file mode 100755 index 2ccb997a3e3b9a4c71a99539d7498d1be0f07e81..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67189 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