From 952bc98c5a1d6b2ea62aca99e4cf066daa8459f9 Mon Sep 17 00:00:00 2001 From: sparky4 Date: Fri, 25 Jul 2014 09:22:58 -0500 Subject: [PATCH] renamed: 16/PCX_LIB.ZIP -> 16/PCX_LIB/PCX_LIB.ZIP modified: 16/Project 16.bfproject new file: 16/TEST.C modified: 16/dos_gfx.h new file: 16/ed.pcx new file: 16/gfx.pal renamed: 16/modex16/modex16.c -> 16/lib/MODEX16.C modified: 16/lib/MODEX16.H modified: 16/lib/TYPES.H new file: 16/lib/types.h new file: 16/makefile modified: 16/modex16/MODEX16.C modified: 16/modex16/MODEX16.H new file: 16/modex16/PALVIEW.EXE modified: 16/modex16/PCXTEST.C modified: 16/modex16/PCXTEST.EXE modified: 16/modex16/TEST.C modified: 16/modex16/TEST.EXE new file: 16/modex16/TEST2.EXE deleted: 16/modex16/modex16.h modified: 16/modex16/pcxtest.c deleted: 16/modex16/pcxtest.exe modified: 16/modex16/test.c deleted: 16/modex16/test.exe modified: 16/modex16/test2.c deleted: 16/modex16/test2.exe --- 16/{ => PCX_LIB}/PCX_LIB.ZIP | Bin 16/Project 16.bfproject | 88 ++--- 16/TEST.C | 334 ++++++++++++++++++ 16/dos_gfx.h | 2 +- 16/ed.pcx | Bin 0 -> 2086 bytes 16/gfx.pal | Bin 0 -> 768 bytes 16/lib/MODEX16.C | 317 ++++++++++++++--- 16/lib/MODEX16.H | 43 ++- 16/lib/TYPES.H | 2 +- 16/lib/types.h | 11 + 16/makefile | 15 + 16/modex16/MODEX16.C | 34 +- 16/modex16/MODEX16.H | 19 +- 16/modex16/PALVIEW.EXE | Bin 0 -> 10358 bytes 16/modex16/PCXTEST.C | 4 +- 16/modex16/PCXTEST.EXE | Bin 61733 -> 61493 bytes 16/modex16/TEST.C | 17 +- 16/modex16/TEST.EXE | Bin 38158 -> 38469 bytes 16/modex16/TEST2.EXE | Bin 0 -> 60131 bytes 16/modex16/modex16.c | 641 ----------------------------------- 16/modex16/modex16.h | 93 ----- 16/modex16/pcxtest.c | 4 +- 16/modex16/pcxtest.exe | Bin 61733 -> 0 bytes 16/modex16/test.c | 17 +- 16/modex16/test.exe | Bin 38158 -> 0 bytes 16/modex16/test2.c | 4 +- 16/modex16/test2.exe | Bin 60371 -> 0 bytes 27 files changed, 789 insertions(+), 856 deletions(-) rename 16/{ => PCX_LIB}/PCX_LIB.ZIP (100%) create mode 100644 16/TEST.C create mode 100644 16/ed.pcx create mode 100644 16/gfx.pal create mode 100644 16/lib/types.h create mode 100644 16/makefile create mode 100644 16/modex16/PALVIEW.EXE create mode 100644 16/modex16/TEST2.EXE delete mode 100644 16/modex16/modex16.c delete mode 100644 16/modex16/modex16.h delete mode 100644 16/modex16/pcxtest.exe delete mode 100644 16/modex16/test.exe delete mode 100644 16/modex16/test2.exe diff --git a/16/PCX_LIB.ZIP b/16/PCX_LIB/PCX_LIB.ZIP similarity index 100% rename from 16/PCX_LIB.ZIP rename to 16/PCX_LIB/PCX_LIB.ZIP diff --git a/16/Project 16.bfproject b/16/Project 16.bfproject index 2e220aa5..63ad23d1 100644 --- a/16/Project 16.bfproject +++ b/16/Project 16.bfproject @@ -1,19 +1,19 @@ c2e.convert_special: 0 e2c.convert_num: 0 -openfiles: /dos/z/16/16/dos_gfx.cpp:150:0:0: -openfiles: /dos/z/16/16/dos_gfx.h:156:0:0: -openfiles: /dos/z/16/16/dos_kb.c:1039:46:0: -openfiles: /dos/z/16/16/dos_kb.h:23:0:0: +openfiles: /dos/z/16/16/dos_gfx.cpp:187:0:0: +openfiles: /dos/z/16/16/dos_gfx.h:116:0:0: +openfiles: /dos/z/16/16/dos_kb.c:217:0:0: +openfiles: /dos/z/16/16/dos_kb.h:161:0:0: openfiles: /dos/z/16/16/lib/lib_com.cpp:2:0:0: openfiles: /dos/z/16/16/lib/lib_com.h:160:0:0: openfiles: /dos/z/16/16/scroll.txt:5256:4537:0: openfiles: /dos/z/16/16/project16.txt:8063:6091:0: openfiles: /dos/z/16/16/16.txt:0:0:0: -openfiles: /dos/z/16/16/lib/x/MODEX.H:5511:4684:0: -openfiles: /dos/z/16/16/modex16/PCXTEST.C:1143:421:0: -openfiles: /dos/z/16/16/lib/MODEX16.C:141:0:0: -openfiles: /dos/z/16/16/lib/MODEX16.H:444:0:0: -openfiles: /dos/z/16/16/lib/TYPES.H:277:0:1: +openfiles: /dos/z/16/16/lib/x/MODEX.H:5511:2798:0: +openfiles: /dos/z/16/16/modex16/PCXTEST.C:794:497:0: +openfiles: /dos/z/16/16/lib/MODEX16.C:2334:1895:0: +openfiles: /dos/z/16/16/lib/MODEX16.H:2926:2348:0: +openfiles: /dos/z/16/16/TEST.C:335:0:1: snr_recursion_level: 0 convertcolumn_horizontally: 0 adv_open_matchname: 0 @@ -28,13 +28,15 @@ c2e.convert_iso: 0 opendir: file:///dos/z/16/16/lib wrap_text_default: 0 bookmarks_filename_mode: 1 -ssearch_text: bitmap_t -snr_casesens: 0 +ssearch_text: gq +snr_casesens: 1 view_blocks: 1 name: project 16 replacelist: てすと replacelist: \t replacelist: putPixel_X +replacelist: SCREEN_WIDTH +replacelist: SCREEN_HEIGHT fb_show_hidden_f: 0 editor_tab_width: 4 show_visible_spacing: 1 @@ -48,11 +50,6 @@ ssearch_regex: 0 e2c.convert_iso: 0 ssearch_casesens: 0 charmap_block: 1 -recent_files: file:///dos/z/4x4_16/tauron/C_SRC/TESTS.CPP -recent_files: file:///dos/z/4x4_16/tauron/C_SRC/MODES.CPP -recent_files: file:///dos/z/4x4_16/tauron/C_SRC/FONT1.H -recent_files: file:///dos/z/4x4_16/tauron/C_SRC/FONT2.H -recent_files: file:///dos/z/4x4_16/tile.c recent_files: file:///dos/z/4x4_16/tile.h recent_files: file:///dos/z/16/16/lib_com.cpp recent_files: file:///dos/z/16/16/lib_com.h @@ -75,18 +72,7 @@ recent_files: file:///dos/z/16/16/lib/x/MODEX.DEF recent_files: file:///dos/z/4x4_16/modex/DEMO01.PAS recent_files: file:///dos/z/16/16/lib/x/MXCR.ASM recent_files: file:///dos/z/4x4_16/modex/DEMO07.PAS -recent_files: file:///dos/z/16/16/modex16/PCXTEST.C -recent_files: file:///dos/z/16/16/dos_gfx.cpp -recent_files: file:///dos/z/16/16/dos_gfx.h -recent_files: file:///dos/z/16/16/dos_kb.c -recent_files: file:///dos/z/16/16/dos_kb.h -recent_files: file:///dos/z/16/16/lib/lib_com.cpp -recent_files: file:///dos/z/16/16/lib/lib_com.h -recent_files: file:///dos/z/16/16/scroll.txt -recent_files: file:///dos/z/16/16/project16.txt -recent_files: file:///dos/z/16/16/16.txt recent_files: file:///dos/z/16/16/scrasm/MAIN.ASM -recent_files: file:///dos/z/16/16/lib/x/MODEX.H recent_files: file:///dos/z/16/16/lib/x/MXBB.ASM recent_files: file:///dos/z/16/src/lib/dos_gfx.h recent_files: file:///dos/z/16/16/lib/intro/lib.c @@ -95,9 +81,25 @@ recent_files: file:///dos/z/16/16/modex16/MODEX16.H recent_files: file:///dos/z/16/16/modex16/MODEX16.C recent_files: file:///dos/z/4x4_16/w_modex/MODEX.CPP recent_files: file:///dos/z/16/16/TYPES.H -recent_files: file:///dos/z/16/16/lib/MODEX16.H recent_files: file:///dos/z/16/16/lib/TYPES.H +recent_files: file:///dos/z/16/16/dos_gfx.cpp +recent_files: file:///dos/z/16/16/dos_gfx.h +recent_files: file:///dos/z/16/16/lib/lib_com.h +recent_files: file:///dos/z/16/16/dos_kb.c +recent_files: file:///dos/z/16/16/dos_kb.h +recent_files: file:///dos/z/16/16/lib/lib_com.cpp +recent_files: file:///dos/z/16/16/scroll.txt recent_files: file:///dos/z/16/16/lib/MODEX16.C +recent_files: file:///dos/z/16/16/project16.txt +recent_files: file:///dos/z/16/16/lib/MODEX16.H +recent_files: file:///dos/z/16/16/lib/x/MODEX.H +recent_files: file:///dos/z/16/16/16.txt +recent_files: file:///dos/z/16/16/modex16/PCXTEST.C +recent_files: file:///dos/z/16/16/test.c +recent_files: file:///dos/z/16/16/TEST.C +recent_files: file:///dos/z/16/16/MODEX16.H +recent_files: file:///dos/z/16/16/MODEX16.C +recent_files: file:///dos/z/16/16/lib/types.h snr_replacetype: 0 savedir: file:///dos/z/16/16/lib spell_check_default: 1 @@ -109,21 +111,21 @@ snr_escape_chars: 0 htmlbar_view: 0 spell_lang: en ssearch_dotmatchall: 0 -searchlist: main -searchlist: word -searchlist: syte -searchlist: unsigned short -searchlist: syte -searchlist: unsigned int -searchlist: #include "src\\lib\\lib_com.h" -searchlist: word -searchlist: sy -searchlist: word +searchlist: modexen +searchlist: modexClearRegion(page_t *page, (SW-palq)+palx+32, paly+32, TILEWH, TILEWH, palcol); +searchlist: mx +searchlist: sw +searchlist: SW +searchlist: SH +searchlist: QUADWH +searchlist: pdump +searchlist: #include "modex16.h"\r\n#include \r\n\r\nword far* clock= (word far*) 0x046C; /* 18.2hz clock */\r\n\r\nvoid main() {\r\n#include "modex16.h"\r\n#include \r\n\r\nword far* clock= (word far*) 0x046C; /* 18.2hz clock */\r\n\r\nvoid main() {\r\n +searchlist: extern searchlist: VGA -searchlist: Page -searchlist: modexll -searchlist: load -searchlist: bitmap_t +searchlist: vga +searchlist: clock +searchlist: setvideo +searchlist: gq autocomplete: 1 outputb_show_all_output: 0 bookmarks_show_mode: 0 @@ -157,7 +159,7 @@ c2e.convert_xml: 1 editor_indent_wspaces: 0 view_cline: 0 snr_type: 0 -snr_scope: 3 +snr_scope: 0 bmarksearchmode: 0 view_main_toolbar: 1 e2c.convert_symbol: 0 diff --git a/16/TEST.C b/16/TEST.C new file mode 100644 index 00000000..86cbf42f --- /dev/null +++ b/16/TEST.C @@ -0,0 +1,334 @@ +#include "lib\modex16.h" +#include + +#include +//#include + +word far* clock= (word far*) 0x046C; /* 18.2hz clock */ + +//color てすと +short gq = LGQ; + +page_t page, page2; + +//てすと +short bakax = 0, bakay = 0; +sword xx = 0, yy = 0, sx = 0, sy = 0; +byte coor; + +//byte *vga = (byte *) MK_FP(0xA000, 0); + +/* + * Comment out the following #define if you don't want the testing main() + * to be included. + */ +//#define TILE + + +/*void pdump(){ + int mult=(QUADWH)/2; + int palq=(mult)*16; + int palcol=0; + for(int paly=0; paly0){ + yy++; + d3y--; + } + } + if(bakax<0){ + xx--; + }else + if(bakax>0){ + xx++; + } + }else{ + if(q==16) + { + if(!bakax){ + xx--; + }else if(bakax>0){ + xx++; + } + if(!bakay){ + yy--; + }else if(bakay>0){ + yy++; + } + }else{ + if(!bakax){ + #ifdef TILE + xx-=TILEWH; + #else + xx--; + #endif + }else if(bakax>1){ + #ifdef TILE + xx+=TILEWH; + #else + xx++; + #endif + } + if(!bakay){ + #ifdef TILE + yy-=TILEWH; + #else + yy--; + #endif + }else if(bakay>1){ + #ifdef TILE + yy+=TILEWH; + #else + yy++; + #endif + } + } + } + // fixer + if(q!=16){ + #ifdef TILE + if(xx<0) xx=(VW-TILEWH); + if(yy<0) yy=(VH-TILEWH); + if(xx>(VW-TILEWH)) xx=0; + if(yy>(VH-TILEWH)/*+(TILEWH*BUFFMX)*/) yy=0; + #else + if(xx<0) xx=VW; + if(yy<0) yy=VH; + if(xx>VW) xx=0; + if(yy>VH) yy=0; + #endif + } + +//interesting effects + if(q==16) + { + short tx=0,ty=0; + tx+=xx+16; + ty+=yy+16; + //mxPutPixel(tx, ty, coor); + modexClearRegion(page_t *page, tx, ty, 1, 1, coor); + //printf("%d %d %d %d %d %dÂ¥n", xx, yy, tx, ty, TILEWH); + + // plot the pixel + }else{ + #ifdef TILE + //mxFillBox(xx, yy, TILEWH, TILEWH, coor, OP_SET); + modexClearRegion(page_t *page, xx, yy, TILEWH, TILEWH, coor); + #else + //mxPutPixel(xx, yy, coor); + modexClearRegion(page_t *page, xx, yy, 1, 1, coor); + #endif + } + + if(q==2) + #ifdef TILE + //mxFillBox((rand()*TILEWH)%VW, (rand()*TILEWH)%(VH), TILEWH, TILEWH, 0, OP_SET); + modexClearRegion(page_t *page, (rand()*TILEWH)%VW, (rand()*TILEWH)%(VH), TILEWH, TILEWH, 0); + #else + //mxPutPixel(rand()%VW, rand()%(VH), 0); + modexClearRegion(page_t *page, rand()%VW, rand()%(VH), 1, 1, 0); + #endif + if(q==16) //mxPutPixel(rand()%VW, rand()%(VH), 0); + modexClearRegion(page_t *page, rand()%VW, rand()%(VH), 1, 1, 0); + if(q==2||q==4||q==16){ bakax = rand()%3; bakay = rand()%3; } //random 3 switch + gq++; +//if(xx<0||xx>320||yy<0||yy>(SCREEN_HEIGHT*3)) +// printf("%d %d %d %d %dÂ¥n", xx, yy, coor, bakax, bakay); + }else gq = LGQ; + return gq; +} + +void main() { + int i, j; + bitmap_t bmp; + word start, end; + //page_t page, page2; + float elapsed; + byte *pal, *pal2=NULL; + + /* load pcx file */ + bmp = modexLoadPcx("ed.pcx"); + + /* load our palette */ + modexLoadPalFile("gfx.pal", &pal2); + + /* save the palette */ + pal = modexNewPal(); + modexPalSave(pal); + modexFadeOff(1, pal); + modexPalBlack(); + + setvideo(1); + modexPalBlack(); + + /* set up the page, but with 16 pixels on all borders in offscreen mem */ + page=modexDefaultPage(); + page2 = modexNextPage(&page); + page.width += 32; + page.height += 32; + + + /* fill the page with one color, but with a black border */ + modexShowPage(&page2); + modexClearRegion(&page, 16, 16, SCREEN_WIDTH, SCREEN_HEIGHT, 128); + modexClearRegion(&page, 32, 32, SCREEN_WIDTH-32, SCREEN_HEIGHT-32, 42); + modexClearRegion(&page, 48, 48, SCREEN_WIDTH-64, SCREEN_HEIGHT-64, 128); + modexShowPage(&page); + + modexDrawSprite(&page, 20, 20, &bmp); + //modexDrawBmp(&page, xb, yb, &bmp); + + /* fade in */ + modexFadeOn(1, pal2); + + + start = *clock; + //for(i=0; i<5; i++) { + while (!kbhit()){ /* Wait for a keystroke */ + /* go right */ + for(j=0; j<32; j++) { + page.dx++; + modexShowPage(&page); + } + /* go left */ + for(j=0; j<32; j++) { + page.dx--; + modexShowPage(&page); + } + /* go up */ + for(j=0; j<32; j++) { + page.dy++; + modexShowPage(&page); + } + + /* go down */ + for(j=0; j<32; j++) { + page.dy--; + modexShowPage(&page); + } + } + + (void) getch(); /* Clear the keyboard buffer */ + end = *clock; + + /* fade back to text mode */ + modexFadeOff(1, pal2); + modexPalBlack(); + setvideo(0); + modexPalBlack(); + modexFadeOn(1, pal); +} diff --git a/16/dos_gfx.h b/16/dos_gfx.h index 6c59aa78..cb47dc91 100644 --- a/16/dos_gfx.h +++ b/16/dos_gfx.h @@ -4,7 +4,7 @@ #include #include "lib\lib_com.h" #include "lib\x\modex.h" -//#include "lib\modex16.h" //____ +#include "lib\modex16.h" //____ #define NUM_COLORS 256 // number of colors in vga mode //static lgq=NUM_COLORS/(1/8) diff --git a/16/ed.pcx b/16/ed.pcx new file mode 100644 index 0000000000000000000000000000000000000000..41e56317fb0a8f2d6192ed73c49ba29ecf00a739 GIT binary patch literal 2086 zcmeHH&2HN;3??PZqK7?7Z+(F6Y5Y!o9m#*OtNc%kKhwWEJ@0TN+EdnZwx=DL8#X(-r8~Z*E#)oS zB(~*zOB-s~-iU2@L)TQZ-HEOFnnuWeFTUoH66Ax_oM@nmAEe@edPt9udRjqxg0!NJ zI<^O~9e31H9=R4DcrSr{Es?VpXyi^T-wE3eP)iLE-wXR&@!X4#+)P*!{sJVysG%B0 zBeWaXjX-LuD2u$7U^n=#0htO|}u&-@*$z5QJR|eiuFX z;INN^*fqF-w~7>CxpMwN{K`cRlioXjFTOwPgYyUR!&y)6Ajx5CH4i*O9o?cOcMnoE z$^#GXK?Z2~r1{Q0N#~Hhj3`3_e`+cr=N11zvU9{kfxc^j=Gb|GM1Io*7Kk=uCKMI> zui`5X#px|@lmZp=kBU-+m)atyg+cXEy@vDZB^ru`jo%?_4WcZh=Bp2HdC{oPx;~u723Yl{#`Qgf}3thhx*i~?3}q8rR=85R=uVw zP^;-i#@AE?)lb(pyr#4_hUsq4by#+4aL-3f1+C4DLDDgx;{oMeQ0%3HLI+5828&Dw z$(FKCeQ}7Ev+Zf{EMsU-TJk+%LVZjrVPsuiUX~@5WqB;itE;P&%Ht6a4Bpp!2L9&^ F`~prXe69ch literal 0 HcmV?d00001 diff --git a/16/gfx.pal b/16/gfx.pal new file mode 100644 index 0000000000000000000000000000000000000000..e98ae60e3d21a9409f12ef6b1f2ad3625750e734 GIT binary patch literal 768 zcmZva!3shl5JhKEB>9@=fri8dTLeWQk6P5D&HVpg<+M_8JdASB=t`nmkGkmbuvWKd z$7rQ>MOAD6tsd+2cDr@XdGDEdp63ukN(sQ_a=Biw_xrt+@_N12b^Xt)kY>__>gCF! zl$E4D)QTn@i=6eAb;Vn2qWPx1XwtDLMW03AMZZPW_-c7;d1^13bS#LlBQPNn zU_=mucIZWujs-JjMr0%gj0BG08NF!Iu?PXDfD~{JfN@4h2q*NSNymanHYAQ@A`xQ} zazY#FMU#$&bFz0bIbkPau((OwUV71_W8u9_UJhQ4Uc@+xKZu{C7fm`A_RUB218>tx AO#lD@ literal 0 HcmV?d00001 diff --git a/16/lib/MODEX16.C b/16/lib/MODEX16.C index 3bdc3fb7..d8b646e6 100644 --- a/16/lib/MODEX16.C +++ b/16/lib/MODEX16.C @@ -92,37 +92,102 @@ modexEnter() { ptr[i] = 0x0000; } } + +int old_mode; + +///////////////////////////////////////////////////////////////////////////// +// // +// setvideo() - This function Manages the video modes // +// // +///////////////////////////////////////////////////////////////////////////// +void setvideo(/*byte mode, */short vq){ + union REGS in, out; + + if(!vq){ // deinit the video + // change to the video mode we were in before we switched to mode 13h + in.h.ah = 0x00; + in.h.al = old_mode; + int86(0x10, &in, &out); + + }else if(vq==1){ // init the video + // get old video mode + in.h.ah = 0xf; + int86(0x10, &in, &out); + old_mode = out.h.al; + // enter mode + modexEnter(); + } +} + +page_t +modexDefaultPage() { + page_t page; + + /* default page values */ + page.data = VGA; + page.dx = 0; + page.dy = 0; + page.width = SCREEN_WIDTH; + page.height = SCREEN_HEIGHT; + + return page; +} +/* returns the next page in contiguous memory + * the next page will be the same size as p, by default + */ +page_t +modexNextPage(page_t *p) { + page_t result; -void -modexLeave() { - /* TODO restore original mode and palette */ - vgaSetMode(TEXT_MODE); + result.data = p->data + (p->width/4)*p->height; /* compute the offset */ + result.dx = 0; + result.dy = 0; + result.width = p->width; + result.height = p->height; + + return result; } void -modexShowPage(page_t page) { +modexShowPage(page_t *page) { word high_address; word low_address; + word offset; + byte crtcOffset; + + /* calculate offset */ + offset = (word) page->data; + offset += page->dy * (page->width >> 2 ); + offset += page->dx >> 2; - high_address = HIGH_ADDRESS | ((word)(page) & 0xff00); - low_address = LOW_ADDRESS | ((word)(page) << 8); + /* calculate crtcOffset according to virtual width */ + crtcOffset = page->width >> 3; - /* wait for appropriate timing */ + high_address = HIGH_ADDRESS | (offset & 0xff00); + low_address = LOW_ADDRESS | (offset << 8); + + /* wait for appropriate timing and then program CRTC */ while ((inp(INPUT_STATUS_1) & DISPLAY_ENABLE)); outpw(CRTC_INDEX, high_address); outpw(CRTC_INDEX, low_address); + outp(CRTC_INDEX, 0x13); + outp(CRTC_DATA, crtcOffset); /* wait for one retrace */ while (!(inp(INPUT_STATUS_1) & VRETRACE)); + + /* do PEL panning here */ + outp(AC_INDEX, 0x33); + outp(AC_INDEX, (page->dx & 0x03) << 1); } void modexPanPage(page_t *page, int dx, int dy) { - /* TODO figure out how the $@#! you do horizontal panning */ - *page += dy * SCREEN_WIDTH; + page->dx = dx; + page->dy = dy; } @@ -134,45 +199,219 @@ modexSelectPlane(byte plane) { void -modexClearRegion(page_t page, int x, int y, int w, int h, byte color) { - byte plane; - word endx = x + w; - word endy = y + h; - word dx, dy; - - /* TODO Make this fast. It's SLOOOOOOW */ - for(plane=0; plane < 4; plane++) { - modexSelectPlane(PLANE(plane+x)); - for(dx = x; dx < endx; dx+=4) { - for(dy=y; dydata; + word xoff=x/4; /* xoffset that begins each row */ + word scanCount=w/4; /* number of iterations per row (excluding right clip)*/ + word poffset = pageOff + y*(page->width/4) + xoff; /* starting offset */ + word nextRow = page->width/4-scanCount-1; /* loc of next row */ + byte lclip[] = {0x0f, 0x0e, 0x0c, 0x08}; /* clips for rectangles not on 4s */ + byte rclip[] = {0x00, 0x01, 0x03, 0x07}; + byte left = lclip[x&0x03]; + byte right = rclip[(x+w)&0x03]; + + /* handle the case which requires an extra group */ + if((x & 0x03) && !((x+w) & 0x03)) { + right=0x0f; + } + + __asm { + MOV AX, SCREEN_SEG ; go to the VGA memory + MOV ES, AX + MOV DI, poffset ; go to the first pixel + MOV DX, SC_INDEX ; point to the map mask + MOV AL, MAP_MASK + OUT DX, AL + INC DX + MOV AL, color ; get ready to write colors + SCAN_START: + MOV CX, scanCount ; count the line + MOV BL, AL ; remember color + MOV AL, left ; do the left clip + OUT DX, AL ; set the left clip + MOV AL, BL ; restore color + STOSB ; write the color + DEC CX + JZ SCAN_DONE ; handle 1 group stuff + + ;-- write the main body of the scanline + MOV BL, AL ; remember color + MOV AL, 0x0f ; write to all pixels + OUT DX, AL + MOV AL, BL ; restore color + REP STOSB ; write the color + SCAN_DONE: + MOV BL, AL ; remeber color + MOV AL, right + OUT DX, AL ; do the right clip + MOV AL, BL ; restore color + STOSB ; write pixel + ADD DI, nextRow ; go to the next row + DEC h + JNZ SCAN_START } } void -modexDrawBmp(page_t page, int x, int y, bitmap_t *bmp, byte sprite) { - byte plane; - word px, py; - word offset; +modexDrawBmp(page_t *page, int x, int y, bitmap_t *bmp) { + /* draw the region (the entire freakin bitmap) */ + modexDrawBmpRegion(page, x, y, 0, 0, bmp->width, bmp->height, bmp); +} - /* TODO Make this fast. It's SLOOOOOOW */ - for(plane=0; plane < 4; plane++) { - modexSelectPlane(PLANE(plane+x)); - for(px = plane; px < bmp->width; px+=4) { - offset=px; - for(py=0; pyheight; py++) { - if(!sprite || bmp->data[offset]) - page[PAGE_OFFSET(x+px, y+py)] = bmp->data[offset]; - offset+=bmp->width; - } - } + +void +modexDrawBmpRegion(page_t *page, int x, int y, + int rx, int ry, int rw, int rh, bitmap_t *bmp) { + word poffset = (word) page->data + y*(page->width/4) + x/4; + byte *data = bmp->data; + word bmpOffset = (word) data + ry * bmp->width + rx; + word width = rw; + word height = rh; + byte plane = 1 << ((byte) x & 0x03); + word scanCount = width/4 + (width%4 ? 1 :0); + word nextPageRow = page->width/4 - scanCount; + word nextBmpRow = (word) bmp->width - width; + word rowCounter; + byte planeCounter = 4; + + __asm { + MOV AX, SCREEN_SEG ; go to the VGA memory + MOV ES, AX + + MOV DX, SC_INDEX ; point at the map mask register + MOV AL, MAP_MASK ; + OUT DX, AL ; + + PLANE_LOOP: + MOV DX, SC_DATA ; select the current plane + MOV AL, plane ; + OUT DX, AL ; + + ;-- begin plane painting + MOV AX, height ; start the row counter + MOV rowCounter, AX ; + MOV DI, poffset ; go to the first pixel + MOV SI, bmpOffset ; go to the bmp pixel + ROW_LOOP: + MOV CX, width ; count the columns + SCAN_LOOP: + MOVSB ; copy the pixel + SUB CX, 3 ; we skip the next 3 + ADD SI, 3 ; skip the bmp pixels + LOOP SCAN_LOOP ; finish the scan + + MOV AX, nextPageRow + ADD DI, AX ; go to the next row on screen + MOV AX, nextBmpRow + ADD SI, AX ; go to the next row on bmp + + DEC rowCounter + JNZ ROW_LOOP ; do all the rows + ;-- end plane painting + + MOV AL, plane ; advance to the next plane + SHL AL, 1 ; + AND AL, 0x0f ; mask the plane properly + MOV plane, AL ; store the plane + + INC bmpOffset ; start bmp at the right spot + + DEC planeCounter + JNZ PLANE_LOOP ; do all 4 planes } } +void +modexDrawSprite(page_t *page, int x, int y, bitmap_t *bmp) { + /* draw the whole sprite */ + modexDrawSpriteRegion(page, x, y, 0, 0, bmp->width, bmp->height, bmp); +} + +void +modexDrawSpriteRegion(page_t *page, int x, int y, + int rx, int ry, int rw, int rh, bitmap_t *bmp) { + word poffset = (word)page->data + y*(page->width/4) + x/4; + byte *data = bmp->data; + word bmpOffset = (word) data + ry * bmp->width + rx; + word width = rw; + word height = rh; + byte plane = 1 << ((byte) x & 0x03); + word scanCount = width/4 + (width%4 ? 1 :0); + word nextPageRow = page->width/4 - scanCount; + word nextBmpRow = (word) bmp->width - width; + word rowCounter; + byte planeCounter = 4; + + __asm { + MOV AX, SCREEN_SEG ; go to the VGA memory + MOV ES, AX + + MOV DX, SC_INDEX ; point at the map mask register + MOV AL, MAP_MASK ; + OUT DX, AL ; + + PLANE_LOOP: + MOV DX, SC_DATA ; select the current plane + MOV AL, plane ; + OUT DX, AL ; + + ;-- begin plane painting + MOV AX, height ; start the row counter + MOV rowCounter, AX ; + MOV DI, poffset ; go to the first pixel + MOV SI, bmpOffset ; go to the bmp pixel + ROW_LOOP: + MOV CX, width ; count the columns + SCAN_LOOP: + LODSB + DEC SI + CMP AL, 0 + JNE DRAW_PIXEL ; draw non-zero pixels + + INC DI ; skip the transparent pixel + ADD SI, 1 + JMP NEXT_PIXEL + DRAW_PIXEL: + MOVSB ; copy the pixel + NEXT_PIXEL: + SUB CX, 3 ; we skip the next 3 + ADD SI, 3 ; skip the bmp pixels + LOOP SCAN_LOOP ; finish the scan + + MOV AX, nextPageRow + ADD DI, AX ; go to the next row on screen + MOV AX, nextBmpRow + ADD SI, AX ; go to the next row on bmp + + DEC rowCounter + JNZ ROW_LOOP ; do all the rows + ;-- end plane painting + + MOV AL, plane ; advance to the next plane + SHL AL, 1 ; + AND AL, 0x0f ; mask the plane properly + MOV plane, AL ; store the plane + + INC bmpOffset ; start bmp at the right spot + + DEC planeCounter + JNZ PLANE_LOOP ; do all 4 planes + } +} + + +void +modexCopyPageRegion(page_t *dest, page_t src, + word sx, word sy, + word dx, word dy, + word width, word height) +{ + /* todo */ +} + + /* fade and flash */ void modexFadeOn(word fade, byte *palette) { diff --git a/16/lib/MODEX16.H b/16/lib/MODEX16.H index 880f2c8b..2adc5c43 100644 --- a/16/lib/MODEX16.H +++ b/16/lib/MODEX16.H @@ -4,12 +4,11 @@ #ifndef MODEX16_H #define MODEX16_H #include -#include "lib\types.h" - +#include "lib\types.h" + /* -========================== Types & Macros ==========================- */ #define PAGE_OFFSET(x,y) (((y)<<6)+((y)<<4)+((x)>>2)) #define PLANE(x) (1<< (x&3)) -typedef byte far* page_t; #define SELECT_ALL_PLANES() outpw(0x03c4, 0xff02) typedef struct { byte *data; @@ -18,15 +17,28 @@ typedef struct { byte *palette; } bitmap_t; +typedef struct { + byte far* data; /* the data for the page */ + word dx; /* col we are viewing on the virtual screen */ + word dy; /* row we are viewing on the virtual screen */ + word width; /* virtual width of the page */ + word height; /* virtual height of the page */ +} page_t; + /* -============================ Functions =============================- */ /* mode switching, page, and plane functions */ -void modexEnter(); -void modexLeave(); -void modexShowPage(page_t page); +void modexEnter(); +void setvideo(/*byte mode, */short vq); +page_t modexDefaultPage(); +page_t modexNextPage(page_t *p); +void modexShowPage(page_t *page); void modexPanPage(page_t *page, int dx, int dy); void modexSelectPlane(byte plane); -void modexClearRegion(page_t page, int x, int y, int w, int h, byte color); -void modexDrawBmp(page_t page, int x, int y, bitmap_t *bmp, byte sprite); +void modexClearRegion(page_t *page, int x, int y, int w, int h, byte color); +void modexDrawBmp(page_t *page, int x, int y, bitmap_t *bmp); +void modexDrawBmpRegion(page_t *page, int x, int y, int rx, int ry, int rw, int rh, bitmap_t *bmp); +void modexDrawSprite(page_t *page, int x, int y, bitmap_t *bmp); +void modexDrawSpriteRegion(page_t *page, int x, int y, int rx, int ry, int rw, int rh, bitmap_t *bmp); /* Palette fade and flash effects */ void modexFadeOn(word fade, byte *palette); @@ -49,10 +61,11 @@ void modexPalUpdate(byte *p); void modexWaitBorder(); /* bitmap functions */ -bitmap_t modexLoadPcx(char *filename); +bitmap_t modexLoadPcx(char *filename); /* -======================= Constants & Vars ==========================- */ extern byte far* VGA; /* The VGA Memory */ +#define SCREEN_SEG 0xa000 #define VIDEO_INT 0x10 #define SET_MODE 0x00 #define VGA_256_COLOR_MODE 0x13 @@ -61,6 +74,7 @@ extern byte far* VGA; /* The VGA Memory */ #define SCREEN_HEIGHT 240 #define PAGE_SIZE (word)(SCREEN_WIDTH/4 * SCREEN_HEIGHT) +#define AC_INDEX 0x03c0 #define SC_INDEX 0x03c4 #define SC_DATA 0x03c5 #define CRTC_INDEX 0x03d4 @@ -75,5 +89,14 @@ extern byte far* VGA; /* The VGA Memory */ #define PAL_READ_REG 0x03C7 /* Color register, read address */ #define PAL_WRITE_REG 0x03C8 /* Color register, write address */ #define PAL_DATA_REG 0x03C9 /* Color register, data port */ -#define PAL_SIZE (256 * 3) +#define PAL_SIZE (256 * 3) + +#define NUM_COLORS 256 // number of colors in vga mode +#define BONK 400 +#define LGQ 32 +#define HGQ 55 +#define TILEWH 16 +#define QUADWH TILEWH/2 +#define VW (SCREEN_WIDTH+32) +#define VH (SCREEN_HEIGHT+32) #endif diff --git a/16/lib/TYPES.H b/16/lib/TYPES.H index f6443b1b..039653f2 100644 --- a/16/lib/TYPES.H +++ b/16/lib/TYPES.H @@ -8,4 +8,4 @@ typedef unsigned short word; typedef unsigned long dword; typedef signed char sbyte; typedef signed short sword; -typedef signed long sdword; +typedef signed long sdword; diff --git a/16/lib/types.h b/16/lib/types.h new file mode 100644 index 00000000..039653f2 --- /dev/null +++ b/16/lib/types.h @@ -0,0 +1,11 @@ +/* + * Just some handy typedefs that make it easier to think about the low + * level code + */ + +typedef unsigned char byte; +typedef unsigned short word; +typedef unsigned long dword; +typedef signed char sbyte; +typedef signed short sword; +typedef signed long sdword; diff --git a/16/makefile b/16/makefile new file mode 100644 index 00000000..e6469f24 --- /dev/null +++ b/16/makefile @@ -0,0 +1,15 @@ +FLAGS=-0 -d3 +all: test.exe + +test.exe: test.obj modex16.obj + wcl $(FLAGS) test.obj modex16.obj + +test.obj: test.c lib\modex16.h + wcl $(FLAGS) -c test.c + +modex16.obj: lib\modex16.h lib\modex16.c + wcl $(FLAGS) -c lib\modex16.c + +clean: + del *.obj + del *.exe diff --git a/16/modex16/MODEX16.C b/16/modex16/MODEX16.C index bdc089e5..f6ead33e 100644 --- a/16/modex16/MODEX16.C +++ b/16/modex16/MODEX16.C @@ -92,14 +92,32 @@ modexEnter() { ptr[i] = 0x0000; } } - - -void -modexLeave() { - /* TODO restore original mode and palette */ - vgaSetMode(TEXT_MODE); -} - + +int old_mode; + +///////////////////////////////////////////////////////////////////////////// +// // +// setvideo() - This function Manages the video modes // +// // +///////////////////////////////////////////////////////////////////////////// +void setvideo(/*byte mode, */short vq){ + union REGS in, out; + + if(!vq){ // deinit the video + // change to the video mode we were in before we switched to mode 13h + in.h.ah = 0x00; + in.h.al = old_mode; + int86(0x10, &in, &out); + + }else if(vq==1){ // init the video + // get old video mode + in.h.ah = 0xf; + int86(0x10, &in, &out); + old_mode = out.h.al; + // enter mode + modexEnter(); + } +} page_t modexDefaultPage() { diff --git a/16/modex16/MODEX16.H b/16/modex16/MODEX16.H index 81960dd8..cde4cd2f 100644 --- a/16/modex16/MODEX16.H +++ b/16/modex16/MODEX16.H @@ -4,8 +4,8 @@ #ifndef MODEX16_H #define MODEX16_H #include -#include "types.h" - +#include "types.h" + /* -========================== Types & Macros ==========================- */ #define PAGE_OFFSET(x,y) (((y)<<6)+((y)<<4)+((x)>>2)) #define PLANE(x) (1<< (x&3)) @@ -27,8 +27,8 @@ typedef struct { /* -============================ Functions =============================- */ /* mode switching, page, and plane functions */ -void modexEnter(); -void modexLeave(); +void modexEnter(); +void setvideo(/*byte mode, */short vq); page_t modexDefaultPage(); page_t modexNextPage(page_t *p); void modexShowPage(page_t *page); @@ -61,7 +61,7 @@ void modexPalUpdate(byte *p); void modexWaitBorder(); /* bitmap functions */ -bitmap_t modexLoadPcx(char *filename); +bitmap_t modexLoadPcx(char *filename); /* -======================= Constants & Vars ==========================- */ extern byte far* VGA; /* The VGA Memory */ @@ -89,5 +89,12 @@ extern byte far* VGA; /* The VGA Memory */ #define PAL_READ_REG 0x03C7 /* Color register, read address */ #define PAL_WRITE_REG 0x03C8 /* Color register, write address */ #define PAL_DATA_REG 0x03C9 /* Color register, data port */ -#define PAL_SIZE (256 * 3) +#define PAL_SIZE (256 * 3) + +#define NUM_COLORS 256 // number of colors in vga mode +#define BONK 400 +#define LGQ 32 +#define HGQ 55 +#define TILEWH 16 +#define QUADWH TILEWH/2 #endif diff --git a/16/modex16/PALVIEW.EXE b/16/modex16/PALVIEW.EXE new file mode 100644 index 0000000000000000000000000000000000000000..4c721d3b87833381ed95237540c2246e8f6eade8 GIT binary patch literal 10358 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%0AbF`0?Uztu zyF*eFc`_s_f&Ee)c$s!v<$EWX?nX5GB{Aa$EEzB}m6iKS2r-_WWQQrrX0OACYPGwa zPy#}6Y^3A}FU4}Z=JmVXK^N-6?iK>M$AZ^&>^H&7X-)l%4Z-kt&v^IOAYzh5<`Ie{)KPl4-$T+-8k5{KH)dut2Zv??e(QRK z6y90z26XRi5>fZ&!t2w#!H@&phcQ`HqXAe&?Zo{an68)Zl$iU^aCJ&JBjNr6t_)MQ ziMgrA^O)Ko9=_jSMcv;KxJ;I};2xy=Q@TNPe_KH|p!-8~{4-G>{6Dz+GjuM7Ze>&s z^=+f_=r;GC@fgsi~%rsN!5M91{Kdq&xQzQm?64p)3 zG+XhsHKD4YcRI^a8@Mk|@wGKMP)YMO9Qm$Oe2rN9P@gEmwQ%1;#fJ`OW*##YPUz!I zft$%>YoQ)JZw#_^iB4aQ9t1SSD)*}TfXn5pqP|$R+SFL$pv$z-PM$v5dOh#v(MX+$ zH+wl{)TLv{Y=E=h61Ypo5X#(d97BlVf6W+@eLXr2$?o(7*SnEUbav>|L;jG%Yp?f) zgCUe5m8ck{94!uy5k5RFEPNb=(3a$kaiPjY_7jmpW~|3m=tM z0eQ0X(c;kGx;;K8B+Ac|>e0u0n$Tc#_|V4z7})@rr2riD3Pr9C5EOX|!0YyjN0%b~`B(uh^|NX+mhC3V^V?Wv>O{jW>iLU3c*4U{6MKS-s7A~WYn zjs7s742j%DYYtO!%~Wz5b;0jLUe8kejVfR^2e9m4D-0=v!7zbl8W@;z6#6E=k0vZC zyA3W(Bel8!O250+j5uT-GG-UZU^8t)eZPk?q=EdCF&8bW>@7&4ZOLF7UJf)A>7o( zsx8Y2x7w(j7_9TP+E1-X(AS}5iD_ycW+cqCP=%x8E>zq!8C{~dp-Y6|A}qC1wTXEU zR&8DNi1&JhhNjQ(mhw)9WxFw&su@?Kr$h8WA|1jl(jnX;9SU3|L?uG1)Ooi{Bt^yW zv?!iBo*0z@PmSUc$x%EaJ&H#pNO(kognK}OhGHvAsw`PbHKB%Tf{VDQ9kGjIR(oF; zMW*()F3MDORl!BiSNdUB(3mJnZh?ZKd{E1W@<%Nn$~U!qD6`e_QAD*VdH=9M)YWV_ zdKNCJQV+PG!Y$+!ZXu>ZgFGFq4hb0*`frj^)Pp68Ea{kXs@b-LhBB)7YM?QzD~oxAShD`3Wkr=pEh{P?wY}Gi^{l8;Y{n{zN9o9@ zIU>h$CQz4&QIwq2(d9|Jo{*ExxSIkf^_}Vv4?s0b2|(>Z2|!LZ<5x<6Dq47RMwFQf zwQzDCR6v-=(|mJ^70OfNnwWTCTtR4c*6HMHVlk7{*2KcAuZhWzd5f|pejZFRB+lPK z{0(d35%5DIv9_KyA)b#KrD07>^kA&5iLZeFA6^ryYfszrB#rbKet*Y*A>~gwL%+|} z=Anf#QA{~YWEpwVZDBuFNI4T;h72?tYNCQB4@B^Kot_p1I7k7q(nKoN0JNf30_090 z4+RkP5=f_16FnvbD!mwOc?3c^0(wC{6O<{^r3>|POm{P+72rHdYU4EeLcN{)p?Gn6 z+-`_S+`n<*{v%GTX$feqiTS6{5|C$9#6ktBtm+vHH8rDnu&j?*-a}ArwZCfVVgU1H zsz4eLi+g*M--%^{97!TEwn`o8NII3ka9RtuG&rhUp%p{|FcyNQ-Kj(5622ndFY%yQ z_)6%Pt^}oA))Jll&Bq5<}>RK6=y5-YVAITg zMO;k3cHcsY=F$7Z6f4gJ_dTG?Gnbl~`v-7UBLt7Nk7A`}&ebiHrESG7w z%(ukpkwPLu_eg|}B+RmK=8aJ7*&R+NBB8Qv(+b?{Z#BSqCE)=y_0L9)v_253FITlf zusIYNvr!dNuagxHU!08A`4)e?jBP^3{k#+2eY@nNb^{-&pf(Dvm;0ZMo^Sy#@{)mLGC%nU^W~s@IkxFIEzjt_GU= ztK7ir-xK4qwow%uL&xqmRcfv`Q&n{s=62sIRCW7lG!rU1k-U1pmlhsEL&sbDI7sr0 z@>$0m@#ka8>+N;;B%;T7+MyIMV^Ja=G&$tJ#{KB+6SW zw8pb)(O}sNwf*i}X-dF}zyWnaXkxt@nKHL9R1|fZVyG&b##bx7!7C3{6l$-cvcy-Q zB~8tSI>aRk_*;1e#IR%RNO){If>#hKo+k${9%1aEx3!T;YvRl1Z`O=~b>e4;=$fQz z%o4XsWtR_HCq$$JtHqk6ZMbLGpo#x)uNEsH?)s!VlK(%d79&R~C8YQ0MgHauydK7P z!>QYnpH#}n>B1HbpES^rian1&J-pPsOf+T!K&^EQ{OQzG;HUOF7XA$3r#b)btKc7| z_z9m0|8U_~+tmbsMhcMDu(ALfMKJdW$o|9R$1t_qD&3~0L!TGepcXIJhY?8sXGMND zFo^JWX}#dBtpPCT`KZaeo5Aj-m%cewE z2zxLTjF?+n?oG)_jmr~EGNYn;sM|r3PXJ(}M!i^z#Jg77isQCr00pEbULZFjzQt)6To{hm?Sb`sWoBj|i-cL+gts)Fc+10j}p9oSP= zn|SIYX|Hi9+&e)1i?o*!bgQ&)(2%PeQK9vauce(8A@_p%c-ko*awZH{F0FJcoB580 z7U|ivrgTwKG*MJ5Tn@q}raRNMM2ZSG5#aIZv(uS-23*&tuf@UqUlla+YHxz>GuhKZ(aq-X*M{ZmO;O$%ANdZI&6^m zSWZ<$uVGYVB(+w*vFIaK?gL=@AL-xCFqTwEt5({Y>=q*CG>zExWb*D4?PNy4Au!qC z+k}{=lNyA>u!H5IvF3J~2XaWgvU=tdBMxaHt)J3=G(wCw(mz0w190`Erw(E6jc^qW zxe2Zx!BsnC&k*;w;bjK1sf--KF>`KT!vf(gT8K)|R0_psZms&8O2jshC|<*Q06ZKdU_ z?M&uIUYyY5gF1-e-4Dz!@3E}86~8kb22u;ATjKa zeIYlKM}m&aBmgjkI$@xy7sdoK?dmC#+v{8nAQ?S8~0L?mj zX-Rc)6_eWlQPN6+*liUh_CUzT%tj@s3o}ZIH zmzlq%NuU7mMwTLy9l7fz8a&{og0KgfKNr=j9x*aA9{P$yPyk^*sMdLucw0_>o<|r@AZ*<^r5A`ZI%kJ~Cur@>LpV4uD`9gj+hGZexik>bBjk zrq_nBB5%0yj#^9HbgF>KA80)71mH$|L2&*()@@2-bNV@k$y;gG&NIjzR6u+pPaw_? z;r;*`9uDSXL6@C|DnO^vyqS{)Tp}b}VMw35!4*P{*r-z3DV*1i(Z>z@3nq`C*(8sc z5C8)hCFsA|3W3Q+ns(P5tDN?H)NDhVY`*w@)=g(FP(%${a1MZ2nMSeDSkbu;quGO!8xALERvKx7w97C5lvhzeK=4TSkKH4>7c4=?Dk@CW#%6a09Kb*F!Q52u%4Sk zn*Z4VY4mu}U;jvl`25s0{!$0^G|d?Dwv&y1q^hUfSUhR#~=$a zYP*csr*y2S1Qe2LGBf{LN0l}gH91Q?usk&5Z6?Zh8X`-ZD;k>0$V|rkfDZLzG`JOW z1M~OeU>+aAeh>%4=)uen>Y!y+jUH$!*+N56(wu`2CGu3g%)~?l0}M??n4F_y+VbbZ zij936Ox5B8iC_>Juhj?iO*GB;Z9D|+auOiCF52>oJuPco0Y8(c>#*fMO!qv_a`gLo zIG5&0*aYjuLBSSfRl3+3X~m2 zDKe+^H^c5n9+qbex&kE-4*++!3c*~_?uRKTa;L=ztJ`32_P5Sr@&OfUN0llDv&wvp zduj1<6jK~vB>=yQqsV7+Ax(co7qUFJ6r$gw14^30wqk-6U8fNNR$6RB-o7yq2D%^2 zH`3XvDC}_^wmhEztpys9JK%%iAV$^asp1ML+?b*|Fy?Gpq=5v$U#J1x&9sdwZ(XcI z+8hAvTA~9scxSaW!|HMG02s!@B8|%HM{oCKvE~nYV5^C__HS%P5R+fh{T#nv_j6${ zU#ii&XSFpUTH7)W61)vIxbjr$WE76=Y}4?laI)_FzJWLi}gY@f@c)F;;3mY;hr;=LUe?9QvNl z)V3TfDmjZk=};Y5P^!gmvmrV`T4;c(KsM1J7)mLKX{r1poe*Yp0AV4+t}zf|w8rs7 zCesNbrHBD4u`P8sg+ThafwaDHz38ET30kFgQHRKv3`pw>I+%tq6}(sDOf89K2TcA{ zgW;SAa*Ox^oP;TuA_NXi(vC7t12njC+CZI&V%etCC;~xDnt!OZ7Hu3$-X@idyaP%X z*&wDpn^htO0=jDroP0P>>T_X*Cf~0TV#TQdK}(&I8Y`ga@O82kuBOG}5G^ghZ!Oaj z1_aH2vD`LFhpzsT@9!bVzKj9 zm=iB*q0e?CkjykUJ zk88UjZ2Y!j-6j84C08IwH}&CaiP5YdBMXQ`?x_oiXqA!+%7Wqv)vpl5MTROE3ZZX3 zpc2{b0))tDY*Qnn)sP$0kuy4-03li9sr2+#bjc{5t zFeh&W3aS~M)U5y!RRZSqyn*R3Msp!Gd;=5&nDHd5WV8xuL=A`&$K&UbLvWQ0N+JOR zB~71HcDIRUwnL}m5KtNWDlaV!P?+dMbwUmtzz%lrK}h$$PNl4f;v(fqV{+OmEmt`N zyskEiMynwv_vlo&sp}*3@mdO$YF)ZoV@C6KQSG3iN0wH^qqIuNvF2^skR~{pcW3|_ zNd=H)8e(+Q2*u=Tl`Z!}cq0wZ944PvY1GUzc7q`oRfCB&is0l07n+}_rQ;%NCTATc z1}YJz!vqu0NTS{2aY?E!e1u(HY_Fj18#Ac5jHIr+zLlA6I;{d?lMRtkH_sO=GM!IV zI{D=Q(%Kcv`?wXS$4@IkCcgqw-Z+(|GU^?2e8f!(1F;|$Kswi|aCMU^&Z8*sV5KDK zNftAL2|6tSz;fBmN<=7Ku8#~hyXr~l@W5IH;lebE+vEaxN(Itrjzf#keFK`bP9Y_z zKhy|4frj&GxTa8Uql*+@`&5w4)8@kD3*(gCMiY4Ixu2+2dC}o4JFZX=@PAX`Rjv@N zdMaqKF2AcnMGeNjs*9q=DIg$!fV|~-NK8~{+&qb@THAdK}1L=4E>EYrr^7W3T~3I!&p}3o&m~YE>2O5!!2(GqXf+il*|95HX>;iSI2m!c6G(pna z$ek(+@3str<= z@ji)}>5c%UqKav%SiiIz!G2+m8aIl1f;iR0b4XxS|O+IfCnHSIQhQ@YA62 z^DCT^5oxPedD`tjHQV^iz^%_b~IF!9fyilog=W}p1)wf$T zIA2!H!#sxClG?;DY{8b3$tyLs0^*=vZOs5+4qy%qX2(QP89WgNxqb(dj_M8>+OSm> zKghX*8+;fDf1!rveq^F?f&nXIe-lQqr&S^W0M&GZ#Ga5J8$^dxnlQW&You4n7D6M$ zG-HTd%;smQ1a|xK+!b;DmGCpt)To)__3}8bSA$>(60rw&{>D0FJ`)~O|8SrgT+gVFaZr11Sd+EW1^G# zO66zAPEj3NBp+K6Xf`C)BTaQQUYBFNj!rv_NvipK2IeckdU>##cL!!Vg&@jREY0Vj z4n1Xv)$6QpK^00?nHM>{^;K9oyKFcS=BH`ZMiqr=67)?RIWvc<*p+@IN8`a20CPc$ z{Wi5TmJ4pvfF&Am3M!h?R7#5>2PH(Sho!|8{#KC+cCSHVluXEvT*}&@aJ1Xk)GP_R zXO$L1rdw}Upuuq6t=K_DMZXQ;NB>CyH#-8@dT_exJy6gA@xsP9gqRT=+@#4>MX|xu z9r~lq3Q!1us&NoO)oO>OF?H@gk7yyOh>SXDu;|vYq(K;f&D^4e#g@-9e%TVLF&>ZgkY4>oornQ&P22E>@ufn+EMCde&nLOt%jnhi_;}(9n1448cCX*(c+J&$=h62I< zn%BwIanI@O)`-@}rC+V5fn6cpO|KA8P=k)#~iC;t^_qI1OB5xPcZI%sf>mUIy4Ihd1nsUl*adW6H&3 zajj1>W4vtrv{|Tj$=4Z*nYM6=-dqQuu{)lbo6q7h*w@5QRm=AwD@BXr02I0o5j1FS zv?x=X8_bzWu>?h<7E%ErtPT@Y0G-vy?4;CM;qbv0nl_k;3wRsb3)&pk$D}^HJ*tYO zEShPEU>MJJIs85kMp1d2PU#6^0_|JAgfvb31|%BAF3m7p`KYyvGEUFTbPggezh+|m z8gGcMj+8gplGbA50LYZXiSWbvQK!>TqUbfSzei;-*j9+11nbOWTQR+rcje1ImZkz zPA2nZ4p)qQ$qZQc!_bxX`~^TUt0jwD0{|ps%E}?I`J)vSBYRK|P%Jdbc9Z*!#*}1h z$$=C^HCZH!MwOK?A0*R46(Y<6$z)K4DCT}-3&=qRyF9Ym<1ij6Z0qRD#D7!?`Zb}@ zP?ILGN36{(SAK+_`y$LF!ty#}GU2)x)SP=kbByJKCX+=hk62BB(kE)&sKV=?P;6hBMPayk7%RkxH3bBRtrT)N{);daI$=O)BptH7#Y2;o zmq-!)6<;y_nAlewFCdBdL-t#+uoVeMS~AIt?=dbVxjX}IAQO3TY$8cn3A{)TiuIE8 z2+DQ%V>VTDN=k3$Ae2J(PEJWSRAL8&{)$iFFK|4WCBXzx!5H!5uA!L7CTVc|VvZ-1 zq=DCjfid#N!SQ5z#MrO#e+~X0wvx>HCn&$-l;YyT89?5G|A)0&BB%xBeJD7yiOh2t zdj5KL~yc$8*CJ<{AY5F2|>5Qh3sh>Yw0$Z8pX41o*HO zq=rx6e>|1&Q!@!cwO0Q`O8?C9&6xzx2ZLSsd)Rs_d9_b)x*g5XY@&TsVKh{MR&o|-NFXECa zQgTZ!$wwPysMGjA3_L`?LlE%^NgwBwv>!IG#FdoJAx^YMCHi3cD?Wj*;ds71g>gW| z(O-donB!^RNldEgulNN1RgS0qCdPOq3RVqo%A@#cM~SiB8jc(y{8WyoZ6x%~^rL+O z@8x*fDPnAdh9if-@8)>gBEk?yKiVho&vQI&4Gmr=|HSdMBP6!C=&$%h_~f}HKkWqx zZHa=!AA!%|c-jTR;}<$o!>{6a+W*0PD-JJ8dK1Uf#*gTulfSX`ea!5cE&Tbe2={{TJrYk#GroDJH~b6K$kmCpg7OAn*=MAT|AfWs&9;`pn#+!M~rRO&ERL~iJx$cJBWJZZ|Y4#58jgXDwY z)Wa!BAud*6^jCa>)8qvt3F*GYHK5Cpi6*Q<8RCl%`G~@b7SZ#UPT15|I~D zOr(j%fqML>fnJPI!+3ckpy3nJ-NVC>%9ydW_+QDn4>!=MHR~LwB&{!&V1wYtE~3~; z;ma7G7-%#?`XwAs%3d6o)^Owy_z=gFZg=nz%21$R#C-_T+ zBp+#Ou|^XJc8T6t|`MUx9F|q zZyJ-=7n3BU+!AwYos*E{ryNfzEXEG#NVr5y?{Yj|3BpIkK$-E9b+8$eTtYFCwhE`$ z=tuiROa&ZI*VMkmS5z8W$+Ht2Kb7OHIub5XPAN9x&-FmO-=Wb-%tJ8Mx@7$$;&k#b zq|h1I>k0hB98XFc#@?pnX`jIVmE%blgS$;M965wc6PJ=qq=6B32Bbt2GGQ?J2ARIg z!;l_DC|KyP_^3LVcsvr;xp=NezpHvYY()RYeaLuH4&8^DF-w9ZTkvmlVU07ZwB~fq z)N6C5$%$3rHd(%!|Fh@jho(kz3zyMPn{aKN?DcwS<4lrBSNo61p5yr4uF7$> zB%2$?W);W@GgcPJsW;2=I4;2qSyuk#z*Sf*%h@>v-l=jDpbZnpW-XXDwqV+5A~N4x zkeQh|eywb|TbBKgW@hHhTq~RJmJ=I_Z;|Cii*sdpenCzS*er!Br$RQ*XoJsuO=He7 zxFf~OmW3(`3JQR)k>xAotF7Z?bM}^dWb@Tq_D@}#l~wrN(gjz_)2yumEXRT8T7L$x zY-x}a<~E1mY;L3_v8a)ouGb;*z-%bbim7N>M9wqOa7h5JYsrlg=x%^1RFr!2=9pM4nu%u121 zDVVI~rQsyDY|T$5Ov*^^A?Fl9L?jqQ<_;m)5h)jVTk@jR+*H|W;z71b(>b^0mrWgF zOO~yRQZrNXQm#oYP03B2k~~xzCe2PMOhz9fB|s8W^0yZAVD1!zA}m@M=W681{@x@R z8cAikiy>26nAsDj!v=$Rlg(P@Zrdo>ctJ?F4gU*s|&bVR9};$Uhol@ fu;bhujtb#AUJ4s*r0qLL9jjhmrA2?Iow5G~318#- literal 61733 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 ASuwuo|&NM2cq^#0VH-2s8J)_Bm%}67lx;|J-{& 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 I;LpGS04~-ioB#j- diff --git a/16/modex16/TEST2.EXE b/16/modex16/TEST2.EXE new file mode 100644 index 0000000000000000000000000000000000000000..57c13a9eafb3046103ef46ba617d894712a32ec5 GIT binary patch literal 60131 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 literal 0 HcmV?d00001 diff --git a/16/modex16/modex16.c b/16/modex16/modex16.c deleted file mode 100644 index bdc089e5..00000000 --- a/16/modex16/modex16.c +++ /dev/null @@ -1,641 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include "modex16.h" - - -byte far* VGA=(byte far*) 0xA0000000; /* this points to video memory. */ - -static void fadePalette(sbyte fade, sbyte start, word iter, byte *palette); -static byte tmppal[PAL_SIZE]; -static struct pcxHeader { - byte id; - byte version; - byte encoding; - byte bpp; - word xmin; - word ymin; - word xmax; - word ymax; - word hres; - word vres; - byte pal16[48]; - byte res1; - word bpplane; - word palType; - word hScreenSize; - word vScreenSize; - byte padding[54]; -}; - - -static void -vgaSetMode(byte mode) -{ - union REGS regs; - - regs.h.ah = SET_MODE; - regs.h.al = mode; - int86(VIDEO_INT, ®s, ®s); -} - - -/* -========================= Entry Points ==========================- */ -void -modexEnter() { - word i; - dword far*ptr=(dword far*)VGA; /* used for faster screen clearing */ - word CRTParms[] = { - 0x0d06, /* vertical total */ - 0x3e07, /* overflow (bit 8 of vertical counts) */ - 0x4109, /* cell height (2 to double-scan */ - 0xea10, /* v sync start */ - 0xac11, /* v sync end and protect cr0-cr7 */ - 0xdf12, /* vertical displayed */ - 0x0014, /* turn off dword mode */ - 0xe715, /* v blank start */ - 0x0616, /* v blank end */ - 0xe317 /* turn on byte mode */ - }; - int CRTParmCount = sizeof(CRTParms) / sizeof(CRTParms[0]); - - /* TODO save current video mode and palette */ - vgaSetMode(VGA_256_COLOR_MODE); - - /* disable chain4 mode */ - outpw(SC_INDEX, 0x0604); - - /* synchronous reset while setting Misc Output */ - outpw(SC_INDEX, 0x0100); - - /* select 25 MHz dot clock & 60 Hz scanning rate */ - outp(MISC_OUTPUT, 0xe3); - - /* undo reset (restart sequencer) */ - outpw(SC_INDEX, 0x0300); - - /* reprogram the CRT controller */ - outp(CRTC_INDEX, 0x11); /* VSync End reg contains register write prot */ - outp(CRTC_DATA, 0x7f); /* get current write protect on varios regs */ - - /* send the CRTParms */ - for(i=0; idata + (p->width/4)*p->height; /* compute the offset */ - result.dx = 0; - result.dy = 0; - result.width = p->width; - result.height = p->height; - - return result; -} - - -void -modexShowPage(page_t *page) { - word high_address; - word low_address; - word offset; - byte crtcOffset; - - /* calculate offset */ - offset = (word) page->data; - offset += page->dy * (page->width >> 2 ); - offset += page->dx >> 2; - - /* calculate crtcOffset according to virtual width */ - crtcOffset = page->width >> 3; - - high_address = HIGH_ADDRESS | (offset & 0xff00); - low_address = LOW_ADDRESS | (offset << 8); - - /* wait for appropriate timing and then program CRTC */ - while ((inp(INPUT_STATUS_1) & DISPLAY_ENABLE)); - outpw(CRTC_INDEX, high_address); - outpw(CRTC_INDEX, low_address); - outp(CRTC_INDEX, 0x13); - outp(CRTC_DATA, crtcOffset); - - /* wait for one retrace */ - while (!(inp(INPUT_STATUS_1) & VRETRACE)); - - /* do PEL panning here */ - outp(AC_INDEX, 0x33); - outp(AC_INDEX, (page->dx & 0x03) << 1); -} - - -void -modexPanPage(page_t *page, int dx, int dy) { - page->dx = dx; - page->dy = dy; -} - - -void -modexSelectPlane(byte plane) { - outp(SC_INDEX, MAP_MASK); /* select plane */ - outp(SC_DATA, plane); -} - - -void -modexClearRegion(page_t *page, int x, int y, int w, int h, byte color) { - word pageOff = (word) page->data; - word xoff=x/4; /* xoffset that begins each row */ - word scanCount=w/4; /* number of iterations per row (excluding right clip)*/ - word poffset = pageOff + y*(page->width/4) + xoff; /* starting offset */ - word nextRow = page->width/4-scanCount-1; /* loc of next row */ - byte lclip[] = {0x0f, 0x0e, 0x0c, 0x08}; /* clips for rectangles not on 4s */ - byte rclip[] = {0x00, 0x01, 0x03, 0x07}; - byte left = lclip[x&0x03]; - byte right = rclip[(x+w)&0x03]; - - /* handle the case which requires an extra group */ - if((x & 0x03) && !((x+w) & 0x03)) { - right=0x0f; - } - - __asm { - MOV AX, SCREEN_SEG ; go to the VGA memory - MOV ES, AX - MOV DI, poffset ; go to the first pixel - MOV DX, SC_INDEX ; point to the map mask - MOV AL, MAP_MASK - OUT DX, AL - INC DX - MOV AL, color ; get ready to write colors - SCAN_START: - MOV CX, scanCount ; count the line - MOV BL, AL ; remember color - MOV AL, left ; do the left clip - OUT DX, AL ; set the left clip - MOV AL, BL ; restore color - STOSB ; write the color - DEC CX - JZ SCAN_DONE ; handle 1 group stuff - - ;-- write the main body of the scanline - MOV BL, AL ; remember color - MOV AL, 0x0f ; write to all pixels - OUT DX, AL - MOV AL, BL ; restore color - REP STOSB ; write the color - SCAN_DONE: - MOV BL, AL ; remeber color - MOV AL, right - OUT DX, AL ; do the right clip - MOV AL, BL ; restore color - STOSB ; write pixel - ADD DI, nextRow ; go to the next row - DEC h - JNZ SCAN_START - } -} - - -void -modexDrawBmp(page_t *page, int x, int y, bitmap_t *bmp) { - /* draw the region (the entire freakin bitmap) */ - modexDrawBmpRegion(page, x, y, 0, 0, bmp->width, bmp->height, bmp); -} - - -void -modexDrawBmpRegion(page_t *page, int x, int y, - int rx, int ry, int rw, int rh, bitmap_t *bmp) { - word poffset = (word) page->data + y*(page->width/4) + x/4; - byte *data = bmp->data; - word bmpOffset = (word) data + ry * bmp->width + rx; - word width = rw; - word height = rh; - byte plane = 1 << ((byte) x & 0x03); - word scanCount = width/4 + (width%4 ? 1 :0); - word nextPageRow = page->width/4 - scanCount; - word nextBmpRow = (word) bmp->width - width; - word rowCounter; - byte planeCounter = 4; - - __asm { - MOV AX, SCREEN_SEG ; go to the VGA memory - MOV ES, AX - - MOV DX, SC_INDEX ; point at the map mask register - MOV AL, MAP_MASK ; - OUT DX, AL ; - - PLANE_LOOP: - MOV DX, SC_DATA ; select the current plane - MOV AL, plane ; - OUT DX, AL ; - - ;-- begin plane painting - MOV AX, height ; start the row counter - MOV rowCounter, AX ; - MOV DI, poffset ; go to the first pixel - MOV SI, bmpOffset ; go to the bmp pixel - ROW_LOOP: - MOV CX, width ; count the columns - SCAN_LOOP: - MOVSB ; copy the pixel - SUB CX, 3 ; we skip the next 3 - ADD SI, 3 ; skip the bmp pixels - LOOP SCAN_LOOP ; finish the scan - - MOV AX, nextPageRow - ADD DI, AX ; go to the next row on screen - MOV AX, nextBmpRow - ADD SI, AX ; go to the next row on bmp - - DEC rowCounter - JNZ ROW_LOOP ; do all the rows - ;-- end plane painting - - MOV AL, plane ; advance to the next plane - SHL AL, 1 ; - AND AL, 0x0f ; mask the plane properly - MOV plane, AL ; store the plane - - INC bmpOffset ; start bmp at the right spot - - DEC planeCounter - JNZ PLANE_LOOP ; do all 4 planes - } -} - - -void -modexDrawSprite(page_t *page, int x, int y, bitmap_t *bmp) { - /* draw the whole sprite */ - modexDrawSpriteRegion(page, x, y, 0, 0, bmp->width, bmp->height, bmp); -} - -void -modexDrawSpriteRegion(page_t *page, int x, int y, - int rx, int ry, int rw, int rh, bitmap_t *bmp) { - word poffset = (word)page->data + y*(page->width/4) + x/4; - byte *data = bmp->data; - word bmpOffset = (word) data + ry * bmp->width + rx; - word width = rw; - word height = rh; - byte plane = 1 << ((byte) x & 0x03); - word scanCount = width/4 + (width%4 ? 1 :0); - word nextPageRow = page->width/4 - scanCount; - word nextBmpRow = (word) bmp->width - width; - word rowCounter; - byte planeCounter = 4; - - __asm { - MOV AX, SCREEN_SEG ; go to the VGA memory - MOV ES, AX - - MOV DX, SC_INDEX ; point at the map mask register - MOV AL, MAP_MASK ; - OUT DX, AL ; - - PLANE_LOOP: - MOV DX, SC_DATA ; select the current plane - MOV AL, plane ; - OUT DX, AL ; - - ;-- begin plane painting - MOV AX, height ; start the row counter - MOV rowCounter, AX ; - MOV DI, poffset ; go to the first pixel - MOV SI, bmpOffset ; go to the bmp pixel - ROW_LOOP: - MOV CX, width ; count the columns - SCAN_LOOP: - LODSB - DEC SI - CMP AL, 0 - JNE DRAW_PIXEL ; draw non-zero pixels - - INC DI ; skip the transparent pixel - ADD SI, 1 - JMP NEXT_PIXEL - DRAW_PIXEL: - MOVSB ; copy the pixel - NEXT_PIXEL: - SUB CX, 3 ; we skip the next 3 - ADD SI, 3 ; skip the bmp pixels - LOOP SCAN_LOOP ; finish the scan - - MOV AX, nextPageRow - ADD DI, AX ; go to the next row on screen - MOV AX, nextBmpRow - ADD SI, AX ; go to the next row on bmp - - DEC rowCounter - JNZ ROW_LOOP ; do all the rows - ;-- end plane painting - - MOV AL, plane ; advance to the next plane - SHL AL, 1 ; - AND AL, 0x0f ; mask the plane properly - MOV plane, AL ; store the plane - - INC bmpOffset ; start bmp at the right spot - - DEC planeCounter - JNZ PLANE_LOOP ; do all 4 planes - } -} - - -void -modexCopyPageRegion(page_t *dest, page_t src, - word sx, word sy, - word dx, word dy, - word width, word height) -{ - /* todo */ -} - - -/* fade and flash */ -void -modexFadeOn(word fade, byte *palette) { - fadePalette(-fade, 64, 64/fade+1, palette); -} - - -void -modexFadeOff(word fade, byte *palette) { - fadePalette(fade, 0, 64/fade+1, palette); -} - - -void -modexFlashOn(word fade, byte *palette) { - fadePalette(fade, -64, 64/fade+1, palette); -} - - -void -modexFlashOff(word fade, byte *palette) { - fadePalette(-fade, 0, 64/fade+1, palette); -} - - -static void -fadePalette(sbyte fade, sbyte start, word iter, byte *palette) { - word i; - byte dim = start; - - /* handle the case where we just update */ - if(iter == 0) { - modexPalUpdate(palette); - return; - } - - while(iter > 0) { /* FadeLoop */ - for(i=0; i 127) { - tmppal[i] = 0; - } else if(tmppal[i] > 63) { - tmppal[i] = 63; - } - } - modexPalUpdate(tmppal); - iter--; - dim += fade; - } -} - - -/* save and load */ -void -modexPalSave(byte *palette) { - int i; - - outp(PAL_READ_REG, 0); /* start at palette entry 0 */ - for(i=0; i> 2; - } - } else { - /* use the 16 color palette */ - for(index=0; index<48; index++) { - result.palette[index] = head.pal16[index]; - } - } - - fclose(file); - - return result; -} diff --git a/16/modex16/modex16.h b/16/modex16/modex16.h deleted file mode 100644 index 81960dd8..00000000 --- a/16/modex16/modex16.h +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Functions for handling modex and doing other basic graphics stuff. - */ -#ifndef MODEX16_H -#define MODEX16_H -#include -#include "types.h" - -/* -========================== Types & Macros ==========================- */ -#define PAGE_OFFSET(x,y) (((y)<<6)+((y)<<4)+((x)>>2)) -#define PLANE(x) (1<< (x&3)) -#define SELECT_ALL_PLANES() outpw(0x03c4, 0xff02) -typedef struct { - byte *data; - word width; - word height; - byte *palette; -} bitmap_t; - -typedef struct { - byte far* data; /* the data for the page */ - word dx; /* col we are viewing on the virtual screen */ - word dy; /* row we are viewing on the virtual screen */ - word width; /* virtual width of the page */ - word height; /* virtual height of the page */ -} page_t; - -/* -============================ Functions =============================- */ -/* mode switching, page, and plane functions */ -void modexEnter(); -void modexLeave(); -page_t modexDefaultPage(); -page_t modexNextPage(page_t *p); -void modexShowPage(page_t *page); -void modexPanPage(page_t *page, int dx, int dy); -void modexSelectPlane(byte plane); -void modexClearRegion(page_t *page, int x, int y, int w, int h, byte color); -void modexDrawBmp(page_t *page, int x, int y, bitmap_t *bmp); -void modexDrawBmpRegion(page_t *page, int x, int y, int rx, int ry, int rw, int rh, bitmap_t *bmp); -void modexDrawSprite(page_t *page, int x, int y, bitmap_t *bmp); -void modexDrawSpriteRegion(page_t *page, int x, int y, int rx, int ry, int rw, int rh, bitmap_t *bmp); - -/* Palette fade and flash effects */ -void modexFadeOn(word fade, byte *palette); -void modexFadeOff(word fade, byte *palette); -void modexFlashOn(word fade, byte *palette); -void modexFlashOff(word fade, byte *palette); - -/* palette loading and saving */ -void modexPalSave(byte *palette); -byte *modexNewPal(); -void modexLoadPalFile(char *filename, byte **palette); -void modexSavePalFile(char *filename, byte *palette); - -/* fixed palette functions */ -void modexPalBlack(); -void modexPalWhite(); - -/* utility functions */ -void modexPalUpdate(byte *p); -void modexWaitBorder(); - -/* bitmap functions */ -bitmap_t modexLoadPcx(char *filename); - -/* -======================= Constants & Vars ==========================- */ -extern byte far* VGA; /* The VGA Memory */ -#define SCREEN_SEG 0xa000 -#define VIDEO_INT 0x10 -#define SET_MODE 0x00 -#define VGA_256_COLOR_MODE 0x13 -#define TEXT_MODE 0x03 -#define SCREEN_WIDTH 320 -#define SCREEN_HEIGHT 240 -#define PAGE_SIZE (word)(SCREEN_WIDTH/4 * SCREEN_HEIGHT) - -#define AC_INDEX 0x03c0 -#define SC_INDEX 0x03c4 -#define SC_DATA 0x03c5 -#define CRTC_INDEX 0x03d4 -#define CRTC_DATA 0x03d5 -#define MISC_OUTPUT 0x03c2 -#define HIGH_ADDRESS 0x0C -#define LOW_ADDRESS 0x0D -#define VRETRACE 0x08 -#define INPUT_STATUS_1 0x03da -#define DISPLAY_ENABLE 0x01 -#define MAP_MASK 0x02 -#define PAL_READ_REG 0x03C7 /* Color register, read address */ -#define PAL_WRITE_REG 0x03C8 /* Color register, write address */ -#define PAL_DATA_REG 0x03C9 /* Color register, data port */ -#define PAL_SIZE (256 * 3) -#endif diff --git a/16/modex16/pcxtest.c b/16/modex16/pcxtest.c index 6b88f581..45f783c6 100644 --- a/16/modex16/pcxtest.c +++ b/16/modex16/pcxtest.c @@ -33,7 +33,7 @@ void main() { page=modexDefaultPage(); bmp = modexLoadPcx("ed.pcx"); - modexEnter(); + setvideo(1); /* fix up the palette and everything */ modexPalUpdate(bmp.palette); @@ -65,7 +65,7 @@ void main() { modexDrawSprite(&page, 20, 20, &bmp); } t4 = (*clock-start) / 18.2; - modexLeave(); + setvideo(0); printf("Old non-sprite: %f\n", t1); printf("New non-sprite: %f\n", t2); diff --git a/16/modex16/pcxtest.exe b/16/modex16/pcxtest.exe deleted file mode 100644 index d49c06a41c114658e2225a0db03a731cd1ba01dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 61733 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 I;LpGS04~-ioB#j- diff --git a/16/modex16/test2.c b/16/modex16/test2.c index 19f05e09..a3669980 100644 --- a/16/modex16/test2.c +++ b/16/modex16/test2.c @@ -10,13 +10,13 @@ void main() { page=modexDefaultPage(); - modexEnter(); + setvideo(1); start = *clock; for(i=0; i<500; i++) { modexShowPage(&page); } t1 = (*clock - start)/18.2; - modexLeave(); + setvideo(0); printf("Time: %f\n", t1); } diff --git a/16/modex16/test2.exe b/16/modex16/test2.exe deleted file mode 100644 index 8b364604e6e96f1db2bd45d1cb71d4aa8e6a5d6d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60371 zcmdqKdt4OP`3F2ZGwd!b0t(_K2Eia+RxPMe5d@;RB&i}w1mgvh=GrzfE$l$j5?H!1 zIy+)6y(FngQBWu-VpDUDQ@x&{h-0D1RA#y;RLKMj3O{XyTad zEv#tsZ$F7=PjF0UKR(3<$3veUTOf?7iDr~)Z4Ym(Ilw7D8@`7z(7;cJ?>WcR)N)EO zVmKPJe)yi@OwH$<^1$#tl}ybSoKiSkhXaP5W(${!*9TWWokG^ITg5( zA&F5EX@=koj%CEsfIjRFeb`+do1bAkwjTQE%QARu1MSQ$)7udQhg1>R(!A9jobn5U zaW=i3;EYUWlz&+0j077RhlU13TRsIB)R}=BojE_$nE^WJU}wfM%J=ln3?gngBig#8qAqC^ zedMrW!2k^un!T62m-HxO_gRBYkIdm|Z}IUyr>B^YD8MbrHjwNN4@b}5HzR!HO!zQ# zuBL@kejd5QU}x1Xsi23>?5aqqppOQYMed2#@gXk~NSSf^4Mbc7>BX^hu zl-e_ksd014v`D=_yz?yQJxe2Qi@ZLCc{L*#<$hrz>O+@B_&9aYV33p9FjK*NB_i!aR0`t{QAA9!)7?L62C} zC*}fB3I(8|1F%i9^}O~zd*tkGwMTkHTf1btbkk=C%{B;LTVMBC&ekRsv>R&00!#xc z&@sYl>$sb)zYZY6`R!eJUfAx(^UU@hJkLs{Jdl8KFrBL@m$c)c}QB%|mbq104KAZ~&wS^6}Hkc>T$yxbspP zurz@IlFhFe8NC+F!Bj@salMWSsN3P4#wQE~@G~p{+rtwT-~&oGXltchcc5@AERHT59++Ks-lPCO0uM)4z8%jWtvL)T+ilBNk+UJ z`;v^6rC|uwA%amy48~=aV(IE}nRsiq9(8w3l2K_kfMz&tehh4Yu?5uE^!|Z(#4yT_ z`I}}*pM;dA8V{!g%#ci|fE8f4XJcy`IK_{;`?#XOW|L$KXsG7g(0meF(FFd6h`=*7 z45!FuFlQ$!5Ta`4L%=EtaUNi6G)>tMiW-0q;3(It(5c}m?gl~((L)TxnaSAcz$BCM zV5stvhM;KLQ^-(C=(nIEXT<;`#NacpW;GfLLqmK`KvP0O^-{WwFyPNIMhQ`9Q%M>I z){hZvHmMis_oN_m(kBcwdDVCHV$aX@);6QH;E;l?RiL%k`N7s+F-y6Dy$rXYzOc{Mv3rQbk18x-Jv4*?E*-9I>$R`8fEXGPc0RK5Y= zW^#kToo|wIyY@O50Jr-22Q(!s!twD#n%N#(^G{?OjckzryOg!zbl!)Vq~{;ktj|BJ zWl<*o{ErZRl!nhswzJ)jV)%4t&<@#9vb8G{jgSYN6=xVBwnjl^huFc&BEu=T-Nr$- z)}?$Ch6Rj8l;}=(3z3dT2Qq1!#}FG(!w`=*Sen5BbhM9x;PjeE#KtsRM|n6NLP%Os zdoim5x@WkeKDvuAp^U>e0EE_MZqLm{UbtRlBNeH%f!&%Wm3E=Vc4c}bZFfCwSNR1* z;0unAAJjqwqoX1a4)CW1J6zPIqr8a<{9HM!PN0RR(n7ju=I!x91ipZ-&=swB;8S&i zUesC9m;5ZmFq()hh3gkT(U2$D$#b-pt6@QzSqaL_XQ+HERrK7Dm=!$+GUTAV%xsD6 zV@cY9l4$FJ?&dUO23Ka@(wJuKW9!H0evzpV6;;zyr&sw{zF z^z{;F+;X~l&H%e}_UexG ziH)QYGw_V(R!44$2(WJtuv;Qn?rnzK5@F=t=J5*S-ZtYE!Mz=h*9h+ID7<31w`1@c z%e_4suQ>cBa7wzSY>QY!XtNBX%+N@GLEK8I^^;O#Zmx%a@x^uHiw@t2a`1o1t>d?e zrN&@+4_8)Pab2qB=pW{$c?&fj9tmbv&*W6qOs@?YDU=8^zu&s8svemY* zYV4B=C{3Pk{KLl{x5rOjG$lU&nIAk@^2oIKdp0~YBR(Z{ z-n{8Elapu8m^yW8eD2C6OX43aDf!`J8=ib*gFXJ?N9>P0WPjvgCif|O{39El5*~Xz z{>ew4e5&{v=AoxHFvG$)rhj*tdF%eYS>a9+={VP(B*tZMNn7IPaoovZ%vP^-4zXFB zbcAlJ=)WXKMmom`3#15^+2Xd=r+JGlz@-{4YRf^zJZy_wYN7jF`cL5Y1~e3(!$~b% zbJF&C+*Y@>dDp#i!j{upJ^QK{*HZ06W?*N0=l@m<+8*?!Hc84r7sQNJ=!bDNXXozf z{KHiDJ3E!%>0I%ut#Q*BtN)*jLE?wS$1lJbM^u%w^X3YZ z9Oe81A;Bpd)Nu=*cvKh*5j-3j76?(UY(6|beS=`C`dSM(>p~pq%)3G#p2D7YZ8p6B zAoOi*k*X@{tcQ0po$oj^?gk`A*Ypp6`)=Ug zz1-VN@XF=h&cka3H|v|4zTt1*hj0N`qcKYJT*Warj}EhCpgMzLw$|>BVrmSA&cCj* zr%BB<7b3SD{D(U{KX1jB!&^`985vb$SRf}z&Er=~9Ru&8gZV#M@GA=L$~y0maf`RhE%)+&NrwTU^P_wD+&v_s4RfAWht5TmeB z#g;8F(ZGl~;h<{bVk8ZSA+#73%Ergxc1S6=H4c)bp#!5a)Kb@}g&>+rDtYC9P~h2*)H+S!RKeDNd^cvrTD2gK5TO zu5^JkX9l;?Z?|sr3+W)ujQv5eM~R(>vX9f8>QQhZ+9|3~fK~*8+{faaWKNnhjZ+V$ zxas@tWKMNUOTt7{mD*bzxur$yL?z90#oCQ-At5aynJWvC?7X^7L{Pnow2$Vaf#0A3 zgU_ysjq2+pe}zc2*qPiOjiI7N<{bK=#m?r$W?$eM#&`X@(bsk@e?h8x z)UQR8+MHf2gg6=u2s}swzfcd?ghKl>KcxxCGAQbonW+$J&rlDh+XXX9C#i1LhIRe6 z9-pFqppHqm3cuFn;s1fKWndf)oVsxz_RS7F91U5%G7VUOV5GtK#9(kz!1tiGQ4=gx z8E1Kh6*%M*52~B=r6iSxiJr}kj)#o{$>&4Y8kLq*boIw6Za-n|Tn)?kNtV6P@hO|q zv_dO2=M^ean)85J%r-C3H2dS8Y^v@n=RMhBP>n4%>L21#GmTozGbrt_heP%d+fz=Y zG$=JjER?6x#CBjT)EACV4eFo##9$u<MdgyqKx_YIsH|oR{KPPv6qXU>E=An!e~vDJQUQ3N+~1 zsx;bZdwX4uk;!vBX39z-`L1#3YO*Hwh^NFOVux}c2Bv<7ZlafKd1och*q6AnO*`W4 zVLOa=V+|9pB%~n)v)C`?@FEX7nCy0(Ph7wx3Nt|t0Trv5%_=E?2j)$P2GQK;u0Rq? zhoH&vOU>G0|T+rAY@WlS?8jd zW0^4?QCY$r3x+Ym2-M-MWSR0*X|9X6VXrZF!C2@Nf*GTV))0j79Li?7o=x2YkUpuY zf5YohO>MYk9Txl8T8P<(4v zUY{p6Qe+DvnmsfvhlOr%yxNJuU=q->(nte?EG{f>g?L&7${qq>uxfqpFk%l>aNryG z_%$P~*D(R%H-q|UV2a$Bc);^mKS~zHb<@0=mEe1*q@{Wh^;i#p^_pOdJ;j zKzNoa^&r)C(Xn>V4lj4;YAVVSD4|si@e~fPE{KI<3GEN1l-{Ugpc(kl9dUFy(OnO7_qTf{?P4FHk>b$r5zjopv>^|j9V z-oI(CcGFJi8>GSMX=cO%sAZ_SA7o%QhHnd`*6MI5?ULxs0Tfe^Wj5yGR%iec1p`w6 z3|jz2vyqcd?E?TF7$pQE1oUMJdVuM}ng$E#XV}t^jxfn!!aG4sqZ# zCJeY^w6D?0NV>Dn0PR~g``Q%G7;lh741pbNsUHvqT~?Lf&vW)^!bA${c&zv!gq1hu z0C>kXHVLg88=h6DOmN#w^^Cg4iCyh#)NC(AnnGtunx_l3ta#)#D%aZlR^Y6yYs?W4 zo))XEOFV=im2otR4P$}kdfUomz1Y*>=2b+o|4d$KBhGpV@Zm__i#YKF2jT| zw!yC$`ZgQzh(jzB1!04k%pi6&_QA|d#4_<9!%RA2naLpt*$~SlLk`hnnRz&qWCk=^ z1Iutsr$%#|nQ-Q?h684tI43iiS{6bM#?5F0%wR^X6Nl4!M(r>&m{H4Q1~VG6n8gg6 zwa~!bwP+{5%c%@!$WFtqDkT(e^RDL<14A;*Ha6oq8zamuC|qugbG8<3@owEOU6lrQ ze~%gH{G;o@E=G&PM(X(1{YW`3U6ZzCgu|Kefzp^H=|0WoI2-A>#QSzIw-g>wKK^$_X+hU) zo9n3lY>{$VXb0>OQf_SHIlF0#w}g{&8EL;>uUTF0IyI;{I5*lAa9lKno&G!HJvT#p z#hf6P#$bHyu2YV4^TM!QmNtaV(EdJYg5zAo4DC;Ux&!?);PAz9X||)!Y~Nb;#Fj?d zTEJcW4vHeT>y$HCl4hSk%icjNGfAB@xDPMf?z~`@7<=N5N?{l@&VpHIx~%tX z6{H1&v(U(tn8Aq{hn8bbC=8MpdTj1{T+=Indiu`{Z%_EM#tF2Pi7`71S;kq&<9AEp zQNBC1c?p>bwuEH~s}j~GJdp5M!jBWm5}XMyCA^uiBjNpoe`R=O7&dWY;=TC&V4^i~2Yxm99mTJ0;>^SmNi$JqX5v)5pGZncd{6zkK|j#c$K3^W)Ete{a%zlPvM)$J5`xe(yx;dxQCI zq|=aFkNs%Mdz135!SXeTxiZOpy*^s*j;X==X&dx=`z_z25~rj5dy_^b{@yxz+V8D# ziGu!3-;1XSQzj+`+n<>DuJyf1?^>;iXYhV+5`DWTow3eL47Q&FDCJM9nUsaPZi zFMmKG7T?%`mz7uaq?eV)!)Y28_StVQY^?L-xQv7%v={8=ng}I%r0;P5|21>`2;W=( zE%U8|Dv3}IjPO1A-wI)@=*#}$zD4~skR6>Q@=4--tZx?m*5+zuEYA3~GNV>z28ck> zn5wf(xN;CY8zL+Etz!m{)G27@nLF4~@ zy+7CM&4`j(UQ0Uy9RcG&3;$aCul3r0Gh(Q>f9kurb93}cdLxHYMLl;ra^KpQpWaf6 z(MyrYTblMQ?b~f);*5n`+*?|ukW*7AVh{}Va^ z3O>IGewwRef2D_f+j{>S&SZ#-B9b71;T?rH>R&VhZzJA7k!&;GvA+BMYc+H^1((PY zV>Pg;GtxJ{w@^B*JZD_*8>xqWW~5^)jo>XbC3zEcw{`*JY#&RV2Co`BT1T96vq5G-pCroPsV)WiKq zeeSnNjmN`$Ez?&JOnvtmn(9Sr_b8+mzmL>Frf(iiz0qGx5oYH)2}59}F2VSsy8q*# zGo*zPz%|f}g;97%;XMNH5qQVo9fNl)-m$)V{|sqka@>qNo})z4MwfeaafHNgGErp{ zy9syIvRNSVCTO3q@ys@E%0Z8eK;=z2R9WcTAI02)lPE1AzK5w? zsC*OS8+%h@-zQ0`saQ{U@ z^u2!d#!%mzI&Atsr(T?TW$K;NZPPQY_gMcgZ6@n&(te%__VYW)u`+wif1KKXA;`2k z^B7;Ciw3$!4~}2Cs)ug$c)j&0Yq3?ZR#@NArGfV*`3`mY>bs~2%vAdJb!B*LOeTjX zHe-15nl?lct(x!mUA{NEW=O9G1!&((U7#GmFkl%d3*NvmV3!Ci17*P*7`6x)wlEfD zg6!9~t}CtEo`U%Qm*sN0s&#R{dUb?y*6<(aRUiBH%#%#27cjwwf);(!ppqLEtv9G2 z-bkCutADzYHjYNEupN`tW@g~31;L!&sYh)JO`DPzLtUuDY%MoD%A*<;&JcLYme z#L#jcd@b#ueVnw+T=f;>c*baLvNoueJz8ak^!->GrH;>#@?)igG>qL+CD-`OFpGOI zBhG{>E#3?u6TtQSX$OIdLpkE1tHFw@=eP`(+1xzyyLm|#gI^S_mv zp$TUEjQH{Ru`{$gC0+d$!r;=jx?fsiv@{4aEK7LH64nwfByw&cPU^q`qO^{ema@1F z+-K>v^jmraBj>lX-c!WeEG?yl;w?*g%Tm@dOo;8S)hcmAD1b5DC!?LFaD ztPNa~_qg{GcgWgkPb@J@ibd^i*%Wa0WtEQnAj{J5bmUDXrK{@*uDUD-MWvc0syo|s z)T+JW3`7-2he3y6sg=CaA?dVLbGAjPiZfs?9us!Jb=Gy%b;TvSRM+WOTs>6T@QSm| zZ1LM8!wz^aqaVk;EsZC0)o)%Y;`~J=nbw%wmaw<2GpOvc|G34 z&KAviTyvh#oXuL*Rm?wrQoE(oa>ddi@axvCBdUdqiC)4+ujQk&jYa5kwBP%sx2-tZ zo z%t)P8iv#7S)6!O&g>fj9w%CZfUfF!wVqORb|4LiT3cSRpg&>zb+}k{>k!x}`Gn_lC zXg$Fp7@ij15<*)=?Pwm&WE(AujdU?!3V^x6zksOyD> z0eMYQv(zZH152Tr+s!e{rTSU=3U-{YbX=%}D%c@Rx47+7EKT-_QnR(CifEY?w^j9P zmG%`R z^Q3lb19YC<7o;Ak1!wf#7r5r=gY?kh0#^^j*@SCY1GvClN0F#P!7RcgAv(7w+SV6c zFworujP?SjPg6VwHaBZPYp$p*I=4OA))8IMWgp|*aKYd#QW&nnA6?WFo!b|UOMy*{ za8ayi6N}n$+Y;K=mtR81&@Fn@rLyQ3dUafC1QauW^MCE$|DiMEt$y3L`_U$SA+=5^ zWk5=rZtjwn8?bY}M>O03She1JxoExgb;-z~MRxO&vgK9|gThc>`?m6{R==ft9ocjl zSQoLWh}l%cZYtuPm!i}*%ZaBWypJ;80@ho=N1wP?#rTbzE?-A!<*(m`%tHwOope?y zr$qKU==x1q0Wx+3ilv)z6o_O0vZ@cyV_YqGUNO|zl_iHL-dJwn4OxB*wOw!VKV!K* zP~objn*@0TmRmTe_0&Zm@IoS*4?!pxM;)MzH z6)eJAj^m?2h}0KtsI(ub;FYeBuoKU)n*w1PrsaFutpma+0+|a~cL|QqD~mZFuIqej zEGw7iSx@8-{s(q-eZ946cH_`GE0Rvmkt!oV&ok+=V1||jJG3nLo0bJ^M)YL?<#Q`n z5iz_dYIyF5;kKCJ1+h|FXoWfLYvHd_MTArkCFSB4Fm9#BN*m111EY&9{-;NC+7R*1 zeVQ$~ViVY621Gk@2*A!S7~9hwJwpgrGT!oy5Q>h4NSD0dT)lcT0+w*LU5<5>pcjFb zfiBunf;$(UTS_B#`GfFs6GttA&bE`a_S)ii4(--x! z19zM)t`67dt}{Csr_UVb7kEfvp--Fc;oQ+p&-9AR%wnMtx0SH%gNSIlpA^!IAAI3H zhOub-GO~m*82iY7X}9Vym}rBLt9e*2NS>md(?@JYm5->ylf8h zxemMfU8jb6^t5Fe?FN{5!!uXKas8>Z@qnd)nP+An2-6FFTIQbsa+QL)0Uxzm#J68 z7-+a?kFirOH?JqKYLRLw7p!%-L137YNt~M=7Ow}vi*^S`?efq`F;V1l9CUb9I=!T- z&*3hf@9guHC%ZZVpScQ6Qcj2?&{L@+^q*iJN=b~gc-E6DjoDnB=GC0qr{zjFumGyK8y1=oX3~R4M{hRC-eR51+)5%$nt8r2%y)5a_82fE5oDNkHM<(t~ zp7ov>!ld5DQ>qawuTeT8t~HDIK~F$Y8hRHVCy836mZ^=`A~h2_ZP1uXCX*S@M8aB> z(+}q`<d6;9{YxHe1!|#9)_>n#oTSVM?&B@SLz;^1W^ z4qlAjbw+J5@TS0nQ$|T(X|;Jn)wZVyY_MJ+1|!6I_ecBF>dK}IF<5vp!Pi}{)fG!eZkKi_P}~hJ^(yux;-75Vws(9gl=oq8iBN zV5Wjq7wacVD|yRG)-qDK&9fN#Ld*rax0nuWF&$XQowdF<800U%twzhlWm`uc&hGQ_ zqyy41^k88pgtZUZs%N2y6vk9NYfKh#3;9{T>n+?Md6xYVSX0%4Z97YoovmS#XV08; z>7=4vl@9EQprQQsVBBe?vVE|^D;=oNAsdkJaoS!pqudqN_)Q5dJ1rgU6}ICm0%YHT zmGdzu2bN_0Lcu2YoN^+3nut%pmB%=`iXY9C5R`(jJCV;?(efU!B#*IUJ zaWR}y{v|x+SWC?6(Uk=^Pep6q3aPK^qEFn&QfT$LtUBsuwv?-0S+^2bwkx@-D$jLWHK|qFzz%MDXSF@UcArKCtknlt@uht&;foxe%PA`9A#Z zd+`SY`$8Y7{E%5b!pUV#ZhH5PU-x7>Lfk`TwamSxKgn3bzPpuoKX7^0pBu;XubZ-d zv)B2=nXdJ2vwKB87{hn3vOVh-0-?IT`Sv=JJnPr2rsZ%e=hoG^A`YwITeV@m9#AGT zz-O@Ts~xNM{4o=Xy)e2^zFje@B`XJ4D5UeH5J{hARc22hv&t99TrRFOJ6q$VR_7-a z|NojPeW@gTgQXS-E;ar`eW}gr)R)?+Ub@ttd$=@0`Xre5YOCZ?L!?i%+!z{hQhB}u z3r`P4eItD$eUAEmaT$RxFzO{8XhO~0%Q4cYio=KxIdd<|ROf~%#YUKOAooe-zRMsx zG!WOJmp`eD3Upk2Y4N{pR3jnJ@IX-$;Ek^VrdSUw{AcMQzkB1ss_Pz7Z19g?2 z(ihHVzH+Ybz}{y&e(Bq%SBCm7XIegbK>z>hzM=a1Zs6!mH8T)6=%pbZ|3dK3$gC{X z$?muDMW^Pi&epN|Y*&2+@dFd>?2RvHV2(aRoAdr%c>I+<-lLDd(8r(eqEJ_o`hh|I z#b80h@-RJ!J+0iWuDV+~3DD zW7S1|WlTG4wy4(j5H)w(_&CKdHc8ow$X#@fMB<51{dGym-_>A3O$ zUtQ{#P7gL?XE$|9xr%>3q&9lc8SyhqUw?a90w>q6 zBL!B!GB*Hy^2aO;sq_Hu-A+Vc?yFkn za}S^Doz=;IsAX;$-*MYBzx~Dka9Jn!9Sc3${+rgm%uQd-`Fd=~7Z(g!Lks`AaK!2d zG0@rdO0#99(K5)R?GIw#7MVLZzhI%K6`K$9>m=9!LK~M^9Oa$pUCDY^^4^uk=!WmB zm!y%DyVLSU>=I9?qa;+<^z^Wye9=wcS1&tNUR-Gu*O^t;+EB0@Ml;f<&ix=dSh^>b zls1r!ifl~PaRs5x*@#P{aWB)*Cy3Ltg|$Jg@j1Hmf}#gbDoYfKxQH32IuFF$|8YS! zq`eVd9}Fry`n+8I##tApUMixuB0W?jIIUzU-!U6Sn2tekwL_#DLIL4UiUdZk!9K-% z9JD9AsuygD_nxtjQODAARgLZz=&nKEGgK`xGH&0m4bpyHolt3S;~I*ay*|4M>PyaD zA{St3Ty98J0--X zwF#!Q0B-Y6GpvGc>PyMf>lRmL2lKdBDkW)!GziKtq!o@L8VxT&j0+zAvAJgqDVwjRv zr)qGvFwP=Szx~kxX90~{w<4`OSSK$XLuc1>2cx^u-Q$2`Gde@n_E6p*g=#QFT*rz_ zc~LM9@&Ra`6_&Z5;4&i!XdX^`4oR)wp(n)o5YVoG0Rq0PN?p!g+@+REc^wr`DJd83 z5x$hZUPTu&6iARgvGv3@5_Ww?LZ7M!1#}wg$UfYIGbl z3OXjX=y!c}yM}OjBi2{UU>ks2=D1gW9%+fmxc7^T_yg2nLkPj$TTiHNN=>g~+lM(G zHuVKZ!?kf|e zX0+O-9Bm336vMJu`Ge-ju%Yf~y$L&~{AP5p{1Nq&WH+pikrhURxX%teq;MRq`-A{m zZmGv+bW1b#rCZ#hX-gw^r)z)=gbK_z&~!hps*8=V2xFMMEzRR0C2VZ4KQ7k8;xM(o zcs;BRPmBAdoG@pvv4q=gWN=abUL0m&FPZ8sT`t0wG)gidaw&w?DfQaoaB8A>KW_DZ zhQ*De>Pl9O6w6_aL2rGC0*o3(fragvld!tmp8#!@ns(@xF*rYpfj!)g)JEOBVLhMP zDf}MB3*yQ!nom8dEsc=MSX7P6`eHe+elRo=m|DU(=d{?Uk77TJAvs?eRIjX`H`uSj zjvE#mX9HrV;fUX45H@h5#F(^oMuF3-Vxd=~XUUZ;EK6t;=yjjOb0c9FlX_HGz=gm( zLJUbOqy;KrFG8(lv}NIGWyTV7T8_Dtqh_H+0T@@%V3=61_aZnX9~=@&&2N>27=eg;Oh&#R9`UMfUEvFBcRcNmE>mM?HcHW`WL-y zj9N!Wy*L7C&IF=^U**i4Aj2-S_o)P4Ee zVa4gT$H3NT{RqiqXbxeSG~*l&N@o+rTWS}DG!tlFEr+R0tt|;jaf4I5?kAl7BF|1SMoKmZvz>q-Q^0xbVG#2X2n8O7Gvu+{ldlI)0 z0?Mn@Rs|AnfP)2h8h$0zo*T9-yKzXV**_QS7W8OkG7OO#roi)1pgJdz+FbTeDQ+4^ z7taa1Q77i<2<1wq>hgf0In^U9a@qncZ1Z6MV&Wia>5ng z0d&+?tfh9AhEOoSKM04^_L7|{93ur5jKi_FZ<&T$Xzj4$08)BTX$TrtcY2H$cuJLF zX{+oA0XZ0jA?GV^Am}j-V`%s#JshEjHzJH9N{=a&e$ql^A!@^dyO?tGg4IkV7ZT4v zrJ^&lFs!YD0TKRC4#T$@O!3m=1LEUFAl0ETUc3?b6( zQVw9xFz5wW<1k3E^Fq3t5*kyQcHnpq=5=%|?aJ4546hH3;UOn{iFs8=kD48nL08 z1*7rw&4Phva1_4r*Ml3Ip5=V=H27fCI|b+}QY`H^?5%x)z@Vk>9`z&2t*c@3VakL1 zE*RiyrBK|maNgxSUSs1J4 zn3W%(Av-LpOt82#nS@ISA%#){&&N|krE$RR+tMmw@+zKEuQ-+(IVn?2hZ#03T=APr zS2miJBBq7HUd}AyO&fvvTRja!T4HKNuX;`wAZRgA>zKUVrE5t-<6^kI0 z{h|pl-NC~LT25FNqwc|rVb#CE=*_G)FBgvkfimgxz`|i+Y}F8hlg;arXm!N^^)euK z?pi1(%n?K8h}bGNc@H8pycY~mgD%Rdi1KpGYmolnB@A}Scrj#K1< ztc)g%to<_>mcxt>b8$fQ;5rnen=DTMX^ZE0n&zJS1s=j8mEEv=SA)1NP`US+O&v38V|K9Rz9;g=jCp9i(P; zfOB+e53I0(jqCeBxr2g%az`|L7|jSJHOZkt5pKVDM4$7Ub_`E}g<{8mML`XGe@Jmc zN0|^H;%~2g%<#_MFk$k?j8Qih9WP}9fuia{hT(J!zAJPaSRoX73t_t_+!0LP98BF< zX2kwGm?a)rW>fRNQ9x;3f~cHDMEKPp#F`zX_-NV?*~2VAsAeHbc_{=_uTuO*mC6TzJuJ97Pvix zalYXgD4SK9E3Id-WYPZ}SppAVQ(+Wgm+};-0GhD88f>a;hTM57LBq7_$dOXeok8RCxdI?8IE))DgtgT*VNS|nr++162 zYfgsCwmz+3K>ez^s9EBx3%YQl2+ZuD0bC3r-ep>}84gK``cQHL{66HlY$re##yWXk zNeUOJO@U8G&ejT7nea3@#dgYXYcbo$R2RMItT@k9Om&UYM~Y!C(sIwMmmC#W z;)SoA6{nbr6MNzrBqB-6J*BofD=sh<5qpxa$6ZicUAFf05+NIPW(niyJ+6vGc$XFX zlLo8J(F-dod^rrzjzTKwQNlnvE-@7|ZmQ~%+M1qkZ_#Tw``tA-D_WU~*zZVdRnI#s z+HUPyo7zgpiA9B$eg-`TnpB&s%h|FBBt0(ViviRXrADXQOJdTW5GKygHV7m2 zNQc<&yULV)KmBL+9QZ=HVnasiu_Ho_Pydl{)>gHQg)5JiQh$1(eMEY$&?p{tEaOeupp&SqwJyGG1o28=g?Y z5aJz=vDZ`|gw}9>4$BLt5yz^>)02ge%{gP#M({Lhy-g{b*s|4=;!bVEEW)Ekr!C0= zr+{5q>Nhut|0zh;$5I-c0ZmBS>VcPN5X~47i#I@}E;nUg_KSx7@LO0vNau%gjZVE% zc_Zg<^ql9A^K|N!iYBpLZ45TDB7bibgB=;X5-3L^sB;7OWSiyg_}^~tJ(OEx&sY(- z+i=KGm)ehe#6{Q!V#cEGt}`WnU%mQ$*QmQU$K^bTa~QuJn(HpRlauz z0=(}}1G@Oin&D-qa!j&*fN9MMx8_7xbE2#{Bdj?w)*MK*6`UalF46{pVZ_!6y~_m% zqOjfZJvgw{7O1xMB}pTdzHq0975CGr{35qUtNQ=XhyO5}T_oLDg@M$8!@=0u4(5pWgd${D?-s1J^R?r>$ZptJWm zL(Ftf0_S>uDF=r#@bQ2fYJgdXx-|VM`|)(a{zdxJc5nJByPW>8@My5uga5vmZy$J; zeW5diAFOu(J06HHuI$ksTYDIj{&2~f^t_VQ>5EJ5PhVtT1>pi$J&Ib9PJO$CWBd8O zK}}In0~_2efq!8z1O99_o_gTLm-+!dqU`U&tswlaPX$SFbCjB4+61i1is)`2--pW{XoztAq<;92KQXxt`W;@wUix> zeN$2ELiqf>FTBn)UC%lv#SI6{fEg}>-3BIU>(T?1Js~irUfhpMl;DbgM2BBhU!}re z`G@LXfz{nu06=Nq8Ni1H8^wk1TN|+YJ_+ogg4f6Jad2x=yziYr*}cwkGj3egWsiwR zx45<8m|pCY^=?f@8Y4`^4k$q%#cjIN$&t>A4n~OF3NIS&B)U4^WPSBuylnbYCARcO ziee^Zzo~=`a z56T`bwvG4IV-Fm#*ap-;lyScEf%H`+Vd?oOwpjCB96;2QTKYq{9g`ge@jIK%5~k^Z za?z=1-E8uS0W9P{qd}JObzdueD?P{lJFqLxmk|I-((_is>s(<#`3v=gg@i&{(q(Jg zY;tDI3uWwWn@O_f+LRWWXh=Q}{63{8U*4Q!&;ZFPz`Wqptk=~_LDT~5^M%aWnhDUBkEWM2aX0wFKG2Gj!9iS@oWt_4Sp zJ_2@6nJ5+Je4~+((%NWvj-wL&S}M`Muoo&W>^;Faovl-;>k%wI5Lq0qP~lSK*DYp|HQw2e3EpdDstX#$qDJu${#L{ykF6Oe$SH7$ z4^7!AFabD22RERCU=FTOpBHmt{kAXA78L}Y6)jBp24r>RfD#Em0M!xTkFLJ@(LQX) z){zB^p+~@eNwj?~+M3|d27_SfAOMqe&B>dk*-|zrJ)9bXPIO7x;3jZ$*i&6_0bUQQ zZS5;1MNYNBHb9(?j^%)=EffpG#X|-Hf~rbt^ta-yzEXItxFuV>?;$N; zJOYitvN8Ifw!leBRmN=Y=M^|9QOH=2k%r02xD|ObH3`=QxZ_nseP~O=*8R#fCg^Om z$oTpTV2vhm8Bg^$Wnp4vxNdz88+3L{P82qVmKD<&kYh|!|la}#R8B`V~RfbDX znYRL->)G*#WQNEFBD3Vv7m3UhIfTeYBAbY8CUPi|!-#AlayXHP5jld$kwlIn@^B)L zAaXR3V~9MG$gxBoMdZ;$9z*1@M81v4iLwp2+b;P9X9GBHuyeMB>}Z`hLyI zlZZT-$Ww?smB>~iPb2blBF`Z5_lTTK=cM*9Zkrxp;o5+iaY$I|Gk?$t*Jw(2j$loXO5+W}paxRgV5jl^@ z%Za>#$oWLRkH{;DTtMVPBCjIy{X||(PpAaWIve?ep?k)I>-Mj}5?SzY%#Ckv}Bz zM@0TRk!y&&o5*{JyqC!TAo4$n{4tUD5!p@T{Y0)MG9mH-B7Z{UIwE_BTuh|$gM>FhRAJ1zD(qHB3~hL2a!98+(qQ8 zMD`Q8o5(#x?j>>`k^6}}K;&yg4iH%*^28GEjb8Ewl9Pr)(B|WSLyYzFs|klQ6lgp^ z!i`y6ahgcp$F%gr zj?xvxsEx^n*0RB0>(I|qX)Dmf_TaSHOz@!UB6{kxxii_FlNnQ%(c-kVo3CF20>YLrYd7XNFQ&%U5c21lO^b6E{%rs zwkBa7RUeBNf_fk+wg+IJ6ROO82iuEUaL6yEh#vmqKHmG)t)AJ`15yU^9#3{#k->Y> z`<3C?x3t=^Xeh3SSO2hmLdb$Xo|4x3cec;LAwKQN+dWX6!QU3y-ovMo;wWra3{1sz zun0qamXf2Tp=ikj@woRZ9Dt370&B-;Y0iWY!)K1qvT#qdnf~Pfz`6;nUcC}bQ7`&F z8;!jbx;@Nar`f|c&xK{<=0XF!DH@o~n6#m7aN-K_c%AJe+(vvU;!YU0QGr=a-E%?B zkGM8f7&b!{6tDq(&gZ)L%^^9@fpbc>mcjjSfq2x}9|j@NU2am|g~zrc(%rnUj-Rex z`DNbAxX;6OpM420zWW?kzX}hpem*4vqA7^DiwVsmiA#=C&59SeKPKdkXa|v zVv0jy?o*4Q%>HHf?3cP{ztTM$XSYa%-PU2>GzbvbBOH$BQQ&J$FqIzf^nr@TwyWo_zK%AgPR?H%`)sZwmBtRSy z^Fs{8Z^TpJfl-(yD!tL$3%II-1>=RKK>V}OAE$?GY^ccf?>7kH-d=iDtbI2VuTmd( zx_|>e&Jba8HErCSn9<*Ty(+(A68zlZWR=9pK`&74eYvA_%j(=rv7)GQrz?}J2_}GwhoMR zCZsAQLxZpfC;#>TreU%DMpf!BQKGv=3Hvu?dL>mon7=6JWsxk`C_VQSq+|(;~ zYgn&)m?$Mvt5TUL_0k@uU74jhJW=XtjEF*z&4ZK4Iw?lO9=HHb8vWTk=v7)#-?O0z zM&arL^|RkKrL>QpQ{r^-rT?eAFM*G;$o8$TzfRIwfGCTITf~S$SOUb5K!PDlLm(uX zBtS%nXu&jPt~_|i1*IC<#+Gzz5XTLRp*>Kb*k#reyR!!K4V6ku*_}%u9G@o zlG$u-e36__m{8?k6!)Be8PU`ExQiKU;+?q+^bC}(g;Za9Mm zE#hiUJbi>mvMNU7uK%f+>I}3uV)e=_9l$KH({&C8TRUh#3-f{AnxWpa4Dlp}9t%H% zU=ZJeH3FDLP-qCfH0_)={05!GP(nsL2fV+M{Se-u6ei#Duup_%yQh1~@S$dJb` z%=P`lhQ~Jia)VOVW-9B$SkJ@3Ra3_`ybu?drgrB+I^6Znvk~*|OEVAO8U1V`wn+{w zyZZ=A_)0V+m?D^XfN{7MeIRqkoidi`QR*GVl#g=ruscLaz~(;Wt%RH}Fikz3xeH5u zP?BBGrKaFDD>QRoW5F=8^8z^n(W?#xu=+{B8y#csJ_1F14jMKHoxxq4q&12x5bR0m z?jy}Pw3oxI0pdH(iYoSAZt($Ra?rQV)X097- z*^!DExfqCQQi;P14p$e=sZ#YaHgZ0Bc>!&S2ta8KB2AR;}`gHT|#iOw$N2|A;RvhKJl(E@E zyBFiy(Aj;v7o*1Ye2|!JW{nf5sBvG^3mXuQs{xO!_i1Rz>D@6NJGLLt*{tj9!y)7# zR-;aDsWE->$(9>FL6-_nqh(wO9EFFG484FlqvsszJmBDB;a9OL@XEs>9Q~#%Wm71E~9+Q{Xeamw!y)6dJaeaPY z_=(;a)^EjC8KDVyf1$JC-d5{C3@!V|4HXY8v4+p|9+evkbR@ER72I*jUEcbMZL z%7BFpBkEO{^xktmbR(tmifu?GjJPS4ufOR(13+jDcf;<$`e8OR`;WG`2F~>^J>M~= z^$kn!?dP#p-+mrR{reIEYXq1@o$p-t*+@x($e-yfX#tEzhN`r?ttTkIdnmsTQ+|Jj z2b}QO5zp^0F3N8;CwimKL!oGGaO-)xn!5RtJg6YlAva|OHZ=x%1Lx(nCcH<`FMZOI zeG@X`!Sl~&_I94f>T_{k@3ZHz4oTGuy^&~F=y`G!Hh&Xnhw2NwnTR!Jyh4gm zPRwlD)R=uFa#OH<9jfN>_Tn?`>rV3Z^65wu862Fx5=|{0x^nmLVlAO6bXxECS^v@! zTD{-(+5VNs>8&-hXue zd&dS_J*UjE@5go{Ahu*qS~his{{e*U`+9bNFk=-9?+dREmyO78md5Y&koAPl@3c8~ zH-@gwgV{PZ-`jUnwj2$vwBq3Y;Ed4TmUpG_&TwJ4GQ2FSIJg75Un@k= zQu=X)Dmxpct!B)$fhopzCYTn|PhBXVeuAN!>1ShTMf*2-VN3YRtVO}Q{?O9?ZX4`l zx%CZp!N0=BZTRwVT9z%?mNhkWtaFVN{wO>hn{(;m1>u~m!r*;q7Wcxe9y^5Qtjf^# zmUk1edlP;!JPpC0!&VHoBmR+o3PX?dHVpyzApI1EI_Re&bQk^H0u^o=GHeplY5hNt zUeX2Zc#;FgvBd-J&4XLVSz88YhT{6VEujf5doAIUyR7F~8!m`%KF75tw5G4y94u=Y zbcRYhD~7gaVK)y(1T8};p;g$t|McwEainB|b``xIV(LGLAasJ`LW*@@L2=yX3PdXX z34P2hEq4y3hRSnF3d3LbI#_rrq7BNZJeK!cE~LWLey&$5 z8{0*BV~fliY@7_xNO9^u%AvJN4xz;>8RD7Lj}9BzbYjFjsvZhobx|H&(K1+yVh;@! zho3?=VSu-32ss7I((uIW#2Yrn@T^)tWXPy5J66VVA@=j^g374PR62HDKH+a3(>xec z;(N}u?P$YT(R!+HhlF95wXX%6{sXrK3+QatW?WQ>#)>IqMf>l8HS++@xkbPUcKK zbY-RWv}`@IBs+iX<`vnmp189T!X%h`A32Lhk%vY9>bc(Lq3}5HqO%TIpuiWx_w~BZ zDzQF`N2N|fs8%ur`yvL(d1sNU<*g?sw;$+S`C-qac-5ul)6G~& zJQA9K|1s^@?p#M*0vdb_LVH_S>scxIdFxqI@F;eaaBWxiP~M%6>~|L2d0Y0|Lz~v| zct6xT>dbX)EhQ04CrB=qQIJM@^7uGLcKy~97-F&z#zfd%RxX zkNu)lB4ho*E)colu#iH->`|kkFnmApmsZ?s@WEd>==n)-!8AS|&;g($N$CVx*L|o{fU0aINJ_cd_sdeLE5XzMF-w>f2$4tCitA z|BjsC=>8qJ%sA?$4#@S=RtB@$+!wRr?mO~wR>FPncbvm&tBObuP$vC_Qt?UsMf*w?$S_rP1N$D&#Xp)N>p zcljz5M_k8=L)(v_?650QX3usr3^`0hYVY0sA9l{gxVO&E3I zA1i$A`_U>CV2x%;&kHhU=m&dVD=mBhB-~a;_nRm~Ro%+Ue z(xSy!v%>KK8#aDcy(CGqx4%9=_Nk26r#_D2CkzCNS2VIg$jiPk6kM2n9(RNEygStU zTZTzsD7mM5=;g=Ri(6RFlS40`V=o?MI6<^KIwKZl2GJi!JuUa%O{PoHSnlqVIih3N>1$L;MP(46_ZR6Hv9n+yM#rl<{wRMrc8FhC z`kuknQ#p2^a_pYUu?H*1?$hB2*m`t~+|&AjdU@%4u%dhp7sq|@dT~zA1h%#v8&uZl zcC45cqfcaXYYVQwQ*Ka=|2CM3OJ2tCO{ljz{+#k9-Cp)3u8A3iIFzf@O2S`_{W9_< zy%$;*cl39+E<6^6L4~N*ZFxzpGT>-UqR^b*|?h_kgUorT7AFMpky0;<)vDYq#9; z>4nU10=Gdqp~>5EAahDbLd(BjXm9At+}m&q<_=T$;;iUZ+qO^XxDtC%Fr*3M&=)R$ z&!KzkVb6mf92FhB??~ps&@4J;2U32lWJczJh9nAylXBtKv(bUaV1N^T1h<#;{*dAF zBD{bWE}zmdMmmI}svm$5$2CJ1{%AydNi;p2ReWK=s6ZNK53r3d9zgSK#*3lFuy$V# ztDruhr%0FyoSQOKG8%;0(z{bf;aREKN5apijKYCf{~zU>5ON&?;GhyD#gRzvOPGR_ zNF2}zcwa}<6p6p*$Fr>)Gym{6Qx6e?FAz=p$9VNo!Xoy&w6Ha${iZ4HV|Zfc8WTGn ziM6PSRTK49$I3qB=?>ErIz70Yg?|Fs@C0J-x(jHwUio(DC3XttxZAhAK}K5sN%+oe z9G9Dumkmp?6Rm^hz!+2>+I0tJR`7WEbF{;!dUgywbu0>cfsLqrIFb{Lz3*`5ezbZ^ z?*nD~TX++(Z6{pH%{%lX{U;yB=$YU7N!Pou%E3Q#`Dac}o;T#KPV(TfUc1}vb=ZT> zB%j^w33Anx7tvfFNOF1oNsa!xV4bHXZa51C?RVO% zfkrHaNnVe8W72w$w=t;}|3Pn3t=&`Yb|z(1`Fu$}M-z`OaIKM*CT%@`T$smLRTr$c z`;w~dLHkU+Gv)T$Nq{7uw+;^zJDVI%A3bi&E`FMrqSP2t(vku}f5;IG`JDlc&kVsQ z5c2u(N;1zf#8B<5W~sC1%uTx~eO^YUy~-M-#k@A3LJ_yfUELu1p%JB)=S z)92z6i%W?7WN04+Udca8M)(MVAM=lT8ISRo@bqxjfAyzjGh^HFPoGoD@4$EZ-I$-^ z^F;Khn1!*662G|QHdBwK0oX39e zOL_L6{`j-HoIn5KPeX;*H0?N$bM(I6mNyr_{KID#ZTtAIKRX+4{?+&Lc6W{b#c!Xu z{L`nbmnDR@+!JbebIJ10*Jl55?ShWS9$fwC!%16BWw-6TJ_OG6X&F*#0=b6x=PUef z=Fp)bmNYO5RHj<&oUx>-OYt4`Gx|>Y?F#y4x8vI!cQ?M}?0fNT`YWdlt%Q5ryS0pM zE-131*@0JlDBpA+V`&OJ4b12jzgWD(_qTqCkCE3;;hANl0_isT~jKD8r7~P|{GWNbv5QQ~~Yy@vuOYah1{Glv2(gi>_Qf?vJ zBWmdPLFd1i9eW;;hr;#=7cYEi+{(-dbl}O>K~w=5s&z`s_7M zTadwwg(XT9)wCywzeVR?0e`xr@R>7=j~b;i(4lyV9*o840<2fVA1?)}c?y2UaRKgL zFWfw-%eY(6JOg*4L672Y}U`ZX_QDF7}iC>JT}3WnN4pJ%Qj zt^HTHOwrH6ZO~dpd!e^wKo8SfFybE*Rhj?(dbb^qo%MDc2)EB#cp) zU_9&evlb~`LU}=r37al8IQ;<{bed)>0H?>{rGYOq%~2p2g}i$85)j!^A%q$4OLB9im!qD7AijI^6YeG%9-59nF2SP$(9^Fdbi!<1SD6d zuh{4#NWRLw+~IdRJ>_+G5Y(#15&>PJg|6o5lPyap<5nY5eagR-MU+uC8%EYndp(rj zL)9fwN&z@!x4_kTt3oa|I$g5)f_}Cc1s-rZf?j{X=5zYhP*jj25VZ*cCCF5P*~IY$5CF>MK;w;wxqgjW z0(ny2;X*aK>O9pzWTZ6As8i5~oY{V9;Mz#Y_d0i3=Jvu)su*nXEiv9DrsO zfF%k*WX00SzvT2DI}sO8rpvDsQ6`QeRw+x+qex2BDUnf=T>s~yK0r~YJVMb`djljr z5^GMEYP}(@0;D_X66!&Sk}-R-@FN$!9%RHE#b2ue=5hc_!EFbeA*CJ+qp0~uFOsUz z*LywGi>T~2I?;228Rb5w^tu|I&h=D&6dy~;i~_s-lJbJGvXV05=4^si_`O_2p=b`b zJpeVCqZEbR!6%!j*rI6AsE2?~<6f4sjTqYgV~&X6?_)YdObd%EN*CoV%S8hvRk<0e zy~wgEq<4|xt_D0;bpxKKxE+A!t8Tyx6t^94tLg@PF?XZhM(Yu-Vppe2HN2vTY;^J5 z5N>Lm($wsQJ6(07i^|Yclj^9TuR@b3DrdSBfP0||N0XPMhJ`y8cy>c}fLprU=VXP~{XGQQzeRN*JJriN=%nFguED}rB23?e+cb&)>A=~2i)E6 z>beF5FoAa3N(z8fssTtaB|zF_@=yRlKbPq5A$kl5RQfiZUJMCIe9qnh%6Q4;^9B%? zNUyc9sDRN0UWrlx!cCNZ#cA~U*K^#D;bwK6%Y|UX9eIWUBRtf!#!I$Fo8o_;6E`}7 z7##ymqcn`%FauUR6I-H>B8W1RV=P$jL-AlLHzj%u7Cy8Y-pa*`06c6W1!|KX1&ZhJ zIGWcr)Y!|N!R6j+CpamyyJs0DvY6fNk?IL<>S~tOQ$((xAn2>?&tlf*cTy|c<)OMj zd>3N*hw~NlMTBfB@L<%U&l*2w&tv@zv&L+Yo?`zf>9fW#SR|Tuql7t(kH@k<;Gb z)J1$=Iv_+0f^?_!7Q(ejA5bu=jhFD5Fr_Tt>9U91!BU#4s=aVG3GJ%q(hQUz*15IiU% zbbW=;M@*eEPfjfsMQrx!YD7YX(-cOcIKu61G{EoB;9i$2;3R1_X&{F`=qORa%||I; zkTEM@vOi3zO6{Hq87&XVZ$--3BxKyf7j?SskUXRl@S(Nr+9bKThE#y@vvN18RGaja z8i^q%oNmmoO8HDxE#HKK=x&8GLMPyxD^4u8kmpN-_X0CFJ zHksq1BC@tt6&w9SSCc9=34MnUdJpwRUAIg1B0cCZx-9a8lTE_w@VaS!&=m)e`6yEC z8h|8Y&88?#<&eK1@MwA7gmM7DrvU;EyGN}_ehuo=iYutW&?pDXyd+Np!6xz;MVUL? zG-~Xs{t2Qtz%jYt@Y|jTTu?e)yvmZW9N-s=Yh9ZN;_3(8tLE*r*4QR(z?luM2zsvO z`|XXn^*%jE9|s71)q&)PE1rxP17!B5DbG`Zg&MheSq>cX)Xg zM{S6XD9?4q*l#nIXO&u>ek$r}wLtw;)`k-GQ}*)W6eaAZ5>G(!Mhm}?dNcqQF83J7 zYKy9i7UiuKTCG-SV#%}XcIvq~5ja36L{)TaWXcf0peX8S!k{WXwF*#Kab_bc4=D=O zSD`GC3WU-#=#WqWZzESg^c%*8gvX{MxPnme+&yyfl>4w7thdb38=`+7SvLQvW(?Pf zyAaV2qW>8a&^GCY2_x!+h;+DG{66~gnEzU}m;!NkMSm3Y|B+gJrIwK1qUU*i8@V1v zHp2;@$HZ7f`BXcxKu)ay?^5?j0lx!Ys$M4QGXbF5Itl*KR8`=o`g$e&iNa5_#ICF1 zzf|!PJ_-JD!mrk=$pB3dAgy9012&Ohu9J}cuQBJaM9?NJy-d+GeOzG0x^Iczjl{)R zauxYqz#zgqr1gTgHdIHFJXGafgY!|RV89^&Xo9E}Ymj);N<%1a=>m{ns^QAgnvBtZCy4owC)7>53xHbmNw}O#X;2i zn7`PGA*5T=p@cujPQ=~C!v@7l6yG5DUt-6^iI$1h;Jcc6+^2!)i;bq41%_vnl!WM& zpa_;Qh{X!q87-!`iE)qdnD$^H+3gf-&B%P7nnW(8u?R50nh(aVpW`bf?xDCu>2XZA zxFi%DqHJ0N)J39o0+<=MD2}-vhU?ZiFI-Q;)e^T&h&%m?i^Qc&zewE2;s!?)m!^zd zP*Mk_;--M-zr>vu8AW=s>3(F5QP^e@)-?@uZ^nHj1aYZ?=!F9za@}@p_o-DpVK6Q^ zo{Goi1a(6E6)4L#>4_0TuBtWmsR_yP#UkY6piYl3;34C#97*X``1r1X7HM((9v&3Q zL|RmZi$&O~_}AlkvM7;4;Vyvvruc2~%w++=Gx7h5h#=!?H6}fEtL$~bT&b(4992jpMhT`T&Lns34XuCej* zsg0998d$o10j8r9z8YmLsi3A-+MMh*BIY!;*w$lm*HIkVRUp_;D(Cx2T|Qc45Sin_ zWQ}sJO@%m=>F=haDx?9GP;EaJL5wL0^AnhB8C>5>sDWz*T#qHZ0N0&xy_9g(C|4~U zdlL=<GQ(3Iwscd>#nwH)DKiE3a6_OGOa+orG)<1$8e0SAdI2nv zU{1?{+@xSG3Sxo|@!5lp+PP^=o;e)mVDjqWuxd2Z2B|R|^#olrLFoe}7g>O8j2$)5 zIYb{KVK(PFcCLTr>VUdMSn$GepEcOO%1s-n* zv-9QLZV}iAFsoAXjIXOP`JZ)2wb#ahjdj6VTYaF$h5)B^^x}ew{BkA_0;1#-31YLB z7TEkj50lRhLwFn99KjYC(&%yrLjh+sGQ*sVbcz%yKpQik!n6y_DU~+6$LmR(hkbrS za0jhaV3F&bCRU&x#*{W}b2}le2F`<@mbKi=>p+0AL*rs#W6Ma*n8(ahGzk>I4LSh% z>n0jJ{i8@}!Z05pY$SWxOssTt{1@S0$NWu!Mj)E1i3QaN!5 zG-0wKq&F1wHBz|8R4NVuRnjmjB6`+H1e&W2G<6;ykvy-Gzz>QC4HO>AK(B+SURJ4W z3J`K?FhPbgnyx3@=0TI?gN`!uOapW|Y8*@yFuj9C0yC!?P(^ls4My73sO6?b(y_-3 zQjsE(NZfFet20+NuAk602u2u1l{pIeIA^X7oe_hq(d@Xo(8q3=ysr03Hq&KLMwWMmc~!tC9Jg zA|xv@N>k$ua?R*h>1-6zZ9~80g6RR1@5jJj5eEo>0s9S2E=U{~1&6wMjVyWml)@Am z%d067QX#Ak4Ah2#)!s&rYQ@3ie^Zezh1`6jA!p0#E9!k#q|54wY=2#39nOpD6O91} zK{R8nLuuKmWs=?L#0QhZ0x2vkC!{5jkeaz{)Ry#tt zc4a*?FVsQh71+2%2h7Yl!+;efrOeFjRYaTY;JY~He4WfuTj#E3W~&bIc&XW}&;h)M zQ0fsgXXpqYHrvg#uYt5uiw|wFQKx}!5Q9{6k&ZzoqE~ksv86gzCz|gZWbG8mzQeIn!)l9a~ zP?$6(;oXecNXIl~%!4Tx`#qSd#Rn2%AVxdK(W)ytf%b}qBG+9L z0fFA!M=d|qC~HQ3UBhap-^=75>99f%hJ|(2B|awqREL(JjmGhXMkYV40&TVe^#Fry zNpXHr8I$)SGR|5Iv0$0?>S}^VDUprg}uXm-cBz z7Zlh4dsX>g7Hfb4RF+b&dn1!y(t!dHy+orbsjlWQMhdD{TnrScqKk?<9mGn-jT}L; zZH6GQMnubR#$J}%8rlG2=3{0J;NttS=4pm5uLL85a&F@oz_`qS$fHiaT0@;1Hmpvc z&CHXqnvJw;L+$iASlTd1gyIvEmfO|TQtN8-g{VuHH|nY4gy?yu7y>)UVptjbCKhTL zkhh!+iP^&jO3Ek<=mOO5O#vk@4jN%&{^!BQ8RA+v4D8}iyUx~H2qtA4H4tJf zfFoO!RytFms0Dxp*2S*+Ac&ta5Ibtu^Y$Oq>7Z5>6^$*Qt{`V}bTD<1DtM{Jo9ZBq zKQQ&wV6dV`-V$ekJ9RJ)lhLj=>0# zGy<8S4zHwT3O@w~%4r5}9-OlCIQbk=zFZ~6tXBbpn%W_?t^rC>C+URCo%M^v@j_Y% z_#y&9qi)9TFodu1V~7boBPNTN10k9Nj2YIi@L@S~IZb4cQNIID$%G<%AV`b={j(lo zQT6Sx-d$8rYcaq~D%R)=ntV87n7_EJWJM{YUu1~g;jIsnH4?>sMh`(n1{76zOt_Bg z+NS_<1)hNkDV5*v@e-4>kxV!o(!^p^uWOsFAircepyP)@%N7+cE&%-6VerD@m5Yi1 zPmP2_>lOYH)h39o=td{c&`dRe0z>Ml4OYvJW*j`^O>>;{|lW~ zfr56Sfz}0M?pmNota)Wx_N!n-SF1vG7`x8Ep$6*~eA-g464HFC7Ag@TRGpU#K=J%Q zCBzz*fPyyJz;c6H2T$sh90odL`)#wi)oG5oT$7!{hH-@Xd4LOGRh0QJ-Y7&$|v-j9TPUS;eO{b2-^mUWdlxW#LonsG@6`GZcO8?7o40gy&x1#yxI zRW*$aUw9etcEFt&|#kjMgGDl^S~oEhw44(AyFL#QujtDC!!h zo2MA*q@U7e6aq{$Yb-!S%!TW`>N?F;E5U`D&T20&eW)bz-v=mXAtvksNM{5UzAjoo ztW%a989Qr`L>+zHsZ$dOOn+LbM1|7k>!<;r(?LrkpWUJ$oEW-s!(RaBtX6JtNc`ti@V}hWmqts}H8tI%%OEeJdoaWy#rlvCyqooSZORdMn>gMMeLkrRY{Rg~CYH*vG&~GW z1}Cn_bn8)^Komm9h=p2I5lx)K(-4@$mwOxzl^BPA2slj3`Sg}1;*cFy0gCKcEyqm; zwY)&hrwziWVQW14$3 z%6u;jm&>40Z>n;E2J@J(>P3K{y$Y)$5zFYbYAd?lA!MP*C;=l{6hfatazfa!qY6wl z?#wmF6TnImWlDUF!h`@2W{m2$**GAgyP^&qtt*9dXmkLGWlqNKHAGP7r6CZJHfp4{ z#m-=12`%m;rfoVHwNC+iyfmmoDh3RxDCX@KGvjQws?TB|EM`@cb={{1i31}#^s7t7xP1yO097u=i?Sb`Z3L%X-!;n4|9;p*JbZ5tUD=(PqwRlMmj)64u zE{1xX$mhtxC{7}&g|<`+VB;ksFyKT7#FZ`}P>VKkJ@T9a0reLhrI#qqXraXu=@g}= z7H1Ng9R2Yj}Qj^LCD94&->I+0tCi4 z8W`7C)di}n98_RtyfCI|bzvYsHxGj>XoDsM(ZURsH+QF0t~TtARiRe%{)*iWaxwR* zucH3G1S<>Z1VR`Co97$YF9-9&Km~79%%)-4e-oCM(hTvs-Aax{fjuvA^!Osr-clh7 zAfjbagI%>=3noJORDj?TF(QNwF`7p{;C?_Qvq6c9^3&6BP66fgP$W1bRe*o0fs69% z0{PyMXawhLb<2j0OiakY9Vg7$bH)T#I~sU({}p)f{L8bu9pzZSa9VLH&r74wD-lLy zE&2>BiV|{mDm4eM03+%_1o)&HAm3|M`!4w~7EU;qd~bmUd~Jiu0E{6C$|_5fx+uTY z+b9Z({m39Qv?=K2s_<_ZI4Fg_x-vK9np2bysiK+`XdqN|J2uDB_G|z+ZKDGA+5Ol- zs&+c+u&xS3Db1%zbp%2TnX139NmfqrxoJ@J@+Ji+M1Vr?Lr}G*VATP=rkvZXg(N*R zZXbZf_jN2SD)vm&8k3H;_31-7iD&=V{XOW;rGKz&_2tOBX$ z!I(oHwM7X^mPky#N%fY~CPic=Mf-_{nieARL8Y{LDiG;6E@gPo0;^lGr5d#grHodA z3L(PNs;HWOybV<*!mp{MHd|ip`ihEMv@Y|Mj!|JO$H0Y#|4KJ-UL)n*0N*&oTEY+1 zgm5U9DX4Bm3~TIeU#-20_k-qUiIdX+(zZx}U(`6EoT**C46L~(QAbE^n~e`%kn~g) z;~;DLNZc|_ARF2_QW<9c*wEjh#X{f0j}1iRx4W93c%_K1XjRjMdXz_pYY}IS2DBC_ zuwgAb3O}e3p=HOy`M>G@74Wkg3|Wgi7^vB#2K#9}SJcLo-DDuePO7__M&)wuU7BdC zMHR&`0x+IW#h5=Z_H#qPI*-fdvGY~SUzqfqccI%PLzv)3X8u(K94DAIAOJJ})&QqnvnGCtm{SO1nFRI<(4=B(w_{#!@lG z-L0gXm$H|(hSe_WsG-1V;~pWH*)ptqnoag3v{Ry18BaZ(wj$P7fwicf9E9T6A%Y4z zPBTL-sFN@2QP}BPSlGMMS|38|Fb(v5jm$=iip%XDSjLlSfe6A-k~(*=^xY?|&> z1w((0DTk*pm)7q1tvl4{UYr%U1W+rPVouM@qlf3jZ1mLE86vErRWM3Sz7`(`A=TG% zGJLTglMCgADL!^+uZ4@>3_>Ug9up&7DH+AsO#IWqGdgZY13Tp~7@ZR1-XebRicVy4 zukk5$| znDEol4-KrGD4_EO!(a+E9SY!>VTR^piq7GR;Wn9c>wXw5lOeVMC??WmJ#7Ghgv^pT z1ooRWw`647%K?hDE!p96ztJ$3>}ENTf~e-FWSy$A5~iSJCaOY&i6@zVsu0C=lk7S< z$Y5hh7ML8yBZZwLeUk7G4WMrmG9UUfnKfD_viD7m7Bh#d%Z#KbCeyQkm5iDXnnUa` zXp-2J=thfrhfyl=VYVc)BjlEW3_8pEnWrrj3vv82ui|hhpZWMTv42XUFx7g7Oo*qH@EvH<`DXAhut1hAxvfqk2Z8nj)ndlbi zS9}EiA2^=O%0yl$Nc;%=D;!T2Wh3K1;dnA9W5ceX5|T>E6h9e_!K@VjYw-W{uv`|D z4|7U!G2SdtRdGrx75yV9Gp{F}WK_l28~Bfw89Suqt)Ldt-_I$@bc(SbDdl0rUj>F{ z6B#pMngYGhKO!a{$CF_aV=v&}@|`h#$|=d72$ruAoP;Ft==aSgG9+T`p%L)2Ii8yk zu@xiW@8ftf1Y(STk%NB({|`Cd1<2EuX$r=Ozhx@LPnIWQMOh~iDSedV-{<(1VDJD4 zp0?bslfflos+d8XXct@TZ|EeVuHDP=g8)BmnS_*3D51qv*F+7Az6(H64MdYwezTR5I?95b?-);|J&1ysvy8V6kvb!<4kfa7W37G0Q* zgiD0?a6G>NkD)I!e3X3Tc)mT$_5BPeHd=VGYqWw>KAJPLiMB{_U_!%@L*Q#Up7us@ zaFV{XkHA03@w6ezSd4}vhrn;=c-jZWpmPM>r}?$n#J4!vKSd-}q@6{vX)90cVrapYl%C{x+Q5T3 zyN-lQgr6~&;-?Kd#=1tp-@@^6NVo)k2glQ18(RGl@FzK* zcGyPN*$HVRAML9#-lNg4_z3Y#X`4%IBhjz;h?H#Pc-rA&Y>a{tKSGk9 zaXf8piM*ZoojUh9r<^nbUT_+nPLlG=DY?1nXz0~O3mON*N63`TDfxaCyUl=AOZUed zPuos7uMlq}5aA!j{K0Ix^gHwHe{lSjBS?x0ieA44gBY`k?}4yHK(e@`li|9WhZ(6H z$ZE@MqD>9P8b_!xf8}`E#~3-Eugj$HeD8v{a+AL^re;n_TM;-tPG8zbr2aP?Pa6=( zU*v)Q5#{hL$J4F?4iw>k$_V)&IAx*xFq>%WfU!#Y(mn#ef#Ye50GAYKIC3bu!|}8) zAjWq$@|b9(r+);e8y8Sav~DlTSjP)aB^*!d^)Ok+e+B0h8K>ZMgj3djXPRQOC?;Ax zAKr3_vM=R$S{7&QB>t)VMGrXvc{%c!<`W(!qmIHvWVq5AMP*Z*v~E4}NMQ!YS91Jq zM5KL0n(Q1;3)0`w?{GXVMGqehi|{XV{KOID7im7u@wDhHTGPq+72|_RBFqT-ylx?- ziPnrE(+K#7IGz@V84J*t_7Nqzm*Z&>7)M_5fBOg}CMa*dnPTFLw`?qGJB{L>w%n)j zBZo-mH=L5Mn6fP~Mgoz}jvV5&u$eG4LLK0oCct+ksx;bH`1OzAXM2GZN1f%Aw2a2sEjk;xL`)0vND^8sW9*#>yokxo@r&*v6e8ktyDrN}Bf5t< zC9R4vwuip7kBDg>$47%n7oYKIXho8Se3E1)$6ItHT%sJG;&{H P2bSxxhepcy_t z6LDVPVQ9f62xnFSOlEeQ?32w24VFvrtMk66*A-bLgy^dnO*r4d z@p2JqqH@|P?LmS$yT0beQ0SIE~{u93|tTON?j*KOG|eNA$5&X0<+uaak28U=ky*_$SCs z<8K;=UpZDGmgQwPrXl!sSy@G?$=ropO-;QrbsV5qv}G)T7?r8Xg|(@r)5nu9<@ySg zX7nYJG*-4GMvonHh2?rn?wGvjn-YJpD86-3G_K@I#-*zZOdE@^bK>JMnoA$W(HU_BM=L#V3^@)+X#iW}Zca!`kS!*TY?Eg4P=#ZskFmzd zmYWlj;?v`ANGOU=OPCgSiFBznH$DfmMOQq?$V(?(iH(s7`(F@SlPX1sEn6-UTua%k z%eah!#E?wucn-fIfl{|qiemq}soVn|lrwiN;+gXwCtA8hN=%f|PMI!|=m#slmq<4! zP%fhSrx`q=?(^@N)y}F=4K2xgnd0_^s_0C7K=s@Gb`K8Xsa{-j>r~zLsw%&;LG{(! j9fFUz2HfU%;^3Fl