A dungeon delver roguelike using Pathfinder 2nd edition rules
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Starting on small tutorial code

+2 -96
+2 -1
gb/.gitignore
··· 58 58 # End of https://www.toptal.com/developers/gitignore/api/c 59 59 60 60 obj/ 61 - bin/ 61 + bin/ 62 + src/generated/
-89
gb/Makefile
··· 1 - 2 - .SUFFIXES: # Suppress a lot of useless default rules, which also provides a nice speedup. 3 - 4 - # Recursive `wildcard` function. 5 - rwildcard = $(foreach d,$(wildcard $(1:=/*)),$(call rwildcard,$d,$2) $(filter $(subst *,%,$2),$d)) 6 - 7 - # Program constants. 8 - # POSIX OSes (the sane default). 9 - RM_RF := rm -rf 10 - MKDIR_P := mkdir -p 11 - ifeq ($(strip $(shell which rm)),) 12 - # Windows *really* tries its hardest to be Special™! 13 - RM_RF := -rmdir /s /q 14 - MKDIR_P := -mkdir 15 - endif 16 - 17 - RGBDS ?= # Shortcut if you want to use a local copy of RGBDS. 18 - RGBASM := ${RGBDS}rgbasm 19 - RGBLINK := ${RGBDS}rgblink 20 - RGBFIX := ${RGBDS}rgbfix 21 - RGBGFX := ${RGBDS}rgbgfx 22 - 23 - ROM = bin/${ROMNAME}.${ROMEXT} 24 - 25 - # Argument constants 26 - INCDIRS = src/ include/ 27 - WARNINGS = all extra 28 - ASFLAGS = -p ${PADVALUE} $(addprefix -I,${INCDIRS}) $(addprefix -W,${WARNINGS}) 29 - LDFLAGS = -p ${PADVALUE} 30 - FIXFLAGS = -p ${PADVALUE} -i "${GAMEID}" -k "${LICENSEE}" -l ${OLDLIC} -m ${MBC} -n ${VERSION} -r ${SRAMSIZE} -t ${TITLE} 31 - 32 - # The list of ASM files that RGBASM will be invoked on. 33 - SRCS = $(call rwildcard,src,*.asm) 34 - 35 - ## Project-specific configuration 36 - # Use this to override the above 37 - include project.mk 38 - 39 - # `all` (Default target): build the ROM 40 - all: ${ROM} 41 - .PHONY: all 42 - 43 - # `clean`: Clean temp and bin files 44 - clean: 45 - ${RM_RF} bin obj assets 46 - .PHONY: clean 47 - 48 - # `rebuild`: Build everything from scratch 49 - # It's important to do these two in order if we're using more than one job 50 - rebuild: 51 - ${MAKE} clean 52 - ${MAKE} all 53 - .PHONY: rebuild 54 - 55 - # By default, asset recipes convert files in `assets/` into other files in `assets/`. 56 - # This line causes assets not found in `assets/` to be also looked for in `src/assets/`. 57 - # "Source" assets can thus be safely stored there without `make clean` removing them! 58 - VPATH := src 59 - 60 - # Define how to compress files using the PackBits16 codec. 61 - # (The compressor script requires Python 3.) 62 - assets/%.pb16: src/tools/pb16.py assets/% 63 - @${MKDIR_P} "${@D}" 64 - $^ $@ 65 - 66 - # How to build a ROM. 67 - # Notice that the build date is always refreshed. 68 - bin/%.${ROMEXT}: $(patsubst src/%.asm,obj/%.o,${SRCS}) 69 - @${MKDIR_P} "${@D}" 70 - ${RGBASM} ${ASFLAGS} -o obj/build_date.o src/assets/build_date.asm 71 - ${RGBLINK} ${LDFLAGS} -m bin/$*.map -n bin/$*.sym -o $@ $^ \ 72 - && ${RGBFIX} -v ${FIXFLAGS} $@ 73 - 74 - # `.mk` files are auto-generated dependency lists of the source ASM files, to save a lot of hassle. 75 - # Also add all obj dependencies to the dep file too, so Make knows to remake it. 76 - # Caution: some of these flags were added in RGBDS 0.4.0, using an earlier version WILL NOT WORK 77 - # (and produce weird errors). 78 - obj/%.mk: src/%.asm 79 - @${MKDIR_P} "${@D}" 80 - ${RGBASM} ${ASFLAGS} -M $@ -MG -MP -MQ ${@:.mk=.o} -MQ $@ -o ${@:.mk=.o} $< 81 - # DO NOT merge this with the rule above, otherwise Make will assume that the `.o` file is generated, 82 - # even when it isn't! 83 - # This causes weird issues that depend, among other things, on the version of Make. 84 - obj/%.o: obj/%.mk 85 - @touch $@ 86 - 87 - ifeq ($(filter clean,${MAKECMDGOALS}),) 88 - include $(patsubst src/%.asm,obj/%.mk,${SRCS}) 89 - endif
-6
gb/src/assets/build_date.asm
··· 1 - SECTION "Build date", ROM0 2 - 3 - db "Built " 4 - BuildDate:: 5 - db __ISO_8601_UTC__ 6 - db 0
gb/src/main.asm gb/src/main/main.asm