Only in angband-3.0.1.bigtile: Makefile
Only in angband-3.0.1.bigtile: TAGS
Only in angband-3.0.1.bigtile: angband
Only in angband-3.0.1.bigtile: config.cache
Only in angband-3.0.1.bigtile: config.log
Only in angband-3.0.1.bigtile: config.status
Only in angband-3.0.1.bigtile/lib: Makefile
Only in angband-3.0.1.bigtile/lib/apex: Makefile
Only in angband-3.0.1.bigtile/lib/apex: scores.raw
Only in angband-3.0.1.bigtile/lib/bone: Makefile
Only in angband-3.0.1.bigtile/lib/data: Makefile
Only in angband-3.0.1.bigtile/lib/data: artifact.raw
Only in angband-3.0.1.bigtile/lib/data: cost_adj.raw
Only in angband-3.0.1.bigtile/lib/data: ego_item.raw
Only in angband-3.0.1.bigtile/lib/data: flavor.raw
Only in angband-3.0.1.bigtile/lib/data: limits.raw
Only in angband-3.0.1.bigtile/lib/data: monster.raw
Only in angband-3.0.1.bigtile/lib/data: object.raw
Only in angband-3.0.1.bigtile/lib/data: p_class.raw
Only in angband-3.0.1.bigtile/lib/data: p_hist.raw
Only in angband-3.0.1.bigtile/lib/data: p_race.raw
Only in angband-3.0.1.bigtile/lib/data: shop_own.raw
Only in angband-3.0.1.bigtile/lib/data: terrain.raw
Only in angband-3.0.1.bigtile/lib/data: vault.raw
Only in angband-3.0.1.bigtile/lib/edit: Makefile
Only in angband-3.0.1.bigtile/lib/file: Makefile
Only in angband-3.0.1.bigtile/lib/help: Makefile
Only in angband-3.0.1.bigtile/lib/info: Makefile
Only in angband-3.0.1.bigtile/lib/pref: Makefile
diff -ur angband-3.0.1.orig/lib/pref/flvr-dvg.prf angband-3.0.1.bigtile/lib/pref/flvr-dvg.prf
--- angband-3.0.1.orig/lib/pref/flvr-dvg.prf	Sun Jul 14 06:56:15 2002
+++ angband-3.0.1.bigtile/lib/pref/flvr-dvg.prf	Sun Jul 14 06:48:41 2002
@@ -0,0 +1,906 @@
+# Plain Gold ring
+L:1:0x88:0x97
+
+# Alexandrite ring
+L:2:0x88:0x84
+
+# Amethyst ring
+L:3:0x88:0x89
+
+# Aquamarine ring
+L:4:0x88:0x8D
+
+# Azurite ring
+L:5:0x88:0x8D
+
+# Beryl ring
+L:6:0x88:0x8C
+
+# Bloodstone ring
+L:7:0x88:0x83
+
+# Calcite ring
+L:8:0x88:0x80
+
+# Carnelian ring
+L:9:0x88:0x83
+
+# Corundum ring
+L:10:0x88:0x88
+
+# Diamond ring
+L:11:0x88:0x80
+
+# Emerald ring
+L:12:0x88:0x84
+
+# Fluorite ring
+L:13:0x88:0x8C
+
+# Garnet ring
+L:14:0x88:0x83
+
+# Granite ring
+L:15:0x88:0x81
+
+# Jade ring
+L:16:0x88:0x8C
+
+# Jasper ring
+L:17:0x88:0x86
+
+# Lapis Lazuli ring
+L:18:0x88:0x85
+
+# Malachite ring
+L:19:0x88:0x84
+
+# Marble ring
+L:20:0x88:0x80
+
+# Moonstone ring
+L:21:0x88:0x81
+
+# Onyx ring
+L:22:0x88:0x8B
+
+# Opal ring
+L:23:0x88:0x81
+
+# Pearl ring
+L:24:0x88:0x80
+
+# Quartz ring
+L:25:0x88:0x81
+
+# Quartzite ring
+L:26:0x88:0x81
+
+# Rhodonite ring
+L:27:0x88:0x8B
+
+# Ruby ring
+L:28:0x88:0x83
+
+# Sapphire ring
+L:29:0x88:0x85
+
+# Tiger Eye ring
+L:30:0x88:0x8A
+
+# Topaz ring
+L:31:0x88:0x8A
+
+# Turquoise ring
+L:32:0x88:0x8D
+
+# Zircon ring
+L:33:0x88:0x8E
+
+# Platinum ring
+L:34:0x88:0x80
+
+# Bronze ring
+L:35:0x88:0x8E
+
+# Gold ring
+L:36:0x88:0x8A
+
+# Obsidian ring
+L:37:0x88:0x81
+
+# Silver ring
+L:38:0x88:0x81
+
+# Tortoise Shell ring
+L:39:0x88:0x86
+
+# Mithril ring
+L:40:0x88:0x8D
+
+# Jet ring
+L:41:0x88:0x81
+
+# Engagement ring
+L:42:0x88:0x8A
+
+# Adamantite ring
+L:43:0x88:0x8C
+
+# Amber amulet
+L:44:0x88:0x9D
+
+# Driftwood amulet
+L:45:0x88:0xA4
+
+# Coral amulet
+L:46:0x88:0xA7
+
+# Agate amulet
+L:47:0x88:0x99
+
+# Ivory amulet
+L:48:0x88:0x98
+
+# Obsidian amulet
+L:49:0x88:0x9B
+
+# Bone amulet
+L:50:0x88:0x98
+
+# Brass amulet
+L:51:0x88:0xA2
+
+# Bronze amulet
+L:52:0x88:0x9F
+
+# Pewter amulet
+L:53:0x88:0xA0
+
+# Tortoise Shell amulet
+L:54:0x88:0x9E
+
+# Golden amulet
+L:55:0x88:0x9C
+
+# Azure amulet
+L:56:0x88:0xA5
+
+# Crystal amulet
+L:57:0x88:0x98
+
+# Silver amulet
+L:58:0x88:0x99
+
+# Copper amulet
+L:59:0x88:0xA2
+
+# Carved Oak amulet
+L:60:0x88:0xA7
+
+# Dragon Tooth amulet
+L:61:0x88:0x98
+
+# Ruby amulet
+L:62:0x88:0x9F
+
+# Mithril amulet
+L:63:0x88:0xA5
+
+# Adamant amulet
+L:64:0x88:0xA2
+
+# Flint Stone amulet
+L:65:0x88:0x9A
+
+# Sea Shell amulet
+L:66:0x88:0xA5
+
+# Mother-of-Pearl amulet
+L:67:0x88:0x99
+
+# Aspen staff
+L:68:0x8C:0x93
+
+# Balsa staff
+L:69:0x8C:0x93
+
+# Banyan staff
+L:70:0x8C:0x94
+
+# Birch staff
+L:71:0x8C:0x92
+
+# Cedar staff
+L:72:0x8C:0x96
+
+# Cottonwood staff
+L:73:0x8C:0x95
+
+# Cypress staff
+L:74:0x8C:0x96
+
+# Dogwood staff
+L:75:0x8C:0x98
+
+# Elm staff
+L:76:0x8C:0x96
+
+# Eucalyptus staff
+L:77:0x8C:0x98
+
+# Hemlock staff
+L:78:0x8C:0x94
+
+# Hickory staff
+L:79:0x8C:0x96
+
+# Ironwood staff
+L:80:0x8C:0x95
+
+# Locust staff
+L:81:0x8C:0x94
+
+# Mahogany staff
+L:82:0x8C:0x94
+
+# Maple staff
+L:83:0x8C:0x96
+
+# Mulberry staff
+L:84:0x8C:0x94
+
+# Oak staff
+L:85:0x8C:0x94
+
+# Pine staff
+L:86:0x8C:0x98
+
+# Redwood staff
+L:87:0x8C:0x94
+
+# Rosewood staff
+L:88:0x8C:0x92
+
+# Spruce staff
+L:89:0x8C:0x92
+
+# Sycamore staff
+L:90:0x8C:0x93
+
+# Teak staff
+L:91:0x8C:0x92
+
+# Walnut staff
+L:92:0x8C:0x93
+
+# Mistletoe staff
+L:93:0x8C:0x96
+
+# Hawthorn staff
+L:94:0x8C:0x94
+
+# Bamboo staff
+L:95:0x8C:0x98
+
+# Silver staff
+L:96:0x8C:0x97
+
+# Runed staff
+L:97:0x8C:0x98
+
+# Golden staff
+L:98:0x8C:0x93
+
+# Ashen staff
+L:99:0x8C:0x95
+
+# Gnarled staff
+L:100:0x8C:0x93
+
+# Ivory staff
+L:101:0x8C:0x96
+
+# Willow staff
+L:102:0x8C:0x95
+
+# Aluminium wand
+L:103:0x8C:0x80
+
+# Cast Iron wand
+L:104:0x8C:0x86
+
+# Chromium wand
+L:105:0x8C:0x87
+
+# Copper wand
+L:106:0x8C:0x86
+
+# Gold wand
+L:107:0x8C:0x88
+
+# Iron wand
+L:108:0x8C:0x85
+
+# Magnesium wand
+L:109:0x8C:0x88
+
+# Molybdenum wand
+L:110:0x8C:0x87
+
+# Nickel wand
+L:111:0x8C:0x84
+
+# Rusty wand
+L:112:0x8C:0x85
+
+# Silver wand
+L:113:0x8C:0x80
+
+# Steel wand
+L:114:0x8C:0x81
+
+# Tin wand
+L:115:0x8C:0x81
+
+# Titanium wand
+L:116:0x8C:0x86
+
+# Tungsten wand
+L:117:0x8C:0x86
+
+# Zirconium wand
+L:118:0x8C:0x87
+
+# Zinc wand
+L:119:0x8C:0x84
+
+# Aluminum-Plated wand
+L:120:0x8C:0x8B
+
+# Copper-Plated wand
+L:121:0x8C:0x8E
+
+# Gold-Plated wand
+L:122:0x8C:0x91
+
+# Nickel-Plated wand
+L:123:0x8C:0x8D
+
+# Silver-Plated wand
+L:124:0x8C:0x8A
+
+# Steel-Plated wand
+L:125:0x8C:0x8C
+
+# Tin-Plated wand
+L:126:0x8C:0x91
+
+# Zinc-Plated wand
+L:127:0x8C:0x8F
+
+# Mithril-Plated wand
+L:128:0x8C:0x8D
+
+# Mithril wand
+L:129:0x8C:0x90
+
+# Runed wand
+L:130:0x8C:0x8B
+
+# Bronze wand
+L:131:0x8C:0x8E
+
+# Brass wand
+L:132:0x8C:0x8F
+
+# Platinum wand
+L:133:0x8C:0x8D
+
+# Lead wand
+L:134:0x8C:0x8E
+
+# Lead-Plated wand
+L:135:0x8C:0x8F
+
+# Ivory wand
+L:136:0x8C:0x91
+
+# Pewter wand
+L:137:0x8C:0x8D
+
+# Aluminum rod
+L:138:0x8C:0x8D
+
+# Cast Iron rod
+L:139:0x8C:0x8A
+
+# Chromium rod
+L:140:0x8C:0x8A
+
+# Copper rod
+L:141:0x8C:0x8A
+
+# Gold rod
+L:142:0x8C:0x91
+
+# Iron rod
+L:143:0x8C:0x8F
+
+# Magnesium rod
+L:144:0x8C:0x8D
+
+# Molybdenum rod
+L:145:0x8C:0x90
+
+# Nickel rod
+L:146:0x8C:0x8E
+
+# Rusty rod
+L:147:0x8C:0x8C
+
+# Silver rod
+L:148:0x8C:0x89
+
+# Steel rod
+L:149:0x8C:0x8D
+
+# Tin rod
+L:150:0x8C:0x90
+
+# Titanium rod
+L:151:0x8C:0x8B
+
+# Tungsten rod
+L:152:0x8C:0x8B
+
+# Zirconium rod
+L:153:0x8C:0x8B
+
+# Zinc rod
+L:154:0x8C:0x8E
+
+# Aluminum-Plated rod
+L:155:0x8C:0x8D
+
+# Copper-Plated rod
+L:156:0x8C:0x8E
+
+# Gold-Plated rod
+L:157:0x8C:0x8A
+
+# Nickel-Plated rod
+L:158:0x8C:0x8E
+
+# Silver-Plated rod
+L:159:0x8C:0x8D
+
+# Steel-Plated rod
+L:160:0x8C:0x8A
+
+# Tin-Plated rod
+L:161:0x8C:0x89
+
+# Zinc-Plated rod
+L:162:0x8C:0x8C
+
+# Mithril-Plated rod
+L:163:0x8C:0x90
+
+# Mithril rod
+L:164:0x8C:0x90
+
+# Runed rod
+L:165:0x8C:0x8A
+
+# Bronze rod
+L:166:0x8C:0x8E
+
+# Brass rod
+L:167:0x8C:0x8F
+
+# Platinum rod
+L:168:0x8C:0x8D
+
+# Lead rod
+L:169:0x8C:0x8C
+
+# Lead-Plated rod
+L:170:0x8C:0x8F
+
+# Ivory rod
+L:171:0x8C:0x91
+
+# Pewter rod
+L:172:0x8C:0x8F
+
+# Blue mushroom
+L:173:0x85:0x8D
+
+# Black mushroom
+L:174:0x85:0x87
+
+# Black Spotted mushroom
+L:175:0x85:0x8F
+
+# Brown mushroom
+L:176:0x85:0x97
+
+# Dark Blue mushroom
+L:177:0x85:0x8D
+
+# Dark Green mushroom
+L:178:0x85:0x8C
+
+# Dark Red mushroom
+L:179:0x85:0x8B
+
+# Yellow mushroom
+L:180:0x85:0x92
+
+# Furry mushroom
+L:181:0x85:0x90
+
+# Green mushroom
+L:182:0x85:0x95
+
+# Grey mushroom
+L:183:0x85:0x90
+
+# Light Blue mushroom
+L:184:0x85:0x96
+
+# Light Green mushroom
+L:185:0x85:0x95
+
+# Violet mushroom
+L:186:0x85:0x91
+
+# Red mushroom
+L:187:0x85:0x94
+
+# Slimy mushroom
+L:188:0x85:0x93
+
+# Tan mushroom
+L:189:0x85:0x97
+
+# White mushroom
+L:190:0x85:0x88
+
+# White Spotted mushroom
+L:191:0x85:0x90
+
+# Wrinkled mushroom
+L:192:0x85:0x8E
+
+# Clear potion
+L:193:0x8B:0x9A
+
+# Light Brown potion
+L:194:0x8B:0x8D
+
+# Icky Green potion
+L:195:0x8B:0x91
+
+# Azure potion
+L:196:0x8B:0x84
+
+# Blue potion
+L:197:0x8B:0x85
+
+# Blue Speckled potion
+L:198:0x8B:0x86
+
+# Black potion
+L:199:0x8B:0x80
+
+# Brown potion
+L:200:0x8B:0x88
+
+# Brown Speckled potion
+L:201:0x8B:0xA3
+
+# Bubbling potion
+L:202:0x8B:0xB8
+
+# Chartreuse potion
+L:203:0x8B:0x91
+
+# Cloudy potion
+L:204:0x8B:0x80
+
+# Copper Speckled potion
+L:205:0x8B:0x93
+
+# Crimson potion
+L:206:0x8B:0x92
+
+# Cyan potion
+L:207:0x8B:0x84
+
+# Dark Blue potion
+L:208:0x8B:0x8F
+
+# Dark Green potion
+L:209:0x8B:0x91
+
+# Dark Red potion
+L:210:0x8B:0x9E
+
+# Gold Speckled potion
+L:211:0x8B:0xB1
+
+# Green potion
+L:212:0x8B:0x95
+
+# Green Speckled potion
+L:213:0x8B:0x9B
+
+# Grey potion
+L:214:0x8B:0x98
+
+# Grey Speckled potion
+L:215:0x8B:0xB0
+
+# Hazy potion
+L:216:0x8B:0x82
+
+# Indigo potion
+L:217:0x8B:0xAE
+
+# Light Blue potion
+L:218:0x8B:0x9A
+
+# Light Green potion
+L:219:0x8B:0x95
+
+# Magenta potion
+L:220:0x8B:0xA9
+
+# Metallic Blue potion
+L:221:0x8B:0x85
+
+# Metallic Red potion
+L:222:0x8B:0x9C
+
+# Metallic Green potion
+L:223:0x8B:0x9F
+
+# Metallic Purple potion
+L:224:0x8B:0xA0
+
+# Misty potion
+L:225:0x8B:0xA1
+
+# Orange potion
+L:226:0x8B:0x8D
+
+# Orange Speckled potion
+L:227:0x8B:0xA3
+
+# Pink potion
+L:228:0x8B:0xA5
+
+# Pink Speckled potion
+L:229:0x8B:0xB5
+
+# Puce potion
+L:230:0x8B:0xA8
+
+# Purple potion
+L:231:0x8B:0xA7
+
+# Purple Speckled potion
+L:232:0x8B:0xA8
+
+# Red potion
+L:233:0x8B:0xB9
+
+# Red Speckled potion
+L:234:0x8B:0xA9
+
+# Silver Speckled potion
+L:235:0x8B:0xB0
+
+# Smoky potion
+L:236:0x8B:0x97
+
+# Tangerine potion
+L:237:0x8B:0x83
+
+# Violet potion
+L:238:0x8B:0xA0
+
+# Vermilion potion
+L:239:0x8B:0xAF
+
+# White potion
+L:240:0x8B:0xB0
+
+# Yellow potion
+L:241:0x8B:0xBA
+
+# Violet Speckled potion
+L:242:0x8B:0xAE
+
+# Pungent potion
+L:243:0x8B:0x8D
+
+# Clotted Red potion
+L:244:0x8B:0x83
+
+# Viscous Pink potion
+L:245:0x8B:0xA4
+
+# Oily Yellow potion
+L:246:0x8B:0x8B
+
+# Gloopy Green potion
+L:247:0x8B:0x91
+
+# Shimmering potion
+L:248:0x8B:0xAE
+
+# Coagulated Crimson potion
+L:249:0x8B:0x92
+
+# Yellow Speckled potion
+L:250:0x8B:0xB1
+
+# Gold potion
+L:251:0x8B:0xBA
+
+# Scroll
+L:252:0x8A:0x92
+
+# Scroll
+L:253:0x8A:0x92
+
+# Scroll
+L:254:0x8A:0x92
+
+# Scroll
+L:255:0x8A:0x92
+
+# Scroll
+L:256:0x8A:0x92
+
+# Scroll
+L:257:0x8A:0x92
+
+# Scroll
+L:258:0x8A:0x92
+
+# Scroll
+L:259:0x8A:0x92
+
+# Scroll
+L:260:0x8A:0x92
+
+# Scroll
+L:261:0x8A:0x92
+
+# Scroll
+L:262:0x8A:0x92
+
+# Scroll
+L:263:0x8A:0x92
+
+# Scroll
+L:264:0x8A:0x92
+
+# Scroll
+L:265:0x8A:0x93
+
+# Scroll
+L:266:0x8A:0x93
+
+# Scroll
+L:267:0x8A:0x93
+
+# Scroll
+L:268:0x8A:0x93
+
+# Scroll
+L:269:0x8A:0x93
+
+# Scroll
+L:270:0x8A:0x93
+
+# Scroll
+L:271:0x8A:0x93
+
+# Scroll
+L:272:0x8A:0x93
+
+# Scroll
+L:273:0x8A:0x93
+
+# Scroll
+L:274:0x8A:0x93
+
+# Scroll
+L:275:0x8A:0x93
+
+# Scroll
+L:276:0x8A:0x93
+
+# Scroll
+L:277:0x8A:0x94
+
+# Scroll
+L:278:0x8A:0x94
+
+# Scroll
+L:279:0x8A:0x94
+
+# Scroll
+L:280:0x8A:0x94
+
+# Scroll
+L:281:0x8A:0x94
+
+# Scroll
+L:282:0x8A:0x94
+
+# Scroll
+L:283:0x8A:0x94
+
+# Scroll
+L:284:0x8A:0x94
+
+# Scroll
+L:285:0x8A:0x94
+
+# Scroll
+L:286:0x8A:0x94
+
+# Scroll
+L:287:0x8A:0x94
+
+# Scroll
+L:288:0x8A:0x94
+
+# Scroll
+L:289:0x8A:0x95
+
+# Scroll
+L:290:0x8A:0x95
+
+# Scroll
+L:291:0x8A:0x95
+
+# Scroll
+L:292:0x8A:0x95
+
+# Scroll
+L:293:0x8A:0x95
+
+# Scroll
+L:294:0x8A:0x95
+
+# Scroll
+L:295:0x8A:0x95
+
+# Scroll
+L:296:0x8A:0x95
+
+# Scroll
+L:297:0x8A:0x95
+
+# Scroll
+L:298:0x8A:0x95
+
+# Scroll
+L:299:0x8A:0x95
+
+# Scroll
+L:300:0x8A:0x95
+
+# Scroll
+L:301:0x8A:0x95
+
+# Scroll
+L:302:0x8A:0x95
+
diff -ur angband-3.0.1.orig/lib/pref/graf-dvg.prf angband-3.0.1.bigtile/lib/pref/graf-dvg.prf
--- angband-3.0.1.orig/lib/pref/graf-dvg.prf	Sun Jul 14 06:56:15 2002
+++ angband-3.0.1.bigtile/lib/pref/graf-dvg.prf	Sun Jul 14 06:48:41 2002
@@ -0,0 +1,3673 @@
+ File: graf-dvg.prf
+
+#
+# This file defines special attr/char mappings for use in "graphics" mode
+# with David Gervais's 32x32 tiles.
+#
+# Converted by Mogami from the dg32-assign of AngbandTK
+#
+# See "lib/help/command.txt" and "src/files.c" for more information.
+#
+
+# Feature attr/char definitions
+
+# <darkness>
+F:0:0x80:0x80
+
+# open floor
+F:1:0x9A:0x81
+
+# invisible trap
+F:2:0x9A:0x81
+
+# glyph of warding
+F:3:0x8A:0xA9
+
+# open door
+F:4:0x99:0x84
+
+# broken door
+F:5:0x99:0x85
+
+# up staircase
+F:6:0x99:0x95
+
+# down staircase
+F:7:0x99:0x96
+
+# General Store
+F:8:0x9D:0x83
+
+# Armoury
+F:9:0x9D:0x84
+
+# Weapon Smiths
+F:10:0x9D:0x85
+
+# Temple
+F:11:0x9D:0x86
+
+# Alchemy Shop
+F:12:0x9D:0x87
+
+# Magic Shop
+F:13:0x9D:0x88
+
+# Black Market
+F:14:0x9D:0x9B
+
+# Home
+F:15:0x9D:0x97
+
+# trap door
+F:16:0x8A:0xA6
+
+# pit
+F:17:0x8A:0xA4
+
+# pit
+F:18:0x8A:0xA5
+
+# pit
+F:19:0x8A:0xC3
+
+# strange rune
+F:20:0x8A:0xA7
+
+# strange rune
+F:21:0x8A:0xA8
+
+# discolored spot
+F:22:0x8A:0xA3
+
+# discolored spot
+F:23:0x8A:0xA3
+
+# dart trap
+F:24:0x8A:0xA1
+
+# dart trap
+F:25:0x8A:0xB9
+
+# dart trap
+F:26:0x8A:0xBA
+
+# dart trap
+F:27:0x8A:0xBC
+
+# gas trap
+F:28:0x8A:0xBD
+
+# gas trap
+F:29:0x8A:0xBB
+
+# gas trap
+F:30:0x8A:0xB8
+
+# gas trap
+F:31:0x8A:0xBD
+
+# door
+F:32:0x99:0x83
+
+# locked door
+F:33:0x99:0x83
+
+# locked door
+F:34:0x99:0x83
+
+# locked door
+F:35:0x99:0x83
+
+# locked door
+F:36:0x99:0x83
+
+# locked door
+F:37:0x99:0x83
+
+# locked door
+F:38:0x99:0x83
+
+# locked door
+F:39:0x99:0x83
+
+# jammed door
+F:40:0x99:0x83
+
+# jammed door
+F:41:0x99:0x83
+
+# jammed door
+F:42:0x99:0x83
+
+# jammed door
+F:43:0x99:0x83
+
+# jammed door
+F:44:0x99:0x83
+
+# jammed door
+F:45:0x99:0x83
+
+# jammed door
+F:46:0x99:0x83
+
+# jammed door
+F:47:0x99:0x83
+
+# secret door
+F:48:0x99:0xCC
+
+# pile of rubble
+F:49:0x8A:0xB7
+
+# magma vein
+F:50:0x99:0xB4
+
+# quartz vein
+F:51:0x99:0xBA
+
+# magma vein
+F:52:0x99:0xB4
+
+# quartz vein
+F:53:0x99:0xBA
+
+# magma vein with treasure
+F:54:0x99:0xB6
+
+# quartz vein with treasure
+F:55:0x99:0xBC
+
+# granite wall
+F:56:0x99:0xCC
+
+# granite wall
+F:57:0x99:0xCC
+
+# granite wall
+F:58:0x99:0xCC
+
+# granite wall
+F:59:0x99:0xCC
+
+# permanent wall
+F:60:0x9D:0x81
+
+# permanent wall
+F:61:0x9D:0x81
+
+# permanent wall
+F:62:0x9D:0x81
+
+# permanent wall
+F:63:0x9D:0x81
+
+
+# Monster attr/char definitions
+
+# <player>
+R:0:0x86:0x87
+
+# Filthy street urchin
+R:1:0x8E:0x80
+
+# Scrawny cat
+R:2:0x93:0xB6
+
+# Scruffy little dog
+R:3:0x92:0xC8
+
+# Farmer Maggot
+R:4:0x8E:0x81
+
+# Blubbering idiot
+R:5:0x8E:0x82
+
+# Boil-covered wretch
+R:6:0x8E:0x83
+
+# Village idiot
+R:7:0x8E:0x84
+
+# Pitiful-looking beggar
+R:8:0x8E:0x85
+
+# Mangy-looking leper
+R:9:0x8E:0x86
+
+# Squint-eyed rogue
+R:10:0x8E:0x87
+
+# Singing, happy drunk
+R:11:0x8E:0x88
+
+# Aimless-looking merchant
+R:12:0x8E:0x89
+
+# Mean-looking mercenary
+R:13:0x8E:0x8A
+
+# Battle-scarred veteran
+R:14:0x8E:0x8B
+
+# Grey mold
+R:15:0x91:0xC2
+
+# Grey mushroom patch
+R:16:0x91:0xD5
+
+# Giant yellow centipede
+R:17:0x94:0xA0
+
+# Giant white centipede
+R:18:0x94:0xA1
+
+# White icky thing
+R:19:0x91:0xCE
+
+# Clear icky thing
+R:20:0x91:0xCF
+
+# Giant white mouse
+R:21:0x90:0x98
+
+# Large brown snake
+R:22:0x93:0x92
+
+# Large white snake
+R:23:0x93:0x93
+
+# Small kobold
+R:24:0x90:0x8B
+
+# Kobold
+R:25:0x90:0x8C
+
+# White worm mass
+R:26:0x94:0x90
+
+# Floating eye
+R:27:0x95:0xC1
+
+# Rock lizard
+R:28:0x96:0x8C
+
+# Jackal
+R:29:0x93:0xB1
+
+# Soldier ant
+R:30:0x94:0x80
+
+# Fruit bat
+R:31:0x93:0x81
+
+# Shrieker mushroom patch
+R:32:0x91:0xD6
+
+# Blubbering icky thing
+R:33:0x91:0xD0
+
+# Metallic green centipede
+R:34:0x94:0xA2
+
+# Novice warrior
+R:35:0x87:0x80
+
+# Novice rogue
+R:36:0x87:0x81
+
+# Novice priest
+R:37:0x87:0x82
+
+# Novice mage
+R:38:0x87:0x83
+
+# Yellow mushroom patch
+R:39:0x91:0xD7
+
+# White jelly
+R:40:0x92:0x93
+
+# Giant green frog
+R:41:0x96:0x88
+
+# Giant black ant
+R:42:0x94:0x81
+
+# Salamander
+R:43:0x96:0x8D
+
+# White harpy
+R:44:0x96:0x8A
+
+# Blue yeek
+R:45:0x92:0xBA
+
+# Grip, Farmer Maggot's dog
+R:46:0x92:0xC9
+
+# Fang, Farmer Maggot's dog
+R:47:0x92:0xCB
+
+# Green worm mass
+R:48:0x94:0x91
+
+# Large yellow snake
+R:49:0x93:0x94
+
+# Cave spider
+R:50:0x92:0xB8
+
+# Wild cat
+R:51:0x93:0xB2
+
+# Smeagol
+R:52:0x92:0xBC
+
+# Green ooze
+R:53:0x92:0x80
+
+# Poltergeist
+R:54:0x97:0x97
+
+# Metallic blue centipede
+R:55:0x94:0xA3
+
+# Giant white louse
+R:56:0x92:0xAA
+
+# Black naga
+R:57:0x93:0x8D
+
+# Spotted mushroom patch
+R:58:0x91:0xD8
+
+# Silver jelly
+R:59:0x92:0x94
+
+# Yellow jelly
+R:60:0x92:0x8A
+
+# Scruffy looking hobbit
+R:61:0x90:0x80
+
+# Giant white ant
+R:62:0x94:0x82
+
+# Yellow mold
+R:63:0x91:0xC6
+
+# Metallic red centipede
+R:64:0x94:0xA4
+
+# Yellow worm mass
+R:65:0x94:0x92
+
+# Clear worm mass
+R:66:0x94:0x93
+
+# Radiation eye
+R:67:0x93:0x87
+
+# Cave lizard
+R:68:0x96:0x8E
+
+# Novice ranger
+R:69:0x87:0x84
+
+# Novice paladin
+R:70:0x87:0x85
+
+# Blue jelly
+R:71:0x92:0x86
+
+# Creeping copper coins
+R:72:0x8A:0x87
+
+# Giant white rat
+R:73:0x90:0x9A
+
+# Blue worm mass
+R:74:0x94:0x94
+
+# Large grey snake
+R:75:0x93:0x95
+
+# Bullroarer the Hobbit
+R:76:0x98:0x80
+
+# Novice mage
+R:77:0x87:0x86
+
+# Green naga
+R:78:0x93:0x8E
+
+# Blue ooze
+R:79:0x92:0x81
+
+# Green glutton ghost
+R:80:0x97:0x82
+
+# Green jelly
+R:81:0x92:0x91
+
+# Large kobold
+R:82:0x90:0x8D
+
+# Skeleton kobold
+R:83:0x97:0xBB
+
+# Grey icky thing
+R:84:0x91:0xD1
+
+# Disenchanter eye
+R:85:0x93:0x86
+
+# Red worm mass
+R:86:0x94:0x95
+
+# Copperhead snake
+R:87:0x93:0x96
+
+# Purple mushroom patch
+R:88:0x91:0xD9
+
+# Novice priest
+R:89:0x87:0x87
+
+# Novice warrior
+R:90:0x87:0x88
+
+# Novice rogue
+R:91:0x87:0x89
+
+# Brown mold
+R:92:0x91:0xC7
+
+# Giant brown bat
+R:93:0x93:0x82
+
+# Kobold archer
+R:94:0x87:0x8A
+
+# Creeping silver coins
+R:95:0x8A:0x88
+
+# Snaga
+R:96:0x90:0x93
+
+# Rattlesnake
+R:97:0x93:0x97
+
+# Cave orc
+R:98:0x90:0x94
+
+# Wood spider
+R:99:0x92:0xB5
+
+# Manes
+R:100:0x90:0xA4
+
+# Bloodshot eye
+R:101:0x93:0x85
+
+# Red naga
+R:102:0x93:0x8F
+
+# Red jelly
+R:103:0x92:0x92
+
+# Giant red frog
+R:104:0x96:0x89
+
+# Green icky thing
+R:105:0x91:0xD2
+
+# Zombified kobold
+R:106:0x97:0x9B
+
+# Lost soul
+R:107:0x97:0x96
+
+# Dark elf
+R:108:0x90:0x81
+
+# Night lizard
+R:109:0x96:0x8F
+
+# Mughash the Kobold Lord
+R:110:0x98:0x81
+
+# Wormtongue, Agent of Saruman
+R:111:0x98:0x82
+
+# Lagduf, the Snaga
+R:112:0x98:0x83
+
+# Brown yeek
+R:113:0x92:0xB9
+
+# Novice ranger
+R:114:0x87:0x8B
+
+# Giant salamander
+R:115:0x96:0x8D
+
+# Green mold
+R:116:0x91:0xC9
+
+# Skeleton orc
+R:117:0x97:0xBE
+
+# Novice paladin
+R:118:0x87:0x8C
+
+# Lemure
+R:119:0x90:0xA5
+
+# Hill orc
+R:120:0x95:0x98
+
+# Bandit
+R:121:0x87:0x8D
+
+# Yeti
+R:122:0x91:0xB2
+
+# Bloodshot icky thing
+R:123:0x91:0xD3
+
+# Giant grey rat
+R:124:0x90:0x99
+
+# Black harpy
+R:125:0x96:0x8B
+
+# Orc shaman
+R:126:0x95:0x99
+
+# Baby blue dragon
+R:127:0x8F:0x80
+
+# Baby white dragon
+R:128:0x8F:0x82
+
+# Baby green dragon
+R:129:0x8F:0x83
+
+# Baby black dragon
+R:130:0x8F:0x84
+
+# Baby red dragon
+R:131:0x8F:0x85
+
+# Giant red ant
+R:132:0x94:0x83
+
+# Brodda, the Easterling
+R:133:0x98:0x84
+
+# King cobra
+R:134:0x93:0x98
+
+# Giant spider
+R:135:0x92:0xB4
+
+# Dark elven mage
+R:136:0x90:0x82
+
+# Orfax, Son of Boldor
+R:137:0x98:0x85
+
+# Dark elven warrior
+R:138:0x90:0x83
+
+# Clear mushroom patch
+R:139:0x91:0xDA
+
+# Grishnakh, the Hill Orc
+R:140:0x98:0x86
+
+# Giant white tick
+R:141:0x92:0xAA
+
+# Hairy mold
+R:142:0x91:0xC8
+
+# Disenchanter mold
+R:143:0x91:0xC3
+
+# Pseudo-dragon
+R:144:0x8F:0xAE
+
+# Tengu
+R:145:0x90:0xA6
+
+# Creeping gold coins
+R:146:0x8A:0x89
+
+# Wolf
+R:147:0x93:0xAA
+
+# Giant fruit fly
+R:148:0x92:0xB1
+
+# Panther
+R:149:0x93:0xB5
+
+# Brigand
+R:150:0x87:0x8E
+
+# Baby multi-hued dragon
+R:151:0x8F:0x87
+
+# Hippogriff
+R:152:0x94:0x8F
+
+# Zombified orc
+R:153:0x97:0x9A
+
+# Gnome mage
+R:154:0x90:0x84
+
+# Black mamba
+R:155:0x93:0x99
+
+# White wolf
+R:156:0x93:0xB0
+
+# Grape jelly
+R:157:0x92:0x8B
+
+# Nether worm mass
+R:158:0x94:0x96
+
+# Golfimbul, the Hill Orc Chief
+R:159:0x98:0x87
+
+# Master yeek
+R:160:0x92:0xBB
+
+# Priest
+R:161:0x87:0x8F
+
+# Dark elven priest
+R:162:0x90:0x85
+
+# Air spirit
+R:163:0x92:0x95
+
+# Skeleton human
+R:164:0x97:0x9E
+
+# Zombified human
+R:165:0x97:0x99
+
+# Tiger
+R:166:0x93:0xB4
+
+# Moaning spirit
+R:167:0x97:0x94
+
+# Swordsman
+R:168:0x87:0x90
+
+# Stegocentipede
+R:169:0x94:0xA5
+
+# Spotted jelly
+R:170:0x92:0x90
+
+# Drider
+R:171:0x96:0x9A
+
+# Killer brown beetle
+R:172:0x96:0x91
+
+# Boldor, King of the Yeeks
+R:173:0x98:0x88
+
+# Ogre
+R:174:0x90:0x8E
+
+# Creeping mithril coins
+R:175:0x8A:0x8A
+
+# Illusionist
+R:176:0x87:0x91
+
+# Druid
+R:177:0x87:0x92
+
+# Black orc
+R:178:0x95:0x9A
+
+# Ochre jelly
+R:179:0x92:0x88
+
+# Giant flea
+R:180:0x92:0xAB
+
+# Ufthak of Cirith Ungol
+R:181:0x98:0x89
+
+# Giant white dragon fly
+R:182:0x94:0xB8
+
+# Blue icky thing
+R:183:0x91:0xD4
+
+# Hill giant
+R:184:0x95:0x8A
+
+# Flesh golem
+R:185:0x95:0x80
+
+# Warg
+R:186:0x93:0xAE
+
+# Giant black louse
+R:187:0x92:0xAD
+
+# Lurker
+R:188:0x80:0x80
+
+# Wererat
+R:189:0x90:0x9B
+
+# Black ogre
+R:190:0x90:0x8F
+
+# Magic mushroom patch
+R:191:0x91:0xDB
+
+# Guardian naga
+R:192:0x93:0x90
+
+# Light hound
+R:193:0x93:0xC0
+
+# Dark hound
+R:194:0x93:0xC2
+
+# Half-orc
+R:195:0x95:0x9B
+
+# Giant tarantula
+R:196:0x92:0xB3
+
+# Giant clear centipede
+R:197:0x94:0xA6
+
+# Mirkwood spider
+R:198:0x92:0xB6
+
+# Frost giant
+R:199:0x95:0x8B
+
+# Griffon
+R:200:0x94:0x8E
+
+# Homunculus
+R:201:0x90:0xA7
+
+# Gnome mage
+R:202:0x90:0x86
+
+# Clear hound
+R:203:0x93:0xBA
+
+# Clay golem
+R:204:0x95:0x81
+
+# Umber hulk
+R:205:0x95:0xA1
+
+# Orc captain
+R:206:0x95:0x9C
+
+# Gelatinous cube
+R:207:0x92:0x85
+
+# Giant green dragon fly
+R:208:0x94:0xB9
+
+# Fire giant
+R:209:0x95:0x8C
+
+# Hummerhorn
+R:210:0x92:0xB0
+
+# Ulfast, Son of Ulfang
+R:211:0x98:0x8A
+
+# Quasit
+R:212:0x90:0xA8
+
+# Imp
+R:213:0x90:0xAA
+
+# Forest troll
+R:214:0x95:0xAE
+
+# Nar, the Dwarf
+R:215:0x98:0x8B
+
+# 2-headed hydra
+R:216:0x93:0xA1
+
+# Water spirit
+R:217:0x92:0x96
+
+# Giant red scorpion
+R:218:0x95:0xC8
+
+# Earth spirit
+R:219:0x92:0x97
+
+# Fire spirit
+R:220:0x92:0x98
+
+# Fire hound
+R:221:0x93:0xBD
+
+# Cold hound
+R:222:0x93:0xC4
+
+# Energy hound
+R:223:0x93:0xCB
+
+# Potion mimic
+R:224:0x8B:0x86
+
+# Blink dog
+R:225:0x93:0xAF
+
+# Uruk
+R:226:0x95:0x9D
+
+# Shagrat, the Orc Captain
+R:227:0x98:0x8C
+
+# Gorbag, the Orc Captain
+R:228:0x98:0x8D
+
+# Shambling mound
+R:229:0x91:0xDC
+
+# Stone giant
+R:230:0x95:0x8D
+
+# Giant black dragon fly
+R:231:0x94:0xBA
+
+# Stone golem
+R:232:0x95:0x82
+
+# Red mold
+R:233:0x91:0xC4
+
+# Giant gold dragon fly
+R:234:0x94:0xBB
+
+# Bolg, Son of Azog
+R:235:0x98:0x8E
+
+# Phase spider
+R:236:0x92:0xB2
+
+# 3-headed hydra
+R:237:0x93:0xA2
+
+# Earth hound
+R:238:0x93:0xCA
+
+# Air hound
+R:239:0x93:0xBF
+
+# Sabre-tooth tiger
+R:240:0x93:0xB7
+
+# Water hound
+R:241:0x93:0xC7
+
+# Chimaera
+R:242:0x96:0x9D
+
+# Quylthulg
+R:243:0x96:0x80
+
+# Sasquatch
+R:244:0x91:0xA8
+
+# Werewolf
+R:245:0x93:0xAD
+
+# Dark elven lord
+R:246:0x90:0x87
+
+# Cloud giant
+R:247:0x95:0x8E
+
+# Lugdush, the Uruk
+R:248:0x98:0x8F
+
+# Ugluk, the Uruk
+R:249:0x98:0x90
+
+# Blue dragon bat
+R:250:0x93:0x83
+
+# Scroll mimic
+R:251:0x8A:0xCC
+
+# Fire vortex
+R:252:0x95:0xA4
+
+# Water vortex
+R:253:0x95:0xA5
+
+# Cold vortex
+R:254:0x95:0xA6
+
+# Energy vortex
+R:255:0x95:0xA7
+
+# Mummified orc
+R:256:0x94:0xB0
+
+# Killer stag beetle
+R:257:0x96:0x92
+
+# Iron golem
+R:258:0x95:0x83
+
+# Giant yellow scorpion
+R:259:0x95:0xC9
+
+# Black ooze
+R:260:0x92:0x82
+
+# Hardened warrior
+R:261:0x87:0x93
+
+# Azog, King of the Uruk-Hai
+R:262:0x98:0x91
+
+# Master rogue
+R:263:0x87:0x94
+
+# Red dragon bat
+R:264:0x93:0x84
+
+# Killer white beetle
+R:265:0x96:0x93
+
+# Giant bronze dragon fly
+R:266:0x94:0xBC
+
+# Forest wight
+R:267:0x97:0x89
+
+# Ibun, Son of Mim
+R:268:0x98:0x92
+
+# Khim, Son of Mim
+R:269:0x98:0x93
+
+# 4-headed hydra
+R:270:0x93:0xA3
+
+# Mummified human
+R:271:0x94:0xB1
+
+# Vampire bat
+R:272:0x93:0x80
+
+# Sangahyando of Umbar
+R:273:0x98:0x94
+
+# Angamaite of Umbar
+R:274:0x98:0x95
+
+# Banshee
+R:275:0x97:0x81
+
+# Pukelman
+R:276:0x95:0x84
+
+# Dark elven druid
+R:277:0x90:0x88
+
+# Stone troll
+R:278:0x95:0xAF
+
+# Troll priest
+R:279:0x95:0xB0
+
+# Wereworm
+R:280:0x94:0x97
+
+# Carrion crawler
+R:281:0x94:0xA7
+
+# Killer red beetle
+R:282:0x96:0x94
+
+# Giant grey ant
+R:283:0x94:0x84
+
+# Ulwarth, Son of Ulfang
+R:284:0x98:0x96
+
+# Displacer beast
+R:285:0x93:0xB9
+
+# Giant fire tick
+R:286:0x92:0xAF
+
+# Cave ogre
+R:287:0x90:0x90
+
+# White wraith
+R:288:0x97:0x8C
+
+# Angel
+R:289:0x91:0xB6
+
+# Mim, Betrayer of Turin
+R:290:0x98:0x97
+
+# Killer fire beetle
+R:291:0x96:0x95
+
+# Creeping adamantite coins
+R:292:0x8A:0x8B
+
+# Algroth
+R:293:0x95:0xB1
+
+# Vibration hound
+R:294:0x93:0xBB
+
+# Nexus hound
+R:295:0x93:0xC5
+
+# Ogre mage
+R:296:0x90:0x91
+
+# Lokkak, the Ogre Chieftain
+R:297:0x98:0x98
+
+# Vampire
+R:298:0x97:0xB2
+
+# Gorgimaera
+R:299:0x96:0x9E
+
+# Colbran
+R:300:0x95:0x85
+
+# Spirit naga
+R:301:0x93:0x91
+
+# 5-headed hydra
+R:302:0x93:0xA4
+
+# Black knight
+R:303:0x87:0x95
+
+# Uldor the Accursed
+R:304:0x98:0x99
+
+# Mage
+R:305:0x87:0x96
+
+# Mind flayer
+R:306:0x90:0x8A
+
+# Draebor, the Imp
+R:307:0x98:0x9A
+
+# Basilisk
+R:308:0x94:0x88
+
+# Ice troll
+R:309:0x95:0xB2
+
+# Purple worm
+R:310:0x94:0x98
+
+# Archangel
+R:311:0x91:0xB7
+
+# Catoblepas
+R:312:0x96:0x9B
+
+# Ring mimic
+R:313:0x88:0x83
+
+# Young blue dragon
+R:314:0x8F:0x88
+
+# Young white dragon
+R:315:0x8F:0x8A
+
+# Young green dragon
+R:316:0x8F:0x8B
+
+# Young bronze dragon
+R:317:0x8F:0x89
+
+# Mithril golem
+R:318:0x95:0x86
+
+# Shadow drake
+R:319:0x8F:0xA8
+
+# Skeleton troll
+R:320:0x97:0xAA
+
+# Manticore
+R:321:0x96:0x9F
+
+# Giant blue ant
+R:322:0x94:0x85
+
+# Giant army ant
+R:323:0x94:0x86
+
+# Grave wight
+R:324:0x97:0x88
+
+# Killer slicer beetle
+R:325:0x96:0x96
+
+# Ghost
+R:326:0x97:0x98
+
+# Death watch beetle
+R:327:0x96:0x97
+
+# Ogre shaman
+R:328:0x90:0x92
+
+# Nexus quylthulg
+R:329:0x96:0x81
+
+# Shelob, Spider of Darkness
+R:330:0x98:0x9B
+
+# Ninja
+R:331:0x87:0x97
+
+# Memory moss
+R:332:0x91:0xDD
+
+# Storm giant
+R:333:0x95:0x8F
+
+# Cave troll
+R:334:0x95:0xB3
+
+# Half-troll
+R:335:0x95:0xB4
+
+# Mystic
+R:336:0x87:0x98
+
+# Barrow wight
+R:337:0x97:0x8A
+
+# Skeleton ettin
+R:338:0x97:0xB7
+
+# Chaos drake
+R:339:0x8F:0xA9
+
+# Law drake
+R:340:0x8F:0xAA
+
+# Balance drake
+R:341:0x8F:0xAD
+
+# Ethereal drake
+R:342:0x8F:0xA7
+
+# Bert the Stone Troll
+R:343:0x98:0x9C
+
+# Bill the Stone Troll
+R:344:0x98:0x9D
+
+# Tom the Stone Troll
+R:345:0x98:0x9E
+
+# Shade
+R:346:0x97:0x95
+
+# Spectre
+R:347:0x97:0x87
+
+# Water troll
+R:348:0x95:0xB5
+
+# Fire elemental
+R:349:0x92:0x9B
+
+# Cherub
+R:350:0x91:0xB8
+
+# Water elemental
+R:351:0x92:0x9A
+
+# Invisible stalker
+R:352:0x92:0xA8
+
+# Carrion crawler
+R:353:0x94:0xA8
+
+# Master thief
+R:354:0x87:0x99
+
+# Ulfang the Black
+R:355:0x98:0x9F
+
+# Lich
+R:356:0x97:0x90
+
+# Master vampire
+R:357:0x97:0xB3
+
+# Giant grey scorpion
+R:358:0x95:0xCA
+
+# Earth elemental
+R:359:0x92:0x9C
+
+# Air elemental
+R:360:0x92:0xA3
+
+# Hellhound
+R:361:0x93:0xAB
+
+# Eog golem
+R:362:0x95:0x87
+
+# Olog
+R:363:0x95:0xB6
+
+# Dagashi
+R:364:0x87:0x9A
+
+# Gravity hound
+R:365:0x93:0xC9
+
+# Acidic cytoplasm
+R:366:0x92:0x84
+
+# Inertia hound
+R:367:0x93:0xC1
+
+# Impact hound
+R:368:0x93:0xBC
+
+# Dread
+R:369:0x97:0x80
+
+# Ooze elemental
+R:370:0x92:0x9F
+
+# Smoke elemental
+R:371:0x92:0xA7
+
+# Young black dragon
+R:372:0x8F:0x8C
+
+# Mumak
+R:373:0x94:0xBD
+
+# Giant fire ant
+R:374:0x94:0x87
+
+# Mature white dragon
+R:375:0x8F:0x92
+
+# Xorn
+R:376:0x95:0xA2
+
+# Shadow
+R:377:0x97:0x86
+
+# Phantom
+R:378:0x97:0x94
+
+# Grey wraith
+R:379:0x97:0x8D
+
+# Young multi-hued dragon
+R:380:0x8F:0x8F
+
+# Colossus
+R:381:0x95:0x88
+
+# Young gold dragon
+R:382:0x8F:0x8E
+
+# Rogrog the Black Troll
+R:383:0x98:0xA0
+
+# Mature blue dragon
+R:384:0x8F:0x90
+
+# Mature green dragon
+R:385:0x8F:0x93
+
+# Mature bronze dragon
+R:386:0x8F:0x91
+
+# Young red dragon
+R:387:0x8F:0x8D
+
+# Trapper
+R:388:0x80:0x80
+
+# Bodak
+R:389:0x90:0xAB
+
+# Ice elemental
+R:390:0x95:0xC0
+
+# Necromancer
+R:391:0x87:0x9B
+
+# Lorgan, Chief of the Easterlings
+R:392:0x98:0xA1
+
+# Demonologist
+R:393:0x87:0x9C
+
+# Mummified troll
+R:394:0x94:0xB2
+
+# The Queen Ant
+R:395:0x98:0xA2
+
+# Will o' the wisp
+R:396:0x92:0x99
+
+# Magma elemental
+R:397:0x92:0xA1
+
+# Black pudding
+R:398:0x92:0x83
+
+# Killer iridescent beetle
+R:399:0x96:0x98
+
+# Nexus vortex
+R:400:0x95:0xA8
+
+# Plasma vortex
+R:401:0x95:0xA9
+
+# Mature red dragon
+R:402:0x8F:0x95
+
+# Mature gold dragon
+R:403:0x8F:0x96
+
+# Crystal drake
+R:404:0x8F:0xAC
+
+# Mature black dragon
+R:405:0x8F:0x94
+
+# Mature multi-hued dragon
+R:406:0x8F:0x97
+
+# Death knight
+R:407:0x87:0x9D
+
+# Castamir the Usurper
+R:408:0x98:0xA3
+
+# Time vortex
+R:409:0x95:0xAA
+
+# Shimmering vortex
+R:410:0x95:0xAB
+
+# Ancient blue dragon
+R:411:0x8F:0x98
+
+# Ancient bronze dragon
+R:412:0x8F:0x99
+
+# Beholder
+R:413:0x93:0x8A
+
+# Emperor wight
+R:414:0x97:0x8B
+
+# Seraph
+R:415:0x91:0xBA
+
+# Vargo, Tyrant of Fire
+R:416:0x98:0xA4
+
+# Black wraith
+R:417:0x97:0x93
+
+# Erinyes
+R:418:0x90:0x9E
+
+# Nether wraith
+R:419:0x97:0x8E
+
+# Eldrak
+R:420:0x95:0xB7
+
+# Ettin
+R:421:0x95:0xB8
+
+# Waldern, King of Water
+R:422:0x98:0xA5
+
+# Kavlax the Many-Headed
+R:423:0x98:0xA6
+
+# Ancient white dragon
+R:424:0x8F:0x9A
+
+# Ancient green dragon
+R:425:0x8F:0x9B
+
+# 7-headed hydra
+R:426:0x93:0xA6
+
+# Night mare
+R:427:0x96:0x9C
+
+# Vampire lord
+R:428:0x97:0xB4
+
+# Ancient black dragon
+R:429:0x8F:0x9C
+
+# Disenchanter worm mass
+R:430:0x94:0x96
+
+# Rotting quylthulg
+R:431:0x96:0x82
+
+# Spirit troll
+R:432:0x95:0xB9
+
+# Lesser titan
+R:433:0x95:0x90
+
+# 9-headed hydra
+R:434:0x93:0xA8
+
+# Enchantress
+R:435:0x87:0x9E
+
+# Knight Templar
+R:436:0x87:0x9F
+
+# Sorcerer
+R:437:0x87:0xA0
+
+# Xaren
+R:438:0x95:0xA3
+
+# Giant roc
+R:439:0x94:0x8C
+
+# Uvatha the Horseman
+R:440:0x98:0xA7
+
+# Minotaur
+R:441:0x90:0x95
+
+# Medusa, the Gorgon
+R:442:0x98:0xA8
+
+# Death drake
+R:443:0x8F:0xAB
+
+# Ancient red dragon
+R:444:0x8F:0x9D
+
+# Ancient gold dragon
+R:445:0x8F:0x9E
+
+# Great crystal drake
+R:446:0x8F:0xAC
+
+# Vrock
+R:447:0x90:0x9F
+
+# Death quasit
+R:448:0x90:0xAC
+
+# Adunaphel the Quiet
+R:449:0x98:0xA9
+
+# Dark elven sorcerer
+R:450:0x90:0x89
+
+# Master lich
+R:451:0x97:0x8F
+
+# Hezrou
+R:452:0x90:0xA0
+
+# Akhorahil the Blind
+R:453:0x98:0xAA
+
+# Gorlim, Betrayer of Barahir
+R:454:0x98:0xAB
+
+# Archon
+R:455:0x91:0xB9
+
+# Glabrezu
+R:456:0x90:0xA1
+
+# Ren the Unclean
+R:457:0x98:0xAC
+
+# Nalfeshnee
+R:458:0x90:0xA2
+
+# Undead beholder
+R:459:0x93:0x8B
+
+# Dread
+R:460:0x97:0x85
+
+# Mumak
+R:461:0x94:0xBF
+
+# Ancient multi-hued dragon
+R:462:0x8F:0x9F
+
+# Ethereal dragon
+R:463:0x8F:0xA6
+
+# Ji Indur Dawndeath
+R:464:0x98:0xAD
+
+# Marilith
+R:465:0x90:0xA3
+
+# Quaker, Master of Earth
+R:466:0x98:0xAE
+
+# Lesser Balrog
+R:467:0x90:0xBA
+
+# Ariel, Queen of Air
+R:468:0x98:0xAF
+
+# 11-headed hydra
+R:469:0x93:0xA9
+
+# Patriarch
+R:470:0x87:0xA1
+
+# Dreadmaster
+R:471:0x97:0x83
+
+# Drolem
+R:472:0x95:0x89
+
+# Scatha the Worm
+R:473:0x98:0xB0
+
+# Dwar, Dog Lord of Waw
+R:474:0x98:0xB1
+
+# Smaug the Golden
+R:475:0x98:0xB2
+
+# Dracolich
+R:476:0x8F:0xB0
+
+# Greater titan
+R:477:0x95:0x91
+
+# Dracolisk
+R:478:0x8F:0xB4
+
+# Death mold
+R:479:0x91:0xCA
+
+# Itangast the Fire Drake
+R:480:0x98:0xB3
+
+# Glaurung, Father of the Dragons
+R:481:0x98:0xB4
+
+# Master mystic
+R:482:0x87:0xA2
+
+# The Balrog of Moria
+R:483:0x98:0xB5
+
+# Nightwing
+R:484:0x97:0x8F
+
+# Nether hound
+R:485:0x93:0xC3
+
+# Time hound
+R:486:0x93:0xCC
+
+# Plasma hound
+R:487:0x93:0xC6
+
+# Demonic quylthulg
+R:488:0x96:0x83
+
+# Great Storm Wyrm
+R:489:0x8F:0xA1
+
+# Baphomet the Minotaur Lord
+R:490:0x98:0xB6
+
+# Harowen the Black Hand
+R:491:0x98:0xB7
+
+# Hoarmurath of Dir
+R:492:0x98:0xB8
+
+# Grand master mystic
+R:493:0x87:0xA3
+
+# Khamul, the Black Easterling
+R:494:0x98:0xB9
+
+# Ethereal hound
+R:495:0x93:0xC8
+
+# Great Ice Wyrm
+R:496:0x8F:0xA2
+
+# The Phoenix
+R:497:0x98:0xBA
+
+# Nightcrawler
+R:498:0x97:0x90
+
+# Hand druj
+R:499:0x95:0x9E
+
+# Eye druj
+R:500:0x95:0x9F
+
+# Skull druj
+R:501:0x95:0xA0
+
+# Chaos vortex
+R:502:0x95:0xAC
+
+# Aether vortex
+R:503:0x95:0xAD
+
+# The Lernaean Hydra
+R:504:0x98:0xBB
+
+# Thuringwethil, the Vampire Messenger
+R:505:0x98:0xBC
+
+# Great Hell Wyrm
+R:506:0x8F:0xA0
+
+# Draconic quylthulg
+R:507:0x96:0x84
+
+# Fundin Bluecloak
+R:508:0x98:0xBD
+
+# Uriel, Angel of Fire
+R:509:0x98:0xBE
+
+# Azriel, Angel of Death
+R:510:0x98:0xBF
+
+# Ancalagon the Black
+R:511:0x98:0xC0
+
+# Nightwalker
+R:512:0x97:0x91
+
+# Gabriel, the Messenger
+R:513:0x98:0xC1
+
+# Saruman of Many Colours
+R:514:0x98:0xC2
+
+# Dreadlord
+R:515:0x97:0x84
+
+# The Cat Lord
+R:516:0x98:0xC3
+
+# Jabberwock
+R:517:0x96:0x99
+
+# Chaos hound
+R:518:0x93:0xBE
+
+# Great Wyrm of Chaos
+R:519:0x8F:0xA3
+
+# Great Wyrm of Law
+R:520:0x8F:0xA4
+
+# Great Wyrm of Balance
+R:521:0x8F:0xA5
+
+# Tselakus, the Dreadlord
+R:522:0x98:0xC4
+
+# Great Wyrm of Many Colours
+R:523:0x98:0xC5
+
+# Black reaver
+R:524:0x97:0x93
+
+# Greater demonic quylthulg
+R:525:0x96:0x85
+
+# Greater draconic quylthulg
+R:526:0x96:0x86
+
+# Greater rotting quylthulg
+R:527:0x96:0x87
+
+# Feagwath, the Undead Sorcerer
+R:528:0x98:0xC6
+
+# Omarax, the Eye Tyrant
+R:529:0x98:0xC7
+
+# Ungoliant, the Unlight
+R:530:0x98:0xC8
+
+# Aether hound
+R:531:0x93:0xCD
+
+# The Mouth of Sauron
+R:532:0x98:0xC9
+
+# Master quylthulg
+R:533:0x98:0xCA
+
+# Qlzqqlzuup, the Emperor Quylthulg
+R:534:0x98:0xCB
+
+# The Witch-King of Angmar
+R:535:0x98:0xCC
+
+# Pazuzu, Lord of Air
+R:536:0x98:0xCD
+
+# Hellhound
+R:537:0x93:0xAC
+
+# Cantoras, the Skeletal Lord
+R:538:0x98:0xCE
+
+# The Tarrasque
+R:539:0x98:0xCF
+
+# Lungorthin, the Balrog of White Fire
+R:540:0x98:0xD0
+
+# Draugluin, Sire of All Werewolves
+R:541:0x98:0xD1
+
+# Vecna, the Emperor Lich
+R:542:0x98:0xD2
+
+# Huan, Wolfhound of the Valar
+R:543:0x98:0xD3
+
+# Carcharoth, the Jaws of Thirst
+R:544:0x98:0xD4
+
+# Gothmog, the High Captain of Balrogs
+R:545:0x98:0xD5
+
+# Sauron, the Sorcerer
+R:546:0x91:0xDF
+
+# Morgoth, Lord of Darkness
+R:547:0x92:0xC7
+
+# Silver mouse
+R:548:0x09:0x72
+
+# Rot jelly
+R:549:0x07:0x6A
+
+# Giant tan bat
+R:550:0x0F:0x62
+
+# Giant silver ant
+R:551:0x09:0x61
+
+# Giant brown tick
+R:552:0x07:0x53
+
+# Disenchanter bat
+R:553:0x0A:0x62
+
+# Shimmering mold
+R:554:0x06:0x6D
+
+# Wyvern
+R:555:0x8f:0xaf
+
+# Chest mimic
+R:556:0x8A:0x83
+
+# Demilich
+R:557:0x97:0x92
+
+# Archlich
+R:558:0x97:0x8e
+
+# Crow
+R:559:0x02:0x42
+
+# Raven
+R:560:0x08:0x42
+
+# Crebain
+R:561:0x08:0x42
+
+# Winged Horror
+R:562:0x08:0x42
+
+# Cave bear
+R:563:0x07:0x71
+
+# Grizzly bear
+R:564:0x0F:0x71
+
+# Werebear
+R:565:0x08:0x71
+
+# Beorn, the Shape-Changer
+R:566:0x08:0x71
+
+# Barbazu
+R:567:0x90:0xa7
+
+# Bile Demon
+R:568:0x0C:0x55
+
+# Osyluth
+R:569:0x09:0x55
+
+# Gelugon
+R:570:0x01:0x55
+
+# Horned Reaper
+R:571:0x0E:0x55
+
+# Pit Fiend
+R:572:0x03:0x55
+
+# Greater Balrog
+R:573:0x90:0xb6
+
+# Baby bronze dragon
+R:574:0x0F:0x64
+
+# Baby gold dragon
+R:575:0x0B:0x64
+
+# Great Swamp Wyrm
+R:576:0x05:0x44
+
+# Great Wyrm of Perplexity
+R:577:0x0F:0x44
+
+# Great Bile Wyrm
+R:578:0x02:0x44
+
+# Great Wyrm of Thunder
+R:579:0x0B:0x44
+
+# Ranger
+R:580:0x09:0x70
+
+# Paladin
+R:581:0x01:0x70
+
+# Ranger Chieftain
+R:582:0x09:0x70
+
+# Berserker
+R:583:0x07:0x70
+
+# Cyclops
+R:584:0x07:0x50
+
+# Polyphemus, the Blind Cyclops
+R:585:0x05:0x50
+
+# Atlas, the Titan
+R:586:0x02:0x50
+
+# Kronos, Lord of the Titans
+R:587:0x0A:0x50
+
+# Evil eye
+R:588:0x05:0x65
+
+# Spectator
+R:589:0x93:0x8c
+
+# Gauth
+R:590:0x08:0x65
+
+# Beholder hive-mother
+R:591:0x06:0x65
+
+# Neekerbreeker
+R:592:0x08:0x49
+
+# Giant firefly
+R:593:0x04:0x49
+
+# Eol, the Dark Elf
+R:594:0x98:0xd6
+
+# Maeglin, the Traitor of Gondolin
+R:595:0x98:0xd7
+
+# Elder vampire
+R:596:0x04:0x56
+
+# Silent watcher
+R:597:0x04:0x67
+
+# Nighthawk
+R:598:0x07:0x42
+
+# Ghoul
+R:599:0x97:0x9a
+
+# Ghast
+R:600:0x07:0x7A
+
+# Greater basilisk
+R:601:0x94:0x89
+
+# Aranea
+R:602:0x0C:0x53
+
+# Elder aranea
+R:603:0x04:0x53
+
+# Kobold shaman
+R:604:0x04:0x6B
+
+# Bat of Gorgoroth
+R:605:0x05:0x62
+
+# Doombat
+R:606:0x0C:0x62
+
+# Wolf chieftain
+R:607:0x93:0xad
+
+# Bone golem
+R:608:0x08:0x67
+
+# Bronze golem
+R:609:0x03:0x67
+
+# Ogre chieftain
+R:610:0x06:0x4F
+
+# Ar-Pharazon the Golden
+R:611:0x98:0xd8
+
+# Troll chieftain
+R:612:0x0A:0x54
+
+# Shardstorm
+R:613:0x95:0xa4
+
+# Storm of Unmagic
+R:614:0x95:0xad
+
+# Greater mummy
+R:615:0x94:0xb4
+
+# Multi-hued hound
+R:616:0x93:0xcd
+
+
+# Object attr/char definitions
+
+# <pile>
+K:0:0x01:0x26
+
+# Blindness
+K:1:0x00:0x2C
+
+# Paranoia
+K:2:0x00:0x2C
+
+# Confusion
+K:3:0x00:0x2C
+
+# Hallucination
+K:4:0x00:0x2C
+
+# Cure Poison
+K:5:0x00:0x2C
+
+# Cure Blindness
+K:6:0x00:0x2C
+
+# Cure Paranoia
+K:7:0x00:0x2C
+
+# Cure Confusion
+K:8:0x00:0x2C
+
+# Weakness
+K:9:0x00:0x2C
+
+# Unhealth
+K:10:0x00:0x2C
+
+# Restore Constitution
+K:11:0x00:0x2C
+
+# Restoring
+K:12:0x00:0x2C
+
+# Stupidity
+K:13:0x00:0x2C
+
+# Naivety
+K:14:0x00:0x2C
+
+# Poison
+K:15:0x00:0x2C
+
+# Sickness
+K:16:0x00:0x2C
+
+# Paralysis
+K:17:0x00:0x2C
+
+# Restore Strength
+K:18:0x00:0x2C
+
+# Disease
+K:19:0x00:0x2C
+
+# Cure Serious Wounds
+K:20:0x00:0x2C
+
+# & Ration~ of Food
+K:21:0x85:0x84
+
+# & Hard Biscuit~
+K:22:0x85:0x82
+
+# & Strip~ of Beef Jerky
+K:23:0x85:0x83
+
+# & Slime Mold~
+K:24:0x85:0x85
+
+# & Piece~ of Elvish Waybread
+K:25:0x85:0x86
+
+# & Pint~ of Fine Ale
+K:26:0x85:0x80
+
+# & Pint~ of Fine Wine
+K:27:0x85:0x81
+
+# & Broken Dagger~
+K:30:0x8D:0x81
+
+# & Bastard Sword~
+K:31:0x8D:0x8E
+
+# & Scimitar~
+K:32:0x8D:0x8B
+
+# & Tulwar~
+K:33:0x8D:0x89
+
+# & Broad Sword~
+K:34:0x8D:0x8C
+
+# & Short Sword~
+K:35:0x8D:0x88
+
+# & Blade~ of Chaos
+K:36:0x8D:0x91
+
+# & Two-Handed Sword~
+K:37:0x8D:0x8F
+
+# & Main Gauche~
+K:38:0x8D:0x84
+
+# & Cutlass~
+K:39:0x8D:0x8A
+
+# & Executioner's Sword~
+K:40:0x8D:0x8F
+
+# & Katana~
+K:41:0x8D:0x8E
+
+# & Long Sword~
+K:42:0x8D:0x8D
+
+# & Dagger~
+K:43:0x8D:0x83
+
+# & Rapier~
+K:44:0x8D:0x85
+
+# & Sabre~
+K:45:0x8D:0x87
+
+# & Small Sword~
+K:46:0x8D:0x86
+
+# & Broken Sword~
+K:47:0x8D:0x82
+
+# & Ball-and-Chain~
+K:48:0x8D:0x99
+
+# & Whip~
+K:49:0x8D:0x92
+
+# & Flail~
+K:50:0x8D:0x96
+
+# & Two-Handed Flail~
+K:51:0x8D:0x9A
+
+# & Morning Star~
+K:52:0x8D:0x97
+
+# & Mace~
+K:53:0x8D:0x94
+
+# & Quarterstaff~
+K:54:0x8D:0x95
+
+# & War Hammer~
+K:55:0x8D:0x93
+
+# & Lead-Filled Mace~
+K:56:0x8D:0x98
+
+# & Mace~ of Disruption
+K:57:0x8D:0x9B
+
+# & Lucerne Hammer~
+K:58:0x8D:0xA0
+
+# & Beaked Axe~
+K:59:0x8D:0xA3
+
+# & Glaive~
+K:60:0x8D:0xA5
+
+# & Halberd~
+K:61:0x8D:0xA6
+
+# & Awl-Pike~
+K:62:0x8D:0x9E
+
+# & Pike~
+K:63:0x8D:0xA2
+
+# & Spear~
+K:64:0x8D:0x9C
+
+# & Trident~
+K:65:0x8D:0x9D
+
+# & Lance~
+K:66:0x8D:0x9F
+
+# & Great Axe~
+K:67:0x8D:0xA8
+
+# & Battle Axe~
+K:68:0x8D:0xA1
+
+# & Lochaber Axe~
+K:69:0x8D:0xA7
+
+# & Broad Axe~
+K:70:0x8D:0xA4
+
+# & Scythe~
+K:71:0x8D:0xA9
+
+# & Scythe~ of Slicing
+K:72:0x8D:0xAA
+
+# & Short Bow~
+K:73:0x8D:0xAB
+
+# & Long Bow~
+K:74:0x8D:0xAC
+
+# & Light Crossbow~
+K:75:0x8D:0xAD
+
+# & Heavy Crossbow~
+K:76:0x8D:0xAE
+
+# & Sling~
+K:77:0x8D:0xAF
+
+# & Arrow~
+K:78:0x8D:0xB1
+
+# & Seeker Arrow~
+K:79:0x8D:0xB2
+
+# & Bolt~
+K:80:0x8D:0xB3
+
+# & Seeker Bolt~
+K:81:0x8D:0xB4
+
+# & Rounded Pebble~
+K:82:0x8D:0xB5
+
+# & Iron Shot~
+K:83:0x8D:0xB6
+
+# & Shovel~
+K:84:0x8A:0x9E
+
+# & Gnomish Shovel~
+K:85:0x8A:0x9F
+
+# & Dwarven Shovel~
+K:86:0x8A:0xA0
+
+# & Pick~
+K:87:0x8A:0x9B
+
+# & Orcish Pick~
+K:88:0x8A:0x9C
+
+# & Dwarven Pick~
+K:89:0x8A:0x9D
+
+# & Mattock~
+K:90:0x82:0x80
+
+# & Pair~ of Soft Leather Boots
+K:91:0x83:0x94
+
+# & Pair~ of Hard Leather Boots
+K:92:0x83:0x95
+
+# & Pair~ of Metal Shod Boots
+K:93:0x83:0x96
+
+# & Hard Leather Cap~
+K:94:0x83:0xC6
+
+# & Metal Cap~
+K:95:0x83:0x8B
+
+# & Iron Helm~
+K:96:0x83:0x8C
+
+# & Steel Helm~
+K:97:0x83:0x8D
+
+# & Iron Crown~
+K:98:0x83:0x8F
+
+# & Golden Crown~
+K:99:0x83:0x90
+
+# & Jewel Encrusted Crown~
+K:100:0x83:0x91
+
+# & Robe~
+K:101:0x83:0xA2
+
+# & Filthy Rag~
+K:102:0x83:0xA1
+
+# Soft Leather Armour~
+K:103:0x83:0xA6
+
+# Soft Studded Leather~
+K:104:0x83:0xA7
+
+# Hard Leather Armour~
+K:105:0x83:0xA8
+
+# Hard Studded Leather~
+K:106:0x83:0xA9
+
+# Leather Scale Mail~
+K:107:0x83:0xAA
+
+# Metal Scale Mail~
+K:108:0x83:0xAB
+
+# Chain Mail~
+K:109:0x83:0xAD
+
+# Rusty Chain Mail~
+K:110:0x83:0xAC
+
+# Augmented Chain Mail~
+K:111:0x83:0xAF
+
+# Bar Chain Mail~
+K:112:0x83:0xB0
+
+# Metal Brigandine Armour~
+K:113:0x83:0xB1
+
+# Partial Plate Armour~
+K:114:0x83:0xB2
+
+# Metal Lamellar Armour~
+K:115:0x83:0xB3
+
+# Full Plate Armour~
+K:116:0x83:0xB4
+
+# Ribbed Plate Armour~
+K:117:0x83:0xB5
+
+# Adamantite Plate Mail~
+K:118:0x83:0xB8
+
+# Mithril Plate Mail~
+K:119:0x83:0xB6
+
+# Mithril Chain Mail~
+K:120:0x83:0xB7
+
+# Double Chain Mail~
+K:121:0x83:0xAE
+
+# & Shield~ of Deflection
+K:122:0x83:0xA0
+
+# & Cloak~
+K:123:0x83:0x80
+
+# & Shadow Cloak~
+K:124:0x83:0x81
+
+# & Set~ of Leather Gloves
+K:125:0x83:0x97
+
+# & Set~ of Gauntlets
+K:126:0x83:0x9A
+
+# & Set~ of Cesti
+K:127:0x83:0x9B
+
+# & Small Leather Shield~
+K:128:0x83:0xDA
+
+# & Large Leather Shield~
+K:129:0x83:0x9D
+
+# & Small Metal Shield~
+K:130:0x83:0xDD
+
+# & Large Metal Shield~
+K:131:0x83:0xD9
+
+# Strength
+K:132:0x00:0x3D
+
+# Dexterity
+K:133:0x00:0x3D
+
+# Constitution
+K:134:0x00:0x3D
+
+# Intelligence
+K:135:0x00:0x3D
+
+# Speed
+K:136:0x00:0x3D
+
+# Searching
+K:137:0x00:0x3D
+
+# Teleportation
+K:138:0x00:0x3D
+
+# Slow Digestion
+K:139:0x00:0x3D
+
+# Resist Fire
+K:140:0x00:0x3D
+
+# Resist Cold
+K:141:0x00:0x3D
+
+# Feather Falling
+K:142:0x00:0x3D
+
+# Resist Poison
+K:143:0x00:0x3D
+
+# Free Action
+K:144:0x00:0x3D
+
+# Weakness
+K:145:0x00:0x3D
+
+# Flames
+K:146:0x00:0x3D
+
+# Acid
+K:147:0x00:0x3D
+
+# Ice
+K:148:0x00:0x3D
+
+# Woe
+K:149:0x00:0x3D
+
+# Stupidity
+K:150:0x00:0x3D
+
+# Damage
+K:151:0x00:0x3D
+
+# Accuracy
+K:152:0x00:0x3D
+
+# Protection
+K:153:0x00:0x3D
+
+# Aggravate Monster
+K:154:0x00:0x3D
+
+# See Invisible
+K:155:0x00:0x3D
+
+# Sustain Strength
+K:156:0x00:0x3D
+
+# Sustain Intelligence
+K:157:0x00:0x3D
+
+# Sustain Wisdom
+K:158:0x00:0x3D
+
+# Sustain Constitution
+K:159:0x00:0x3D
+
+# Sustain Dexterity
+K:160:0x00:0x3D
+
+# Sustain Charisma
+K:161:0x00:0x3D
+
+# Slaying
+K:162:0x00:0x3D
+
+# Wisdom
+K:163:0x00:0x22
+
+# Charisma
+K:164:0x00:0x22
+
+# Searching
+K:165:0x00:0x22
+
+# Teleportation
+K:166:0x00:0x22
+
+# Slow Digestion
+K:167:0x00:0x22
+
+# Resist Acid
+K:168:0x00:0x22
+
+# Adornment
+K:169:0x00:0x22
+
+# Sustenance
+K:170:0x82:0x80
+
+# the Magi
+K:171:0x00:0x22
+
+# DOOM
+K:172:0x00:0x22
+
+# Enchant Weapon To-Hit
+K:173:0x00:0x3F
+
+# Enchant Weapon To-Dam
+K:174:0x00:0x3F
+
+# Enchant Armor
+K:175:0x00:0x3F
+
+# Identify
+K:176:0x00:0x3F
+
+# *Identify*
+K:177:0x00:0x3F
+
+# Remove Curse
+K:180:0x00:0x3F
+
+# Light
+K:181:0x00:0x3F
+
+# Summon Monster
+K:184:0x00:0x3F
+
+# Phase Door
+K:185:0x00:0x3F
+
+# Teleportation
+K:186:0x00:0x3F
+
+# Teleport Level
+K:187:0x00:0x3F
+
+# Monster Confusion
+K:188:0x00:0x3F
+
+# Magic Mapping
+K:189:0x00:0x3F
+
+# Rune of Protection
+K:190:0x00:0x3F
+
+# *Remove Curse*
+K:191:0x00:0x3F
+
+# Treasure Detection
+K:192:0x00:0x3F
+
+# Object Detection
+K:193:0x00:0x3F
+
+# Trap Detection
+K:194:0x00:0x3F
+
+# Door/Stair Location
+K:197:0x00:0x3F
+
+# Acquirement
+K:198:0x00:0x3F
+
+# *Acquirement*
+K:199:0x00:0x3F
+
+# Mass Genocide
+K:200:0x00:0x3F
+
+# Detect Invisible
+K:201:0x00:0x3F
+
+# Aggravate Monster
+K:202:0x00:0x3F
+
+# Trap Creation
+K:203:0x00:0x3F
+
+# Trap/Door Destruction
+K:204:0x00:0x3F
+
+# Recharging
+K:206:0x00:0x3F
+
+# Genocide
+K:207:0x00:0x3F
+
+# Darkness
+K:208:0x00:0x3F
+
+# Protection from Evil
+K:209:0x00:0x3F
+
+# Satisfy Hunger
+K:210:0x00:0x3F
+
+# Dispel Undead
+K:211:0x00:0x3F
+
+# *Enchant Weapon*
+K:212:0x00:0x3F
+
+# Curse Weapon
+K:213:0x00:0x3F
+
+# *Enchant Armor*
+K:214:0x00:0x3F
+
+# Curse Armor
+K:215:0x00:0x3F
+
+# Summon Undead
+K:216:0x00:0x3F
+
+# Blessing
+K:217:0x00:0x3F
+
+# Holy Chant
+K:218:0x00:0x3F
+
+# Holy Prayer
+K:219:0x00:0x3F
+
+# Word of Recall
+K:220:0x00:0x3F
+
+# *Destruction*
+K:221:0x00:0x3F
+
+# Slime Mold Juice
+K:222:0x00:0x21
+
+# Apple Juice
+K:223:0x00:0x21
+
+# Water
+K:224:0x00:0x21
+
+# Strength
+K:225:0x00:0x21
+
+# Weakness
+K:226:0x00:0x21
+
+# Restore Strength
+K:227:0x00:0x21
+
+# Intelligence
+K:228:0x00:0x21
+
+# Stupidity
+K:229:0x00:0x21
+
+# Restore Intelligence
+K:230:0x00:0x21
+
+# Wisdom
+K:231:0x00:0x21
+
+# Naivety
+K:232:0x00:0x21
+
+# Restore Wisdom
+K:233:0x00:0x21
+
+# Charisma
+K:234:0x00:0x21
+
+# Ugliness
+K:235:0x00:0x21
+
+# Restore Charisma
+K:236:0x00:0x21
+
+# Cure Light Wounds
+K:237:0x00:0x21
+
+# Clumsiness
+K:238:0x00:0x21
+
+# Sickliness
+K:239:0x00:0x21
+
+# Cure Serious Wounds
+K:240:0x00:0x21
+
+# Cure Critical Wounds
+K:241:0x00:0x21
+
+# Healing
+K:242:0x00:0x21
+
+# Constitution
+K:243:0x00:0x21
+
+# Experience
+K:244:0x00:0x21
+
+# Sleep
+K:245:0x00:0x21
+
+# Blindness
+K:246:0x00:0x21
+
+# Confusion
+K:247:0x00:0x21
+
+# Poison
+K:248:0x00:0x21
+
+# Speed
+K:249:0x00:0x21
+
+# Slowness
+K:250:0x00:0x21
+
+# Dexterity
+K:251:0x00:0x21
+
+# Restore Dexterity
+K:252:0x00:0x21
+
+# Restore Constitution
+K:253:0x00:0x21
+
+# Lose Memories
+K:254:0x00:0x21
+
+# Salt Water
+K:255:0x00:0x21
+
+# Enlightenment
+K:256:0x00:0x21
+
+# Heroism
+K:257:0x00:0x21
+
+# Berserk Strength
+K:258:0x00:0x21
+
+# Boldness
+K:259:0x00:0x21
+
+# Restore Life Levels
+K:260:0x00:0x21
+
+# Resist Heat
+K:261:0x00:0x21
+
+# Resist Cold
+K:262:0x00:0x21
+
+# Detect Invisible
+K:263:0x00:0x21
+
+# Slow Poison
+K:264:0x00:0x21
+
+# Neutralize Poison
+K:265:0x00:0x21
+
+# Restore Mana
+K:266:0x00:0x21
+
+# Infravision
+K:267:0x00:0x21
+
+# Light
+K:269:0x00:0x2D
+
+# Lightning Bolts
+K:270:0x00:0x2D
+
+# Frost Bolts
+K:271:0x00:0x2D
+
+# Fire Bolts
+K:272:0x00:0x2D
+
+# Stone to Mud
+K:273:0x00:0x2D
+
+# Polymorph
+K:274:0x00:0x2D
+
+# Heal Monster
+K:275:0x00:0x2D
+
+# Haste Monster
+K:276:0x00:0x2D
+
+# Slow Monster
+K:277:0x00:0x2D
+
+# Confuse Monster
+K:278:0x00:0x2D
+
+# Sleep Monster
+K:279:0x00:0x2D
+
+# Drain Life
+K:280:0x00:0x2D
+
+# Trap/Door Destruction
+K:281:0x00:0x2D
+
+# Magic Missile
+K:282:0x00:0x2D
+
+# Clone Monster
+K:283:0x00:0x2D
+
+# Scare Monster
+K:284:0x00:0x2D
+
+# Teleport Other
+K:285:0x00:0x2D
+
+# Disarming
+K:286:0x00:0x2D
+
+# Lightning Balls
+K:287:0x00:0x2D
+
+# Cold Balls
+K:288:0x00:0x2D
+
+# Fire Balls
+K:289:0x00:0x2D
+
+# Stinking Cloud
+K:290:0x00:0x2D
+
+# Acid Balls
+K:291:0x00:0x2D
+
+# Wonder
+K:292:0x00:0x2D
+
+# Acid Bolts
+K:294:0x00:0x2D
+
+# Dragon's Flame
+K:295:0x00:0x2D
+
+# Dragon's Frost
+K:296:0x00:0x2D
+
+# Dragon's Breath
+K:297:0x00:0x2D
+
+# Annihilation
+K:298:0x00:0x2D
+
+# Trap Location
+K:300:0x00:0x5F
+
+# Treasure Location
+K:301:0x00:0x5F
+
+# Object Location
+K:302:0x00:0x5F
+
+# Teleportation
+K:303:0x00:0x5F
+
+# Earthquakes
+K:304:0x00:0x5F
+
+# Summoning
+K:305:0x00:0x5F
+
+# Light
+K:306:0x00:0x5F
+
+# *Destruction*
+K:307:0x00:0x5F
+
+# Starlight
+K:308:0x00:0x5F
+
+# Haste Monsters
+K:309:0x00:0x5F
+
+# Slow Monsters
+K:310:0x00:0x5F
+
+# Sleep Monsters
+K:311:0x00:0x5F
+
+# Cure Light Wounds
+K:312:0x00:0x5F
+
+# Detect Invisible
+K:313:0x00:0x5F
+
+# Speed
+K:314:0x00:0x5F
+
+# Slowness
+K:315:0x00:0x5F
+
+# Door/Stair Location
+K:316:0x00:0x5F
+
+# Remove Curse
+K:317:0x00:0x5F
+
+# Detect Evil
+K:318:0x00:0x5F
+
+# Curing
+K:319:0x00:0x5F
+
+# Dispel Evil
+K:320:0x00:0x5F
+
+# Probing
+K:321:0x00:0x5F
+
+# Darkness
+K:322:0x00:0x5F
+
+# Genocide
+K:323:0x00:0x5F
+
+# Power
+K:324:0x00:0x5F
+
+# the Magi
+K:325:0x00:0x5F
+
+# Perception
+K:326:0x00:0x5F
+
+# Holiness
+K:327:0x00:0x5F
+
+# Enlightenment
+K:328:0x00:0x5F
+
+# Healing
+K:329:0x00:0x5F
+
+# [Magic for Beginners]
+K:330:0x89:0x80
+
+# [Conjurings and Tricks]
+K:331:0x89:0x81
+
+# [Incantations and Illusions]
+K:332:0x89:0x82
+
+# [Sorcery and Evocations]
+K:333:0x89:0x83
+
+# [Beginners Handbook]
+K:334:0x89:0x89
+
+# [Words of Wisdom]
+K:335:0x89:0x8A
+
+# [Chants and Blessings]
+K:336:0x89:0x8B
+
+# [Exorcism and Dispelling]
+K:337:0x89:0x8C
+
+# & Small wooden chest~
+K:338:0x8A:0x80
+
+# & Large wooden chest~
+K:339:0x8A:0x81
+
+# & Small iron chest~
+K:340:0x8A:0x82
+
+# & Large iron chest~
+K:341:0x8A:0x83
+
+# & Small steel chest~
+K:342:0x8A:0x84
+
+# & Large steel chest~
+K:343:0x8A:0x85
+
+# & Ruined chest~
+K:344:0x8A:0x86
+
+# & Iron Spike~
+K:345:0x8A:0x98
+
+# & Wooden Torch~
+K:346:0x8A:0x9A
+
+# & Brass Lantern~
+K:347:0x8A:0x99
+
+# & Flask~ of oil
+K:348:0x8A:0x97
+
+# & Empty Bottle~
+K:349:0x8A:0x96
+
+# Door/Stair Location
+K:351:0x00:0x2D
+
+# Trap Location
+K:352:0x00:0x2D
+
+# Probing
+K:353:0x00:0x2D
+
+# Recall
+K:354:0x00:0x2D
+
+# Illumination
+K:355:0x00:0x2D
+
+# Light
+K:356:0x00:0x2D
+
+# Lightning Bolts
+K:357:0x00:0x2D
+
+# Frost Bolts
+K:358:0x00:0x2D
+
+# Fire Bolts
+K:359:0x00:0x2D
+
+# Polymorph
+K:360:0x00:0x2D
+
+# Slow Monster
+K:361:0x00:0x2D
+
+# Sleep Monster
+K:362:0x00:0x2D
+
+# Drain Life
+K:363:0x00:0x2D
+
+# Teleport Other
+K:364:0x00:0x2D
+
+# Disarming
+K:365:0x00:0x2D
+
+# Lightning Balls
+K:366:0x00:0x2D
+
+# Cold Balls
+K:367:0x00:0x2D
+
+# Fire Balls
+K:368:0x00:0x2D
+
+# Acid Balls
+K:369:0x00:0x2D
+
+# Acid Bolts
+K:370:0x00:0x2D
+
+# Enlightenment
+K:371:0x00:0x2D
+
+# Perception
+K:372:0x00:0x2D
+
+# Curing
+K:373:0x00:0x2D
+
+# Healing
+K:374:0x00:0x2D
+
+# Detection
+K:375:0x00:0x2D
+
+# Restoration
+K:376:0x00:0x2D
+
+# Speed
+K:377:0x00:0x2D
+
+# [Resistances of Scarabtarices]
+K:379:0x89:0x84
+
+# [Raal's Tome of Destruction]
+K:380:0x89:0x85
+
+# [Mordenkainen's Escapes]
+K:381:0x89:0x86
+
+# [Tenser's Transformations]
+K:382:0x89:0x87
+
+# [Kelek's Grimoire of Power]
+K:383:0x89:0x88
+
+# [Ethereal Openings]
+K:384:0x89:0x8D
+
+# [Godly Insights]
+K:385:0x89:0x8E
+
+# [Purifications and Healing]
+K:386:0x89:0x8F
+
+# [Holy Infusions]
+K:387:0x89:0x90
+
+# [Wrath of God]
+K:388:0x89:0x91
+
+# & Shard~ of Pottery
+K:389:0x8A:0xA2
+
+# & Broken Stick~
+K:390:0x8A:0xAA
+
+# & Broken Skull~
+K:391:0x8A:0xAB
+
+# & Broken Bone~
+K:392:0x8A:0xAC
+
+# & Canine Skeleton~
+K:393:0x8A:0xB1
+
+# & Rodent Skeleton~
+K:394:0x8A:0xB2
+
+# & Human Skeleton~
+K:395:0x8A:0xAD
+
+# & Dwarf Skeleton~
+K:396:0x8A:0xAF
+
+# & Elf Skeleton~
+K:397:0x8A:0xAE
+
+# & Gnome Skeleton~
+K:398:0x8A:0xB0
+
+# Black Dragon Scale Mail~
+K:400:0x83:0xBB
+
+# Blue Dragon Scale Mail~
+K:401:0x83:0xB9
+
+# White Dragon Scale Mail~
+K:402:0x83:0xBA
+
+# Red Dragon Scale Mail~
+K:403:0x83:0xBC
+
+# Green Dragon Scale Mail~
+K:404:0x83:0xBD
+
+# Multi-Hued Dragon Scale Mail~
+K:405:0x83:0xC4
+
+# Pseudo-Dragon Scale Mail~
+K:406:0x83:0xC0
+
+# Law Dragon Scale Mail~
+K:407:0x83:0xC2
+
+# Bronze Dragon Scale Mail~
+K:408:0x83:0xBE
+
+# Gold Dragon Scale Mail~
+K:409:0x83:0xBF
+
+# Chaos Dragon Scale Mail~
+K:410:0x83:0xC1
+
+# Balance Dragon Scale Mail~
+K:411:0x83:0xC3
+
+# Power Dragon Scale Mail~
+K:412:0x83:0xC5
+
+# Death
+K:415:0x00:0x21
+
+# Ruination
+K:416:0x00:0x21
+
+# Detonations
+K:417:0x00:0x21
+
+# Augmentation
+K:418:0x00:0x21
+
+# *Healing*
+K:419:0x00:0x21
+
+# Life
+K:420:0x00:0x21
+
+# Self Knowledge
+K:421:0x00:0x21
+
+# *Enlightenment*
+K:422:0x00:0x21
+
+# ESP
+K:423:0x82:0x80
+
+# Resistance
+K:424:0x82:0x80
+
+# Regeneration
+K:425:0x82:0x80
+
+# Devotion
+K:426:0x82:0x80
+
+# Weaponmastery
+K:427:0x82:0x80
+
+# Trickery
+K:428:0x82:0x80
+
+# Infravision
+K:429:0x82:0x80
+
+# Resist Lightning
+K:430:0x82:0x80
+
+# Lightning
+K:431:0x82:0x80
+
+# & Mithril Shot~
+K:437:0x82:0x80
+
+# & Silver Arrow~
+K:438:0x82:0x80
+
+# & Silver Bolt~
+K:439:0x82:0x80
+
+# copper
+K:480:0x8A:0x87
+
+# copper
+K:481:0x8A:0x87
+
+# copper
+K:482:0x8A:0x87
+
+# silver
+K:483:0x8A:0x88
+
+# silver
+K:484:0x8A:0x88
+
+# silver
+K:485:0x8A:0x88
+
+# garnets
+K:486:0x8A:0x8C
+
+# garnets
+K:487:0x8A:0x8C
+
+# gold
+K:488:0x8A:0x89
+
+# gold
+K:489:0x8A:0x89
+
+# gold
+K:490:0x8A:0x89
+
+# opals
+K:491:0x8A:0x8D
+
+# sapphires
+K:492:0x8A:0x8E
+
+# rubies
+K:493:0x8A:0x8F
+
+# diamonds
+K:494:0x8A:0x90
+
+# emeralds
+K:495:0x8A:0x91
+
+# mithril
+K:496:0x8A:0x8A
+
+# adamantite
+K:497:0x8A:0x8B
+
+# & Mighty Hammer~
+K:498:0x8D:0xB0
+
+# & Massive Iron Crown~
+K:499:0x83:0x92
+
+# & Phial~
+K:500:0x8A:0xB3
+
+# & Star~
+K:501:0x8A:0xB4
+
+# & Arkenstone~
+K:502:0x8A:0xB5
+
+# & Amulet~
+K:503:0x88:0xA6
+
+# & Amulet~
+K:504:0x88:0x9F
+
+# & Necklace~
+K:505:0x88:0xA5
+
+# & Ring~
+K:506:0x88:0x95
+
+# & Ring~
+K:507:0x88:0x95
+
+# & Ring~
+K:508:0x88:0x96
+
+# & Ring~
+K:509:0x88:0x93
+
+# & Ring~
+K:510:0x88:0x94
+
+# & Ring~
+K:511:0x88:0x97
+
+# & Palantir~
+K:512:0x0B:0x7E
+
+# & Elfstone~
+K:513:0x05:0x22
+
+# & Jewel~
+K:514:0x01:0x22
+
+
+#:Group ball
+# XXX1
+S:0x01:0x84/0x80
+# arrow
+S:0x02:0x84/0xc6
+# missile
+S:0x03:0x84/0xc6
+# mana
+S:0x04:0x84/0xc3
+# holy_orb
+S:0x05:0x84/0xc6
+# light_weak
+S:0x06:0x84/0xc2
+# dark_weak
+S:0x07:0x84/0xc7
+# water
+S:0x08:0x84/0xbe
+# plasma
+S:0x09:0x84/0xc4
+# meteor
+S:0x0a:0x84/0xc6
+# ice
+S:0x0b:0x84/0xc5
+# gravity
+S:0x0c:0x84/0xd6
+# inertia
+S:0x0d:0x84/0xd6
+# force
+S:0x0e:0x84/0xd6
+# time
+S:0x0f:0x84/0xd6
+# acid
+S:0x10:0x84/0xbd
+# electricity
+S:0x11:0x84/0xc2
+# fire
+S:0x12:0x84/0xbc
+# cold
+S:0x13:0x84/0xbf
+# poison
+S:0x14:0x84/0xbd
+# XXX2
+S:0x15:0x84/0x90
+# light
+S:0x16:0x84/0xc2
+# dark
+S:0x17:0x84/0xc7
+# XXX3
+S:0x18:0x84/0x88
+# confusion
+S:0x19:0x84/0xd6
+# sound
+S:0x1a:0x84/0xc6
+# shard
+S:0x1b:0x84/0xc0
+# nexus
+S:0x1c:0x84/0xd6
+# nether
+S:0x1d:0x84/0xc7
+# chaos
+S:0x1e:0x84/0xc3
+# disenchant
+S:0x1f:0x84/0xd6
+# XXX4
+S:0x20:0x84/0xac
+# kill_wall
+S:0x21:0x84/0xc6
+# kill_door
+S:0x22:0x84/0xc6
+# kill_trap
+S:0x23:0x84/0xc6
+# make_wall
+S:0x24:0x84/0xc6
+# make_door
+S:0x25:0x84/0xc6
+# make_trap
+S:0x26:0x84/0xc6
+# xxx5
+S:0x27:0x84/0xc6
+# xxx6
+S:0x28:0x84/0xc6
+# away_undead
+S:0x29:0x84/0xc6
+# away_evil
+S:0x2a:0x84/0xc6
+# away_all
+S:0x2b:0x84/0xc6
+# turn_undead
+S:0x2c:0x84/0xc6
+# turn_evil
+S:0x2d:0x84/0xc6
+# turn_all
+S:0x2e:0x84/0xc6
+# disp_undead
+S:0x2f:0x84/0xc6
+# disp_evil
+S:0x30:0x84/0xc6
+# disp_all
+S:0x31:0x84/0xc6
+# xxx7
+S:0x32:0x84/0xc6
+# old_clone
+S:0x33:0x84/0xc6
+# old_poly
+S:0x34:0x84/0xc6
+# old_heal
+S:0x35:0x84/0xc6
+# old_speed
+S:0x36:0x84/0xc6
+# old_slow
+S:0x37:0x84/0xc6
+# old_conf
+S:0x38:0x84/0xc6
+# old_sleep
+S:0x39:0x84/0xc6
+# old_drain
+S:0x3a:0x84/0xc6
+# xxx8
+S:0x3b:0x84/0xc6
+
+#:Group bolt
+# XXX1
+S:0x41:0x84/0x80
+# arrow
+S:0x42:0x84/0x80
+# missile
+S:0x43:0x84/0x80
+# mana
+S:0x44:0x84/0xa0
+# holy_orb
+S:0x45:0x84/0x80
+# light_weak
+S:0x46:0x84/0x9c
+# dark_weak
+S:0x47:0x84/0x88
+# water
+S:0x48:0x84/0x94
+# plasma
+S:0x49:0x84/0xa8
+# meteor
+S:0x4a:0x84/0x84
+# ice
+S:0x4b:0x84/0x98
+# gravity
+S:0x4c:0x84/0xac
+# inertia
+S:0x4d:0x84/0xac
+# force
+S:0x4e:0x84/0xac
+# time
+S:0x4f:0x84/0xac
+# acid
+S:0x50:0x84/0x90
+# electricity
+S:0x51:0x84/0xa4
+# fire
+S:0x52:0x84/0x8c
+# cold
+S:0x53:0x84/0x98
+# poison
+S:0x54:0x84/0x90
+# XXX2
+S:0x55:0x84/0x90
+# light
+S:0x56:0x84/0x9c
+# dark
+S:0x57:0x84/0x88
+# XXX3
+S:0x58:0x84/0x88
+# confusion
+S:0x59:0x84/0xac
+# sound
+S:0x5a:0x84/0x84
+# shard
+S:0x5b:0x84/0xa8
+# nexus
+S:0x5c:0x84/0xac
+# nether
+S:0x5d:0x84/0x88
+# chaos
+S:0x5e:0x84/0xa0
+# disenchant
+S:0x5f:0x84/0xac
+# XXX4
+S:0x60:0x84/0xac
+# kill_wall
+S:0x61:0x84/0x80
+# kill_door
+S:0x62:0x84/0x80
+# kill_trap
+S:0x63:0x84/0x80
+# make_wall
+S:0x64:0x84/0x80
+# make_door
+S:0x65:0x84/0x80
+# make_trap
+S:0x66:0x84/0x80
+# xxx5
+S:0x67:0x84/0x80
+# xxx6
+S:0x68:0x84/0x80
+# away_undead
+S:0x69:0x84/0x80
+# away_evil
+S:0x6a:0x84/0x80
+# away_all
+S:0x6b:0x84/0x80
+# turn_undead
+S:0x6c:0x84/0x80
+# turn_evil
+S:0x6d:0x84/0x80
+# turn_all
+S:0x6e:0x84/0x80
+# disp_undead
+S:0x6f:0x84/0x80
+# disp_evil
+S:0x70:0x84/0x80
+# disp_all
+S:0x71:0x84/0x80
+# xxx7
+S:0x72:0x84/0x80
+# old_clone
+S:0x73:0x84/0x80
+# old_poly
+S:0x74:0x84/0x80
+# old_heal
+S:0x75:0x84/0x80
+# old_speed
+S:0x76:0x84/0x80
+# old_slow
+S:0x77:0x84/0x80
+# old_conf
+S:0x78:0x84/0x80
+# old_sleep
+S:0x79:0x84/0x80
+# old_drain
+S:0x7a:0x84/0x80
+# xxx8
+S:0x7b:0x84/0x80
+
+#:Group ammo
+# arrow 4 108
+# bolt 4 116
+#:
+
+# Load the special player pictures
+%:xtra-dvg.prf
+
+# Load the flavored objects
+%:flvr-dvg.prf
+
diff -ur angband-3.0.1.orig/lib/pref/graf-x11.prf angband-3.0.1.bigtile/lib/pref/graf-x11.prf
--- angband-3.0.1.orig/lib/pref/graf-x11.prf	Sat Jul 13 18:20:39 2002
+++ angband-3.0.1.bigtile/lib/pref/graf-x11.prf	Sun Jul 14 06:48:41 2002
@@ -36,4 +36,8 @@
 ?:[EQU $GRAF new]
 %:graf-new.prf
 
+# David Gervais tiles
+?:[EQU $GRAF david]
+%:graf-dvg.prf
+
 ?:1
diff -ur angband-3.0.1.orig/lib/pref/xtra-dvg.prf angband-3.0.1.bigtile/lib/pref/xtra-dvg.prf
--- angband-3.0.1.orig/lib/pref/xtra-dvg.prf	Sun Jul 14 06:56:15 2002
+++ angband-3.0.1.bigtile/lib/pref/xtra-dvg.prf	Sun Jul 14 06:48:41 2002
@@ -0,0 +1,151 @@
+# File: xtra-new.prf
+
+#
+# This file defines special attr/char mappings for use in "graphics" mode
+#
+# Edited for use with David Gervais's 32x32 tiles by Mogami.
+#
+# See "lib/help/command.txt" and "src/files.c" for more information.
+#
+
+
+##### Remap the player icon #####
+
+?:[AND [EQU $CLASS Warrior] [EQU $RACE Human] ]
+R:0:0x86/0x87
+?:[AND [EQU $CLASS Warrior] [EQU $RACE Half-Elf] ]
+R:0:0x86/0x8f
+?:[AND [EQU $CLASS Warrior] [EQU $RACE Elf] ]
+R:0:0x86/0x97
+?:[AND [EQU $CLASS Warrior] [EQU $RACE Hobbit] ]
+R:0:0x86/0x9f
+?:[AND [EQU $CLASS Warrior] [EQU $RACE Gnome] ]
+R:0:0x86/0xc7
+?:[AND [EQU $CLASS Warrior] [EQU $RACE Dwarf] ]
+R:0:0x86/0xaf
+?:[AND [EQU $CLASS Warrior] [EQU $RACE Half-Orc] ]
+R:0:0x86/0xb7
+?:[AND [EQU $CLASS Warrior] [EQU $RACE Half-Troll] ]
+R:0:0x86/0xbf
+?:[AND [EQU $CLASS Warrior] [EQU $RACE Dunadan] ]
+R:0:0x86/0xa7
+?:[AND [EQU $CLASS Warrior] [EQU $RACE High-Elf] ]
+R:0:0x86/0xcf
+?:[AND [EQU $CLASS Warrior] [EQU $RACE Kobold] ]
+R:0:0x86/0xd7
+
+?:[AND [EQU $CLASS Mage] [EQU $RACE Human] ]
+R:0:0x86/0x81
+?:[AND [EQU $CLASS Mage] [EQU $RACE Half-Elf] ]
+R:0:0x86/0x88
+?:[AND [EQU $CLASS Mage] [EQU $RACE Elf] ]
+R:0:0x86/0x91
+?:[AND [EQU $CLASS Mage] [EQU $RACE Hobbit] ]
+R:0:0x86/0x98
+?:[AND [EQU $CLASS Mage] [EQU $RACE Gnome] ]
+R:0:0x86/0xc1
+?:[AND [EQU $CLASS Mage] [EQU $RACE Dwarf] ]
+R:0:0x86/0xa8
+?:[AND [EQU $CLASS Mage] [EQU $RACE Half-Orc] ]
+R:0:0x86/0xb1
+?:[AND [EQU $CLASS Mage] [EQU $RACE Half-Troll] ]
+R:0:0x86/0xb8
+?:[AND [EQU $CLASS Mage] [EQU $RACE Dunadan] ]
+R:0:0x86/0xa1
+?:[AND [EQU $CLASS Mage] [EQU $RACE High-Elf] ]
+R:0:0x86/0xc8
+?:[AND [EQU $CLASS Mage] [EQU $RACE Kobold] ]
+R:0:0x86/0xd1
+
+?:[AND [EQU $CLASS Priest] [EQU $RACE Human] ]
+R:0:0x86/0x84
+?:[AND [EQU $CLASS Priest] [EQU $RACE Half-Elf] ]
+R:0:0x86/0x8c
+?:[AND [EQU $CLASS Priest] [EQU $RACE Elf] ]
+R:0:0x86/0x94
+?:[AND [EQU $CLASS Priest] [EQU $RACE Hobbit] ]
+R:0:0x86/0x9c
+?:[AND [EQU $CLASS Priest] [EQU $RACE Gnome] ]
+R:0:0x86/0xc4
+?:[AND [EQU $CLASS Priest] [EQU $RACE Dwarf] ]
+R:0:0x86/0xac
+?:[AND [EQU $CLASS Priest] [EQU $RACE Half-Orc] ]
+R:0:0x86/0xb4
+?:[AND [EQU $CLASS Priest] [EQU $RACE Half-Troll] ]
+R:0:0x86/0xbc
+?:[AND [EQU $CLASS Priest] [EQU $RACE Dunadan] ]
+R:0:0x86/0xa4
+?:[AND [EQU $CLASS Priest] [EQU $RACE High-Elf] ]
+R:0:0x86/0xcc
+?:[AND [EQU $CLASS Priest] [EQU $RACE Kobold] ]
+R:0:0x86/0xd4
+
+?:[AND [EQU $CLASS Rogue] [EQU $RACE Human] ]
+R:0:0x86/0x86
+?:[AND [EQU $CLASS Rogue] [EQU $RACE Half-Elf] ]
+R:0:0x86/0x8e
+?:[AND [EQU $CLASS Rogue] [EQU $RACE Elf] ]
+R:0:0x86/0x96
+?:[AND [EQU $CLASS Rogue] [EQU $RACE Hobbit] ]
+R:0:0x86/0x9e
+?:[AND [EQU $CLASS Rogue] [EQU $RACE Gnome] ]
+R:0:0x86/0xc6
+?:[AND [EQU $CLASS Rogue] [EQU $RACE Dwarf] ]
+R:0:0x86/0xae
+?:[AND [EQU $CLASS Rogue] [EQU $RACE Half-Orc] ]
+R:0:0x86/0xb6
+?:[AND [EQU $CLASS Rogue] [EQU $RACE Half-Troll] ]
+R:0:0x86/0xbe
+?:[AND [EQU $CLASS Rogue] [EQU $RACE Dunadan] ]
+R:0:0x86/0xa6
+?:[AND [EQU $CLASS Rogue] [EQU $RACE High-Elf] ]
+R:0:0x86/0xce
+?:[AND [EQU $CLASS Rogue] [EQU $RACE Kobold] ]
+R:0:0x86/0xd6
+
+?:[AND [EQU $CLASS Ranger] [EQU $RACE Human] ]
+R:0:0x86/0x85
+?:[AND [EQU $CLASS Ranger] [EQU $RACE Half-Elf] ]
+R:0:0x86/0x8d
+?:[AND [EQU $CLASS Ranger] [EQU $RACE Elf] ]
+R:0:0x86/0x95
+?:[AND [EQU $CLASS Ranger] [EQU $RACE Hobbit] ]
+R:0:0x86/0x9d
+?:[AND [EQU $CLASS Ranger] [EQU $RACE Gnome] ]
+R:0:0x86/0xc5
+?:[AND [EQU $CLASS Ranger] [EQU $RACE Dwarf] ]
+R:0:0x86/0xad
+?:[AND [EQU $CLASS Ranger] [EQU $RACE Half-Orc] ]
+R:0:0x86/0xb5
+?:[AND [EQU $CLASS Ranger] [EQU $RACE Half-Troll] ]
+R:0:0x86/0xbd
+?:[AND [EQU $CLASS Ranger] [EQU $RACE Dunadan] ]
+R:0:0x86/0xa5
+?:[AND [EQU $CLASS Ranger] [EQU $RACE High-Elf] ]
+R:0:0x86/0xcd
+?:[AND [EQU $CLASS Ranger] [EQU $RACE Kobold] ]
+R:0:0x86/0xd5
+
+?:[AND [EQU $CLASS Paladin] [EQU $RACE Human] ]
+R:0:0x86/0x83
+?:[AND [EQU $CLASS Paladin] [EQU $RACE Half-Elf] ]
+R:0:0x86/0x8b
+?:[AND [EQU $CLASS Paladin] [EQU $RACE Elf] ]
+R:0:0x86/0x93
+?:[AND [EQU $CLASS Paladin] [EQU $RACE Hobbit] ]
+R:0:0x86/0x9b
+?:[AND [EQU $CLASS Paladin] [EQU $RACE Gnome] ]
+R:0:0x86/0xc3
+?:[AND [EQU $CLASS Paladin] [EQU $RACE Dwarf] ]
+R:0:0x86/0xab
+?:[AND [EQU $CLASS Paladin] [EQU $RACE Half-Orc] ]
+R:0:0x86/0xb3
+?:[AND [EQU $CLASS Paladin] [EQU $RACE Half-Troll] ]
+R:0:0x86/0xbb
+?:[AND [EQU $CLASS Paladin] [EQU $RACE Dunadan] ]
+R:0:0x86/0xa3
+?:[AND [EQU $CLASS Paladin] [EQU $RACE High-Elf] ]
+R:0:0x86/0xcb
+?:[AND [EQU $CLASS Paladin] [EQU $RACE Kobold] ]
+R:0:0x86/0xd3
+
Only in angband-3.0.1.bigtile/lib/save: 500.Mogami
Only in angband-3.0.1.bigtile/lib/save: Makefile
Only in angband-3.0.1.bigtile/lib/script: Makefile
Only in angband-3.0.1.bigtile/lib/user: Makefile
Only in angband-3.0.1.bigtile/lib/xtra: Makefile
Only in angband-3.0.1.bigtile/lib/xtra: graf
Only in angband-3.0.1.bigtile/src: Makefile
Only in angband-3.0.1.bigtile/src: TAGS
Only in angband-3.0.1.bigtile/src: angband
diff -ur angband-3.0.1.orig/src/angband.rc angband-3.0.1.bigtile/src/angband.rc
--- angband-3.0.1.orig/src/angband.rc	Sat Aug  5 23:59:30 2000
+++ angband-3.0.1.bigtile/src/angband.rc	Sun Jul 14 06:48:41 2002
@@ -110,6 +110,7 @@
 			MENUITEM "&None", 400
 			MENUITEM "&Old tiles", 401
 			MENUITEM "&Adam Bolt's tiles", 402
+                        MENUITEM "&Bigtile mode", 409
 		}
 
 		MENUITEM "&Sound", 410
Only in angband-3.0.1.bigtile/src: autoconf.h
Only in angband-3.0.1.bigtile/src: birth.o
diff -ur angband-3.0.1.orig/src/cave.c angband-3.0.1.bigtile/src/cave.c
--- angband-3.0.1.orig/src/cave.c	Fri Jul 12 06:09:51 2002
+++ angband-3.0.1.bigtile/src/cave.c	Sun Jul 14 06:48:41 2002
@@ -404,8 +404,9 @@
  */
 bool feat_supports_lighting(byte feat)
 {
-	if ((feat >= FEAT_TRAP_HEAD) && (feat <= FEAT_TRAP_TAIL))
-		return TRUE;
+        if (arg_graphics != GRAPHICS_DAVID_GERVAIS &&
+            (feat >= FEAT_TRAP_HEAD) && (feat <= FEAT_TRAP_TAIL))
+                return TRUE;
 
 	switch (feat)
 	{
@@ -618,7 +619,11 @@
 	int floor_num = 0;
 
 	/* Hack -- Assume that "new" means "Adam Bolt Tiles" */
+#if 0
 	bool graf_new = (use_graphics && streq(ANGBAND_GRAF, "new"));
+#else
+	bool graf_new = (use_graphics && !streq(ANGBAND_GRAF, "old"));
+#endif
 
 	/* Monster/Player */
 	m_idx = cave_m_idx[y][x];
@@ -666,7 +671,10 @@
 						if (graf_new)
 						{
 							/* Use a brightly lit tile */
-							c += 2;
+                                                        if (arg_graphics == GRAPHICS_DAVID_GERVAIS)
+                                                                c -= 1;
+                                                        else
+                                                                c += 2;
 						}
 						else
 						{
@@ -807,7 +815,10 @@
 					if (graf_new)
 					{
 						/* Use a brightly lit tile */
-						c += 2;
+                                                if (arg_graphics == GRAPHICS_DAVID_GERVAIS)
+                                                        c -= 1;
+                                                else
+                                                        c += 2;
 					}
 					else
 					{
@@ -1039,6 +1050,9 @@
 	/* Location in window */
 	vx = kx + COL_MAP;
 
+	if (use_bigtile)
+		vx += kx;
+
 	/* Go there */
 	(void)Term_gotoxy(vx, vy);
 }
@@ -1077,8 +1091,19 @@
 	/* Location in window */
 	vx = kx + COL_MAP;
 
+	if (use_bigtile)
+		vx += kx;
+
 	/* Hack -- Queue it */
 	Term_queue_char(vx, vy, a, c, 0, 0);
+
+	if (use_bigtile)
+	{
+                if (a & 0x80)
+			Term_draw(vx+1, vy, 255, -1);
+                else
+			Term_draw(vx+1, vy, TERM_WHITE, ' ');
+	}
 }
 
 
@@ -1196,11 +1221,25 @@
 	/* Location in window */
 	vx = kx + COL_MAP;
 
+	if (use_bigtile)
+		vx += kx;
+
 	/* Hack -- redraw the grid */
 	map_info(y, x, &a, &c, &ta, &tc);
 
 	/* Hack -- Queue it */
 	Term_queue_char(vx, vy, a, c, ta, tc);
+
+        if (use_bigtile)
+        {
+                vx++;
+
+                /* Mega-Hack : Queue dummy char */
+                if (a & 0x80)
+                        Term_queue_char(vx, vy, 255, -1, 0, 0);
+                else
+                        Term_queue_char(vx, vy, TERM_WHITE, ' ', TERM_WHITE, ' ');
+        }
 }
 
 
@@ -1224,13 +1263,13 @@
 	int ty, tx;
 
 	/* Assume screen */
-	ty = ROW_MAP + SCREEN_HGT;
-	tx = COL_MAP + SCREEN_WID;
+	ty = p_ptr->wy + SCREEN_HGT;
+	tx = p_ptr->wx + SCREEN_WID;
 
 	/* Dump the map */
-	for (y = p_ptr->wy, vy = ROW_MAP; vy < ty; vy++, y++)
+	for (y = p_ptr->wy, vy = ROW_MAP; y < ty; vy++, y++)
 	{
-		for (x = p_ptr->wx, vx = COL_MAP; vx < tx; vx++, x++)
+		for (x = p_ptr->wx, vx = COL_MAP; x < tx; vx++, x++)
 		{
 			/* Check bounds */
 			if (!in_bounds(y, x)) continue;
@@ -1240,6 +1279,17 @@
 
 			/* Hack -- Queue it */
 			Term_queue_char(vx, vy, a, c, ta, tc);
+
+			if (use_bigtile)
+			{
+				vx++;
+
+				/* Mega-Hack : Queue dummy char */
+				if (a & 0x80)
+					Term_queue_char(vx, vy, 255, -1, 0, 0);
+				else
+					Term_queue_char(vx, vy, TERM_WHITE, ' ', TERM_WHITE, ' ');
+			}
 		}
 	}
 }
@@ -1447,6 +1497,9 @@
 			row = (y * map_hgt / dungeon_hgt);
 			col = (x * map_wid / dungeon_wid);
 
+			if (use_bigtile)
+				col = col & ~1;
+
 			/* Get the attr/char at that map location */
 			map_info(y, x, &ta, &tc, &ta, &tc);
 
@@ -1459,6 +1512,14 @@
 				/* Add the character */
 				Term_putch(col + 1, row + 1, ta, tc);
 
+				if (use_bigtile)
+				{
+					if (ta & 0x80)
+						Term_putch(col + 2, row + 1, 255, -1);
+					else
+						Term_putch(col + 2, row + 1, TERM_WHITE, ' ');
+				}
+
 				/* Save priority */
 				mp[row][col] = tp;
 			}
@@ -1470,6 +1531,8 @@
 	row = (py * map_hgt / dungeon_hgt);
 	col = (px * map_wid / dungeon_wid);
 
+	if (use_bigtile)
+		col = col & ~1;
 
 	/*** Make sure the player is visible ***/
 
Only in angband-3.0.1.bigtile/src: cave.c.orig
Only in angband-3.0.1.bigtile/src: cave.o
Only in angband-3.0.1.bigtile/src: cmd1.o
Only in angband-3.0.1.bigtile/src: cmd2.o
Only in angband-3.0.1.bigtile/src: cmd3.o
diff -ur angband-3.0.1.orig/src/cmd4.c angband-3.0.1.bigtile/src/cmd4.c
--- angband-3.0.1.orig/src/cmd4.c	Mon Jul  1 02:58:56 2002
+++ angband-3.0.1.bigtile/src/cmd4.c	Sun Jul 14 06:48:41 2002
@@ -1996,12 +1996,26 @@
 				            format("Default attr/char = %3u / %3u", da, dc));
 				Term_putstr(40, 19, -1, TERM_WHITE, "<< ? >>");
 				Term_putch(43, 19, da, dc);
+				if (use_bigtile)
+				{
+					if (da & 0x80)
+						Term_putch(44, 19, 255, -1);
+					else
+						Term_putch(44, 19, 0, ' ');
+				}
 
 				/* Label the Current values */
 				Term_putstr(10, 20, -1, TERM_WHITE,
 				            format("Current attr/char = %3u / %3u", ca, cc));
 				Term_putstr(40, 20, -1, TERM_WHITE, "<< ? >>");
 				Term_putch(43, 20, ca, cc);
+				if (use_bigtile)
+				{
+					if (ca & 0x80)
+						Term_putch(44, 20, 255, -1);
+					else
+						Term_putch(44, 20, 0, ' ');
+				}
 
 				/* Prompt */
 				Term_putstr(0, 22, -1, TERM_WHITE,
@@ -2051,12 +2065,26 @@
 				            format("Default attr/char = %3d / %3d", da, dc));
 				Term_putstr(40, 19, -1, TERM_WHITE, "<< ? >>");
 				Term_putch(43, 19, da, dc);
+				if (use_bigtile)
+				{
+					if (da & 0x80)
+						Term_putch(44, 19, 255, -1);
+					else
+						Term_putch(44, 19, 0, ' ');
+				}
 
 				/* Label the Current values */
 				Term_putstr(10, 20, -1, TERM_WHITE,
 				            format("Current attr/char = %3d / %3d", ca, cc));
 				Term_putstr(40, 20, -1, TERM_WHITE, "<< ? >>");
 				Term_putch(43, 20, ca, cc);
+				if (use_bigtile)
+				{
+					if (ca & 0x80)
+						Term_putch(44, 20, 255, -1);
+					else
+						Term_putch(44, 20, 0, ' ');
+				}
 
 				/* Prompt */
 				Term_putstr(0, 22, -1, TERM_WHITE,
@@ -2106,12 +2134,26 @@
 				            format("Default attr/char = %3d / %3d", da, dc));
 				Term_putstr(40, 19, -1, TERM_WHITE, "<< ? >>");
 				Term_putch(43, 19, da, dc);
+				if (use_bigtile)
+				{
+					if (da & 0x80)
+						Term_putch(44, 19, 255, -1);
+					else
+						Term_putch(44, 19, 0, ' ');
+				}
 
 				/* Label the Current values */
 				Term_putstr(10, 20, -1, TERM_WHITE,
 				            format("Current attr/char = %3d / %3d", ca, cc));
 				Term_putstr(40, 20, -1, TERM_WHITE, "<< ? >>");
 				Term_putch(43, 20, ca, cc);
+				if (use_bigtile)
+				{
+					if (ca & 0x80)
+						Term_putch(44, 20, 255, -1);
+					else
+						Term_putch(44, 20, 0, ' ');
+				}
 
 				/* Prompt */
 				Term_putstr(0, 22, -1, TERM_WHITE,
@@ -2161,12 +2203,27 @@
 				            format("Default attr/char = %3d / %3d", da, dc));
 				Term_putstr(40, 19, -1, TERM_WHITE, "<< ? >>");
 				Term_putch(43, 19, da, dc);
+				Term_putch(43, 19, da, dc);
+				if (use_bigtile)
+				{
+					if (da & 0x80)
+						Term_putch(44, 19, 255, -1);
+					else
+						Term_putch(44, 19, 0, ' ');
+				}
 
 				/* Label the Current values */
 				Term_putstr(10, 20, -1, TERM_WHITE,
 				            format("Current attr/char = %3d / %3d", ca, cc));
 				Term_putstr(40, 20, -1, TERM_WHITE, "<< ? >>");
 				Term_putch(43, 20, ca, cc);
+				if (use_bigtile)
+				{
+					if (ca & 0x80)
+						Term_putch(44, 20, 255, -1);
+					else
+						Term_putch(44, 20, 0, ' ');
+				}
 
 				/* Prompt */
 				Term_putstr(0, 22, -1, TERM_WHITE,
Only in angband-3.0.1.bigtile/src: cmd4.o
Only in angband-3.0.1.bigtile/src: cmd5.o
Only in angband-3.0.1.bigtile/src: cmd6.o
diff -ur angband-3.0.1.orig/src/defines.h angband-3.0.1.bigtile/src/defines.h
--- angband-3.0.1.orig/src/defines.h	Sat Jul 13 18:20:40 2002
+++ angband-3.0.1.bigtile/src/defines.h	Sun Jul 14 06:48:41 2002
@@ -96,7 +96,7 @@
  * Number of grids in each panel (horizontally)
  * Must be a multiple of BLOCK_WID
  */
-#define PANEL_WID	33
+#define PANEL_WID	(use_bigtile ? 16 : 33)
 
 #define ROW_MAP			1
 #define COL_MAP			13
@@ -112,7 +112,7 @@
  * Number of grids in each screen (horizontally)
  * Must be a multiple of PANEL_WID (at least 2x)
  */
-#define SCREEN_WID	(Term->wid - COL_MAP - 1)
+#define SCREEN_WID	((Term->wid - COL_MAP - 1) / (use_bigtile ? 2 : 1))
 
 
 /*
@@ -2975,6 +2975,15 @@
 
 
 /*
+ * Available graphic modes
+ */
+#define GRAPHICS_NONE           0
+#define GRAPHICS_ORIGINAL       1
+#define GRAPHICS_ADAM_BOLT      2
+#define GRAPHICS_DAVID_GERVAIS  3
+
+
+/*
  * List of commands that will be auto-repeated
  *
  * ToDo: This string should be user-configurable.
Only in angband-3.0.1.bigtile/src: dungeon.o
diff -ur angband-3.0.1.orig/src/externs.h angband-3.0.1.bigtile/src/externs.h
--- angband-3.0.1.orig/src/externs.h	Sat Jul 13 18:20:40 2002
+++ angband-3.0.1.bigtile/src/externs.h	Sun Jul 14 06:48:41 2002
@@ -99,6 +99,7 @@
 extern s32b old_turn;
 extern bool use_sound;
 extern bool use_graphics;
+extern bool use_bigtile;
 extern s16b signal_count;
 extern bool msg_flag;
 extern bool inkey_base;
Only in angband-3.0.1.bigtile/src: files.o
Only in angband-3.0.1.bigtile/src: generate.o
Only in angband-3.0.1.bigtile/src: init1.o
Only in angband-3.0.1.bigtile/src: init2.o
Only in angband-3.0.1.bigtile/src: l-misc.o
Only in angband-3.0.1.bigtile/src: l-monst.o
Only in angband-3.0.1.bigtile/src: l-object.o
Only in angband-3.0.1.bigtile/src: l-player.o
Only in angband-3.0.1.bigtile/src: l-random.o
Only in angband-3.0.1.bigtile/src: l-spell.o
Only in angband-3.0.1.bigtile/src: l-ui.o
Only in angband-3.0.1.bigtile/src: load.o
Only in angband-3.0.1.bigtile/src/lua: Makefile
Only in angband-3.0.1.bigtile/src/lua: TAGS
Only in angband-3.0.1.bigtile/src/lua: lapi.o
Only in angband-3.0.1.bigtile/src/lua: lauxlib.o
Only in angband-3.0.1.bigtile/src/lua: lbaselib.o
Only in angband-3.0.1.bigtile/src/lua: lcode.o
Only in angband-3.0.1.bigtile/src/lua: ldblib.o
Only in angband-3.0.1.bigtile/src/lua: ldebug.o
Only in angband-3.0.1.bigtile/src/lua: ldo.o
Only in angband-3.0.1.bigtile/src/lua: lfunc.o
Only in angband-3.0.1.bigtile/src/lua: lgc.o
Only in angband-3.0.1.bigtile/src/lua: liblua.a
Only in angband-3.0.1.bigtile/src/lua: liolib.o
Only in angband-3.0.1.bigtile/src/lua: llex.o
Only in angband-3.0.1.bigtile/src/lua: lmem.o
Only in angband-3.0.1.bigtile/src/lua: lobject.o
Only in angband-3.0.1.bigtile/src/lua: lparser.o
Only in angband-3.0.1.bigtile/src/lua: lstate.o
Only in angband-3.0.1.bigtile/src/lua: lstring.o
Only in angband-3.0.1.bigtile/src/lua: lstrlib.o
Only in angband-3.0.1.bigtile/src/lua: ltable.o
Only in angband-3.0.1.bigtile/src/lua: ltm.o
Only in angband-3.0.1.bigtile/src/lua: lundump.o
Only in angband-3.0.1.bigtile/src/lua: lvm.o
Only in angband-3.0.1.bigtile/src/lua: lzio.o
Only in angband-3.0.1.bigtile/src/lua: tolua
Only in angband-3.0.1.bigtile/src/lua: tolua.o
Only in angband-3.0.1.bigtile/src/lua: tolua_bd.o
Only in angband-3.0.1.bigtile/src/lua: tolua_eh.o
Only in angband-3.0.1.bigtile/src/lua: tolua_gp.o
Only in angband-3.0.1.bigtile/src/lua: tolua_lb.o
Only in angband-3.0.1.bigtile/src/lua: tolua_rg.o
Only in angband-3.0.1.bigtile/src/lua: tolua_tm.o
Only in angband-3.0.1.bigtile/src/lua: tolua_tt.o
Only in angband-3.0.1.bigtile/src/lua: tolualua.o
Only in angband-3.0.1.bigtile/src: maid-x11.o
Only in angband-3.0.1.bigtile/src: main-cap.o
Only in angband-3.0.1.bigtile/src: main-gcu.o
Only in angband-3.0.1.bigtile/src: main-gtk.o
diff -ur angband-3.0.1.orig/src/main-mac.c angband-3.0.1.bigtile/src/main-mac.c
--- angband-3.0.1.orig/src/main-mac.c	Sat Jul  6 22:56:59 2002
+++ angband-3.0.1.bigtile/src/main-mac.c	Sun Jul 14 06:48:41 2002
@@ -1675,6 +1675,33 @@
 
 
 /*
+ * Low level graphics (Assumes valid input).
+ * Draw a "cursor" at (x,y), using a "yellow box".
+ * We are allowed to use "Term_what()" to determine
+ * the current screen contents (for inverting, etc).
+ */
+static errr Term_bigcurs_mac(int x, int y)
+{
+	Rect r;
+
+	term_data *td = (term_data*)(Term->data);
+
+	/* Set the color */
+	term_data_color(td, TERM_YELLOW);
+
+	/* Frame the grid */
+	r.left = x * td->tile_wid + td->size_ow1;
+	r.right = r.left + 2 * td->tile_wid;
+	r.top = y * td->tile_hgt + td->size_oh1;
+	r.bottom = r.top + td->tile_hgt;
+	FrameRect(&r);
+
+	/* Success */
+	return (0);
+}
+
+
+/*
  * Low level graphics (Assumes valid input)
  *
  * Erase "n" characters starting at (x,y)
@@ -1743,7 +1770,6 @@
 
 	/* Destination rectangle */
 	r2.left = x * td->tile_wid + td->size_ow1;
-	r2.right = r2.left + td->tile_wid;
 	r2.top = y * td->tile_hgt + td->size_oh1;
 	r2.bottom = r2.top + td->tile_hgt;
 
@@ -1758,6 +1784,18 @@
 		byte ta = tap[i];
 		char tc = tcp[i];
 
+		/* Second byte of bigtile */
+		if (use_bigtile && a == 255)
+		{
+			/* Advance */
+			r2.left += td->tile_wid;
+
+			continue;
+		}
+
+		/* Prepare right of rectangle now */
+		r2.right = r2.left + td->tile_wid;
+
 #ifdef ANGBAND_LITE_MAC
 
 		/* Nothing */
@@ -1797,6 +1835,8 @@
 			BackColor(whiteColor);
 			ForeColor(blackColor);
 
+			if (use_bigtile) r2.right += td->tile_wid;
+
 			/* Draw the picture */
 			CopyBits((BitMap*)frameP->framePix,
 					 &(td->w->portBits),
@@ -1844,7 +1884,6 @@
 
 		/* Advance */
 		r2.left += td->tile_wid;
-		r2.right += td->tile_wid;
 	}
 
 	/* Success */
@@ -1892,6 +1931,7 @@
 	td->t->xtra_hook = Term_xtra_mac;
 	td->t->wipe_hook = Term_wipe_mac;
 	td->t->curs_hook = Term_curs_mac;
+	td->t->bigcurs_hook = Term_bigcurs_mac;
 	td->t->text_hook = Term_text_mac;
 	td->t->pict_hook = Term_pict_mac;
 
@@ -2755,6 +2795,7 @@
 	/* Next 2 lines for AB tile graphics */
 	AppendMenu(m, "\p-");
 	AppendMenu(m, "\parg_transparency");
+	AppendMenu(m, "\pBigtile Mode");
 
 
 	/* Make the "TileWidth" menu */
@@ -3038,6 +3079,10 @@
 	EnableItem(m, 7);
 	CheckItem(m, 7, use_transparency);
 
+	/* Item Bigtile Mode */
+	EnableItem(m, 8);
+	CheckItem(m, 8, big_bigtile);
+
 	/* Item "Hack" */
 	/* EnableItem(m, 9); */
 
@@ -3523,6 +3568,27 @@
 
 					break;
 				}
+
+                                case 8: /* bigtile mode */
+				{
+					term_data *td = &data[0];
+
+					if (!can_save){
+						plog("You may not do that right now.");
+						break;
+					}
+
+					/* Toggle "use_bigtile" */
+					use_bigtile = !use_bigtile;
+
+					/* Activate */
+					Term_activate(td->t);
+
+					/* Resize the term */
+					Term_resize(td->cols, td->rows);
+
+					break;
+				}
 			}
 
 			break;
Only in angband-3.0.1.bigtile/src: main-vcs.o
diff -ur angband-3.0.1.orig/src/main-win.c angband-3.0.1.bigtile/src/main-win.c
--- angband-3.0.1.orig/src/main-win.c	Sat Jul 13 17:26:09 2002
+++ angband-3.0.1.bigtile/src/main-win.c	Sun Jul 14 06:48:41 2002
@@ -187,6 +187,7 @@
 #define IDM_OPTIONS_NO_GRAPHICS     400
 #define IDM_OPTIONS_OLD_GRAPHICS    401
 #define IDM_OPTIONS_NEW_GRAPHICS    402
+#define IDM_OPTIONS_BIGTILE         409
 #define IDM_OPTIONS_SOUND           410
 #define IDM_OPTIONS_LOW_PRIORITY    420
 #define IDM_OPTIONS_SAVER           430
@@ -1026,6 +1027,10 @@
 	sprintf(buf, "%d", arg_graphics);
 	WritePrivateProfileString("Angband", "Graphics", buf, ini_file);
 
+	/* Save the "use_bigtile" flag */
+	strcpy(buf, use_bigtile ? "1" : "0");
+	WritePrivateProfileString("Angband", "Bigtile", buf, ini_file);
+
 	/* Save the "arg_sound" flag */
 	strcpy(buf, arg_sound ? "1" : "0");
 	WritePrivateProfileString("Angband", "Sound", buf, ini_file);
@@ -1092,6 +1097,9 @@
 	/* Extract the "arg_graphics" flag */
 	arg_graphics = GetPrivateProfileInt("Angband", "Graphics", GRAPHICS_NONE, ini_file);
 
+	/* Extract the "use_bigtile" flag */
+	use_bigtile = GetPrivateProfileInt("Angband", "Bigtile", FALSE, ini_file);
+
 	/* Extract the "arg_sound" flag */
 	arg_sound = (GetPrivateProfileInt("Angband", "Sound", 0, ini_file) != 0);
 
@@ -2172,6 +2180,48 @@
 /*
  * Low level graphics (Assumes valid input).
  *
+ * Draw a "cursor" at (x,y), using a "yellow box".
+ */
+static errr Term_bigcurs_win(int x, int y)
+{
+	term_data *td = (term_data*)(Term->data);
+
+	RECT rc;
+	HDC hdc;
+
+	int tile_wid, tile_hgt;
+
+	if (td->map_active)
+	{
+                /* Normal cursor in map window */
+                Term_curs_win(x, y);
+                return 0;
+	}
+	else
+	{
+		tile_wid = td->tile_wid;
+		tile_hgt = td->tile_hgt;
+	}
+
+	/* Frame the grid */
+	rc.left = x * tile_wid + td->size_ow1;
+	rc.right = rc.left + 2 * tile_wid;
+	rc.top = y * tile_hgt + td->size_oh1;
+	rc.bottom = rc.top + tile_hgt;
+
+	/* Cursor is done as a yellow "box" */
+	hdc = GetDC(td->w);
+	FrameRect(hdc, &rc, hbrYellow);
+	ReleaseDC(td->w, hdc);
+
+	/* Success */
+	return 0;
+}
+
+
+/*
+ * Low level graphics (Assumes valid input).
+ *
  * Erase a "block" of "n" characters starting at (x,y).
  */
 static errr Term_wipe_win(int x, int y, int n)
@@ -2311,7 +2361,7 @@
 
 	int i;
 	int x1, y1, w1, h1;
-	int x2, y2, w2, h2;
+	int x2, y2, w2, h2, tw2;
 	int x3, y3;
 
 	HDC hdcMask;
@@ -2335,11 +2385,16 @@
 	{
 		w2 = td->map_tile_wid;
 		h2 = td->map_tile_hgt;
+                tw2 = w2;
 	}
 	else
 	{
 		w2 = td->tile_wid;
 		h2 = td->tile_hgt;
+
+                /* big tile mode */
+                if (use_bigtile) tw2 = 2 * w2;
+                else tw2 = w2;
 	}
 
 	/* Location of window cell */
@@ -2383,16 +2438,16 @@
 			y3 = (tap[i] & 0x7F) * h1;
 
 			/* Perfect size */
-			if ((w1 == w2) && (h1 == h2))
+			if ((w1 == tw2) && (h1 == h2))
 			{
 				/* Copy the terrain picture from the bitmap to the window */
-				BitBlt(hdc, x2, y2, w2, h2, hdcSrc, x3, y3, SRCCOPY);
+				BitBlt(hdc, x2, y2, tw2, h2, hdcSrc, x3, y3, SRCCOPY);
 
 				/* Mask out the tile */
-				BitBlt(hdc, x2, y2, w2, h2, hdcMask, x1, y1, SRCAND);
+				BitBlt(hdc, x2, y2, tw2, h2, hdcMask, x1, y1, SRCAND);
 
 				/* Draw the tile */
-				BitBlt(hdc, x2, y2, w2, h2, hdcSrc, x1, y1, SRCPAINT);
+				BitBlt(hdc, x2, y2, tw2, h2, hdcSrc, x1, y1, SRCPAINT);
 			}
 
 			/* Need to stretch */
@@ -2402,26 +2457,26 @@
 				SetStretchBltMode(hdc, COLORONCOLOR);
 
 				/* Copy the terrain picture from the bitmap to the window */
-				StretchBlt(hdc, x2, y2, w2, h2, hdcSrc, x3, y3, w1, h1, SRCCOPY);
+				StretchBlt(hdc, x2, y2, tw2, h2, hdcSrc, x3, y3, w1, h1, SRCCOPY);
 
 				/* Only draw if terrain and overlay are different */
 				if ((x1 != x3) || (y1 != y3))
 				{
 					/* Mask out the tile */
-					StretchBlt(hdc, x2, y2, w2, h2, hdcMask, x1, y1, w1, h1, SRCAND);
+					StretchBlt(hdc, x2, y2, tw2, h2, hdcMask, x1, y1, w1, h1, SRCAND);
 
 					/* Draw the tile */
-					StretchBlt(hdc, x2, y2, w2, h2, hdcSrc, x1, y1, w1, h1, SRCPAINT);
+					StretchBlt(hdc, x2, y2, tw2, h2, hdcSrc, x1, y1, w1, h1, SRCPAINT);
 				}
 			}
 		}
 		else
 		{
 			/* Perfect size */
-			if ((w1 == w2) && (h1 == h2))
+			if ((w1 == tw2) && (h1 == h2))
 			{
 				/* Copy the picture from the bitmap to the window */
-				BitBlt(hdc, x2, y2, w2, h2, hdcSrc, x1, y1, SRCCOPY);
+				BitBlt(hdc, x2, y2, tw2, h2, hdcSrc, x1, y1, SRCCOPY);
 			}
 
 			/* Need to stretch */
@@ -2431,7 +2486,7 @@
 				SetStretchBltMode(hdc, COLORONCOLOR);
 
 				/* Copy the picture from the bitmap to the window */
-				StretchBlt(hdc, x2, y2, w2, h2, hdcSrc, x1, y1, w1, h1, SRCCOPY);
+				StretchBlt(hdc, x2, y2, tw2, h2, hdcSrc, x1, y1, w1, h1, SRCCOPY);
 			}
 		}
 	}
@@ -2982,6 +3037,8 @@
 	               MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
 	EnableMenuItem(hm, IDM_OPTIONS_NEW_GRAPHICS,
 	               MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
+	EnableMenuItem(hm, IDM_OPTIONS_BIGTILE,
+	               MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
 	EnableMenuItem(hm, IDM_OPTIONS_SOUND,
 	               MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
 	EnableMenuItem(hm, IDM_OPTIONS_SAVER,
@@ -3003,6 +3060,8 @@
 	              (arg_graphics == GRAPHICS_ORIGINAL ? MF_CHECKED : MF_UNCHECKED));
 	CheckMenuItem(hm, IDM_OPTIONS_NEW_GRAPHICS,
 	              (arg_graphics == GRAPHICS_ADAM_BOLT ? MF_CHECKED : MF_UNCHECKED));
+	CheckMenuItem(hm, IDM_OPTIONS_BIGTILE,
+	              (use_bigtile ? MF_CHECKED : MF_UNCHECKED));
 	CheckMenuItem(hm, IDM_OPTIONS_SOUND,
 	              (arg_sound ? MF_CHECKED : MF_UNCHECKED));
 #ifdef USE_SAVER
@@ -3022,6 +3081,8 @@
 		EnableMenuItem(hm, IDM_OPTIONS_OLD_GRAPHICS, MF_ENABLED);
 		/* Menu "Options", Item "Graphics" */
 		EnableMenuItem(hm, IDM_OPTIONS_NEW_GRAPHICS, MF_ENABLED);
+		/* Menu "Options", Item "Graphics" */
+		EnableMenuItem(hm, IDM_OPTIONS_BIGTILE, MF_ENABLED);
 	}
 #endif /* USE_GRAPHICS */
 
@@ -3702,6 +3763,26 @@
 
 			break;
 		}
+
+		case IDM_OPTIONS_BIGTILE:
+		{
+			term_data *td = &data[0];
+
+			/* Paranoia */
+			if (!inkey_flag || !initialized)
+			{
+				plog("You may not do that right now.");
+				break;
+			}
+
+			/* Toggle "arg_sound" */
+			use_bigtile = !use_bigtile;
+
+			/* Mega-Hack : Redraw screen */
+			Term_key_push(KTRL('R'));
+
+			break;
+		}
 
 		case IDM_OPTIONS_SOUND:
 		{
Only in angband-3.0.1.bigtile/src: main-win.o
diff -ur angband-3.0.1.orig/src/main-x11.c angband-3.0.1.bigtile/src/main-x11.c
--- angband-3.0.1.orig/src/main-x11.c	Sun Jun 30 19:15:09 2002
+++ angband-3.0.1.bigtile/src/main-x11.c	Sun Jul 14 06:48:41 2002
@@ -319,6 +319,7 @@
 	cptr name;
 
 	s16b wid;
+	s16b twid;
 	s16b hgt;
 	s16b asc;
 
@@ -1232,6 +1233,11 @@
 	ifnt->wid = cs->width;
 #endif
 
+	if (use_bigtile)
+		ifnt->twid = 2 * cs->width;
+	else
+		ifnt->twid = cs->width;
+
 	/* Success */
 	return (0);
 }
@@ -1453,7 +1459,8 @@
 
 #ifdef USE_GRAPHICS
 
-	XImage *tiles;
+	XImage *tiles[64];
+        int tiles_col[64];
 
 	/* Tempory storage for overlaying tiles. */
 	XImage *TmpImage;
@@ -1921,9 +1928,7 @@
 
 
 /*
- * Draw the cursor as an inverted rectangle.
- *
- * Consider a rectangular outline like "main-mac.c".  XXX XXX
+ * Draw the cursor as a rectangular outline
  */
 static errr Term_curs_x11(int x, int y)
 {
@@ -1938,6 +1943,21 @@
 
 
 /*
+ * Draw the double width cursor as a rectangular outline
+ */
+static errr Term_bigcurs_x11(int x, int y)
+{
+	XDrawRectangle(Metadpy->dpy, Infowin->win, xor->gc,
+			 x * Infofnt->wid + Infowin->ox,
+			 y * Infofnt->hgt + Infowin->oy,
+			 Infofnt->twid - 1, Infofnt->hgt - 1);
+
+	/* Success */
+	return (0);
+}
+
+
+/*
  * Erase some characters.
  */
 static errr Term_wipe_x11(int x, int y, int n)
@@ -1977,6 +1997,7 @@
 static errr Term_pict_x11(int x, int y, int n, const byte *ap, const char *cp, const byte *tap, const char *tcp)
 {
 	int i, x1, y1;
+        int group1, group2;
 
 	byte a;
 	char c;
@@ -2003,43 +2024,123 @@
 		a = *ap++;
 		c = *cp++;
 
-		/* For extra speed - cache these values */
-		x1 = (c&0x7F) * td->fnt->wid;
-		y1 = (a&0x7F) * td->fnt->hgt;
-
-		ta = *tap++;
-		tc = *tcp++;
-
-		/* For extra speed - cache these values */
-		x2 = (tc&0x7F) * td->fnt->wid;
-		y2 = (ta&0x7F) * td->fnt->hgt;
+                /* Second byte of Bigtile (dummy) */
+		if (a == 255 && c == -1) continue;
+
+                ta = *tap++;
+                tc = *tcp++;
+
+                if (arg_graphics == GRAPHICS_DAVID_GERVAIS)
+                {
+                        group1 = (a&0x7F);
+                        group2 = (ta&0x7F);
+
+                        /* Dummy or illegal group */
+                        if (td->tiles[group1])
+                        {
+                                /* For extra speed - cache these values */
+                                x1 = ((c&0x7F) % td->tiles_col[group1]) * td->fnt->twid;
+                                y1 = ((c&0x7F) / td->tiles_col[group1]) * td->fnt->hgt;
+                        }
+
+                        /* For extra speed - cache these values */
+                        if (!td->tiles[group2])
+                        {
+                                group2 = group1;
+                                x2 = x1;
+                                y2 = y1;
+                        }
+                        else
+                        {
+                                group2 = (ta&0x7F);
+                                x2 = ((tc&0x7F) % td->tiles_col[group2]) * td->fnt->twid;
+                                y2 = ((tc&0x7F) / td->tiles_col[group2]) * td->fnt->hgt;
+                        }
+                }
+                else
+                {
+                        /* For extra speed - cache these values */
+                        x1 = (c&0x7F) * td->fnt->twid;
+                        y1 = (a&0x7F) * td->fnt->hgt;
+                        group1 = 0;
+
+                        /* For extra speed - cache these values */
+                        x2 = (tc&0x7F) * td->fnt->twid;
+                        y2 = (ta&0x7F) * td->fnt->hgt;
+                        group2 = 0;
+                }
+
+                /* Blank tile */
+                if (!td->tiles[group1])
+                {
+                        /* Erase rectangle */
+                        XFillRectangle(Metadpy->dpy, Infowin->win, clr[0]->gc,
+                                          x, y,
+                                          td->fnt->twid, td->fnt->hgt);
+                }
 
 		/* Optimise the common case */
-		if ((x1 == x2) && (y1 == y2))
+		else if (((x1 == x2) && (y1 == y2) && (group1 == group2)) ||
+		    !(((byte)ta & 0x80) && ((byte)tc & 0x80)))
 		{
-			/* Draw object / terrain */
-			XPutImage(Metadpy->dpy, td->win->win,
-		  	        clr[0]->gc,
-		  	        td->tiles,
-		  	        x1, y1,
-		  	        x, y,
-		  	        td->fnt->wid, td->fnt->hgt);
+                        if (arg_graphics != GRAPHICS_DAVID_GERVAIS)
+                        {
+                                /* Draw object / terrain */
+                                XPutImage(Metadpy->dpy, td->win->win,
+                                          clr[0]->gc,
+                                          td->tiles[group1],
+                                          x1, y1,
+                                          x, y,
+                                          td->fnt->twid, td->fnt->hgt);
+                        }
+                        else
+                        {
+                                /* Mega Hack^2 - assume the top left corner is "blank" */
+                                blank = XGetPixel(td->tiles[3], 0, 0);
+
+                                for (k = 0; k < td->fnt->twid; k++)
+                                {
+                                        for (l = 0; l < td->fnt->hgt; l++)
+                                        {
+                                                /* If mask set... */
+                                                if ((pixel = XGetPixel(td->tiles[group1], x1 + k, y1 + l)) == blank)
+                                                        pixel = 0L;
+
+                                                /* Store into the temp storage. */
+                                                XPutPixel(td->TmpImage, k, l, pixel);
+                                        }
+                                }
+
+
+                                /* Draw to screen */
+
+                                XPutImage(Metadpy->dpy, td->win->win,
+                                          clr[0]->gc,
+                                          td->TmpImage,
+                                          0, 0, x, y,
+                                          td->fnt->twid, td->fnt->hgt);
+                        }
 		}
 		else
 		{
 
-			/* Mega Hack^2 - assume the top left corner is "black" */
-			blank = XGetPixel(td->tiles, 0, td->fnt->hgt * 6);
+			/* Mega Hack^2 - assume the top left corner is "blank" */
+                        if (arg_graphics == GRAPHICS_DAVID_GERVAIS)
+                                blank = XGetPixel(td->tiles[3], 0, 0);
+                        else
+                                blank = XGetPixel(td->tiles[group1], 0, td->fnt->hgt * 6);
 
-			for (k = 0; k < td->fnt->wid; k++)
+			for (k = 0; k < td->fnt->twid; k++)
 			{
 				for (l = 0; l < td->fnt->hgt; l++)
 				{
 					/* If mask set... */
-					if ((pixel = XGetPixel(td->tiles, x1 + k, y1 + l)) == blank)
+					if ((pixel = XGetPixel(td->tiles[group1], x1 + k, y1 + l)) == blank)
 					{
 						/* Output from the terrain */
-						pixel = XGetPixel(td->tiles, x2 + k, y2 + l);
+						pixel = XGetPixel(td->tiles[group2], x2 + k, y2 + l);
+                                                if (pixel == blank)
+                                                        pixel = 0L;
 					}
 
 					/* Store into the temp storage. */
@@ -2054,7 +2155,7 @@
 		    	      clr[0]->gc,
 		     	     td->TmpImage,
 		     	     0, 0, x, y,
-		     	     td->fnt->wid, td->fnt->hgt);
+		     	     td->fnt->twid, td->fnt->hgt);
 		}
 
 		x += td->fnt->wid;
@@ -2252,6 +2353,7 @@
 	/* Hooks */
 	t->xtra_hook = Term_xtra_x11;
 	t->curs_hook = Term_curs_x11;
+	t->bigcurs_hook = Term_bigcurs_x11;
 	t->wipe_hook = Term_wipe_x11;
 	t->text_hook = Term_text_x11;
 
@@ -2269,10 +2371,56 @@
 const char help_x11[] = "Basic X11, subopts -d<display> -n<windows>"
 #ifdef USE_GRAPHICS
                         " -s(moothRescale)"
+                        "\n           -b(Bigtile) -o(original) -a(AdamBolt) -g(David Gervais)"
 #endif
                         ;
 
 
+static const char *original_tile_files[] = {"8x8.bmp", NULL};
+static const char *adam_bolt_tile_files[] = {"16x16.bmp", NULL};
+static const char *david_gervais_tile_files[] = {
+        "", 
+        "", 
+        "", 
+        "dg_armor32.bmp", 
+        "dg_effects32.bmp", 
+        "dg_food32.bmp", 
+        "dg_classm32.bmp", 
+        "dg_humans32.bmp", 
+        "dg_jewls32.bmp", 
+        "dg_magic32.bmp", 
+        "dg_misc32.bmp", 
+        "dg_potions32.bmp", 
+        "dg_wands32.bmp", 
+        "dg_weapons32.bmp", 
+        "dg_people32.bmp", 
+        "dg_dragon32.bmp", 
+        "dg_monster132.bmp", 
+        "dg_monster232.bmp", 
+        "dg_monster332.bmp", 
+        "dg_monster432.bmp", 
+        "dg_monster532.bmp", 
+        "dg_monster632.bmp", 
+        "dg_monster732.bmp", 
+        "dg_undead32.bmp", 
+        "dg_uniques32.bmp", 
+        "dg_dungeon32.bmp", 
+        "dg_grounds32.bmp", 
+        "dg_extra132.bmp", 
+        "dg_town032.bmp", 
+        "dg_town132.bmp", 
+        "dg_town232.bmp", 
+        "dg_town332.bmp", 
+        "dg_town432.bmp", 
+        "dg_town532.bmp", 
+        "dg_town632.bmp", 
+        "dg_town732.bmp", 
+        "dg_town832.bmp", 
+        "dg_town932.bmp", 
+        NULL
+};
+
+
 /*
  * Initialization function for an "X11" module to Angband
  */
@@ -2286,6 +2434,7 @@
 
 #ifdef USE_GRAPHICS
 
+	const char **tile_files;
 	char filename[1024];
 
 	int pict_wid = 0;
@@ -2311,6 +2460,32 @@
 			smoothRescaling = FALSE;
 			continue;
 		}
+
+		if (prefix(argv[i], "-o"))
+		{
+			arg_graphics = GRAPHICS_ORIGINAL;
+			continue;
+		}
+
+		if (prefix(argv[i], "-a"))
+		{
+			arg_graphics = GRAPHICS_ADAM_BOLT;
+			continue;
+		}
+
+		if (prefix(argv[i], "-g"))
+		{
+			smoothRescaling = FALSE;
+			arg_graphics = GRAPHICS_DAVID_GERVAIS;
+			continue;
+		}
+
+		if (prefix(argv[i], "-b"))
+		{
+			use_bigtile = TRUE;
+			continue;
+		}
+
 #endif /* USE_GRAPHICS */
 
 		if (prefix(argv[i], "-n"))
@@ -2391,39 +2566,62 @@
 #ifdef USE_GRAPHICS
 
 	/* Try graphics */
-	if (arg_graphics)
+	switch (arg_graphics)
 	{
+	case GRAPHICS_ADAM_BOLT:
+                /* Use tile graphics of Adam Bolt */
+                tile_files = adam_bolt_tile_files;
+
 		/* Try the "16x16.bmp" file */
-		path_build(filename, sizeof(filename), ANGBAND_DIR_XTRA, "graf/16x16.bmp");
+		path_build(filename, sizeof(filename), ANGBAND_DIR_XTRA, format("graf/%s", tile_files[0]));
 
 		/* Use the "16x16.bmp" file if it exists */
 		if (0 == fd_close(fd_open(filename, O_RDONLY)))
 		{
 			/* Use graphics */
 			use_graphics = TRUE;
-
 			use_transparency = TRUE;
 
 			pict_wid = pict_hgt = 16;
 
 			ANGBAND_GRAF = "new";
+
+			break;
 		}
-		else
-		{
-			/* Try the "8x8.bmp" file */
-			path_build(filename, sizeof(filename), ANGBAND_DIR_XTRA, "graf/8x8.bmp");
+		/* Fall through */
 
-			/* Use the "8x8.bmp" file if it exists */
-			if (0 == fd_close(fd_open(filename, O_RDONLY)))
-			{
-				/* Use graphics */
-				use_graphics = TRUE;
+	case GRAPHICS_ORIGINAL:
+                /* Use original tile graphics */
+                tile_files = original_tile_files;
 
-				pict_wid = pict_hgt = 8;
+		/* Try the "8x8.bmp" file */
+		path_build(filename, sizeof(filename), ANGBAND_DIR_XTRA, format("graf/%s", tile_files[0]));
 
-				ANGBAND_GRAF = "old";
-			}
+		/* Use the "8x8.bmp" file if it exists */
+		if (0 == fd_close(fd_open(filename, O_RDONLY)))
+		{
+			/* Use graphics */
+			use_graphics = TRUE;
+
+			pict_wid = pict_hgt = 8;
+
+			ANGBAND_GRAF = "old";
+			break;
 		}
+                break;
+
+	case GRAPHICS_DAVID_GERVAIS:
+                /* Use tile graphics of David Gervais */
+                tile_files = david_gervais_tile_files;
+
+                /* Use graphics */
+                use_graphics = TRUE;
+                use_transparency = TRUE;
+                
+                pict_wid = pict_hgt = 32;
+                
+                ANGBAND_GRAF = "david";
+                break;
 	}
 
 	/* Load graphics */
@@ -2433,29 +2631,82 @@
 
 		XImage *tiles_raw;
 
-		/* Load the graphical tiles */
-		tiles_raw = ReadBMP(dpy, filename);
-
-		/* Initialize the windows */
-		for (i = 0; i < num_term; i++)
-		{
-			term_data *td = &data[i];
-
-			term *t = &td->t;
-
-			/* Graphics hook */
-			t->pict_hook = Term_pict_x11;
-
-			/* Use graphics sometimes */
-			t->higher_pict = TRUE;
-
-			/* Resize tiles */
-			td->tiles =
-			ResizeImage(dpy, tiles_raw,
-			            pict_wid, pict_hgt,
-			            td->fnt->wid, td->fnt->hgt);
-		}
+                int group;
 
+                /* Initialize */
+                for (group = 0; group < 64; group++)
+                {
+                        for (i = 0; i < num_term; i++)
+                        {
+                                term_data *td = &data[i];
+                                td->tiles[group] = NULL;
+                        }
+                }
+
+                /* Load each group of tile set */
+                for (group = 0; tile_files[group]; group++)
+                {
+                        /* Dummy group */
+                        if (!tile_files[group][0]) continue;
+
+                        path_build(filename, sizeof(filename), ANGBAND_DIR_XTRA, format("graf/%s", tile_files[group]));
+
+                        /* Load the graphical tiles */
+                        tiles_raw = ReadBMP(dpy, filename);
+
+                        /* No such file */
+                        if (!tiles_raw) continue;
+
+                        /* Initialize the windows */
+                        for (i = 0; i < num_term; i++)
+                        {
+                                int j;
+                                bool same = FALSE;
+
+                                term_data *td = &data[i];
+                                term_data *o_td;
+                                
+                                term *t = &td->t;
+                                
+                                /* Graphics hook */
+                                t->pict_hook = Term_pict_x11;
+                                
+                                /* Use graphics sometimes */
+                                t->higher_pict = TRUE;
+                                
+                                /* Look for another term with same font size */
+                                for (j = 0; j < i; j++)
+                                {
+                                        o_td = &data[j];
+
+                                        if (td->fnt->twid == o_td->fnt->twid && td->fnt->hgt == o_td->fnt->hgt)
+                                        {
+                                                same = TRUE;
+                                                break;
+                                        }
+
+                                }
+
+                                if (!same)
+                                {
+                                        /* Resize tiles */
+                                        td->tiles[group] =
+                                                ResizeImage(dpy, tiles_raw,
+                                                            pict_wid, pict_hgt,
+                                                            td->fnt->twid, td->fnt->hgt);
+                                }
+                                else
+                                {
+                                        /* Use same graphics */
+                                        td->tiles[group] = o_td->tiles[group];
+                                }
+
+                                td->tiles_col[group] = td->tiles[group]->width / td->fnt->twid;
+                        }
+                        /* Free tiles_raw */
+                        FREE(tiles_raw);
+                }
+                        
 		/* Initialize the transparency masks */
 		for (i = 0; i < num_term; i++)
 		{
@@ -2470,18 +2721,16 @@
 			ii = 1;
 			jj = (depth - 1) >> 2;
 			while (jj >>= 1) ii <<= 1;
-			total = td->fnt->wid * td->fnt->hgt * ii;
+			total = td->fnt->twid * td->fnt->hgt * ii;
 
 
 			TmpData = (char *)malloc(total);
 
 			td->TmpImage = XCreateImage(dpy,visual,depth,
 				ZPixmap, 0, TmpData,
-				td->fnt->wid, td->fnt->hgt, 32, 0);
+				td->fnt->twid, td->fnt->hgt, 32, 0);
 
 		}
-
-		/* Free tiles_raw? XXX XXX */
 	}
 
 #endif /* USE_GRAPHICS */
Only in angband-3.0.1.bigtile/src: main-x11.o
diff -ur angband-3.0.1.orig/src/main-xaw.c angband-3.0.1.bigtile/src/main-xaw.c
--- angband-3.0.1.orig/src/main-xaw.c	Sat Jul  6 22:13:01 2002
+++ angband-3.0.1.bigtile/src/main-xaw.c	Sun Jul 14 06:48:41 2002
@@ -183,7 +183,8 @@
 #ifdef USE_GRAPHICS
 
 	/* Tiles */
-	XImage *tiles;
+	XImage *tiles[64];
+        int tiles_col[64];
 
 	/* Tempory storage for overlaying tiles. */
 	XImage *TmpImage;
@@ -194,6 +195,7 @@
 	XFontStruct *fnt;
 	Dimension fontheight;
 	Dimension fontwidth;
+	Dimension tilewidth;
 	Dimension fontascent;
 
 	/* Color info for GC's */
@@ -423,6 +425,7 @@
                               const byte *tap, const char *tcp)
 {
 	int i, x1, y1;
+        int group1, group2;
 
 	byte a;
 	char c;
@@ -444,47 +447,127 @@
 		a = *ap++;
 		c = *cp++;
 
-		/* For extra speed - cache these values */
-		x1 = (c&0x7F) * widget->angband.fontwidth;
-		y1 = (a&0x7F) * widget->angband.fontheight;
+		if (a == 255 && c == -1) continue;
 
 		ta = *tap++;
 		tc = *tcp++;
 
-		/* For extra speed - cache these values */
-		x2 = (tc&0x7F) * widget->angband.fontwidth;
-		y2 = (ta&0x7F) * widget->angband.fontheight;
+                if (arg_graphics == GRAPHICS_DAVID_GERVAIS)
+                {
+                        group1 = (a&0x7F);
+                        group2 = (ta&0x7F);
+
+                        /* Dummy or illegal group */
+                        if (widget->angband.tiles[group1])
+                        {
+                                /* For extra speed - cache these values */
+                                x1 = ((c&0x7F) % widget->angband.tiles_col[group1]) * widget->angband.tilewidth;
+                                y1 = ((c&0x7F) / widget->angband.tiles_col[group1]) * widget->angband.fontheight;
+                        }
+
+                        /* For extra speed - cache these values */
+                        if (!widget->angband.tiles[group2])
+                        {
+                                group2 = group1;
+                                x2 = x1;
+                                y2 = y1;
+                        }
+                        else
+                        {
+                                group2 = (ta&0x7F);
+                                x2 = ((tc&0x7F) % widget->angband.tiles_col[group2]) * widget->angband.tilewidth;
+                                y2 = ((tc&0x7F) / widget->angband.tiles_col[group2]) * widget->angband.fontheight;
+                        }
+                }
+                else
+                {
+                        /* For extra speed - cache these values */
+                        x1 = (c&0x7F) * widget->angband.tilewidth;
+                        y1 = (a&0x7F) * widget->angband.fontheight;
+                        group1 = 0;
+
+                        /* For extra speed - cache these values */
+                        x2 = (tc&0x7F) * widget->angband.tilewidth;
+                        y2 = (ta&0x7F) * widget->angband.fontheight;
+                        group2 = 0;
+                }
+
+                /* Blank tile */
+                if (!widget->angband.tiles[group1])
+                {
+                        /* Erase rectangle */
+                        XFillRectangle(XtDisplay(widget), XtWindow(widget),
+                                       widget->angband.gc[0],
+                                       x, y,
+                                       widget->angband.tilewidth,
+                                       widget->angband.fontheight);
+                }
 
 		/* Optimise the common case */
-		if ((x1 == x2) && (y1 == y2))
+                else if (((x1 == x2) && (y1 == y2) && (group1 == group2)) ||
+		    !(((byte)ta & 0x80) && ((byte)tc & 0x80)))
 		{
-			/* Draw object / terrain */
-			XPutImage(XtDisplay(widget), XtWindow(widget),
-		  	        widget->angband.gc[0],
-		    	      widget->angband.tiles,
-		    	      x1, y1,
-		    	      x, y,
-		    	      widget->angband.fontwidth,
-		 	      widget->angband.fontheight);
+                        if (arg_graphics != GRAPHICS_DAVID_GERVAIS)
+                        {
+                                /* Draw object / terrain */
+                                XPutImage(XtDisplay(widget), XtWindow(widget),
+                                          widget->angband.gc[0],
+                                          widget->angband.tiles[group1],
+                                          x1, y1,
+                                          x, y,
+                                          widget->angband.tilewidth,
+                                          widget->angband.fontheight);
+                        }
+                        else
+                        {
+                                /* Mega Hack^2 - assume the top left corner is "blank" */
+                                blank = XGetPixel(widget->angband.tiles[3], 0, 0);
+
+                                for (k = 0; k < widget->angband.tilewidth; k++)
+                                {
+                                        for (l = 0; l < widget->angband.fontheight; l++)
+                                        {
+                                                /* If mask set... */
+                                                if ((pixel = XGetPixel(widget->angband.tiles[group1], x1 + k, y1 + l)) == blank)
+                                                        pixel = 0L;
+
+                                                /* Store into the temp storage. */
+                                                XPutPixel(widget->angband.TmpImage,
+                                                          k, l, pixel);
+                                        }
+                                }
+                                /* Draw to screen */
+
+                                /* Draw object / terrain */
+                                XPutImage(XtDisplay(widget), XtWindow(widget),
+                                          widget->angband.gc[0],
+                                          widget->angband.TmpImage,
+                                          0, 0,
+                                          x, y,
+                                          widget->angband.tilewidth,
+                                          widget->angband.fontheight);
+                        }
 		}
 		else
 		{
-			/* Mega Hack^2 - assume the top left corner is "black" */
-			blank = XGetPixel(widget->angband.tiles,
-				 0, widget->angband.fontheight * 6);
+			/* Mega Hack^2 - assume the top left corner is "blank" */
+                        if (arg_graphics == GRAPHICS_DAVID_GERVAIS)
+                                blank = XGetPixel(widget->angband.tiles[3], 0, 0);
+                        else
+                                blank = XGetPixel(widget->angband.tiles[group1],
+                                                  0, widget->angband.fontheight * 6);
 
-			for (k = 0; k < widget->angband.fontwidth; k++)
+			for (k = 0; k < widget->angband.tilewidth; k++)
 			{
 				for (l = 0; l < widget->angband.fontheight; l++)
 				{
 					/* If mask set... */
-					if ((pixel = XGetPixel(widget->angband.tiles,
-						 x1 + k, y1 + l)) == blank)
+					if ((pixel = XGetPixel(widget->angband.tiles[group1], x1 + k, y1 + l)) == blank)
 					{
-
 						/* Output from the terrain */
-						pixel = XGetPixel(widget->angband.tiles,
-							 x2 + k, y2 + l);
+						pixel = XGetPixel(widget->angband.tiles[group2], x2 + k, y2 + l);
+                                                if (pixel == blank)
+                                                        pixel = 0L;
 					}
 
 					/* Store into the temp storage. */
@@ -502,7 +585,7 @@
 			          widget->angband.TmpImage,
 			          0, 0,
 			          x, y,
-			          widget->angband.fontwidth,
+			          widget->angband.tilewidth,
 			          widget->angband.fontheight);
 		}
 
@@ -558,6 +641,12 @@
 	wnew->angband.fontheight = wnew->angband.fnt->ascent +
 		wnew->angband.fnt->descent;
 	wnew->angband.fontwidth = wnew->angband.fnt->max_bounds.width;
+
+	if (use_bigtile)
+		wnew->angband.tilewidth = 2 * wnew->angband.fontwidth;
+	else
+		wnew->angband.tilewidth = wnew->angband.fontwidth;
+
 	wnew->angband.fontascent = wnew->angband.fnt->ascent;
 
 	/* Create and initialize the graphics contexts */ /* GXset? */
@@ -598,6 +687,9 @@
 		                              (GCFont | GCForeground | GCFunction |
 		                               GCBackground | GCGraphicsExposures),
 		                              &gcv);
+
+                /* Mega Hack: Force react to change later (Mogami) */
+                wnew->angband.color[i][0] = 255;
 	}
 
 	/* Create a special GC for highlighting */
@@ -811,6 +903,12 @@
 			wnew->angband.fontheight = wnew->angband.fnt->ascent +
 				wnew->angband.fnt->descent;
 			wnew->angband.fontwidth = wnew->angband.fnt->max_bounds.width;
+
+			if (use_bigtile)
+				wnew->angband.tilewidth = 2 * wnew->angband.fontwidth;
+			else
+				wnew->angband.tilewidth = wnew->angband.fontwidth;
+
 			wnew->angband.fontascent = wnew->angband.fnt->ascent;
 		}
 	}
@@ -1378,9 +1476,7 @@
 
 
 /*
- * Draw the cursor, by hiliting with XOR
- *
- * Should perhaps use rectangle outline, ala "main-mac.c".  XXX XXX XXX
+ * Draw the cursor a rectangle outline
  */
 static errr Term_curs_xaw(int x, int y)
 {
@@ -1401,6 +1497,27 @@
 
 
 /*
+ * Draw the double width cursor as a rectangle outline
+ */
+static errr Term_bigcurs_xaw(int x, int y)
+{
+	term_data *td = (term_data*)(Term->data);
+
+	/* Hilite the cursor character with a box */
+	XDrawRectangle(XtDisplay(td->widget), XtWindow(td->widget),
+		td->widget->angband.gc[COLOR_XOR],
+		x * td->widget->angband.fontwidth +
+			td->widget->angband.internal_border,
+		y * td->widget->angband.fontheight +
+			td->widget->angband.internal_border,
+		td->widget->angband.tilewidth - 1, td->widget->angband.fontheight - 1);
+
+	/* Success */
+	return (0);
+}
+
+
+/*
  * Draw a number of characters
  */
 static errr Term_text_xaw(int x, int y, int n, byte a, cptr s)
@@ -1523,6 +1640,7 @@
 	/* Hooks */
 	t->xtra_hook = Term_xtra_xaw;
 	t->curs_hook = Term_curs_xaw;
+	t->bigcurs_hook = Term_bigcurs_xaw;
 	t->wipe_hook = Term_wipe_xaw;
 	t->text_hook = Term_text_xaw;
 
@@ -1563,6 +1681,12 @@
 			/* Update font information */
 			td->widget->angband.fontheight = fnt->ascent + fnt->descent;
 			td->widget->angband.fontwidth = fnt->max_bounds.width;
+
+			if (use_bigtile)
+				td->widget->angband.tilewidth = 2 * td->widget->angband.fontwidth;
+			else
+				td->widget->angband.tilewidth = td->widget->angband.fontwidth;
+
 			td->widget->angband.fontascent = fnt->ascent;
 
 			for (i = 0; i < NUM_COLORS; i++)
@@ -1611,11 +1735,57 @@
 const char help_xaw[] = "X11 Athena Widget, subopts -d<display> -n<windows>"
 #ifdef USE_GRAPHICS
                         " -s(moothRescale)"
+                        "\n           -b(Bigtile) -o(original) -a(AdamBolt) -g(David Gervais)"
 #endif
                         "\n           and standard X11 toolkit options"
                         ;
 
 
+static const char *original_tile_files[] = {"8x8.bmp", NULL};
+static const char *adam_bolt_tile_files[] = {"16x16.bmp", NULL};
+static const char *david_gervais_tile_files[] = {
+        "", 
+        "", 
+        "", 
+        "dg_armor32.bmp", 
+        "dg_effects32.bmp", 
+        "dg_food32.bmp", 
+        "dg_classm32.bmp", 
+        "dg_humans32.bmp", 
+        "dg_jewls32.bmp", 
+        "dg_magic32.bmp", 
+        "dg_misc32.bmp", 
+        "dg_potions32.bmp", 
+        "dg_wands32.bmp", 
+        "dg_weapons32.bmp", 
+        "dg_people32.bmp", 
+        "dg_dragon32.bmp", 
+        "dg_monster132.bmp", 
+        "dg_monster232.bmp", 
+        "dg_monster332.bmp", 
+        "dg_monster432.bmp", 
+        "dg_monster532.bmp", 
+        "dg_monster632.bmp", 
+        "dg_monster732.bmp", 
+        "dg_undead32.bmp", 
+        "dg_uniques32.bmp", 
+        "dg_dungeon32.bmp", 
+        "dg_grounds32.bmp", 
+        "dg_extra132.bmp", 
+        "dg_town032.bmp", 
+        "dg_town132.bmp", 
+        "dg_town232.bmp", 
+        "dg_town332.bmp", 
+        "dg_town432.bmp", 
+        "dg_town532.bmp", 
+        "dg_town632.bmp", 
+        "dg_town732.bmp", 
+        "dg_town832.bmp", 
+        "dg_town932.bmp", 
+        NULL
+};
+
+
 /*
  * Initialization function for an X Athena Widget module to Angband
  *
@@ -1632,6 +1802,7 @@
 
 #ifdef USE_GRAPHICS
 
+	const char **tile_files;
 	char filename[1024];
 
 	int pict_wid = 0;
@@ -1656,6 +1827,32 @@
 			smoothRescaling = FALSE;
 			continue;
 		}
+
+		if (prefix(argv[i], "-o"))
+		{
+			arg_graphics = GRAPHICS_ORIGINAL;
+			continue;
+		}
+
+		if (prefix(argv[i], "-a"))
+		{
+			arg_graphics = GRAPHICS_ADAM_BOLT;
+			continue;
+		}
+
+		if (prefix(argv[i], "-g"))
+		{
+			smoothRescaling = FALSE;
+			arg_graphics = GRAPHICS_DAVID_GERVAIS;
+			continue;
+		}
+
+		if (prefix(argv[i], "-b"))
+		{
+			use_bigtile = TRUE;
+			continue;
+		}
+
 #endif /* USE_GRAPHICS */
 
 		if (prefix(argv[i], "-n"))
@@ -1715,39 +1912,62 @@
 #ifdef USE_GRAPHICS
 
 	/* Try graphics */
-	if (arg_graphics)
+	switch (arg_graphics)
 	{
+	case GRAPHICS_ADAM_BOLT:
+                /* Use tile graphics of Adam Bolt */
+                tile_files = adam_bolt_tile_files;
+
 		/* Try the "16x16.bmp" file */
-		path_build(filename, sizeof(filename), ANGBAND_DIR_XTRA, "graf/16x16.bmp");
+		path_build(filename, sizeof(filename), ANGBAND_DIR_XTRA, format("graf/%s", tile_files[0]));
 
 		/* Use the "16x16.bmp" file if it exists */
 		if (0 == fd_close(fd_open(filename, O_RDONLY)))
 		{
 			/* Use graphics */
 			use_graphics = TRUE;
-
 			use_transparency = TRUE;
 
 			pict_wid = pict_hgt = 16;
 
 			ANGBAND_GRAF = "new";
+
+			break;
 		}
-		else
-		{
-			/* Try the "8x8.bmp" file */
-			path_build(filename, sizeof(filename), ANGBAND_DIR_XTRA, "graf/8x8.bmp");
+		/* Fall through */
 
-			/* Use the "8x8.bmp" file if it exists */
-			if (0 == fd_close(fd_open(filename, O_RDONLY)))
-			{
-				/* Use graphics */
-				use_graphics = TRUE;
+	case GRAPHICS_ORIGINAL:
+                /* Use original tile graphics */
+                tile_files = original_tile_files;
 
-				pict_wid = pict_hgt = 8;
+		/* Try the "8x8.bmp" file */
+		path_build(filename, sizeof(filename), ANGBAND_DIR_XTRA, format("graf/%s", tile_files[0]));
 
-				ANGBAND_GRAF = "old";
-			}
+		/* Use the "8x8.bmp" file if it exists */
+		if (0 == fd_close(fd_open(filename, O_RDONLY)))
+		{
+			/* Use graphics */
+			use_graphics = TRUE;
+
+			pict_wid = pict_hgt = 8;
+
+			ANGBAND_GRAF = "old";
+			break;
 		}
+                break;
+
+	case GRAPHICS_DAVID_GERVAIS:
+                /* Use tile graphics of David Gervais */
+                tile_files = david_gervais_tile_files;
+
+                /* Use graphics */
+                use_graphics = TRUE;
+                use_transparency = TRUE;
+                
+                pict_wid = pict_hgt = 32;
+                
+                ANGBAND_GRAF = "david";
+                break;
 	}
 
 	/* Load graphics */
@@ -1760,28 +1980,81 @@
 
 		XImage *tiles_raw;
 
-		/* Load the graphical tiles */
-		tiles_raw = ReadBMP(dpy, filename);
-
-		/* Initialize the windows */
-		for (i = 0; i < num_term; i++)
-		{
-			term_data *td = &data[i];
-
-			term *t = &td->t;
-
-			t->pict_hook = Term_pict_xaw;
-
-			t->higher_pict = TRUE;
-
-			/* Resize tiles */
-			td->widget->angband.tiles =
-			ResizeImage(dpy, tiles_raw,
-			            pict_wid, pict_hgt,
-			            td->widget->angband.fontwidth,
-			            td->widget->angband.fontheight);
-		}
+                int group;
 
+                /* Initialize */
+                for (group = 0; group < 64; group++)
+                {
+                        for (i = 0; i < num_term; i++)
+                        {
+                                term_data *td = &data[i];
+                                td->widget->angband.tiles[group] = NULL;
+                        }
+                }
+
+                /* Load each group of tile set */
+                for (group = 0; tile_files[group]; group++)
+                {
+                        /* Dummy group */
+                        if (!tile_files[group][0]) continue;
+
+                        path_build(filename, sizeof(filename), ANGBAND_DIR_XTRA, format("graf/%s", tile_files[group]));
+
+                        /* Load the graphical tiles */
+                        tiles_raw = ReadBMP(dpy, filename);
+
+                        /* No such file */
+                        if (!tiles_raw) continue;
+
+                        /* Initialize the windows */
+                        for (i = 0; i < num_term; i++)
+                        {
+                                int j;
+                                bool same = FALSE;
+
+                                term_data *td = &data[i];
+                                term_data *o_td;
+                                
+                                term *t = &td->t;
+                                
+                                t->pict_hook = Term_pict_xaw;
+                                
+                                t->higher_pict = TRUE;
+                                
+                                /* Look for another term with same font size */
+                                for (j = 0; j < i; j++)
+                                {
+                                        o_td = &data[j];
+
+                                        if (td->widget->angband.tilewidth == o_td->widget->angband.tilewidth && td->widget->angband.fontheight == o_td->widget->angband.fontheight)
+                                        {
+                                                same = TRUE;
+                                                break;
+                                        }
+                                }
+
+                                if (!same)
+                                {
+                                        /* Resize tiles */
+                                        td->widget->angband.tiles[group] =
+                                                ResizeImage(dpy, tiles_raw,
+                                                            pict_wid, pict_hgt,
+                                                            td->widget->angband.tilewidth,
+                                                            td->widget->angband.fontheight);
+                                }
+                                else
+                                {
+                                        /* Use same graphics */
+                                        td->widget->angband.tiles[group] = o_td->widget->angband.tiles[group];
+                                }
+
+                                td->widget->angband.tiles_col[group] = td->widget->angband.tiles[group]->width / td->widget->angband.tilewidth;
+                        }
+
+                        /* Free tiles_raw */
+                        FREE(tiles_raw);
+                }
+                        
 		/* Initialize the transparency temp storage*/
 		for (i = 0; i < num_term; i++)
 		{
@@ -1796,7 +2069,7 @@
 			ii = 1;
 			jj = (depth - 1) >> 2;
 			while (jj >>= 1) ii <<= 1;
-			total = td->widget->angband.fontwidth *
+			total = td->widget->angband.tilewidth *
 				 td->widget->angband.fontheight * ii;
 
 
@@ -1805,12 +2078,10 @@
 			td->widget->angband.TmpImage = XCreateImage(dpy,
 				visual,depth,
 				ZPixmap, 0, TmpData,
-				td->widget->angband.fontwidth,
+				td->widget->angband.tilewidth,
 			        td->widget->angband.fontheight, 8, 0);
 
 		}
-
-		/* Free tiles_raw? XXX XXX */
 	}
 
 #endif /* USE_GRAPHICS */
Only in angband-3.0.1.bigtile/src: main-xaw.c.orig
Only in angband-3.0.1.bigtile/src: main-xaw.o
Only in angband-3.0.1.bigtile/src: main-xpj.o
diff -ur angband-3.0.1.orig/src/main.c angband-3.0.1.bigtile/src/main.c
--- angband-3.0.1.orig/src/main.c	Mon Jul  1 05:08:40 2002
+++ angband-3.0.1.bigtile/src/main.c	Sun Jul 14 06:48:41 2002
@@ -502,7 +502,8 @@
 			case 'G':
 			case 'g':
 			{
-				arg_graphics = TRUE;
+				/* Default graphics tile */
+				arg_graphics = GRAPHICS_ADAM_BOLT;
 				break;
 			}
 
Only in angband-3.0.1.bigtile/src: main.o
Only in angband-3.0.1.bigtile/src: melee1.o
Only in angband-3.0.1.bigtile/src: melee2.o
diff -ur angband-3.0.1.orig/src/monster1.c angband-3.0.1.bigtile/src/monster1.c
--- angband-3.0.1.orig/src/monster1.c	Mon Jul  1 05:12:26 2002
+++ angband-3.0.1.bigtile/src/monster1.c	Sun Jul 14 06:48:41 2002
@@ -1367,6 +1367,7 @@
 	/* Append the "optional" attr/char info */
 	Term_addstr(-1, TERM_WHITE, "/('");
 	Term_addch(a2, c2);
+	if (use_bigtile && (a2 & 0x80)) Term_addch(255, -1);
 	Term_addstr(-1, TERM_WHITE, "'):");
 }
 
Only in angband-3.0.1.bigtile/src: monster1.o
Only in angband-3.0.1.bigtile/src: monster2.o
Only in angband-3.0.1.bigtile/src: object1.o
Only in angband-3.0.1.bigtile/src: object2.o
Only in angband-3.0.1.bigtile/src: randart.o
Only in angband-3.0.1.bigtile/src: save.o
Only in angband-3.0.1.bigtile/src: script.o
diff -ur angband-3.0.1.orig/src/spells1.c angband-3.0.1.bigtile/src/spells1.c
--- angband-3.0.1.orig/src/spells1.c	Sun Jul  7 04:54:21 2002
+++ angband-3.0.1.bigtile/src/spells1.c	Sun Jul 14 06:48:41 2002
@@ -390,30 +390,62 @@
 	byte a;
 	char c;
 
-	/* No motion (*) */
-	if ((ny == y) && (nx == x)) base = 0x30;
+        if (!(use_graphics && arg_graphics == GRAPHICS_DAVID_GERVAIS))
+        {
+                /* No motion (*) */
+                if ((ny == y) && (nx == x)) base = 0x30;
 
-	/* Vertical (|) */
-	else if (nx == x) base = 0x40;
+                /* Vertical (|) */
+                else if (nx == x) base = 0x40;
 
-	/* Horizontal (-) */
-	else if (ny == y) base = 0x50;
+                /* Horizontal (-) */
+                else if (ny == y) base = 0x50;
 
-	/* Diagonal (/) */
-	else if ((ny-y) == (x-nx)) base = 0x60;
+                /* Diagonal (/) */
+                else if ((ny-y) == (x-nx)) base = 0x60;
 
-	/* Diagonal (\) */
-	else if ((ny-y) == (nx-x)) base = 0x70;
+                /* Diagonal (\) */
+                else if ((ny-y) == (nx-x)) base = 0x70;
 
-	/* Weird (*) */
-	else base = 0x30;
+                /* Weird (*) */
+                else base = 0x30;
 
-	/* Basic spell color */
-	k = spell_color(typ);
+                /* Basic spell color */
+                k = spell_color(typ);
 
-	/* Obtain attr/char */
-	a = misc_to_attr[base+k];
-	c = misc_to_char[base+k];
+                /* Obtain attr/char */
+                a = misc_to_attr[base+k];
+                c = misc_to_char[base+k];
+        }
+        else
+        {
+                int add;
+
+                /* No motion (*) */
+                if ((ny == y) && (nx == x)) {base = 0x00; add = 0;}
+
+                /* Vertical (|) */
+                else if (nx == x) {base = 0x40; add = 0;}
+
+                /* Horizontal (-) */
+                else if (ny == y) {base = 0x40; add = 1;}
+
+                /* Diagonal (/) */
+                else if ((ny-y) == (x-nx)) {base = 0x40; add = 2;}
+
+                /* Diagonal (\) */
+                else if ((ny-y) == (nx-x)) {base = 0x40; add = 3;}
+
+                /* Weird (*) */
+                else {base = 0x00; add = 0;}
+
+                if (typ >= 0x40) k = 0;
+                else k = typ;
+
+                /* Obtain attr/char */
+                a = misc_to_attr[base+k];
+                c = misc_to_char[base+k] + add;
+        }
 
 	/* Create pict */
 	return (PICT(a,c));
Only in angband-3.0.1.bigtile/src: spells1.o
Only in angband-3.0.1.bigtile/src: spells2.o
Only in angband-3.0.1.bigtile/src: stamp-h
Only in angband-3.0.1.bigtile/src: store.o
Only in angband-3.0.1.bigtile/src: tables.o
Only in angband-3.0.1.bigtile/src: use-obj.o
Only in angband-3.0.1.bigtile/src: util.o
diff -ur angband-3.0.1.orig/src/variable.c angband-3.0.1.bigtile/src/variable.c
--- angband-3.0.1.orig/src/variable.c	Sat Jul 13 18:20:41 2002
+++ angband-3.0.1.bigtile/src/variable.c	Sun Jul 14 06:48:41 2002
@@ -85,6 +85,7 @@
 
 bool use_sound;			/* The "sound" mode is enabled */
 bool use_graphics;		/* The "graphics" mode is enabled */
+bool use_bigtile = FALSE;
 
 s16b signal_count;		/* Hack -- Count interrupts */
 
Only in angband-3.0.1.bigtile/src: variable.o
Only in angband-3.0.1.bigtile/src: wizard1.o
Only in angband-3.0.1.bigtile/src: wizard2.o
Only in angband-3.0.1.bigtile/src: x-spell.o
Only in angband-3.0.1.bigtile/src: xtra1.o
diff -ur angband-3.0.1.orig/src/xtra2.c angband-3.0.1.bigtile/src/xtra2.c
--- angband-3.0.1.orig/src/xtra2.c	Fri Jul 12 06:51:43 2002
+++ angband-3.0.1.bigtile/src/xtra2.c	Sun Jul 14 06:54:41 2002
@@ -2273,12 +2273,20 @@
 bool modify_panel(int wy, int wx)
 {
 	/* Verify wy, adjust if needed */
-	if (p_ptr->depth == 0) wy = 0;
+ 	if (p_ptr->depth == 0)
+        {
+                if (wy > TOWN_HGT - SCREEN_HGT) wy = TOWN_HGT - SCREEN_HGT;
+                else if (wy < 0) wy = 0;
+        }
 	else if (wy > DUNGEON_HGT - SCREEN_HGT) wy = DUNGEON_HGT - SCREEN_HGT;
 	if (wy < 0) wy = 0;
 
 	/* Verify wx, adjust if needed */
-	if (p_ptr->depth == 0) wx = 0;
+ 	if (p_ptr->depth == 0)
+        {
+                if (wx > TOWN_WID - SCREEN_WID) wx = TOWN_WID - SCREEN_WID;
+                else if (wx < 0) wx = 0;
+        }
 	else if (wx > DUNGEON_WID - SCREEN_WID) wx = DUNGEON_WID - SCREEN_WID;
 	if (wx < 0) wx = 0;
 
Only in angband-3.0.1.bigtile/src: xtra2.c.orig
Only in angband-3.0.1.bigtile/src: xtra2.c.rej
Only in angband-3.0.1.bigtile/src: xtra2.c~
Only in angband-3.0.1.bigtile/src: xtra2.o
Only in angband-3.0.1.bigtile/src: z-form.o
Only in angband-3.0.1.bigtile/src: z-rand.o
diff -ur angband-3.0.1.orig/src/z-term.c angband-3.0.1.bigtile/src/z-term.c
--- angband-3.0.1.orig/src/z-term.c	Sat Jul 13 04:59:07 2002
+++ angband-3.0.1.bigtile/src/z-term.c	Sun Jul 14 06:48:41 2002
@@ -185,6 +185,7 @@
  *   Term->user_hook = Perform user actions
  *   Term->xtra_hook = Perform extra actions
  *   Term->curs_hook = Draw (or Move) the cursor
+ *   Term->bigcurs_hook = Draw (or Move) the big cursor (for kanji and bigtile mode)
  *   Term->wipe_hook = Draw some blank spaces
  *   Term->text_hook = Draw some text in the window
  *   Term->pict_hook = Draw some attr/chars in the window
@@ -769,6 +770,9 @@
 		/* Handle high-bit attr/chars */
 		if ((na & 0x80) && (nc & 0x80))
 		{
+			/* 2nd byte of bigtile */
+			if (na == 255 && nc == -1) continue;
+
 			/* Flush */
 			if (fn)
 			{
@@ -1114,6 +1118,7 @@
 
 	/* Paranoia -- use "fake" hooks to prevent core dumps */
 	if (!Term->curs_hook) Term->curs_hook = Term_curs_hack;
+	if (!Term->bigcurs_hook) Term->bigcurs_hook = Term->curs_hook;
 	if (!Term->wipe_hook) Term->wipe_hook = Term_wipe_hack;
 	if (!Term->text_hook) Term->text_hook = Term_text_hack;
 	if (!Term->pict_hook) Term->pict_hook = Term_pict_hack;
@@ -1297,8 +1302,16 @@
 		/* Draw the cursor */
 		if (!scr->cu && scr->cv)
 		{
-			/* Call the cursor display routine */
-			(void)((*Term->curs_hook)(scr->cx, scr->cy));
+                        if (scr->cx + 1 < w && old->a[scr->cy][scr->cx+1] == 255)
+                        {
+                                /* Double width cursor for the Bigtile mode */
+                                (void)((*Term->bigcurs_hook)(scr->cx, scr->cy));
+                        }
+                        else
+                        {
+                                /* Call the cursor display routine */
+                                (void)((*Term->curs_hook)(scr->cx, scr->cy));
+                        }
 		}
 	}
 
@@ -1592,6 +1605,12 @@
 	scr_taa = Term->scr->ta[y];
 	scr_tcc = Term->scr->tc[y];
 
+        if (n > 0 && scr_cc[x] == -1 && scr_aa[x] == 255)
+        {
+                x--;
+                n++;
+        }
+
 	/* Scan every column */
 	for (i = 0; i < n; i++, x++)
 	{
@@ -1730,6 +1749,9 @@
 	/* Set the x limits */
 	for (i = Term->y1; i <= Term->y2; i++)
 	{
+                if (x1 > 0 && Term->old->a[i][x1] == 255)
+                        x1--;
+
 		Term->x1[i] = x1;
 		Term->x2[i] = x2;
 
Only in angband-3.0.1.bigtile/src: z-term.c.orig
diff -ur angband-3.0.1.orig/src/z-term.h angband-3.0.1.bigtile/src/z-term.h
--- angband-3.0.1.orig/src/z-term.h	Fri Jul 12 04:15:05 2002
+++ angband-3.0.1.bigtile/src/z-term.h	Sun Jul 14 06:48:41 2002
@@ -212,6 +212,8 @@
 
 	errr (*curs_hook)(int x, int y);
 
+	errr (*bigcurs_hook)(int x, int y);
+
 	errr (*wipe_hook)(int x, int y, int n);
 
 	errr (*text_hook)(int x, int y, int n, byte a, cptr s);
Only in angband-3.0.1.bigtile/src: z-term.o
Only in angband-3.0.1.bigtile/src: z-util.o
Only in angband-3.0.1.bigtile/src: z-virt.o
