Vhex-disassembler is a GUI, Vim based, disassembler for fx9860g.
Go to file
yann MAGNIN ace25fd496 Update README 2019-06-20 15:49:09 +02:00
include Add FPU instructions. 2019-06-17 23:42:07 +02:00
src Add FPU instructions. 2019-06-17 23:42:07 +02:00
tests Update License used by the project --> switch to CC0. 2019-06-14 14:49:13 +02:00
.gitignore All instructions can be traducted "on-the-fly". (except FPU instruction because 2019-06-10 02:14:49 +02:00
LICENSE Update License used by the project --> switch to CC0. 2019-06-14 14:49:13 +02:00
Makefile Add FPU instructions. 2019-06-17 23:42:07 +02:00
README.md Update README 2019-06-20 15:49:09 +02:00
bootstrap.ld Update License used by the project --> switch to CC0. 2019-06-14 14:49:13 +02:00
global.mk Update License used by the project --> switch to CC0. 2019-06-14 14:49:13 +02:00
icon.bmp All instructions can be traducted "on-the-fly". (except FPU instruction because 2019-06-10 02:14:49 +02:00
vhex.g1a Add FPU instructions. 2019-06-17 23:42:07 +02:00

README.md

Vhex disassembler

Vhex is a GUI, Vim based, disassembler for fx9860g. The Casio's OS code is not open-source, but we can read the binary for understand his working. There are in particular the syscalls, OS's functions that can be called as a library by the add-ins, which are a gold mine of clues about the functioning of the material.

features

  • All SH3 and SH4 instructions traduced "on-the-fly".
  • Can handle 3 modes for movements.
  • Can handle commands.
  • Commands history.
  • Compatible with SH3 and SH4 architecture.

List of currently supported commands:

  • systab jump into the Casio "syscall handler".
  • vbrjmp <zone> jump into the Casio interrupt, exception or tlb miss handlers.
  • syscall <id> jump into the syscall function.
  • ram <zone> jump into the RAM mapped at different parts of the Virtual Memory.
  • jmp <address> jump where you want.
  • rom <zone> jump into the ROM mapped at different parts of the Virtual Memory.
  • help <cmd> display command's help.

List of currently supported modes:

  • UNUSED The session is unused.
  • NORMAL User can move freely where it wants.
  • COMMAND User can type some commands.

Building

Before compiling for the first time, There are few dependencies:

  • A suitable GCC toolchain in the PATH. You can absolutely not build Vhex with your system compiler! sh3eb-elf is strongly advised.
  • g1a wrapper to generate the Casio header.
  • P7 communication utilities.

To compile the project, you just plug the calculator and execute:

% make
% make install