From 337e4622f60e11c179ab39419e65c185b84e05e7 Mon Sep 17 00:00:00 2001 From: neonloop Date: Sat, 17 Apr 2021 21:02:58 +0000 Subject: Initial trimui s support --- Makefile.trimui | 77 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/sdl/graphics.c | 6 ++++- src/sdl/input.c | 9 +++++++ 3 files changed, 91 insertions(+), 1 deletion(-) create mode 100644 Makefile.trimui diff --git a/Makefile.trimui b/Makefile.trimui new file mode 100644 index 0000000..b35dc76 --- /dev/null +++ b/Makefile.trimui @@ -0,0 +1,77 @@ +CC = $(CROSS_COMPILE)cc +SYSROOT := $(shell $(CC) --print-sysroot) +SDL_CFLAGS := $(shell $(SYSROOT)/usr/bin/sdl-config --cflags) +SDL_LIBS := $(shell $(SYSROOT)/usr/bin/sdl-config --libs) + +CFLAGS = -D_SDL -DTRIMUI -O2 -mcpu=arm926ej-s -mtune=arm926ej-s -Isrc -std=c99 $(SDL_CFLAGS) +LDFLAGS = -lSDL -lm -Wl,-Bstatic -lSDL_mixer -lmad -lvorbisidec -lvorbisfile -lvorbis -logg -Wl,-Bdynamic + +DEFINES = -Wall +OUTPUT = hcl.elf + +SOURCES = src/collision.c \ +src/effect.c \ +src/enemy.c \ +src/game.c \ +src/hero.c \ +src/ini.c \ +src/inventory.c \ +src/main.c \ +src/object.c \ +src/options.c \ +src/PHL.c \ +src/platform.c \ +src/qda.c \ +src/stagedata.c \ +src/text.c \ +src/titlescreen.c \ +src/weapon.c \ +src/enemies/batboss.c \ +src/enemies/bat.c \ +src/enemies/bee.c \ +src/enemies/boar.c \ +src/enemies/boomknight.c \ +src/enemies/crab.c \ +src/enemies/devil.c \ +src/enemies/dodo.c \ +src/enemies/dog.c \ +src/enemies/firewheel.c \ +src/enemies/fish.c \ +src/enemies/garm.c \ +src/enemies/gas.c \ +src/enemies/ghoul.c \ +src/enemies/golem.c \ +src/enemies/gyra.c \ +src/enemies/heads.c \ +src/enemies/hydra.c \ +src/enemies/jellyfish.c \ +src/enemies/knight.c \ +src/enemies/lolidra.c \ +src/enemies/pendulum.c \ +src/enemies/podoboo.c \ +src/enemies/poisonknight.c \ +src/enemies/pumpkin.c \ +src/enemies/seal.c \ +src/enemies/skeleton.c \ +src/enemies/skull.c \ +src/enemies/slime.c \ +src/enemies/slug.c \ +src/enemies/thwomp.c \ +src/enemies/waterjumper.c \ +src/enemies/wizard.c \ +src/sdl/audio.c \ +src/sdl/graphics.c \ +src/sdl/input.c \ +src/sdl/system.c +OBJS = ${SOURCES:.c=.o} + +all: ${OUTPUT} + +${OUTPUT}:${OBJS} + ${CC} -o ${OUTPUT} ${OBJS} ${CFLAGS} ${LDFLAGS} ${DEFINES} + +pack: + mksquashfs ./opk hydra.opk -all-root -noappend -no-exports -no-xattrs + +clean: + rm src/*.o src/sdl/*.o ${OUTPUT} diff --git a/src/sdl/graphics.c b/src/sdl/graphics.c index 7415b52..f562f9b 100755 --- a/src/sdl/graphics.c +++ b/src/sdl/graphics.c @@ -37,7 +37,11 @@ void PHL_GraphicsInit() Input_InitJoystick(); - uint32_t flags = SDL_HWSURFACE|SDL_DOUBLEBUF; +#ifdef TRIMUI + uint32_t flags = SDL_SWSURFACE; +#else + uint32_t flags = SDL_HWSURFACE|SDL_DOUBLEBUF; +#endif if(wantFullscreen || desktopFS) flags |= SDL_FULLSCREEN; screen = SDL_SetVideoMode((desktopFS)?0:screenW, (desktopFS)?0:screenH, 0, flags); diff --git a/src/sdl/input.c b/src/sdl/input.c index 3036987..41c284c 100644 --- a/src/sdl/input.c +++ b/src/sdl/input.c @@ -87,6 +87,15 @@ void Input_KeyEvent(SDL_Event* evt) case BTN_L: bL = w; break; case BTN_START: bSelect = w; break; case BTN_SELECT: bStart = w; break; +#elif defined(TRIMUI) + case SDLK_LSHIFT: bFaceUp = w; break; + case SDLK_LCTRL: bFaceDown = w; break; + case SDLK_LALT: bFaceLeft = w; break; + case SDLK_SPACE: bFaceRight = w; break; + case SDLK_BACKSPACE: bR = w; break; + case SDLK_TAB: bL = w; break; + case SDLK_RCTRL: bSelect = w; break; + case SDLK_RETURN: bStart = w; break; #else case SDLK_e: bFaceUp = w; break; case SDLK_x: bFaceDown = w; break; -- cgit v1.2.3