• Commodore Free, Issue 70 - Part9

    From Stephen Walsh@39:901/281 to all on Mon May 13 17:47:02 2013
    The intent is to make games graphics scale up to a bigger (or different) display than the C64's.

    - - - - - - - - - -

    Q. So you have to manually decompile each program and work out the screen memory locations then recompile the whole thing for larger screens

    Yes, you find out which memory the video is from, and which code draws to it.

    As for recompiling: The decompiler does not generate compliable code, only readable code. You can see how it works and modify the assembly code by hand, but you cannot recompile into a new game. So you just are patching the game
    and not re-compiling it.

    - - - - - - - - - -

    Q. Can you explain the decompile process, what tools you use; and how a
    typical game would be decompiled and turned into a RETROFIT version

    The decompiler is very advanced. It basically emulates a CPU and so at any address, you know the value of any register or stack value. Oh, and what's interesting is it can output a file with a list of memory addresses and the decompiled code that they correspond to.

    Then, in Frodo SAM, you load in the file, and can disassemble code, which
    shows the decompiled equivalent alongside the ASM code.

    - - - - - - - - - -

    Q. Why cant our user just enlarge the screen most emulators allow you to
    double or stretch the screen even run the game full screen whats wrong with doing this?

    As I've explained on the Retrofit webpage, it is the playing area that is increased. EG, you don't multiply the tile size by 2 and have the same number of tiles. No, you have more tiles in a bigger screen than possible on a real C64.

    Eg, instead of 7x7, 19x8.

    - - - - - - - - - -

    Q. So you have to download and install and EXE file for every title? or will you just issue the files so the users can save them in the emulators
    directory, and what platforms currently are supported i.e Windows Linux etc

    is it basically any machine with a Frodo emulator, It's the emulator, modified with the larger screen code, and a snapshot file with the patched game.

    - - - - - - - - - -

    Q. Can I ask Why use Frodo as the emulator behind this; is there a technical reason or is it just your favoured emulator,

    Well, the SAM disassembler is very important, as I could extend it. I don't know much about WinVice.

    - - - - - - - - - -

    Q. How long does it take for a tile to be decompiled and recompiled or retro fitted

    About 2 weeks of maybe 3 hours a day work.

    The process for Lords of Chaos was this:

    * Replace maximum window X/Y of 7x7 to 19x8

    * Replace constant which checks for wraparound (36 - N) with a higher one
    (? - N) as above 8 rows

    * Create bigger Y table (e.g, address table which has memory address of start of each tile row)

    * Code in VIC chip emulation to treat the video memory as bigger

    * Disable code so it doesn't draw to C64 RAM, but draws into the bigger video memory. Sadly, if 30% CPU is used to draw these tiles, then 2x as many tiles
    is 60% CPU, hence the slowdown.

    - - - - - - - - - -

    Q. Once the game has been RETROFIT, are there any problems with things like games speed, so for example does the game now run slower due to the extra amount of graphical detail on screen

    Yes, with a playing area times by 2, and heavy CPU to draw the screen, the
    game can slow down the emulator by a factor of 2.

    - - - - - - - - - -

    Q. Do you see any concerns over copyright on any of the games especially if
    you are going to sell the retro fit versions

    My plan is to find the original copyright holder and get permission,
    explaining that this process does not impede their vision.

    - - - - - - - - - -

    Q. I think as you explain it the main benefits of using a retro fit game
    rather than some sort of rework are; You keep any secret rooms that a rework may miss; (depending on how well the programmer knows the game) and if the coder has found them or any, also bugs or what i like to call features of the original are carried over, some would say it's these that can actually make
    the game, I know I have played "fixed Commodore 64 versions" and they dont
    give the same feel as the original

    Yup!

    - - - - - - - - - -

    Q. You can retro fit any game, these again would run under emulation do you have any idea of the systems that could be retro fitted

    Well, if you can get around the slowdown from having to draw more, you could retrofit:

    * C64
    * Spectrum
    * Amiga
    * PC (using DOSBox)
    * Apple
    * MAME

    Interesting is getting GEM on the C64 (or Atari ST) into a bigger screen.

    First, though, you need to ensure the screen can be expanded.

    As a rule, if the game has vertical AND horizontal scrolling and tiles, it can be Retrofitted. EG, Boulderdash, Ultima 6, Lords of Chaos, Parallax (the shoot-em-up), and other games.

    A GUI can be retrofitted, too. And a word processor and text game (like
    QUILLed or PAWed adventure games).

    - - - - - - - - - -

    Q. What games are available for our users to try that have been retro fitted

    Just Lords of Chaos. I'm working on Boulderdash IV now...

    - - - - - - - - - -

    Q. With emulators like MAME could arcade games be retro fit to play on smart phones, tablets etc

    Yup, smaller screens, bigger screens, or different aspect ratios!

    - - - - - - - - - -

    --- CrashWrite 2.0
    * Origin: --:)-- Dragon's Lair BBS --(:- (39:901/281)