From a64f771d0c44248cb1bd527e735deb88c936a644 Mon Sep 17 00:00:00 2001 From: drmortalwombat <90205530+drmortalwombat@users.noreply.github.com> Date: Mon, 27 Dec 2021 22:48:42 +0100 Subject: [PATCH] more samples --- samples/memmap/charsetlo.c | 40 ++++++++++++++++++++++++++++++++++ samples/memmap/make.bat | 1 + samples/resources/charset.bin | Bin 0 -> 2048 bytes 3 files changed, 41 insertions(+) create mode 100644 samples/memmap/charsetlo.c create mode 100644 samples/resources/charset.bin diff --git a/samples/memmap/charsetlo.c b/samples/memmap/charsetlo.c new file mode 100644 index 0000000..d262d66 --- /dev/null +++ b/samples/memmap/charsetlo.c @@ -0,0 +1,40 @@ +#include +#include +#include + +// make space until 0x2000 for code and data + +#pragma region( lower, 0x0a00, 0x2000, , , {code, data} ) + +// then space for our custom charset + +#pragma section( charset, 0) + +#pragma region( charset, 0x2000, 0x2800, , , {charset} ) + +// everything beyond will be code, data, bss and heap to the end + +#pragma region( main, 0x2800, 0xa000, , , {code, data, bss, heap, stack} ) + + +#pragma data(charset) + +char charset[2048] = { + #embed "../resources/charset.bin" +} + +#pragma data(data) + +char x; +int main(void) +{ + // map the vic to the new charset + + vic_setmode(VICM_TEXT, (char *)0x0400, charset) + + for(int i=0; i<10; i++) + printf(p"%D Hello World\n", i); + + return 0; +} + diff --git a/samples/memmap/make.bat b/samples/memmap/make.bat index a763ce6..d888275 100644 --- a/samples/memmap/make.bat +++ b/samples/memmap/make.bat @@ -1,2 +1,3 @@ ..\..\bin\oscar64 largemem.c ..\..\bin\oscar64 allmem.c +..\..\bin\oscar64 charsetlo.c diff --git a/samples/resources/charset.bin b/samples/resources/charset.bin new file mode 100644 index 0000000000000000000000000000000000000000..9af869753a3e366010a84226f89dd70a1a0af604 GIT binary patch literal 2048 zcmeHFziT5$6n-pAm_o&Jh@e7+5Gsr-RUuIZF*_{6G9iS6gAhy#U5b=f1s7uNMTJRq zWtvkFOqzougkTx5%noAWgjA}G3n5gf5J4PUs2GlAdEt#@xa$6b`&gKLKfiC@8!o^5 zUPulAb+6m&00=RZgEIi&lKh_6=}Gbfm$BdgpRg`t3;;Sk+4VRGaW;?=7}OYJbpRhK zzTc{Wh)!O7B>~z&5CoqCz)$^tKLmhpe~?nTe$w%t4dhUWLq8ATY#_)4F1W`5f?*H@ z#3$umM-)Xz0RV(y|F{YOy`$hLa`9frKL?2YS|bMDAke+`;68x^)LKOT2z>k@l>h;> zS|`r+ow?-rU{Mgj^I6akzZ zbBm?VNHUj_K03P;cfB1iBMm_%Xb92=5IX^F=6j@*cmmkpflzD7nD#Q1l0M=QwEy!+ zN*SF)EX27G@!=E{|C)HE+}G6^p$=Wo^SovqqLXi4oJ0}?LB-JA%v~RLcqmHwwj!VJmKJ?h=y}5MBq1kLUt5pVJ81|n%4l#RheH`|?kPIM4Gu{|6C&o=hegB3`A6@~PhOUXRsC>qEa1@p`PuM59e< z5c5%<=ftPfUPqdy4>=-c+2nqUh|`DsA$9TTU2%n&6q{9oW<{WT?O_UnLEJ2e{1Nc@ zLn;w-Tr6&#>+Rdie=ipcw6kB#f1?~RwfQQg^6lT#^e-$dX+YfNtJNys;oKHQVdseV z>&x{$B3hc$p}Td-$-$x^Vp-UHrO`}p-i(z&yLqtI&d{iGH&+Rr>rxrq<%{&PC@|5Z zl5C^&h~}24!jfd86n%8gDDHYYUP~JCUB1$!4>559=C&wFC-LOCzXM^jPzmj2q!fL` zqiO$cTj>=hT3>0M98OK~KZsYUecjp;);KH6vRtk)z5V^=ZK_ZcRD#*7*OM&EP>tW* zOqC+Nit34s_D%LpdgpAaGfEq}4?Q+|Z!TRKTrQW(?bc$JWs}#hGR&4+yIp4F-%?)U M=K9{KKjMS