From c485cfedd8be66726950f8a0ccd06ba2a0e495f7 Mon Sep 17 00:00:00 2001 From: Michel vespier Date: Mon, 16 Mar 2020 23:23:47 +0100 Subject: [PATCH] =?UTF-8?q?=09nouveau=20fichier=C2=A0:=20CPC.g1a=20=09nouv?= =?UTF-8?q?eau=20fichier=C2=A0:=20Makefile=20=09nouveau=20fichier=C2=A0:?= =?UTF-8?q?=20assets-cg/icon-cg-sel.png=20=09nouveau=20fichier=C2=A0:=20as?= =?UTF-8?q?sets-cg/icon-cg-uns.png=20=09nouveau=20fichier=C2=A0:=20assets-?= =?UTF-8?q?fx/icon-fx.png=20=09nouveau=20fichier=C2=A0:=20assets-fx/img/1.?= =?UTF-8?q?png=20=09nouveau=20fichier=C2=A0:=20assets-fx/img/10.png=20=09n?= =?UTF-8?q?ouveau=20fichier=C2=A0:=20assets-fx/img/11.png=20=09nouveau=20f?= =?UTF-8?q?ichier=C2=A0:=20assets-fx/img/12.png=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20assets-fx/img/13.png=20=09nouveau=20fichier=C2=A0:=20?= =?UTF-8?q?assets-fx/img/14.png=20=09nouveau=20fichier=C2=A0:=20assets-fx/?= =?UTF-8?q?img/15.png=20=09nouveau=20fichier=C2=A0:=20assets-fx/img/2.png?= =?UTF-8?q?=20=09nouveau=20fichier=C2=A0:=20assets-fx/img/3.png=20=09nouve?= =?UTF-8?q?au=20fichier=C2=A0:=20assets-fx/img/4.png=20=09nouveau=20fichie?= =?UTF-8?q?r=C2=A0:=20assets-fx/img/5.png=20=09nouveau=20fichier=C2=A0:=20?= =?UTF-8?q?assets-fx/img/6.png=20=09nouveau=20fichier=C2=A0:=20assets-fx/i?= =?UTF-8?q?mg/7.png=20=09nouveau=20fichier=C2=A0:=20assets-fx/img/8.png=20?= =?UTF-8?q?=09nouveau=20fichier=C2=A0:=20assets-fx/img/9.png=20=09nouveau?= =?UTF-8?q?=20fichier=C2=A0:=20assets-fx/img/Porte.png=20=09nouveau=20fich?= =?UTF-8?q?ier=C2=A0:=20assets-fx/img/Rebond.png=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20assets-fx/img/Vitesse.png=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20assets-fx/img/t0.png=20=09nouveau=20fichier=C2=A0:=20?= =?UTF-8?q?assets-fx/img/t1.png=20=09nouveau=20fichier=C2=A0:=20assets-fx/?= =?UTF-8?q?img/t10.png=20=09nouveau=20fichier=C2=A0:=20assets-fx/img/t11.p?= =?UTF-8?q?ng=20=09nouveau=20fichier=C2=A0:=20assets-fx/img/t12.png=20=09n?= =?UTF-8?q?ouveau=20fichier=C2=A0:=20assets-fx/img/t13.png=20=09nouveau=20?= =?UTF-8?q?fichier=C2=A0:=20assets-fx/img/t14.png=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20assets-fx/img/t15.png=20=09nouveau=20fichier=C2=A0:?= =?UTF-8?q?=20assets-fx/img/t2.png=20=09nouveau=20fichier=C2=A0:=20assets-?= =?UTF-8?q?fx/img/t3.png=20=09nouveau=20fichier=C2=A0:=20assets-fx/img/t4.?= =?UTF-8?q?png=20=09nouveau=20fichier=C2=A0:=20assets-fx/img/t5.png=20=09n?= =?UTF-8?q?ouveau=20fichier=C2=A0:=20assets-fx/img/t6.png=20=09nouveau=20f?= =?UTF-8?q?ichier=C2=A0:=20assets-fx/img/t7.png=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20assets-fx/img/t8.png=20=09nouveau=20fichier=C2=A0:=20?= =?UTF-8?q?assets-fx/img/t9.png=20=09nouveau=20fichier=C2=A0:=20build-fx/C?= =?UTF-8?q?PC.bin=20=09nouveau=20fichier=C2=A0:=20build-fx/CPC.elf=20=09no?= =?UTF-8?q?uveau=20fichier=C2=A0:=20build-fx/assets/img/1.png.o=20=09nouve?= =?UTF-8?q?au=20fichier=C2=A0:=20build-fx/assets/img/10.png.o=20=09nouveau?= =?UTF-8?q?=20fichier=C2=A0:=20build-fx/assets/img/11.png.o=20=09nouveau?= =?UTF-8?q?=20fichier=C2=A0:=20build-fx/assets/img/12.png.o=20=09nouveau?= =?UTF-8?q?=20fichier=C2=A0:=20build-fx/assets/img/13.png.o=20=09nouveau?= =?UTF-8?q?=20fichier=C2=A0:=20build-fx/assets/img/14.png.o=20=09nouveau?= =?UTF-8?q?=20fichier=C2=A0:=20build-fx/assets/img/15.png.o=20=09nouveau?= =?UTF-8?q?=20fichier=C2=A0:=20build-fx/assets/img/2.png.o=20=09nouveau=20?= =?UTF-8?q?fichier=C2=A0:=20build-fx/assets/img/3.png.o=20=09nouveau=20fic?= =?UTF-8?q?hier=C2=A0:=20build-fx/assets/img/4.png.o=20=09nouveau=20fichie?= =?UTF-8?q?r=C2=A0:=20build-fx/assets/img/5.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/6.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/7.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/8.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/9.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/Porte.png.o=20=09nouveau=20fichie?= =?UTF-8?q?r=C2=A0:=20build-fx/assets/img/Rebond.png.o=20=09nouveau=20fich?= =?UTF-8?q?ier=C2=A0:=20build-fx/assets/img/Vitesse.png.o=20=09nouveau=20f?= =?UTF-8?q?ichier=C2=A0:=20build-fx/assets/img/t0.png.o=20=09nouveau=20fic?= =?UTF-8?q?hier=C2=A0:=20build-fx/assets/img/t1.png.o=20=09nouveau=20fichi?= =?UTF-8?q?er=C2=A0:=20build-fx/assets/img/t10.png.o=20=09nouveau=20fichie?= =?UTF-8?q?r=C2=A0:=20build-fx/assets/img/t11.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/t12.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/t13.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/t14.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/t15.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/t2.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/t3.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/t4.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/t5.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/t6.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/t7.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/t8.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/assets/img/t9.png.o=20=09nouveau=20fichier?= =?UTF-8?q?=C2=A0:=20build-fx/map=20=09nouveau=20fichier=C2=A0:=20build-fx?= =?UTF-8?q?/src/main.c.d=20=09nouveau=20fichier=C2=A0:=20build-fx/src/main?= =?UTF-8?q?.c.o=20=09nouveau=20fichier=C2=A0:=20project.cfg=20=09nouveau?= =?UTF-8?q?=20fichier=C2=A0:=20src/main.c?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CPC.g1a | Bin 0 -> 22232 bytes Makefile | 194 ++++++++ assets-cg/icon-cg-sel.png | Bin 0 -> 8388 bytes assets-cg/icon-cg-uns.png | Bin 0 -> 4629 bytes assets-fx/icon-fx.png | Bin 0 -> 7429 bytes assets-fx/img/1.png | Bin 0 -> 588 bytes assets-fx/img/10.png | Bin 0 -> 593 bytes assets-fx/img/11.png | Bin 0 -> 593 bytes assets-fx/img/12.png | Bin 0 -> 587 bytes assets-fx/img/13.png | Bin 0 -> 593 bytes assets-fx/img/14.png | Bin 0 -> 594 bytes assets-fx/img/15.png | Bin 0 -> 595 bytes assets-fx/img/2.png | Bin 0 -> 591 bytes assets-fx/img/3.png | Bin 0 -> 591 bytes assets-fx/img/4.png | Bin 0 -> 587 bytes assets-fx/img/5.png | Bin 0 -> 591 bytes assets-fx/img/6.png | Bin 0 -> 595 bytes assets-fx/img/7.png | Bin 0 -> 593 bytes assets-fx/img/8.png | Bin 0 -> 583 bytes assets-fx/img/9.png | Bin 0 -> 591 bytes assets-fx/img/Porte.png | Bin 0 -> 647 bytes assets-fx/img/Rebond.png | Bin 0 -> 1497 bytes assets-fx/img/Vitesse.png | Bin 0 -> 1447 bytes assets-fx/img/t0.png | Bin 0 -> 609 bytes assets-fx/img/t1.png | Bin 0 -> 605 bytes assets-fx/img/t10.png | Bin 0 -> 605 bytes assets-fx/img/t11.png | Bin 0 -> 599 bytes assets-fx/img/t12.png | Bin 0 -> 601 bytes assets-fx/img/t13.png | Bin 0 -> 596 bytes assets-fx/img/t14.png | Bin 0 -> 598 bytes assets-fx/img/t15.png | Bin 0 -> 592 bytes assets-fx/img/t2.png | Bin 0 -> 607 bytes assets-fx/img/t3.png | Bin 0 -> 602 bytes assets-fx/img/t4.png | Bin 0 -> 603 bytes assets-fx/img/t5.png | Bin 0 -> 597 bytes assets-fx/img/t6.png | Bin 0 -> 598 bytes assets-fx/img/t7.png | Bin 0 -> 593 bytes assets-fx/img/t8.png | Bin 0 -> 606 bytes assets-fx/img/t9.png | Bin 0 -> 601 bytes build-fx/CPC.bin | Bin 0 -> 21720 bytes build-fx/CPC.elf | Bin 0 -> 34400 bytes build-fx/assets/img/1.png.o | Bin 0 -> 500 bytes build-fx/assets/img/10.png.o | Bin 0 -> 504 bytes build-fx/assets/img/11.png.o | Bin 0 -> 504 bytes build-fx/assets/img/12.png.o | Bin 0 -> 504 bytes build-fx/assets/img/13.png.o | Bin 0 -> 504 bytes build-fx/assets/img/14.png.o | Bin 0 -> 504 bytes build-fx/assets/img/15.png.o | Bin 0 -> 504 bytes build-fx/assets/img/2.png.o | Bin 0 -> 500 bytes build-fx/assets/img/3.png.o | Bin 0 -> 500 bytes build-fx/assets/img/4.png.o | Bin 0 -> 500 bytes build-fx/assets/img/5.png.o | Bin 0 -> 500 bytes build-fx/assets/img/6.png.o | Bin 0 -> 500 bytes build-fx/assets/img/7.png.o | Bin 0 -> 500 bytes build-fx/assets/img/8.png.o | Bin 0 -> 500 bytes build-fx/assets/img/9.png.o | Bin 0 -> 500 bytes build-fx/assets/img/Porte.png.o | Bin 0 -> 480 bytes build-fx/assets/img/Rebond.png.o | Bin 0 -> 484 bytes build-fx/assets/img/Vitesse.png.o | Bin 0 -> 484 bytes build-fx/assets/img/t0.png.o | Bin 0 -> 472 bytes build-fx/assets/img/t1.png.o | Bin 0 -> 472 bytes build-fx/assets/img/t10.png.o | Bin 0 -> 472 bytes build-fx/assets/img/t11.png.o | Bin 0 -> 472 bytes build-fx/assets/img/t12.png.o | Bin 0 -> 472 bytes build-fx/assets/img/t13.png.o | Bin 0 -> 472 bytes build-fx/assets/img/t14.png.o | Bin 0 -> 472 bytes build-fx/assets/img/t15.png.o | Bin 0 -> 472 bytes build-fx/assets/img/t2.png.o | Bin 0 -> 472 bytes build-fx/assets/img/t3.png.o | Bin 0 -> 472 bytes build-fx/assets/img/t4.png.o | Bin 0 -> 472 bytes build-fx/assets/img/t5.png.o | Bin 0 -> 472 bytes build-fx/assets/img/t6.png.o | Bin 0 -> 472 bytes build-fx/assets/img/t7.png.o | Bin 0 -> 472 bytes build-fx/assets/img/t8.png.o | Bin 0 -> 472 bytes build-fx/assets/img/t9.png.o | Bin 0 -> 472 bytes build-fx/map | 739 ++++++++++++++++++++++++++++++ build-fx/src/main.c.d | 1 + build-fx/src/main.c.o | Bin 0 -> 3260 bytes project.cfg | 84 ++++ src/main.c | 98 ++++ 80 files changed, 1116 insertions(+) create mode 100644 CPC.g1a create mode 100644 Makefile create mode 100644 assets-cg/icon-cg-sel.png create mode 100644 assets-cg/icon-cg-uns.png create mode 100644 assets-fx/icon-fx.png create mode 100644 assets-fx/img/1.png create mode 100644 assets-fx/img/10.png create mode 100644 assets-fx/img/11.png create mode 100644 assets-fx/img/12.png create mode 100644 assets-fx/img/13.png create mode 100644 assets-fx/img/14.png create mode 100644 assets-fx/img/15.png create mode 100644 assets-fx/img/2.png create mode 100644 assets-fx/img/3.png create mode 100644 assets-fx/img/4.png create mode 100644 assets-fx/img/5.png create mode 100644 assets-fx/img/6.png create mode 100644 assets-fx/img/7.png create mode 100644 assets-fx/img/8.png create mode 100644 assets-fx/img/9.png create mode 100644 assets-fx/img/Porte.png create mode 100644 assets-fx/img/Rebond.png create mode 100644 assets-fx/img/Vitesse.png create mode 100644 assets-fx/img/t0.png create mode 100644 assets-fx/img/t1.png create mode 100644 assets-fx/img/t10.png create mode 100644 assets-fx/img/t11.png create mode 100644 assets-fx/img/t12.png create mode 100644 assets-fx/img/t13.png create mode 100644 assets-fx/img/t14.png create mode 100644 assets-fx/img/t15.png create mode 100644 assets-fx/img/t2.png create mode 100644 assets-fx/img/t3.png create mode 100644 assets-fx/img/t4.png create mode 100644 assets-fx/img/t5.png create mode 100644 assets-fx/img/t6.png create mode 100644 assets-fx/img/t7.png create mode 100644 assets-fx/img/t8.png create mode 100644 assets-fx/img/t9.png create mode 100755 build-fx/CPC.bin create mode 100755 build-fx/CPC.elf create mode 100644 build-fx/assets/img/1.png.o create mode 100644 build-fx/assets/img/10.png.o create mode 100644 build-fx/assets/img/11.png.o create mode 100644 build-fx/assets/img/12.png.o create mode 100644 build-fx/assets/img/13.png.o create mode 100644 build-fx/assets/img/14.png.o create mode 100644 build-fx/assets/img/15.png.o create mode 100644 build-fx/assets/img/2.png.o create mode 100644 build-fx/assets/img/3.png.o create mode 100644 build-fx/assets/img/4.png.o create mode 100644 build-fx/assets/img/5.png.o create mode 100644 build-fx/assets/img/6.png.o create mode 100644 build-fx/assets/img/7.png.o create mode 100644 build-fx/assets/img/8.png.o create mode 100644 build-fx/assets/img/9.png.o create mode 100644 build-fx/assets/img/Porte.png.o create mode 100644 build-fx/assets/img/Rebond.png.o create mode 100644 build-fx/assets/img/Vitesse.png.o create mode 100644 build-fx/assets/img/t0.png.o create mode 100644 build-fx/assets/img/t1.png.o create mode 100644 build-fx/assets/img/t10.png.o create mode 100644 build-fx/assets/img/t11.png.o create mode 100644 build-fx/assets/img/t12.png.o create mode 100644 build-fx/assets/img/t13.png.o create mode 100644 build-fx/assets/img/t14.png.o create mode 100644 build-fx/assets/img/t15.png.o create mode 100644 build-fx/assets/img/t2.png.o create mode 100644 build-fx/assets/img/t3.png.o create mode 100644 build-fx/assets/img/t4.png.o create mode 100644 build-fx/assets/img/t5.png.o create mode 100644 build-fx/assets/img/t6.png.o create mode 100644 build-fx/assets/img/t7.png.o create mode 100644 build-fx/assets/img/t8.png.o create mode 100644 build-fx/assets/img/t9.png.o create mode 100644 build-fx/map create mode 100644 build-fx/src/main.c.d create mode 100644 build-fx/src/main.c.o create mode 100644 project.cfg create mode 100644 src/main.c diff --git a/CPC.g1a b/CPC.g1a new file mode 100644 index 0000000000000000000000000000000000000000..5e832ec2ca08db85e3e6803ab74582123fb1bde7 GIT binary patch literal 22232 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 literal 0 HcmV?d00001 diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..94fd233 --- /dev/null +++ b/Makefile @@ -0,0 +1,194 @@ +#! /usr/bin/make -f +# Default Makefile for fxSDK add-ins. This file was probably copied there by +# the [fxsdk] program. +#--- + +# +# Configuration +# + +include project.cfg + +# Compiler flags +CFLAGSFX := $(CFLAGS) $(CFLAGS_FX) $(INCLUDE) +CFLAGSCG := $(CFLAGS) $(CFLAGS_CG) $(INCLUDE) + +# Linker flags +LDFLAGSFX := $(LDFLAGS) $(LDFLAGS_FX) +LDFLAGSCG := $(LDFLAGS) $(LDFLAGS_CG) + +# Dependency list generation flags +depflags = -MMD -MT $@ -MF $(@:.o=.d) -MP +# ELF to binary flags +BINFLAGS := -R .bss -R .gint_bss + +# G1A and G3A generation flags +NAME_G1A ?= $(NAME) +NAME_G3A ?= $(NAME) +G1AF := -i "$(ICON_FX)" -n "$(NAME_G1A)" --internal="$(INTERNAL)" +G3AF := -n basic:"$(NAME_G3A)" -i uns:"$(ICON_CG_UNS)" -i sel:"$(ICON_CG_SEL)" + +ifeq "$(TOOLCHAIN_FX)" "" +TOOLCHAIN_FX := sh3eb-elf +endif + +ifeq "$(TOOLCHAIN_CG)" "" +TOOLCHAIN_CG := sh4eb-elf +endif + +# fxconv flags +FXCONVFX := --fx --toolchain=$(TOOLCHAIN_FX) +FXCONVCG := --cg --toolchain=$(TOOLCHAIN_CG) + +# +# File listings +# + +NULL := +TARGET := $(subst $(NULL) $(NULL),-,$(NAME)) + +ifeq "$(TARGET_FX)" "" +TARGET_FX := $(TARGET).g1a +endif + +ifeq "$(TARGET_CG)" "" +TARGET_CG := $(TARGET).g3a +endif + +ELF_FX := build-fx/$(shell basename -s .g1a $(TARGET_FX)).elf +BIN_FX := $(ELF_FX:.elf=.bin) + +ELF_CG := build-cg/$(shell basename -s .g3a $(TARGET_CG)).elf +BIN_CG := $(ELF_CG:.elf=.bin) + +# Source files +src := $(wildcard src/*.[csS] \ + src/*/*.[csS] \ + src/*/*/*.[csS] \ + src/*/*/*/*.[csS]) +assets-fx := $(wildcard assets-fx/*/*) +assets-cg := $(wildcard assets-cg/*/*) + +# Object files +obj-fx := $(src:%=build-fx/%.o) \ + $(assets-fx:assets-fx/%=build-fx/assets/%.o) +obj-cg := $(src:%=build-cg/%.o) \ + $(assets-cg:assets-cg/%=build-cg/assets/%.o) + +# Additional dependencies +deps-fx := $(ICON_FX) +deps-cg := $(ICON_CG_UNS) $(ICON_CG_SEL) + +# All targets +all := +ifneq "$(wildcard build-fx)" "" +all += all-fx +endif +ifneq "$(wildcard build-cg)" "" +all += all-cg +endif + +# +# Build rules +# + +all: $(all) + +all-fx: $(TARGET_FX) +all-cg: $(TARGET_CG) + +$(TARGET_FX): $(obj-fx) $(deps-fx) + @ mkdir -p $(dir $@) + $(TOOLCHAIN_FX)-gcc -o $(ELF_FX) $(obj-fx) $(CFLAGSFX) $(LDFLAGSFX) + $(TOOLCHAIN_FX)-objcopy -O binary $(BINFLAGS) $(ELF_FX) $(BIN_FX) + fxg1a $(BIN_FX) -o $@ $(G1AF) + +$(TARGET_CG): $(obj-cg) $(deps-cg) + @ mkdir -p $(dir $@) + $(TOOLCHAIN_CG)-gcc -o $(ELF_CG) $(obj-cg) $(CFLAGSCG) $(LDFLAGSCG) + $(TOOLCHAIN_CG)-objcopy -O binary $(BINFLAGS) $(ELF_CG) $(BIN_CG) + mkg3a $(G3AF) $(BIN_CG) $@ + +# C sources +build-fx/%.c.o: %.c + @ mkdir -p $(dir $@) + $(TOOLCHAIN_FX)-gcc -c $< -o $@ $(CFLAGSFX) $(depflags) +build-cg/%.c.o: %.c + @ mkdir -p $(dir $@) + $(TOOLCHAIN_CG)-gcc -c $< -o $@ $(CFLAGSCG) $(depflags) + +# Assembler sources +build-fx/%.s.o: %.s + @ mkdir -p $(dir $@) + $(TOOLCHAIN_FX)-gcc -c $< -o $@ +build-cg/%.s.o: %.s + @ mkdir -p $(dir $@) + $(TOOLCHAIN_CG)-gcc -c $< -o $@ + +# Preprocessed assembler sources +build-fx/%.S.o: %.S + @ mkdir -p $(dir $@) + $(TOOLCHAIN_FX)-gcc -c $< -o $@ $(INCLUDE) +build-cg/%.S.o: %.S + @ mkdir -p $(dir $@) + $(TOOLCHAIN_CG)-gcc -c $< -o $@ $(INCLUDE) + +# Images +build-fx/assets/img/%.o: assets-fx/img/% + @ mkdir -p $(dir $@) + fxconv -i $< -o $@ $(FXCONVFX) name:img_$(basename $*) $(IMG.$*) +build-cg/assets/img/%.o: assets-cg/img/% + @ mkdir -p $(dir $@) + fxconv -i $< -o $@ $(FXCONVCG) name:img_$(basename $*) $(IMG.$*) + +# Fonts +build-fx/assets/fonts/%.o: assets-fx/fonts/% + @ mkdir -p $(dir $@) + fxconv -f $< -o $@ $(FXCONVFX) name:font_$(basename $*) $(FONT.$*) +build-cg/assets/fonts/%.o: assets-cg/fonts/% + @ mkdir -p $(dir $@) + fxconv -f $< -o $@ $(FXCONVCG) name:font_$(basename $*) $(FONT.$*) + +# Binaries +build-fx/assets/bin/%.o: assets-fx/bin/% + @ mkdir -p $(dir $@) + fxconv -b $< -o $@ $(FXCONVFX) name:bin_$(basename $*) $(BIN.$*) +build-cg/assets/bin/%.o: assets-cg/bin/% + @ mkdir -p $(dir $@) + fxconv -b $< -o $@ $(FXCONVCG) name:bin_$(basename $*) $(BIN.$*) + +# +# Cleaning and utilities +# + +# Dependency information +-include $(shell find build* -name *.d 2> /dev/null) +build-fx/%.d: ; +build-cg/%.d: ; +.PRECIOUS: build-fx build-cg build-fx/%.d build-cg/%.d %/ + +clean-fx: + @ rm -rf build-fx/ +clean-cg: + @ rm -rf build-cg/ + +distclean-fx: clean-fx + @ rm -f $(TARGET_FX) +distclean-cg: clean-cg + @ rm -f $(TARGET_CG) + +clean: clean-fx clean-cg + +distclean: distclean-fx distclean-cg + +install-fx: $(TARGET_FX) + p7 send -f $< +install-cg: $(TARGET_CG) + @ while [[ ! -h /dev/Prizm1 ]]; do sleep 0.25; done + @ while ! mount /dev/Prizm1; do sleep 0.25; done + @ rm -f /mnt/prizm/$< + @ cp $< /mnt/prizm + @ umount /dev/Prizm1 + @- eject /dev/Prizm1 + +.PHONY: all all-fx all-cg clean distclean install-fx install-cg diff --git a/assets-cg/icon-cg-sel.png b/assets-cg/icon-cg-sel.png new file mode 100644 index 0000000000000000000000000000000000000000..7137b504cfd44f62f3105ce7a203b9100a557d0f GIT binary patch literal 8388 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 ag#Q8hHNm}t`+-sb0000 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 LNkvXXu0mjfMjhGA literal 0 HcmV?d00001 diff --git a/assets-fx/icon-fx.png b/assets-fx/icon-fx.png new file mode 100644 index 0000000000000000000000000000000000000000..c92f12afab0af9f7b3d8e2bec76a1dc5cc9c08a1 GIT binary patch literal 7429 zcmV+g9s1&lP) zaB^>EX>4U6ba`-PAZ2)IW&i+q+O3;uc3ZiUg#Tj|y#&m|axk9LJLu*27r3M(yKLF@ zx}_>pqR4xJ93mn!L9_qozmNGZzDmv6#Kc3(+42=zY`*hDwVz-6_4qvJY`p)zzufCz zXTJWS``4d6&jcRB^J|H(=fmsy_l5GuBNzI`A6)wB4dLVd{_BlP|G2ULVMU?2ZNGli z&;QR^^_>0euE&fS^0TSu7Uq2!UO2E)xNpmR7yeKDT<&+{yV`E2i+0&*2j9~*=UuSJ zMYoLW?zrt1kJC-o82$EzNAIT(_qiI1Z+-?FT!{L1$CuE;3N`pJ{SF~S6a2?o+`VtR z_nWSA=jC{*cU;WzmT$k!pI-1c-{(w=jhvG)yT7(#U0y-JGUPe^%gb_T$c+2Vb1 zE(Tw5P-o>nL_hF=OUW-5>0<~P-&Ep=d-I;+?rVMW&-0`T{z)N+f^S;rI4j0P{FGRU zp`JpDDW#lBs;Q-Ja>y~KoO8*_xn4qvC6!!Csil=(Lya}nTuZIB)!uvyq-1Kjl~!A8 zy>rhVO;4S7cV5x^@FR>k(#WHXI@;)y@R@O@nP-`Gw%M0oVa1hJUS-wQR^M(DN@mBM zcHU*z-F833+6gC~bn+>uo_6|&*Ir)z$M?VRntOT8Ur*_E<-=<{TZ%4pFX4nUNj}44 zJ~}*Jb(H08ojSwWHIG#SPvsDb{z8uN zI#9!}G<359c$HOLH(1AE))o5hMX=aP0`U5DW%gRPm0P#&Im>A5@uc|Ljs5y)o*zcV zAcGy3yD`7m*a2(zE?Bs?)}G0beYtA!Y|&9SF4&G_SHBI%LOas-+!XA;L7 zz(3vflP1CM>RjiLA~U7GzS!^WX#V}Ze|>B7+l}x7*lCR%=HIz9!)ksw0iS z8cU)j*|rgWWj*1?vg`m29LrMlVUR(RI^eyTJP1EhlJIMB+s3L0KkEoT`wqXcOFY%4 z?b9kFwc}PgEQ};yyC>MlZ_`K|@(A3B$M>2K^x~RzwYfGO0Je7?yN<_j{$)Ts;d(qF z^;1cK7z)5f1Y`Q+a%;sOHybFJFryP*!gsTJdqU$a;KFuc9Af$)3`*Yxp)*N>vkj}T zVXrqD;3%%yOI?9zVJ!hduxns?xv!D^b)+y_tUJ_wHW(RU*71P;?*Ux9Kb~@<1}9jR+hsR z6pP)|mAf<#7}iRiW3q7*CRW>E`&8JF)r;7e03?WhGL}}f=IC(+(Ht*!aaAQq^`$B; z?5-)AW%c8+Nk1q_LfQ@y*V+H!E{k9oh_f-h(qmVm$LGeau^ayJZsfYU6kDu4O$MI7HqAwFuA-Mm?^5A%aiBm^X9oLv=wb0@;+NF-@e6{0o-Yis_JtxuMHyIJQL^`N zUC;Sw8cDa{iF5rzUJ7H6Zfg%~o~MmAGeVa@xA0X3AGiYvo{m+7)^t~EW?Mr_JYW+b z$$?ATPkzivce4EJJgdc3q3qRe-Xo~Fzxb?AT>XW}x%+(dp^B!1w2uiWg>%?!lVlL>Es?`y{(62VlIeo$bhd;^4Q zYIha*Aot1MOcDgcueMZaE>Nq)3FAlLoGf2;*bG`FR7(J9v5te1Ba#J+%>(Epm1YY0 z8O8%s-pE!D?d)&u|=Zag5nnG47P+D9N0 zoS>Z~jF;!()pj@1fLvmXlme+DY?((4Gblub@?^q_CP%Q@9#%2Hzu25ZHQ^)&N;Oi9 z``b-ii-B6g=s-UyvbGP)?Lzt!=tL%^Xa(!boE7VMNCDP|i~B`1tQQodtVc9XNLK|2 z*X05cembIpCEFT;h=knetAhY&+qIJ6{5eJgEK{f%kx%6UOgaTqy!=Oifj2kZyGuxW zm=@U)FBkx11;5udCP?ETQIg%+u@BT+dG%3VtSr&QT_LK{mX8DLvK`~tmP9Jy)Wfhl zI*hwV+Lz+rp=9k7OeE0_CvhneLHM>CTQwR7=G;F--%*>a$nScWUt1U0+jwkwE(QJE z*KRxX!}ef$smCe=%mp(dlx+74{~#gLI{b{=6KGU(jyRO4M-2g8t^${EOmsn*(p72m zC=E$CZGO6RNa$lT?szUdi?ag4u7Ek6vKM4jpn}PL`lsNc3wubo;C`A;Qab0>Xz0;1ud zcv?WQ8wdzpDXTNtR8>$3sJ!5y%qRLuZ!v}vALYyg0jwx5sCdY_K z6xkCHKV#yLkZAsdiCRN$Ln&elw176R%byrm$Reib`8D;0KDtsA32ODOPa(SEhhn^s z%Acb3BOPZPuh1B(3mw&@LD(TnvB4v%NTIi=LZ00S%Ls`lh3>}R5)onPo`RwgkfCO`}m7KtzHk%~g z#F`knA6u!vx{B)a=kw-8FPbQ!)g5O-1P(*Zls1n-kgGieO%TYWzhs@=TgxEN} z;>I9qI};r?CrC?)Mm2kiBaI}Ukq0=25*;ZL3Np#yLaAf2X#2{Z2dPNi!gITkPZeQU z=gb|>rw;a(%K#*#IT^07Tc}*PrkPpZbmY9MNrFWL##>r8Fbbalft4D&LVAxnkEYjz*2`)CkTMOWne0_Yc8-6Dl#ZD*@bqy zr1~F;44^*j3xQw4CZVKKqN?aEP-tdI!;W>UE3zxM($xiOYS+31%n|viL-d_E4Bc-_ z5tNbKq3wkM)<)$-LZr# z+(sH16-Hu*)jbe@M#nFzVNY3S>!FfhUl)lkfOs~A@I=zD!){wYvC^$B=G(5egyAm z_p|kW!8m;dW8PlWY9?k}T7D#baaDp9dOs%JloW~pk zWhJPspHS;yxgs|L@Zsw0J)OF5EV<<;Lb5;zd05o{c$68c8{qhD&1?Qt^!`}$b|G_o zla5n%qG~YFG-4e9d_2O*_scqz1;lurHnfpk<;z*K_hx>Tej=c<#FsV$3`uNTvGd&m{ zGdKnUM}p+m!u3QouMr}|x7u3d0BW1JYLBBYZ%&FsqKTI)5(mm;B)Bk9V{3_SiFhFg zTt^iHeSEf!Lwic1S0_Sf?H^fu#SQvi4O#WrFRZ=51VnC2lRorPe&>Detuh_eHLi8Q$b#NWZQ@uj#5%tHBLb_Vnba{ zWZxPZL(E!vI))H(+?%v+lOp$pGN6f$X)r~A zjguPCooKHS*d(&MgtU=@2DW}1`hOAm$elAy03hGpL=-$}O?=(5oh-y2PC)ClXyQ3n zz$d8tL^Vl_sI#Mjd6aDUA3IP-P(3tIeiATLkYpXJ35@3A=~k%qPYDg5kt(_nN?VyRC7T zC@fQhQsFWJYk{?8p!pFI+uu0Ey(l;o2sYt?>Lx6NI6g;@Yd-O)jsug0cW1y#30?9! zW*! zy+}MCa`RzTvab>~5~vY0x%w1QcJ(P4I2>N3YyujRp_r!198%%2y*DON^K8tX#JbrS zH4z)ru!vo;HX_h4APn{_xvYyeH+CV3p4O(PGcfTz?%B#ZfWcWcqRN?}WrHijN{4)4Qg)S-nuO*~$69_r;)WqQr((vDdhBsG2_C_CfHs zeGto?gs6JI?SpzNM$NqdZg<-UqE1#c9kh_C*}6K4jCSu%zcfzs?^GqYJE}tqXMYEFPf^q-S=xk#(Un2QTum1;{7g2 zo#f)pkXjIOAa7&ZB8X3U3;yT+A#dx`*n7)cr0{5xw-V9WI1LBYOnu=GHqO!mFZ>C& z3GThW_=D&I4{x-USxA=BA0*#Mzwhhbj6@sSkn%BBa z#X5^-iUrGTHRMhT3&o|mDR>*Fj(8XZlX{d?>F}Muhcpnv8`?)!xQW8v)@tBzH4}yI zYhak&Q+N7jURcaiuqw=NE8-=&RO5^8ueD#T2vxps@t_gctMYwm2lJlEe4k16HNJeD z@g88l94$8^v|vCrS||hi+_zBgF!H1nNn5?j;vB!-#_aA+{W1;dbckjp6>Eys?VDjY z6r-r`jfIKJ#Dz&y9U}r;qs}Qc-qkX-poT)rdQ7`hq_neB=NX;OEKt*GdWR#6`hfFs z_Y;O1y#$HUb&pUc#~r%YpblG7cd-OPa7H67myOOU;Il-%-UjY>;BT;kUiFQrbEMYd zOSS#xQORY(_$Uxm(fr(f9=9c8-wo&Alw`QxsD*d0Y^A9mSxp)gL^1d>)B+~Fo{HSY4jl(Z81ilCYXPEnHpJf;viUySvb>SZYD#wAFa%GIX+5s9R#MrTlJp*Yq! zasbicb;5|+E~;$=Nok^r*S8KGDtDjI)8y_sra|>{k7*357-j!P8b32YCFJjuAin!u zn%;crcRj-1kPN5Q*NpHNcY1F0^hRBny1Isp%8=^!tDQ#~1+eK6-QCD@J z&1fC(SaY`9j3z6v_tT6XMD6Ri0%evs-KtW>#iSzZ&Quf4CujRO=rNzuBrPK;_by2J10uo@4?|7eTvKgv5{|6{#XTXRP*hT@WIIGS`*H{Ex^zeAchxnF zv~OX_C+?wf);*Yn1ong`$(3C5x1ENtR}zRk(yvm=e9fu%h}Q{=J_o!-Ct^XMo$c?9 zZhjo?{=#jq=;-Ht1m+IKyN>R?Pr!6fQByvSz_i=xP0taSdxk_uU`lde`hq`lZg8If z-oNmjmFctq`IB|B&Z|jKUeKPNk-UB70R*8u2x+HV>5>K*xE_{qU~Z*BuA|{pqcdaF zc^YdEUW#f0DLFB*;slV$;iG;f2~&?@$}% z5#j2XYG7rnW@o)=A?Y4QAW_Vmw+)~J=iswW=fG@W6J=$BdCooIQFPMtQ^Nd8!I-87 zIU*cqT54WIh9)RZXWtyfs?M`FcE|f?WP9`CoE@+bz&dZE^&Ubrw;<2sb+C%!`Xy|1 z4Dp6H2|CK1`w&x+a78(7Dla?%HYcfO1*O5bJ5C*sT1RIUhDODGb|4)yqIF5czDoQ< z9!|VQ^k5ww(rR!oS%u0%MgUo8;~Rqo;Y4gLyooz4Sf}~}p{^rFZ3d7c7(76>k}S{o z;1+XSECff|dZt^#!hsqgzJiq~kNV^Qu@UPG^%hO)&}Krk-}4BP8tO3K^9VW_ z6b}UC@LUSbIP`}?P)DE#+TflHB7NlbtdqrRvplTq%ggT5-C>!^gBYIjV3|9w(|}SK zg4w7*I`zStB;R`VV!k7(d$Mc9Wgx5h6y6%Z9UX_7&m82L&-`?a*A*0kKN6j}pMtp6 z>Sel1bN0!I+w=IA#NEePE@wW%;uRFnVXhsYR+ci-<%jV-;%loy@R~f{b2A%Fg2gL~ zHTU2Q>kMpaQt!roQ4Swq`ggW|R?jmu0pEs`(x@#j9gmEo2Lh5Gwv@w;I)#~eG(9XFQ*(1V^fAW#?mfb;dWq_QTZv=b?Q#(&uFm2I`FTl8cj$No(pjEOltf zaS?gmMD57mL(&jOq(ZL=VUNmU!B*#lN%hmav||RP_pDFojUIKTZWF$hazuSd4b4st zN%L8)>Bm97=J;2Of0?G7^BScH_W*FUG@f$&TMN8I&9_K;jE*~8$CUru1vqqXLlk z<>vH0SN1DyVE!Zyqz%S?wApvM)^r@dUuS2|hxb+fJ^t4@y8GtG|8MWBh<|yX%iw<< z8~WmXADL1u@6YPvkI=M-~ zpqw_W9s;;(H1x1_vW2m-4;K_e@IrE#((ERJmnQuRm^Di!E{`}dezq_0nfB8|WKV8oJjcfnra^~+N<@?K- ze;ateyPWyY;`pDJGvE5+A)@slsE)y*P}cJtZ{TfEM10PSVM$2vUxDC({W4 z91S=*5V^k$%2A$;HRt_vZg8O9mCP~la+~AVI8|uDub-HePtM zS09OrEX>4Tx04R}tkv&MmKpe$iQ$>*$1v`j1WT@g`K~%(1 zt5Adrp;l;lcSTOipZjx! z)ttqEfJi*c4AUmwAfDc|4bJ<-5muB{;&b9LlP*a7$aTfzH_io@1)do()2Vsl2(egb zW2KE*(bR~ih@+~eQ@)V#SmnIMSu0mr^Pc>Lp`5<5%ypVWNMI35kRU=q6(y8mBSx!E ziiH&I$9?>Ru3sXTLaq`RITlcX2HEw4|H1EWt^DMKmlTQvoiC2_F${F=0*#vEd>=bb z;{*sk16O*>U#SB#pQP7XTJ#9$-3BhMTbi;5TM_TK(I)9mjDZR2vKFMJBN00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000z8L_t&-S7Ttn142VX|KpJ! aPEr8TMFIcIh|K)}0000EX>4Tx04R}tkv&MmKpe$iQ$>*$1v`j1WT@g`K~%(1 zt5Adrp;l;lcSTOipZjx! z)ttqEfJi*c4AUmwAfDc|4bJ<-5muB{;&b9LlP*a7$aTfzH_io@1)do()2Vsl2(egb zW2KE*(bR~ih@+~eQ@)V#SmnIMSu0mr^Pc>Lp`5<5%ypVWNMI35kRU=q6(y8mBSx!E ziiH&I$9?>Ru3sXTLaq`RITlcX2HEw4|H1EWt^DMKmlTQvoiC2_F${F=0*#vEd>=bb z;{*sk16O*>U#SB#pQP7XTJ#9$-3BhMTbi;5TM_TK(I)9mjDZR2vKFMJBN00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000?DL_t&-S7Qhb4gJr60|4c4 f$P6oCP!IqB_AUhc-EX>4Tx04R}tkv&MmKpe$iQ$>*$1v`j1WT@g`K~%(1 zt5Adrp;l;lcSTOipZjx! z)ttqEfJi*c4AUmwAfDc|4bJ<-5muB{;&b9LlP*a7$aTfzH_io@1)do()2Vsl2(egb zW2KE*(bR~ih@+~eQ@)V#SmnIMSu0mr^Pc>Lp`5<5%ypVWNMI35kRU=q6(y8mBSx!E ziiH&I$9?>Ru3sXTLaq`RITlcX2HEw4|H1EWt^DMKmlTQvoiC2_F${F=0*#vEd>=bb z;{*sk16O*>U#SB#pQP7XTJ#9$-3BhMTbi;5TM_TK(I)9mjDZR2vKFMJBN00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000?DL_t&-S7Qhb4gJr61K^Xx fp=BrvgS-g<-Bktq_eokd00000NkvXXu0mjf7&`ea literal 0 HcmV?d00001 diff --git a/assets-fx/img/12.png b/assets-fx/img/12.png new file mode 100644 index 0000000000000000000000000000000000000000..4cc4278431d2742c0f7cb8cfd8cb860a34adfca7 GIT binary patch literal 587 zcmV-R0<`^!P)EX>4Tx04R}tkv&MmKpe$iQ$>*$1v`j1WT@g`K~%(1 zt5Adrp;l;lcSTOipZjx! z)ttqEfJi*c4AUmwAfDc|4bJ<-5muB{;&b9LlP*a7$aTfzH_io@1)do()2Vsl2(egb zW2KE*(bR~ih@+~eQ@)V#SmnIMSu0mr^Pc>Lp`5<5%ypVWNMI35kRU=q6(y8mBSx!E ziiH&I$9?>Ru3sXTLaq`RITlcX2HEw4|H1EWt^DMKmlTQvoiC2_F${F=0*#vEd>=bb z;{*sk16O*>U#SB#pQP7XTJ#9$-3BhMTbi;5TM_TK(I)9mjDZR2vKFMJBN00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000w7L_t&-S7Qhb4gJqB`~e|v Z0sutd1O4Y<>*fFe002ovPDHLkV1hC5_U8Zq literal 0 HcmV?d00001 diff --git a/assets-fx/img/13.png b/assets-fx/img/13.png new file mode 100644 index 0000000000000000000000000000000000000000..595f05a4b84dae3183d2da16cfd09aae6123b54e GIT binary patch literal 593 zcmV-X0EX>4Tx04R}tkv&MmKpe$iQ$>*$1v`j1WT@g`K~%(1 zt5Adrp;l;lcSTOipZjx! z)ttqEfJi*c4AUmwAfDc|4bJ<-5muB{;&b9LlP*a7$aTfzH_io@1)do()2Vsl2(egb zW2KE*(bR~ih@+~eQ@)V#SmnIMSu0mr^Pc>Lp`5<5%ypVWNMI35kRU=q6(y8mBSx!E ziiH&I$9?>Ru3sXTLaq`RITlcX2HEw4|H1EWt^DMKmlTQvoiC2_F${F=0*#vEd>=bb z;{*sk16O*>U#SB#pQP7XTJ#9$-3BhMTbi;5TM_TK(I)9mjDZR2vKFMJBN00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000?DL_t&-S7Qhb4gJr61K^Xx fp=GcN6Y>fG6)Xk&aLmtU00000NkvXXu0mjf4Zisi literal 0 HcmV?d00001 diff --git a/assets-fx/img/14.png b/assets-fx/img/14.png new file mode 100644 index 0000000000000000000000000000000000000000..0da2e2543b4d23b2b83d365ee7a927944e8a90a7 GIT binary patch literal 594 zcmV-Y0EX>4Tx04R}tkv&MmKpe$iQ$>*$1v`j1WT@g`K~%(1 zt5Adrp;l;lcSTOipZjx! z)ttqEfJi*c4AUmwAfDc|4bJ<-5muB{;&b9LlP*a7$aTfzH_io@1)do()2Vsl2(egb zW2KE*(bR~ih@+~eQ@)V#SmnIMSu0mr^Pc>Lp`5<5%ypVWNMI35kRU=q6(y8mBSx!E ziiH&I$9?>Ru3sXTLaq`RITlcX2HEw4|H1EWt^DMKmlTQvoiC2_F${F=0*#vEd>=bb z;{*sk16O*>U#SB#pQP7XTJ#9$-3BhMTbi;5TM_TK(I)9mjDZR2vKFMJBN00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000_EL_t&-S7Qhb4gJr60|4c4 g$P77Q0^a-&05Smv`g&yjPyhe`07*qoM6N<$g6aqOX8-^I literal 0 HcmV?d00001 diff --git a/assets-fx/img/15.png b/assets-fx/img/15.png new file mode 100644 index 0000000000000000000000000000000000000000..25e00b1dd861a81e531a1b185fb2dee1e7ecf4f8 GIT binary patch literal 595 zcmV-Z0<8UsP)EX>4Tx04R}tkv&MmKpe$iQ$>*$1v`j1WT@g`K~%(1 zt5Adrp;l;lcSTOipZjx! z)ttqEfJi*c4AUmwAfDc|4bJ<-5muB{;&b9LlP*a7$aTfzH_io@1)do()2Vsl2(egb zW2KE*(bR~ih@+~eQ@)V#SmnIMSu0mr^Pc>Lp`5<5%ypVWNMI35kRU=q6(y8mBSx!E ziiH&I$9?>Ru3sXTLaq`RITlcX2HEw4|H1EWt^DMKmlTQvoiC2_F${F=0*#vEd>=bb z;{*sk16O*>U#SB#pQP7XTJ#9$-3BhMTbi;5TM_TK(I)9mjDZR2vKFMJBN00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000|FL_t&-S7Qhb4gJr61K^Xx hp=GcNEX>4Tx04R}tkv&MmKpe$iQ$>*$1v`j1WT@g`K~%(1 zt5Adrp;l;lcSTOipZjx! z)ttqEfJi*c4AUmwAfDc|4bJ<-5muB{;&b9LlP*a7$aTfzH_io@1)do()2Vsl2(egb zW2KE*(bR~ih@+~eQ@)V#SmnIMSu0mr^Pc>Lp`5<5%ypVWNMI35kRU=q6(y8mBSx!E ziiH&I$9?>Ru3sXTLaq`RITlcX2HEw4|H1EWt^DMKmlTQvoiC2_F${F=0*#vEd>=bb z;{*sk16O*>U#SB#pQP7XTJ#9$-3BhMTbi;5TM_TK(I)9mjDZR2vKFMJBN00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000+BL_t&-S7Ttn142VX@yHGv dDWEt10|4$C0{+;xJx2fl002ovPDHLkV1gLc_wfJ# literal 0 HcmV?d00001 diff --git a/assets-fx/img/3.png b/assets-fx/img/3.png new file mode 100644 index 0000000000000000000000000000000000000000..9882f8deb07aac322574267f1090691ac2144060 GIT binary patch literal 591 zcmV-V0EX>4Tx04R}tkv&MmKpe$iQ$>*$1v`j1WT@g`K~%(1 zt5Adrp;l;lcSTOipZjx! z)ttqEfJi*c4AUmwAfDc|4bJ<-5muB{;&b9LlP*a7$aTfzH_io@1)do()2Vsl2(egb zW2KE*(bR~ih@+~eQ@)V#SmnIMSu0mr^Pc>Lp`5<5%ypVWNMI35kRU=q6(y8mBSx!E ziiH&I$9?>Ru3sXTLaq`RITlcX2HEw4|H1EWt^DMKmlTQvoiC2_F${F=0*#vEd>=bb z;{*sk16O*>U#SB#pQP7XTJ#9$-3BhMTbi;5TM_TK(I)9mjDZR2vKFMJBN00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000+BL_t&-S7Ttn142VX|KpJ! dE>a+G0sz%P1O4Y=o_YWP002ovPDHLkV1gR2_zM64 literal 0 HcmV?d00001 diff --git a/assets-fx/img/4.png b/assets-fx/img/4.png new file mode 100644 index 0000000000000000000000000000000000000000..44cde5daac359351b35bd3a5ef7bf633047dcdf0 GIT binary patch literal 587 zcmV-R0<`^!P)EX>4Tx04R}tkv&MmKpe$iQ$>*$1v`j1WT@g`K~%(1 zt5Adrp;l;lcSTOipZjx! z)ttqEfJi*c4AUmwAfDc|4bJ<-5muB{;&b9LlP*a7$aTfzH_io@1)do()2Vsl2(egb zW2KE*(bR~ih@+~eQ@)V#SmnIMSu0mr^Pc>Lp`5<5%ypVWNMI35kRU=q6(y8mBSx!E ziiH&I$9?>Ru3sXTLaq`RITlcX2HEw4|H1EWt^DMKmlTQvoiC2_F${F=0*#vEd>=bb z;{*sk16O*>U#SB#pQP7XTJ#9$-3BhMTbi;5TM_TK(I)9mjDZR2vKFMJBN00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000w7L_t&-S7Trp86Y$?^glkI Z0suVB0spz?R;~a5002ovPDHLkV1gPz_0#|W literal 0 HcmV?d00001 diff --git a/assets-fx/img/5.png b/assets-fx/img/5.png new file mode 100644 index 0000000000000000000000000000000000000000..23b5b154c09041a9c5a914a9652ac3d497051e31 GIT binary patch literal 591 zcmV-V0EX>4Tx04R}tkv&MmKpe$iQ$>*$1v`j1WT@g`K~%(1 zt5Adrp;l;lcSTOipZjx! z)ttqEfJi*c4AUmwAfDc|4bJ<-5muB{;&b9LlP*a7$aTfzH_io@1)do()2Vsl2(egb zW2KE*(bR~ih@+~eQ@)V#SmnIMSu0mr^Pc>Lp`5<5%ypVWNMI35kRU=q6(y8mBSx!E ziiH&I$9?>Ru3sXTLaq`RITlcX2HEw4|H1EWt^DMKmlTQvoiC2_F${F=0*#vEd>=bb z;{*sk16O*>U#SB#pQP7XTJ#9$-3BhMTbi;5TM_TK(I)9mjDZR2vKFMJBN00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000+BL_t&-S7Ttn142VX|KpJ! dN>YTp0ssvd1N{rkPL}`x002ovPDHLkV1f-f_dNgr literal 0 HcmV?d00001 diff --git a/assets-fx/img/6.png b/assets-fx/img/6.png new file mode 100644 index 0000000000000000000000000000000000000000..6ec02cba2b0be9688392e19d2ae214dbec781f34 GIT binary patch literal 595 zcmV-Z0<8UsP)EX>4Tx04R}tkv&MmKpe$iQ$>*$1v`j1WT@g`K~%(1 zt5Adrp;l;lcSTOipZjx! z)ttqEfJi*c4AUmwAfDc|4bJ<-5muB{;&b9LlP*a7$aTfzH_io@1)do()2Vsl2(egb zW2KE*(bR~ih@+~eQ@)V#SmnIMSu0mr^Pc>Lp`5<5%ypVWNMI35kRU=q6(y8mBSx!E ziiH&I$9?>Ru3sXTLaq`RITlcX2HEw4|H1EWt^DMKmlTQvoiC2_F${F=0*#vEd>=bb z;{*sk16O*>U#SB#pQP7XTJ#9$-3BhMTbi;5TM_TK(I)9mjDZR2vKFMJBN00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000|FL_t&-S7Ttn142VX@yHG- hDWF&W<8m-a4ge|b1pMBWwWEX>4Tx04R}tkv&MmKpe$iQ$>*$1v`j1WT@g`K~%(1 zt5Adrp;l;lcSTOipZjx! z)ttqEfJi*c4AUmwAfDc|4bJ<-5muB{;&b9LlP*a7$aTfzH_io@1)do()2Vsl2(egb zW2KE*(bR~ih@+~eQ@)V#SmnIMSu0mr^Pc>Lp`5<5%ypVWNMI35kRU=q6(y8mBSx!E ziiH&I$9?>Ru3sXTLaq`RITlcX2HEw4|H1EWt^DMKmlTQvoiC2_F${F=0*#vEd>=bb z;{*sk16O*>U#SB#pQP7XTJ#9$-3BhMTbi;5TM_TK(I)9mjDZR2vKFMJBN00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000?DL_t&-S7Ttn142VX|KpJ! fN>cc|0+Is&5flac8$Nxb00000NkvXXu0mjf1(Em# literal 0 HcmV?d00001 diff --git a/assets-fx/img/8.png b/assets-fx/img/8.png new file mode 100644 index 0000000000000000000000000000000000000000..037a411fb01427577e00cf033b43cbfc9815c1c7 GIT binary patch literal 583 zcmV-N0=WH&P)EX>4Tx04R}tkv&MmKpe$iQ$>*$1v`j1WT@g`K~%(1 zt5Adrp;l;lcSTOipZjx! z)ttqEfJi*c4AUmwAfDc|4bJ<-5muB{;&b9LlP*a7$aTfzH_io@1)do()2Vsl2(egb zW2KE*(bR~ih@+~eQ@)V#SmnIMSu0mr^Pc>Lp`5<5%ypVWNMI35kRU=q6(y8mBSx!E ziiH&I$9?>Ru3sXTLaq`RITlcX2HEw4|H1EWt^DMKmlTQvoiC2_F${F=0*#vEd>=bb z;{*sk16O*>U#SB#pQP7XTJ#9$-3BhMTbi;5TM_TK(I)9mjDZR2vKFMJBN00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000k3L_t&-S7Qhb4gJqB3IGWl V0srlGJ=6dI002ovPDHLkV1hb)^Sb~5 literal 0 HcmV?d00001 diff --git a/assets-fx/img/9.png b/assets-fx/img/9.png new file mode 100644 index 0000000000000000000000000000000000000000..1267e89b3c5f95cea6edd309c6d41e99359f7014 GIT binary patch literal 591 zcmV-V0EX>4Tx04R}tkv&MmKpe$iQ$>*$1v`j1WT@g`K~%(1 zt5Adrp;l;lcSTOipZjx! z)ttqEfJi*c4AUmwAfDc|4bJ<-5muB{;&b9LlP*a7$aTfzH_io@1)do()2Vsl2(egb zW2KE*(bR~ih@+~eQ@)V#SmnIMSu0mr^Pc>Lp`5<5%ypVWNMI35kRU=q6(y8mBSx!E ziiH&I$9?>Ru3sXTLaq`RITlcX2HEw4|H1EWt^DMKmlTQvoiC2_F${F=0*#vEd>=bb z;{*sk16O*>U#SB#pQP7XTJ#9$-3BhMTbi;5TM_TK(I)9mjDZR2vKFMJBN00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000+BL_t&-S7Qhb4gJr61K^Xx dp=GEF0|41s1O3L~gem|4002ovPDHLkV1g^O`0D@w literal 0 HcmV?d00001 diff --git a/assets-fx/img/Porte.png b/assets-fx/img/Porte.png new file mode 100644 index 0000000000000000000000000000000000000000..0433078c2b83ae1e332e26da807cb158042fccca GIT binary patch literal 647 zcmV;20(kw2P)EX>4Tx04R}tkv&MmKpe$iTcs+MDs~WY$WWauh>AFB z6^c+H)C#RSm|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx6k5c1aNLh~ z_a1le0DryARI_6oP&La)CE`LRyD9`<5kMH-=trN#Onpuilkgm0_we!cF2=LG&;2=i zm7K`{pFljzbi*RvAfDc|bk6(45muBG;&b9LgDyz?$aUG}H_ioz{X8>bq*L?65n`dx z#&R38qM;H`5l0nOqkMnHWrgz=XSG~q&3p0}hH~1nGy0}1FmMa> zthv24_i_3Fq^Yaq4RCM>j20++-Q(R|?Y;ebrrF;Q03&jFp81Om00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{002)(L_t&-SA|Z24Ztu6(*3AM z`XocLC9}y|62*Wmx|xCXi>sZ8FaV=kdqEGNApXu=fOjLboSEXP61%%8;)L<-8qtqO h{&R-3_H@H8;s)1~ShdMKi)jD=002ovPDHLkV1miU41WLs literal 0 HcmV?d00001 diff --git a/assets-fx/img/Rebond.png b/assets-fx/img/Rebond.png new file mode 100644 index 0000000000000000000000000000000000000000..a008ad6cb0b583b2c6d4196f086932a5510dd845 GIT binary patch literal 1497 zcmV;~1t$85P) zaB^>EX>4U6ba`-PAZ2)IW&i+q+U1u~lH({0hTl2G9sx;!#Bs2Js=dJ;e||7=Cz+n< zbi3zaYE9WVLY9O+$w^%M@89nJ!NJ~w3sEiQlst}*L*{}T^T$!WNnedj!$i`!x6`LnyJGGgK;Bz|7) zh*FNT;1pa*;?Tn=B2yBCW`4Z`GK7H0^U7`WXEq;lbDMv0xL3Bd$Uc_A?QWHU`)T2+ z3{qQid7_ujdCJ}M0>$@nPo{SfX*eD8LqsK?KKwn_arR!V_jc^AgoG`pwW-@q$W4^J zZleh1V+liXM%?Qh8N<*nJ8G=@-ESB>Wnv)i6sS_6?x@Y1op!_+xUphp-dU#1z#{Vw z`~=h()LA7<6+;p1C>4Q}dv_}qntt>2x0AthC8#pN7|qK0V7OP5em8m_y+q_z&(Hyw zM;juHL2g{31|rl~QsYeUZ9Ep_0xLimXPONgEPgvoY?0n-OD1T6Uc`JfH)%bdABF;a zM+8Fx1U{jmD3MoYB|;(%fC_nI3A}*-#mE&wau7*igC>A$hi8cXMz-NKwl3am)fn?)Nwy?!5ZMxZ(x3Z&r_OQo2?Yi5Z_fok^MIYBxwOY-! zG-@cN7Fu*IHEq^%D;>4grH3AS>e{X6UQTL@>QCbn)M!!TNowfnNexofV|KG%U}P`@ zF%AUcItZYkc`)-vA@CqKnEA};ipU5u4mOp1p~S&SXvDG8$?lEZr?|Nke#?ztCFcgZ zi{vIZ*Ww+wcc|6zwY^VbM;DHqdO`PLy;)%^<6E@2+s)PaZ#UGp`?NgF?$og>X4u^K zm?`YO#|(1xl9?CWxb~6Gi*DStINEcvzZ%Ee>^`5?_uaVfG4ov6UpDiY>R7zZ@nHdBeXn8~h+U9SitjDCn1mYHSDNm3HNKn>;IhCoBW5}^ zPaGi@3vH~lF)NxH@f2}X)pW`iG9Ig(w>WF%Dr?@8zc7^3SC+X>a|j76VhIv;q@aot z%CHfmRVT$liuU6^{z2C-kxL<035*;Is6d14`oaI;cehr4a>7dr#evQj$N3lmx^{s^ z&2heu9j9>u1fPK`z2&deftgRzYb`B$1cbMNi|dxA>;acMz`&Cso3bkfX$tu~@P0<$ zlm+^3fu1$5x8^=hAAmGq4;3LS`e=bE z0000PbVXQnLvL+uWo~o;Lvm$dbY)~9cWHEJAV*0}P*;Ht7XSbNCrLy>R2b7^U?2wk z|No!i|Ns9C3=9naAzU~gp$1LjKNJrh6Yv25!%auIYc$k100000NkvXXu0mjfr$DpZ literal 0 HcmV?d00001 diff --git a/assets-fx/img/Vitesse.png b/assets-fx/img/Vitesse.png new file mode 100644 index 0000000000000000000000000000000000000000..e1afaec7bfb7359a72e8cb9558a35ded10e387f9 GIT binary patch literal 1447 zcmV;Y1z7rtP) zaB^>EX>4U6ba`-PAZ2)IW&i+q+U=KHb|WbahTmDmECES?#BwMu=kyMG`SU~JYCGvp zJC~=K6vt2&APIdEPF(-_W4M3tuusW_sFrd{9#6<2bHR)G^C_z*A69=pw>f&0yK90W z5{$Cfr!DW0GuHE#*R7{O9`6+8z9){yiLw>3Z38!twjrU@fNxt-*@}d><#2vKw&j#f z?~kze%_GuvRNF@jqMTwP4d?@V)s*pW?1Lh1Z8|zC=eaK)r=FMJ-EAquC+RT=^=%s61a`$qA;_q=Urgt7`xD4}yM_Df${vPZ6jL~e2ex9y`gd?YYsM|@%EtI1j zGYQtVgf^8%yz6Qi%}_2CIo5pj2U?{}48(&1H7Yb5_4QJz!pFd!6(e(HSuz8Q%oV5! zz|m;1N|q)D^cAThkn$LA`$EfZUiK;(EH}bZCMctoIe%&HnMH54F=j0hxm`1K0_ItU zaAT62J(ht8jUCju0(@(a3Aw=v5XKc|!vTvwP8CO_U%4d@wc%(xQJMvK~(x-+RYpPnU=2{vzX{h6tnl@{>l};V0 z)I*Q1r>@<4?qwj?hKw-cNJEE>Jjz9FQ+?ImL5(&wUZmzay{JK|dX8@83zSS|AjW|} zTqgk}G*4#UCXE+}{|d$R1a@ zk8OKBy07qNj_xbGd4I6qFylUdsApsJq+0hC-uyX69|*bo45_zc^f9%=eT6sw%WGud zuMqre>iz{1Mb-CB{b$Mm00D$)LqkwWLqi~Na&Km7Y-IodD3N`UJxIeq9K~N#MUhGe zD~JeYs7@9{MI5yXMW_&Jg;pI*F8zWg4M~cNqu^R_@ME#+;Nq;SgR3A2etKF$!-8NH+xR}YVie0Y=B8+~B7?zo3%t=xbzT@j2 z0lwbFc$WXUKS!^cvltK%iD#K%+Qb{g)0?)zd7n7Kin2<4PCRDP1&JTIu6X>$x!|(E zGb3g?HBTHN77J~xv@t818u1iyRMm9K7cw5JoVPe@{Kvs2UJ+pv{{R0EmqccxsriqMO}q(M0RYj_9ph6Dk0<~D002ovPDHLkV1neV BhwlIY literal 0 HcmV?d00001 diff --git a/assets-fx/img/t0.png b/assets-fx/img/t0.png new file mode 100644 index 0000000000000000000000000000000000000000..6e2ad34f86bd470fa94a95a55494391921159880 GIT binary patch literal 609 zcmV-n0-pVeP)EX>4Tx04R}tkv&MmKpe$iTcs+MDs~WY$WWauh>AFB z6^c+H)C#RSm|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx6k5c1aNLh~ z_a1le0DryARI_6oP&La)CE`LRyD9`<5kMH-=trN#Onpuilkgm0_we!cF2=LG&;2=i zm7K`{pFljzbi*RvAfDc|bk6(45muBG;&b9LgDyz?$aUG}H_ioz{X8>bq*L?65n`dx z#&R38qM;H`5l0nOqkMnHWrgz=XSG~q&3p0}hH~1nGy0}1FmMa> zthv24_i_3Fq^Yaq4RCM>j20++-Q(R|?Y;ebrrF;Q03&jFp81Om00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{001dTL_t&-S7Qtf4gJr62e5$T vfQqmxS-pBS0~1ymB*DR;0PG8pYjFVpyp0DFiSm#K00000NkvXXu0mjfb}{oe literal 0 HcmV?d00001 diff --git a/assets-fx/img/t1.png b/assets-fx/img/t1.png new file mode 100644 index 0000000000000000000000000000000000000000..2cd4d6ec168080b1f7ee8fd0a37e44f4b8fc0f67 GIT binary patch literal 605 zcmV-j0;2tiP)EX>4Tx04R}tkv&MmKpe$iTcs+MDs~WY$WWauh>AFB z6^c+H)C#RSm|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx6k5c1aNLh~ z_a1le0DryARI_6oP&La)CE`LRyD9`<5kMH-=trN#Onpuilkgm0_we!cF2=LG&;2=i zm7K`{pFljzbi*RvAfDc|bk6(45muBG;&b9LgDyz?$aUG}H_ioz{X8>bq*L?65n`dx z#&R38qM;H`5l0nOqkMnHWrgz=XSG~q&3p0}hH~1nGy0}1FmMa> zthv24_i_3Fq^Yaq4RCM>j20++-Q(R|?Y;ebrrF;Q03&jFp81Om00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{001RPL_t&-S7Qtf4gC+q4A{Wx r)vFnput^|`4G9G-AQywYg9`uv9nJ?4O>M7a00000NkvXXu0mjfb^!0q literal 0 HcmV?d00001 diff --git a/assets-fx/img/t10.png b/assets-fx/img/t10.png new file mode 100644 index 0000000000000000000000000000000000000000..1dc09a499a04fac53bef85b9ef3dbed5aa22b700 GIT binary patch literal 605 zcmV-j0;2tiP)EX>4Tx04R}tkv&MmKpe$iTcs+MDs~WY$WWauh>AFB z6^c+H)C#RSm|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx6k5c1aNLh~ z_a1le0DryARI_6oP&La)CE`LRyD9`<5kMH-=trN#Onpuilkgm0_we!cF2=LG&;2=i zm7K`{pFljzbi*RvAfDc|bk6(45muBG;&b9LgDyz?$aUG}H_ioz{X8>bq*L?65n`dx z#&R38qM;H`5l0nOqkMnHWrgz=XSG~q&3p0}hH~1nGy0}1FmMa> zthv24_i_3Fq^Yaq4RCM>j20++-Q(R|?Y;ebrrF;Q03&jFp81Om00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{001RPL_t&-S7Qtf4gJr62e1GY r;E`rvV8Sa4lpG8SSXQrIjn|z3HMIp2&GS;600000NkvXXu0mjfp=9x` literal 0 HcmV?d00001 diff --git a/assets-fx/img/t11.png b/assets-fx/img/t11.png new file mode 100644 index 0000000000000000000000000000000000000000..acec88f0bb85c0915b5983b63ac7e125ce7618ba GIT binary patch literal 599 zcmV-d0;v6oP)EX>4Tx04R}tkv&MmKpe$iTcs+MDs~WY$WWauh>AFB z6^c+H)C#RSm|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx6k5c1aNLh~ z_a1le0DryARI_6oP&La)CE`LRyD9`<5kMH-=trN#Onpuilkgm0_we!cF2=LG&;2=i zm7K`{pFljzbi*RvAfDc|bk6(45muBG;&b9LgDyz?$aUG}H_ioz{X8>bq*L?65n`dx z#&R38qM;H`5l0nOqkMnHWrgz=XSG~q&3p0}hH~1nGy0}1FmMa> zthv24_i_3Fq^Yaq4RCM>j20++-Q(R|?Y;ebrrF;Q03&jFp81Om00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{0019JL_t&-S7ThYYSn)RJb($0 l99U{dC}3H=dNp2;0030R1rVWH4EO*5002ovPDHLkV1mWm?ehQt literal 0 HcmV?d00001 diff --git a/assets-fx/img/t12.png b/assets-fx/img/t12.png new file mode 100644 index 0000000000000000000000000000000000000000..fc2c5612b856b5bf103e23241b42e51ee5b49dca GIT binary patch literal 601 zcmV-f0;c_mP)EX>4Tx04R}tkv&MmKpe$iTcs+MDs~WY$WWauh>AFB z6^c+H)C#RSm|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx6k5c1aNLh~ z_a1le0DryARI_6oP&La)CE`LRyD9`<5kMH-=trN#Onpuilkgm0_we!cF2=LG&;2=i zm7K`{pFljzbi*RvAfDc|bk6(45muBG;&b9LgDyz?$aUG}H_ioz{X8>bq*L?65n`dx z#&R38qM;H`5l0nOqkMnHWrgz=XSG~q&3p0}hH~1nGy0}1FmMa> zthv24_i_3Fq^Yaq4RCM>j20++-Q(R|?Y;ebrrF;Q03&jFp81Om00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{001FLL_t&-S7Qtf4gJr62e1GY n;FMmydNl(RPFbkLkWc^siYx^XlvL#`00000NkvXXu0mjf$Y<{K literal 0 HcmV?d00001 diff --git a/assets-fx/img/t13.png b/assets-fx/img/t13.png new file mode 100644 index 0000000000000000000000000000000000000000..b02991b50d68f9fab293614781571b133875de20 GIT binary patch literal 596 zcmV-a0;~OrP)EX>4Tx04R}tkv&MmKpe$iTcs+MDs~WY$WWauh>AFB z6^c+H)C#RSm|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx6k5c1aNLh~ z_a1le0DryARI_6oP&La)CE`LRyD9`<5kMH-=trN#Onpuilkgm0_we!cF2=LG&;2=i zm7K`{pFljzbi*RvAfDc|bk6(45muBG;&b9LgDyz?$aUG}H_ioz{X8>bq*L?65n`dx z#&R38qM;H`5l0nOqkMnHWrgz=XSG~q&3p0}hH~1nGy0}1FmMa> zthv24_i_3Fq^Yaq4RCM>j20++-Q(R|?Y;ebrrF;Q03&jFp81Om00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{0010GL_t&-S7ThYYSn)R9ANe8 i)eKBHEX>4Tx04R}tkv&MmKpe$iTcs+MDs~WY$WWauh>AFB z6^c+H)C#RSm|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx6k5c1aNLh~ z_a1le0DryARI_6oP&La)CE`LRyD9`<5kMH-=trN#Onpuilkgm0_we!cF2=LG&;2=i zm7K`{pFljzbi*RvAfDc|bk6(45muBG;&b9LgDyz?$aUG}H_ioz{X8>bq*L?65n`dx z#&R38qM;H`5l0nOqkMnHWrgz=XSG~q&3p0}hH~1nGy0}1FmMa> zthv24_i_3Fq^Yaq4RCM>j20++-Q(R|?Y;ebrrF;Q03&jFp81Om00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{0016IL_t&-S7Qtf4gJr62e1GY k;E`rvV8Sa4lpGQY0QW@$4>HM4U;qFB07*qoM6N<$g274b%K!iX literal 0 HcmV?d00001 diff --git a/assets-fx/img/t15.png b/assets-fx/img/t15.png new file mode 100644 index 0000000000000000000000000000000000000000..5d4000e313ba82290a36909b5627ecc9a5b77e7a GIT binary patch literal 592 zcmV-W0EX>4Tx04R}tkv&MmKpe$iTcs+MDs~WY$WWauh>AFB z6^c+H)C#RSm|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx6k5c1aNLh~ z_a1le0DryARI_6oP&La)CE`LRyD9`<5kMH-=trN#Onpuilkgm0_we!cF2=LG&;2=i zm7K`{pFljzbi*RvAfDc|bk6(45muBG;&b9LgDyz?$aUG}H_ioz{X8>bq*L?65n`dx z#&R38qM;H`5l0nOqkMnHWrgz=XSG~q&3p0}hH~1nGy0}1FmMa> zthv24_i_3Fq^Yaq4RCM>j20++-Q(R|?Y;ebrrF;Q03&jFp81Om00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000EX>4Tx04R}tkv&MmKpe$iTcs+MDs~WY$WWauh>AFB z6^c+H)C#RSm|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx6k5c1aNLh~ z_a1le0DryARI_6oP&La)CE`LRyD9`<5kMH-=trN#Onpuilkgm0_we!cF2=LG&;2=i zm7K`{pFljzbi*RvAfDc|bk6(45muBG;&b9LgDyz?$aUG}H_ioz{X8>bq*L?65n`dx z#&R38qM;H`5l0nOqkMnHWrgz=XSG~q&3p0}hH~1nGy0}1FmMa> zthv24_i_3Fq^Yaq4RCM>j20++-Q(R|?Y;ebrrF;Q03&jFp81Om00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{001XRL_t&-S7Qtf4gJr62e5$T tfQoP`VZtc`l^6^Pz`j_$dNoeB0stws1rkX2B@F-o002ovPDHLkV1kt6@uL6$ literal 0 HcmV?d00001 diff --git a/assets-fx/img/t3.png b/assets-fx/img/t3.png new file mode 100644 index 0000000000000000000000000000000000000000..6ca75d8ccd65487380d49aa4c8e5cf46562ec57e GIT binary patch literal 602 zcmV-g0;TEX>4Tx04R}tkv&MmKpe$iTcs+MDs~WY$WWauh>AFB z6^c+H)C#RSm|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx6k5c1aNLh~ z_a1le0DryARI_6oP&La)CE`LRyD9`<5kMH-=trN#Onpuilkgm0_we!cF2=LG&;2=i zm7K`{pFljzbi*RvAfDc|bk6(45muBG;&b9LgDyz?$aUG}H_ioz{X8>bq*L?65n`dx z#&R38qM;H`5l0nOqkMnHWrgz=XSG~q&3p0}hH~1nGy0}1FmMa> zthv24_i_3Fq^Yaq4RCM>j20++-Q(R|?Y;ebrrF;Q03&jFp81Om00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{001IML_t&-S7Qtf4gC+q47dOj oE(w_UkWjz^a_#EXt8sb;07%9K5IjVb^#A|>07*qoM6N<$g3t5t$N&HU literal 0 HcmV?d00001 diff --git a/assets-fx/img/t4.png b/assets-fx/img/t4.png new file mode 100644 index 0000000000000000000000000000000000000000..6b9162650862c934b5cecbc6f72c07815c6ae035 GIT binary patch literal 603 zcmV-h0;K(kP)EX>4Tx04R}tkv&MmKpe$iTcs+MDs~WY$WWauh>AFB z6^c+H)C#RSm|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx6k5c1aNLh~ z_a1le0DryARI_6oP&La)CE`LRyD9`<5kMH-=trN#Onpuilkgm0_we!cF2=LG&;2=i zm7K`{pFljzbi*RvAfDc|bk6(45muBG;&b9LgDyz?$aUG}H_ioz{X8>bq*L?65n`dx z#&R38qM;H`5l0nOqkMnHWrgz=XSG~q&3p0}hH~1nGy0}1FmMa> zthv24_i_3Fq^Yaq4RCM>j20++-Q(R|?Y;ebrrF;Q03&jFp81Om00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{001LNL_t&-S7Qtf4gJr62e5$T pfQqmxS-pBS0~1ymB*7t}004$C1rYuLu1Wv^002ovPDHLkV1m5`@6iAN literal 0 HcmV?d00001 diff --git a/assets-fx/img/t5.png b/assets-fx/img/t5.png new file mode 100644 index 0000000000000000000000000000000000000000..a239e205cc6d4404c36af6fc078dc8bd28c17369 GIT binary patch literal 597 zcmV-b0;>IqP)EX>4Tx04R}tkv&MmKpe$iTcs+MDs~WY$WWauh>AFB z6^c+H)C#RSm|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx6k5c1aNLh~ z_a1le0DryARI_6oP&La)CE`LRyD9`<5kMH-=trN#Onpuilkgm0_we!cF2=LG&;2=i zm7K`{pFljzbi*RvAfDc|bk6(45muBG;&b9LgDyz?$aUG}H_ioz{X8>bq*L?65n`dx z#&R38qM;H`5l0nOqkMnHWrgz=XSG~q&3p0}hH~1nGy0}1FmMa> zthv24_i_3Fq^Yaq4RCM>j20++-Q(R|?Y;ebrrF;Q03&jFp81Om00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{0013HL_t&-S7Qtf4gC+q4A{Wx j)vFnput^|`4G#qX=VAp8XO!ab00000NkvXXu0mjfFq!X4 literal 0 HcmV?d00001 diff --git a/assets-fx/img/t6.png b/assets-fx/img/t6.png new file mode 100644 index 0000000000000000000000000000000000000000..1b913864e777110ff3f4cf50dd34bab5764268fb GIT binary patch literal 598 zcmV-c0;&CpP)EX>4Tx04R}tkv&MmKpe$iTcs+MDs~WY$WWauh>AFB z6^c+H)C#RSm|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx6k5c1aNLh~ z_a1le0DryARI_6oP&La)CE`LRyD9`<5kMH-=trN#Onpuilkgm0_we!cF2=LG&;2=i zm7K`{pFljzbi*RvAfDc|bk6(45muBG;&b9LgDyz?$aUG}H_ioz{X8>bq*L?65n`dx z#&R38qM;H`5l0nOqkMnHWrgz=XSG~q&3p0}hH~1nGy0}1FmMa> zthv24_i_3Fq^Yaq4RCM>j20++-Q(R|?Y;ebrrF;Q03&jFp81Om00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{0016IL_t&-S7Qtf4gJr62e5$T kfQoP`VZtc`l^7BV0P{%$51Ha3*Z=?k07*qoM6N<$f(>l$v;Y7A literal 0 HcmV?d00001 diff --git a/assets-fx/img/t7.png b/assets-fx/img/t7.png new file mode 100644 index 0000000000000000000000000000000000000000..eaab8fa76919341454278ecc825b9056429ca7e3 GIT binary patch literal 593 zcmV-X0EX>4Tx04R}tkv&MmKpe$iTcs+MDs~WY$WWauh>AFB z6^c+H)C#RSm|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx6k5c1aNLh~ z_a1le0DryARI_6oP&La)CE`LRyD9`<5kMH-=trN#Onpuilkgm0_we!cF2=LG&;2=i zm7K`{pFljzbi*RvAfDc|bk6(45muBG;&b9LgDyz?$aUG}H_ioz{X8>bq*L?65n`dx z#&R38qM;H`5l0nOqkMnHWrgz=XSG~q&3p0}hH~1nGy0}1FmMa> zthv24_i_3Fq^Yaq4RCM>j20++-Q(R|?Y;ebrrF;Q03&jFp81Om00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{000?DL_t&-S7Qtf4gC+q47dOj fE(w_U@K68%5@`bs(3(5Q00000NkvXXu0mjf3zh2v literal 0 HcmV?d00001 diff --git a/assets-fx/img/t8.png b/assets-fx/img/t8.png new file mode 100644 index 0000000000000000000000000000000000000000..f93be0279b4b198d988c1e847636e41529d10b78 GIT binary patch literal 606 zcmV-k0-^nhP)EX>4Tx04R}tkv&MmKpe$iTcs+MDs~WY$WWauh>AFB z6^c+H)C#RSm|Xe=O&XFE7e~Rh;NZt%)xpJCR|i)?5c~jfa&%I3krMxx6k5c1aNLh~ z_a1le0DryARI_6oP&La)CE`LRyD9`<5kMH-=trN#Onpuilkgm0_we!cF2=LG&;2=i zm7K`{pFljzbi*RvAfDc|bk6(45muBG;&b9LgDyz?$aUG}H_ioz{X8>bq*L?65n`dx z#&R38qM;H`5l0nOqkMnHWrgz=XSG~q&3p0}hH~1nGy0}1FmMa> zthv24_i_3Fq^Yaq4RCM>j20++-Q(R|?Y;ebrrF;Q03&jFp81Om00006VoOIv0RI60 z0RN!9r;`8x010qNS#tmYE+YT{E+YYWr9XB6000McNlirue zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{001UQL_t&-S7Qtf4gJr62e1GY s;FMmydNl(RPFbkLU{JsUaw$Fl0LYC86Tg4$NB{r;07*qoM6N<$f{zmMf&c&j literal 0 HcmV?d00001 diff --git a/assets-fx/img/t9.png b/assets-fx/img/t9.png new file mode 100644 index 0000000000000000000000000000000000000000..1f8877094879f39d365a554037ae54dc161ed718 GIT binary patch literal 601 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 literal 0 HcmV?d00001 diff --git a/build-fx/CPC.elf b/build-fx/CPC.elf new file mode 100755 index 0000000000000000000000000000000000000000..f3286f00b83beef3f9ef6d3b9c873d1cc675e178 GIT binary patch literal 34400 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 literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/1.png.o b/build-fx/assets/img/1.png.o new file mode 100644 index 0000000000000000000000000000000000000000..c82586d4af7061cd0fa952c2949d33afb54e7377 GIT binary patch literal 500 zcmb<-^>JflVq|~=Mg}b)8(BaHEN22HH5gbKSeh9cIA983G+aL&7|am&!L1g6@Hv21 zr+}=7@`Vxn{~sCRGjr494WU$gYF-MAS)5sw%D|vkT$x*vm;|ItiXe0bj8&AMl30=m zGMIQE4O9wp9}`pyDD=Q?gYsc+M^*!pngPTCKn(OEST75Z26~5q6DkIzz~BXtl!vlG Y6wEw9ARD9?3K-de3}qM(NQ2b@08ob?F#rGn literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/10.png.o b/build-fx/assets/img/10.png.o new file mode 100644 index 0000000000000000000000000000000000000000..3be2ebe59232028ce1b4304c61165fcee0fc3c69 GIT binary patch literal 504 zcmb<-^>JflVq|~=Mg}b)8(F{rEN22HH5gbKSeh9cI2yoQ1_l@n|_oL!t*mCC@NS6rD}l9&XfONtmdpORRT2r`=lAPrOtaw8K|4=4n|?t}7S?nhPwl9~a;0YD7&CRi^EkOq2*0pvfB c7!14sGL&E(APqB55XeSS$H)cbE2FCe0OZ0T&Hw-a literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/11.png.o b/build-fx/assets/img/11.png.o new file mode 100644 index 0000000000000000000000000000000000000000..bddcd41421605694d8c2dd914aba419133ca5115 GIT binary patch literal 504 zcmb<-^>JflVq|~=Mg}b)8(F{rEN22HH5gbKSeh9cI2xfEU^J9V5e2gpM&mM!8R9;; zG64vm6R17~qzB3uMezTBWQfnqO^-J;gwgS-c`0yqab{I21A|_1Wo}7g5|Az_g3uW- zR#ARRVo4&%Y!ZMpP%X%fOi(?b5Cppq%7?ihSq(^P1`r1TG0>Y}y(~Z)=p_b_|3G3e a@B+wCf^mQ}%sfFL8%Z4_7m%-vt_}d}IUv&j literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/12.png.o b/build-fx/assets/img/12.png.o new file mode 100644 index 0000000000000000000000000000000000000000..fedd6255a9853c60566416f0540c2634ecfa6116 GIT binary patch literal 504 zcmb<-^>JflVq|~=Mg}b)8(F{rEN22HH5gbKSeh9cI2yoQ1_l@nJflVq|~=Mg}b)8(F{rEN22HH5gbKSeh9cI2xfEU^J9V5!C?I4Wn@x#td;E z+>HVdJ||Fp3P=x>FN)y*|Hu%ZnVTMOXbhv{Q}a^b?BdL-R0amU;>z5T#3UeHQUswh zV63A2l*E!mkl7>vX`ot=8=0VbKp_ZrACwPsKe8H-)C?dF0Aipw!FpMMG|)>7Ape2H bVBiIip#JflVq|~=Mg}b)8(F{rEN22HH5gbKSeh9cI2yoQ1_l@nhmb$X7;J2LM>yA=&@{ literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/15.png.o b/build-fx/assets/img/15.png.o new file mode 100644 index 0000000000000000000000000000000000000000..fa09d886a6f2c81771ddfaf59b33a40b826fb2f4 GIT binary patch literal 504 zcmb<-^>JflVq|~=Mg}b)8(F{rEN22HH5gbKSeh9cI2xfEU^J9V5d|{~M&mM!8R9-h zn7jal&k5wGfW)ADQ3U`0M~3*!-1K-uQy3kenwJ7+7iU(bGBD^BSLT)^CIRV^A_$!U zV-@A6B$gzC%q9Uy1J#1u$OP2`3PG^@pnRD7k=1~tW&m*j5Cgpl*2@BJflVq|~=Mg}b)8(BaHEN22HH5gbKSeh9cIN<83$beZ2qj4F{3~?V^nE-?j za#IRO50o#A;Q#-~5TBWw9&ZGt;#2cdV9esos#FFBz2eH;lEfq+T~Y+0GhnQu{FKC! zM3BM618JaAko%aRT0o%(b{murb33vckkkwy4gg}H7r}a2fHcrM44hCgAO!|5fTTQ> Z4WeM?2?E(5y->i&4rD09ct9Gg4ggZvA2a{} literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/3.png.o b/build-fx/assets/img/3.png.o new file mode 100644 index 0000000000000000000000000000000000000000..ac430659e6b70a41fa93af16f748a60118c7eb93 GIT binary patch literal 500 zcmb<-^>JflVq|~=Mg}b)8(BaHEN22HH5gbKSeh9cIA983G+aLg447Fk8kbSb5ck2A z2|)N9K=mmgJy53E^5JflVq|~=Mg}b)8(BaHEN22HH5gbKSeh9cIN<83$Y_9?1*35p%?xoL+>HVd zKFCceAU#mNFoOU8BSU;pf@%SU9@uSAKFsaNYCuvmfH(k%fnEgbWdYJa?=Wye#eftTya1B& aP&SBynI{NjgY-fHBRi0x4C4W5usQ&`5g<4K literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/5.png.o b/build-fx/assets/img/5.png.o new file mode 100644 index 0000000000000000000000000000000000000000..f67b96948bd5385aeff54c1d74c10698f36a9ec2 GIT binary patch literal 500 zcmb<-^>JflVq|~=Mg}b)8(BaHEN22HH5gbKSeh9cIA983G+aLgj0UJ)7>&y)W{CUX zRtrG*96pf@%SU9@uSAKFsaNYCuvmfH(k%fnEgbWdYJa?=Wye#eftT eya1B&P&SBynI{NjgY-fHBRi0x4C4W5usQ(1dLTUj literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/6.png.o b/build-fx/assets/img/6.png.o new file mode 100644 index 0000000000000000000000000000000000000000..36da27427fbf385b2121a7b2c478017c75b62d86 GIT binary patch literal 500 zcmb<-^>JflVq|~=Mg}b)8(BaHEN22HH5gbKSeh9cIN<83$Y_L`1*35p%?xoL+>HVd zKFCceAU#mNFoOU8BSU;pf@%SU9@uSAKFsaNYCuvmfH(k%fnEgbWdYJa?=Wye#eftTya1B& aP&SBynI{NjgY-fHBRi0x4C4W5usQ(3%OF4i literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/7.png.o b/build-fx/assets/img/7.png.o new file mode 100644 index 0000000000000000000000000000000000000000..96670871560df8ee10d094bc24bb3dbb9e17490e GIT binary patch literal 500 zcmb<-^>JflVq|~=Mg}b)8(BaHEN22HH5gbKSeh9cIA983G+aLgj7F$l7>&y)W{CUX zRtrG*96pf@%SU9@uSAKFsaNYCuvmfH(k%fnEgbWdYJa?=Wye#eftT eya1B&P&SBynI{NjgY-fHBRi0x4C4W5usQ(AG$2I) literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/8.png.o b/build-fx/assets/img/8.png.o new file mode 100644 index 0000000000000000000000000000000000000000..5ee695aaec6b6712a29f0cec8e2686f3b8b98cd6 GIT binary patch literal 500 zcmb<-^>JflVq|~=Mg}b)8(BaHEN22HH5gbKSeh9cI2yoQ1_l@n<hPV&zMga() z188{)$N^BkFoOU8BSU;pf@%SU9@uSAKFsaNYCuvmfH(k%fnEgbWdYJa?=Wye#eftTya1B& aP&SBynI{NjgY-fHBRi0x4C4W5usQ%51Rz8J literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/9.png.o b/build-fx/assets/img/9.png.o new file mode 100644 index 0000000000000000000000000000000000000000..5a8d9d1a3eb2324a18cb69c24d1cb1d401b421dc GIT binary patch literal 500 zcmb<-^>JflVq|~=Mg}b)8(BaHEN22HH5gbKSeh9cI2xfEU^J9V7m69;KDZkNAbbv> z5N5{{N2*@tL{l@s?03J~b}|#w^aPN@ZZsE3V8fNlXILB}EWA1I8-KPf09E z1Q|>`kOnFRxsM5|1r&N5v-R5NCUmYzzG!tQef}`NXkRm YAPQ!lAdn5x3k8hqK!!4m2c*I303dB3NdN!< literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/Porte.png.o b/build-fx/assets/img/Porte.png.o new file mode 100644 index 0000000000000000000000000000000000000000..3e3bbac88c63465d6bb399aacc514625bcf493e0 GIT binary patch literal 480 zcmb<-^>JflVq|~=Mg}b)8(BaCEN22HH5gbKSeh6bIQ|2JflVq|~=Mg}b)8(BaGEN22HH5gbKSQr@^IAH1}fD8~$gJME_m_B?oGsJ$l z8w4PHUZ5TqkUl717Qz4jks&@aH$6TmH7P$Y1(_Y6ipDR_tV(5I&?~OYElErQ(j`R@ zIs?Wk%1=owNd(zL0+0r(1-X|Ass|KWV7Ef~Fux$H0ZCN=aR3kly$sgN0;GZ7W8j2} g0Vyyz0VMUHY!C%APY}ok>4kxBK!!4m1Ej&~0GwnfcmMzZ literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/Vitesse.png.o b/build-fx/assets/img/Vitesse.png.o new file mode 100644 index 0000000000000000000000000000000000000000..78e0f627505a67c2a62a3d69ec67021fb85d9b60 GIT binary patch literal 484 zcmb<-^>JflVq|~=Mg}b)8(BaGEN22HH5gbKSQr@^IAH2MfD8~;fnpe62*?Lvm^h3N z6e0+iA@;-FAOPX>0X4dSG(-9F2>$<%4Dp${>G5HiC8@>5sVJQI)Vvf_f#S@nR0amU z;>z5T#3UeHQUswhV63A2l*E!mkX6J2X`n)odzqjbK%oV8E0hoO3$hxJR0R+R05QJflVq|~=Mg}b)8(BaAEN22HH5gbKSeh6bI6%DrKwJmJjU>=OrC@y^8W&)O z*bjFD&;cMeClI@U^g#Kd2>$<%4Dp${>G357FgiXpF9psn&a6shV9+bB%q>Yw0@5W# z5IO_KD#}kuEJ*~JO#+Yxss*`=391JaLSXkn`7rk*s{u(>0C4~i1HB2>%L1f9VGQyg cNDKx}02xX!4v>bKCkSLCt9u3HE2FCe0QW>Fs{jB1 literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/t1.png.o b/build-fx/assets/img/t1.png.o new file mode 100644 index 0000000000000000000000000000000000000000..f0aca47b62521369c5d490c433984adffa45f85b GIT binary patch literal 472 zcmb<-^>JflVq|~=Mg}b)8(BaAEN22HH5gbKSeh6bIO>4hMj$4Y2AT37MBo9;5c}b7 z06GA~<^*CFkTxh^6v6-hks&@aH$A?@5JtzR=B2>d#hF#93=De3mANH}NkF=!2tsGT zSVj3Mi6x03vq=EbK(!!uF+uf!LI~_WC?Dp2WHlhE3Lp*uVxTv{dRc%pD2ze=1Bt=F Y2_QoW#sShW^8|rxWOc8Ad}VZX0Q@^Bt^fc4 literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/t10.png.o b/build-fx/assets/img/t10.png.o new file mode 100644 index 0000000000000000000000000000000000000000..df6afe58bd1d070076279e97a9ac2342af8ab31f GIT binary patch literal 472 zcmb<-^>JflVq|~=Mg}b)8(BaAEN22HH5gbKSeh6bI6%DrPz+-eLnEsJv9SSWi2ZOk z0385ga{;jnNIjGJflVq|~=Mg}b)8(BaAEN22HH5gbKSeh6bIQ~O5kV=EJ!Sq0lz@V5R_QTx( zbO4CW1;j2O#ZbODg8%;`Lwsg#dVGnYA)FDPnwNs$6lYeYGBD^BSLT)^CIRV^A_$!U zV-@A6B$gzCj3*XI0~LbY#RSy=3L&ujpnRD7k=1~tDu6fuh=JY&>tzAbpfKiyiUBDw dH~}P8p==NZGfxo62I+-?w?Kw6j02>>>HurZDM|nU literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/t12.png.o b/build-fx/assets/img/t12.png.o new file mode 100644 index 0000000000000000000000000000000000000000..9c1e71e66fadfac5941948fda947a59800585e60 GIT binary patch literal 472 zcmb<-^>JflVq|~=Mg}b)8(BaAEN22HH5gbKSeh6bI6%DrK>QDgL5fMGfm(0^W{8n+ zHvk;~Vsinp3rG``FOJ~<|Hu%ZnVTM8VrT?s#HZ$^AUMUDRjCXNdc~EwC5cHux}*p~ zXTVrR`6-Ddi6G;N1=2u;Aa^lAHGo10>^>+T=6+-~AgKx<4gg}HH^F*YfHWwKIiX@e f3JgvFNmVEtM8V7x1hPSTVc;#0p$y{yX|Or~ZmB6v literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/t13.png.o b/build-fx/assets/img/t13.png.o new file mode 100644 index 0000000000000000000000000000000000000000..b2ad7c517c11e74b3c477746839e893b8ec2fdab GIT binary patch literal 472 zcmb<-^>JflVq|~=Mg}b)8(BaAEN22HH5gbKSeh6bIQ~HukxPS3!$B}Z?1#Gn=l~F# z3y57nTA+M!1pog>hWO0f^!O4(V>lx|H7^ChDbB1)Wnj=NuFNe-Oajs+MG!gz#wyBB zNi0bO8BZ*b1}X%(iwUX$6hdJ4LHRKEBdY;PRRD1S5Cgpl*2@BJflVq|~=Mg}b)8(BaAEN22HH5gbKSeh6bI6%DrPz+;}LW9)e0?ZKm;cfsr z0L113Vi%AeC|?}G|NoI8J~KBxzQoW3&WKOVOF?joGpkY=81#xOb4wDFfOJU_gwBAm zitJflVq|~=Mg}b)8(BaAEN22HH5gbKSeh6bIQ~O5kV`|gW2KlO_QTx(bO4CW z1;j2O4N$%~g8%;`Lwsg#dVGnYDV!0XnwNs$6lYeYGBD^BSLT)^CIRV^A_$!UV-@A6 zB$gzCj3*XI0~LbY#RSy=3L&ujpnRD7k=1~tDu6fuh=JY&>tzAbpfKiyiUBDwH~}P8 Zp==NZGfxo62I+-?w?Kw6j02>>>HvGJDOLag literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/t2.png.o b/build-fx/assets/img/t2.png.o new file mode 100644 index 0000000000000000000000000000000000000000..7952bf254a2f5584308b87e1cc0cfdade5bc6d56 GIT binary patch literal 472 zcmb<-^>JflVq|~=Mg}b)8(BaAEN22HH5gbKSeh6bI6%DrKwJ;R4J6P&rC@y^8W&)O z*bjFD&;cMeClI@U^g#Kd2>$<%4Dp${>G35-FgiXpF9psn&a6shV9+bB%q>Yw0@5W# z5IO_KD#}kuEJ*~JO#+Yxss*`=391JaLSXkn`7rk*s{u(>0C4~i1HB2>%L1f9VGQyg cNDKx}02xX!4v>bKCkSLCt9u3HE2FCe0R37hu>b%7 literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/t3.png.o b/build-fx/assets/img/t3.png.o new file mode 100644 index 0000000000000000000000000000000000000000..aba0323c34ba7cab10f835b14b9da4ad0499b3a7 GIT binary patch literal 472 zcmb<-^>JflVq|~=Mg}b)8(BaAEN22HH5gbKSeh6bIO>7i1|TMt2AT37MBo9;5c}b7 z06GA~<^*CFkTxh^6v6-hks&@aH$A?@7)HmZ=B2>d#hF#93=De3mANH}NkF=!2tsGT zSVj3Mi6x03vq=EbK(!!uF+uf!LI~_WC?Dp2WHlhE3Lp*uVxTv{dRc%pD2ze=1Bt=F Y2_QoW#sShW^8|rxWOc8Ad}VZX00Lwvv;Y7A literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/t4.png.o b/build-fx/assets/img/t4.png.o new file mode 100644 index 0000000000000000000000000000000000000000..188a08bcf3546d01c6846e64a5a4b121f1c2858b GIT binary patch literal 472 zcmb<-^>JflVq|~=Mg}b)8(BaAEN22HH5gbKSeh6bI6%DrKwJmJjbzY3EjR%)#D2IN zfDQn$If2*(qzTFwMezTBWQfnqO^+`zfzk1)c`0yqab{I21A|_1Wo}7g5|Az_g3uW- zR#ARRVo4&%Y!ZMpP%X$^Oi(?b5CXdo%7?ihSq(_40*C{E80bx~UKSt?3S*G}Kw>a( Y0?1H;aey?;JV78ES=}ojUm0B;00l=Vw*UYD literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/t5.png.o b/build-fx/assets/img/t5.png.o new file mode 100644 index 0000000000000000000000000000000000000000..5a91c30f311300eec4d3feca24623fcc24d2556b GIT binary patch literal 472 zcmb<-^>JflVq|~=Mg}b)8(BaAEN22HH5gbKSeh6bIO>4hMj$4a2AhV1V20QacLUG? zAT}ouyMVMn`JxE^|BnpunYrolC8jVsJ~b}|&MwZZN@ZZsE3V8fNlXILB}EWA1I8-K zPf09E1er|&kOry+xr+&^2NXhJ_d)qE_amzTNmT%G01yMc3D(O3q(NZ}@*hYH22KDO WN-z$PhM6Y_WFxD41>`HEs{;TEJ}9~X literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/t6.png.o b/build-fx/assets/img/t6.png.o new file mode 100644 index 0000000000000000000000000000000000000000..ea36fed9ee3a42491ae20320aea872b27da81016 GIT binary patch literal 472 zcmb<-^>JflVq|~=Mg}b)8(BaAEN22HH5gbKSeh6bI6%DrKwJ;R4P?+jEjR%)#D2IN zfDQn$If2*(qzTFwMezTBWQfnqO^+`zgVFJ+c`0yqab{I21A|_1Wo}7g5|Az_g3uW- zR#ARRVo4&%Y!ZMpP%X$^Oi(?b5CXdo%7?ihSq(_40*C{E80bx~UKSt?3S*G}Kw>a( Y0?1H;aey?;JV78ES=}ojUm0B;01II#y#N3J literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/t7.png.o b/build-fx/assets/img/t7.png.o new file mode 100644 index 0000000000000000000000000000000000000000..f61c3a6a2b319dc90373bf0e805ae0aca3232040 GIT binary patch literal 472 zcmb<-^>JflVq|~=Mg}b)8(BaAEN22HH5gbKSeh6bIO>7i1|TMv2AhV1V20QacLUG? zAT}ouyMVMn`JxE^|BnpunYrolCFU?XJ~b}|&MwZZN@ZZsE3V8fNlXILB}EWA1I8-K zPf09E1er|&kOry+xr+&^2NXhJ_d)qE_amzTNmT%G01yMc3D(O3q(NZ}@*hYH22KDO WN-z$PhM6Y_WFxD41>`HEs{;TKTqwW* literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/t8.png.o b/build-fx/assets/img/t8.png.o new file mode 100644 index 0000000000000000000000000000000000000000..289acc692e347a2752f551e4b026be8ee154a7f6 GIT binary patch literal 472 zcmb<-^>JflVq|~=Mg}b)8(BaAEN22HH5gbKSeh6bI6%DrK>QDgL5hi`fl9&pKr}AE z3^5Y!2A~5#Y)&9{0qKGAMG^e}9~t5^bJOEXEMRneYF-MQU7T5!%D|vkT$x*vm;|It ziXe0bj8&AMl30=mGMfY-4O9zq7ZX$uD1^Z7gYseSM^*!pssQ2uAO?C9td|8ygTff( dKadyqO~Gfxo6MppL<$X7;J2LKyOD8m2% literal 0 HcmV?d00001 diff --git a/build-fx/assets/img/t9.png.o b/build-fx/assets/img/t9.png.o new file mode 100644 index 0000000000000000000000000000000000000000..3dacf9a09f3c477c2a012e472d3e34d44dfcb3dc GIT binary patch literal 472 zcmb<-^>JflVq|~=Mg}b)8(BaAEN22HH5gbKSeh6bIQ~HukxGM1`42VS(VDbpjTX(TauUrq)Un*bOwx7 zl%JAVk_a-J1RxDm3vw3|R1YYG!0vdf3eq*YR;Q0*)ls1FolLp$x=%R@W+%VQE3l~U}mIO>d%t*8ee&^1AF2ipyAzgTqbIu*;w&(B)7Mv=r)v za(o%|G3evaCzNJje@0U;LO(;QB4`r&J(>$cPeT7h>bIfaBK>;khtM0Sw_=HkewOTl zet|sPw{n$_`_Fy+FXeb1W8pYdJonr2OSx`&9xzsWUU+UERe4^QI{u~BM;HEo34ahi z6FwLII{aPur{5?%f5O~dv)!Lg8S}L)4xPM7qvv|(rdE7hd+qP+mN{x&>+#0w8Wyfm{n3Sl`+$2@ za&Bwzhm9ScUp>7UW3gnNITNl)Oz-ej84LZb2l{?LR{GlQhK0F%&8;y{@B1a+m@_+k ziRly7lb&tmA6pU2J$7j#nyqZ}QR(H%D8AVW##ddRly0BgT|1gfO+x#1=tQ} zj~COu+l3)moK6}0d1GqjynY=4;r;IjIPW7z!1+92wS_kuL>UM8^KOR+G#=ErGc1*; zSu2lfJf`t3jqlZXT;oF;=kv=J)&8W$k7)d;#?NZ}bB&+Z_yvuBrSXdzpVs&#jb}A} zMdMdBeqH0YG=BF%et!w&=f|b}e^;dzU!CVJ|4MuPxHf6!4I0P2kr$O;`@gO(t^6&G zKlp!B@xjqhKlKczl08;LSwq=+WgC=jRJKXk=at>6Y_qa0${J2W$!JJQLvk9D)KFQw z#?qFVPoQe4I;w_>SJA2qst2kAs(oqRPmfsk(%uGhL{i@kFHkzOwo*?Q; zrsESm87rQ);4xGE;}go4Fh}AO8IZwLJc+8w{o{!^_djV`!=^-Ktg&(Y20l(aYJs?M zc9aUn8u1FoJ?j&UUtA`*0#6CSeq7ap*Wl_E9Kb0ecmu9W!9k*xg6oK$6dWO{5R8{j zrQl|wrvz^!dRlOl$S=5^=o!ISgR2C060H`DwYWy`>qKh>? z@BmSb;1Qzrf-$KZ1Y1NK1s^1;6+B6_N$??}py0zqn-!*;L|X*kBB~So2hnqa@8S(6 zc=0}Fm-u3@P-Y@!#rr6fvC?@vAjmQgS`@-cic_dBlc7)= z>nxNW%X@6XA*hKZxqqBO{bQ+=If^-WBw3AU?u*=8jaqHhXR20lxYBHSSR9{Sm;?Kr z$AJ%vGf>94<$gt+dx|S4DOR=)mT@%CJr=5c3e0ao_OoK1sTEo<4);Y+KYSvRuLX{R zd|s}LwPNSvIgosvz??4vg%tgW4~}O?xJ*>W09Vm#y`LS literal 0 HcmV?d00001 diff --git a/project.cfg b/project.cfg new file mode 100644 index 0000000..79c6638 --- /dev/null +++ b/project.cfg @@ -0,0 +1,84 @@ +#--- +# fxSDK project configuration file for CPC +#--- + +# Project name, should be at most 8 bytes long. +# (You can also specify NAME_G1A or NAME_G3A to override individually.) +NAME := CPC + +# Internal name, should be '@' followed by at most 7 uppercase letters. +# WARNING: If this convention is not followed, the add-in might not appear in +# the main menu of the calculator! +INTERNAL := @CPC + +# Output file name. The default is to take , replace spaces with dashes, +# and add .g1a (or .g3a). You can specify a different folder if you want. +TARGET_FX := +TARGET_CG := + +# fx-9860G icon location +ICON_FX = assets-fx/icon-fx.png +# fx-CG 50 icon locations +ICON_CG_UNS = assets-cg/icon-cg-uns.png +ICON_CG_SEL = assets-cg/icon-cg-sel.png + +#--- +# Toolchain selection +#--- + +# Toolchain for fx9860g. Please see also CFLAGS_FX below. +TOOLCHAIN_FX := sh-elf + +# Toolchain for fxcg50. Please see also CFLAGS_CG below. +TOOLCHAIN_CG := sh-elf + +#--- +# Compiler flags +#--- + +# Base compiler flags for the fxSDK, you usually want to keep these. +CFLAGS := -mb -ffreestanding -nostdlib -fstrict-volatile-bitfields + +# Platform-specific compiler flags. +# <> If you are using sh3eb-elf, use -m3. (You can do this on both FX and CG.) +# <> If you are using sh4eb-elf, use -m4-nofpu. (Not ideal on FX but works.) +# <> If you are using sh4eb-nofpu-elf, then your compiler will likely use the +# FPU and cause problems on the calculator. Consider another configuration. +# <> If you are using an sh-elf with several targets, specify whichever you +# support. I recommend -m3 on FX and -m4-nofpu on CG. +# Please see also TOOLCHAIN_FX and TOOLCHAIN_CG above. +CFLAGS_FX := -D FX9860G -m3 +CFLAGS_CG := -D FXCG50 -m4-nofpu + +# Additional compiler flags, change to your own taste! +CFLAGS += -Wall -Wextra -Os + +# Include paths. Add one -I option for each folder from which you want to +# be able to include files with #include<>. +INCLUDE := -I include + +# Libraries. Add one -l option for each library you are using, and also +# suitable -L options if you have library files in custom folders. To use +# fxlib, add libfx.a to the project directory and use "-L . -lfx". +LIBS := + +# Base linker flags for the fxSDK, you usually want to keep these. +LDFLAGS_FX := -T fx9860g.ld -lgint-fx $(LIBS) -lgint-fx -lgcc +LDFLAGS_CG := -T fxcg50.ld -lgint-cg $(LIBS) -lgint-cg -lgcc + +# Additional linker flags, if you need any. +LDFLAGS := + +# Additional platform-specific linker flags. +LDFLAGS_FX += -Wl,-Map=build-fx/map +LDFLAGS_CG += -Wl,-Map=build-cg/map + +#--- +# File conversion parameters +#--- + +# Here you can add fxconv options for each converted file, individually. +# The syntax is ".". For example, to specify the parameters for a +# font name "hexa.png", you might write: +# +# FONT.hexa.png = charset:print grid:size:3x5 grid.padding:1 diff --git a/src/main.c b/src/main.c new file mode 100644 index 0000000..9832a54 --- /dev/null +++ b/src/main.c @@ -0,0 +1,98 @@ +// Includes ! +#include +#include +#include +/* +Boucle qui va afficher l'image correspondante à l'emplacement dans le tableau 'map' +*/ +void tile(void); + +int main(void) +{ + gray_start(); + gray_delays(762, 1311); + //Importation de BEAUCOUPS d'images + extern image_t img_t0; + extern image_t img_t1; + extern image_t img_t2; + extern image_t img_t3; + extern image_t img_t4; + extern image_t img_t5; + extern image_t img_t6; + extern image_t img_t7; + extern image_t img_t8; + extern image_t img_t9; + extern image_t img_t10; + extern image_t img_t11; + extern image_t img_t12; + extern image_t img_t13; + extern image_t img_t14; + extern image_t img_t15; + extern image_t img_Porte; + extern image_t img_Vitesse; + extern image_t img_Rebond; + extern image_t img_1; + extern image_t img_2; + extern image_t img_3; + extern image_t img_4; + extern image_t img_5; + extern image_t img_6; + extern image_t img_7; + extern image_t img_8; + extern image_t img_9; + extern image_t img_10; + extern image_t img_11; + extern image_t img_12; + extern image_t img_13; + extern image_t img_14; + extern image_t img_15; +/* +16: Porte +17: Rien +1xx: Vitesse +2xx: Rebond +{, , , , , , , , , , , , , , , } +*/ + //La carte de l'ecran pour les tiles + int map[8][16] = { + {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}, + {15, 115, 215, 315, 415, 515, 615, 715, 815, 915, 1015, 1115, 1215, 1315, 1415, 1515}, + {17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17}, + {6, 1614, 1714, 12, 16, 17, 6, 14, 14, 14, 14, 14, 14, 14, 14, 12}, + {7, 15, 15, 115, 14, 14, 815, 15, 15, 15, 15, 15, 15, 15, 15, 13}, + {3, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 9}, + {17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17}, + {17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17}}; + //Les pointeurs des images + int p_img[17] = {&img_t0, &img_t1, &img_t2, &img_t3, &img_t4, &img_t5, &img_t6, &img_t7, &img_t8, &img_t9, &img_t10, &img_t11, &img_t12, &img_t13, &img_t14, &img_t15, &img_Porte}; + int p_sup[17] = {&img_1, &img_2, &img_3, &img_4, &img_5, &img_6, &img_7, &img_8, &img_9, &img_10, &img_11, &img_12, &img_13, &img_14, &img_15, &img_Vitesse, &img_Rebond}; + //Le dessin ^^ + gclear('white'); + tile(); + //L'affichage + gupdate(); + //Le début de al fin + getkey(); + gray_stop(); + //La fin de la fin + return 1; +} + +void tile(void) +{ + for (int i = 0 ; i <= 7 ; i++) + { + for (int j = 0 ; j <= 15 ; j++) + { + if (map[i][j] != 17) + { + gimage(8*j, 8*i, p_img[map[i][j] - 100 * (map[i][j] / 100)]); + if (map[i][j] > 99) + { + gimage(8*j, 8*i, p_sup[(map[i][j] / 100) -1]); + } + } + + } + } +}