News: 11 March 2016 - Forum Rules

Author Topic: Emulicious Hacking Tools  (Read 15617 times)

Calindro

  • Jr. Member
  • **
  • Posts: 51
    • View Profile
    • Emulicious
Emulicious Hacking Tools
« on: December 01, 2013, 09:36:00 am »
Hi guys,

I'm currently working on hacking tools for SEGA Mastersystem for my emulator Emulicious (http://www.emulicious.net).
There are 2 tools so far:
  • A memory tracer that can tell the sources of data (see screenshots)
  • A smart (seperating code from data) configurable disassembler


For example by following the source of tilemap data one can easily alter/translate texts of a game (see screenshot). Or alter images/palettes following the source in the respective viewers.


The disassembler can already completely seperate code from data in games like Alex Kidd in Miracle World and Sonic The Hedgehog 1.

Kind Regards
Calindro
« Last Edit: June 17, 2016, 05:59:30 pm by Calindro »

Calindro

  • Jr. Member
  • **
  • Posts: 51
    • View Profile
    • Emulicious
Re: Emulicious Hacking Tools for SEGA Mastersystem
« Reply #1 on: December 18, 2013, 08:37:10 am »
Hi guys,

I'm working on a debugger with syntax highlighting.
You can see the register values in top right and the stack below of it.
It allows 3 ways to step:
  • Step Into: Steps to the instruction that will be executed next
  • Step Over: Steps over the current instruction
  • Step Return: Steps out of the current function

Malias

  • Sr. Member
  • ****
  • Posts: 306
    • View Profile
Re: Emulicious Hacking Tools for SEGA Mastersystem
« Reply #2 on: December 18, 2013, 11:02:01 pm »
Looking good.  Keep it up.  :thumbsup:
The great achievement is to lose one's reason for no reason, and to let my lady know that if I can do this without cause, what should I do if there were cause?
     ~Don Quixote~

Tomato

  • Sr. Member
  • ****
  • Posts: 400
    • View Profile
    • Legends of Localization
Re: Emulicious Hacking Tools for SEGA Mastersystem
« Reply #3 on: December 19, 2013, 12:22:48 am »
Whoa, this is looking amazing! Good job!

Gideon Zhi

  • Discord Staff
  • Hero Member
  • *****
  • Posts: 3536
    • View Profile
    • Aeon Genesis
Re: Emulicious Hacking Tools for SEGA Mastersystem
« Reply #4 on: December 19, 2013, 01:50:22 am »
I could have used this a few weeks ago when hacking Royal Stone :(

Next Gen Cowboy

  • Hero Member
  • *****
  • Posts: 1766
  • "People are like dice"
    • View Profile
Re: Emulicious Hacking Tools for SEGA Mastersystem
« Reply #5 on: December 21, 2013, 03:09:43 am »
This is looking awesome, good luck.
"Remember when we were in Japan? You said you were my gun, if you're the gun then that means I'm the bullet."

"All my life I've been waiting for the gunpowder to go off, you know what you need to ignite gunpowder? You need a gun."

landstalker

  • Newbie
  • *
  • Posts: 1
  • Sega C'est plus fort que toi
    • View Profile
Re: Emulicious Hacking Tools for SEGA Mastersystem
« Reply #6 on: June 07, 2014, 02:15:49 am »
Looking good.  Keep it up.  :thumbsup:
I am actualy using the memory tracer and i can say this is really cool !
"capable du meilleur comme du pire. Et pour le pire c'est bien moi le meilleur"

Calindro

  • Jr. Member
  • **
  • Posts: 51
    • View Profile
    • Emulicious
Re: Emulicious Hacking Tools for SEGA Mastersystem
« Reply #7 on: June 26, 2014, 05:53:25 pm »
Hi guys,

I've just released a new version of Emulicious with the mentioned features! :)
Check it out on http://www.emulicious.net

Enjoy!
« Last Edit: June 26, 2014, 06:21:07 pm by Calindro »

Calindro

  • Jr. Member
  • **
  • Posts: 51
    • View Profile
    • Emulicious
Re: Emulicious Hacking Tools for SEGA Mastersystem
« Reply #8 on: September 19, 2014, 12:40:34 pm »
Hey guys,

there's another update of Emulicious!
This update mainly involves updates to the tools

I've added a Memory Editor with the following features:
datatype highlighting, informations about sources (provided by the Memory Tracer)
The names of the registers (also the VRAM Address) are annotated at the addresses they point to
Follow registers (select a register that you want to follow with your selection)
Save changed rom as romfile or changes as ips file
Undo/redo


The profiler has been improved:
You can now profile code from one point to another by providing a start address and an end address (e.g. of a function)
The data is provided as min/max/average


The tracer has been improved:
You can select the registers you want to trace and optionally provide a start address and an end address to limit the trace from a point to another or just start the tracing from a specific address for example

« Last Edit: September 19, 2014, 12:48:44 pm by Calindro »

BlackDog61

  • Hero Member
  • *****
  • Posts: 784
    • View Profile
    • Super Robot Wars A Portable translation thread
Re: Emulicious Hacking Tools for SEGA Mastersystem
« Reply #9 on: September 19, 2014, 02:06:32 pm »
I've added a Memory Editor with the following features

Looking good! :thumbsup:
Any plan for a search in the memory (supporting both hex and ascii)? (Or even table support?)
What about memory breakpoints - is that in the plan too?

Calindro

  • Jr. Member
  • **
  • Posts: 51
    • View Profile
    • Emulicious
Re: Emulicious Hacking Tools for SEGA Mastersystem
« Reply #10 on: September 26, 2014, 12:54:24 pm »
Looking good! :thumbsup:
Any plan for a search in the memory (supporting both hex and ascii)? (Or even table support?)
What about memory breakpoints - is that in the plan too?
Yes all that is planned :)

Calindro

  • Jr. Member
  • **
  • Posts: 51
    • View Profile
    • Emulicious
Re: Emulicious Hacking Tools for SEGA Mastersystem
« Reply #11 on: December 07, 2014, 04:42:01 pm »
Hey guys,

I've just updated Emulicious!
The new features include:
Use table files with the memory editor
Search for hex/text in the memory editor
Watchpoints (aka memory breakpoints)

Calindro

  • Jr. Member
  • **
  • Posts: 51
    • View Profile
    • Emulicious
Re: Emulicious Hacking Tools for SEGA Mastersystem and Game Gear
« Reply #12 on: February 09, 2015, 03:26:09 pm »
Hi guys,

I've just release another update of Emulicious.

The new version comes with several new features:
  • A Find Dialog for the debugger
  • Trace Highlighting (highlighting the instructions that have been executed before the current one):
  • A Reference Hierarchy (showing all the references to a label):
  • Destination Highlighting (when hovering a control flow instruction the destination gets highlighted; CTRL+Left click on one of them will scroll to the destination):

tryphon

  • Hero Member
  • *****
  • Posts: 737
    • View Profile
Re: Emulicious Hacking Tools for SEGA Mastersystem and Game Gear
« Reply #13 on: February 09, 2015, 04:15:08 pm »
I won't use your soft because I'm more in MD hacking, but this looks awesome. Really.

BlackDog61

  • Hero Member
  • *****
  • Posts: 784
    • View Profile
    • Super Robot Wars A Portable translation thread
Re: Emulicious Hacking Tools for SEGA Mastersystem and Game Gear
« Reply #14 on: February 10, 2015, 03:01:37 pm »
+1  ;D

FeRcHuLeS

  • Jr. Member
  • **
  • Posts: 28
    • View Profile
Re: Emulicious Hacking Tools for SEGA Mastersystem and Game Gear
« Reply #15 on: April 15, 2015, 09:43:22 pm »
Hey by the way are these tools useful for porting games from Game Gear to Master system?

Calindro

  • Jr. Member
  • **
  • Posts: 51
    • View Profile
    • Emulicious
Re: Emulicious Hacking Tools for SEGA Mastersystem and Game Gear
« Reply #16 on: April 16, 2015, 03:51:00 am »
Hey by the way are these tools useful for porting games from Game Gear to Master system?
Yes, definitely. :)

FeRcHuLeS

  • Jr. Member
  • **
  • Posts: 28
    • View Profile
Re: Emulicious Hacking Tools for SEGA Mastersystem and Game Gear
« Reply #17 on: April 18, 2015, 07:57:12 pm »
Hi again, I've just downloaded Emulicious and KiddEd and both are great!!! do you mind giving me some tips please.? I want to make sprites to appear outside the center screen (160x144) for Game Gear games X-men & X-men Gamemaster's Legacy and more. I'm new in hacking (I made some widescreen hacks for PS2 and I am familiar with C++ & Java programing besides I'm willing to learn more:))
Greetings

Calindro

  • Jr. Member
  • **
  • Posts: 51
    • View Profile
    • Emulicious
Re: Emulicious Hacking Tools for SEGA Mastersystem and Game Gear
« Reply #18 on: April 19, 2015, 04:00:04 pm »
Hi again, I've just downloaded Emulicious and KiddEd and both are great!!! do you mind giving me some tips please.? I want to make sprites to appear outside the center screen (160x144) for Game Gear games X-men & X-men Gamemaster's Legacy and more. I'm new in hacking (I made some widescreen hacks for PS2 and I am familiar with C++ & Java programing besides I'm willing to learn more:))
Greetings
At first you should enable the Memory Tracer and open the Sprite Viewer. With the Memory Tracer enabled start the game and play until sprites disappear. Now pause (CTRL+P) or suspend (Open the debugger if it's not open yet). Hover over the sprites with your cursor and look out for the lines saying "source...". The format of the source is as follows: ROM/RAM [source of data in ROM/RAM] (ROM/RAM [address of the instruction that has loaded the data from it's source])
Now open the debugger if it's not already open and press CTRL+G and enter the address of the instruction that has loaded the data. Now you need to understand what the code does so you can alter it to prevent it from removing the sprites that go offscreen. To alter an instruction you can right-click on it and click on "Select in Memory Editor". In the Memory Editor you can change the bytes that make up the instructions (a table of byte value / instruction can be found on http://clrhome.org/table/. As reference for instruction behaviors you can use http://z80-heaven.wikidot.com/instructions-set). When changing bytes in the memory editor you will see the instructions in the debugger change accordingly (this way you can verify if you've written the right values). When you're done changing altering the code to your needs you can test it by resuming the game. When everything works as expected you can press CTRL+S or File->Save As... in the Memory Editor to save your changes as an ips patch file or an sms/gg romfile.
« Last Edit: April 22, 2015, 05:18:11 pm by Calindro »

Calindro

  • Jr. Member
  • **
  • Posts: 51
    • View Profile
    • Emulicious
Re: Emulicious Hacking Tools for SEGA Mastersystem and Game Gear
« Reply #19 on: May 17, 2015, 01:43:50 pm »
Hi guys,

some people have reported issues downloading Emulicious. These issues have been solved now. If you still have trouble please let me know so they can be solved as soon as possible.

An update of Emulicious has been released!

The debugger has been expanded by an outline which helps you navigate through code and orient yourself in it.

The tracer can be controlled using conditions now. You can define start/end conditions and a condition on which to trace an instruction at all.
Additionally you can provide an expression to be evaluated before each instruction being traced. Its result will be appended to the trace. This way you can log additional information. For example if you want to watch the value in RAM at $c100 you can set the expression to "@$c100". That way each line of your trace will also contain the value at $c100.

As usual you will get the update via the auto updater or the full version from http://www.emulicious.net
« Last Edit: May 17, 2015, 01:53:12 pm by Calindro »