document the SAE support

could use more details perhaps, but for now...
This commit is contained in:
Daniel Brooks
2016-08-09 16:54:33 -07:00
parent 9a3ec6fe64
commit ff2019457b
6 changed files with 92 additions and 17 deletions
@@ -26,7 +26,7 @@
"status": "open",
"status": "fixed",
@@ -0,0 +1 @@
Looks like we're filling up the IndexedDB. The browser is supposed to evict stuff on an LRU basis when we get to the quota, but perhaps that's changed recently? Unsure.
@@ -0,0 +1,29 @@
{
"Author": "Daniel Brooks <db48x@db48x.net>",
"Content-type": "text/plain",
"Date": "Tue, 09 Aug 2016 23:53:00 +0000"
}
+7 -1
View File
@@ -15,7 +15,7 @@ The Emularity system has been used by millions of users at the [Internet Archive
# The Emulators #
Currently works with two emulators:
Currently works with three emulators:
## JSMESS ##
@@ -25,6 +25,12 @@ Currently works with two emulators:
[EM-DOSBox](https://github.com/dreamlayers/em-dosbox/) is a port of DosBox to Javascript. DOSBox emulates an IBM PC compatible running DOS. There are two versions of this emulator, dosbox.js (Standard EM-DOSBOX) and dosbox-sync.js (EM-DOSBOX with considerations for in-program execution of other programs).
## Scripted Amiga Emulator ##
[SAE](https://github.com/naTmeg/ScriptedAmigaEmulator) is a Javascript
port of WinUAE by [naTmeg](https://github.com/naTmeg). It emulates
most of the Amiga models that were released.
# Credits and Components #
Primary work on Emularity is by [https://github.com/db48x](Daniel
+45 -9
View File
@@ -79,16 +79,42 @@ DosBox to immediately start running zzt.exe, which is inside the zip.
DosBoxLoader.startExe("zzt.exe")))
emulator.start({ waitAfterDownloading: true });
### Amiga demo ###
The Amiga is interesting because several models had a split bios,
requiring two bios images. We have to download them both, and then
provide their names in the right order.
var emulator = new Emulator(document.querySelector("#canvas"),
null,
new SAELoader(SAELoader.model("A500"),
SAELoader.fastMemory(2),
SAELoader.nativeResolution(720, 568),
SAELoader.emulatorJS("emulators/sae/scriptedamigaemulator.js"),
SAELoader.mountFile("aros-amiga-m68k-rom.bin",
SAELoader.fetchFile("Bios",
"examples/aros-amiga-m68k-rom.bin")),
SAELoader.mountFile("aros-amiga-m68k-ext.bin",
SAELoader.fetchFile("Bios",
"examples/aros-amiga-m68k-ext.bin")),
SAELoader.rom(["aros-amiga-m68k-rom.bin", "aros-amiga-m68k-ext.bin"]),
SAELoader.mountFile("Cool_Demos_17.2_1989_Razor_1911.adf",
SAELoader.fetchFile("Game",
"examples/Cool_Demos_17.2_1989_Razor_1911.adf")),
SAELoader.floppy(0, "Cool_Demos_17.2_1989_Razor_1911")))
emulator.setScale(3).start({ waitAfterDownloading: true });
## Configuration API ##
Currently there are two supported emulators, JSMESS and
EM-DOSBox. JSMESS provides emulation for arcade games, consoles, and
early personal computers. As this emulator supports such a wide
variety of hardware it has been broken up into several dozen emulators
each supporting one machine lest the resulting javascript be
intractably large (60+ megabytes). EM-DOSBox provides emulation for
software that runs on x86 PCs using the DOS operating systems common
to the era.
Currently there are three supported emulators, JSMESS, EM-DOSBox and
SAE. JSMESS provides emulation for arcade games, consoles, and early
personal computers. As this emulator supports such a wide variety of
hardware it has been broken up into several dozen emulators each
supporting one machine lest the resulting javascript be intractably
large (60+ megabytes). EM-DOSBox provides emulation for software that
runs on x86 PCs using the DOS operating systems common to the era. SAE
emulates the Amiga computer system.
Each of these is configured by calling a constructor function and
providing it with arguments formed by calling static methods on that
@@ -121,13 +147,21 @@ that we don't break existing users.
* `DosBoxLoader.startExe(filename)`
### SAE ###
* `SAELoader.model(modelname)`
* `SAELoader.fastMemory(megabytes)`
* `SAELoader.rom(filenames)`
* `SAELoader.floppy(index, filename)`
* `SAELoader.ntsc(boolean)`
## Internet Archive ##
There's also a helper for loading software from
[the Internet Archive](https://archive.org/v2), `IALoader`. IALoader
looks at the metadata associated with an Internet Archive item and
uses that to build the configuration for the emulator by calling
MAMELoader or DosBoxLoader as necessary.
one of the other loaders as necessary.
## Examples ##
@@ -141,5 +175,7 @@ Once you have an emulator object, there are several methods you can call.
* `start()`
* `requestFullScreen()`
* `mute()`
* `unmute()`
* `toggleMute()`
* `setSplashColors()`
* others…
+9 -6
View File
@@ -15,14 +15,17 @@
SAELoader.fastMemory(2),
SAELoader.nativeResolution(720, 568),
SAELoader.emulatorJS("emulators/sae/scriptedamigaemulator.js"),
SAELoader.mountFile("Kickstart v3.1 r40.63 (1993)(Commodore)(A500-A600-A2000)[!].rom",
SAELoader.mountFile("aros-amiga-m68k-rom.bin",
SAELoader.fetchFile("Bios",
"examples/Kickstart v3.1 r40.63 (1993)(Commodore)(A500-A600-A2000)[!].rom")),
SAELoader.rom("Kickstart v3.1 r40.63 (1993)(Commodore)(A500-A600-A2000)[!].rom"),
SAELoader.mountFile("17Bit-Cyclic.adf",
"examples/aros-amiga-m68k-rom.bin")),
SAELoader.mountFile("aros-amiga-m68k-ext.bin",
SAELoader.fetchFile("Bios",
"examples/aros-amiga-m68k-ext.bin")),
SAELoader.rom(["aros-amiga-m68k-rom.bin", "aros-amiga-m68k-ext.bin"]),
SAELoader.mountFile("Cool_Demos_17.2_1989_Razor_1911.adf",
SAELoader.fetchFile("Game",
"examples/17Bit-Cyclic.adf")),
SAELoader.floppy(0, "17Bit-Cyclic.adf")))
"examples/Cool_Demos_17.2_1989_Razor_1911.adf")),
SAELoader.floppy(0, "Cool_Demos_17.2_1989_Razor_1911")))
emulator.setScale(3).start({ waitAfterDownloading: true });
</script>
</body>