文件名称:MarioCompiler:用JavaScript编写的Super Mario编译器
文件大小:1.43MB
文件格式:ZIP
更新时间:2024-05-14 13:57:38
Assembly
马里奥编译器 这是一个基于网络的NES编译器和仿真器,可让您了解Super Mario Bros的源代码并实时查看结果。 您需要自己的Super Mario Bros rom才能正常工作。 一切都在浏览器中运行,没有服务器端代码。 快来感受一下80年代开发NES游戏的感觉! 在此处查看演示: 只需在代码编辑器中进行编辑,然后按Ctrl + S即可保存并重新编译。 背景 我从事这个项目是因为我在NES的陪伴下长大,想学习关于这台令人着迷的机器的所有知识。 我还想看看是否可以仅使用基于Web的技术来实现它。 通常,当您想到编译器和代码编辑器时,会想到台式机。 编译器是用JavaScript编写的,而我是用TypeScript编写的仿真器。 它不使用Webassembly。 Mario源代码本身是一个技术奇迹。 它是当今时代最具标志性的游戏之一,它是用汇编语言编写的,仅占32 KB。 如果您
【文件预览】:
MarioCompiler-master
----index.html(35KB)
----source()
--------bithelper.js.map(611B)
--------Tone2.js(284KB)
--------fps_controller.js(2KB)
--------cartridge.ts(7KB)
--------nes.js.map(28KB)
--------memory.js.map(16KB)
--------config.ts(363B)
--------savestate.ts(15KB)
--------myasm.asm(13KB)
--------memory.js(27KB)
--------tonejs.d.ts(320B)
--------index.ts(35KB)
--------cpu.ts(46KB)
--------cpu.js.map(55KB)
--------nes.ts(39KB)
--------favicon.ico(1KB)
--------config.js(363B)
--------savestate.js.map(15KB)
--------fps_controller.ts(1KB)
--------apu.js(29KB)
--------unit_tests.asm(36KB)
--------input_controller.js(23KB)
--------bithelper.js(695B)
--------bithelper.ts(514B)
--------savestate.js(16KB)
--------tsconfig.json(249B)
--------nes.js(41KB)
--------memory.ts(24KB)
--------video.ts(3KB)
--------config.js.map(474B)
--------cartridge.js(8KB)
--------ppu.ts(28KB)
--------Tone.js(325KB)
--------video.js(3KB)
--------fps_controller.js.map(1KB)
--------index.js.map(31KB)
--------ppu.js.map(26KB)
--------ppu.js(31KB)
--------disassembly.asm(761KB)
--------index.js(39KB)
--------compiler()
--------input_controller.ts(22KB)
--------input_controller.js.map(17KB)
--------apu.js.map(19KB)
--------video.js.map(2KB)
--------cpu.js(50KB)
--------NoSleep.min.js(10KB)
--------apu.ts(27KB)
--------github_logo.png(2KB)
--------cartridge.js.map(7KB)
----.vscode()
--------launch.json(465B)
--------settings.json(42B)
----LICENSE(1KB)
----README.md(2KB)
----alternate.chr(8KB)
----.gitignore(69B)
----demo.gif(1.03MB)
----package-lock.json(383B)
----package.json(165B)