Quote:
А какие операторы добавляются/изменяются?
уже не помню, скорее всего уже имеющиеся, но неиспользванные ключевые слова (вроде draw/get/put или @@).
надо дизассемблировать
просмотр LV_VIEW.EXE ALMAZY.LVR >ALMAZY.LST
даёт примерно такие подозрительные места:
10 CLS:CLS0,0,255,256,15:DRAW"@BR10BD10C240"
...
950 CLS:PRINT@@(10,7,2)"ВРЕМЯ ИСТЕКЛО."
960 PRINT@@(0,10,0)"ВЫ СОБРАЛИ"S"БРИЛЛИАНТОВ."
...
в принципе, имеющиеся тоже могли быть переопределены (CLS тут подозрителен).
..... подводит память
вот эти бейсики, если ничего не путаю: RASHIR.LVT RASHIR2.LVT
и стандартный список токенов:
private static String toks[] = {
// 0x80
"END", "FOR", "NEXT", "DATA", "INPUT", "DIM", "READ", "LET",
"GOTO", "RUN", "IF", "RESTORE", "GOSUB", "RETURN", "REM", "STOP",
// 0x90
"CLS", "ON", "PLOT", "DRAW", "POKE", "PRINT", "DEF", "CONT",
"LIST", "CLEAR", "CLOAD", "CSAVE", "NEW", "LOAD", "MERGE", "SAVE",
// 0xA0
"OUT", "WAIT", "SLOAD", "BSAVE", "BLOAD", "BAUD", "LOCATE", "COLOR",
"LINE", "PSET", "PRESET", "CIRCLE", "PAINT", "GET", "PUT", "BEEP",
// 0xB0
"SOUND", "DELETE", "RENUM", "EDIT", "VPOKE", "@@", "@@", "@@",
"@@", "@@", "@@", "@@", "TAB(", "TO", "SPC(", "FN",
// 0xC0
"THEN", "NOT", "STEP", "+", "-", "*", "/", "^",
"AND", "OR", ">", "=", "<", "@@", "@@", "@@",
// 0xD0
"SGN", "INT", "ABS", "USR", "FRE", "INP", "POS", "SQR",
"RND", "LOG", "EXP", "COS", "SIN", "TAN", "ATN", "PEEK",
// 0xE0
"LEN", "STR$", "VAL", "ASC", "CHR$", "LEFT$", "RIGHT$", "MID$",
"INKEY$", "HEX$", "POINT", "VARPTR", "CSRLIN", "VPEEK", "@@", "@@",
// 0xF0
"@@", "@@", "@@", "@@", "@@", "@@", "@@", "@@",
"@@", "@@", "@@", "@@", "@@", "@@", "@@", "@@"
};
p.s. Таблица подпрограмм