armips news

I hope you’ve all been enjoying Oriental Blue! There hasn’t been much progress on the other translations this time, but those are far from the only things I work on! In the last six months I’ve spent a lot of time on improving my assembler. I rewrote about half of it, added a few very neat new features, and made it open source on a GitHub repository. If anyone wants to contribute to it, pull requests are welcome. Otherwise you can just check out the latest stuff. It needs Visual Studio 2013 to compile, and the Visual C++ 2013 redistributable to run.

Here are the currently notable changes since the last release:

  • it is now possible to load (non relocateable) PSP ELFs via .loadelf name. This takes care of any address calculations. Many more PSP specific opcodes are also supported, though not at all yet
  • now fully UCS2 compatible. Can read from UTF8 and UTF16LE/BE by detecting the byte order mark. Can be told to interprete a file as Shift-JIS, too. If no BOM is found, it defaults to UTF8
  • the biggest new feature: importing static libraries compiled for PSP or GBA/NDS. armips takes care of relocating it to the current address, resolves external symbols using the user defined labels, and makes all exports visible to the rest of the assembly code. Essentially this allows you to write a lot of your code in C/C++, and then easily link it into the existing game using armips. The usage is .importlib name.
  • new -sym2 format, which adds support for functions that PPSSPP can interprete. .function name to start a function, and .endfunc to end it. .function will implicitly end any previous function.
  • new directives: .function, .endfunction, .stringn, .sjis, .loadelf, .importlib

I’m not sure how long it’ll take to wrap things up for the next proper release, but it will definitely be the biggest update so far.

12 thoughts on “armips news

  1. Arne

    He basically said theres not much progress on the other translations – which includes dqm unfornatually

  2. Chi

    As much as I am itching to get the Xenosaga 1&2 patch, I understand how translating something like that could take a long time. I’m assuming that all the current projects are still alive? Can you post an update on that please?

  3. Kingcom Post author

    All projects are still alive. DQM needs more fixing in many menus, due to some very complicated and deep changes. Battle messages need to be manually formatted (due to the very variable nature and being composed of little more than tiny sentence fragments pieced together by scripts). Graphics need to be translated. Otherwise it’s playable without notable issues. For those curious, take a look at the status of our bug tracker: http://puu.sh/6uB8C/93397b9b48.png
    Xenosaga and SRWF are not fully translated yet.

    Though this post is about armips, not the translations.

  4. chris

    that is all ive wanted to hear for the past 6 months now. thank you and keep up the great work

  5. Valkyrie

    Hi Kingcom, thanks for this information about the patches. But in that case, what about updating this page ?:
    http://aerie.wingdreams.net/?page_id=8

    I think doing this will avoid lots of future commentaries asking for updates. If I have understood well one of your previous post, the translation of the story-script of Xenosaga I.II is finished. All that remains are menu-scripts. Right ?

    P.S. : There are good translations of Xenosaga I.II here :
    http://xeno-underground.net/wiki/doku.php?id=wiki:xenosaga_ds
    and here :
    http://www.zohar-project.com/jeuxderives/undeux/modifs.php

  6. Brenden

    Out of curiosity what ever happened to translating/hacking Devil Children Book of Ice/Fire, its been several years and I was hoping to see it by now, or was it completely dropped when that one coder left?

  7. kdiz

    Is that bug tracker updated semi-regularly? If so is there a place we can find it other than in your post? Because that could potentially be the answer to a lot of the posts about the progress of translations.

Leave a Reply

Your email address will not be published. Required fields are marked *