Welcome, Guest. Please login or register.

Author Topic: Motorola 68060 FPGA replacement module (idea)  (Read 221276 times)

Description:

0 Members and 2 Guests are viewing this topic.

Offline Georg

  • Jr. Member
  • **
  • Join Date: Feb 2002
  • Posts: 90
    • Show all replies
Re: Motorola 68060 FPGA replacement module (idea)
« on: January 14, 2013, 07:41:04 PM »
Emulators can "lay out" the emulated memory in whatever way they like as long as the emulation makes it look "normal" to the emulated machine.

A normal emulator like UAE will use:

emulated address 0: <--> address hostmem + 0
emulated address 1: <--> address hostmem + 1
emulated address 2: <--> address hostmem + 2
emulated address 3: <--> address hostmem + 3
emulated address 4: <--> address hostmem + 4
emulated address 5: <--> address hostmem + 5
emulated address 6: <--> address hostmem + 6
emulated address 7: <--> address hostmem + 7
[..]

But theoretically it can also use:

emulated address 0: <--> address hostmem_end - 0
emulated address 1: <--> address hostmem_end - 1
emulated address 2: <--> address hostmem_end - 2
emulated address 3: <--> address hostmem_end - 3
emulated address 4: <--> address hostmem_end - 4
emulated address 5: <--> address hostmem_end - 5
emulated address 6: <--> address hostmem_end - 6
emulated address 7: <--> address hostmem_end - 7
[..]

or:

emulated address 0: <--> address hostmem + 3
emulated address 1: <--> address hostmem + 2
emulated address 2: <--> address hostmem + 1
emulated address 3: <--> address hostmem + 0
emulated address 4: <--> address hostmem + 7
emulated address 5: <--> address hostmem + 6
emulated address 6: <--> address hostmem + 5
emulated address 7: <--> address hostmem + 4
[..]

Such tricks can help avoiding byte swaps but there are also some disadvantages like when the emulated machine wants to read something from disk which likely ends up using something like fopen/fread of host, which of course use normal memory layout. So after load you will need to fix up loaded stuff to match emulated layout (swap or mem reverse).