accumulated old changes
This commit is contained in:
parent
b75ff48300
commit
ecf01a2dc9
@ -323,7 +323,10 @@ local function fixCode(code)
|
||||
return code
|
||||
end
|
||||
local stringEscapes = { ["\\"] = "\\", ["n"] = "\n", ["r"] = "\r", ["t"] = "\t", ["0"] = "\0", ["\""] = "\"", ["\'"] = "\'", }
|
||||
local prefixIdx = 0
|
||||
local function prefixCode(code, fn) -- fix strings, add line numbers
|
||||
prefixIdx = prefixIdx + 1
|
||||
|
||||
local outt = {}
|
||||
local outnextnl = {}
|
||||
local linenum = 1
|
||||
@ -335,7 +338,7 @@ local function prefixCode(code, fn) -- fix strings, add line numbers
|
||||
local state = "code" -- code, comment, string, stringesc, commentml
|
||||
|
||||
local lastbracelabel = 0
|
||||
local function bracelabel() lastbracelabel = lastbracelabel+1; return "_BRACE_"..lastbracelabel.."_"; end
|
||||
local function bracelabel() lastbracelabel = lastbracelabel+1; return "_BRACE_"..string.format("%02d", prefixIdx)..lastbracelabel.."_"; end
|
||||
local bracestack = {}
|
||||
local bracehasmid = {}
|
||||
local lastnl = false
|
||||
|
Binary file not shown.
@ -668,6 +668,7 @@ function love.keypressed(k)
|
||||
elseif k=="o" then RunToNextInstr(cpu)
|
||||
elseif k=="r" then RunCPU = not RunCPU
|
||||
elseif k=="i" then CPU.c.irq = 1
|
||||
elseif k=="u" then CPU.c.rfg = 1
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -200,8 +200,8 @@ void cpu_instr_108_3(struct CPU* const cpu, struct Memory* const mem) { storeutp
|
||||
void cpu_instr_108_4(struct CPU* const cpu, struct Memory* const mem) { lni; }
|
||||
void cpu_instr_110_0(struct CPU* const cpu, struct Memory* const mem) { loadimm161 cpu->cycle++; }
|
||||
void cpu_instr_110_1(struct CPU* const cpu, struct Memory* const mem) { loadimm162 cpu->cycle++; }
|
||||
void cpu_instr_110_2(struct CPU* const cpu, struct Memory* const mem) { storeut(hibyte(cpu->p)); cpu->cycle++; }
|
||||
void cpu_instr_110_3(struct CPU* const cpu, struct Memory* const mem) { storeutp1(lobyte(cpu->p)); cpu->cycle++; }
|
||||
void cpu_instr_110_2(struct CPU* const cpu, struct Memory* const mem) { storeut(hibyte(cpu->q)); cpu->cycle++; }
|
||||
void cpu_instr_110_3(struct CPU* const cpu, struct Memory* const mem) { storeutp1(lobyte(cpu->q)); cpu->cycle++; }
|
||||
void cpu_instr_110_4(struct CPU* const cpu, struct Memory* const mem) { lni; }
|
||||
void cpu_instr_112_0(struct CPU* const cpu, struct Memory* const mem) { loadimmedt cpu->cycle++; }
|
||||
void cpu_instr_112_1(struct CPU* const cpu, struct Memory* const mem) { subf(cpu->a,cpu->t); lni; }
|
||||
|
@ -5,12 +5,12 @@ return {
|
||||
["return"] = 13,
|
||||
|
||||
["lshift"] = 16,
|
||||
["lcontrol"] = 17,
|
||||
["lctrl"] = 17, --["lcontrol"] = 17,
|
||||
["lalt"] = 18,
|
||||
|
||||
-- this block does not match vkey codes
|
||||
["rshift"] = 20,
|
||||
["rcontrol"] = 21,
|
||||
["rctrl"] = 21, --["rcontrol"] = 21,
|
||||
["ralt"] = 22,
|
||||
|
||||
-- this block does not match vkey codes
|
||||
@ -18,7 +18,7 @@ return {
|
||||
["="] = 25,
|
||||
[","] = 26,
|
||||
["."] = 27,
|
||||
["-"] = 28,
|
||||
["-"] = 28, -- not in bl
|
||||
["/"] = 29,
|
||||
["`"] = 30,
|
||||
|
||||
@ -95,18 +95,18 @@ return {
|
||||
["kp."] = 110, --["numpaddecimal"] = 110,
|
||||
["kp/"] = 111, --["/"] = 111,
|
||||
|
||||
["f1"] = 112,
|
||||
["f2"] = 113,
|
||||
["f3"] = 114,
|
||||
["f4"] = 115,
|
||||
["f5"] = 116,
|
||||
["f6"] = 117,
|
||||
["f7"] = 118,
|
||||
["f8"] = 119,
|
||||
["f9"] = 120,
|
||||
["f10"] = 121,
|
||||
["f11"] = 122,
|
||||
["f12"] = 123,
|
||||
["f1"] = 112,
|
||||
["f2"] = 113,
|
||||
["f3"] = 114,
|
||||
["f4"] = 115,
|
||||
["f5"] = 116,
|
||||
["f6"] = 117,
|
||||
["f7"] = 118,
|
||||
["f8"] = 119,
|
||||
["f9"] = 120,
|
||||
["f10"] = 121,
|
||||
["f11"] = 122,
|
||||
["f12"] = 123,
|
||||
|
||||
["invalid"] = 127,
|
||||
}
|
||||
|
@ -334,7 +334,7 @@ instructions = {
|
||||
{ mnem="ldp *imm16" , opcode=0x68, {"loadImm161","instrSub1"}, {"loadImm162","instrSub2"}, {"loadUTU","adwIncUT","adwSaveP","instrSub3"}, {"adrlP","loadRegT","instrSub4"}, {"adwrUT","adwSaveP","instrNext"}, desc="P=*imm16", ccode={"loadimm161","loadimm162","cpu.p=wordut; cpu.u=loadut;","cpu.t=loadpp1;","cpu.p=wordut; lni;"} }, -- 0x69
|
||||
{ mnem="ldq *imm16" , opcode=0x6A, {"loadImm161","instrSub1"}, {"loadImm162","instrSub2"}, {"loadUTU","adwIncUT","adwSaveQ","instrSub3"}, {"adrlQ","loadRegT","instrSub4"}, {"adwrUT","adwSaveQ","instrNext"}, desc="Q=*imm16", ccode={"loadimm161","loadimm162","cpu.q=wordut; cpu.u=loadut;","cpu.t=loadqp1;","cpu.q=wordut; lni;"} }, -- 0x6B
|
||||
{ mnem="stp *imm16" , opcode=0x6C, {"loadImm161","instrSub1"}, {"loadImm162","instrSub2"}, {"storeUT","alurPH","instrSub3"}, {"storeUT","adrInc","alurPL","instrSub4"}, {"instrNext"}, desc="*imm16=P", ccode={"loadimm161","loadimm162","storeut(hibyte(cpu.p));","storeutp1(lobyte(cpu.p));","lni;"} }, -- 0x6D
|
||||
{ mnem="stq *imm16" , opcode=0x6E, {"loadImm161","instrSub1"}, {"loadImm162","instrSub2"}, {"storeUT","alurQH","instrSub3"}, {"storeUT","adrInc","alurQL","instrSub4"}, {"instrNext"}, desc="*imm16=Q", ccode={"loadimm161","loadimm162","storeut(hibyte(cpu.p));","storeutp1(lobyte(cpu.p));","lni;"} }, -- 0x6F
|
||||
{ mnem="stq *imm16" , opcode=0x6E, {"loadImm161","instrSub1"}, {"loadImm162","instrSub2"}, {"storeUT","alurQH","instrSub3"}, {"storeUT","adrInc","alurQL","instrSub4"}, {"instrNext"}, desc="*imm16=Q", ccode={"loadimm161","loadimm162","storeut(hibyte(cpu.q));","storeutp1(lobyte(cpu.q));","lni;"} }, -- 0x6F
|
||||
{ mnem="ldp *p" , opcode=0x92, {"adrlP","load161","instrSub1"}, {"adrlP","load162","instrSub2"}, {"adwrUT","adwSaveP","instrNext"}, desc="P=*P", ccode={"cpu.u=loadp;","cpu.t=loadpp1;","cpu.p=wordut; lni;"} },
|
||||
{ mnem="ldq *p" , opcode=0x93, {"adrlP","load161","instrSub1"}, {"adrlP","load162","instrSub2"}, {"adwrUT","adwSaveQ","instrNext"}, desc="Q=*P", ccode={"cpu.u=loadp;","cpu.t=loadpp1;","cpu.q=wordut; lni;"} },
|
||||
{ mnem="ldp *q" , opcode=0x94, {"adrlQ","load161","instrSub1"}, {"adrlQ","load162","instrSub2"}, {"adwrUT","adwSaveP","instrNext"}, desc="P=*Q", ccode={"cpu.u=loadq;","cpu.t=loadqp1;","cpu.p=wordut; lni;"} },
|
||||
|
Loading…
x
Reference in New Issue
Block a user