Great.jvas wrote:I've just run it on my Falcon with RGB output, an works exactly the same as on the Youtube video. Great work!
Uh... thanks for the hint: the demo is RGB/TV only.

Cheers
Sascha
Great.jvas wrote:I've just run it on my Falcon with RGB output, an works exactly the same as on the Youtube video. Great work!
Yes, VGA will be supported as well.simonsunnyboy wrote:Technically a very interesting project, in case of teh keyboard I'll probably wait for a more advanced version.
Will VGA be supported in the future?
Please note that the current approach is limited to MC68000 family systems so don't expect to have other CPU architectures emulated as well.dma wrote:Cool thing is that if you can do Genesis emulation, including the Z80 co-processor, Master System and Game Gear could be easy, especially as those use a YM2149 soundchip type, which is also present on Falcon... (and ST)
OK, thanks for your input on this.AtariZoll wrote:Am I only one here, who sees some irreal expectations ? Seriously, Z80 emulation on ST ? It is not enough fast for that.
"Stackframe modifications" / "self modifying code" / "24 bit addresses with high byte data storage" are indeed potential problems. However, so far it seems to be unlikely that all these tricks are being used by the game ROMs. E.g. "Self modifying code" is not very common when running a program in ROM and having only a limited space of work RAM. In fact, I was referring to "dirty tricks used on the MC68000" in the original post to address this issue.AtariZoll wrote:Considering running on Falcon: expect stackframe problems because different CPU. You can not solve it without changing/fixing code of problematic SW. And there are other incompatibilities between CPUs.
(TI89 is 68000 based)Well, I WRITE Z80 emulator on TI89. Actually it will emulate ZX Spectrum, popular Europe machine. It is still buggy, but some machine code routines can work. The result is that this 3.5 MHz machine works at about 50% of speed of the original when emulated on 10 MHz TI89. I have great expirience in ZX Spectrum emulators, and
used all possible optimization tricks.
Well, that's Interesting. To complete the emulation it's surely necessary to have a good Z80 emulation - at least this will be an option for the accelerated machines so I might get back to you soon.shoggoth wrote:I've built Günter Woigks' (KiO) 68k-assembly Z80-core on GAS. It sort of works for a typical spectrum emulator (which is what I've used it for). Let me know if this could be of interest (it should however be noted that my modifications to get it running on GAS were nasty and I never cleaned them up).
For information, sound on Genesis is synthesized, FM type : YM2612Anima wrote:However, I think that the sound could be emulated in a more simplifyed way on the stock Falcon. Actually, the game logic sends only short commands to the sound system (Z80) via the memory mapped address so basically the functionality is like: "play this song" or "play that sample". TBH I am not really sure if this will work but all you have to do is to replace the command by calling an own sound driver routine which plays atari music and/or samples. Of course this assumes that we have someone who composes all the sounds and samples.
do you know any other emulator that works in this way?Anima wrote:The MMU table is used to reproduce the NEO GEO memory map so that the game code runs in the original place (of course). The NEO GEO specific hardware registers are also mapped appropriately but they are marked as "invalid" MMU descriptors. Accessing those addresses will cause a bus error. So all you wish for is a smart bus error handler which emulates the behaviour of the register functions. To do so it requires the following features:
It is really a kind of virtual machine - with emulation of devices - and it's a great way to use the 68030 MMU!calimero wrote: do you know any other emulator that works in this way?
impressive work!
No and I was really surprised that it works out so well.calimero wrote:do you know any other emulator that works in this way?
Yup, that's a much better idea. It's better to have a playable emulator than to accurately emulate every single aspect of the original machine. In my SMS+ port (060+) I emulate the PSG using a simple PSG->YM wrapper. The chips are similar enough to make this work well for most games. Sampled sound doesn't sound right though, but apart from that the result is fairly convincing.Anima wrote:However, I think that the sound could be emulated in a more simplifyed way on the stock Falcon. Actually, the game logic sends only short commands to the sound system (Z80) via the memory mapped address so basically the functionality is like: "play this song" or "play that sample". TBH I am not really sure if this will work but all you have to do is to replace the command by calling an own sound driver routine which plays atari music and/or samples. Of course this assumes that we have someone who composes all the sounds and samples.
Basilisk 2 contains a rudimentary virtualization mechanism; it changes the VBR and virtualizes supervisor mode, so the virtual Mac basically runs in user mode despite using privileged instructions. It doesn't change the MMU mapping though. On the Atari, it would some additional MMU tricks and/or changes to the FreeMiNT kernel (if multitasking is required).calimero wrote:do you know any other emulator that works in this way?
Yes I think it's the right thing to concentrate on making a select subset of games playable and worthwhile, rather than trying to implement an accurate emulator for everything, and end up with no playable games. So abstracting some devices and services (like music etc.) is sensible.shoggoth wrote:
Yup, that's a much better idea. It's better to have a playable emulator than to accurately emulate every single aspect of the original machine. In my SMS+ port (060+) I emulate the PSG using a simple PSG->YM wrapper. The chips are similar enough to make this work well for most games. Sampled sound doesn't sound right though, but apart from that the result is fairly convincing.
You could use MP2 (DSP) for music and the YM for sound effects, perhaps. Maybe DSPMOD could be used, iirc it offers SFX channels + "MOD" capability.