The perfect snapshot

By | September 1, 2013

StyleSheetSkoolKit 3.5 has been released. Not only that, but copies are available, as you’ve probably come to expect, from the aptly monickered download page. Feel free to pop over there and pick up a tarball, zip archive, RPM package or DEB package. I aim to please with a variety of download formats. Alternatively, you could use easy_install or pip to install SkoolKit from PyPI. So, got your copy? OK then, now sit back while I lay out the main changes since the last version I bothered to write an article about (3.3.2 in May).

First, the bad news. This is something you should pay special attention to if you’ve created (and are using) your own custom CSS file(s) with SkoolKit: the StyleSheet and Font parameters have moved from the [Paths] section of the ref file to the [Game] section. In addition, the Logo parameter has also moved from the [Paths] section to the [Game] section, so take care to update your ref file accordingly if you’re using a custom game logo. And, to add insult to injury, the JavaScript parameter has moved from the [Paths] section to the [Page:*] section. Why all these apparently senseless and inconvenient moves of oft-used parameters from one place to another? Well, truth be told, they should never have lived in the [Paths] section in the first place; that section is supposed to contain parameters specifying where files that don’t yet exist should be written, and the aforementioned parameters do not fit that description. Case closed.

Now, the good (or, at least, not annoying) news. On the subject of CSS files and themes, SkoolKit 3.5 brings support for multiple themes, and includes three new sample themes (in addition to the traditional dark and spectrum): green, plum and wide. As the names suggest, green makes your HTML disassembly mostly green, plum makes it mostly dark purple, and wide makes the tables on disassembly pages and the boxes on the Changelog, Glossary, Trivia, Bugs and Pokes pages stretch to full width. So if you want your disassembly to look green and wide, you can do this:

$ skool2html.py -T green -T wide game.ref

Also note that if you want to use your own custom theme, then for ease of maintenance and portability between SkoolKit versions, it’s a good idea to create a CSS file that contains only the differences required from the stock skoolkit.css, and to use both skoolkit.css and your custom CSS file (in that order) when building a disassembly. All the alternative CSS themes that come with SkoolKit have been written (or rewritten and much reduced!) to work in conjuction with skoolkit.css.

Next up, SkoolKit has a new command in its library: tap2sna.py. This command can convert a TAP or TZX file (remote or local, in a zip archive or not) into a Z80 snapshot. Big deal, I hear you snort. But hang on! The idea is that if you’re still in the control file phase of your disassembly, or you’d rather use a skool file template instead of a skool file, you can provide instructions to other users on how to create the ‘perfect’ snapshot that can be used to build the disassembly (from your control file or skool file template) with every byte having the value it’s supposed to have. See the documentation for all the gory details on how to start creating perfect snapshots today.

And that’s probably it for the most newsworthy changes. If it were a slower news day I could mention that skool2html.py now supports ASM labels in HTML output and can hyperlink the operands of LD instructions, that the #NAME macro is dead (and presumably unmourned), and that you might find the new --erefs option of sna2skool.py somewhat useful; but all that would take up too much space in an already bulging article. The curious SkoolKit user can always check the changelog for details.

Have fun with 3.5!

4 thoughts on “The perfect snapshot

  1. Luny

    I’ve just upgraded after not using Skoolkit for awhile. Brilliant stuff. Really is the most useful utility for me at the moment. Just one comment, am I correct in noting that the @label is only used by call type op-codes? I noticed that the same referenced address is not swapped out with something like ‘LD DE,nnnn’. Would this be possible? It would certainly help by not having to remember where strings and graphics are if the dissassembly / HTML swaps out the address for a label. Or am I missing something?

    Anyway keep up the great work
    Luny.

  2. Luny

    Um, I am missing something…
    ‘ skool2html.py now supports ASM labels in HTML output and can hyperlink the operands of LD instructions,’

    Hmm, didn’t seem to work for me.. I’ll try again.

  3. Luny

    Thanks SkoolKid, that is the missing bit of my information.
    I’m now getting linked labels on the LD op-codes.
    Thank you, this is going to make things so much easier.

Leave a Reply

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