Well, it's pretty impressive. It's very readable, and it's clear a key press causes the cursor to move, so obviously it's in game move mode.
void zol.usub_e1c7.txt() {
Global_7792 = CursorShiftMapY;
Global_7793 = CursorShiftMapX;
Global_7790 = CursorPosInScreenY;
Global_7791 = CursorPosInScreenX;
Global_243 = CursorY_2;
Global_244 = CursorX_2;
Global_109 = 0;
Global_246 = 0;
if (LastInputKeyOrJoystick == 255) {
return();// E1EF
} else {
if (LastInputKeyOrJoystick == 239) {
return();// E1F4
} else {
Global_246 = 1;
Global_101 = CursorX_2;
Global_102 = CursorY_2;
Global_7977 = CursorPosInScreenY;
Global_7978 = CursorPosInScreenX;
if (LastInputKeyOrJoystick | 1) {
if (CursorY_2 >= 0) {
CursorY_2 = 35;
}//EndIF; E217
if (CursorPosInScreenY >= 0) {
CursorPosInScreenY = (CursorPosInScreenY + 1);
Global_109 = (Global_109 | 1);
if (CursorShiftMapY >= 0) {
CursorShiftMapY = 35;
}//EndIF; E22B
}//EndIF; E22B
}//EndIF; E22B
if (LastInputKeyOrJoystick | 2) {
if (CursorY_2 == 36) {
CursorY_2 = 0;
}//EndIF; E23D
if (CursorPosInScreenY == 7) {
CursorPosInScreenY = (CursorPosInScreenY - 1);
Global_109 = (Global_109 | 2);
if (CursorShiftMapY == 36) {
CursorShiftMapY = 0;
}//EndIF; E259
}//EndIF; E259
}//EndIF; E259
if (LastInputKeyOrJoystick | 4) {
if (CursorX_2 >= 0) {
CursorX_2 = 35;
}//EndIF; E267
if (CursorPosInScreenX >= 0) {
CursorPosInScreenX = (CursorPosInScreenX + 1);
Global_109 = (Global_109 | 4);
if (CursorShiftMapX >= 0) {
CursorShiftMapX = 35;
}//EndIF; E27B
}//EndIF; E27B
}//EndIF; E27B
if (LastInputKeyOrJoystick | 8) {
if (CursorX_2 == 36) {
CursorX_2 = 0;
}//EndIF; E28D
if (CursorPosInScreenX == 7) {
CursorPosInScreenX = (CursorPosInScreenX - 1);
Global_109 = (Global_109 | 8);
if (CursorShiftMapX == 36) {
CursorShiftMapX = 0;
}//EndIF; E2A9
}//EndIF; E2A9
}//EndIF; E2A9
if (Global_231 != 0) {
Global_173 = Global_7788;
Global_174 = Global_7789;
Global_175 = CursorY_2;
Global_176 = CursorX_2;
if (usub_E550() >= Global_231) {
CursorShiftMapY = Global_7792;
CursorShiftMapX = Global_7793;
CursorPosInScreenY = Global_7790;
CursorPosInScreenX = Global_7791;
CursorY_2 = Global_243;
CursorX_2 = Global_244;
Global_246 = 0;
Global_204 = 0;
return();// E2EA
} else {
Global_204 = 1;
if (Global_109 == 0) {
CursorRefreshBlank = 1;
Global_91 = 3;
usub_4499();
return();// E2FF
} else {
Dunno(Global_102);
Global_125 = (((Global_7977 C:<< 1) + Global_7977) C:+ 1);
Global_126 = (((Global_7978 C:<< 1) + Global_7978) C:+ 2);
usub_E6E0(*TileBeingDrawn[0]);
Global_109 = (Global_109 C:<< 1);
SelectedMenuFunctionPointer-lo = ((Global_109 + Global_109) C:+ 57);
SelectedMenuFunctionPointer-hi = (0 C:+ 227);
goto Label_0;
return();// E339
}//EndIF; E339
}//EndIF; E339
}//EndIF; E339
}//EndIF; E339
}//EndIF; E339
return();// E339
};