public static void pan_display() {
        int pan_changed = 0;

        /* horizontal panning */
        if (input_ui_pressed_repeat(IPT_UI_PAN_LEFT, 1) != 0) {
            if (skipcolumns < skipcolumnsmax) {
                skipcolumns++;
                osd_mark_dirty(0, 0, scrbitmap.width - 1, scrbitmap.height - 1, 1);
                pan_changed = 1;
            }
        }
        if (input_ui_pressed_repeat(IPT_UI_PAN_RIGHT, 1) != 0) {
            if (skipcolumns > skipcolumnsmin) {
                skipcolumns--;
                osd_mark_dirty(0, 0, scrbitmap.width - 1, scrbitmap.height - 1, 1);
                pan_changed = 1;
            }
        }
        if (input_ui_pressed_repeat(IPT_UI_PAN_DOWN, 1) != 0) {
            if (skiplines < skiplinesmax) {
                skiplines++;
                osd_mark_dirty(0, 0, scrbitmap.width - 1, scrbitmap.height - 1, 1);
                pan_changed = 1;
            }
        }
        if (input_ui_pressed_repeat(IPT_UI_PAN_UP, 1) != 0) {
            if (skiplines > skiplinesmin) {
                skiplines--;
                osd_mark_dirty(0, 0, scrbitmap.width - 1, scrbitmap.height - 1, 1);
                pan_changed = 1;
            }
        }
        if (pan_changed != 0) {
            /*TODO*///  		if (use_dirty) init_dirty(1);

            set_ui_visarea(skipcolumns, skiplines, skipcolumns + gfx_display_columns - 1, skiplines + gfx_display_lines - 1);
        }
    }