X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Fgame_sp%2Ffile.c;h=cb5413b0c90df20028478a91f10de596fa8d1ef9;hp=f841cf208ae9b43e839f5696229c23bf90672e68;hb=fe43dcf8ac7fb16e80d60a0c187bcbd65f40b5f2;hpb=97baecdfcf386d972f6f8e6eec9ddfd3021ed7ed diff --git a/src/game_sp/file.c b/src/game_sp/file.c index f841cf20..cb5413b0 100644 --- a/src/game_sp/file.c +++ b/src/game_sp/file.c @@ -60,64 +60,9 @@ void setLevelInfoToDefaults_SP() void copyInternalEngineVars_SP() { - char *preceding_playfield_memory[] = - { - "95 89 95 89 95 89 3b 8a 3b 8a 3b 8a 3b 8a 3b 8a", // |......;.;.;.;.;.| - "3b 8a 3b 8a 3b 8a e8 8a e8 8a e8 8a e8 8a e8 8a", // |;.;.;.è.è.è.è.è.| - "e8 8a e8 8a e8 8a b1 8b b1 8b b1 8b b1 8b b1 8b", // |è.è.è.±.±.±.±.±.| - "b1 8b b1 8b b1 8b 85 8c 85 8c 85 8c 85 8c 85 8c", // |±.±.±...........| - "85 8c 85 8c 85 8c 5b 8d 5b 8d 5b 8d 5b 8d 5b 8d", // |......[.[.[.[.[.| - "5b 8d 5b 8d 5b 8d 06 8e 06 8e 06 8e 06 8e 06 8e", // |[.[.[...........| - "06 8e 06 8e 06 8e ac 8e ac 8e ac 8e ac 8e ac 8e", // |......¬.¬.¬.¬.¬.| - "ac 8e ac 8e ac 8e 59 8f 59 8f 59 8f 59 8f 59 8f", // |¬.¬.¬.Y.Y.Y.Y.Y.| - "59 8f 59 8f 59 8f 00 00 70 13 00 00 00 00 e8 17", // |Y.Y.Y...p.....è.| - "00 00 00 00 00 00 69 38 00 00 00 00 00 00 00 00", // |......i8........| - "00 00 00 00 00 00 00 00 d0 86 00 00 b2 34 00 00", // |........Ð...²4..| - "00 00 00 00 00 00 8f 8b 1d 34 00 00 00 00 00 00", // |.........4......| - "00 00 00 00 23 39 09 09 00 0c 00 08 00 58 00 00", // |....#9.......X..| - "00 00 00 25 77 06 7f 00 00 00 01 00 00 00 00 00", // |...%w...........| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 ec 06 26 05 00 00 00", // |.........ì.&....| - "00 00 00 01 00 00 00 00 31 32 33 34 35 36 37 38", // |........12345678| - "39 30 2d 00 08 00 51 57 45 52 54 59 55 49 4f 50", // |90-...QWERTYUIOP| - "00 00 0a 00 41 53 44 46 47 48 4a 4b 4c 00 00 00", // |....ASDFGHJKL...| - "00 00 5a 58 43 56 42 4e 4d 00 00 00 00 00 00 20", // |..ZXCVBNM...... | - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 2e 00 1e 00 31 00 14 00 39 00", // |..........1...9.| - "1f 00 14 00 18 00 ff ff 01 00 01 4c 45 56 45 4c", // |......ÿÿ...LEVEL| - "53 2e 44 41 54 00 00 00 00 00 00 00 00 00 00 00", // |S.DAT...........| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00", // |................| - - NULL - }; - int preceding_buffer_size = 0; int count; int i, x, y; - for (i = 0; preceding_playfield_memory[i] != NULL; i++) - preceding_buffer_size += 8; /* eight 16-bit integer values */ - - /* needed for engine snapshots */ - game_sp.preceding_buffer_size = preceding_buffer_size; - LInfo = native_sp_level.header; FieldWidth = native_sp_level.width; @@ -133,13 +78,13 @@ void copyInternalEngineVars_SP() #if 0 PlayField8 = REDIM_1D(sizeof(byte), 0, FileMax); DisPlayField = REDIM_1D(sizeof(byte), 0, FieldMax); - PlayField16 = REDIM_1D(sizeof(int), -preceding_buffer_size, FieldMax); + PlayField16 = REDIM_1D(sizeof(int), -game_sp.preceding_buffer_size, FieldMax); #endif count = 0; - for (i = 0; preceding_playfield_memory[i] != NULL; i++) + for (i = 0; game_sp.preceding_buffer[i] != NULL; i++) { - char *s = preceding_playfield_memory[i]; + char *s = game_sp.preceding_buffer[i]; boolean hi_byte = FALSE; /* little endian data => start with low byte */ while (s[0] != '\0' && s[1] != '\0') @@ -151,7 +96,7 @@ void copyInternalEngineVars_SP() if (hi_byte) byte <<= 8; - PlayField16[-preceding_buffer_size + count] |= byte; + PlayField16[-game_sp.preceding_buffer_size + count] |= byte; if (hi_byte) count++;