OSDN Git Service

[Refactor] #37353 player-item.c/h 削除。 xtra2.c を player-status.c に分離。 / Delete player...
[hengband/hengband.git] / src / cmd4.c
index 11aa016..4004316 100644 (file)
@@ -41,6 +41,8 @@
 
 #include "angband.h"
 #include "cmd-pet.h"
+#include "world.h"
+#include "player-status.h"
 
 
 /*
@@ -364,12 +366,12 @@ errr do_cmd_write_nikki(int type, int num, cptr note)
 {
        int day, hour, min;
        FILE *fff = NULL;
-       char file_name[80];
+       GAME_TEXT file_name[MAX_NLEN];
        char buf[1024];
        cptr note_level = "";
        bool do_level = TRUE;
        char note_level_buf[40];
-       int q_idx;
+       QUEST_IDX q_idx;
 
        static bool disable_nikki = FALSE;
 
@@ -490,7 +492,7 @@ errr do_cmd_write_nikki(int type, int num, cptr note)
                }
                case NIKKI_RAND_QUEST_C:
                {
-                       char name[80];
+                       GAME_TEXT name[MAX_NLEN];
                        strcpy(name, r_name+r_info[quest[num].r_idx].name);
                        fprintf(fff, _(" %2d:%02d %20s ランダムクエスト(%s)を達成した。\n",
                                                   " %2d:%02d %20s completed random quest '%s'\n"), hour, min, note_level, name);
@@ -498,7 +500,7 @@ errr do_cmd_write_nikki(int type, int num, cptr note)
                }
                case NIKKI_RAND_QUEST_F:
                {
-                       char name[80];
+                       GAME_TEXT name[MAX_NLEN];
                        strcpy(name, r_name+r_info[quest[num].r_idx].name);
                        fprintf(fff, _(" %2d:%02d %20s ランダムクエスト(%s)から逃げ出した。\n",
                                                   " %2d:%02d %20s ran away from quest '%s'.\n"), hour, min, note_level, name);
@@ -721,7 +723,7 @@ errr do_cmd_write_nikki(int type, int num, cptr note)
 static void do_cmd_disp_nikki(void)
 {
        char nikki_title[256];
-       char file_name[80];
+       GAME_TEXT file_name[MAX_NLEN];
        char buf[1024];
        char tmp[80];
 #ifdef JP
@@ -858,7 +860,7 @@ static void do_cmd_last_get(void)
  */
 static void do_cmd_erase_nikki(void)
 {
-       char file_name[80];
+       GAME_TEXT file_name[MAX_NLEN];
        char buf[256];
        FILE *fff = NULL;
 
@@ -891,14 +893,11 @@ void do_cmd_nikki(void)
 
        /* File type is "TEXT" */
        FILE_TYPE(FILE_TYPE_TEXT);
-
-       /* Save the screen */
        screen_save();
 
        /* Interact until done */
        while (1)
        {
-               /* Clear screen */
                Term_clear();
 
                /* Ask for a choice */
@@ -918,7 +917,6 @@ void do_cmd_nikki(void)
                /* Prompt */
                i = inkey();
 
-               /* Done */
                if (i == ESCAPE) break;
 
                switch (i)
@@ -943,11 +941,8 @@ void do_cmd_nikki(void)
                        bell();
                }
 
-               /* Flush messages */
-               msg_print(NULL);
+               msg_erase();
        }
-
-       /* Restore the screen */
        screen_load();
 }
 
@@ -981,33 +976,19 @@ void do_cmd_redraw(void)
        p_ptr->notice |= (PN_COMBINE | PN_REORDER);
 
 
-       /* Update torch */
        p_ptr->update |= (PU_TORCH);
-
-       /* Update stuff */
        p_ptr->update |= (PU_BONUS | PU_HP | PU_MANA | PU_SPELLS);
-
-       /* Forget lite/view */
        p_ptr->update |= (PU_UN_VIEW | PU_UN_LITE);
-
-       /* Update lite/view */
        p_ptr->update |= (PU_VIEW | PU_LITE | PU_MON_LITE);
-
-       /* Update monsters */
        p_ptr->update |= (PU_MONSTERS);
 
-       /* Redraw everything */
        p_ptr->redraw |= (PR_WIPE | PR_BASIC | PR_EXTRA | PR_MAP | PR_EQUIPPY);
 
-       /* Window stuff */
        p_ptr->window |= (PW_INVEN | PW_EQUIP | PW_SPELL | PW_PLAYER);
-
-       /* Window stuff */
        p_ptr->window |= (PW_MESSAGE | PW_OVERHEAD | PW_DUNGEON | PW_MONSTER | PW_OBJECT);
 
        update_playtime();
 
-       /* Hack -- update */
        handle_stuff();
 
        if (p_ptr->prace == RACE_ANDROID) calc_android_exp();
@@ -1021,14 +1002,8 @@ void do_cmd_redraw(void)
 
                /* Activate */
                Term_activate(angband_term[j]);
-
-               /* Redraw */
                Term_redraw();
-
-               /* Refresh */
                Term_fresh();
-
-               /* Restore */
                Term_activate(old);
        }
 }
@@ -1047,8 +1022,6 @@ void do_cmd_change_name(void)
 
        char    tmp[160];
 
-
-       /* Save the screen */
        screen_save();
 
        /* Forever */
@@ -1108,21 +1081,14 @@ void do_cmd_change_name(void)
                {
                        mode++;
                }
-
-               /* Oops */
                else
                {
                        bell();
                }
 
-               /* Flush messages */
-               msg_print(NULL);
+               msg_erase();
        }
-
-       /* Restore the screen */
        screen_load();
-
-       /* Redraw everything */
        p_ptr->redraw |= (PR_WIPE | PR_BASIC | PR_EXTRA | PR_MAP | PR_EQUIPPY);
 
        handle_stuff();
@@ -1136,7 +1102,7 @@ void do_cmd_change_name(void)
  */
 void do_cmd_message_one(void)
 {
-       /* Recall one message XXX XXX XXX */
+       /* Recall one message */
        prt(format("> %s", message_str(0)), 0, 0);
 }
 
@@ -1173,7 +1139,6 @@ void do_cmd_messages(int num_now)
        int wid, hgt;
        int num_lines;
 
-       /* Get size */
        Term_get_size(&wid, &hgt);
 
        /* Number of message lines in a screen */
@@ -1190,11 +1155,7 @@ void do_cmd_messages(int num_now)
 
        /* Start on first message */
        i = 0;
-
-       /* Save the screen */
        screen_save();
-
-       /* Clear screen */
        Term_clear();
 
        /* Process requests until done */
@@ -1236,7 +1197,7 @@ void do_cmd_messages(int num_now)
                        Term_erase(0, num_lines + 1 - j, 255);
                }
 
-               /* Display header XXX XXX XXX */
+               /* Display header */
                /* translation */
                prt(format(_("以前のメッセージ %d-%d 全部で(%d)", "Message Recall (%d-%d of %d)"),
                           i, i + j - 1, n), 0, 0);
@@ -1245,7 +1206,6 @@ void do_cmd_messages(int num_now)
                prt(_("[ 'p' で更に古いもの, 'n' で更に新しいもの, '/' で検索, ESC で中断 ]",
                          "[Press 'p' for older, 'n' for newer, ..., or ESCAPE]"), hgt - 1, 0);
 
-               /* Get a command */
                skey = inkey_special(TRUE);
 
                /* Exit on Escape */
@@ -1270,7 +1230,6 @@ void do_cmd_messages(int num_now)
                        }
                        else strcpy(shower_str, back_str);
 
-                       /* Okay */
                        continue;
 
                /* Hack -- handle find */
@@ -1309,7 +1268,6 @@ void do_cmd_messages(int num_now)
                                                /* New location */
                                                i = z;
 
-                                               /* Done */
                                                break;
                                        }
                                }
@@ -1377,8 +1335,6 @@ void do_cmd_messages(int num_now)
                /* Hack -- Error of some kind */
                if (i == j) bell();
        }
-
-       /* Restore the screen */
        screen_load();
 }
 
@@ -1394,8 +1350,6 @@ static void do_cmd_options_cheat(cptr info)
        char    ch;
        int             i, k = 0, n = CHEAT_MAX;
        char    buf[80];
-
-       /* Clear screen */
        Term_clear();
 
        /* Interact with the player */
@@ -1403,7 +1357,7 @@ static void do_cmd_options_cheat(cptr info)
        {
                DIRECTION dir;
 
-               /* Prompt XXX XXX XXX */
+               /* Prompt */
                sprintf(buf, _("%s ( リターンで次へ, y/n でセット, ESC で決定 )", "%s (RET to advance, y/n to set, ESC to accept) "), info);
 
                prt(buf, 0, 0);
@@ -1541,20 +1495,16 @@ static s16b toggle_frequency(s16b current)
  */
 static void do_cmd_options_autosave(cptr info)
 {
-       char    ch;
-
-       int     i, k = 0, n = 2;
-
-       char    buf[80];
-
+       char ch;
+       int i, k = 0, n = 2;
+       char buf[80];
 
-       /* Clear screen */
        Term_clear();
 
        /* Interact with the player */
        while (TRUE)
        {
-               /* Prompt XXX XXX XXX */
+               /* Prompt */
                sprintf(buf, _("%s ( リターンで次へ, y/n でセット, F で頻度を入力, ESC で決定 ) ", 
                                           "%s (RET to advance, y/n to set, 'F' for frequency, ESC to accept) "), info);
 
@@ -1570,9 +1520,9 @@ static void do_cmd_options_autosave(cptr info)
 
                        /* Display the option text */
                        sprintf(buf, "%-48s: %s (%s)",
-                           autosave_info[i].o_desc,
-                           (*autosave_info[i].o_var ? _("はい  ", "yes") : _("いいえ", "no ")),
-                           autosave_info[i].o_text);
+                               autosave_info[i].o_desc,
+                               (*autosave_info[i].o_var ? _("はい  ", "yes") : _("いいえ", "no ")),
+                               autosave_info[i].o_text);
                        c_prt(a, buf, i + 2, 0);
                }
                prt(format(_("自動セーブの頻度: %d ターン毎", "Timed autosave frequency: every %d turns"),  autosave_freq), 5, 0);
@@ -1677,9 +1627,6 @@ void do_cmd_options_aux(int page, cptr info)
                /* Notice options on this "page" */
                if (option_info[i].o_page == page) opt[n++] = i;
        }
-
-
-       /* Clear screen */
        Term_clear();
 
        /* Interact with the player */
@@ -1687,7 +1634,7 @@ void do_cmd_options_aux(int page, cptr info)
        {
                DIRECTION dir;
 
-               /* Prompt XXX XXX XXX */
+               /* Prompt */
                sprintf(buf, _("%s (リターン:次, %sESC:終了, ?:ヘルプ) ", "%s (RET:next, %s, ?:help) "),
                                        info, browse_only ? _("", "ESC:exit") : _("y/n:変更, ", "y/n:change, ESC:accept"));
                prt(buf, 0, 0);
@@ -1824,14 +1771,12 @@ static void do_cmd_options_win(void)
                old_flag[j] = window_flag[j];
        }
 
-
-       /* Clear screen */
        Term_clear();
 
        /* Interact */
        while (go)
        {
-               /* Prompt XXX XXX XXX */
+               /* Prompt */
                prt(_("ウィンドウ・フラグ (<方向>で移動, tでチェンジ, y/n でセット, ESC)", "Window Flags (<dir>, t, y, n, ESC) "), 0, 0);
 
                /* Display the windows */
@@ -1966,14 +1911,8 @@ static void do_cmd_options_win(void)
 
                /* Activate */
                Term_activate(angband_term[j]);
-
-               /* Erase */
                Term_clear();
-
-               /* Refresh */
                Term_fresh();
-
-               /* Restore */
                Term_activate(old);
        }
 }
@@ -2043,10 +1982,8 @@ option_fields[OPT_NUM] =
 void do_cmd_options(void)
 {
        char k;
-       int i, d, skey;
-       int y = 0;
-
-       /* Save the screen */
+       int d, skey;
+       TERM_LEN i, y = 0;
        screen_save();
 
        /* Interact */
@@ -2056,8 +1993,6 @@ void do_cmd_options(void)
 
                /* Does not list cheat option when cheat option is off */
                if (!p_ptr->noscore && !allow_debug_opts) n--;
-
-               /* Clear screen */
                Term_clear();
 
                /* Why are we here */
@@ -2311,18 +2246,14 @@ void do_cmd_options(void)
                        /* Unknown option */
                        default:
                        {
-                               /* Oops */
                                bell();
                                break;
                        }
                }
 
-               /* Flush messages */
-               msg_print(NULL);
+               msg_erase();
        }
 
-
-       /* Restore the screen */
        screen_load();
 
        /* Hack - Redraw equippy chars */
@@ -2336,7 +2267,7 @@ void do_cmd_options(void)
  * Ask for a "user pref line" and process it
  * @return なし
  * @details
- * XXX XXX XXX Allow absolute file names?
+ * Allow absolute file names?
  */
 void do_cmd_pref(void)
 {
@@ -2435,7 +2366,6 @@ static void do_cmd_macro_aux(char *buf)
        int n = 0;
        char tmp[1024];
 
-       /* Flush */
        flush();
 
        /* Do not process macros */
@@ -2463,10 +2393,8 @@ static void do_cmd_macro_aux(char *buf)
        /* Terminate */
        buf[n] = '\0';
 
-       /* Flush */
        flush();
 
-
        /* Convert the trigger */
        ascii_to_text(tmp, buf);
 
@@ -2484,31 +2412,25 @@ static void do_cmd_macro_aux(char *buf)
  * @details
  * <pre>
  * Note that both "flush()" calls are extremely important.  This may
- * no longer be true, since "util.c" is much simpler now.  XXX XXX XXX
+ * no longer be true, since "util.c" is much simpler now.  
  * </pre>
  */
 static void do_cmd_macro_aux_keymap(char *buf)
 {
        char tmp[1024];
 
-
-       /* Flush */
        flush();
 
-
        /* Get a key */
        buf[0] = inkey();
        buf[1] = '\0';
 
-
        /* Convert to ascii */
        ascii_to_text(tmp, buf);
 
        /* Hack -- display the trigger */
        Term_addstr(-1, TERM_WHITE, tmp);
 
-
-       /* Flush */
        flush();
 }
 
@@ -2595,7 +2517,7 @@ static errr keymap_dump(cptr fname)
  * <pre>
  * Note that the macro "action" must be defined before the trigger.
  *
- * Could use some helpful instructions on this page.  XXX XXX XXX
+ * Could use some helpful instructions on this page.  
  * </pre>
  */
 void do_cmd_macros(void)
@@ -2624,18 +2546,13 @@ void do_cmd_macros(void)
        /* File type is "TEXT" */
        FILE_TYPE(FILE_TYPE_TEXT);
 
-
-       /* Save screen */
        screen_save();
 
 
        /* Process requests until done */
        while (1)
        {
-               /* Clear screen */
                Term_clear();
-
-               /* Describe */
                prt(_("[ マクロの設定 ]", "Interact with Macros"), 2, 0);
 
                /* Describe that action */
@@ -2665,7 +2582,6 @@ void do_cmd_macros(void)
                /* Prompt */
                prt(_("コマンド: ", "Command: "), 16, 0);
 
-               /* Get a command */
                i = inkey();
 
                /* Leave */
@@ -2984,18 +2900,13 @@ void do_cmd_macros(void)
 
 #endif /* ALLOW_MACROS */
 
-               /* Oops */
                else
                {
-                       /* Oops */
                        bell();
                }
 
-               /* Flush messages */
-               msg_print(NULL);
+               msg_erase();
        }
-
-       /* Load screen */
        screen_load();
 }
 
@@ -3090,20 +3001,17 @@ void do_cmd_visuals(void)
        char tmp[160];
        char buf[1024];
        bool need_redraw = FALSE;
-       const char *empty_symbol = "<< ? >>";
+       cptr empty_symbol = "<< ? >>";
 
        if (use_bigtile) empty_symbol = "<< ?? >>";
 
        /* File type is "TEXT" */
        FILE_TYPE(FILE_TYPE_TEXT);
-
-       /* Save the screen */
        screen_save();
 
        /* Interact until done */
        while (1)
        {
-               /* Clear screen */
                Term_clear();
 
                /* Ask for a choice */
@@ -3112,7 +3020,6 @@ void do_cmd_visuals(void)
                /* Prompt */
                i = inkey();
 
-               /* Done */
                if (i == ESCAPE) break;
 
                switch (i)
@@ -3184,7 +3091,6 @@ void do_cmd_visuals(void)
                        /* Close */
                        close_auto_dump();
 
-                       /* Message */
                        msg_print(_("モンスターの[色/文字]をファイルに書き出しました。", "Dumped monster attr/chars."));
 
                        break;
@@ -3194,7 +3100,7 @@ void do_cmd_visuals(void)
                case '2':
                {
                        static cptr mark = "Object attr/chars";
-                       IDX k_idx;
+                       KIND_OBJECT_IDX k_idx;
 
                        /* Prompt */
                        prt(_("コマンド: アイテムの[色/文字]をファイルに書き出します", "Command: Dump object attr/chars"), 15, 0);
@@ -3220,7 +3126,7 @@ void do_cmd_visuals(void)
                        /* Dump objects */
                        for (k_idx = 0; k_idx < max_k_idx; k_idx++)
                        {
-                               char o_name[80];
+                               GAME_TEXT o_name[MAX_NLEN];
                                object_kind *k_ptr = &k_info[k_idx];
 
                                /* Skip non-entries */
@@ -3253,7 +3159,6 @@ void do_cmd_visuals(void)
                        /* Close */
                        close_auto_dump();
 
-                       /* Message */
                        msg_print(_("アイテムの[色/文字]をファイルに書き出しました。", "Dumped object attr/chars."));
 
                        break;
@@ -3309,7 +3214,6 @@ void do_cmd_visuals(void)
                        /* Close */
                        close_auto_dump();
 
-                       /* Message */
                        msg_print(_("地形の[色/文字]をファイルに書き出しました。", "Dumped feature attr/chars."));
 
                        break;
@@ -3357,7 +3261,6 @@ void do_cmd_visuals(void)
                                Term_putstr(0, 22, -1, TERM_WHITE, 
                                        _("コマンド (n/N/^N/a/A/^A/c/C/^C/v/V/^V): ", "Command (n/N/^N/a/A/^A/c/C/^C/v/V/^V): "));
 
-                               /* Get a command */
                                i = inkey();
 
                                /* All done */
@@ -3397,8 +3300,6 @@ void do_cmd_visuals(void)
                                        break;
                                case 'v':
                                        do_cmd_knowledge_monsters(&need_redraw, TRUE, r);
-
-                                       /* Clear screen */
                                        Term_clear();
                                        print_visuals_menu(choice_msg);
                                        break;
@@ -3450,7 +3351,6 @@ void do_cmd_visuals(void)
                                Term_putstr(0, 22, -1, TERM_WHITE,
                                            _("コマンド (n/N/^N/a/A/^A/c/C/^C/v/V/^V): ", "Command (n/N/^N/a/A/^A/c/C/^C/v/V/^V): "));
 
-                               /* Get a command */
                                i = inkey();
 
                                /* All done */
@@ -3490,8 +3390,6 @@ void do_cmd_visuals(void)
                                        break;
                                case 'v':
                                        do_cmd_knowledge_objects(&need_redraw, TRUE, k);
-
-                                       /* Clear screen */
                                        Term_clear();
                                        print_visuals_menu(choice_msg);
                                        break;
@@ -3555,7 +3453,6 @@ void do_cmd_visuals(void)
                                            "Command (n/N/^N/a/A/^A/c/C/^C/l/L/^L/d/D/^D/v/V/^V): ");
 #endif
 
-                               /* Get a command */
                                i = inkey();
 
                                /* All done */
@@ -3602,8 +3499,6 @@ void do_cmd_visuals(void)
                                        break;
                                case 'v':
                                        do_cmd_knowledge_features(&need_redraw, TRUE, f, &lighting_level);
-
-                                       /* Clear screen */
                                        Term_clear();
                                        print_visuals_menu(choice_msg);
                                        break;
@@ -3639,7 +3534,6 @@ void do_cmd_visuals(void)
                        /* Reset */
                        reset_visuals();
 
-                       /* Message */
                        msg_print(_("画面上の[色/文字]を初期値にリセットしました。", "Visual attr/char tables reset."));
                        need_redraw = TRUE;
                        break;
@@ -3650,11 +3544,8 @@ void do_cmd_visuals(void)
                        break;
                }
 
-               /* Flush messages */
-               msg_print(NULL);
+               msg_erase();
        }
-
-       /* Restore the screen */
        screen_load();
 
        if (need_redraw) do_cmd_redraw();
@@ -3676,15 +3567,12 @@ void do_cmd_colors(void)
        /* File type is "TEXT" */
        FILE_TYPE(FILE_TYPE_TEXT);
 
-
-       /* Save the screen */
        screen_save();
 
 
        /* Interact until done */
        while (1)
        {
-               /* Clear screen */
                Term_clear();
 
                /* Ask for a choice */
@@ -3703,7 +3591,6 @@ void do_cmd_colors(void)
                /* Prompt */
                i = inkey();
 
-               /* Done */
                if (i == ESCAPE) break;
 
                /* Load a 'pref' file */
@@ -3786,7 +3673,6 @@ void do_cmd_colors(void)
                        /* Close */
                        close_auto_dump();
 
-                       /* Message */
                        msg_print(_("カラーの設定をファイルに書き出しました。", "Dumped color redefinitions."));
                }
 
@@ -3836,8 +3722,6 @@ void do_cmd_colors(void)
                                Term_putstr(0, 14, -1, TERM_WHITE,
                                        _("コマンド (n/N/k/K/r/R/g/G/b/B): ", "Command (n/N/k/K/r/R/g/G/b/B): "));
 
-
-                               /* Get a command */
                                i = inkey();
 
                                /* All done */
@@ -3871,12 +3755,9 @@ void do_cmd_colors(void)
                        bell();
                }
 
-               /* Flush messages */
-               msg_print(NULL);
+               msg_erase();
        }
 
-
-       /* Restore the screen */
        screen_load();
 }
 
@@ -4687,21 +4568,15 @@ void do_cmd_load_screen(void)
        /* Append to the file */
        fff = my_fopen(buf, "r");
 
-       /* Oops */
        if (!fff) {
                msg_format(_("%s を開くことができませんでした。", "Failed to open %s."), buf);
                msg_print(NULL);
                return;
        }
 
-
-       /* Save the screen */
        screen_save();
-
-       /* Clear the screen */
        Term_clear();
 
-
        /* Load the screen */
        for (y = 0; okay; y++)
        {
@@ -4763,14 +4638,11 @@ void do_cmd_load_screen(void)
        my_fclose(fff);
 
 
-       /* Message */
        prt(_("ファイルに書き出された画面(記念撮影)をロードしました。", "Screen dump loaded."), 0, 0);
 
        flush();
        inkey();
 
-
-       /* Restore the screen */
        screen_load();
 }
 
@@ -4798,9 +4670,9 @@ cptr inven_res_label = _("                               酸電火冷毒光闇
 
 
 /* XTRA HACK RESLIST */
-static void do_cmd_knowledge_inven_aux(FILE *fff, object_type *o_ptr, int *j, byte tval, char *where)
+static void do_cmd_knowledge_inven_aux(FILE *fff, object_type *o_ptr, int *j, OBJECT_TYPE_VALUE tval, char *where)
 {
-       char o_name[MAX_NLEN];
+       GAME_TEXT o_name[MAX_NLEN];
        BIT_FLAGS flgs[TR_FLAG_SIZE];
 
        if (!o_ptr->k_idx) return;
@@ -4898,11 +4770,11 @@ static void do_cmd_knowledge_inven(void)
 {
        FILE *fff;
 
-       char file_name[1024];
+       GAME_TEXT file_name[1024];
 
        store_type  *st_ptr;
 
-       byte tval;
+       OBJECT_TYPE_VALUE tval;
        int i = 0;
        int j = 0;
 
@@ -4944,8 +4816,6 @@ static void do_cmd_knowledge_inven(void)
                        do_cmd_knowledge_inven_aux(fff, &st_ptr->stock[i], &j, tval, where);
                }
        }
-
-       /* Close the file */
        my_fclose(fff);
 
        /* Display the file contents */
@@ -4995,7 +4865,6 @@ void do_cmd_save_screen_html_aux(char *filename, int message)
        /* Append to the file */
        fff = my_fopen(filename, "w");
 
-       /* Oops */
        if (!fff) {
                if (message) {
                    msg_format(_("ファイル %s を開けませんでした。", "Failed to open file %s."), filename);
@@ -5004,10 +4873,7 @@ void do_cmd_save_screen_html_aux(char *filename, int message)
                
                return;
        }
-
-       /* Save the screen */
-       if (message)
-               screen_save();
+       if (message) screen_save();
 
        /* Build the filename */
        path_build(buf, sizeof(buf), ANGBAND_DIR_USER, "htmldump.prf");
@@ -5101,13 +4967,10 @@ void do_cmd_save_screen_html_aux(char *filename, int message)
        /* Close it */
        my_fclose(fff);
 
-       /* Message */
        if (message) {
                msg_print(_("画面(記念撮影)をファイルに書き出しました。", "Screen dump saved."));
                msg_print(NULL);
        }
-
-       /* Restore the screen */
        if (message)
                screen_load();
 }
@@ -5171,11 +5034,7 @@ void do_cmd_save_screen(void)
        {
                use_graphics = FALSE;
                reset_visuals();
-
-               /* Redraw everything */
                p_ptr->redraw |= (PR_WIPE | PR_BASIC | PR_EXTRA | PR_MAP | PR_EQUIPPY);
-
-               /* Hack -- update */
                handle_stuff();
        }
 
@@ -5211,7 +5070,6 @@ void do_cmd_save_screen(void)
                /* Append to the file */
                fff = my_fopen(buf, "w");
 
-               /* Oops */
                if (!fff)
                {
                        msg_format(_("ファイル %s を開けませんでした。", "Failed to open file %s."), buf);
@@ -5219,8 +5077,6 @@ void do_cmd_save_screen(void)
                        return;
                }
 
-
-               /* Save the screen */
                screen_save();
 
 
@@ -5271,15 +5127,11 @@ void do_cmd_save_screen(void)
                /* Skip a line */
                fprintf(fff, "\n");
 
-
                /* Close it */
                my_fclose(fff);
 
-               /* Message */
                msg_print(_("画面(記念撮影)をファイルに書き出しました。", "Screen dump saved."));
                msg_print(NULL);
-
-               /* Restore the screen */
                screen_load();
        }
 
@@ -5287,11 +5139,7 @@ void do_cmd_save_screen(void)
        {
                use_graphics = TRUE;
                reset_visuals();
-
-               /* Redraw everything */
                p_ptr->redraw |= (PR_WIPE | PR_BASIC | PR_EXTRA | PR_MAP | PR_EQUIPPY);
-
-               /* Hack -- update */
                handle_stuff();
        }
 }
@@ -5395,9 +5243,9 @@ static void do_cmd_knowledge_artifacts(void)
 
        FILE *fff;
 
-       char file_name[1024];
+       GAME_TEXT file_name[1024];
 
-       char base_name[MAX_NLEN];
+       GAME_TEXT base_name[MAX_NLEN];
 
        bool *okay;
 
@@ -5441,14 +5289,12 @@ static void do_cmd_knowledge_artifacts(void)
                {
                        cave_type *c_ptr = &cave[y][x];
 
-                       s16b this_o_idx, next_o_idx = 0;
+                       OBJECT_IDX this_o_idx, next_o_idx = 0;
 
                        /* Scan all objects in the grid */
                        for (this_o_idx = c_ptr->o_idx; this_o_idx; this_o_idx = next_o_idx)
                        {
                                object_type *o_ptr;
-
-                               /* Acquire object */
                                o_ptr = &o_list[this_o_idx];
 
                                /* Acquire next object */
@@ -5512,8 +5358,6 @@ static void do_cmd_knowledge_artifacts(void)
                {
                        object_type forge;
                        object_type *q_ptr;
-
-                       /* Get local object */
                        q_ptr = &forge;
 
                        /* Create fake object */
@@ -5538,8 +5382,6 @@ static void do_cmd_knowledge_artifacts(void)
 
        /* Free the "okay" array */
        C_KILL(okay, max_a_idx, bool);
-
-       /* Close the file */
        my_fclose(fff);
 
        /* Display the file contents */
@@ -5563,7 +5405,7 @@ static void do_cmd_knowledge_uniques(void)
 
        FILE *fff;
 
-       char file_name[1024];
+       GAME_TEXT file_name[1024];
 
        int n_alive[10];
        int n_alive_surface = 0;
@@ -5578,9 +5420,9 @@ static void do_cmd_knowledge_uniques(void)
 
        if (!fff)
        {
-           msg_format(_("一時ファイル %s を作成できませんでした。", "Failed to create temporary file %s."), file_name);
-           msg_print(NULL);
-           return;
+               msg_format(_("一時ファイル %s を作成できませんでした。", "Failed to create temporary file %s."), file_name);
+               msg_print(NULL);
+               return;
        }
 
        /* Allocate the "who" array */
@@ -5660,14 +5502,11 @@ static void do_cmd_knowledge_uniques(void)
        {
                monster_race *r_ptr = &r_info[who[k]];
 
-               /* Print a message */
                fprintf(fff, _("     %s (レベル%d)\n", "     %s (level %d)\n"), r_name + r_ptr->name, (int)r_ptr->level);
        }
 
        /* Free the "who" array */
        C_KILL(who, max_r_idx, s16b);
-
-       /* Close the file */
        my_fclose(fff);
 
        /* Display the file contents */
@@ -5688,7 +5527,7 @@ static void do_cmd_knowledge_weapon_exp(void)
 
        FILE *fff;
 
-       char file_name[1024];
+       GAME_TEXT file_name[1024];
        char tmp[30];
 
        /* Open a new file */
@@ -5724,8 +5563,6 @@ static void do_cmd_knowledge_weapon_exp(void)
                        }
                }
        }
-
-       /* Close the file */
        my_fclose(fff);
 
        /* Display the file contents */
@@ -5749,7 +5586,7 @@ static void do_cmd_knowledge_spell_exp(void)
        FILE *fff;
        const magic_type *s_ptr;
 
-       char file_name[1024];
+       GAME_TEXT file_name[1024];
 
        /* Open a new file */
        fff = my_fopen_temp(file_name, 1024);
@@ -5814,8 +5651,6 @@ static void do_cmd_knowledge_spell_exp(void)
                        fprintf(fff, "\n");
                }
        }
-
-       /* Close the file */
        my_fclose(fff);
 
        /* Display the file contents */
@@ -5837,8 +5672,8 @@ static void do_cmd_knowledge_skill_exp(void)
 
        FILE *fff;
 
-       char file_name[1024];
-       char skill_name[3][20]={_("マーシャルアーツ", "Martial Arts    "),
+       GAME_TEXT file_name[1024];
+       GAME_TEXT skill_name[3][20]={_("マーシャルアーツ", "Martial Arts    "),
                                                        _("二刀流          ", "Dual Wielding   "), 
                                                        _("乗馬            ", "Riding          ")};
 
@@ -5860,8 +5695,6 @@ static void do_cmd_knowledge_skill_exp(void)
                if (cheat_xtra) fprintf(fff, " %d", skill_exp);
                fprintf(fff, "\n");
        }
-
-       /* Close the file */
        my_fclose(fff);
 
        /* Display the file contents */
@@ -6007,10 +5840,10 @@ static void do_cmd_knowledge_pets(void)
        int             i;
        FILE            *fff;
        monster_type    *m_ptr;
-       char            pet_name[80];
+       GAME_TEXT pet_name[MAX_NLEN];
        int             t_friends = 0;
        int             show_upkeep = 0;
-       char            file_name[1024];
+       GAME_TEXT file_name[1024];
 
 
        /* Open a new file */
@@ -6052,8 +5885,6 @@ static void do_cmd_knowledge_pets(void)
 #endif
 
 
-
-       /* Close the file */
        my_fclose(fff);
 
        /* Display the file contents */
@@ -6068,7 +5899,7 @@ static void do_cmd_knowledge_pets(void)
  * @brief 現在のペットを表示するコマンドのメインルーチン /
  * Total kill count
  * @return なし
- * @note the player ghosts are ignored.  XXX XXX XXX
+ * @note the player ghosts are ignored.  
  */
 static void do_cmd_knowledge_kill_count(void)
 {
@@ -6079,7 +5910,7 @@ static void do_cmd_knowledge_kill_count(void)
 
        FILE *fff;
 
-       char file_name[1024];
+       GAME_TEXT file_name[1024];
 
        s32b Total = 0;
 
@@ -6163,9 +5994,7 @@ static void do_cmd_knowledge_kill_count(void)
 
                        if (dead)
                        {
-                               /* Print a message */
-                               fprintf(fff, "     %s\n",
-                                   (r_name + r_ptr->name));
+                               fprintf(fff, "     %s\n", (r_name + r_ptr->name));
                                Total++;
                        }
                }
@@ -6212,15 +6041,12 @@ static void do_cmd_knowledge_kill_count(void)
 #ifdef JP
        fprintf(fff,"    合計: %lu 体を倒した。\n", (unsigned long int)Total);
 #else
-       fprintf(fff,"   Total: %lu creature%s killed.\n",
-               (unsigned long int)Total, (Total == 1 ? "" : "s"));
+       fprintf(fff,"   Total: %lu creature%s killed.\n", (unsigned long int)Total, (Total == 1 ? "" : "s"));
 #endif
 
 
        /* Free the "who" array */
        C_KILL(who, max_r_idx, s16b);
-
-       /* Close the file */
        my_fclose(fff);
 
        /* Display the file contents */
@@ -6244,8 +6070,7 @@ static void do_cmd_knowledge_kill_count(void)
  * @param grp_top 現在の選択リスト最上部ID
  * @return なし
  */
-static void display_group_list(int col, int row, int wid, int per_page,
-       IDX grp_idx[], cptr group_text[], int grp_cur, int grp_top)
+static void display_group_list(int col, int row, int wid, int per_page, IDX grp_idx[], cptr group_text[], int grp_cur, int grp_top)
 {
        int i;
 
@@ -6256,7 +6081,7 @@ static void display_group_list(int col, int row, int wid, int per_page,
                int grp = grp_idx[grp_top + i];
 
                /* Choose a color */
-               byte attr = (grp_top + i == grp_cur) ? TERM_L_BLUE : TERM_WHITE;
+               TERM_COLOR attr = (grp_top + i == grp_cur) ? TERM_L_BLUE : TERM_WHITE;
 
                /* Erase the entire line */
                Term_erase(col, row + i, wid);
@@ -6302,7 +6127,6 @@ static void browser_cursor(char ch, int *column, IDX *grp_cur, int grp_cnt,
                int browser_rows;
                int wid, hgt;
 
-               /* Get size */
                Term_get_size(&wid, &hgt);
 
                browser_rows = hgt - 8;
@@ -6466,10 +6290,10 @@ static byte char_idx_feat[F_LIT_MAX];
 static bool visual_mode_command(char ch, bool *visual_list_ptr,
                                int height, int width,
                                TERM_COLOR *attr_top_ptr, byte *char_left_ptr,
-                               TERM_COLOR *cur_attr_ptr, byte *cur_char_ptr, bool *need_redraw)
+                               TERM_COLOR *cur_attr_ptr, SYMBOL_CODE *cur_char_ptr, bool *need_redraw)
 {
        static TERM_COLOR attr_old = 0;
-       static byte char_old = 0;
+       static SYMBOL_CODE char_old = 0;
 
        switch (ch)
        {
@@ -6605,7 +6429,7 @@ static void display_monster_list(int col, int row, int per_page, s16b mon_idx[],
        /* Display lines until done */
        for (i = 0; i < per_page && (mon_idx[mon_top + i] >= 0); i++)
        {
-               byte attr;
+               TERM_COLOR attr;
 
                /* Get the race index */
                MONRACE_IDX r_idx = mon_idx[mon_top + i] ;
@@ -6680,7 +6504,6 @@ static void do_cmd_knowledge_monsters(bool *need_redraw, bool visual_only, IDX d
 
        BIT_FLAGS8 mode;
 
-       /* Get size */
        Term_get_size(&wid, &hgt);
 
        browser_rows = hgt - 8;
@@ -6841,8 +6664,6 @@ static void do_cmd_knowledge_monsters(bool *need_redraw, bool visual_only, IDX d
                {
                        /* Mega Hack -- track this monster race */
                        if (mon_cnt) monster_race_track(mon_idx[mon_cur]);
-
-                       /* Hack -- handle stuff */
                        handle_stuff();
                }
 
@@ -6927,7 +6748,7 @@ static void display_object_list(int col, int row, int per_page, IDX object_idx[]
        /* Display lines until done */
        for (i = 0; i < per_page && (object_idx[object_top + i] >= 0); i++)
        {
-               char o_name[80];
+               GAME_TEXT o_name[MAX_NLEN];
                TERM_COLOR a;
                byte c;
                object_kind *flavor_k_ptr;
@@ -6939,7 +6760,7 @@ static void display_object_list(int col, int row, int per_page, IDX object_idx[]
                object_kind *k_ptr = &k_info[k_idx];
 
                /* Choose a color */
-               byte attr = ((k_ptr->aware || visual_only) ? TERM_WHITE : TERM_SLATE);
+               TERM_COLOR attr = ((k_ptr->aware || visual_only) ? TERM_WHITE : TERM_SLATE);
                byte cursor = ((k_ptr->aware || visual_only) ? TERM_L_BLUE : TERM_BLUE);
 
 
@@ -6999,15 +6820,11 @@ static void display_object_list(int col, int row, int per_page, IDX object_idx[]
 /*
  * Describe fake object
  */
-static void desc_obj_fake(IDX k_idx)
+static void desc_obj_fake(KIND_OBJECT_IDX k_idx)
 {
        object_type *o_ptr;
        object_type object_type_body;
-
-       /* Get local object */
        o_ptr = &object_type_body;
-
-       /* Wipe the object */
        object_wipe(o_ptr);
 
        /* Create the artifact */
@@ -7021,8 +6838,6 @@ static void desc_obj_fake(IDX k_idx)
 
        /* Hack - mark as fake */
        /* term_obj_real = FALSE; */
-
-       /* Hack -- Handle stuff */
        handle_stuff();
 
        if (!screen_object(o_ptr, SCROBJ_FAKE_OBJECT | SCROBJ_FORCE_DETAIL))
@@ -7061,7 +6876,6 @@ static void do_cmd_knowledge_objects(bool *need_redraw, bool visual_only, IDX di
 
        byte mode;
 
-       /* Get size */
        Term_get_size(&wid, &hgt);
 
        browser_rows = hgt - 8;
@@ -7251,7 +7065,6 @@ static void do_cmd_knowledge_objects(bool *need_redraw, bool visual_only, IDX di
                        /* The "current" object changed */
                        if (object_old != object_idx[object_cur])
                        {
-                               /* Hack -- handle stuff */
                                handle_stuff();
 
                                /* Remember the "current" object */
@@ -7342,7 +7155,7 @@ static void display_feature_list(int col, int row, int per_page, FEAT_IDX *feat_
        /* Display lines until done */
        for (i = 0; i < per_page && (feat_idx[feat_top + i] >= 0); i++)
        {
-               byte attr;
+               TERM_COLOR attr;
 
                /* Get the index */
                FEAT_IDX f_idx = feat_idx[feat_top + i];
@@ -7422,14 +7235,13 @@ static void do_cmd_knowledge_features(bool *need_redraw, bool visual_only, IDX d
        int wid, hgt;
 
        TERM_COLOR attr_old[F_LIT_MAX];
-       byte char_old[F_LIT_MAX];
+       SYMBOL_CODE char_old[F_LIT_MAX];
        TERM_COLOR *cur_attr_ptr;
-       byte *cur_char_ptr;
+       SYMBOL_CODE *cur_char_ptr;
 
        (void)C_WIPE(attr_old, F_LIT_MAX, byte);
        (void)C_WIPE(char_old, F_LIT_MAX, byte);
 
-       /* Get size */
        Term_get_size(&wid, &hgt);
 
        browser_rows = hgt - 8;
@@ -7753,7 +7565,7 @@ static void do_cmd_knowledge_kubi(void)
        int i;
        FILE *fff;
        
-       char file_name[1024];
+       GAME_TEXT file_name[1024];
        
        
        /* Open a new file */
@@ -7794,9 +7606,7 @@ static void do_cmd_knowledge_kubi(void)
                        fprintf(fff,"\n%s\n", _("賞金首はもう残っていません。", "There is no more wanted monster."));
                }
        }
-       
-       /* Close the file */
-       my_fclose(fff);
+               my_fclose(fff);
        
        /* Display the file contents */
        show_file(TRUE, file_name, _("賞金首の一覧", "Wanted monsters"), 0, 0);
@@ -7810,11 +7620,9 @@ static void do_cmd_knowledge_kubi(void)
  */
 static void do_cmd_knowledge_virtues(void)
 {
-       FILE *fff;
-       
-       char file_name[1024];
-       
-       
+       FILE *fff;      
+       GAME_TEXT file_name[1024];
+               
        /* Open a new file */
        fff = my_fopen_temp(file_name, 1024);
        if (!fff) {
@@ -7828,9 +7636,7 @@ static void do_cmd_knowledge_virtues(void)
                fprintf(fff, _("現在の属性 : %s\n\n", "Your alighnment : %s\n\n"), your_alignment());
                dump_virtues(fff);
        }
-       
-       /* Close the file */
-       my_fclose(fff);
+               my_fclose(fff);
        
        /* Display the file contents */
        show_file(TRUE, file_name, _("八つの徳", "Virtues"), 0, 0);
@@ -7847,10 +7653,9 @@ static void do_cmd_knowledge_dungeon(void)
 {
        FILE *fff;
        
-       char file_name[1024];
+       GAME_TEXT file_name[1024];
        int i;
-       
-       
+               
        /* Open a new file */
        fff = my_fopen_temp(file_name, 1024);
        if (!fff) {
@@ -7876,9 +7681,7 @@ static void do_cmd_knowledge_dungeon(void)
                        fprintf(fff, _("%c%-12s :  %3d 階\n", "%c%-16s :  level %3d\n"), seiha ? '!' : ' ', d_name + d_info[i].name, (int)max_dlv[i]);
                }
        }
-       
-       /* Close the file */
-       my_fclose(fff);
+               my_fclose(fff);
        
        /* Display the file contents */
        show_file(TRUE, file_name, _("今までに入ったダンジョン", "Dungeon"), 0, 0);
@@ -7895,7 +7698,7 @@ static void do_cmd_knowledge_stat(void)
 {
        FILE *fff;
        
-       char file_name[1024];
+       GAME_TEXT file_name[1024];
        int percent, v_nr;
        
        /* Open a new file */
@@ -7929,8 +7732,6 @@ static void do_cmd_knowledge_stat(void)
        }
 
        dump_yourself(fff);
-
-       /* Close the file */
        my_fclose(fff);
        
        /* Display the file contents */
@@ -7948,7 +7749,7 @@ static void do_cmd_knowledge_quests_current(FILE *fff)
 {
        char tmp_str[120];
        char rand_tmp_str[120] = "\0";
-       char name[80];
+       GAME_TEXT name[MAX_NLEN];
        monster_race *r_ptr;
        IDX i;
        int rand_level = 100;
@@ -8018,7 +7819,7 @@ static void do_cmd_knowledge_quests_current(FILE *fff)
                                                        artifact_type *a_ptr = &a_info[quest[i].k_idx];
                                                        object_type forge;
                                                        object_type *q_ptr = &forge;
-                                                       IDX k_idx = lookup_kind(a_ptr->tval, a_ptr->sval);
+                                                       KIND_OBJECT_IDX k_idx = lookup_kind(a_ptr->tval, a_ptr->sval);
                                                        object_prep(q_ptr, k_idx);
                                                        q_ptr->name1 = quest[i].k_idx;
                                                        q_ptr->ident = IDENT_STORE;
@@ -8286,7 +8087,7 @@ void ang_sort_swap_quest_num(vptr u, vptr v, int a, int b)
 static void do_cmd_knowledge_quests(void)
 {
        FILE *fff;
-       char file_name[1024];
+       GAME_TEXT file_name[1024];
        IDX *quest_num;
        int dummy;
        IDX i;
@@ -8320,8 +8121,6 @@ static void do_cmd_knowledge_quests(void)
                fputc('\n', fff);
                do_cmd_knowledge_quests_wiz_random(fff);
        }
-
-       /* Close the file */
        my_fclose(fff);
 
        /* Display the file contents */
@@ -8343,9 +8142,9 @@ static void do_cmd_knowledge_home(void)
        FILE *fff;
 
        int i;
-       char file_name[1024];
+       GAME_TEXT file_name[1024];
        store_type  *st_ptr;
-       char o_name[MAX_NLEN];
+       GAME_TEXT o_name[MAX_NLEN];
        cptr            paren = ")";
 
        process_dungeon_file("w_info.txt", 0, 0, max_wild_y, max_wild_x);
@@ -8404,8 +8203,6 @@ static void do_cmd_knowledge_home(void)
                        fprintf(fff, "\n\n");
                }
        }
-
-       /* Close the file */
        my_fclose(fff);
 
        /* Display the file contents */
@@ -8423,7 +8220,7 @@ static void do_cmd_knowledge_autopick(void)
 {
        int k;
        FILE *fff;
-       char file_name[1024];
+       GAME_TEXT file_name[1024];
 
        /* Open a new file */
        fff = my_fopen_temp(file_name, 1024);
@@ -8461,7 +8258,7 @@ static void do_cmd_knowledge_autopick(void)
                {
                        tmp = _("拾う", "Pickup");
                }
-               else /* if (act & DO_QUERY_AUTOPICK) */ /* Obvious */
+               else
                {
                        tmp = _("確認", "Query");
                }
@@ -8476,7 +8273,6 @@ static void do_cmd_knowledge_autopick(void)
                string_free(tmp);
                fprintf(fff, "\n");
        }
-       /* Close the file */
        my_fclose(fff);
        /* Display the file contents */
        show_file(TRUE, file_name, _("自動拾い/破壊 設定リスト", "Auto-picker/Destroyer"), 0, 0);
@@ -8496,24 +8292,16 @@ void do_cmd_knowledge(void)
 
        /* File type is "TEXT" */
        FILE_TYPE(FILE_TYPE_TEXT);
-
-       /* Save the screen */
        screen_save();
 
        /* Interact until done */
        while (1)
        {
-               /* Clear screen */
                Term_clear();
 
                /* Ask for a choice */
-#ifdef JP
-               prt(format("%d/2 ページ", (p+1)), 2, 65);
-               prt("現在の知識を確認する", 3, 0);
-#else
-               prt(format("page %d/2", (p+1)), 2, 65);
-               prt("Display current knowledge", 3, 0);
-#endif
+               prt(format(_("%d/2 ページ", "page %d/2"), (p+1)), 2, 65);
+               prt(_("現在の知識を確認する", "Display current knowledge"), 3, 0);
 
                /* Give some choices */
 #ifdef JP
@@ -8570,24 +8358,13 @@ void do_cmd_knowledge(void)
                }
 #endif
                /* Prompt */
-#ifdef JP
-               prt("-続く-", 17, 8);
-               prt("ESC) 抜ける", 21, 1);
-               prt("SPACE) 次ページ", 21, 30);
+               prt(_("-続く-", "-more-"), 17, 8);
+               prt(_("ESC) 抜ける", "ESC) Exit menu"), 21, 1);
+               prt(_("SPACE) 次ページ", "SPACE) Next page"), 21, 30);
                /*prt("-) 前ページ", 21, 60);*/
-               prt("コマンド:", 20, 0);
-#else
-               prt("-more-", 17, 8);
-               prt("ESC) Exit menu", 21, 1);
-               prt("SPACE) Next page", 21, 30);
-               /*prt("-) Previous page", 21, 60);*/
-               prt("Command: ", 20, 0);
-#endif
-
-               /* Prompt */
+               prt(_("コマンド:", "Command: "), 20, 0);
                i = inkey();
 
-               /* Done */
                if (i == ESCAPE) break;
                switch (i)
                {
@@ -8660,11 +8437,8 @@ void do_cmd_knowledge(void)
                        bell();
                }
 
-               /* Flush messages */
-               msg_print(NULL);
+               msg_erase();
        }
-
-       /* Restore the screen */
        screen_load();
 
        if (need_redraw) do_cmd_redraw();
@@ -8678,14 +8452,10 @@ void do_cmd_checkquest(void)
 {
        /* File type is "TEXT" */
        FILE_TYPE(FILE_TYPE_TEXT);
-
-       /* Save the screen */
        screen_save();
 
        /* Quest info */
        do_cmd_knowledge_quests();
-
-       /* Restore the screen */
        screen_load();
 }
 
@@ -8717,7 +8487,6 @@ void do_cmd_time(void)
        if (day < MAX_DAYS) sprintf(day_buf, "%d", day);
        else strcpy(day_buf, "*****");
 
-       /* Message */
 #ifdef JP
        msg_format("%s日目, 時刻は%d:%02d %sです。",
                   day_buf, (hour % 12 == 0) ? 12 : (hour % 12),
@@ -8742,7 +8511,6 @@ void do_cmd_time(void)
        /* Open this file */
        fff = my_fopen(buf, "rt");
 
-       /* Oops */
        if (!fff) return;
 
        /* Find this time */
@@ -8793,9 +8561,6 @@ void do_cmd_time(void)
                }
        }
 
-       /* Message */
        msg_print(desc);
-
-       /* Close the file */
        my_fclose(fff);
 }