junglejourney
changeset 123:cb7d76bbbb82
Added an overlay image for the title screen.
| author | David Boddie <david@boddie.org.uk> |
|---|---|
| date | Sat Sep 10 00:59:32 2011 +0200 |
| parents | 80e5405560ee |
| children | 4d683f83665c |
| files | build.py images/overlay.xpm images/title-screen.xpm tools/makesprites.py |
| diffstat | 4 files changed, 118 insertions(+), 49 deletions(-) [+] |
line diff
1.1 --- a/build.py Fri Sep 09 21:34:55 2011 +0200 1.2 +++ b/build.py Sat Sep 10 00:59:32 2011 +0200 1.3 @@ -146,7 +146,10 @@ 1.4 files.append(("JUNGLE", code_start, code_start, code)) 1.5 1.6 data = makesprites.read_sprites([makesprites.title]) 1.7 - data += makesprites.encode(makesprites.read_sprites([makesprites.completed])) 1.8 + completed = makesprites.encode(makesprites.read_sprite(makesprites.completed)) 1.9 + overlay = makesprites.read_sprite(makesprites.overlay) 1.10 + combined = makesprites.combine(completed, overlay) 1.11 + data += combined 1.12 files.append(("TITLE", 0x5A80, 0x5A80, data)) 1.13 1.14 data = makesprites.read_sprites(makesprites.tiles) 1.15 @@ -164,7 +167,7 @@ 1.16 u.minor = 6 1.17 1.18 # Insert a gap at the start of the tape. 1.19 - #u.chunks.append((0x112, "\x01\x00\x00\x00")) 1.20 + u.chunks.append((0x110, "\xdc\x05")) 1.21 u.import_files(0, files) 1.22 1.23 # Write the new UEF file.
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 2.2 +++ b/images/overlay.xpm Sat Sep 10 00:59:32 2011 +0200 2.3 @@ -0,0 +1,53 @@ 2.4 +/* XPM */ 2.5 +static char * overlay_xpm[] = { 2.6 +"160 48 2 1", 2.7 +" c #000000", 2.8 +". c #FFFFFF", 2.9 +" ", 2.10 +" ", 2.11 +" ", 2.12 +" ", 2.13 +" ", 2.14 +" ", 2.15 +" ", 2.16 +" ................................................................ ", 2.17 +" .. .. ", 2.18 +" .. .. ", 2.19 +" . ........ ......... ........... ........ ....... . ", 2.20 +" . ......... ......... ........... ......... ......... . ", 2.21 +" . ... ... ... ... ... ... ... ... . ", 2.22 +" . ... .. ... ... ... .. .. .. . ", 2.23 +" . ... .. ... ... ... .. .. .. . ", 2.24 +" . ... .. ... ... ... .. .. .. . ", 2.25 +" . ... ... ........ ... ... ... .. .. . ", 2.26 +" . ......... ........ ... ......... .. .. . ", 2.27 +" . ........ ........ ... ........ .. .. . ", 2.28 +" . ....... ... ... ....... .. .. . ", 2.29 +" . ... .... ... ... ... .... .. .. . ", 2.30 +" . ... .... ... ... ... .... .. .. . ", 2.31 +" . ... .... ... ... ... .... ... ... . ", 2.32 +" . ... .... ......... ... ... .... ......... . ", 2.33 +" . ... ... ......... ... ... ... ....... . ", 2.34 +" .. .. ", 2.35 +" .. .. ", 2.36 +" ................................................................ ", 2.37 +" ", 2.38 +" ", 2.39 +" ..... ..... ...... ...... .. .. ... ...... ...... ", 2.40 +" ....... ....... ...... ...... .. .. ..... ....... ...... ", 2.41 +" .. .. .. .. .. .. .. .. ... ... .. ... .. ", 2.42 +" .. .. .. .. .. .. .. .. .. .. .. .. ", 2.43 +" .. .. .. .. .. .. .. .. .. .. .. .. ", 2.44 +" ...... .. .. ..... .. .. .. .. .. .. ... ..... ", 2.45 +" ...... .. .. ..... .. .. .. .. ....... ...... ..... ", 2.46 +" .. .. .. .. .. .. .. .. ....... .... .. ", 2.47 +" .. .. .. .. .. .. .. .. .. .. ..... .. ", 2.48 +" .. .. .. .. .. .. ........ .. .. .. ... .. ", 2.49 +" ....... ....... .. .. ........ .. .. .. ... ...... ", 2.50 +" ..... ..... .. .. ... ... .. .. .. .. ...... ", 2.51 +" ", 2.52 +" ", 2.53 +" ", 2.54 +" ", 2.55 +" ", 2.56 +" "};
3.1 --- a/images/title-screen.xpm Fri Sep 09 21:34:55 2011 +0200 3.2 +++ b/images/title-screen.xpm Sat Sep 10 00:59:32 2011 +0200 3.3 @@ -1,55 +1,56 @@ 3.4 /* XPM */ 3.5 static char * title_screen_xpm[] = { 3.6 -"160 48 4 1", 3.7 +"160 48 5 1", 3.8 " c None", 3.9 ". c #000000", 3.10 "+ c #008000", 3.11 "@ c #FFFF00", 3.12 +"# c #FF0000", 3.13 "..........................+..@..@@.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.@@..@..............................", 3.14 ".........................+..@..@.@@@.@+@@@@+@@@@+@@@+@@@+@@@@+@@@@+@@@@@@+@@@+@@@@+@@@@@@+@@@+@@@@+@@@@@@+@@@@+@@@+@@@@+@@@@@@.@................................", 3.15 ".........................+...@...+.+@@@@+@@@@+@@@@+@@@+@@@+@@@@+@@@@+@+@@@@+@@@+@@@@+@+@@@@+@@@+@@@@+@+@@@@+@@@@+@@@+@@@@+@.@++...+.............................", 3.16 -"..........................+....@+.@.@.@@@@+@+@@+@+@+@+@+@+@@+@+@@+@+@+@@+@+@+@+@@+@+@+@@+@+@+@+@@+@+@+@@+@+@@+@+@+@+@@+@+@.++..+................................", 3.17 -"..........................+.++.....++@@.@+@+@++@+@+@+@+@+@++@+@++@+@+@++@+@+@+@++@+@+@++@+@+@+@++@+@+@++@+@++@+@+@+@++@+@+++.+..................................", 3.18 -".........................++++++..@....+@+++++.++++@+++@+++.++++@++++.+@++++@+++.++++@+.++++@+++.++++.+@++++.++++@+++.++++.......................................", 3.19 -"........................+..+++++...+.+.+++.++++.+++.+++.++++.++++.++++++.+++.++++.++++++.+++.++++.++++++.++++.+++.++++.+++......................................", 3.20 -".......................+...+++++++....++...................+++...........+.++.....+.+.+......+.+.....+.+++.++...................................................", 3.21 -"......................+.....+++++++..+.++.++++++++++...+++.+.++.+++..+++..++.+.++..+.+..++++..+.+.++..++.++.+.++++++++..+..+....................................", 3.22 -"......................+.....+++++++....+..+++++++++++..+++..++..+++..++++.+.++.+++.++..++++++..++.+++..+++++..+++++++....+...+..................................", 3.23 -".....................++.......++++++..+.+..++++++++++..+++..+.+.+++..++++..++..+++....++++++++....+++.+.++.+..++......+.++......................................", 3.24 -"....................+.+.........++++...+++....+++......+++.+.+..+++..+++++..+..+++.+.++++...+++...+++..++.+.+.++.+.+++.....+....................................", 3.25 -"....................+.+.++.......++++...++.+..+++.+.+..+++..++..+++..++++++....+++...+++..+..++.+.+++..+++++..++..+.+.+.+...+...................................", 3.26 -"...................+...+++++......+++..++.+...+++..+.+.+++..+.+.+++..+++.++..+.+++..++++..........+++.+.+.+.+.++.....+.+.+......................................", 3.27 -"..................+....++++++......++..+.+++..+++..++..+++.+.+..+++..+++.+++...+++..+++..+..+..+..+++..+.+++..++++++.+......+...................................", 3.28 -"..................+....++++++.......+..+++.+..+++.+.+..+++..+@+.+++..+++..+++..+++..+++.+.+.......+++..++..+..+++++...+.+.......................................", 3.29 -"...................+....++++++........+.+++...+++..++..+++.+.+..+++..+++...++..+++..+++..+..++++..+++...+.+.+.++....++...+.+....................................", 3.30 -"...................+...................++.++..+++..+.+.+++..+...+++..+++.+.+++.+++..++++..+.++++..+++.++.+++..++.+.+..++........................................", 3.31 -"..................+++................++.......+++..++..++++..+.++++..+++....++++++...+++......++..+++...+.+.+.++.++.+.+.+.+.....................................", 3.32 -"..................+++.....@...........++.++...+++.+.++..+++....+++...+++..+..+++++.+.++++....+++..+++..+.+.+..++..++.+.+...+....................................", 3.33 -"..................++....@@@@@........+.+..++.++++..++.+.++++..++++.+.+++...+.+++++....+++++.+++...+++.........++.........+......................................", 3.34 -"...................+.....@@@.........++++.++++++....++...++++++++....+++..+...++++..+..+++++++..+.++++++++++..+++++++++....+....................................", 3.35 -"........................@@@@@........++.+...+++....++.++...++++....+.+++.+@++..+++.+....+++++..+..+++++++++...++++++++..........................................", 3.36 -".........................@+@..........++..+.....+.+..+.+.+......+.+.......+..+.......+.........++...........+.............+.....................................", 3.37 -"..........................++........+.......................+..........+...............+.....++.++.................+.++.+....+..................................", 3.38 -"...........................+.......+...++++++++++..+...++++...+.+++.+....+++.+++++++.....+++...++..++..++++++++..+..++.+..+.+...................................", 3.39 -"...........................+.........+.+++++++++++...++++++++...+++...+..+++.+++++++++...++++.++.+.+++.+++++++..++.+.++..++.....................................", 3.40 -"...........................++...........++++++++++..++++..++++..+++..+.+.+++.+++...++++..++++...+..+++.++.......++..+.+..++.....................................", 3.41 -"............................+....+.+..+....+++......+++....+++..+++..++..+++.+++.+...++..+++++..+..+++.++.+..++.+++..+..++..+...................................", 3.42 -"............................+.++++..+..+.+.+++.+.+.++++.+..++++.+++.+.+..+++.+++...+.++..++++++....+++.++..+.+...+++...+++......................................", 3.43 -"....................++.+....++..+++...+.++.+++.....+++...+..+++.+++..+.+.+++.+++.+...++..+++.++..+.+++.++......+..+++.+++..+....................................", 3.44 -".....................++++...+...+...+..++..+++..+..+++..+...+++.+++..+@+.+++.+++...++++..+++.+++...+++.++++++..+...+++++...+.+..................................", 3.45 -"......................+..+.++...........++.+++.++..+++.+.++.+++.+++.+.+..+++.+++++++++...+++..+++..+++.+++++..+..+..+++..++.....................................", 3.46 -"..........................++.......+..+.+..+++...+.+++..++..+++.+++..+...+++.+++++++...+.+++...++..+++.++......+.+..+++.+.++...+................................", 3.47 -"..................+.......+.........+..++..+++.++..+++..+...+++.+++...+..+++.+++...++....+++.+.+++.+++.++.+..+.++.+.+++..++.+.+.................................", 3.48 -".....................+....+.......+......+.+++..+..++++..+.++++.++++....++++.+++.+.+++.+.+++....++++++.++..++.+.+...+++.++......................................", 3.49 -".................++.......+...........++...+++...+..+++....+++...+++....+++..+++....++...+++..+..+++++.++..+..+..+..+++..+++.+..................................", 3.50 -"...................+..+..++.........+..++.++++.+.+..++++..++++.+.++++..++++..+++..+..++..+++.+...+++++.++.........+.+++...+.....................................", 3.51 -"..................+.+..+.+........+....++++++...+.+..++++++++.....++++++++...+++.+...+++.+++...+..++++.+++++++++....+++.+.....+.................................", 3.52 -"....................+..+....+........+...+++..+..++....++++...+.+...++++...+..++...+..++.+++.++.+..+++.++++++++..+..++...+.+....................................", 3.53 -"....................+..+..+..+......+..+........+...+.......+..+.++.......++.....++............+.+...............+.....+....+...................................", 3.54 -"................+...+...+.+..+..........+....+....+....+..+..++..+..+.+..+..+.+..+..+..+.+..+..+...+.+..+..++..+..+.+.+..++.....................................", 3.55 -".................+...+..+.+...+.................................................................................................................................", 3.56 -".................+.+.+..+..+..+....++...........................................................................................................................", 3.57 -"..................+..+...+.+..+...+.++..........................................................................................................................", 3.58 -"..................+..+.+.+.+..+..+.++.+.........................................................................................................................", 3.59 -"..................+....+.+.+.+....+++.+.........................................................................................................................", 3.60 -"..................+....+...+.+...+.+++.+........................................................................................................................"}; 3.61 +"...#..#..#................+....@+.@.@.@@@@+@+@@+@+@+@+@+@+@@+@+@@+@+@+@@+@+@+@+@@+@+@+@@+@+@+@+@@+@+@+@@+@+@@+@+@+@+@@+@+@.++..+...+.....+............#..#..#...", 3.62 +"...+.+..#.................+.++.....++@@.@+@+@++@+@+@+@+@+@++@+@++@+@+@++@+@+@+@++@+@+@++@+@+@+@++@+@+@++@+@++@+@+@+@++@+@+++.+.....+.....+.............#..+.+...", 3.63 +"....++.+.#...............++++++..@....+@+++++.++++@+++@+++.++++@++++.+@++++@+++.++++@+.++++@+++.++++.+@++++.++++@+++.++++..........+....+.............#.+.++....", 3.64 +"...#..+++++.............+..+++++...+.+.+++.++++.+++.+++.++++.++++.++++++.+++.++++.++++++.+++.++++.++++++.++++.+++.++++.+++........++....+............+++++..#...", 3.65 +"...#.+..+#.+...........+...+++++++....++...................+++...........+.++.....+.+.+......+.+.....+.+++.++.....................++...+............+.#+..+.#...", 3.66 +"..+.++.#.#.+..........+.....+++++++..+.++.++++++++++...+++.+.++.+++..+++..++.+.++..+.+..++++..+.+.++..++.++.+.++++++++..+..+.....+++...+............+.#.#.++.+..", 3.67 +"..+++.#...+...........+.....+++++++....+..+++++++++++..+++..++..+++..++++.+.++.+++.++..++++++..++.+++..+++++..+++++++....+...+..++.+....+............+...#.+++..", 3.68 +"...+.+..+++..........++.......++++++..+.+..+++++@++++..+++..+.+.+++..++++..++..+++....++++++++....+++.+.++.+..++......+.++......+.+.+....+...........+++..+.+...", 3.69 +"....++.#.+..........+.+.........++++...+++....+++......+++.+.+..+++..+++++..+..+++.+.++++...+++...+++..++.+.+.++.+.+++.....+....+++..+...+............+.#.++....", 3.70 +"...#..+...+.........+.+.++.......++++...++.+..+++.+.+..+++..++..+++..++++++....+++...+++..+..++.+.+++..+++++..++..+.+.+.+...+...++...+...+...........+...+..#...", 3.71 +"...#.#.++..........+...+++++......+++..++.+...+++..+.+.+++..+.+.+++..+++.++..+.+++..++++..........@++.+.+.+.+.++.....+.+.+......+.....+.+..............++.#.#...", 3.72 +"....#..+.+........+....++++++......++..+.+++..+++..++..+++.+.+..+++..+@+.+++...+++..+++..+..++.+..+++..+.+++..++++++.+......+.........+.+.............+.+..#....", 3.73 +"...#..#..#+.......+....++++++.......+..+++.+..+++.+.+..+++..+@+.+@+..+++..+++..+++..+++.+.+.......+++..++..+..+@+++...+.+.............++.............+#..#..#...", 3.74 +"...#.#..#.+........+....++++++........+.+++...+++..++..+++.+.+..+++..+++...++..+++..+++..+..++++..+++...+.+.+.++....++...+.+..........+.++...........+.#..#.#...", 3.75 +"..+.#..#.#.........+...................++.++..+++..+.+.+++..+...+++..+++.+.+++.+++..++++..+.++++..+++.++.+++..++.+.+..++.............+....+...........#.#..#.+..", 3.76 +"..++..#..#........+++................++.......+@+..++..++++..+.++++..+++....++++@+...+++......++..+++...+.+.+.++.++.+.+.+.+........++......+..........#..#..++..", 3.77 +"...+++..++........+++.....@...........++.++...+++.+.++..+@+....+++...+++..+..+++++.+.++++....+++..+++..+.+.+..++..++.+.+...+......+.+......+..........++..+++...", 3.78 +"....++.+@++.......++....@@@@@........+.+..++.++++..++.+.++++..++++.+.+++...+.+++++....++@++.+++...+++.........++.........+.......+++.......++........++@+.++....", 3.79 +"...#.++@.+.........+.....@@@.........++++.++++++....++...++++++++....+++..+...+@++..+..+++++++..+.+@++++++++..+++++++++....+...............+.+........+.@++.#...", 3.80 +"...#.++.+...............@@@@@........++.+...+++....++.++...++++....+.+++.+@++..+++.+....+++++..+..+++++++++...++++++@+....................+..++........+.++.#...", 3.81 +"....#..+.#...............@+@..........++..+.....+.+..+.+.+......+.+.......+..+.......+.........++...........+.............+...............+...++......#.+..#....", 3.82 +"...#..#..#................++........+.......................+..........+...............+.....++.++.................+.++.+....+...........+....+++.....#..#..#...", 3.83 +"...#.#..#.+................+.......+...++++++++++..+...++++...+.+++.+....+++.+++++++.....+++...++..++..++++++++..+..++.+..+.+............+....+.+....+.#..#.#...", 3.84 +"..+.#..#.#.+...............+.........+.+++++++++++...++++++++...+++...+..+++.+++++++++...++++.++.+.+++.+++++++..++.+.++..++..............+.....++...+.#.#..#.+..", 3.85 +".+@+..#..#.+...............++...........++++++++++..++++..++++..+++..+.+.+++.+++...++++..++++...+..+++.++.......++..+.+..++...............+.....+...+.#..#..+@+.", 3.86 +"..++.+..#.+.................+....+.+..+....+++......+++....+++..+++..++..+++.+++.+...++..+++++..+..+++.++.+..++.+++..+..++..+.............+..........+.#..+.++..", 3.87 +"....++.#.+..................+.++++..+..+.+.+++.+.+.++++.+..++++.+++.+.+..+++.+++...+.++..++++++....+++.++..+.+...+++...+++...............+............+.#.++....", 3.88 +"...#..+.+++.........++.+....++..+++...+.++.+++.....+++...+..+++.+++..+.+.+++.+++.+...++..+@+.++..+.++@.++......+..+++.+++..+...........++............+++.+..#...", 3.89 +"...+.#.+++...........++++...+...+...+..++..++@..+..@++..+...+++.+++..+@+.+++.+++...++++..+++.+++...+++.++++++..+...+++++...+.+........+.++............+++.#.+...", 3.90 +"....+..+..............+..+.++...........++.+++.++..+++.+.++.+@+.+++.+.+..+++.@++++++@+...+++..+@+..+++.@++@+..+..+..++@..++.........@@@+.+..............+..+....", 3.91 +"...#.++..#................++.......+..+.+..+++...+.++@..++..+++.++@..+...@++.+++@+++...+.++@...++..+@+.++......+.+..@++.+.++...+...@.@.@+.............#..++.#...", 3.92 +"...#.+..#.+.......+.......+.........+..++..+@+.++..+++..+...++@.+++...+..+++.+++...++....+++.+.+++.+++.++.+..+.++.+.+++..++.+.+.....@.@@.............+.#..+.#...", 3.93 +"....#..#.@...........+....+.......+......+.+++..+..@+++..+.@+++.@+++....+++@.@++.+.+@+.+.@++....+@+++@.+@..++.+.+...+@+.++...........@.@....+.........@.#..#....", 3.94 +"...#..#.@@@......++.......+...........+@...@++...+..++@....++@...++@....@++..++@....++...++@..+..+@+++.++..+..+..+..+++..+++.+........@......+.......@@@.#..#...", 3.95 +"...#.#..+@+........+..+..++.........+..++.+++@.+.+..@+++..+@++.+.@+++..+++@..+++..+..@+..+++.+...+++@+.@+.........+.++@...+.......+......+...........+@+..#.#...", 3.96 +".+..#..#.+........+.+..+.+........+....+@++@+...+.+..@+@+@++@.....+@++@+@+...+@+.+...++@.+@+...+..@+++.++@+@++@+....@++.+.....+....+..................+.#..#..+.", 3.97 +"..++..++++..........+..+....+........+...+@+..+..++....+@+@...+.+...+@+@...+..+@...+..@+.@+@.++.+..@+@.+@+@++@+..+..+@...+.+.......+..................++++..++..", 3.98 +"..+++++.+...........+..+..+..+......+..+........+...+.......+..+.++.......++.....++............+.+...............+.....+....+......++.....+.+..........+.+++++..", 3.99 +"....++.#.#......+...+...+.+..+..........+....+....+....+..+..++..+..+.+..+..+.+..+..+..+.+..+..+...+.+..+..++..+..+.+.+..++.........+...+....+........#.#.++....", 3.100 +"...++.#..#.......+...+..+.+...+.....................................................................................................+..+......+.......#..#.++...", 3.101 +"..++.++.##.......+.+.+..+..+..+....++................+.............................................................................++...+..+..+.......##.++.++..", 3.102 +"....#..+..........+..+...+.+..+...+.++.......+......+.......+....+.........+.....+.........+..++.....+.......+.+....+...+..........++...+.+...+.........+..#....", 3.103 +"...#..++++........+..+.+.+.+..+..+.++.+....++.+...+.+...+..+.+..+.+++......++...+.....+..+....+.++....+......++.+..+....+....+.....+....+.+..+........++++..#...", 3.104 +"...#.#..+.........+....+.+.+.+....+++.+...+..+.+...+..+..+..+...++.+.++...++.+..+...++.+.....+.++.+..+...++...++.+..+.+..+..+.++..++...+..+..+.........+..#.#...", 3.105 +"....#..#.#........+....+...+.+...+.+++.+.+.++..++..+..+..+..+..+..+.++.+.+.++.+.+..+......+..++..+.+..+.++.+.+..++..+.+..+.+.++++..++..+.+...+........#.#..#...."};
4.1 --- a/tools/makesprites.py Fri Sep 09 21:34:55 2011 +0200 4.2 +++ b/tools/makesprites.py Sat Sep 10 00:59:32 2011 +0200 4.3 @@ -28,7 +28,7 @@ 4.4 strings = strings[-height:] 4.5 4.6 if not symbols: 4.7 - symbols = [(".", 0), ("+", 2), ("@", 3)] 4.8 + symbols = [(".", 0), ("#", "1"), ("+", 2), ("@", 3)] 4.9 4.10 data = [] 4.11 4.12 @@ -160,6 +160,7 @@ 4.13 title = read_xpm("images/title-screen.xpm") 4.14 4.15 completed = read_xpm("images/complete-screen.xpm", [(".", "0"), ("@", "1"), ("+", "2"), ("#", "3")]) 4.16 +overlay = read_xpm("images/overlay.xpm", [(" ", "0"), (".", "2")]) 4.17 4.18 def read_sprite(lines): 4.19 4.20 @@ -261,3 +262,14 @@ 4.21 new_data += chr(i & 0x0f) + chr((i & 0xf0) >> 4) 4.22 4.23 return new_data 4.24 + 4.25 +def combine(encoded, overlay): 4.26 + 4.27 + combined = "" 4.28 + offset = 0 4.29 + while offset < len(overlay): 4.30 + combined += chr(ord(encoded[offset]) | ord(overlay[offset])) 4.31 + offset += 1 4.32 + 4.33 + combined += encoded[offset:] 4.34 + return combined
