Bigtile mode patch for Angband 3.0.0 by Mogami bigtile-v300.diff This patch will do some hacking mainly on cave.c, z-term.c, and main-xxx.c. Currently this patch support main-x11.c main-xaw.c main-win.c main-mac.c. Linux and win port is tested. But mac port is not yet tested; probably no problem, because Hengband and ToME 2.0.0 cvs already have this patch, and no serious bug. Technical note about this patch: 1. (defines.h) PANEL_WID and SCREEN_WID will be changed to; #define PANEL_WID (use_bigtile ? 16 : 33) #define SCREEN_WID ((Term->wid - COL_MAP - 1) / (use_bigtile ? 2 : 1)) 2. (lite_spot(), print_rel(), prt_map() and display_map() in cave.c) Each tile will be placed on two byte of screen space; first byte is originaly attr/char pair and second byte will be dummy data 255/255. 3. (z-term.c) A few modification to refresh/remove bigtile correctly. 4. (main-x11.c main-xaw.c main-win.c main-mac.c) - Draw double width tile; location of each tile need not to be modified, because of second byte dummy char which is ignored. - Double width cursor; Sadly, current Term_curs_xxx() need to read information directry from Term->old->a[][] to decide whether cursor is to be doubled or not. To fix this dependence, maybe we need to add a boolean argument to this function. (Nuke me!) - When we change Bigtile mode from menu item, we need to redraw whole screen; I had inserted Term_key_push(KTRL('R')); only in main-win.c. Since this code may have some problem, I had not inserted it in main-mac.c. But win port seems to work completely. Mogami