summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormid-kid <esteve.varela@gmail.com>2020-09-11 01:17:59 +0200
committermid-kid <esteve.varela@gmail.com>2020-09-11 01:26:53 +0200
commit2fa72e1df0e0c3f4892195b03df86d1b8261e78c (patch)
tree24dc7ecd18c98fdcfcf052946e12ddc9e5ad151c
parentacf910ba7cc321c0d57a928e4cbba599b837b8b8 (diff)
Document character values
-rw-r--r--Makefile22
-rw-r--r--data/text_chars.asm279
-rw-r--r--include/hardware.inc (renamed from source/hardware.inc)0
-rw-r--r--source/bank_00.asm517
-rw-r--r--source/bank_02.asm2
5 files changed, 290 insertions, 530 deletions
diff --git a/Makefile b/Makefile
index 2cf4922..87151fb 100644
--- a/Makefile
+++ b/Makefile
@@ -1,10 +1,7 @@
name := picross
baserom := DMGAKVJ0.1
-dir_source := source
dir_build := build
-dir_gfx := gfx
-dir_tools := tools
RGBASM := rgbasm
RGBGFX := rgbgfx
@@ -17,13 +14,14 @@ RGBFIXFLAGS := -p 0xff -c -m 0x1b -r 0x03 -k "01" -i "AKVJ" -t "POKEPICROSS"
rwildcard = $(foreach d, $(wildcard $1*), $(filter $(subst *, %, $2), $d) $(call rwildcard, $d/, $2))
-objects := $(patsubst $(dir_source)/%.asm, $(dir_build)/%.o, \
- $(call rwildcard, $(dir_source)/, *.asm))
+objects := $(patsubst %.asm, $(dir_build)/%.o, \
+ $(call rwildcard, source data, *.asm))
objects += $(dir_build)/shim.o
-gfx := $(patsubst $(dir_gfx)/%.png, $(dir_build)/gfx/%.bin, \
- $(call rwildcard, $(dir_gfx)/, *.png))
+gfx := $(patsubst %.png, $(dir_build)/%.bin, \
+ $(call rwildcard, gfx, *.png))
+.PRECIOUS: $(gfx)
.SECONDEXPANSION:
.PHONY: all
@@ -39,14 +37,14 @@ $(name).gbc: layout.link $(objects) | $(baserom)
$(RGBFIX) $(RGBFIXFLAGS) -v $@
$(dir_build)/shim.asm: shim.sym | $$(dir $$@)
- $(dir_tools)/makeshim.py $< > $@
+ tools/makeshim.py $< > $@
$(dir_build)/%.o: $(dir_build)/%.asm | $(gfx) $$(dir $$@)
- $(RGBASM) $(RGBASMFLAGS) -i $(dir_build)/ -i $(dir_source)/ -M $(@:.o=.d) -o $@ $<
-$(dir_build)/%.o: $(dir_source)/%.asm | $(gfx) $$(dir $$@)
- $(RGBASM) $(RGBASMFLAGS) -i $(dir_build)/ -i $(dir_source)/ -M $(@:.o=.d) -o $@ $<
+ $(RGBASM) $(RGBASMFLAGS) -i $(dir_build)/ -i include/ -M $(@:.o=.d) -o $@ $<
+$(dir_build)/%.o: %.asm | $(gfx) $$(dir $$@)
+ $(RGBASM) $(RGBASMFLAGS) -i $(dir_build)/ -i include/ -M $(@:.o=.d) -o $@ $<
-$(dir_build)/gfx/%.bin: $(dir_gfx)/%.png | $$(dir $$@)
+$(dir_build)/%.bin: %.png | $$(dir $$@)
$(RGBGFX) -o $@ $<
.PRECIOUS: %/
diff --git a/data/text_chars.asm b/data/text_chars.asm
new file mode 100644
index 0000000..0af5ccf
--- /dev/null
+++ b/data/text_chars.asm
@@ -0,0 +1,279 @@
+SECTION "data/text_chars", ROM0[$286f]
+text_chars_widths::
+ db 7 ; あ
+ db 7 ; い
+ db 7 ; う
+ db 7 ; え
+ db 7 ; お
+ db 7 ; か
+ db 7 ; き
+ db 4 ; く
+ db 7 ; け
+ db 7 ; こ
+ db 6 ; さ
+ db 6 ; し
+ db 7 ; す
+ db 7 ; せ
+ db 7 ; そ
+ db 7 ; た
+ db 7 ; ち
+ db 7 ; つ
+ db 7 ; て
+ db 7 ; と
+ db 7 ; な
+ db 7 ; に
+ db 7 ; ぬ
+ db 7 ; ね
+ db 7 ; の
+ db 7 ; は
+ db 7 ; ひ
+ db 7 ; ふ
+ db 8 ; へ
+ db 7 ; ほ
+ db 6 ; ま
+ db 7 ; み
+ db 7 ; む
+ db 7 ; め
+ db 7 ; も
+ db 7 ; や
+ db 7 ; ゆ
+ db 6 ; よ
+ db 6 ; ら
+ db 6 ; り
+ db 6 ; る
+ db 7 ; れ
+ db 6 ; ろ
+ db 7 ; わ
+ db 6 ; を
+ db 7 ; ん
+ db 5 ; っ
+ db 5 ; ゃ
+ db 5 ; ゅ
+ db 4 ; ょ
+ db 9 ; が
+ db 8 ; ぎ
+ db 7 ; ぐ
+ db 8 ; げ
+ db 8 ; ご
+ db 9 ; ざ
+ db 7 ; じ
+ db 9 ; ず
+ db 8 ; ぜ
+ db 8 ; ぞ
+ db 8 ; だ
+ db 8 ; ぢ
+ db 8 ; づ
+ db 8 ; で
+ db 8 ; ど
+ db 9 ; ば
+ db 9 ; び
+ db 9 ; ぶ
+ db 8 ; べ
+ db 9 ; ぼ
+ db 9 ; ぱ
+ db 9 ; ぴ
+ db 9 ; ぷ
+ db 8 ; ぺ
+ db 10 ; ぽ
+ db 5 ; ぁ
+ db 5 ; ぃ
+ db 4 ; ぅ
+ db 4 ; ぇ
+ db 5 ; ぉ
+ db 7 ; ア
+ db 7 ; イ
+ db 7 ; ウ
+ db 7 ; エ
+ db 7 ; オ
+ db 7 ; カ
+ db 7 ; キ
+ db 7 ; ク
+ db 7 ; ケ
+ db 7 ; コ
+ db 7 ; サ
+ db 7 ; シ
+ db 7 ; ス
+ db 7 ; セ
+ db 7 ; ソ
+ db 7 ; タ
+ db 7 ; チ
+ db 7 ; ツ
+ db 7 ; テ
+ db 5 ; ト
+ db 7 ; ナ
+ db 7 ; ニ
+ db 6 ; ヌ
+ db 7 ; ネ
+ db 6 ; ノ
+ db 7 ; ハ
+ db 7 ; ヒ
+ db 7 ; フ
+ db 8 ; ヘ
+ db 7 ; ホ
+ db 7 ; マ
+ db 6 ; ミ
+ db 7 ; ム
+ db 7 ; メ
+ db 7 ; モ
+ db 7 ; ヤ
+ db 7 ; ユ
+ db 7 ; ヨ
+ db 7 ; ラ
+ db 6 ; リ
+ db 7 ; ル
+ db 6 ; レ
+ db 7 ; ロ
+ db 7 ; ワ
+ db 7 ; ヲ
+ db 7 ; ン
+ db 5 ; ッ
+ db 5 ; ャ
+ db 5 ; ュ
+ db 4 ; ョ
+ db 9 ; ガ
+ db 8 ; ギ
+ db 9 ; グ
+ db 9 ; ゲ
+ db 9 ; ゴ
+ db 8 ; ザ
+ db 8 ; ジ
+ db 9 ; ズ
+ db 9 ; ゼ
+ db 9 ; ゾ
+ db 9 ; ダ
+ db 8 ; ヂ
+ db 8 ; ヅ
+ db 9 ; デ
+ db 6 ; ド
+ db 8 ; バ
+ db 8 ; ビ
+ db 9 ; ブ
+ db 8 ; ベ
+ db 8 ; ボ
+ db 9 ; パ
+ db 7 ; ピ
+ db 8 ; プ
+ db 8 ; ペ
+ db 8 ; ポ
+ db 5 ; ァ
+ db 4 ; ィ
+ db 5 ; ゥ
+ db 5 ; ェ
+ db 5 ; ォ
+ db 6 ; 0
+ db 4 ; 1
+ db 6 ; 2
+ db 6 ; 3
+ db 6 ; 4
+ db 6 ; 5
+ db 6 ; 6
+ db 6 ; 7
+ db 6 ; 8
+ db 6 ; 9
+ db 5 ; -
+ db 7 ; A
+ db 6 ; B
+ db 7 ; C
+ db 6 ; D
+ db 6 ; E
+ db 6 ; F
+ db 7 ; G
+ db 6 ; H
+ db 3 ; I
+ db 7 ; J
+ db 6 ; K
+ db 6 ; L
+ db 7 ; M
+ db 7 ; N
+ db 7 ; O
+ db 6 ; P
+ db 7 ; Q
+ db 6 ; R
+ db 6 ; S
+ db 7 ; T
+ db 7 ; U
+ db 7 ; V
+ db 7 ; W
+ db 7 ; X
+ db 7 ; Y
+ db 6 ; Z
+ db 6 ; a
+ db 5 ; b
+ db 5 ; c
+ db 5 ; d
+ db 5 ; e
+ db 6 ; f
+ db 6 ; g
+ db 5 ; h
+ db 1 ; i
+ db 5 ; j
+ db 5 ; k
+ db 2 ; l
+ db 7 ; m
+ db 5 ; n
+ db 5 ; o
+ db 5 ; p
+ db 5 ; q
+ db 5 ; r
+ db 5 ; s
+ db 5 ; t
+ db 5 ; u
+ db 5 ; v
+ db 7 ; w
+ db 6 ; x
+ db 6 ; y
+ db 5 ; z
+ db 0
+ db 4 ; 、
+ db 4 ; 。
+ db 5 ; 『
+ db 5 ; 』
+ db 8 ; ×
+ db 5 ; “
+ db 5 ; ”
+ db 4 ; !
+ db 5 ; ?
+ db 5 ; :
+ db 2 ; ;
+ db 2 ; ,
+ db 2 ; .
+ db 4 ; ·
+ db 3 ; (
+ db 3 ; )
+ db 7 ; ~
+ db 8 ; ♂
+ db 5 ; ♀
+ db 0
+ db 0
+ db 0
+ db 0
+ db 0
+ db 0
+ db 0
+ db 0
+ db 0
+ db 0
+ db 0
+ db 0
+ db 0
+
+def_tile: macro
+; The image is 2bpp, 8x8 tiles, but the characters themselves are 16x10...
+_x = \1
+_y = \2
+_pos = $20 * (_x + 8 * _y) ; Max char width = 2 tiles, width = 8 chars
+_pos = _pos + 4 * _y ; Characters are 2 pixels taller than a tile
+_pos = _pos + $f0 * (_y / 4) ; Every 4 rows skip a whole tile
+ dw _pos
+endm
+
+text_chars_offsets::
+y = 0
+rept 32 ; height of image in characters
+x = 0
+rept 8 ; width of image in characters
+ def_tile x, y
+x = x + 1
+endr
+y = y + 1
+endr
diff --git a/source/hardware.inc b/include/hardware.inc
index 4b145d2..4b145d2 100644
--- a/source/hardware.inc
+++ b/include/hardware.inc
diff --git a/source/bank_00.asm b/source/bank_00.asm
index a73c322..bfb542a 100644
--- a/source/bank_00.asm
+++ b/source/bank_00.asm
@@ -635,520 +635,3 @@ farcall_ret::
inc sp
inc sp
ret
-
-SECTION "text_chars_offsets", ROM0[$286f]
-text_chars_widths::
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 4
- db 7
- db 7
- db 6
- db 6
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 8
- db 7
- db 6
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 6
- db 6
- db 6
- db 6
- db 7
- db 6
- db 7
- db 6
- db 7
- db 5
- db 5
- db 5
- db 4
- db 9
- db 8
- db 7
- db 8
- db 8
- db 9
- db 7
- db 9
- db 8
- db 8
- db 8
- db 8
- db 8
- db 8
- db 8
- db 9
- db 9
- db 9
- db 8
- db 9
- db 9
- db 9
- db 9
- db 8
- db 10
- db 5
- db 5
- db 4
- db 4
- db 5
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 5
- db 7
- db 7
- db 6
- db 7
- db 6
- db 7
- db 7
- db 7
- db 8
- db 7
- db 7
- db 6
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 6
- db 7
- db 6
- db 7
- db 7
- db 7
- db 7
- db 5
- db 5
- db 5
- db 4
- db 9
- db 8
- db 9
- db 9
- db 9
- db 8
- db 8
- db 9
- db 9
- db 9
- db 9
- db 8
- db 8
- db 9
- db 6
- db 8
- db 8
- db 9
- db 8
- db 8
- db 9
- db 7
- db 8
- db 8
- db 8
- db 5
- db 4
- db 5
- db 5
- db 5
- db 6
- db 4
- db 6
- db 6
- db 6
- db 6
- db 6
- db 6
- db 6
- db 6
- db 5
- db 7
- db 6
- db 7
- db 6
- db 6
- db 6
- db 7
- db 6
- db 3
- db 7
- db 6
- db 6
- db 7
- db 7
- db 7
- db 6
- db 7
- db 6
- db 6
- db 7
- db 7
- db 7
- db 7
- db 7
- db 7
- db 6
- db 6
- db 5
- db 5
- db 5
- db 5
- db 6
- db 6
- db 5
- db 1
- db 5
- db 5
- db 2
- db 7
- db 5
- db 5
- db 5
- db 5
- db 5
- db 5
- db 5
- db 5
- db 5
- db 7
- db 6
- db 6
- db 5
- db 0
- db 4
- db 4
- db 5
- db 5
- db 8
- db 5
- db 5
- db 4
- db 5
- db 5
- db 2
- db 2
- db 2
- db 4
- db 3
- db 3
- db 7
- db 8
- db 5
- db 0
- db 0
- db 0
- db 0
- db 0
- db 0
- db 0
- db 0
- db 0
- db 0
- db 0
- db 0
- db 0
-
-text_chars_offsets::
- dw $0000
- dw $0020
- dw $0040
- dw $0060
- dw $0080
- dw $00a0
- dw $00c0
- dw $00e0
- dw $0104
- dw $0124
- dw $0144
- dw $0164
- dw $0184
- dw $01a4
- dw $01c4
- dw $01e4
- dw $0208
- dw $0228
- dw $0248
- dw $0268
- dw $0288
- dw $02a8
- dw $02c8
- dw $02e8
- dw $030c
- dw $032c
- dw $034c
- dw $036c
- dw $038c
- dw $03ac
- dw $03cc
- dw $03ec
- dw $0500
- dw $0520
- dw $0540
- dw $0560
- dw $0580
- dw $05a0
- dw $05c0
- dw $05e0
- dw $0604
- dw $0624
- dw $0644
- dw $0664
- dw $0684
- dw $06a4
- dw $06c4
- dw $06e4
- dw $0708
- dw $0728
- dw $0748
- dw $0768
- dw $0788
- dw $07a8
- dw $07c8
- dw $07e8
- dw $080c
- dw $082c
- dw $084c
- dw $086c
- dw $088c
- dw $08ac
- dw $08cc
- dw $08ec
- dw $0a00
- dw $0a20
- dw $0a40
- dw $0a60
- dw $0a80
- dw $0aa0
- dw $0ac0
- dw $0ae0
- dw $0b04
- dw $0b24
- dw $0b44
- dw $0b64
- dw $0b84
- dw $0ba4
- dw $0bc4
- dw $0be4
- dw $0c08
- dw $0c28
- dw $0c48
- dw $0c68
- dw $0c88
- dw $0ca8
- dw $0cc8
- dw $0ce8
- dw $0d0c
- dw $0d2c
- dw $0d4c
- dw $0d6c
- dw $0d8c
- dw $0dac
- dw $0dcc
- dw $0dec
- dw $0f00
- dw $0f20
- dw $0f40
- dw $0f60
- dw $0f80
- dw $0fa0
- dw $0fc0
- dw $0fe0
- dw $1004
- dw $1024
- dw $1044
- dw $1064
- dw $1084
- dw $10a4
- dw $10c4
- dw $10e4
- dw $1108
- dw $1128
- dw $1148
- dw $1168
- dw $1188
- dw $11a8
- dw $11c8
- dw $11e8
- dw $120c
- dw $122c
- dw $124c
- dw $126c
- dw $128c
- dw $12ac
- dw $12cc
- dw $12ec
- dw $1400
- dw $1420
- dw $1440
- dw $1460
- dw $1480
- dw $14a0
- dw $14c0
- dw $14e0
- dw $1504
- dw $1524
- dw $1544
- dw $1564
- dw $1584
- dw $15a4
- dw $15c4
- dw $15e4
- dw $1608
- dw $1628
- dw $1648
- dw $1668
- dw $1688
- dw $16a8
- dw $16c8
- dw $16e8
- dw $170c
- dw $172c
- dw $174c
- dw $176c
- dw $178c
- dw $17ac
- dw $17cc
- dw $17ec
- dw $1900
- dw $1920
- dw $1940
- dw $1960
- dw $1980
- dw $19a0
- dw $19c0
- dw $19e0
- dw $1a04
- dw $1a24
- dw $1a44
- dw $1a64
- dw $1a84
- dw $1aa4
- dw $1ac4
- dw $1ae4
- dw $1b08
- dw $1b28
- dw $1b48
- dw $1b68
- dw $1b88
- dw $1ba8
- dw $1bc8
- dw $1be8
- dw $1c0c
- dw $1c2c
- dw $1c4c
- dw $1c6c
- dw $1c8c
- dw $1cac
- dw $1ccc
- dw $1cec
- dw $1e00
- dw $1e20
- dw $1e40
- dw $1e60
- dw $1e80
- dw $1ea0
- dw $1ec0
- dw $1ee0
- dw $1f04
- dw $1f24
- dw $1f44
- dw $1f64
- dw $1f84
- dw $1fa4
- dw $1fc4
- dw $1fe4
- dw $2008
- dw $2028
- dw $2048
- dw $2068
- dw $2088
- dw $20a8
- dw $20c8
- dw $20e8
- dw $210c
- dw $212c
- dw $214c
- dw $216c
- dw $218c
- dw $21ac
- dw $21cc
- dw $21ec
- dw $2300
- dw $2320
- dw $2340
- dw $2360
- dw $2380
- dw $23a0
- dw $23c0
- dw $23e0
- dw $2404
- dw $2424
- dw $2444
- dw $2464
- dw $2484
- dw $24a4
- dw $24c4
- dw $24e4
- dw $2508
- dw $2528
- dw $2548
- dw $2568
- dw $2588
- dw $25a8
- dw $25c8
- dw $25e8
- dw $260c
- dw $262c
- dw $264c
- dw $266c
- dw $268c
- dw $26ac
- dw $26cc
- dw $26ec
diff --git a/source/bank_02.asm b/source/bank_02.asm
index 1300a2e..c083325 100644
--- a/source/bank_02.asm
+++ b/source/bank_02.asm
@@ -1,4 +1,4 @@
-SECTION "print_char", ROMX[$4c80], BANK[$02]
+SECTION "text_char_draw", ROMX[$4c80], BANK[$02]
; Parameters:
; de - character to print
; b - x position