mirror of
https://github.com/zydeco/minivmac4ios.git
synced 2024-06-02 02:41:31 +00:00
Updated Home (markdown)
parent
4c7ea00993
commit
d75f09205b
5
Home.md
5
Home.md
|
@ -4,11 +4,12 @@ I'll try to document things a bit here.
|
||||||
|
|
||||||
## Mini vMac variants as loadable bundles
|
## Mini vMac variants as loadable bundles
|
||||||
Unlike other ports of Mini vMac, this one supports having several variants compiled, and choosing between them.
|
Unlike other ports of Mini vMac, this one supports having several variants compiled, and choosing between them.
|
||||||
![](http://i.imgur.com/OEWMrke.png)
|
|
||||||
|
![screenshot](http://i.imgur.com/OEWMrke.png)
|
||||||
|
|
||||||
This is achieved by compiling all the emulation code into a bundle, which is [loaded at runtime](https://github.com/zydeco/minivmac4ios/blob/master/Mini%20vMac/AppDelegate.m#L80). These bundles implement the [`Emulator` protocol](https://github.com/zydeco/minivmac4ios/blob/master/Mini%20vMac/EmulatorProtocol.h) on their main class, which is used to interface it with the UI.
|
This is achieved by compiling all the emulation code into a bundle, which is [loaded at runtime](https://github.com/zydeco/minivmac4ios/blob/master/Mini%20vMac/AppDelegate.m#L80). These bundles implement the [`Emulator` protocol](https://github.com/zydeco/minivmac4ios/blob/master/Mini%20vMac/EmulatorProtocol.h) on their main class, which is used to interface it with the UI.
|
||||||
|
|
||||||
For each variant, there is a framework target that compiles all the necessary C files from the core (not all of them are used for all machines: e.g. `ADBEMDEV.c` isn't used for the Mac 128K or Plus), and a [`CNFGGLOB.h`](https://github.com/zydeco/minivmac4ios/blob/master/Mini%20vMac/MacPlus4M/CNFGGLOB.h) and [`EMCONFIG.h`](https://github.com/zydeco/minivmac4ios/blob/master/Mini%20vMac/MacPlus4M/EMCONFIG.h) with the appropriate values for emulating that machine.
|
For each variant, there is a framework target that compiles all the necessary C files from the core (not all of them are used for all machines: (e.g. `ADBEMDEV.c` isn't used for the Mac 128K or Plus), and a [`CNFGGLOB.h`](https://github.com/zydeco/minivmac4ios/blob/master/Mini%20vMac/MacPlus4M/CNFGGLOB.h) and [`EMCONFIG.h`](https://github.com/zydeco/minivmac4ios/blob/master/Mini%20vMac/MacPlus4M/EMCONFIG.h) with the appropriate values for emulating that machine.
|
||||||
|
|
||||||
![Bundle structure](http://i.imgur.com/M4AoIvI.png)
|
![Bundle structure](http://i.imgur.com/M4AoIvI.png)
|
||||||
![Bundle compiled files](http://i.imgur.com/jhD7O8u.png)
|
![Bundle compiled files](http://i.imgur.com/jhD7O8u.png)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user