1
0
mirror of https://github.com/sehugg/8bitworkshop.git synced 2024-07-17 05:28:56 +00:00
8bitworkshop/gen/zmachine-CRLVUUHE.js.map

8 lines
33 KiB
Plaintext
Raw Normal View History

{
"version": 3,
"sources": ["../src/platform/zmachine.ts"],
"sourcesContent": ["\nimport { Platform, BasePlatform, BaseDebugPlatform, Preset, EmuState, inspectSymbol } from \"../common/baseplatform\";\nimport { EmuHalt, PLATFORMS } from \"../common/emu\";\nimport { TeleType, TeleTypeWithKeyboard } from \"../common/teletype\";\nimport { InputResponse } from \"../common/basic/runtime\";\nimport { loadScript } from \"../common/util\";\n\nconst ZMACHINE_PRESETS = [\n { id: 'hello.inf', name: 'Hello World' },\n { id: 'house01.inf', name: 'House Tutorial #1' },\n { id: 'house02.inf', name: 'House Tutorial #2' },\n { id: 'house03.inf', name: 'House Tutorial #3' },\n { id: 'house04.inf', name: 'House Tutorial #4' },\n { id: 'house05.inf', name: 'House Tutorial #5' },\n { id: 'house06.inf', name: 'House Tutorial #6' },\n { id: 'house07.inf', name: 'House Tutorial #7' },\n { id: 'alice.inf', name: 'Through the Looking-Glass' },\n { id: 'aloneice.inf', name: 'Alone on the Ice' },\n { id: 'adventureland.inf', name: 'Adventureland' },\n { id: 'toyshop.inf', name: 'Toyshop' },\n { id: 'ruins1.inf', name: 'Ruins #1' },\n { id: 'ruins2.inf', name: 'Ruins #2' },\n { id: 'ruins3.inf', name: 'Ruins #3' },\n { id: 'balances.inf', name: 'Balances' },\n { id: 'museum.inf', name: 'Museum of Inform' },\n { id: 'advent.inf', name: 'Colossal Cave Adventure' },\n { id: 'ztrek.inf', name: 'Super Z Trek' },\n];\n\ndeclare var ZVM;\n\n// https://github.com/erkyrath/quixe/wiki/Quixe-Without-GlkOte#quixes-api\n// https://eblong.com/zarf/glk/glkote/docs.html\n// https://inform-fiction.org/zmachine/standards/z1point0/sect15.html#read_char\n// https://manpages.debian.org/testing/inform6-compiler/inform6.1.en.html\n\ninterface IFZVM {\n start();\n run();\n version: number;\n pc: number;\n ram: DataView;\n stack: DataView;\n read_data: { buffer?, routine?, time?};\n handle_line_input(len: number);\n handle_char_input(charcode: number);\n handle_create_fileref(fref: number);\n}\n\nfunction debug(...args: any[]) {\n //console.log(arguments);\n}\n\nclass GlkImpl {\n vm: IFZVM;\n input: HTMLInputElement;\n mainwnd : TeleTypeWithKeyboard;\n curwnd: TeleType;\n windows: { [win: number]: TeleType };\n windowcount: number;\n exited = false;\n\n constructor(page: HTMLElement, input: HTMLInputElement, upper: HTMLElement) {\n this.mainwnd = new TeleTypeWithKeyboard(page, false, input);\n this.mainwnd.keepinput = false; // input moves w/ cursor\n this.mainwnd.splitInput = false;\n this.mainwnd.uppercaseOnly = true;\n this.mainwnd.hideinput();\n this.windows = {\n 1: this.mainwnd,\n 2: new TeleType(upper, true),\n 3: new TeleType(null, true), // fake window for resizing\n };\n this.input = input;\n this.mainwnd.resolveInput = (resp:InputResponse) => {\n var s = resp.line;\n if (this.vm.read_data.buffer) {\n for (var i = 0; i < s.length; i++) {\n this.vm.read_data.buffer[i] = s.charCodeAt(i) & 0xff;\n }\n this.vm.handle_line_input(s.length);\n } else {\n this.vm.handle_char_input(s.charCodeAt(0));\n }\n this.vm.run();\n }\n this.reset();\n }\n reset() {\n this.windowcount = 0;\n this.exited = false;\n this.windows[1].clear();\n this.windows[2].clear();\n this.curwnd = this.windows[1];\n }\n init(options) {\n this.vm = options.vm;\n this.vm.start();\n }\n fatal_error(s: string) {\n throw new EmuHalt(s);\n }\n update() {\n // TODO\n }\n focusinput() {\n this.mainwnd.focusinput();\n }\n flushline() {\n this.curwnd.flushline();\n }\n\n glk_exit() {\n this.exited = true;\n this.flushline();\n this.windows[1].addtext(\"** Game exited **\", 1);\n }\n glk_window_clear(win) {\n debug('glk_window_clear', arguments);\n this.windo
"mappings": "yKAOA,GAAM,GAAmB,CACrB,CAAE,GAAI,YAAa,KAAM,eACzB,CAAE,GAAI,cAAe,KAAM,qBAC3B,CAAE,GAAI,cAAe,KAAM,qBAC3B,CAAE,GAAI,cAAe,KAAM,qBAC3B,CAAE,GAAI,cAAe,KAAM,qBAC3B,CAAE,GAAI,cAAe,KAAM,qBAC3B,CAAE,GAAI,cAAe,KAAM,qBAC3B,CAAE,GAAI,cAAe,KAAM,qBAC3B,CAAE,GAAI,YAAa,KAAM,6BACzB,CAAE,GAAI,eAAgB,KAAM,oBAC5B,CAAE,GAAI,oBAAqB,KAAM,iBACjC,CAAE,GAAI,cAAe,KAAM,WAC3B,CAAE,GAAI,aAAc,KAAM,YAC1B,CAAE,GAAI,aAAc,KAAM,YAC1B,CAAE,GAAI,aAAc,KAAM,YAC1B,CAAE,GAAI,eAAgB,KAAM,YAC5B,CAAE,GAAI,aAAc,KAAM,oBAC1B,CAAE,GAAI,aAAc,KAAM,2BAC1B,CAAE,GAAI,YAAa,KAAM,iBAuB7B,cAAkB,EAAa,EAI/B,WAAc,CASV,YAAY,EAAmB,EAAyB,EAAoB,CAF5E,YAAS,GAqWT,kBAAe,CAAE,MAAO,iCACxB,YAAS,EACT,eAAY,EApWR,KAAK,QAAU,GAAI,GAAqB,EAAM,GAAO,GACrD,KAAK,QAAQ,UAAY,GACzB,KAAK,QAAQ,WAAa,GAC1B,KAAK,QAAQ,cAAgB,GAC7B,KAAK,QAAQ,YACb,KAAK,QAAU,CACX,EAAG,KAAK,QACR,EAAG,GAAI,GAAS,EAAO,IACvB,EAAG,GAAI,GAAS,KAAM,KAE1B,KAAK,MAAQ,EACb,KAAK,QAAQ,aAAe,AAAC,GAAuB,CAChD,GAAI,GAAI,EAAK,KACb,GAAI,KAAK,GAAG,UAAU,OAAQ,CAC1B,OAAS,GAAI,EAAG,EAAI,EAAE,OAAQ,IAC1B,KAAK,GAAG,UAAU,OAAO,GAAK,EAAE,WAAW,GAAK,IAEpD,KAAK,GAAG,kBAAkB,EAAE,YAE5B,MAAK,GAAG,kBAAkB,EAAE,WAAW,IAE3C,KAAK,GAAG,OAEZ,KAAK,QAET,OAAQ,CACJ,KAAK,YAAc,EACnB,KAAK,OAAS,GACd,KAAK,QAAQ,GAAG,QAChB,KAAK,QAAQ,GAAG,QAChB,KAAK,OAAS,KAAK,QAAQ,GAE/B,KAAK,EAAS,CACV,KAAK,GAAK,EAAQ,GAClB,KAAK,GAAG,QAEZ,YAAY,EAAW,CACnB,KAAM,IAAI,GAAQ,GAEtB,QAAS,EAGT,YAAa,CACT,KAAK,QAAQ,aAEjB,WAAY,CACR,KAAK,OAAO,YAGhB,UAAW,CACP,KAAK,OAAS,GACd,KAAK,YACL,KAAK,QAAQ,GAAG,QAAQ,oBAAqB,GAEjD,iBAAiB,EAAK,CAClB,EAAM,mBAAoB,WAC1B,KAAK,QAAQ,GAAK,QAEtB,2BAA2B,EAAK,EAAK,EAAS,CAC1C,KAAK,QAAQ,WAAa,OAC1B,KAAK,aACL,KAAK,kBAET,2BAA2B,EAAK,EAAK,EAAS,CAC1C,KAAK,QAAQ,WAAa,OAC1B,KAAK,aACL,KAAK,kBAET,iBAAkB,EAWlB,gBAAgB,EAAa,EAAU,CAEnC,KAAK,OAAO,MAAM,GAEtB,uBAAuB,EAAgB,EAAa,CAEhD,KAAK,QAAQ,GAAQ,MAAM,GAE/B,wBAAwB,EAAgB,EAAY,CAEhD,KAAK,QAAQ,GAAQ,MAAM,OAAO,aAAa,IAEnD,cAAc,EAAK,CACf,KAAK,OAAO,SAAW,EA+B3B,kBAAkB,EAAK,CAGnB,MAFI,IAAO,IAAQ,GAAO,IAEtB,GAAO,KAAQ,GAAO,KAAQ,GAAO,IAC9B,EAAM,GACV,EAEX,kBAAkB,EAAK,CAGnB,MAFI,IAAO,IAAQ,GAAO,KAEtB,GAAO,KAAQ,GAAO,KAAQ,GAAO,IAC9B,EAAM,GACV,EAEX,kBAAkB,EAAS,EAAM,EAAM,EAAO,EAG9C,oBAAoB,EAAS,EAAM,EAAM,EAGzC,sBAAsB,EAAK,EAAO,EAAO,CACrC,MAAO,GAEX,kBAAkB,EAAK,EAAM,EAAM,EAAW,CAC1C,MAAI,IACA,EAAU,UAAU,GACjB,EAEX,WAAW,EAAU,CACjB,EAAM,aAAc,WAExB,gBAAgB,EAAU,EAAQ,EAAM,EAAS,EAAM,CAEnD,MADA,GAAM,kBAAmB,WACrB,EACI,GAAU,IAAQ,GAAW,EAAU,EACvC,EACA,GAAE,KAAK,QAAQ,GAAG,MAAM,OACjB,GAEA,EAGJ,EAGf,iBAAiB,EAAK,CAClB,EAAM,mBAAoB,WACtB,GAAO,GACP,MAAK,QAAQ,GAAK,QAClB,EAAE,KAAK,QAAQ,GAAK,MAAM,QAGlC,sBAAsB,EAAK,CAEvB,MADA,GAAM,wBAAyB,WAC3B,GAAO,EAAU,EACT,EAEhB,uBAAuB,EAAK,EAAK,EAAK,CAClC,EAAM,yBAA0B,WAChC,KAAK,QAAQ,GAAK,YAAY,EAAK,GAEvC,2BAA2B,EAAK,EAAQ,EAAM,EAAS,CACnD,EAAM,6BAA8B,WAChC,GAAO,GAAG,KAAK,QAAQ,GAAG,QAAQ,GAE1C,sBAAsB,EAAK,CACvB,SAAM,wBAAyB,WACxB,EAEX,eAAe,EAAK,CAChB,EAAM,iBAAkB,WACxB,KAAK,OAAS,KAAK,QAAQ,GACvB,KAAK,QAAU,MAAM,KAAK,YAAY,aAAe,GAE7D,oBAAoB,EAAK,EAAkB,EAAmB,CAC1D,EAAM,sBAAuB,WAEzB,GAAU,EAAS,UAAU,GAC7B,GAAW,EAAU,UAAU,GAAO,EAAI,GAAK,GAEvD,wBAAwB,EAAK,CACzB,EAAM,0BAA2B,WACjC,KAAK,OAAO,QAAU,CAAC,CAAC,EAE5B,+BAA+B,EAAK,EAAK,CACrC,EAAM,iCAAkC,WACxC,KAAK,QAAQ,GAAK,QAAU,CAAC,CAAC,EAElC,6BAA6B,EAAO,EAAM,EAAM,CAC5C,EAAM,+BAAgC,WAEtC,KAAK,GAAG,sBAAsB,GAC9B,KAAK,GAAG,MAEZ,YAAY,EAAK,EAAK,CAClB,MAAO,MAAK,gBAAgB,EAAK,EAAK,MAE1C,gBAAgB,EAAK,EAAK,EAAK,CAE3B,OAAQ,OAEC,GAED,MAAO,SAEN,GAID,MAAI,IAAO,EAAM,cAAgB,GAAO,EAAM,YACnC,EACP,GAAO,WAAc,EAAM,gBAE3B,EAAM,SAEL,GAAO,GAAK,EAAM,IAAQ,GAAO,KAAO,EAAM,IACxC,EACJ,MAEN,GAID,MAFI,GAAM,SAEL,GAAO,GAAK,EAAM,IAAQ,GAAO,KAAO,EAAM,IACxC,EACJ,MAEN,GAID,MAAK,GAAM,SACH,GAAO,GAAK,EAAM,IAClB,GAAO,KAAO,EAAM,IACpB,IACA,GAAI,GAAK,GACN,GAEP,IACA,GAAI,GAAK,GACN,OAEN,GAGD,MAFI,IAAO,EAAM,oBAEb,GAAO,EAAM,kBAAoB,EAC1B,MAGV,GACD,MAAO,OAEN,GACD,MAAO,OAEN,GAGD,MAFI,IAAO,EAAM,oBAEb,GAAO,EAAM,kBAAoB,EAC1B,MAGV,GACD,MAAO,OAEN,GACD,MAAO,OAEN,IACD,MAAO,OAEN,IACD,MAAO,OAEN,IACD,MAAI,IAAO,GAAK,GAAO,EACZ,MAIV,IACD,MAAO,OAEN,IACD,MAAO,OAEN,IACD,MAAO,OAEN,IACD,MAAO,OAEN,IACD,MAAO,OAEN,IACD,MAAO,OAEN,IAMD,MAFI,IAAO,EAAM,gBAEb,GAAO,EAAM,gBAAkB,GAAO,EAAM,cACrC,MAGV,IACD,MAAO,OAEN,IACD,MAAO,OAEN,IACD,MAAO,OAEN,IACD,MAAO,OAEN,MACD,MAAO,GAGf,MAAO,KAef,OAAa,CAET,UAAU,EAAK,CACX,KAAK,MAAQ,EAE
"names": []
}