From 419bebfa81244ec6362f29e03d7cb0e1a19b3aef Mon Sep 17 00:00:00 2001 From: sparky4 Date: Mon, 13 Jul 2015 09:41:25 -0500 Subject: [PATCH] ok modified: exmmtest.exe new file: fonttes0.exe modified: makefile new file: src/fonttes0.c --- exmmtest.exe | Bin 46175 -> 46268 bytes fonttes0.exe | Bin 0 -> 24126 bytes makefile | 8 +++- src/fonttes0.c | 109 +++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 116 insertions(+), 1 deletion(-) create mode 100644 fonttes0.exe create mode 100644 src/fonttes0.c diff --git a/exmmtest.exe b/exmmtest.exe index 1d1e40b1df8f972ba7f754429f4a5254f5e099da..3099ebc42460b6488fb1d6affe1199703ad346d6 100644 GIT binary patch delta 4189 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 G$o~Pni!9;* delta 4327 zcmYk930PFu*~jm>voOHSFbmAW;0%K>G7=XwE{O{+aj21H5FtECgQ9W~WpfxLX%w`P z#_2UQ>1%Cj8X<^FaEblMlTJeuaZ6&WeoBlDSzKt+-l!i%YN%1deD67fHuF5(=l}lR z?cB4?@aJ#&s}g_o7*Do9H@`CKYvaqm=()1JN9u$}WR|FTF{5TzXO7GyhqVz~bi0OM zJf##pBVJSRd(JC~a6jS#8G*AZ2e|^bRLR5&`p87`8cc~yZ%n$6!J!RY#9B1F%PkY^~6$=__o)Zd|V_m49U zjb^lC2DsH3GfG%$`k9X+LZRm3kuEtWZq+%(9r%u(hpx>Wbw&Nxl?E;9q)26gRFB1_ zKfzzrwUGgvbl(;@E_uPDd4ZgQ6PnqRN5(XD`xPP2otyuAbAu_k6W75%^x`SG^v2NE zZvX1=J6|1Qp7b862qtQ$km*pOeaig=O&u5V4BouJ+!!nU={wBDS=w1lv)~$F$FIm&7gVGn(r{n5cn+c7wJFP@=J8MU`0#< ziG)otPmdWihbQsN^fQ5o=He(^xrbA68Scb5$va@udC4j$(=8+pIH+@yAK;wMPL9DX zT@vYn7=311ttnh(B#?oNAbRfLmJ)MD0{5lIZT`o?c6iYi!xsHgG6a|OiHV=aHG4*A zqDxfBA_5I}asBay>CU^0OZYCt8m5yKu*8r`4B$6pI81REeZnQqaEXn)SbPWf&r52j z_**UAaME4qF{G0ZL2gVVyI``>kuv=@&cIC%EjSRkhb7BnsrK9pZ~S38yM^F4mXUt= z(&!{-VZ`{@v|3BuFHOOPyjOZ+faXu6W0Hr*w82P6fQMr9xM8+yu>B6LQ!0jv*lePM z_hOxVzX3wVsi2EfO#6+QmMXzg!oO&#sbV2bW3Ts`;bE!9AD7w;PsWwd;}vJ)c>|n@ zOC_JdVB9p)2C1gXxsU4UjGdl==Qbc0J@g&Acsvf`hGEH~e>kDBGIOBt9zwB!PAIM} z&VckE_{6k{JPSh5-fb7Fkx7LM!NVIq1qiiHiV(np@3ahxEE;+SqLyklzOxiJHq);Z(T$*@V?bfm%v&!>ld2v5@+%*(cIKsCvWQUucuQM zzPZZ6ZoFw^emmYa@i^j9R~9tHTN9?R0Gtl__Rj;JVV4+zZ%;hKcz(>#89%4-)VFvZ z=HUhEx0r(GaAmfBi#I5>wWi=zwEYikJY2WYUj4u}n1Z~_D=nioo6QNgu#|3kXnIWq zUeD-yjD_}w>UnxSCn6b#MAeK$8LF3?g5zb4UMcngiwf1NOu?xbMjjw-s9tRfW+3X9 zMl%hedK}3TnHSfumqL7%D?cptnu0})ogQUNM<`p1shyNOyS(`1a6#ak=H6|YvS&}` z=M_GMRsi~Kvq=l2CDh3|{B-V4xJAgFPSL)80e^WWjI2mf_#Wpt2c(pYC9lHbl5q;# z5{`Qf@`{bHtwhIn=EANL7nuXc(KSDx<8<)q)5c$~)RDYS{mN#d{g;;Gcn+{QuN>5N z9$s}=f!}a@%3U(KVh-ralVPA-skJCMPOF%v;J9r>Qi6PKl5DO*Lbr(@{|?MwTQ

mBJhp z3CaWv#U_0bFn(Q<%%v=X+;wv^uA^^~GFK%8QS4OiRC2-zRBtQaMs*fdmlE$3;WDcB zi1r9hxP~fMm8)XK7QoqcDe@xKbro$nR+x`?g{oI2%tNtDbyg*0pg68NNyD-Ec@<2k zNR;)dI>1|z`~-W2bLhLFYF7*GDBg^GGm;aIpxPDvW;7=RQQ6csHI53^GW9d4&Z25m zH>z31GzeBC$ve~zO?U+3BXRI*n?`V;7*UU4yc?BGW7Dwszej?p(jiOKxL{^wW)2%c z9|ojq>^k8(isPE&F+vc!LLQ10hHiu4 zMezZOaLV;)m|LAF8#Ww(l4^7QHFT{#Io6eGqFBdv~~ZDc<}>s?Z*8#B(Wk)4^(per)~opAvph~KB;%=l$=b_&O%UT7JNKGZAJ6fx zICZ>TM$h1Lcmme}Uj=+V#?mwS@JJrRyF}QE^lPg&o>uSDLXFR1HpGu(C4~3T7ayO< ze7Ci*&*#vk#?K7<2GBP-J{>;wO(M=tMXf_cZgi%+Fgr2&D?)FQdVESy@%ruM;F9)LA<{?*m>Rg`7msii>$wWawrC96ugzEQBS zqO`=fprU%!I&J};tL*IM`Ti0gR^rZ&nxj>?G~Ddy&Ma;8d;LD{?_ty9D=npF0q#?p zTpx^iW1)gqs-+Q;>VQD&(>r?fu&S}8cMSeX_G zgQhU3EiJ1nui|it=D%SgYoX|kKa*_`w;PBAZ|!y4V;ws`nKJKSxVLh2x`)j>L7Nvngu z;ed)(J28QX=m|K8PapiX)y)qj!cgmM%{C{;$$5D)mgjom5A8~6D@RCpgz0epqe7vP6BH-9`CQuo-29y0eh$Sf$^g{9RR(Ph}!JkisjqP@l1+TZeH7~fS`{&c> z=(n=5US>o&osy3k8D``>BReU<;ic?#ka4hRuS1iYMk_SqiLFw&;CibO2hp^5j>h!} zYwV$Q%&blpBi}Pp#E6fPyi6K%1oHM8HRl*nqJ2=oGjf-a&`)TLmSrVPpp`X?DM@Ct znFBBGbMw6u;K)8Z;o#gp2l*BJ-#$07fqB0h_5A$~=lhdr+R7(s+5-A`_z7<@Ic(WK zRRd_q`Fl&Kb0%x|J|k1ID49gt@!w2_q5Y|30yqxP-J5a1ja#c6^KjpFTLf!Usd~2 zo8b%8xo{t!&w;JOL3YEe4hR3?H27(Uoxd>+Hg?$YKZV!PGaI__xe>lV|B2}^+>xqz zd@g^;ty lLJq<=2b=gm@V`D}g?VqA;rEBu@!Cn9F^AuZkbi=${vXRF(vbiF diff --git a/fonttes0.exe b/fonttes0.exe new file mode 100644 index 0000000000000000000000000000000000000000..b90962ee7747240e39e2affb14318827347f5c67 GIT binary patch literal 24126 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 literal 0 HcmV?d00001 diff --git a/makefile b/makefile index b8b69f0f..cfe71842 100644 --- a/makefile +++ b/makefile @@ -25,7 +25,7 @@ WCPULIB=$(SRCLIB)wcpu$(DIRSEP) 16LIBOBJS = 16_in.$(OBJ) 16_mm.$(OBJ) wcpu.$(OBJ) 16_head.$(OBJ) scroll16.$(OBJ) 16text.$(OBJ) 16_ca.$(OBJ) GFXLIBOBJS = modex16.$(OBJ) bitmap.$(OBJ) planar.$(OBJ) -all: 16.exe test.exe pcxtest.exe test2.exe palettec.exe maptest.exe fmemtest.exe fonttest.exe inputest.exe exmmtest.exe +all: 16.exe test.exe pcxtest.exe test2.exe palettec.exe maptest.exe fmemtest.exe fonttest.exe inputest.exe exmmtest.exe fonttes0.exe # #executables @@ -46,6 +46,9 @@ test2.exe: test2.$(OBJ) gfx.lib fonttest.exe: fonttest.$(OBJ) 16.lib wcl $(FLAGS) fonttest.$(OBJ) 16.lib +fonttes0.exe: fonttes0.$(OBJ) 16.lib + wcl $(FLAGS) fonttes0.$(OBJ) 16.lib + inputest.exe: inputest.$(OBJ) 16.lib wcl $(FLAGS) inputest.$(OBJ) 16.lib @@ -109,6 +112,9 @@ fmemtest.$(OBJ): $(SRC)fmemtest.c fonttest.$(OBJ): $(SRC)fonttest.c wcl -c $(SRC)fonttest.c +fonttes0.$(OBJ): $(SRC)fonttes0.c + wcl -c $(SRC)fonttes0.c + inputest.$(OBJ): $(SRC)inputest.c wcl $(FLAGS) -c $(SRC)inputest.c diff --git a/src/fonttes0.c b/src/fonttes0.c new file mode 100644 index 00000000..9b5b89c4 --- /dev/null +++ b/src/fonttes0.c @@ -0,0 +1,109 @@ +/* Project 16 Source Code~ + * Copyright (C) 2012-2015 sparky4 & pngwen & andrius4669 + * + * This file is part of Project 16. + * + * Project 16 is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * Project 16 is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see , or + * write to the Free Software Foundation, Inc., 51 Franklin Street, + * Fifth Floor, Boston, MA 02110-1301 USA. + * + */ +#include +#include +#include "lib/types.h" +#include "lib/16text.h" + +void main(int argc, char *argv[]) +{ + int i; + int j; + char l[16]; + char c; + word s, o, t, w; + word addr = (word) l; + textInit(); + + //print the addresses of the fonts + printf("ROM FONT Addresses\n"); + for(i=0; i<4; i++) { + printf("%d: %x:%x\n", i, romFonts[i].seg, romFonts[i].off); + } + + printf("*argv[1]=%d\n", *argv[1]); + + printf("Character: "); + scanf("%c", &c); + + if(*argv[1]!=1) + switch(*argv[1]) + { + case 48: + t=0; + w=14; + break; + case 49: + t=1; + w=8; + break; + case 50: + t=2; + w=8; + break; + case 51: + t=3; + w=16; + break; + default: + t=3; + w=16; + break; + } + else + { + t=3; + w=16; + } + + + s=romFonts[t].seg; + o=romFonts[t].off; + + //load the letter 'A' + __asm { + MOV DI, addr + MOV SI, o + MOV ES, s + SUB AH, AH + MOV AL, c ; the letter + MOV CX, w + MUL CX + ADD SI, AX ;the address of charcter + L1: MOV AX, ES:SI + MOV DS:DI, AX + INC SI + INC DI + DEC CX + JNZ L1 + } + + //render the letter in ascii art + for(i=0; i>=1; + } + printf("\n"); + } +} -- 2.39.5