Skip to content

Commit 9596a59

Browse files
committed
Don't include embedded graphics in pew.py
pew.py contained embedded graphics for nice-looking pixels and the game selection menu. This used up a lot of space. Now the graphics for the pixels is generated on the fly, and the graphics for the menu has been moved into the font.
1 parent 27e4cb7 commit 9596a59

File tree

3 files changed

+126
-207
lines changed

3 files changed

+126
-207
lines changed

font/font.bmp

0 Bytes
Binary file not shown.

pewpew_m4/pew.py

Lines changed: 9 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -19,94 +19,10 @@
1919
b'wUws_{{HHIV{{HH]s{{HLD@{{HbbH{{HHV[a{D_}D{Cw|wC{wwwwwwpwOwp{WKfxu{@YYY@{'
2020
)
2121
_SALT = const(132)
22-
_BANK = (
23-
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
24-
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
25-
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
26-
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
27-
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
28-
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
29-
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
30-
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00""""""\x00\x02"""""" \x02'
31-
b'\x02\x02\x02\x02\x02\x02\x00\x00 \x00\x00\x00\x00\x00\x00\x00\x00'
32-
b'\x02\x02\x02\x02\x02\x02\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
33-
b'\x00\x00\x00\x00\x00\x00\x00 \x00 \x00 \x00 \x00\x00\x00\x00\x00\x00\x00'
34-
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00 \x00\x00\x00 \x00\x00\x00'
35-
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
36-
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02h\xb8\xb8\xb8\xb8'
37-
b'\xb6 \x08\x88\x88\x88\x88\x88\x88\x80\x08hhhhhh`\x06\x86\x86\x86\x86'
38-
b'\x86\x86\x80\x06ffffff`\x08hhhhhh`\x06ffffff`\x06FFFFFF@\x04dddddd`\x04D'
39-
b'DDDDD@\x06FFFFFF@\x04DDDDDD@\x04dDdDdD`\x02DDDDDD \x00\x00\x00\x00\x00'
40-
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x029\x99\x99\x99\x99\x93 '
41-
b'\t\x99\x99\x99\x99\x99\x99\x90\t9999990\x03\x93\x93\x93\x93\x93\x93\x90'
42-
b'\x033333330\t9999990\x033333330\x03\x13\x13\x13\x13\x13\x13\x10\x0111111'
43-
b'10\x01\x11\x11\x11\x11\x11\x11\x10\x03\x13\x13\x13\x13\x13\x13\x10\x01'
44-
b'\x11\x11\x11\x11\x11\x11\x10\x011\x111\x111\x110\x02\x11\x11\x11\x11\x11'
45-
b'\x11 \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
46-
b'\x02\xce\xee\xee\xee\xee\xec \x0e\xee\xee\xee\xee\xee\xee\xe0\x0c\xec'
47-
b'\xec\xec\xec\xec\xec\xe0\x0e\xee\xee\xee\xee\xee\xee\xe0\x0e\xce\xce\xce'
48-
b'\xce\xce\xce\xc0\x0c\xec\xec\xec\xec\xec\xec\xe0\x0c\xcc\xcc\xcc\xcc\xcc'
49-
b'\xcc\xc0\x0e\xce\xce\xce\xce\xce\xce\xc0\x0c\xcc\xcc\xcc\xcc\xcc\xcc\xc0'
50-
b'\x0c\xac\xac\xac\xac\xac\xac\xa0\n\xca\xca\xca\xca\xca\xca\xc0\n\xaa\xaa'
51-
b'\xaa\xaa\xaa\xaa\xa0\x0c\xac\xac\xac\xac\xac\xac\xa0\x02\xaa\xaa\xaa\xaa'
52-
b'\xaa\xaa \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
53-
b'\x00\x00\'wwwwr\x00\x07wwwwwwp\x02rrrrrrp\x07wwwwwwp\x07\'\'\'\'\'\' '
54-
b'\x02rrrrrrp\x02"""""" \x07\'\'\'\'\'\' \x02"""""" \x02\x02\x02\x02\x02'
55-
b'\x02\x02\x00\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x02\x02\x02\x02'
56-
b'\x02\x02\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
57-
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x8b\xbb\xbb\xbb\xbb\xb8 '
58-
b'\x0b\xbb\xbb\xbb\xbb\xbb\xbb\xb0\x08\xb8\xb8\xb8\xb8\xb8\xb8\xb0\x0b'
59-
b'\xbb\xbb\xbb\xbb\xbb\xbb\xb0\x0b\x8b\x8b\x8b\x8b\x8b\x8b\x80\x08\xb8'
60-
b'\xb8\xb8\xb8\xb8\xb8\xb0\x08\x88\x88\x88\x88\x88\x88\x80\x0b\x8b\x8b'
61-
b'\x8b\x8b\x8b\x8b\x80\x08\x88\x88\x88\x88\x88\x88\x80\x06\x86\x86\x86'
62-
b'\x86\x86\x86\x80\x08hhhhhh`\x06ffffff`\x06\x86\x86\x86\x86\x86\x86\x80'
63-
b'\x02ffffff \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
64-
b'\x00\x02\x9a\xaa\xaa\xaa\xaa\xa9 \n\xaa\xaa\xaa\xaa\xaa\xaa\xa0\t\xa9'
65-
b'\xa9\xa9\xa9\xa9\xa9\xa0\n\xaa\xaa\xaa\xaa\xaa\xaa\xa0\n\x9a\x9a\x9a\x9a'
66-
b'\x9a\x9a\x90\t\xa9\xa9\xa9\xa9\xa9\xa9\xa0\t\x99\x99\x99\x99\x99\x99\x90'
67-
b'\n\x9a\x9a\x9a\x9a\x9a\x9a\x90\t\x99\x99\x99\x99\x99\x99\x90\t9999990'
68-
b'\x03\x93\x93\x93\x93\x93\x93\x90\x033333330\t9999990\x02333333 \x00\x00'
69-
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\xee\xee\xee'
70-
b'\xee\xee\xee \x0e\xee\xee\xee\xee\xee\xee\xe0\x0e\xee\xce\xee\xce\xee'
71-
b'\xce\xe0\x0e\xee\xee\xee\xee\xee\xee\xe0\x0c\xec\xec\xec\xec\xec\xec\xe0'
72-
b'\x0e\xee\xee\xee\xee\xee\xee\xe0\x0e\xce\xce\xce\xce\xce\xce\xc0\x0c\xec'
73-
b'\xec\xec\xec\xec\xec\xe0\x0c\xcc\xcc\xcc\xcc\xcc\xcc\xc0\x0e\xce\xce\xce'
74-
b'\xce\xce\xce\xc0\x0c\xcc\xcc\xcc\xcc\xcc\xcc\xc0\x0c\xcc\xec\xcc\xec\xcc'
75-
b'\xec\xc0\x0c\xcc\xcc\xcc\xcc\xcc\xcc\xc0\x02\xcc\xcc\xcc\xcc\xcc\xcc '
76-
b'\x00\x00\x00\x00\x00\x00\x00\x00\x88f\x88f\x88f\x88f\x88f\x88f\x88f\x88'
77-
b'ff\x88f\x88f\x88f\x88\x00\x00\x00\x00\x00\x00\x00\x00\xee\xee\xee\xee'
78-
b'\xee\xee\xee\xee\xdd\xdd\xdd\xdd\xdd\xdd\xdd\xdd\x00\x00\x00\x00\x00\x00'
79-
b'\x00\x00\'\'\'\'\'\'\'\'wwwwwwwwrrrrrrrrwwwwwwww\'\'\'\'\'\'\'\'wwwwwwww'
80-
b'rrrrrrrrwwwwwwww\'\'\'\'\'\'\'\'\x88f\x88f\x88f\x88f\x88f\x88f\x88f\x88f'
81-
b'f\x88f\x88f\x88f\x88f\x88f\x88f\x88d\x00\x88f\x88f\x88f\x02\xde\x88f\x88'
82-
b'f\x88d.\xedf\x88f\x88f\x80\xde\xd7f\x88f\x88f\x80\xedp\x88f\x88f\x88`'
83-
b'\xed\x07\x88f\x88f\x88`\xed\x02f\x88f\x88f\x80\xed\x07f\x88f\x88f\x80'
84-
b'\xed\x07\x88f\x88f\x88`\xed\x07\x88f\x88f\x88`\xed\x02f\x88f\x88f\x80'
85-
b'\xed\x07f\x88f\x88f\x80\xed\x07\x88f\x88f\x88`\xed\x07\x88f\x88f\x88`'
86-
b'\xed\x02f\x88f\x88f\x80\xed\x07f\x88f\x88f\x80\xed\x07\x88f\x88f\x88`'
87-
b'\xed\x07\x88f\x88f\x88`\xed\x02f\x88f\x88f\x80\xed\x07f\x88f\x88f\x80'
88-
b'\xed\x07\x88f\x88f\x88`\xed\x07\x88f\x88f\x88`\xed\x02f\x88f\x88f\x80'
89-
b'\xed\x07f\x88f\x88f\x80\xed\x07\x88f\x88f\x88`\xed\x07\x88f\x88f\x88`'
90-
b'\xed\x02f\x88f\x88f\x80\xed\x07f\x88f\x88f\x80\xed\x07\x88f\x88f\x88`'
91-
b'\xed\x07\x88f\x88f\x88`\xed\x02f\x88f\x88f\x80\xed\x07f\x88f\x88f\x80'
92-
b'\xed\x07\x88f\x88f\x88`\xed\x07\x88f\x88f\x88`\xed\x02f\x88f\x88f\x80'
93-
b'\xed\x07f\x88f\x88f\x80\xed\x07\x88f\x88f\x88`\xder\x88f\x88f\x88`~\xedf'
94-
b'\x88f\x88f\x84-\xdef\x88f\x88f\x86\x02}\x88f\x88f\x88fd\x00\x88f\x88f'
95-
b'\x88f\x86Df\x88f\x88f\x88fff\x88f\x88f\x88f\x88wwwwwwwwrrrrrrrrwwwwwwww'
96-
b'\'\'\'\'\'\'\'\'wwwwwwwwrrrrrrrrwwwwwwww\'\'\'\'\'\'\'\'wwwwwwww\x00\x00'
97-
b'\x00\x00\x00\x00\x00\x00\xee\xee\xee\xee\xee\xee\xee\xee\xdd\xdd\xdd\xdd'
98-
b'\xdd\xdd\xdd\xdd\x00\x00\x00\x00\x00\x00\x00\x00\x88f\x88f\x88f\x88ff'
99-
b'\x88f\x88f\x88f\x88f\x88f\x88f\x88f\x88wwwwwwwwrrrrrrrrwwwwwwww\'\'\'\''
100-
b'\'\'\'\'wwwwwwwwrrrrrrrrwwwwwwww\'\'\'\'\'\'\'\'wwwwwwwwrrrrrrrrwwwwwwww'
101-
b'\'\'\'\'\'\'\'\'wwwwwwwwrrrrrrrrwwwwwwww\'\'\'\'\'\'\'\'UUUUUUUUUUUUUUUU'
102-
b'UU \x02UUUU\x02R\xde\xee \x00\x00%\r\x0e\xee\xde\xe7\xee\xee\xd2\x0e~'
103-
b'\xee}\xe7\xdd\xdd\xd2\x0e\xdd\xee}\xe7p\x00%\x0e\xdd\xdd}\xd7\xe0UU\x0e'
104-
b'\xddw\xe7~\xd0UU\x0e\xde\xdd~\xe7pUU\x0e~\xd7\xe7\xde\xd2UU\r\r\xd7\xdew'
105-
b'\x05UU\x02R\xdd}\xed%UUUU \x00\x02UUUUUUUUUUUUUUUUUUU')
106-
107-
_PALETTE = array.array('H', [0, 176, 11321, 248, 16418, 8184, 8259, 65402, 92,
108-
27130, 43260, 57501, 33022, 47830, 56319, 8184])
10922

23+
_PALETTE = array.array('H', (0x0, 0x4a29, 0xc032, 0x98, 0xa0fc, 0xf42, 0x825b,
24+
0xf8, 0xfe, 0x125b, 0xcffb, 0xe0cf, 0xffff,
25+
0x1ff8, 0xdbff, 0xffff))
11026

11127
K_X = 0x01
11228
K_DOWN = 0x02
@@ -270,7 +186,12 @@ def init():
270186
_tick = time.monotonic()
271187

272188
_game = stage.Stage(ugame.display, 12)
273-
tiles = stage.Bank(_BANK, _PALETTE)
189+
_bank = bytearray(2048)
190+
for c in range(16):
191+
for y in range(0, 15):
192+
for x in range(0, 7):
193+
_bank[c * 128 + y * 8 + x] = c | c << 4
194+
tiles = stage.Bank(_bank, _PALETTE)
274195
_grid = stage.Grid(tiles, 10, 8)
275196
_grid.move(0, 0)
276197
_game.layers = [_grid]

0 commit comments

Comments
 (0)