Identify strings more closely to how HHE does it. Add string dumps of

v1.2 and v1.3.

Subversion-branch: /research
Subversion-revision: 1887
This commit is contained in:
Simon Howard 2010-04-18 00:06:32 +00:00
parent bc3814b018
commit 799ac01fb8
4 changed files with 1668 additions and 262 deletions

View file

@ -3,6 +3,10 @@
require "json"
require "common"
# HHE seems to stop when it has found this many strings:
NUM_STRINGS=785
set_config(ARGV[1])
def read_block(file)
@ -22,16 +26,14 @@ def read_block(file)
result
end
def valid_block?(block)
for i in 0...block.length
c = block[i, 1]
def bad_string?(str)
str.each_byte do |b|
if b >= 0x80
return true
end
end
if c !~ /[a-zA-Z0-9_= :\\\'\"\-\,\.\(\)\[\]\%\!\n\?\<\>\%\#\@\/\&]/
return false
end
end
true
return false
end
File.open(ARGV[0]) do |file|
@ -41,34 +43,34 @@ File.open(ARGV[0]) do |file|
offset = 0
start_offset = nil
num_strings = 0
until file.eof?
while num_strings < NUM_STRINGS
block = read_block(file)
if valid_block?(block)
if start_offset == nil
start_offset = offset
if start_offset == nil
start_offset = offset
end
current_str += block
# End of string?
if block.length < 4
# Extended-ASCII characters cannot be output
# to JSON.
if bad_string?(current_str)
current_str = "XXXXX BAD STRING"
end
current_str += block
# End of string?
if block.length < 4
if current_str.length >= 4
puts " { #{start_offset}, #{current_str.to_json} },"
end
current_str = ""
start_offset = nil
end
else
# Invalid string; start again
# if current_str.length >= 4
# puts "INVALID: #{current_str + block}"
# end
current_str = ""
end
printf " { %6i, %s },\n", start_offset,
current_str.to_json
current_str = ""
start_offset = nil
num_strings += 1
end
offset += 4
end

View file

@ -1,3 +1,4 @@
{ 0, "\u0001\u0001\u0001" },
{ 4, "CyberMan: Wrong mouse driver - no SWIFT support (AX=%04x).\n" },
{ 64, "CyberMan: no SWIFT device connected.\n" },
{ 104, "CyberMan: SWIFT device is not a CyberMan! (type=%d)\n" },
@ -15,6 +16,7 @@
{ 332, "ENTER the joystick and press button 1:" },
{ 372, "Push the joystick to the UPPER LEFT corner and press button 1:" },
{ 436, "Push the joystick to the LOWER RIGHT corner and press button 1:" },
{ 500, "\n" },
{ 504, "T_SetTimer0: %i is a bad value" },
{ 536, "ovideo" },
{ 544, "_StartupDPMI" },
@ -25,6 +27,7 @@
{ 612, "0x%x allocated for zone\n" },
{ 640, "ufficient DPMI memory!" },
{ 664, "_AllocLow: DOS alloc of %i failed, %i free" },
{ 708, "net" },
{ 712, "I_NetCmd when not in netgame" },
{ 744, "I_StartupTimer()\n" },
{ 764, "Can't register 35 Hz timer w\/ DMX library" },
@ -75,7 +78,8 @@
{ 1868, "AUTOPAGE" },
{ 1880, "FOLLOW MODE ON" },
{ 1896, "FOLLOW MODE OFF" },
{ 1912, "GREEN: " },
{ 1912, "fuck %d \r" },
{ 1924, "GREEN: " },
{ 1936, "YELLOW: " },
{ 1948, "RED: " },
{ 1956, "BLUE: " },
@ -86,6 +90,7 @@
{ 2036, "PAUSED" },
{ 2044, "-debugfile" },
{ 2056, "debug%i.txt" },
{ 2068, "w" },
{ 2072, "ADVISOR" },
{ 2080, "TITLE" },
{ 2088, "demo1" },
@ -102,14 +107,19 @@
{ 2228, "pnames.lmp" },
{ 2240, "heretic.cfg" },
{ 2252, "-debug" },
{ 2260, ", " },
{ 2264, "External Wadfiles: " },
{ 2284, " " },
{ 2292, "," },
{ 2296, "HB" },
{ 2300, "" },
{ 2304, "Exited from HERETIC.\n" },
{ 2328, "-nomonsters" },
{ 2340, "-respawn" },
{ 2352, "-devparm" },
{ 2364, "-ravpic" },
{ 2372, "-noartiskip" },
{ 2384, "rb" },
{ 2388, "heretic1.wad" },
{ 2404, "-cdrom" },
{ 2412, "c:\\heretic.cd" },
@ -148,13 +158,16 @@
{ 3128, "-loadgame" },
{ 3140, "ExpandTics: strange value %i at maketic %i" },
{ 3184, "Tried to transmit to another node" },
{ 3220, "i, R %i) [%i] " },
{ 3220, "send (%i + %i, R %i) [%i] " },
{ 3248, "%i " },
{ 3252, "\n" },
{ 3256, "bad packet length %i\n" },
{ 3280, "bad packet checksum\n" },
{ 3304, "setup packet\n" },
{ 3320, "i, R %i)[%i] " },
{ 3320, "get %i = (%i + %i, R %i)[%i] " },
{ 3352, "PLAYER 1 HAS LEFT THE GAME" },
{ 3380, "retransmit from %i\n" },
{ 3400, "out of order packet (%i + %i)\n" },
{ 3432, "missed tics from %i (%i - %i)\n" },
{ 3464, "NetUpdate: netbuffer->numtics > BACKUPTICS" },
{ 3508, "Network game synchronization aborted." },
@ -320,6 +333,12 @@
{ 6720, "AMP2" },
{ 6728, "AMB1" },
{ 6736, "AMB2" },
{ 6744, "K" },
{ 6748, "I" },
{ 6752, "L" },
{ 6756, "E" },
{ 6760, "R" },
{ 6764, "S" },
{ 6768, "PLAYPAL" },
{ 6776, "MAPE1" },
{ 6784, "MAPE2" },
@ -346,6 +365,7 @@
{ 7016, "SECRET" },
{ 7024, "TOTAL" },
{ 7032, "VICTIMS" },
{ 7040, ":" },
{ 7044, "NEW GAME" },
{ 7056, "OPTIONS" },
{ 7064, "GAME FILES" },
@ -375,12 +395,16 @@
{ 7448, "ARE YOU SURE YOU WANT TO END THE GAME?" },
{ 7488, "DO YOU WANT TO QUICKSAVE THE GAME NAMED" },
{ 7528, "DO YOU WANT TO QUICKLOAD THE GAME NAMED" },
{ 7568, "?" },
{ 7572, "M_SLCTR1" },
{ 7584, "M_SLCTR2" },
{ 7596, "M_HTIC" },
{ 7604, "c:\\heretic.cd\\hticsav%d.hsg" },
{ 7632, "hticsav%d.hsg" },
{ 7648, "rb+" },
{ 7652, "M_FSLOT" },
{ 7660, "ON" },
{ 7664, "OFF" },
{ 7668, "MESSAGES ON" },
{ 7680, "MESSAGES OFF" },
{ 7696, "YOU CAN'T START A NEW GAME FROM WITHIN A NETGAME!" },
@ -397,10 +421,12 @@
{ 7924, "M_SLDRT" },
{ 7932, "M_SLDKB" },
{ 7940, "Couldn't read file %s" },
{ 7964, "rb" },
{ 7968, "\nNo such response file!" },
{ 7992, "Found response file %s!\n" },
{ 8020, "-debug" },
{ 8028, "%d command-line args:\n" },
{ 8052, "%s\n" },
{ 8056, "mouse_sensitivity" },
{ 8076, "sfx_volume" },
{ 8088, "music_volume" },
@ -442,6 +468,7 @@
{ 8572, "snd_mport" },
{ 8584, "usegamma" },
{ 8596, "chatmacro0" },
{ 8608, "No" },
{ 8612, "chatmacro1" },
{ 8624, "I'm ready to kick butt!" },
{ 8648, "chatmacro2" },
@ -459,10 +486,17 @@
{ 8812, "chatmacro8" },
{ 8824, "I'll take care of it." },
{ 8848, "chatmacro9" },
{ 8880, "\"%s\"\n" },
{ 8860, "Yes" },
{ 8864, "w" },
{ 8868, "%s\t\t%i\n" },
{ 8876, "%s\t\t\"%s\"\n" },
{ 8888, "-config" },
{ 8896, "default file: %s\n" },
{ 8916, "c:\\heretic.cd\\default.cfg" },
{ 8944, "r" },
{ 8948, "%79s %[^\n]\n" },
{ 8960, "%x" },
{ 8964, "%i" },
{ 8968, "HRTIC00.pcx" },
{ 8980, "M_ScreenShot: Couldn't create a PCX" },
{ 9016, "SCREEN SHOT" },
@ -471,6 +505,8 @@
{ 9108, "YOU NEED A GREEN KEY TO OPEN THIS DOOR" },
{ 9148, "Too many boss spots." },
{ 9172, "P_NewChaseDir: called with no target" },
{ 9212, "" },
{ 9216, "A" },
{ 9220, "P_GiveAmmo: bad type %i" },
{ 9244, "CRYSTAL VIAL" },
{ 9260, "SILVER SHIELD" },
@ -514,6 +550,8 @@
{ 9940, "P_AddActivePlat: no more plats!" },
{ 9972, "P_RemoveActivePlat: can't find plat!" },
{ 10012, "Too many mace spots." },
{ 10036, "" },
{ 10040, "XXXXX BAD STRING" },
{ 10052, "P_GroupLines: miscounted" },
{ 10080, "-timer" },
{ 10088, "FLTWAWA1" },
@ -521,6 +559,7 @@
{ 10112, "FLTLAVA1" },
{ 10124, "FLATHUH1" },
{ 10136, "FLTSLUD1" },
{ 10148, "END" },
{ 10152, "P_InitPicAnims: bad cycle from %s to %s" },
{ 10192, "P_PlayerInSpecialSector: unknown special %i" },
{ 10236, "texture2" },
@ -611,6 +650,7 @@
{ 12284, "BLACKSQ" },
{ 12292, "ARMCLEAR" },
{ 12304, "CHAINBACK" },
{ 12316, "IN0" },
{ 12320, "NEGNUM" },
{ 12328, "FONTB16" },
{ 12336, "SMALLIN0" },
@ -618,12 +658,17 @@
{ 12356, "SPINBK0" },
{ 12364, "SPFLY0" },
{ 12372, "LAME" },
{ 12380, "*** SOUND DEBUG INFO ***" },
{ 12408, "NAME" },
{ 12416, "MO.T" },
{ 12424, "MO.X" },
{ 12432, "MO.Y" },
{ 12440, "ID" },
{ 12444, "PRI" },
{ 12448, "DIST" },
{ 12456, "------" },
{ 12464, "%s" },
{ 12468, "%d" },
{ 12472, "GOD1" },
{ 12480, "GOD2" },
{ 12488, "useartia" },
@ -655,6 +700,7 @@
{ 12872, "TRYING TO CHEAT, EH? NOW YOU DIE!" },
{ 12908, "Bad V_DrawPatch" },
{ 12924, "Filename base of %s >8 chars" },
{ 12956, "wad" },
{ 12960, "IWAD" },
{ 12968, "PWAD" },
{ 12976, "Wad file %s doesn't have IWAD or PWAD id\n" },
@ -667,8 +713,11 @@
{ 13196, "W_ReadLump: only read %i of %i on lump %i" },
{ 13240, "W_CacheLumpNum: %i >= numlumps" },
{ 13272, "Z_CT at w_wad.c:%i" },
{ 13292, "w" },
{ 13296, "waddump.txt" },
{ 13308, "%s " },
{ 13312, " %c" },
{ 13320, "\n" },
{ 13324, "Z_Free: freed a pointer without ZONEID" },
{ 13364, "Z_Malloc: failed on allocation of %i bytes" },
{ 13408, "Z_Malloc: an owner is required for purgable blocks" },
@ -689,22 +738,29 @@
{ 14084, "Z_ChangeTag: an owner is required for purgable blocks" },
{ 14140, "MThd" },
{ 14148, "MTrk" },
{ 14156, "MUS\u001a" },
{ 14164, " out of GUS RAM:" },
{ 14184, "%d%c" },
{ 14192, "GF1PATCH110" },
{ 14204, "110" },
{ 14208, ",%d" },
{ 14212, "Ultrasound @ Port:%03Xh, IRQ:%d, DMA:%d\n" },
{ 14256, "Sizing GUS RAM:" },
{ 14272, "BANK%d:OK " },
{ 14284, "BANK%d:N\/A " },
{ 14296, "\n" },
{ 14300, "ULTRADIR" },
{ 14312, "\\midi\\" },
{ 14320, "\r\n" },
{ 14324, "Loading GUS Patches\n" },
{ 14348, ".pat" },
{ 14356, "%s" },
{ 14360, " - FAILED\n" },
{ 14372, " - OK\n" },
{ 14380, "ULTRASND" },
{ 14392, "ECHO Personal Sound System Enabled.\n" },
{ 14432, "BLASTER" },
{ 14440, "%x" },
{ 14444, "Pro Audio Spectrum 3D JAZZ\n" },
{ 14472, "\nDSP Version: %x.%02x\n" },
{ 14496, " IRQ: %d\n" },
@ -721,231 +777,9 @@
{ 14620, "NO MVSOUND.SYS\n" },
{ 14636, "PAS IRQ: %d DMA:%d\n" },
{ 14660, "Pro Audio Spectrum is NOT version 1.01.\n" },
{ 14704, "VGA=" },
{ 14704, "Floating-point support not loaded\r\n" },
{ 14740, "VGA=" },
{ 14748, "295520" },
{ 14756, "AK" },
{ 14760, "RIDENT" },
{ 18136, "ravmap" },
{ 72848, "FLTWAWA3" },
{ 72860, "WAWA1" },
{ 72876, "TSLUD3" },
{ 72884, "LTSLUD1" },
{ 72900, "FLTTELE4" },
{ 72912, "TELE1" },
{ 72928, "TFLWW3" },
{ 72936, "LTFLWW1" },
{ 72952, "FLTLAVA4" },
{ 72964, "LAVA1" },
{ 72980, "ATHUH4" },
{ 72988, "LATHUH1" },
{ 73004, "LAVAFL3" },
{ 73016, "AFL1" },
{ 73032, "TRWAL3" },
{ 73040, "ATRWAL1" },
{ 73148, "SW1OFF" },
{ 73168, "SW2OFF" },
{ 74220, "ARTIBOX" },
{ 74232, "TIINVU" },
{ 74240, "ARTIINVS" },
{ 74252, "TIPTN2" },
{ 74260, "ARTISPHL" },
{ 74272, "TIPWBK" },
{ 74280, "ARTITRCH" },
{ 74292, "TIFBMB" },
{ 74300, "ARTIEGGC" },
{ 74312, "TISOAR" },
{ 74320, "ARTIATLP" },
{ 74332, "AMGLD" },
{ 74340, "INAMBOW" },
{ 74352, "AMBST" },
{ 74360, "INAMRAM" },
{ 74372, "AMPNX" },
{ 74380, "INAMLOB" },
{ 74440, "MUS_E1M1" },
{ 74452, "MUS_E1M2" },
{ 74464, "MUS_E1M3" },
{ 74476, "MUS_E1M4" },
{ 74488, "MUS_E1M5" },
{ 74500, "MUS_E1M6" },
{ 74512, "MUS_E1M7" },
{ 74524, "MUS_E1M8" },
{ 74536, "MUS_E1M9" },
{ 74548, "MUS_E2M1" },
{ 74560, "MUS_E2M2" },
{ 74572, "MUS_E2M3" },
{ 74584, "MUS_E2M4" },
{ 74596, "MUS_E1M4" },
{ 74608, "MUS_E2M6" },
{ 74620, "MUS_E2M7" },
{ 74632, "MUS_E2M8" },
{ 74644, "MUS_E2M9" },
{ 74656, "MUS_E1M1" },
{ 74668, "MUS_E3M2" },
{ 74680, "MUS_E3M3" },
{ 74692, "MUS_E1M6" },
{ 74704, "MUS_E1M3" },
{ 74716, "MUS_E1M2" },
{ 74728, "MUS_E1M5" },
{ 74740, "MUS_E1M9" },
{ 74752, "MUS_E2M6" },
{ 74764, "MUS_E1M6" },
{ 74776, "MUS_TITL" },
{ 74788, "MUS_INTR" },
{ 74800, "MUS_CPTD" },
{ 74844, "dhit" },
{ 74872, "gntful" },
{ 74904, "thit" },
{ 74932, "gntpow" },
{ 74964, "tact" },
{ 74992, "gntuse" },
{ 75024, "osht" },
{ 75052, "phohit" },
{ 75084, "hopow" },
{ 75112, "lobsht" },
{ 75144, "bhit" },
{ 75172, "lobpow" },
{ 75204, "nsht" },
{ 75232, "hrnhit" },
{ 75264, "npow" },
{ 75292, "ramphit" },
{ 75324, "mrain" },
{ 75352, "bowsht" },
{ 75384, "fhit" },
{ 75412, "stfpow" },
{ 75444, "fcrk" },
{ 75472, "impsit" },
{ 75504, "pat1" },
{ 75532, "impat2" },
{ 75564, "pdth" },
{ 75592, "-impact" },
{ 75624, "ppai" },
{ 75652, "mumsit" },
{ 75684, "mat1" },
{ 75712, "mumat2" },
{ 75744, "mdth" },
{ 75772, "-mumact" },
{ 75804, "mpai" },
{ 75832, "mumhed" },
{ 75864, "tsit" },
{ 75892, "bstatk" },
{ 75924, "tdth" },
{ 75952, "bstact" },
{ 75984, "tpai" },
{ 76012, "clksit" },
{ 76044, "katk" },
{ 76072, "clkdth" },
{ 76104, "kact" },
{ 76132, "clkpai" },
{ 76164, "ksit" },
{ 76192, "snkatk" },
{ 76224, "kdth" },
{ 76252, "snkact" },
{ 76284, "kpai" },
{ 76312, "kgtsit" },
{ 76344, "tatk" },
{ 76372, "kgtat2" },
{ 76404, "tdth" },
{ 76432, "-kgtact" },
{ 76464, "tpai" },
{ 76492, "wizsit" },
{ 76524, "zatk" },
{ 76552, "wizdth" },
{ 76584, "zact" },
{ 76612, "wizpai" },
{ 76644, "nsit" },
{ 76672, "minat1" },
{ 76704, "nat2" },
{ 76732, "minat3" },
{ 76764, "ndth" },
{ 76792, "minact" },
{ 76824, "npai" },
{ 76852, "hedsit" },
{ 76884, "dat1" },
{ 76912, "hedat2" },
{ 76944, "dat3" },
{ 76972, "heddth" },
{ 77004, "dact" },
{ 77032, "hedpai" },
{ 77064, "rzap" },
{ 77092, "sorrise" },
{ 77124, "rsit" },
{ 77152, "soratk" },
{ 77184, "ract" },
{ 77212, "sorpai" },
{ 77244, "rdsph" },
{ 77272, "sordexp" },
{ 77304, "rdbon" },
{ 77332, "-sbtsit" },
{ 77364, "btatk" },
{ 77392, "sbtdth" },
{ 77424, "tact" },
{ 77452, "sbtpai" },
{ 77484, "roof" },
{ 77512, "plrpai" },
{ 77544, "rdth" },
{ 77572, "gibdth" },
{ 77604, "rwdth" },
{ 77632, "plrcdth" },
{ 77664, "emup" },
{ 77692, "wpnup" },
{ 77724, "lept" },
{ 77752, "doropn" },
{ 77784, "rcls" },
{ 77812, "dormov" },
{ 77844, "tiup" },
{ 77872, "switch" },
{ 77904, "tart" },
{ 77932, "pstop" },
{ 77964, "nmov" },
{ 77992, "chicpai" },
{ 78024, "icatk" },
{ 78052, "chicdth" },
{ 78084, "icact" },
{ 78112, "chicpk1" },
{ 78144, "icpk2" },
{ 78172, "chicpk3" },
{ 78232, "ripslop" },
{ 78264, "wpod" },
{ 78292, "podexp" },
{ 78324, "unce" },
{ 78352, "-volsht" },
{ 78384, "olhit" },
{ 78412, "burn" },
{ 78444, "lash" },
{ 78472, "gloop" },
{ 78504, "spawn" },
{ 78532, "blssht" },
{ 78564, "shit" },
{ 78592, "chat" },
{ 78624, "tiuse" },
{ 78652, "gfrag" },
{ 78684, "terfl" },
{ 78712, "wind" },
{ 78772, "amb2" },
{ 78832, "amb4" },
{ 78892, "amb6" },
{ 78952, "amb8" },
{ 79012, "amb10" },
{ 146292, "DMXGUS.INI" },
{ 156232, "fffff" },
{ 156400, "0xx00" },
{ 156720, "x00000x" },
{ 157000, "p00000x" },
{ 157464, "<ll>" },
{ 157472, "8ll8" },
{ 157624, "66666666" },
{ 157728, "666676666670?" },
{ 157768, "66707666" },
{ 157824, "6666?" },
{ 158120, "8ll8" },
{ 158152, "xllll" },
{ 159504, "BBf<" },
{ 159640, "ffffff" },
{ 160648, "<0000000<" },
{ 161920, "666666" },
{ 161944, "6666" },
{ 161972, "666666666666666666" },
{ 162160, "6666676666666666670?" },
{ 162224, "666666666707666666" },
{ 162320, "6666666666666?" },
{ 162556, "lllll" },
{ 162668, ">fff<" },
{ 14768, "TZ" },

785
hhe/v1.2/strings.c Normal file
View file

@ -0,0 +1,785 @@
{ 0, "\u0001\u0001\u0001" },
{ 4, "CyberMan: Wrong mouse driver - no SWIFT support (AX=%04x).\n" },
{ 64, "CyberMan: no SWIFT device connected.\n" },
{ 104, "CyberMan: SWIFT device is not a CyberMan! (type=%d)\n" },
{ 160, "CyberMan: CyberMan %d.%02d connected.\n" },
{ 200, "Z_CT at i_ibm.c:%i" },
{ 220, "NDCURVE" },
{ 228, "PLAYPAL" },
{ 236, "0x%x\n" },
{ 244, "omouse" },
{ 252, "ouse: not present " },
{ 272, "ouse: detected " },
{ 288, "-nojoy" },
{ 296, "oystick not found " },
{ 316, "oystick found\n" },
{ 332, "ENTER the joystick and press button 1:" },
{ 372, "Push the joystick to the UPPER LEFT corner and press button 1:" },
{ 436, "Push the joystick to the LOWER RIGHT corner and press button 1:" },
{ 500, "\n" },
{ 504, "T_SetTimer0: %i is a bad value" },
{ 536, "ovideo" },
{ 544, "_StartupDPMI" },
{ 560, "tartupMouse " },
{ 576, "nit... " },
{ 584, "ENDTEXT" },
{ 592, "DPMI memory: 0x%x, " },
{ 612, "0x%x allocated for zone\n" },
{ 640, "ufficient DPMI memory!" },
{ 664, "_AllocLow: DOS alloc of %i failed, %i free" },
{ 708, "net" },
{ 712, "I_NetCmd when not in netgame" },
{ 744, "terndriver" },
{ 756, "I_StartupTimer()\n" },
{ 776, "Can't register 35 Hz timer w\/ DMX library" },
{ 820, "-nosound" },
{ 832, "-nosfx" },
{ 840, "-nomusic" },
{ 852, "Dude. The GUS ain't responding.\n" },
{ 888, "dmxgus" },
{ 896, "cfg p=0x%x, i=%d, d=%d\n" },
{ 920, "SB isn't responding at p=0x%x, i=%d, d=%d\n" },
{ 964, "SB_Detect returned p=0x%x,i=%d,d=%d\n" },
{ 1004, "Dude. The Adlib isn't responding.\n" },
{ 1040, "genmidi" },
{ 1048, "cfg p=0x%x\n" },
{ 1060, "The MPU-401 isn't reponding @ p=0x%x.\n" },
{ 1100, "I_StartupSound: Hope you hear a pop.\n" },
{ 1140, " Music device #%d & dmxCode=%d" },
{ 1172, " Sfx device #%d & dmxCode=%d\n" },
{ 1204, " calling DMX_Init" },
{ 1224, " DMX_Init() returned %d" },
{ 1252, "E1M1: THE DOCKS" },
{ 1272, "E1M2: THE DUNGEONS" },
{ 1292, "E1M3: THE GATEHOUSE" },
{ 1316, "E1M4: THE GUARD TOWER" },
{ 1340, "E1M5: THE CITADEL" },
{ 1360, "E1M6: THE CATHEDRAL" },
{ 1384, "E1M7: THE CRYPTS" },
{ 1404, "E1M8: HELL'S MAW" },
{ 1424, "E1M9: THE GRAVEYARD" },
{ 1448, "E2M1: THE CRATER" },
{ 1468, "E2M2: THE LAVA PITS" },
{ 1492, "E2M3: THE RIVER OF FIRE" },
{ 1520, "E2M4: THE ICE GROTTO" },
{ 1544, "E2M5: THE CATACOMBS" },
{ 1568, "E2M6: THE LABYRINTH" },
{ 1592, "E2M7: THE GREAT HALL" },
{ 1616, "E2M8: THE PORTALS OF CHAOS" },
{ 1644, "E2M9: THE GLACIER" },
{ 1664, "E3M1: THE STOREHOUSE" },
{ 1688, "E3M2: THE CESSPOOL" },
{ 1708, "E3M3: THE CONFLUENCE" },
{ 1732, "E3M4: THE AZURE FORTRESS" },
{ 1760, "E3M5: THE OPHIDIAN LAIR" },
{ 1788, "E3M6: THE HALLS OF FEAR" },
{ 1816, "E3M7: THE CHASM" },
{ 1836, "E3M8: D'SPARIL'S KEEP" },
{ 1860, "E3M9: THE AQUIFER" },
{ 1880, "E4M1: CATAFALQUE" },
{ 1900, "E4M2: BLOCKHOUSE" },
{ 1920, "E4M3: AMBULATORY" },
{ 1940, "E4M4: SEPULCHER" },
{ 1960, "E4M5: GREAT STAIR" },
{ 1980, "E4M6: HALLS OF THE APOSTATE" },
{ 2012, "E4M7: RAMPARTS OF PERDITION" },
{ 2044, "E4M8: SHATTERED BRIDGE" },
{ 2068, "E4M9: MAUSOLEUM" },
{ 2088, "E5M1: OCHRE CLIFFS" },
{ 2108, "E5M2: RAPIDS" },
{ 2124, "E5M3: QUAY" },
{ 2136, "E5M4: COURTYARD" },
{ 2156, "E5M5: HYDRATYR" },
{ 2172, "E5M6: COLONNADE" },
{ 2192, "E5M7: FOETID MANSE" },
{ 2212, "E5M8: FIELD OF JUDGEMENT" },
{ 2240, "E5M9: SKEIN OF D'SPARIL" },
{ 2268, "AUTOPAGE" },
{ 2280, "FOLLOW MODE ON" },
{ 2296, "FOLLOW MODE OFF" },
{ 2312, "fuck %d \r" },
{ 2324, "GREEN: " },
{ 2336, "YELLOW: " },
{ 2348, "RED: " },
{ 2356, "BLUE: " },
{ 2364, "FONTA_S" },
{ 2372, "-MESSAGE SENT-" },
{ 2388, "THERE ARE NO OTHER PLAYERS IN THE GAME!" },
{ 2428, "FONTA59" },
{ 2436, "heretic.wad" },
{ 2448, "texture1.lmp" },
{ 2464, "texture2.lmp" },
{ 2480, "pnames.lmp" },
{ 2492, "heretic.cfg" },
{ 2504, "PAUSED" },
{ 2512, "-debugfile" },
{ 2524, "debug%i.txt" },
{ 2536, "w" },
{ 2540, "ADVISOR" },
{ 2548, "TITLE" },
{ 2556, "demo1" },
{ 2564, "CREDIT" },
{ 2572, "demo2" },
{ 2580, "ORDER" },
{ 2588, "demo3" },
{ 2596, "-recordfrom" },
{ 2608, "c:\\heretic.cd\\hticsav%c.hsg" },
{ 2636, "hticsav%c.hsg" },
{ 2652, ", " },
{ 2656, "External Wadfiles: " },
{ 2676, " " },
{ 2684, "," },
{ 2688, "v1.2" },
{ 2696, "Exited from HERETIC.\n" },
{ 2720, "-nomonsters" },
{ 2732, "-respawn" },
{ 2744, "-ravpic" },
{ 2752, "-noartiskip" },
{ 2764, "-debug" },
{ 2772, "rb" },
{ 2776, "heretic1.wad" },
{ 2792, "-cdrom" },
{ 2800, "c:\\heretic.cd" },
{ 2816, "-file" },
{ 2824, "-devmap" },
{ 2832, "\\data\\E%cM%c.wad" },
{ 2852, "DEVMAP: Episode %c, Map %c.\n" },
{ 2884, "-playdemo" },
{ 2896, "-timedemo" },
{ 2908, "%s.lmp" },
{ 2916, "Playing demo %s.lmp.\n" },
{ 2940, "-deathmatch" },
{ 2952, "-skill" },
{ 2960, "-episode" },
{ 2972, "-warp" },
{ 2980, "V_Init: allocate screens.\n" },
{ 3008, "M_LoadDefaults: Load system defaults.\n" },
{ 3048, "Z_Init: Init zone memory allocation daemon.\n" },
{ 3096, "W_Init: Init WADfiles.\n" },
{ 3120, "E2M1" },
{ 3128, "EXTENDED" },
{ 3140, "LOADING" },
{ 3148, "DeathMatch..." },
{ 3164, "No Monsters..." },
{ 3180, "Respawning..." },
{ 3196, "Warp to Episode %d, Map %d, Skill %d " },
{ 3236, "MN_Init: Init menu system.\n" },
{ 3264, "R_Init: Init Heretic refresh daemon." },
{ 3304, "Loading graphics" },
{ 3324, "P_Init: Init Playloop state." },
{ 3356, "Init game engine." },
{ 3376, "I_Init: Setting up machine state.\n" },
{ 3412, "D_CheckNetGame: Checking network game status.\n" },
{ 3460, "Checking network game status." },
{ 3492, "SB_Init: Loading patches.\n" },
{ 3520, "-record" },
{ 3528, "-loadgame" },
{ 3540, "ExpandTics: strange value %i at maketic %i" },
{ 3584, "Tried to transmit to another node" },
{ 3620, "send (%i + %i, R %i) [%i] " },
{ 3648, "%i " },
{ 3652, "\n" },
{ 3656, "bad packet length %i\n" },
{ 3680, "bad packet checksum\n" },
{ 3704, "setup packet\n" },
{ 3720, "get %i = (%i + %i, R %i)[%i] " },
{ 3752, "PLAYER 1 LEFT THE GAME" },
{ 3776, "Killed by network driver" },
{ 3804, "retransmit from %i\n" },
{ 3824, "out of order packet (%i + %i)\n" },
{ 3856, "missed tics from %i (%i - %i)\n" },
{ 3888, "NetUpdate: netbuffer->numtics > BACKUPTICS" },
{ 3932, "Network game synchronization aborted." },
{ 3972, "Different DOOM versions cannot play a net game!" },
{ 4020, "Doomcom buffer invalid!" },
{ 4044, "=======real: %i avail: %i game: %i\n" },
{ 4084, "TryRunTics: lowtic < gametic" },
{ 4116, "gametic>lowtic" },
{ 4132, "SKY1" },
{ 4140, "SKY2" },
{ 4148, "SKY3" },
{ 4156, "consistency failure (%i should be %i)" },
{ 4196, "NET GAME" },
{ 4208, "SAVE GAME" },
{ 4220, "Only %i deathmatch spots, 4 required" },
{ 4260, "version %i" },
{ 4272, "Bad savegame" },
{ 4288, ".lmp" },
{ 4296, "timed %i gametics in %i realtics" },
{ 4332, "Z_CT at g_game.c:%i" },
{ 4352, "Demo %s recorded" },
{ 4372, "c:\\heretic.cd\\hticsav%d.hsg" },
{ 4400, "hticsav%d.hsg" },
{ 4416, "GAME SAVED" },
{ 4428, "wb" },
{ 4432, "Savegame buffer overrun" },
{ 4456, "with the destruction of the iron\nliches and their minions, the last\nof the undead are cleared from this\nplane of existence.\n\nthose creatures had to come from\nsomewhere, though, and you have the\nsneaky suspicion that the fiery\nportal of hell's maw opens onto\ntheir home dimension.\n\nto make sure that more undead\n(or even worse things) don't come\nthrough, you'll have to seal hell's\nmaw from the other side. of course\nthis means you may get stuck in a\nvery unfriendly world, but no one\never said being a Heretic was easy!" },
{ 4976, "the mighty maulotaurs have proved\nto be no match for you, and as\ntheir steaming corpses slide to the\nground you feel a sense of grim\nsatisfaction that they have been\ndestroyed.\n\nthe gateways which they guarded\nhave opened, revealing what you\nhope is the way home. but as you\nstep through, mocking laughter\nrings in your ears.\n\nwas some other force controlling\nthe maulotaurs? could there be even\nmore horrific beings through this\ngate? the sweep of a crystal dome\noverhead where the sky should be is\ncertainly not a good sign...." },
{ 5508, "the death of d'sparil has loosed\nthe magical bonds holding his\ncreatures on this plane, their\ndying screams overwhelming his own\ncries of agony.\n\nyour oath of vengeance fulfilled,\nyou enter the portal to your own\nworld, mere moments before the dome\nshatters into a million pieces.\n\nbut if d'sparil's power is broken\nforever, why don't you feel safe?\nwas it that last shout just before\nhis death, the one that sounded\nlike a curse? or a summoning? you\ncan't really be sure, but it might\njust have been a scream.\n\nthen again, what about the other\nserpent riders?" },
{ 6072, "you thought you would return to your\nown world after d'sparil died, but\nhis final act banished you to his\nown plane. here you entered the\nshattered remnants of lands\nconquered by d'sparil. you defeated\nthe last guardians of these lands,\nbut now you stand before the gates\nto d'sparil's stronghold. until this\nmoment you had no doubts about your\nability to face anything you might\nencounter, but beyond this portal\nlies the very heart of the evil\nwhich invaded your world. d'sparil\nmight be dead, but the pit where he\nwas spawned remains. now you must\nenter that pit in the hopes of\nfinding a way out. and somewhere,\nin the darkest corner of d'sparil's\ndemesne, his personal bodyguards\nawait your arrival ..." },
{ 6780, "as the final maulotaur bellows his\ndeath-agony, you realize that you\nhave never come so close to your own\ndestruction. not even the fight with\nd'sparil and his disciples had been\nthis desperate. grimly you stare at\nthe gates which open before you,\nwondering if they lead home, or if\nthey open onto some undreamed-of\nhorror. you find yourself wondering\nif you have the strength to go on,\nif nothing but death and pain await\nyou. but what else can you do, if\nthe will to fight is gone? can you\nforce yourself to continue in the\nface of such despair? do you have\nthe courage? you find, in the end,\nthat it is not within you to\nsurrender without a fight. eyes\nwide, you go to meet your fate." },
{ 7468, "FLOOR25" },
{ 7476, "FLATHUH1" },
{ 7488, "FLTWAWA2" },
{ 7500, "FLOOR28" },
{ 7508, "FLOOR08" },
{ 7516, "FONTA_S" },
{ 7524, "PLAYPAL" },
{ 7532, "FINAL1" },
{ 7540, "FINAL2" },
{ 7548, "E2PAL" },
{ 7556, "E2END" },
{ 7564, "TITLE" },
{ 7572, "ORDER" },
{ 7580, "CREDIT" },
{ 7588, "IMPX" },
{ 7596, "ACLO" },
{ 7604, "PTN1" },
{ 7612, "SHLD" },
{ 7620, "SHD2" },
{ 7628, "BAGH" },
{ 7636, "SPMP" },
{ 7644, "INVS" },
{ 7652, "PTN2" },
{ 7660, "SOAR" },
{ 7668, "INVU" },
{ 7676, "PWBK" },
{ 7684, "EGGC" },
{ 7692, "EGGM" },
{ 7700, "FX01" },
{ 7708, "SPHL" },
{ 7716, "TRCH" },
{ 7724, "FBMB" },
{ 7732, "XPL1" },
{ 7740, "ATLP" },
{ 7748, "PPOD" },
{ 7756, "AMG1" },
{ 7764, "SPSH" },
{ 7772, "LVAS" },
{ 7780, "SLDG" },
{ 7788, "SKH1" },
{ 7796, "SKH2" },
{ 7804, "SKH3" },
{ 7812, "SKH4" },
{ 7820, "CHDL" },
{ 7828, "SRTC" },
{ 7836, "SMPL" },
{ 7844, "STGS" },
{ 7852, "STGL" },
{ 7860, "STCS" },
{ 7868, "STCL" },
{ 7876, "KFR1" },
{ 7884, "BARL" },
{ 7892, "BRPL" },
{ 7900, "MOS1" },
{ 7908, "MOS2" },
{ 7916, "WTRH" },
{ 7924, "HCOR" },
{ 7932, "KGZ1" },
{ 7940, "KGZB" },
{ 7948, "KGZG" },
{ 7956, "KGZY" },
{ 7964, "VLCO" },
{ 7972, "VFBL" },
{ 7980, "VTFB" },
{ 7988, "SFFI" },
{ 7996, "TGLT" },
{ 8004, "TELE" },
{ 8012, "STFF" },
{ 8020, "PUF3" },
{ 8028, "PUF4" },
{ 8036, "BEAK" },
{ 8044, "WGNT" },
{ 8052, "GAUN" },
{ 8060, "PUF1" },
{ 8068, "WBLS" },
{ 8076, "BLSR" },
{ 8084, "FX18" },
{ 8092, "FX17" },
{ 8100, "WMCE" },
{ 8108, "MACE" },
{ 8116, "FX02" },
{ 8124, "WSKL" },
{ 8132, "HROD" },
{ 8140, "FX00" },
{ 8148, "FX20" },
{ 8156, "FX21" },
{ 8164, "FX22" },
{ 8172, "FX23" },
{ 8180, "GWND" },
{ 8188, "PUF2" },
{ 8196, "WPHX" },
{ 8204, "PHNX" },
{ 8212, "FX04" },
{ 8220, "FX08" },
{ 8228, "FX09" },
{ 8236, "WBOW" },
{ 8244, "CRBW" },
{ 8252, "FX03" },
{ 8260, "BLOD" },
{ 8268, "PLAY" },
{ 8276, "FDTH" },
{ 8284, "BSKL" },
{ 8292, "CHKN" },
{ 8300, "MUMM" },
{ 8308, "FX15" },
{ 8316, "BEAS" },
{ 8324, "FRB1" },
{ 8332, "SNKE" },
{ 8340, "SNFX" },
{ 8348, "HEAD" },
{ 8356, "FX05" },
{ 8364, "FX06" },
{ 8372, "FX07" },
{ 8380, "CLNK" },
{ 8388, "WZRD" },
{ 8396, "FX11" },
{ 8404, "FX10" },
{ 8412, "KNIG" },
{ 8420, "SPAX" },
{ 8428, "RAXE" },
{ 8436, "SRCR" },
{ 8444, "FX14" },
{ 8452, "SOR2" },
{ 8460, "SDTH" },
{ 8468, "FX16" },
{ 8476, "MNTR" },
{ 8484, "FX12" },
{ 8492, "FX13" },
{ 8500, "AKYY" },
{ 8508, "BKYY" },
{ 8516, "CKYY" },
{ 8524, "AMG2" },
{ 8532, "AMM1" },
{ 8540, "AMM2" },
{ 8548, "AMC1" },
{ 8556, "AMC2" },
{ 8564, "AMS1" },
{ 8572, "AMS2" },
{ 8580, "AMP1" },
{ 8588, "AMP2" },
{ 8596, "AMB1" },
{ 8604, "AMB2" },
{ 8612, "K" },
{ 8616, "I" },
{ 8620, "L" },
{ 8624, "E" },
{ 8628, "R" },
{ 8632, "S" },
{ 8636, "PLAYPAL" },
{ 8644, "MAPE1" },
{ 8652, "MAPE2" },
{ 8660, "MAPE3" },
{ 8668, "IN_X" },
{ 8676, "IN_YAH" },
{ 8684, "FONTB16" },
{ 8692, "FONTB_S" },
{ 8700, "FONTB13" },
{ 8708, "FONTB15" },
{ 8716, "FONTB05" },
{ 8724, "FACEA0" },
{ 8732, "FACEB0" },
{ 8740, "Z_CT at in_lude.c:%i" },
{ 8764, "IN_lude: Intermission state out of range.\n" },
{ 8808, "FLOOR16" },
{ 8816, "FINISHED" },
{ 8828, "NOW ENTERING:" },
{ 8844, "KILLS" },
{ 8852, "ITEMS" },
{ 8860, "SECRETS" },
{ 8868, "TIME" },
{ 8876, "BONUS" },
{ 8884, "SECRET" },
{ 8892, "TOTAL" },
{ 8900, "VICTIMS" },
{ 8908, ":" },
{ 8912, "NEW GAME" },
{ 8924, "OPTIONS" },
{ 8932, "GAME FILES" },
{ 8944, "INFO" },
{ 8952, "QUIT GAME" },
{ 8964, "CITY OF THE DAMNED" },
{ 8984, "HELL'S MAW" },
{ 8996, "THE DOME OF D'SPARIL" },
{ 9020, "THE OSSUARY" },
{ 9032, "THE STAGNANT DEMESNE" },
{ 9056, "LOAD GAME" },
{ 9068, "SAVE GAME" },
{ 9080, "THOU NEEDETH A WET-NURSE" },
{ 9108, "YELLOWBELLIES-R-US" },
{ 9128, "BRINGEST THEM ONETH" },
{ 9148, "THOU ART A SMITE-MEISTER" },
{ 9176, "BLACK PLAGUE POSSESSES THEE" },
{ 9204, "END GAME" },
{ 9216, "MESSAGES : " },
{ 9228, "MOUSE SENSITIVITY" },
{ 9248, "MORE..." },
{ 9256, "SCREEN SIZE" },
{ 9268, "SFX VOLUME" },
{ 9280, "MUSIC VOLUME" },
{ 9296, "ARE YOU SURE YOU WANT TO QUIT?" },
{ 9328, "ARE YOU SURE YOU WANT TO END THE GAME?" },
{ 9368, "DO YOU WANT TO QUICKSAVE THE GAME NAMED" },
{ 9408, "DO YOU WANT TO QUICKLOAD THE GAME NAMED" },
{ 9448, "M_SKL00" },
{ 9456, "FONTA_S" },
{ 9464, "FONTB_S" },
{ 9472, "?" },
{ 9476, "M_SLCTR1" },
{ 9488, "M_SLCTR2" },
{ 9500, "M_HTIC" },
{ 9508, "c:\\heretic.cd\\hticsav%d.hsg" },
{ 9536, "hticsav%d.hsg" },
{ 9552, "rb+" },
{ 9556, "M_FSLOT" },
{ 9564, "ON" },
{ 9568, "OFF" },
{ 9572, "YOU CAN'T START A NEW GAME IN NETPLAY!" },
{ 9612, "YOU CAN'T LOAD A GAME IN NETPLAY!" },
{ 9648, "MESSAGES ON" },
{ 9660, "MESSAGES OFF" },
{ 9676, "ONLY AVAILABLE IN THE REGISTERED VERSION" },
{ 9720, "PLAYPAL" },
{ 9728, "QUICKSAVING...." },
{ 9744, "QUICKLOADING...." },
{ 9764, "CHOOSE A QUICKSAVE SLOT" },
{ 9788, "CHOOSE A QUICKLOAD SLOT" },
{ 9812, "TITLE" },
{ 9820, "M_SLDLT" },
{ 9828, "M_SLDMD1" },
{ 9840, "M_SLDMD2" },
{ 9852, "M_SLDRT" },
{ 9860, "M_SLDKB" },
{ 9868, "mouse_sensitivity" },
{ 9888, "sfx_volume" },
{ 9900, "music_volume" },
{ 9916, "key_right" },
{ 9928, "key_left" },
{ 9940, "key_up" },
{ 9948, "key_down" },
{ 9960, "key_strafeleft" },
{ 9976, "key_straferight" },
{ 9992, "key_flyup" },
{ 10004, "key_flydown" },
{ 10016, "key_flycenter" },
{ 10032, "key_lookup" },
{ 10044, "key_lookdown" },
{ 10060, "key_lookcenter" },
{ 10076, "key_invleft" },
{ 10088, "key_invright" },
{ 10104, "key_useartifact" },
{ 10120, "key_fire" },
{ 10132, "key_use" },
{ 10140, "key_strafe" },
{ 10152, "key_speed" },
{ 10164, "use_mouse" },
{ 10176, "mouseb_fire" },
{ 10188, "mouseb_strafe" },
{ 10204, "mouseb_forward" },
{ 10220, "use_joystick" },
{ 10236, "joyb_fire" },
{ 10248, "joyb_strafe" },
{ 10260, "joyb_use" },
{ 10272, "joyb_speed" },
{ 10284, "screenblocks" },
{ 10300, "snd_channels" },
{ 10316, "snd_musicdevice" },
{ 10332, "snd_sfxdevice" },
{ 10348, "snd_sbport" },
{ 10360, "snd_sbirq" },
{ 10372, "snd_sbdma" },
{ 10384, "snd_mport" },
{ 10396, "usegamma" },
{ 10408, "chatmacro0" },
{ 10420, "No" },
{ 10424, "chatmacro1" },
{ 10436, "I'm ready to kick butt!" },
{ 10460, "chatmacro2" },
{ 10472, "I'm OK." },
{ 10480, "chatmacro3" },
{ 10492, "I'm not looking too good!" },
{ 10520, "chatmacro4" },
{ 10532, "Help!" },
{ 10540, "chatmacro5" },
{ 10552, "You suck!" },
{ 10564, "chatmacro6" },
{ 10576, "Next time, scumbag..." },
{ 10600, "chatmacro7" },
{ 10612, "Come here!" },
{ 10624, "chatmacro8" },
{ 10636, "I'll take care of it." },
{ 10660, "chatmacro9" },
{ 10672, "Yes" },
{ 10676, "Couldn't read file %s" },
{ 10700, "rb" },
{ 10704, "\nNo such response file!" },
{ 10728, "Found response file %s!\n" },
{ 10756, "-debug" },
{ 10764, "%d command-line args:\n" },
{ 10788, "%s\n" },
{ 10792, "w" },
{ 10796, "%s\t\t%i\n" },
{ 10804, "%s\t\t\"%s\"\n" },
{ 10816, "-config" },
{ 10824, "default file: %s\n" },
{ 10844, "c:\\heretic.cd\\heretic.cfg" },
{ 10872, "r" },
{ 10876, "%79s %[^\n]\n" },
{ 10888, "%x" },
{ 10892, "%i" },
{ 10896, "HRTIC00.pcx" },
{ 10908, "M_ScreenShot: Couldn't create a PCX" },
{ 10944, "SCREEN SHOT" },
{ 10956, "YOU NEED A BLUE KEY TO OPEN THIS DOOR" },
{ 10996, "YOU NEED A YELLOW KEY TO OPEN THIS DOOR" },
{ 11036, "YOU NEED A GREEN KEY TO OPEN THIS DOOR" },
{ 11076, "Too many boss spots." },
{ 11100, "P_NewChaseDir: called with no target" },
{ 11140, "" },
{ 11144, "A" },
{ 11148, "P_GiveAmmo: bad type %i" },
{ 11172, "CRYSTAL VIAL" },
{ 11188, "SILVER SHIELD" },
{ 11204, "ENCHANTED SHIELD" },
{ 11224, "BAG OF HOLDING" },
{ 11240, "MAP SCROLL" },
{ 11252, "BLUE KEY" },
{ 11264, "YELLOW KEY" },
{ 11276, "GREEN KEY" },
{ 11288, "QUARTZ FLASK" },
{ 11304, "WINGS OF WRATH" },
{ 11320, "RING OF INVINCIBILITY" },
{ 11344, "TOME OF POWER" },
{ 11360, "SHADOWSPHERE" },
{ 11376, "MORPH OVUM" },
{ 11388, "MYSTIC URN" },
{ 11400, "TORCH" },
{ 11408, "TIME BOMB OF THE ANCIENTS" },
{ 11436, "CHAOS DEVICE" },
{ 11452, "WAND CRYSTAL" },
{ 11468, "CRYSTAL GEODE" },
{ 11484, "MACE SPHERES" },
{ 11500, "PILE OF MACE SPHERES" },
{ 11524, "ETHEREAL ARROWS" },
{ 11540, "QUIVER OF ETHEREAL ARROWS" },
{ 11568, "CLAW ORB" },
{ 11580, "ENERGY ORB" },
{ 11592, "LESSER RUNES" },
{ 11608, "GREATER RUNES" },
{ 11624, "FLAME ORB" },
{ 11636, "INFERNO ORB" },
{ 11648, "FIREMACE" },
{ 11660, "ETHEREAL CROSSBOW" },
{ 11680, "DRAGON CLAW" },
{ 11692, "HELLSTAFF" },
{ 11704, "PHOENIX ROD" },
{ 11716, "GAUNTLETS OF THE NECROMANCER" },
{ 11748, "P_SpecialThing: Unknown gettable thing" },
{ 11788, "PTR_SlideTraverse: not a line?" },
{ 11820, "P_SpawnMapThing: Unknown type %i at (%i, %i)" },
{ 11868, "P_AddActivePlat: no more plats!" },
{ 11900, "P_RemoveActivePlat: can't find plat!" },
{ 11940, "Too many mace spots." },
{ 11964, "" },
{ 11968, "XXXXX BAD STRING" },
{ 11980, "P_GroupLines: miscounted" },
{ 12008, "-timer" },
{ 12016, "FLTWAWA1" },
{ 12028, "FLTFLWW1" },
{ 12040, "FLTLAVA1" },
{ 12052, "FLATHUH1" },
{ 12064, "FLTSLUD1" },
{ 12076, "END" },
{ 12080, "P_InitPicAnims: bad cycle from %s to %s" },
{ 12120, "P_PlayerInSpecialSector: unknown special %i" },
{ 12164, "texture2" },
{ 12176, "Too many ambient sound sequences" },
{ 12212, "P_AmbientSound: Unknown afxcmd %d" },
{ 12248, "P_StartButton: no button slots left!" },
{ 12288, "Unknown tclass %i in savegame" },
{ 12320, "P_UnarchiveSpecials:Unknown tclass %i in savegame" },
{ 12372, "PLAYPAL" },
{ 12380, "Z_CT at r_data.c:%i" },
{ 12400, "R_GenerateLookup: column without a patch (%s)\n" },
{ 12448, "R_GenerateLookup: texture %i is >64k" },
{ 12488, "PNAMES" },
{ 12496, "TEXTURE1" },
{ 12508, "TEXTURE2" },
{ 12520, "S_END" },
{ 12528, "S_START" },
{ 12536, "R_InitTextures: bad texture directory" },
{ 12576, "R_InitTextures: Missing patch in texture %s" },
{ 12620, "F_START" },
{ 12628, "F_END" },
{ 12636, "COLORMAP" },
{ 12648, "\nR_InitTextures " },
{ 12668, "R_InitFlats\n" },
{ 12684, "R_InitSpriteLumps " },
{ 12704, "R_FlatNumForName: %s not found" },
{ 12736, "R_TextureNumForName: %s not found" },
{ 12772, "TINTTAB" },
{ 12780, "FLOOR04" },
{ 12788, "FLAT513" },
{ 12796, "bordt" },
{ 12804, "bordb" },
{ 12812, "bordl" },
{ 12820, "bordr" },
{ 12828, "bordtl" },
{ 12836, "bordtr" },
{ 12844, "bordbr" },
{ 12852, "bordbl" },
{ 12860, "R_InitData " },
{ 12872, "R_InitPointToAngle\n" },
{ 12892, "R_InitTables " },
{ 12908, "R_InitPlanes\n" },
{ 12924, "R_InitLightTables " },
{ 12944, "R_InitSkyMap\n" },
{ 12960, "F_SKY1" },
{ 12968, "R_FindPlane: no more visplanes" },
{ 13000, "Z_CT at r_plane.c:%i" },
{ 13024, "R_InstallSpriteLump: Bad frame characters in lump %i" },
{ 13080, "R_InitSprites: Sprite %s frame %c has multip rot=0 lump" },
{ 13136, "R_InitSprites: Sprite %s frame %c has rotations and a rot=0 lump" },
{ 13204, "R_InitSprites: Sprite %s frame %c has rotations and a rot=0 lump" },
{ 13272, "R_InitSprites: Sprite %s : %c : %c has two lumps mapped to it" },
{ 13336, "R_InitSprites: No lumps found for sprite %s" },
{ 13380, "R_InitSprites: No patches found for %s frame %c" },
{ 13428, "R_InitSprites: Sprite %s frame %c is missing rotations" },
{ 13484, "LTFACE" },
{ 13492, "RTFACE" },
{ 13500, "BARBACK" },
{ 13508, "INVBAR" },
{ 13516, "CHAIN" },
{ 13524, "STATBAR" },
{ 13532, "LIFEBAR" },
{ 13540, "LIFEGEM2" },
{ 13552, "LIFEGEM0" },
{ 13564, "LTFCTOP" },
{ 13572, "RTFCTOP" },
{ 13580, "SELECTBOX" },
{ 13592, "INVGEML1" },
{ 13604, "INVGEML2" },
{ 13616, "INVGEMR1" },
{ 13628, "INVGEMR2" },
{ 13640, "BLACKSQ" },
{ 13648, "ARMCLEAR" },
{ 13660, "CHAINBACK" },
{ 13672, "IN0" },
{ 13676, "NEGNUM" },
{ 13684, "FONTB16" },
{ 13692, "SMALLIN0" },
{ 13704, "PLAYPAL" },
{ 13712, "SPINBK0" },
{ 13720, "SPFLY0" },
{ 13728, "LAME" },
{ 13736, "*** SOUND DEBUG INFO ***" },
{ 13764, "NAME" },
{ 13772, "MO.T" },
{ 13780, "MO.X" },
{ 13788, "MO.Y" },
{ 13796, "ID" },
{ 13800, "PRI" },
{ 13804, "DIST" },
{ 13812, "------" },
{ 13820, "%s" },
{ 13824, "%d" },
{ 13828, "GOD1" },
{ 13836, "GOD2" },
{ 13844, "useartia" },
{ 13856, "ykeyicon" },
{ 13868, "gkeyicon" },
{ 13880, "bkeyicon" },
{ 13892, "ARTIBOX" },
{ 13900, "GOD MODE ON" },
{ 13912, "GOD MODE OFF" },
{ 13928, "NO CLIPPING ON" },
{ 13944, "NO CLIPPING OFF" },
{ 13960, "ALL WEAPONS" },
{ 13972, "POWER OFF" },
{ 13984, "POWER ON" },
{ 13996, "FULL HEALTH" },
{ 14008, "ALL KEYS" },
{ 14020, "SOUND DEBUG ON" },
{ 14036, "SOUND DEBUG OFF" },
{ 14052, "TICKER ON" },
{ 14064, "TICKER OFF" },
{ 14076, "CHOOSE AN ARTIFACT ( A - J )" },
{ 14108, "HOW MANY ( 1 - 9 )" },
{ 14128, "YOU GOT IT" },
{ 14140, "BAD INPUT" },
{ 14152, "LEVEL WARP" },
{ 14164, "CHICKEN OFF" },
{ 14176, "CHICKEN ON" },
{ 14188, "MASSACRE" },
{ 14200, "CHEATER - YOU DON'T DESERVE WEAPONS" },
{ 14236, "TRYING TO CHEAT, EH? NOW YOU DIE!" },
{ 14272, "Bad V_DrawPatch" },
{ 14288, "Filename base of %s >8 chars" },
{ 14320, "wad" },
{ 14324, "IWAD" },
{ 14332, "PWAD" },
{ 14340, "Wad file %s doesn't have IWAD or PWAD id\n" },
{ 14384, "Couldn't realloc lumpinfo" },
{ 14412, "W_InitFiles: no files found" },
{ 14440, "Couldn't allocate lumpcache" },
{ 14468, "W_GetNumForName: %s not found!" },
{ 14500, "W_LumpLength: %i >= numlumps" },
{ 14532, "W_ReadLump: %i >= numlumps" },
{ 14560, "W_ReadLump: only read %i of %i on lump %i" },
{ 14604, "W_CacheLumpNum: %i >= numlumps" },
{ 14636, "Z_CT at w_wad.c:%i" },
{ 14656, "Z_Free: freed a pointer without ZONEID" },
{ 14696, "Z_Malloc: failed on allocation of %i bytes" },
{ 14740, "Z_Malloc: an owner is required for purgable blocks" },
{ 14792, "zone size: %i location: %p\n" },
{ 14824, "tag range: %i to %i\n" },
{ 14848, "block:%p size:%7i user:%p tag:%3i\n" },
{ 14892, "ERROR: block size does not touch the next block\n" },
{ 14944, "ERROR: next block doesn't have proper back link\n" },
{ 14996, "ERROR: two consecutive free blocks\n" },
{ 15032, "block:%p size:%7i user:%p tag:%3i\n" },
{ 15076, "ERROR: block size does not touch the next block\n" },
{ 15128, "ERROR: next block doesn't have proper back link\n" },
{ 15180, "ERROR: two consecutive free blocks\n" },
{ 15216, "Z_CheckHeap: block size does not touch the next block\n" },
{ 15272, "Z_CheckHeap: next block doesn't have proper back link\n" },
{ 15328, "Z_CheckHeap: two consecutive free blocks\n" },
{ 15372, "Z_ChangeTag: freed a pointer without ZONEID" },
{ 15416, "Z_ChangeTag: an owner is required for purgable blocks" },
{ 15472, "MThd" },
{ 15480, "MTrk" },
{ 15488, "MUS\u001a" },
{ 15496, " out of GUS RAM:" },
{ 15516, "%d%c" },
{ 15524, "GF1PATCH110" },
{ 15536, "110" },
{ 15540, ",%d" },
{ 15544, "Ultrasound @ Port:%03Xh, IRQ:%d, DMA:%d\n" },
{ 15588, "Sizing GUS RAM:" },
{ 15604, "BANK%d:OK " },
{ 15616, "BANK%d:N\/A " },
{ 15628, "\n" },
{ 15632, "ULTRADIR" },
{ 15644, "\\midi\\" },
{ 15652, "\r\n" },
{ 15656, "Loading GUS Patches\n" },
{ 15680, ".pat" },
{ 15688, "%s" },
{ 15692, " - FAILED\n" },
{ 15704, " - OK\n" },
{ 15712, "ULTRASND" },
{ 15724, "ECHO Personal Sound System Enabled.\n" },
{ 15764, "BLASTER" },
{ 15772, "%x" },
{ 15776, "Pro Audio Spectrum 3D JAZZ\n" },
{ 15804, "\nDSP Version: %x.%02x\n" },
{ 15828, " IRQ: %d\n" },
{ 15848, " DMA: %d\n" },
{ 15868, "GENMIDI.OP2" },
{ 15880, "DMXTRACE" },
{ 15892, "DMXOPTION" },
{ 15904, "-opl3" },
{ 15912, "-phase" },
{ 15920, "WAVE" },
{ 15928, "fmt " },
{ 15936, "data" },

785
hhe/v1.3/strings.c Normal file
View file

@ -0,0 +1,785 @@
{ 0, "\u0001\u0001\u0001" },
{ 4, "CyberMan: Wrong mouse driver - no SWIFT support (AX=%04x).\n" },
{ 64, "CyberMan: no SWIFT device connected.\n" },
{ 104, "CyberMan: SWIFT device is not a CyberMan! (type=%d)\n" },
{ 160, "CyberMan: CyberMan %d.%02d connected.\n" },
{ 200, "Z_CT at i_ibm.c:%i" },
{ 220, "NDCURVE" },
{ 228, "PLAYPAL" },
{ 236, "0x%x\n" },
{ 244, "omouse" },
{ 252, "ouse: not present " },
{ 272, "ouse: detected " },
{ 288, "-nojoy" },
{ 296, "oystick not found " },
{ 316, "oystick found\n" },
{ 332, "ENTER the joystick and press button 1:" },
{ 372, "Push the joystick to the UPPER LEFT corner and press button 1:" },
{ 436, "Push the joystick to the LOWER RIGHT corner and press button 1:" },
{ 500, "\n" },
{ 504, "T_SetTimer0: %i is a bad value" },
{ 536, "ovideo" },
{ 544, "_StartupDPMI" },
{ 560, "tartupMouse " },
{ 576, "nit... " },
{ 584, "ENDTEXT" },
{ 592, "DPMI memory: 0x%x, " },
{ 612, "0x%x allocated for zone\n" },
{ 640, "ufficient DPMI memory!" },
{ 664, "_AllocLow: DOS alloc of %i failed, %i free" },
{ 708, "net" },
{ 712, "I_NetCmd when not in netgame" },
{ 744, "terndriver" },
{ 756, "I_StartupTimer()\n" },
{ 776, "Can't register 35 Hz timer w\/ DMX library" },
{ 820, "-nosound" },
{ 832, "-nosfx" },
{ 840, "-nomusic" },
{ 852, "Dude. The GUS ain't responding.\n" },
{ 888, "dmxgus" },
{ 896, "cfg p=0x%x, i=%d, d=%d\n" },
{ 920, "SB isn't responding at p=0x%x, i=%d, d=%d\n" },
{ 964, "SB_Detect returned p=0x%x,i=%d,d=%d\n" },
{ 1004, "Dude. The Adlib isn't responding.\n" },
{ 1040, "genmidi" },
{ 1048, "cfg p=0x%x\n" },
{ 1060, "The MPU-401 isn't reponding @ p=0x%x.\n" },
{ 1100, "I_StartupSound: Hope you hear a pop.\n" },
{ 1140, " Music device #%d & dmxCode=%d" },
{ 1172, " Sfx device #%d & dmxCode=%d\n" },
{ 1204, " calling DMX_Init" },
{ 1224, " DMX_Init() returned %d" },
{ 1252, "E1M1: THE DOCKS" },
{ 1272, "E1M2: THE DUNGEONS" },
{ 1292, "E1M3: THE GATEHOUSE" },
{ 1316, "E1M4: THE GUARD TOWER" },
{ 1340, "E1M5: THE CITADEL" },
{ 1360, "E1M6: THE CATHEDRAL" },
{ 1384, "E1M7: THE CRYPTS" },
{ 1404, "E1M8: HELL'S MAW" },
{ 1424, "E1M9: THE GRAVEYARD" },
{ 1448, "E2M1: THE CRATER" },
{ 1468, "E2M2: THE LAVA PITS" },
{ 1492, "E2M3: THE RIVER OF FIRE" },
{ 1520, "E2M4: THE ICE GROTTO" },
{ 1544, "E2M5: THE CATACOMBS" },
{ 1568, "E2M6: THE LABYRINTH" },
{ 1592, "E2M7: THE GREAT HALL" },
{ 1616, "E2M8: THE PORTALS OF CHAOS" },
{ 1644, "E2M9: THE GLACIER" },
{ 1664, "E3M1: THE STOREHOUSE" },
{ 1688, "E3M2: THE CESSPOOL" },
{ 1708, "E3M3: THE CONFLUENCE" },
{ 1732, "E3M4: THE AZURE FORTRESS" },
{ 1760, "E3M5: THE OPHIDIAN LAIR" },
{ 1788, "E3M6: THE HALLS OF FEAR" },
{ 1816, "E3M7: THE CHASM" },
{ 1836, "E3M8: D'SPARIL'S KEEP" },
{ 1860, "E3M9: THE AQUIFER" },
{ 1880, "E4M1: CATAFALQUE" },
{ 1900, "E4M2: BLOCKHOUSE" },
{ 1920, "E4M3: AMBULATORY" },
{ 1940, "E4M4: SEPULCHER" },
{ 1960, "E4M5: GREAT STAIR" },
{ 1980, "E4M6: HALLS OF THE APOSTATE" },
{ 2012, "E4M7: RAMPARTS OF PERDITION" },
{ 2044, "E4M8: SHATTERED BRIDGE" },
{ 2068, "E4M9: MAUSOLEUM" },
{ 2088, "E5M1: OCHRE CLIFFS" },
{ 2108, "E5M2: RAPIDS" },
{ 2124, "E5M3: QUAY" },
{ 2136, "E5M4: COURTYARD" },
{ 2156, "E5M5: HYDRATYR" },
{ 2172, "E5M6: COLONNADE" },
{ 2192, "E5M7: FOETID MANSE" },
{ 2212, "E5M8: FIELD OF JUDGEMENT" },
{ 2240, "E5M9: SKEIN OF D'SPARIL" },
{ 2268, "AUTOPAGE" },
{ 2280, "FOLLOW MODE ON" },
{ 2296, "FOLLOW MODE OFF" },
{ 2312, "fuck %d \r" },
{ 2324, "GREEN: " },
{ 2336, "YELLOW: " },
{ 2348, "RED: " },
{ 2356, "BLUE: " },
{ 2364, "FONTA_S" },
{ 2372, "-MESSAGE SENT-" },
{ 2388, "THERE ARE NO OTHER PLAYERS IN THE GAME!" },
{ 2428, "FONTA59" },
{ 2436, "heretic.wad" },
{ 2448, "texture1.lmp" },
{ 2464, "texture2.lmp" },
{ 2480, "pnames.lmp" },
{ 2492, "heretic.cfg" },
{ 2504, "PAUSED" },
{ 2512, "-debugfile" },
{ 2524, "debug%i.txt" },
{ 2536, "w" },
{ 2540, "ADVISOR" },
{ 2548, "TITLE" },
{ 2556, "demo1" },
{ 2564, "CREDIT" },
{ 2572, "demo2" },
{ 2580, "ORDER" },
{ 2588, "demo3" },
{ 2596, "-recordfrom" },
{ 2608, "c:\\heretic.cd\\hticsav%c.hsg" },
{ 2636, "hticsav%c.hsg" },
{ 2652, ", " },
{ 2656, "External Wadfiles: " },
{ 2676, " " },
{ 2684, "," },
{ 2688, "v1.3" },
{ 2696, "Exited from HERETIC.\n" },
{ 2720, "-nomonsters" },
{ 2732, "-respawn" },
{ 2744, "-ravpic" },
{ 2752, "-noartiskip" },
{ 2764, "-debug" },
{ 2772, "rb" },
{ 2776, "heretic1.wad" },
{ 2792, "-cdrom" },
{ 2800, "c:\\heretic.cd" },
{ 2816, "-file" },
{ 2824, "-devmap" },
{ 2832, "\\data\\E%cM%c.wad" },
{ 2852, "DEVMAP: Episode %c, Map %c.\n" },
{ 2884, "-playdemo" },
{ 2896, "-timedemo" },
{ 2908, "%s.lmp" },
{ 2916, "Playing demo %s.lmp.\n" },
{ 2940, "-deathmatch" },
{ 2952, "-skill" },
{ 2960, "-episode" },
{ 2972, "-warp" },
{ 2980, "V_Init: allocate screens.\n" },
{ 3008, "M_LoadDefaults: Load system defaults.\n" },
{ 3048, "Z_Init: Init zone memory allocation daemon.\n" },
{ 3096, "W_Init: Init WADfiles.\n" },
{ 3120, "E2M1" },
{ 3128, "EXTENDED" },
{ 3140, "LOADING" },
{ 3148, "DeathMatch..." },
{ 3164, "No Monsters..." },
{ 3180, "Respawning..." },
{ 3196, "Warp to Episode %d, Map %d, Skill %d " },
{ 3236, "MN_Init: Init menu system.\n" },
{ 3264, "R_Init: Init Heretic refresh daemon." },
{ 3304, "Loading graphics" },
{ 3324, "P_Init: Init Playloop state." },
{ 3356, "Init game engine." },
{ 3376, "I_Init: Setting up machine state.\n" },
{ 3412, "D_CheckNetGame: Checking network game status.\n" },
{ 3460, "Checking network game status." },
{ 3492, "SB_Init: Loading patches.\n" },
{ 3520, "-record" },
{ 3528, "-loadgame" },
{ 3540, "ExpandTics: strange value %i at maketic %i" },
{ 3584, "Tried to transmit to another node" },
{ 3620, "send (%i + %i, R %i) [%i] " },
{ 3648, "%i " },
{ 3652, "\n" },
{ 3656, "bad packet length %i\n" },
{ 3680, "bad packet checksum\n" },
{ 3704, "setup packet\n" },
{ 3720, "get %i = (%i + %i, R %i)[%i] " },
{ 3752, "PLAYER 1 LEFT THE GAME" },
{ 3776, "Killed by network driver" },
{ 3804, "retransmit from %i\n" },
{ 3824, "out of order packet (%i + %i)\n" },
{ 3856, "missed tics from %i (%i - %i)\n" },
{ 3888, "NetUpdate: netbuffer->numtics > BACKUPTICS" },
{ 3932, "Network game synchronization aborted." },
{ 3972, "Different DOOM versions cannot play a net game!" },
{ 4020, "Doomcom buffer invalid!" },
{ 4044, "=======real: %i avail: %i game: %i\n" },
{ 4084, "TryRunTics: lowtic < gametic" },
{ 4116, "gametic>lowtic" },
{ 4132, "SKY1" },
{ 4140, "SKY2" },
{ 4148, "SKY3" },
{ 4156, "consistency failure (%i should be %i)" },
{ 4196, "NET GAME" },
{ 4208, "SAVE GAME" },
{ 4220, "Only %i deathmatch spots, 4 required" },
{ 4260, "version %i" },
{ 4272, "Bad savegame" },
{ 4288, ".lmp" },
{ 4296, "timed %i gametics in %i realtics" },
{ 4332, "Z_CT at g_game.c:%i" },
{ 4352, "Demo %s recorded" },
{ 4372, "c:\\heretic.cd\\hticsav%d.hsg" },
{ 4400, "hticsav%d.hsg" },
{ 4416, "GAME SAVED" },
{ 4428, "wb" },
{ 4432, "Savegame buffer overrun" },
{ 4456, "with the destruction of the iron\nliches and their minions, the last\nof the undead are cleared from this\nplane of existence.\n\nthose creatures had to come from\nsomewhere, though, and you have the\nsneaky suspicion that the fiery\nportal of hell's maw opens onto\ntheir home dimension.\n\nto make sure that more undead\n(or even worse things) don't come\nthrough, you'll have to seal hell's\nmaw from the other side. of course\nthis means you may get stuck in a\nvery unfriendly world, but no one\never said being a Heretic was easy!" },
{ 4976, "the mighty maulotaurs have proved\nto be no match for you, and as\ntheir steaming corpses slide to the\nground you feel a sense of grim\nsatisfaction that they have been\ndestroyed.\n\nthe gateways which they guarded\nhave opened, revealing what you\nhope is the way home. but as you\nstep through, mocking laughter\nrings in your ears.\n\nwas some other force controlling\nthe maulotaurs? could there be even\nmore horrific beings through this\ngate? the sweep of a crystal dome\noverhead where the sky should be is\ncertainly not a good sign...." },
{ 5508, "the death of d'sparil has loosed\nthe magical bonds holding his\ncreatures on this plane, their\ndying screams overwhelming his own\ncries of agony.\n\nyour oath of vengeance fulfilled,\nyou enter the portal to your own\nworld, mere moments before the dome\nshatters into a million pieces.\n\nbut if d'sparil's power is broken\nforever, why don't you feel safe?\nwas it that last shout just before\nhis death, the one that sounded\nlike a curse? or a summoning? you\ncan't really be sure, but it might\njust have been a scream.\n\nthen again, what about the other\nserpent riders?" },
{ 6072, "you thought you would return to your\nown world after d'sparil died, but\nhis final act banished you to his\nown plane. here you entered the\nshattered remnants of lands\nconquered by d'sparil. you defeated\nthe last guardians of these lands,\nbut now you stand before the gates\nto d'sparil's stronghold. until this\nmoment you had no doubts about your\nability to face anything you might\nencounter, but beyond this portal\nlies the very heart of the evil\nwhich invaded your world. d'sparil\nmight be dead, but the pit where he\nwas spawned remains. now you must\nenter that pit in the hopes of\nfinding a way out. and somewhere,\nin the darkest corner of d'sparil's\ndemesne, his personal bodyguards\nawait your arrival ..." },
{ 6780, "as the final maulotaur bellows his\ndeath-agony, you realize that you\nhave never come so close to your own\ndestruction. not even the fight with\nd'sparil and his disciples had been\nthis desperate. grimly you stare at\nthe gates which open before you,\nwondering if they lead home, or if\nthey open onto some undreamed-of\nhorror. you find yourself wondering\nif you have the strength to go on,\nif nothing but death and pain await\nyou. but what else can you do, if\nthe will to fight is gone? can you\nforce yourself to continue in the\nface of such despair? do you have\nthe courage? you find, in the end,\nthat it is not within you to\nsurrender without a fight. eyes\nwide, you go to meet your fate." },
{ 7468, "FLOOR25" },
{ 7476, "FLATHUH1" },
{ 7488, "FLTWAWA2" },
{ 7500, "FLOOR28" },
{ 7508, "FLOOR08" },
{ 7516, "FONTA_S" },
{ 7524, "PLAYPAL" },
{ 7532, "FINAL1" },
{ 7540, "FINAL2" },
{ 7548, "E2PAL" },
{ 7556, "E2END" },
{ 7564, "TITLE" },
{ 7572, "ORDER" },
{ 7580, "CREDIT" },
{ 7588, "IMPX" },
{ 7596, "ACLO" },
{ 7604, "PTN1" },
{ 7612, "SHLD" },
{ 7620, "SHD2" },
{ 7628, "BAGH" },
{ 7636, "SPMP" },
{ 7644, "INVS" },
{ 7652, "PTN2" },
{ 7660, "SOAR" },
{ 7668, "INVU" },
{ 7676, "PWBK" },
{ 7684, "EGGC" },
{ 7692, "EGGM" },
{ 7700, "FX01" },
{ 7708, "SPHL" },
{ 7716, "TRCH" },
{ 7724, "FBMB" },
{ 7732, "XPL1" },
{ 7740, "ATLP" },
{ 7748, "PPOD" },
{ 7756, "AMG1" },
{ 7764, "SPSH" },
{ 7772, "LVAS" },
{ 7780, "SLDG" },
{ 7788, "SKH1" },
{ 7796, "SKH2" },
{ 7804, "SKH3" },
{ 7812, "SKH4" },
{ 7820, "CHDL" },
{ 7828, "SRTC" },
{ 7836, "SMPL" },
{ 7844, "STGS" },
{ 7852, "STGL" },
{ 7860, "STCS" },
{ 7868, "STCL" },
{ 7876, "KFR1" },
{ 7884, "BARL" },
{ 7892, "BRPL" },
{ 7900, "MOS1" },
{ 7908, "MOS2" },
{ 7916, "WTRH" },
{ 7924, "HCOR" },
{ 7932, "KGZ1" },
{ 7940, "KGZB" },
{ 7948, "KGZG" },
{ 7956, "KGZY" },
{ 7964, "VLCO" },
{ 7972, "VFBL" },
{ 7980, "VTFB" },
{ 7988, "SFFI" },
{ 7996, "TGLT" },
{ 8004, "TELE" },
{ 8012, "STFF" },
{ 8020, "PUF3" },
{ 8028, "PUF4" },
{ 8036, "BEAK" },
{ 8044, "WGNT" },
{ 8052, "GAUN" },
{ 8060, "PUF1" },
{ 8068, "WBLS" },
{ 8076, "BLSR" },
{ 8084, "FX18" },
{ 8092, "FX17" },
{ 8100, "WMCE" },
{ 8108, "MACE" },
{ 8116, "FX02" },
{ 8124, "WSKL" },
{ 8132, "HROD" },
{ 8140, "FX00" },
{ 8148, "FX20" },
{ 8156, "FX21" },
{ 8164, "FX22" },
{ 8172, "FX23" },
{ 8180, "GWND" },
{ 8188, "PUF2" },
{ 8196, "WPHX" },
{ 8204, "PHNX" },
{ 8212, "FX04" },
{ 8220, "FX08" },
{ 8228, "FX09" },
{ 8236, "WBOW" },
{ 8244, "CRBW" },
{ 8252, "FX03" },
{ 8260, "BLOD" },
{ 8268, "PLAY" },
{ 8276, "FDTH" },
{ 8284, "BSKL" },
{ 8292, "CHKN" },
{ 8300, "MUMM" },
{ 8308, "FX15" },
{ 8316, "BEAS" },
{ 8324, "FRB1" },
{ 8332, "SNKE" },
{ 8340, "SNFX" },
{ 8348, "HEAD" },
{ 8356, "FX05" },
{ 8364, "FX06" },
{ 8372, "FX07" },
{ 8380, "CLNK" },
{ 8388, "WZRD" },
{ 8396, "FX11" },
{ 8404, "FX10" },
{ 8412, "KNIG" },
{ 8420, "SPAX" },
{ 8428, "RAXE" },
{ 8436, "SRCR" },
{ 8444, "FX14" },
{ 8452, "SOR2" },
{ 8460, "SDTH" },
{ 8468, "FX16" },
{ 8476, "MNTR" },
{ 8484, "FX12" },
{ 8492, "FX13" },
{ 8500, "AKYY" },
{ 8508, "BKYY" },
{ 8516, "CKYY" },
{ 8524, "AMG2" },
{ 8532, "AMM1" },
{ 8540, "AMM2" },
{ 8548, "AMC1" },
{ 8556, "AMC2" },
{ 8564, "AMS1" },
{ 8572, "AMS2" },
{ 8580, "AMP1" },
{ 8588, "AMP2" },
{ 8596, "AMB1" },
{ 8604, "AMB2" },
{ 8612, "K" },
{ 8616, "I" },
{ 8620, "L" },
{ 8624, "E" },
{ 8628, "R" },
{ 8632, "S" },
{ 8636, "PLAYPAL" },
{ 8644, "MAPE1" },
{ 8652, "MAPE2" },
{ 8660, "MAPE3" },
{ 8668, "IN_X" },
{ 8676, "IN_YAH" },
{ 8684, "FONTB16" },
{ 8692, "FONTB_S" },
{ 8700, "FONTB13" },
{ 8708, "FONTB15" },
{ 8716, "FONTB05" },
{ 8724, "FACEA0" },
{ 8732, "FACEB0" },
{ 8740, "Z_CT at in_lude.c:%i" },
{ 8764, "IN_lude: Intermission state out of range.\n" },
{ 8808, "FLOOR16" },
{ 8816, "FINISHED" },
{ 8828, "NOW ENTERING:" },
{ 8844, "KILLS" },
{ 8852, "ITEMS" },
{ 8860, "SECRETS" },
{ 8868, "TIME" },
{ 8876, "BONUS" },
{ 8884, "SECRET" },
{ 8892, "TOTAL" },
{ 8900, "VICTIMS" },
{ 8908, ":" },
{ 8912, "NEW GAME" },
{ 8924, "OPTIONS" },
{ 8932, "GAME FILES" },
{ 8944, "INFO" },
{ 8952, "QUIT GAME" },
{ 8964, "CITY OF THE DAMNED" },
{ 8984, "HELL'S MAW" },
{ 8996, "THE DOME OF D'SPARIL" },
{ 9020, "THE OSSUARY" },
{ 9032, "THE STAGNANT DEMESNE" },
{ 9056, "LOAD GAME" },
{ 9068, "SAVE GAME" },
{ 9080, "THOU NEEDETH A WET-NURSE" },
{ 9108, "YELLOWBELLIES-R-US" },
{ 9128, "BRINGEST THEM ONETH" },
{ 9148, "THOU ART A SMITE-MEISTER" },
{ 9176, "BLACK PLAGUE POSSESSES THEE" },
{ 9204, "END GAME" },
{ 9216, "MESSAGES : " },
{ 9228, "MOUSE SENSITIVITY" },
{ 9248, "MORE..." },
{ 9256, "SCREEN SIZE" },
{ 9268, "SFX VOLUME" },
{ 9280, "MUSIC VOLUME" },
{ 9296, "ARE YOU SURE YOU WANT TO QUIT?" },
{ 9328, "ARE YOU SURE YOU WANT TO END THE GAME?" },
{ 9368, "DO YOU WANT TO QUICKSAVE THE GAME NAMED" },
{ 9408, "DO YOU WANT TO QUICKLOAD THE GAME NAMED" },
{ 9448, "M_SKL00" },
{ 9456, "FONTA_S" },
{ 9464, "FONTB_S" },
{ 9472, "?" },
{ 9476, "M_SLCTR1" },
{ 9488, "M_SLCTR2" },
{ 9500, "M_HTIC" },
{ 9508, "c:\\heretic.cd\\hticsav%d.hsg" },
{ 9536, "hticsav%d.hsg" },
{ 9552, "rb+" },
{ 9556, "M_FSLOT" },
{ 9564, "ON" },
{ 9568, "OFF" },
{ 9572, "YOU CAN'T START A NEW GAME IN NETPLAY!" },
{ 9612, "YOU CAN'T LOAD A GAME IN NETPLAY!" },
{ 9648, "MESSAGES ON" },
{ 9660, "MESSAGES OFF" },
{ 9676, "ONLY AVAILABLE IN THE REGISTERED VERSION" },
{ 9720, "PLAYPAL" },
{ 9728, "QUICKSAVING...." },
{ 9744, "QUICKLOADING...." },
{ 9764, "CHOOSE A QUICKSAVE SLOT" },
{ 9788, "CHOOSE A QUICKLOAD SLOT" },
{ 9812, "TITLE" },
{ 9820, "M_SLDLT" },
{ 9828, "M_SLDMD1" },
{ 9840, "M_SLDMD2" },
{ 9852, "M_SLDRT" },
{ 9860, "M_SLDKB" },
{ 9868, "mouse_sensitivity" },
{ 9888, "sfx_volume" },
{ 9900, "music_volume" },
{ 9916, "key_right" },
{ 9928, "key_left" },
{ 9940, "key_up" },
{ 9948, "key_down" },
{ 9960, "key_strafeleft" },
{ 9976, "key_straferight" },
{ 9992, "key_flyup" },
{ 10004, "key_flydown" },
{ 10016, "key_flycenter" },
{ 10032, "key_lookup" },
{ 10044, "key_lookdown" },
{ 10060, "key_lookcenter" },
{ 10076, "key_invleft" },
{ 10088, "key_invright" },
{ 10104, "key_useartifact" },
{ 10120, "key_fire" },
{ 10132, "key_use" },
{ 10140, "key_strafe" },
{ 10152, "key_speed" },
{ 10164, "use_mouse" },
{ 10176, "mouseb_fire" },
{ 10188, "mouseb_strafe" },
{ 10204, "mouseb_forward" },
{ 10220, "use_joystick" },
{ 10236, "joyb_fire" },
{ 10248, "joyb_strafe" },
{ 10260, "joyb_use" },
{ 10272, "joyb_speed" },
{ 10284, "screenblocks" },
{ 10300, "snd_channels" },
{ 10316, "snd_musicdevice" },
{ 10332, "snd_sfxdevice" },
{ 10348, "snd_sbport" },
{ 10360, "snd_sbirq" },
{ 10372, "snd_sbdma" },
{ 10384, "snd_mport" },
{ 10396, "usegamma" },
{ 10408, "chatmacro0" },
{ 10420, "No" },
{ 10424, "chatmacro1" },
{ 10436, "I'm ready to kick butt!" },
{ 10460, "chatmacro2" },
{ 10472, "I'm OK." },
{ 10480, "chatmacro3" },
{ 10492, "I'm not looking too good!" },
{ 10520, "chatmacro4" },
{ 10532, "Help!" },
{ 10540, "chatmacro5" },
{ 10552, "You suck!" },
{ 10564, "chatmacro6" },
{ 10576, "Next time, scumbag..." },
{ 10600, "chatmacro7" },
{ 10612, "Come here!" },
{ 10624, "chatmacro8" },
{ 10636, "I'll take care of it." },
{ 10660, "chatmacro9" },
{ 10672, "Yes" },
{ 10676, "Couldn't read file %s" },
{ 10700, "rb" },
{ 10704, "\nNo such response file!" },
{ 10728, "Found response file %s!\n" },
{ 10756, "-debug" },
{ 10764, "%d command-line args:\n" },
{ 10788, "%s\n" },
{ 10792, "w" },
{ 10796, "%s\t\t%i\n" },
{ 10804, "%s\t\t\"%s\"\n" },
{ 10816, "-config" },
{ 10824, "default file: %s\n" },
{ 10844, "c:\\heretic.cd\\heretic.cfg" },
{ 10872, "r" },
{ 10876, "%79s %[^\n]\n" },
{ 10888, "%x" },
{ 10892, "%i" },
{ 10896, "HRTIC00.pcx" },
{ 10908, "M_ScreenShot: Couldn't create a PCX" },
{ 10944, "SCREEN SHOT" },
{ 10956, "YOU NEED A BLUE KEY TO OPEN THIS DOOR" },
{ 10996, "YOU NEED A YELLOW KEY TO OPEN THIS DOOR" },
{ 11036, "YOU NEED A GREEN KEY TO OPEN THIS DOOR" },
{ 11076, "Too many boss spots." },
{ 11100, "P_NewChaseDir: called with no target" },
{ 11140, "" },
{ 11144, "A" },
{ 11148, "P_GiveAmmo: bad type %i" },
{ 11172, "CRYSTAL VIAL" },
{ 11188, "SILVER SHIELD" },
{ 11204, "ENCHANTED SHIELD" },
{ 11224, "BAG OF HOLDING" },
{ 11240, "MAP SCROLL" },
{ 11252, "BLUE KEY" },
{ 11264, "YELLOW KEY" },
{ 11276, "GREEN KEY" },
{ 11288, "QUARTZ FLASK" },
{ 11304, "WINGS OF WRATH" },
{ 11320, "RING OF INVINCIBILITY" },
{ 11344, "TOME OF POWER" },
{ 11360, "SHADOWSPHERE" },
{ 11376, "MORPH OVUM" },
{ 11388, "MYSTIC URN" },
{ 11400, "TORCH" },
{ 11408, "TIME BOMB OF THE ANCIENTS" },
{ 11436, "CHAOS DEVICE" },
{ 11452, "WAND CRYSTAL" },
{ 11468, "CRYSTAL GEODE" },
{ 11484, "MACE SPHERES" },
{ 11500, "PILE OF MACE SPHERES" },
{ 11524, "ETHEREAL ARROWS" },
{ 11540, "QUIVER OF ETHEREAL ARROWS" },
{ 11568, "CLAW ORB" },
{ 11580, "ENERGY ORB" },
{ 11592, "LESSER RUNES" },
{ 11608, "GREATER RUNES" },
{ 11624, "FLAME ORB" },
{ 11636, "INFERNO ORB" },
{ 11648, "FIREMACE" },
{ 11660, "ETHEREAL CROSSBOW" },
{ 11680, "DRAGON CLAW" },
{ 11692, "HELLSTAFF" },
{ 11704, "PHOENIX ROD" },
{ 11716, "GAUNTLETS OF THE NECROMANCER" },
{ 11748, "P_SpecialThing: Unknown gettable thing" },
{ 11788, "PTR_SlideTraverse: not a line?" },
{ 11820, "P_SpawnMapThing: Unknown type %i at (%i, %i)" },
{ 11868, "P_AddActivePlat: no more plats!" },
{ 11900, "P_RemoveActivePlat: can't find plat!" },
{ 11940, "Too many mace spots." },
{ 11964, "" },
{ 11968, "XXXXX BAD STRING" },
{ 11980, "P_GroupLines: miscounted" },
{ 12008, "-timer" },
{ 12016, "FLTWAWA1" },
{ 12028, "FLTFLWW1" },
{ 12040, "FLTLAVA1" },
{ 12052, "FLATHUH1" },
{ 12064, "FLTSLUD1" },
{ 12076, "END" },
{ 12080, "P_InitPicAnims: bad cycle from %s to %s" },
{ 12120, "P_PlayerInSpecialSector: unknown special %i" },
{ 12164, "texture2" },
{ 12176, "Too many ambient sound sequences" },
{ 12212, "P_AmbientSound: Unknown afxcmd %d" },
{ 12248, "P_StartButton: no button slots left!" },
{ 12288, "Unknown tclass %i in savegame" },
{ 12320, "P_UnarchiveSpecials:Unknown tclass %i in savegame" },
{ 12372, "PLAYPAL" },
{ 12380, "Z_CT at r_data.c:%i" },
{ 12400, "R_GenerateLookup: column without a patch (%s)\n" },
{ 12448, "R_GenerateLookup: texture %i is >64k" },
{ 12488, "PNAMES" },
{ 12496, "TEXTURE1" },
{ 12508, "TEXTURE2" },
{ 12520, "S_END" },
{ 12528, "S_START" },
{ 12536, "R_InitTextures: bad texture directory" },
{ 12576, "R_InitTextures: Missing patch in texture %s" },
{ 12620, "F_START" },
{ 12628, "F_END" },
{ 12636, "COLORMAP" },
{ 12648, "\nR_InitTextures " },
{ 12668, "R_InitFlats\n" },
{ 12684, "R_InitSpriteLumps " },
{ 12704, "R_FlatNumForName: %s not found" },
{ 12736, "R_TextureNumForName: %s not found" },
{ 12772, "TINTTAB" },
{ 12780, "FLOOR04" },
{ 12788, "FLAT513" },
{ 12796, "bordt" },
{ 12804, "bordb" },
{ 12812, "bordl" },
{ 12820, "bordr" },
{ 12828, "bordtl" },
{ 12836, "bordtr" },
{ 12844, "bordbr" },
{ 12852, "bordbl" },
{ 12860, "R_InitData " },
{ 12872, "R_InitPointToAngle\n" },
{ 12892, "R_InitTables " },
{ 12908, "R_InitPlanes\n" },
{ 12924, "R_InitLightTables " },
{ 12944, "R_InitSkyMap\n" },
{ 12960, "F_SKY1" },
{ 12968, "R_FindPlane: no more visplanes" },
{ 13000, "Z_CT at r_plane.c:%i" },
{ 13024, "R_InstallSpriteLump: Bad frame characters in lump %i" },
{ 13080, "R_InitSprites: Sprite %s frame %c has multip rot=0 lump" },
{ 13136, "R_InitSprites: Sprite %s frame %c has rotations and a rot=0 lump" },
{ 13204, "R_InitSprites: Sprite %s frame %c has rotations and a rot=0 lump" },
{ 13272, "R_InitSprites: Sprite %s : %c : %c has two lumps mapped to it" },
{ 13336, "R_InitSprites: No lumps found for sprite %s" },
{ 13380, "R_InitSprites: No patches found for %s frame %c" },
{ 13428, "R_InitSprites: Sprite %s frame %c is missing rotations" },
{ 13484, "LTFACE" },
{ 13492, "RTFACE" },
{ 13500, "BARBACK" },
{ 13508, "INVBAR" },
{ 13516, "CHAIN" },
{ 13524, "STATBAR" },
{ 13532, "LIFEBAR" },
{ 13540, "LIFEGEM2" },
{ 13552, "LIFEGEM0" },
{ 13564, "LTFCTOP" },
{ 13572, "RTFCTOP" },
{ 13580, "SELECTBOX" },
{ 13592, "INVGEML1" },
{ 13604, "INVGEML2" },
{ 13616, "INVGEMR1" },
{ 13628, "INVGEMR2" },
{ 13640, "BLACKSQ" },
{ 13648, "ARMCLEAR" },
{ 13660, "CHAINBACK" },
{ 13672, "IN0" },
{ 13676, "NEGNUM" },
{ 13684, "FONTB16" },
{ 13692, "SMALLIN0" },
{ 13704, "PLAYPAL" },
{ 13712, "SPINBK0" },
{ 13720, "SPFLY0" },
{ 13728, "LAME" },
{ 13736, "*** SOUND DEBUG INFO ***" },
{ 13764, "NAME" },
{ 13772, "MO.T" },
{ 13780, "MO.X" },
{ 13788, "MO.Y" },
{ 13796, "ID" },
{ 13800, "PRI" },
{ 13804, "DIST" },
{ 13812, "------" },
{ 13820, "%s" },
{ 13824, "%d" },
{ 13828, "GOD1" },
{ 13836, "GOD2" },
{ 13844, "useartia" },
{ 13856, "ykeyicon" },
{ 13868, "gkeyicon" },
{ 13880, "bkeyicon" },
{ 13892, "ARTIBOX" },
{ 13900, "GOD MODE ON" },
{ 13912, "GOD MODE OFF" },
{ 13928, "NO CLIPPING ON" },
{ 13944, "NO CLIPPING OFF" },
{ 13960, "ALL WEAPONS" },
{ 13972, "POWER OFF" },
{ 13984, "POWER ON" },
{ 13996, "FULL HEALTH" },
{ 14008, "ALL KEYS" },
{ 14020, "SOUND DEBUG ON" },
{ 14036, "SOUND DEBUG OFF" },
{ 14052, "TICKER ON" },
{ 14064, "TICKER OFF" },
{ 14076, "CHOOSE AN ARTIFACT ( A - J )" },
{ 14108, "HOW MANY ( 1 - 9 )" },
{ 14128, "YOU GOT IT" },
{ 14140, "BAD INPUT" },
{ 14152, "LEVEL WARP" },
{ 14164, "CHICKEN OFF" },
{ 14176, "CHICKEN ON" },
{ 14188, "MASSACRE" },
{ 14200, "CHEATER - YOU DON'T DESERVE WEAPONS" },
{ 14236, "TRYING TO CHEAT, EH? NOW YOU DIE!" },
{ 14272, "Bad V_DrawPatch" },
{ 14288, "Filename base of %s >8 chars" },
{ 14320, "wad" },
{ 14324, "IWAD" },
{ 14332, "PWAD" },
{ 14340, "Wad file %s doesn't have IWAD or PWAD id\n" },
{ 14384, "Couldn't realloc lumpinfo" },
{ 14412, "W_InitFiles: no files found" },
{ 14440, "Couldn't allocate lumpcache" },
{ 14468, "W_GetNumForName: %s not found!" },
{ 14500, "W_LumpLength: %i >= numlumps" },
{ 14532, "W_ReadLump: %i >= numlumps" },
{ 14560, "W_ReadLump: only read %i of %i on lump %i" },
{ 14604, "W_CacheLumpNum: %i >= numlumps" },
{ 14636, "Z_CT at w_wad.c:%i" },
{ 14656, "Z_Free: freed a pointer without ZONEID" },
{ 14696, "Z_Malloc: failed on allocation of %i bytes" },
{ 14740, "Z_Malloc: an owner is required for purgable blocks" },
{ 14792, "zone size: %i location: %p\n" },
{ 14824, "tag range: %i to %i\n" },
{ 14848, "block:%p size:%7i user:%p tag:%3i\n" },
{ 14892, "ERROR: block size does not touch the next block\n" },
{ 14944, "ERROR: next block doesn't have proper back link\n" },
{ 14996, "ERROR: two consecutive free blocks\n" },
{ 15032, "block:%p size:%7i user:%p tag:%3i\n" },
{ 15076, "ERROR: block size does not touch the next block\n" },
{ 15128, "ERROR: next block doesn't have proper back link\n" },
{ 15180, "ERROR: two consecutive free blocks\n" },
{ 15216, "Z_CheckHeap: block size does not touch the next block\n" },
{ 15272, "Z_CheckHeap: next block doesn't have proper back link\n" },
{ 15328, "Z_CheckHeap: two consecutive free blocks\n" },
{ 15372, "Z_ChangeTag: freed a pointer without ZONEID" },
{ 15416, "Z_ChangeTag: an owner is required for purgable blocks" },
{ 15472, "MThd" },
{ 15480, "MTrk" },
{ 15488, "MUS\u001a" },
{ 15496, " out of GUS RAM:" },
{ 15516, "%d%c" },
{ 15524, "GF1PATCH110" },
{ 15536, "110" },
{ 15540, ",%d" },
{ 15544, "Ultrasound @ Port:%03Xh, IRQ:%d, DMA:%d\n" },
{ 15588, "Sizing GUS RAM:" },
{ 15604, "BANK%d:OK " },
{ 15616, "BANK%d:N\/A " },
{ 15628, "\n" },
{ 15632, "ULTRADIR" },
{ 15644, "\\midi\\" },
{ 15652, "\r\n" },
{ 15656, "Loading GUS Patches\n" },
{ 15680, ".pat" },
{ 15688, "%s" },
{ 15692, " - FAILED\n" },
{ 15704, " - OK\n" },
{ 15712, "ULTRASND" },
{ 15724, "ECHO Personal Sound System Enabled.\n" },
{ 15764, "BLASTER" },
{ 15772, "%x" },
{ 15776, "Pro Audio Spectrum 3D JAZZ\n" },
{ 15804, "\nDSP Version: %x.%02x\n" },
{ 15828, " IRQ: %d\n" },
{ 15848, " DMA: %d\n" },
{ 15868, "GENMIDI.OP2" },
{ 15880, "DMXTRACE" },
{ 15892, "DMXOPTION" },
{ 15904, "-opl3" },
{ 15912, "-phase" },
{ 15920, "WAVE" },
{ 15928, "fmt " },
{ 15936, "data" },