From ff5746c230cb14893b6461d554b0eb685a65eb79 Mon Sep 17 00:00:00 2001 From: Adam Greenwood-Byrne Date: Wed, 21 Apr 2021 11:17:22 +0100 Subject: [PATCH] Repurposed samples/wgt41.c to demo printf functionality --- part12-wgt/Makefile | 13 ++----------- part12-wgt/samples/wgt41.c | 33 +++++++++------------------------ 2 files changed, 11 insertions(+), 35 deletions(-) diff --git a/part12-wgt/Makefile b/part12-wgt/Makefile index c9a056b..4e67357 100644 --- a/part12-wgt/Makefile +++ b/part12-wgt/Makefile @@ -35,20 +35,11 @@ bin/invaderspr.o: bin/invader.spr bin/mousespr.o: bin/mouse.spr $(LLVMPATH)/llvm-objcopy -I binary -O elf64-littleaarch64 -B aarch64 $< $@ -bin/littlewfn.o: bin/little.wfn - $(LLVMPATH)/llvm-objcopy -I binary -O elf64-littleaarch64 -B aarch64 $< $@ - -bin/mediumwfn.o: bin/medium.wfn - $(LLVMPATH)/llvm-objcopy -I binary -O elf64-littleaarch64 -B aarch64 $< $@ - -bin/systemwfn.o: bin/system.wfn - $(LLVMPATH)/llvm-objcopy -I binary -O elf64-littleaarch64 -B aarch64 $< $@ - %.o: %.c $(LLVMPATH)/clang --target=aarch64-elf $(CLANGFLAGS) -c $< -o $@ -kernel8.img: boot/boot.o $(OFILES) bin/BCM4345C0.o bin/wgt1pal.o bin/wgt1blk.o bin/wgt2blk.o bin/lettersspr.o bin/spacespr.o bin/invaderspr.o bin/mousespr.o bin/breakspr.o bin/littlewfn.o bin/mediumwfn.o bin/systemwfn.o - $(LLVMPATH)/ld.lld -m aarch64elf -nostdlib boot/boot.o $(OFILES) bin/BCM4345C0.o bin/wgt1pal.o bin/wgt1blk.o bin/wgt2blk.o bin/lettersspr.o bin/spacespr.o bin/invaderspr.o bin/mousespr.o bin/breakspr.o bin/littlewfn.o bin/mediumwfn.o bin/systemwfn.o -T boot/link.ld -o kernel8.elf +kernel8.img: boot/boot.o $(OFILES) bin/BCM4345C0.o bin/wgt1pal.o bin/wgt1blk.o bin/wgt2blk.o bin/lettersspr.o bin/spacespr.o bin/invaderspr.o bin/mousespr.o bin/breakspr.o + $(LLVMPATH)/ld.lld -m aarch64elf -nostdlib boot/boot.o $(OFILES) bin/BCM4345C0.o bin/wgt1pal.o bin/wgt1blk.o bin/wgt2blk.o bin/lettersspr.o bin/spacespr.o bin/invaderspr.o bin/mousespr.o bin/breakspr.o -T boot/link.ld -o kernel8.elf $(LLVMPATH)/llvm-objcopy -O binary kernel8.elf kernel8.img clean: diff --git a/part12-wgt/samples/wgt41.c b/part12-wgt/samples/wgt41.c index 171da18..5b59b21 100644 --- a/part12-wgt/samples/wgt41.c +++ b/part12-wgt/samples/wgt41.c @@ -59,37 +59,22 @@ void wgt41() message[11] = '!'; message[12] = '\0'; - wgtfont little; - wgtfont medium; - - extern unsigned char _binary_bin_little_wfn_start[]; - little = &(_binary_bin_little_wfn_start[0]); - extern unsigned char _binary_bin_medium_wfn_start[]; - medium = &(_binary_bin_medium_wfn_start[0]); - wtextcolor (vgapal[15]); - - wgtprintf (0, 0, NULL, "%.15s", little); - wgtprintf (0, 8, NULL, "%.15s", medium); - wouttextxy (0, 50, medium, "Nice to see you"); - wouttextxy (0, 100, little, "Goodbye cruel world!"); -/* wgtprintf (0, 0, NULL, "%s", message); wgtprintf (0, 8, NULL, "String width : %i pixels", wgettextwidth (message, NULL)); wgtprintf (0, 16, NULL, "String height: %i pixels", wgettextheight (message, NULL)); - wgtprintf (0, 50, medium, "%s", message); - wgtprintf (0, 66, NULL, "String width : %i pixels", wgettextwidth (message, medium)); - wgtprintf (0, 74, NULL, "String height: %i pixels", wgettextheight (message, medium)); + wgtprintf(0, 32, NULL, "The color: %s", "blue"); + wgtprintf(0, 40, NULL, "First number: %d", 12345); + wgtprintf(0, 48, NULL, "Second number: %04d", 25); + wgtprintf(0, 56, NULL, "Third number: %i", 1234); + wgtprintf(0, 64, NULL, "Hexadecimal: %x", 255); + wgtprintf(0, 72, NULL, "Octal: %o", 255); + wgtprintf(0, 80, NULL, "Unsigned value: %u", 150); + wgtprintf(0, 88, NULL, "Just print the percentage sign %%", 10); - wgtprintf (0, 100, little, "%s", message); - wgtprintf (0, 116, NULL, "String width : %i pixels", wgettextwidth (message, little)); - wgtprintf (0, 124, NULL, "String height: %i pixels", wgettextheight (message, little)); -*/ - - getch (); - free (message); + free(message); } void main()