Author Topic: Romhack's WIP thread  (Read 23889 times)

Offline Haze

  • MAME Devs
  • *****
  • Posts: 157
  • Karma: +45/-0
Re: MIPS III wip (for Killer Instinct)
« Reply #15 on: February 08, 2015, 01:03:21 pm »
KI is basically 100% CPU (it draws to a framebuffer, all rendering is done b y the emulated CPU) so without a recompiler you'll struggle to get a good speed.

Offline Romhack

  • Expert
  • *****
  • Posts: 94
  • Karma: +49/-0
Re: MIPS III wip (for Killer Instinct)
« Reply #16 on: February 08, 2015, 09:02:55 pm »
I'll try to implement a recompiler, but for FBA this is a challenge, we don't have UML.
I could write an x86/64 recompiler, but this isn't portable :S
---
After some TLB fixes, and FPU emulated:







KI2 has some bugs in background.


KI2 runs faster than KI even with better graphics :O

Offline gamez fan

  • Expert
  • *****
  • Posts: 517
  • Karma: +13/-1
  • Arcade Addict
Re: MIPS III wip (for Killer Instinct)
« Reply #17 on: February 08, 2015, 09:23:49 pm »
@Romhack Lovely Work!!!!

Offline Sturm

  • Jr. Member
  • **
  • Posts: 60
  • Karma: +31/-0
Re: MIPS III wip (for Killer Instinct)
« Reply #18 on: February 14, 2015, 08:59:54 am »
Romhack, your work on FB Alpha is really increasing the magnificence of this great emulator. Congrats. But let me be one these annoying users that are always asking the most hated questions of the emulator scene (hope not get to many "Smites", lol). Since you are working on more recent games (not focus on M68K e Z80) and (perhaps) dealing with some OpenGL instructions, what would the difficult to support games such Sega Model 2 and 3 on FBA, implementing the source code of Model 2 emulator" and "Supermodel", for example? http://www.supermodel3.com/About.html

Regards,
Sturm

Offline Romhack

  • Expert
  • *****
  • Posts: 94
  • Karma: +49/-0
Re: MIPS III wip (for Killer Instinct)
« Reply #19 on: February 15, 2015, 10:02:46 pm »
Romhack, your work on FB Alpha is really increasing the magnificence of this great emulator. Congrats. But let me be one these annoying users that are always asking the most hated questions of the emulator scene (hope not get to many "Smites", lol). Since you are working on more recent games (not focus on M68K e Z80) and (perhaps) dealing with some OpenGL instructions, what would the difficult to support games such Sega Model 2 and 3 on FBA, implementing the source code of Model 2 emulator" and "Supermodel", for example? http://www.supermodel3.com/About.html

Regards,
Sturm

This is just beyond my skills :(

----
I am writing an x86_64 (SysV ABI) recompiler . It's fun to write, but extremely hard to debug! It has two modes (defined at compile time), first is full recompiler (translate every opcode into x64 code) and second is full fallback where the generated code just calls the interpreted code. I am using std::unordered_map for recompiled block lookups, but with profiling this doesn't seems to be a good use for it.

Offline Romhack

  • Expert
  • *****
  • Posts: 94
  • Karma: +49/-0
Re: MIPS III wip (for Killer Instinct)
« Reply #20 on: February 16, 2015, 05:33:07 pm »
Test videos:
Killer Instinct I - Interpreter and Dynamic Recompiler
https://www.youtube.com/watch?v=xnJ-iSro-oE

Killer Instinct II  - Interpreter and Dynamic Recompiler
https://www.youtube.com/watch?v=aMsesi_TtyE


Offline Sturm

  • Jr. Member
  • **
  • Posts: 60
  • Karma: +31/-0
Re: MIPS III wip (for Killer Instinct)
« Reply #21 on: February 17, 2015, 11:21:06 pm »
That's awesome, Romhack. But please, just let me know. I am not a developer, so forgive me for my silly questions. The x86_64 recompiler that you are writing, will it be useful just for the KI games (what is awesome for itself) or it may be useful for some other games to be ported in the future?

Offline Romhack

  • Expert
  • *****
  • Posts: 94
  • Karma: +49/-0
Re: MIPS III wip (for Killer Instinct)
« Reply #22 on: February 18, 2015, 11:16:23 am »
It will be useful for anything that uses MIPS emulator, mainly for those with high clocks, KI has an MIPS R4600 running at 100MHz. IIRC, the highest clock on FBA is 25MHz (CPS-3 with SH2)

Offline Romhack

  • Expert
  • *****
  • Posts: 94
  • Karma: +49/-0
Re: MIPS III wip (for Killer Instinct)
« Reply #23 on: February 19, 2015, 01:59:53 pm »
First image on FBA \o/

Offline lantus

  • Expert
  • *****
  • Posts: 152
  • Karma: +30/-0
Re: MIPS III wip (for Killer Instinct)
« Reply #24 on: February 19, 2015, 05:15:52 pm »
hmm might be time to dust off the 360 again. Nice work :)

Offline Romhack

  • Expert
  • *****
  • Posts: 94
  • Karma: +49/-0
Re: MIPS III wip (for Killer Instinct)
« Reply #25 on: February 19, 2015, 06:23:43 pm »
It works. :biggrin:


Online dink

  • Administrator
  • *****
  • Posts: 2679
  • Karma: +227/-0
  • feed the horse yumyum
Re: MIPS III wip (for Killer Instinct)
« Reply #26 on: February 19, 2015, 06:53:27 pm »
Congrats!  Great job :D

best regards,
- dink

Offline Sturm

  • Jr. Member
  • **
  • Posts: 60
  • Karma: +31/-0
Re: MIPS III wip (for Killer Instinct)
« Reply #27 on: February 19, 2015, 07:52:02 pm »
"One small step for a developer, one giant leap for FBA." Congrats! :)

Offline Huggybaby

  • Jr. Member
  • **
  • Posts: 92
  • Karma: +2/-0
Re: MIPS III wip (for Killer Instinct)
« Reply #28 on: February 21, 2015, 01:39:59 pm »
I think the KI series is the most requested for FBA, and I thought it couldn't be done!

Offline Romhack

  • Expert
  • *****
  • Posts: 94
  • Karma: +49/-0
Re: MIPS III wip (for Killer Instinct)
« Reply #29 on: February 22, 2015, 08:48:54 pm »
I think the KI series is the most requested for FBA, and I thought it couldn't be done!
Well, I think the MK series is the most requested for FBA, but TMS34010 is a very very very (VERY) complex piece of hardware.

----
KI running on FB Alpha, using dynamic recompiler.
https://www.youtube.com/watch?v=alC_RBiDP94

I hope someday we'll have real 3D hardware emulated on FBA, Killer Instinct uses software rasterizer on a dumb framebuffer :P.
But for now, we need DCS,
I already ported ADSP2100 from MAME (PinMAME) to FBA with adsp21xx_intf, but I don't know if it works...