mirror of
https://github.com/JetSetIlly/Gopher2600.git
synced 2024-05-20 05:40:49 -04:00
fixed loading of ELF and ACE wrapped ELF files
This commit is contained in:
parent
96ad0797b4
commit
ed8f7d6318
|
@ -122,6 +122,7 @@ func (mem *aceMemory) setDataMode(out bool) {
|
|||
|
||||
func newAceMemory(env *environment.Environment, data []byte, armPrefs *preferences.ARMPreferences) (*aceMemory, error) {
|
||||
mem := &aceMemory{
|
||||
env: env,
|
||||
model: architecture.NewMap(architecture.PlusCart),
|
||||
}
|
||||
|
||||
|
|
|
@ -26,6 +26,7 @@ import (
|
|||
"github.com/jetsetilly/gopher2600/hardware/memory/cartridge/ace"
|
||||
"github.com/jetsetilly/gopher2600/hardware/memory/cartridge/cdf"
|
||||
"github.com/jetsetilly/gopher2600/hardware/memory/cartridge/dpcplus"
|
||||
"github.com/jetsetilly/gopher2600/hardware/memory/cartridge/elf"
|
||||
"github.com/jetsetilly/gopher2600/hardware/memory/cartridge/mapper"
|
||||
"github.com/jetsetilly/gopher2600/hardware/memory/cartridge/moviecart"
|
||||
"github.com/jetsetilly/gopher2600/hardware/memory/cartridge/plusrom"
|
||||
|
@ -294,8 +295,6 @@ func (cart *Cartridge) Attach(cartload cartridgeloader.Loader) error {
|
|||
cart.mapper, err = newSuperbank(cart.env, cartload)
|
||||
case "WD":
|
||||
cart.mapper, err = newWicksteadDesign(cart.env, cartload)
|
||||
case "ACE":
|
||||
cart.mapper, err = ace.NewAce(cart.env, cartload)
|
||||
case "DPC":
|
||||
cart.mapper, err = newDPC(cart.env, cartload)
|
||||
case "DPC+":
|
||||
|
@ -314,6 +313,15 @@ func (cart *Cartridge) Attach(cartload cartridgeloader.Loader) error {
|
|||
|
||||
case "MVC":
|
||||
cart.mapper, err = moviecart.NewMoviecart(cart.env, cartload)
|
||||
|
||||
case "ACE":
|
||||
cart.mapper, err = ace.NewAce(cart.env, cartload)
|
||||
|
||||
case "ACE_wrapped_ELF":
|
||||
cart.mapper, err = elf.NewElf(cart.env, cartload, true)
|
||||
|
||||
case "ELF":
|
||||
cart.mapper, err = elf.NewElf(cart.env, cartload, false)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("cartridge: %w", err)
|
||||
|
|
|
@ -382,7 +382,9 @@ func (cart *Cartridge) fingerprint(cartload cartridgeloader.Loader) (string, err
|
|||
}
|
||||
|
||||
if ok, wrappedElf := fingerprintAce(cartload); ok {
|
||||
_ = wrappedElf
|
||||
if wrappedElf {
|
||||
return "ACE_wrapped_ELF", nil
|
||||
}
|
||||
return "ACE", nil
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue