Thursday, April 2, 2020

Help us preserve Great Swordsman!

UPDATE 2020-04-06: we tentatively have enough submissions to decode the ROMs, assuming a few people we know are working on them finish. Thanks to all of those that have submitted and we'll try to post an update in the near future!

Arcade Game: Great Swordsman (1984 Taito) - YouTube

Previously we decapped a few NEC D8041AH MCUs from Great Swordsman in order to better document the game. Unfortunately the images were a little hard to read. However we recently decapped a new AA-016 (C031) and a new AA-017 (C032) and the contrast is much better! Specific cause hasn't been investigated.


Anyway, we are looking for help digitizing the firmware microscope images into bits. This can be done either by manually typing out all 8192 bits or using the rompar utility (preferred)

If you're interested, here is the raw data:

  • AA-016
    • Suggested: nec_8041ah_gswm_aa-016_decap-c031_xpol.jpg
  • AA-017:
    • Suggested: nec_8041ah_gswm_aa-017_decap-c032_xpol.jpg

Specifically:
  • We are especially looking for help with AA-016
  • Multiple people submitting improves accuracy
  • There are some stitching artifacts. If they get in the way of digitizing we can revisit stitching
  • If applicable, please provide rompar project file
  • We will take care of post processing into binary
  • rompar_decap-8_rom_mit20x_xpol is provided as a reference project. Note the image contrast wasn't great, so there were a lot of errors
  • By convention, brighter bits are generally typed as "1" and dark as "0". But we can accept either
  • Advanced rompar users: you can use the reference project as a template, but you'll need to re-align the images. We did this to produce the above rompar image while checking AA-017 results
Please let us know if you have any questions!

Update 2020-04-04


We are starting to process submissions. Thanks to everyone who has submitted so far!

It seems there's some confusion as to where the ROM starts and ends. The above image shows the first 4 rows. When this is exported from rompar it looks like this:

11101011...
01001000...

01101011...
11001101...
...

This is because the the rows are designed in pairs, but the paired bits have some space between them. That is, the bits that actually are adjacent are not from the same pair. This has caused some people to skip the first row:


And give it as:

01001000...
01101011...

11001101...

So with that in mind, we suggest you type it up closer to this if you want to preserve a rough visual layout:

11101011...

01001000...
01101011...

11001101...
...

This won't match rompar output, but this doesn't effect post processing. Hope that helps clarify!

Prologue

Enjoy this post? Please support us on Patreon or follow us on TwitterNote: with the Indiegogo campaign over we unfortunately don't currently have a way to accept one time donations.

17 comments:

  1. ROMPAR is linux only.
    How can a win10 user contribute?

    ReplyDelete
    Replies
    1. Hi f205v! I don't know if it uses Linux specific features, but probably not tested outside of Linux much. Other options would be to run it in a VM or manually type out the bits. Opening a MacOS and/or Windows ticket would probably help move support forward though.

      Other: We also considered djanogo-monkeys (ROM capture crowdsource server), but decided it wasn't a good fit at this time.

      Delete
    2. Thanks for the answer. Unfortunately I'm absolutely not smart enough to use VMs or similar.

      Why not use the old http://cs.sipr0n.org/ ?
      That was a success back in the days, and anybody could contribute via web.

      Delete
    3. Specifically djanogo-monkeys (ie cs.sipr0n.org) has several issues. First, its a fair bit of work to setup a job. In order to get it up there you have to use a tool (say rompar) to mark where the bits are and also come up with a tiling scheme. Then chop up the image and create a project on the server. For small jobs like this we wanted to see the feasibility of getting someone to run rompar instead as a lighter weight flow.

      A practical reason as well: the server needs to be re-setup. So now the effort is higher than it was previous.

      Ultimately it boils down to that there is one person doing the lab work and trying to find ways to keep as much of that time as possible devoted to that specialty work.

      Delete
    4. ah! Thank you for the detailed answer.

      Delete
  2. If it is to be done manually, what order should the bits be recorded? i.e., left to right, right to left - any other special instructions?

    ReplyDelete
    Replies
    1. Hi! Please take a look at rompar_decap-8_rom_mit20x_xpol for an example .jpg and corresponding .txt file

      Delete
  3. Not sure whether this is any good but here is my attempt at a016:
    https://www.dropbox.com/s/oimstacvznzbew2/great%20swordsman%20aa016.zip?dl=0

    ReplyDelete
    Replies
    1. Thanks! There are some errors, but hopefully we can get a few more submits to combine and improve accuracy

      Delete
  4. Here is aa017:
    https://www.dropbox.com/s/wvmcb8yxdws6rel/great%20swordsman%20aa017.zip?dl=0

    ReplyDelete
  5. Here is my aa-016 attempt, hopefully it's acceptable.
    If so I'll start on aa-07.

    https://www.dropbox.com/s/n99mln2fw1n2z8d/aa-016.txt?dl=1

    ReplyDelete
  6. There seems to be a Windows version of rompar.
    From:
    https://github.com/AdamLaurie/rompar/blob/master/README.md

    Installing
    Windows
    git clone https://github.com/AdamLaurie/rompar cd rompar virtualenv venv venv\Scripts\activate pip install opencv-python pyqt5 python rompar.py file.jpg 16 8

    Release history
    2.1.0
    Windows installer

    ReplyDelete