{ "info": { "author": "Richard Dymond", "author_email": "rjdymond@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Disassemblers", "Topic :: Utilities" ], "description": "\nSkoolKit\n========\nSkoolKit is a collection of utilities that can be used to disassemble a\nSpectrum_ game (or indeed any piece of Spectrum software written in machine\ncode) into a format known as a `skool` file. Then, from this `skool` file, you\ncan use SkoolKit to create a browsable disassembly in HTML format, or a\nre-assemblable disassembly in ASM format. So the `skool` file is - from start\nto finish as you develop it by organising and annotating the code - the common\n'source' for both the reader-friendly HTML version of the disassembly, and the\ndeveloper- and assembler-friendly ASM version of the disassembly.\n\n.. _Spectrum: https://en.wikipedia.org/wiki/ZX_Spectrum\n\nFeatures\n--------\nSkoolKit can:\n\n* convert a TAP or TZX file into a 'pristine' snapshot (using `tap2sna.py`)\n* disassemble SNA, Z80 and SZX snapshots as well as raw memory files\n* distinguish code from data by using a code execution map produced by an\n emulator\n* build still and animated PNG/GIF images from graphic data in the game\n snapshot (using the ``#UDG``, ``#UDGARRAY``, ``#FONT`` and ``#SCR`` macros)\n* create hyperlinks between routines and data blocks that refer to each other\n (by use of the ``#R`` macro in annotations, and automatically in the\n operands of ``CALL`` and ``JP`` instructions)\n* neatly render lists of bugs, trivia and POKEs on separate pages (using\n ``[Bug]``, ``[Fact]`` and ``[Poke]`` sections in a `ref` file)\n* produce ASM files that include bugfixes declared in the `skool` file (with\n ``@ofix``, ``@bfix`` and other ASM directives)\n* produce TAP files from assembled code (using `bin2tap.py`)\n\nFor a demonstration of SkoolKit's capabilities, take a look at the complete\ndisassemblies of `Skool Daze`_, `Back to Skool`_, `Contact Sam Cruise`_,\n`Manic Miner`_, `Jet Set Willy`_ and `Hungry Horace`_.\n\n.. _Skool Daze: https://skoolkit.ca/disassemblies/skool_daze/\n.. _Back to Skool: https://skoolkit.ca/disassemblies/back_to_skool/\n.. _Contact Sam Cruise: https://skoolkit.ca/disassemblies/contact_sam_cruise/\n.. _Manic Miner: https://skoolkit.ca/disassemblies/manic_miner/\n.. _Jet Set Willy: https://skoolkit.ca/disassemblies/jet_set_willy/\n.. _Hungry Horace: https://skoolkit.ca/disassemblies/hungry_horace/\n\nQuick start guide\n-----------------\nSkoolKit includes fairly detailed documentation_, but if you want to get up and\nrunning quickly, here goes.\n\nTo convert a SNA, Z80 or SZX snapshot of a Spectrum game into a `skool` file\n(so that it can be converted into an HTML or ASM disassembly)::\n\n $ sna2skool.py game.z80 > game.skool\n\nTo split the disassembly up into code and data blocks, you'll need a\n`control file`_.\n\nTo turn this `skool` file into an HTML disassembly::\n\n $ skool2html.py game.skool\n\nTo turn it into an ASM file that can be fed to an assembler::\n\n $ skool2asm.py game.skool > game.asm\n\n.. _documentation: https://skoolkit.ca/docs/skoolkit/\n.. _control file: https://skoolkit.ca/docs/skoolkit/control-files.html\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://skoolkit.ca", "keywords": "", "license": "GPLv3", "maintainer": "", "maintainer_email": "", "name": "skoolkit", "package_url": "https://pypi.org/project/skoolkit/", "platform": "", "project_url": "https://pypi.org/project/skoolkit/", "project_urls": { "Homepage": "https://skoolkit.ca" }, "release_url": "https://pypi.org/project/skoolkit/7.2/", "requires_dist": null, "requires_python": "", "summary": "A suite of tools for creating disassemblies of ZX Spectrum games", "version": "7.2" }, "last_serial": 5348537, "releases": { "3.3.2": [ { "comment_text": "", "digests": { "md5": "78045777f96a87568c3389589e76512a", "sha256": "371e8f04e24f6ea3fc2cbb75cced02d6c9388e1d7cc63575d2bb12c068e0bfd9" }, "downloads": -1, "filename": "skoolkit-3.3.2.tar.gz", "has_sig": false, "md5_digest": "78045777f96a87568c3389589e76512a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 104347, "upload_time": "2013-05-20T14:35:50", "url": "https://files.pythonhosted.org/packages/00/11/f50be4696db94e79e434c4ac26a2218be47c33d907ff651b516f8dd996a8/skoolkit-3.3.2.tar.gz" } ], "3.4": [ { "comment_text": "", "digests": { "md5": "ae2c79a2c77405769be7616ac2acad43", "sha256": "9f15f605cd3bd24e7701d920491f50834c8a74acbfb79800c658a80c2aa1be40" }, "downloads": -1, "filename": "skoolkit-3.4.tar.gz", "has_sig": false, "md5_digest": "ae2c79a2c77405769be7616ac2acad43", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 106935, "upload_time": "2013-07-08T12:58:29", "url": "https://files.pythonhosted.org/packages/b1/4a/cebe6a88a5d947520f814eb20b44ec6df1ef3b76cbb5b4d42cc3172c80d0/skoolkit-3.4.tar.gz" } ], "3.5": [ { "comment_text": "", "digests": { "md5": "1dd73bdf1f2fb473bd9210b4332417e3", "sha256": "85072536a25ddf8087d28d72fc560f19a2effe1e03b776da3449ae912c6b6773" }, "downloads": -1, "filename": "skoolkit-3.5.tar.gz", "has_sig": false, "md5_digest": "1dd73bdf1f2fb473bd9210b4332417e3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 483502, "upload_time": "2013-09-01T14:50:05", "url": "https://files.pythonhosted.org/packages/aa/93/4141b196632494a19d944f4d0e346cd94e0150d5fb4de39101c968eebd0e/skoolkit-3.5.tar.gz" } ], "3.6": [ { "comment_text": "", "digests": { "md5": "2d39bfea96b61da55f785bc0dcf6e700", "sha256": "333f86cd55e1de73b72cc33fa88f92e2289be0eecb8568755fd71bc538d6bafb" }, "downloads": -1, "filename": "skoolkit-3.6.tar.gz", "has_sig": false, "md5_digest": "2d39bfea96b61da55f785bc0dcf6e700", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 505658, "upload_time": "2013-11-02T18:09:42", "url": "https://files.pythonhosted.org/packages/35/e3/43edca268e208cc1f314517df7e2545f1c807bdd079e8e5ce0cbb1e21dd9/skoolkit-3.6.tar.gz" } ], "3.7": [ { "comment_text": "", "digests": { "md5": "cd6f8730659aab9390d358cb0568387a", "sha256": "db545914703d0a774420e8b48d66948f4a9658f7f3440fdcef50c43d6a79e759" }, "downloads": -1, "filename": "skoolkit-3.7.tar.gz", "has_sig": false, "md5_digest": "cd6f8730659aab9390d358cb0568387a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 527955, "upload_time": "2014-03-08T18:19:47", "url": "https://files.pythonhosted.org/packages/dd/f6/c746a5d3de330082a89b236359c21cfaf5a71ef0ab3aa2c83e6ff5de80f5/skoolkit-3.7.tar.gz" } ], "4.0": [ { "comment_text": "", "digests": { "md5": "edd928bd217c0383fda28f1e7c797fe4", "sha256": "6d950a9de6d0b998507511216050a3ad6d9421a0282e3ccae3e434808b068f99" }, "downloads": -1, "filename": "skoolkit-4.0.tar.gz", "has_sig": false, "md5_digest": "edd928bd217c0383fda28f1e7c797fe4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 552884, "upload_time": "2014-05-25T23:10:25", "url": "https://files.pythonhosted.org/packages/4a/fc/cd2c5e19db7396cedbc54c0c66d7b532b4b6498fec00e3db3b7c6ebf43a2/skoolkit-4.0.tar.gz" } ], "4.1": [ { "comment_text": "", "digests": { "md5": "f73ec874603ae3f250d4fab87d22b18e", "sha256": "6ee6171269d72e9d99be078e05c1afc9dac9fd991ef3afe66e0a25e6e3440e41" }, "downloads": -1, "filename": "skoolkit-4.1.tar.gz", "has_sig": false, "md5_digest": "f73ec874603ae3f250d4fab87d22b18e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 535194, "upload_time": "2014-08-30T13:02:19", "url": "https://files.pythonhosted.org/packages/d4/4a/7332e28d3c3b64f4b334d19e846973be0a435ed0326f1605b52daf554ea6/skoolkit-4.1.tar.gz" } ], "4.1.1": [ { "comment_text": "", "digests": { "md5": "90100dcd5687e0388aea37a31d26398d", "sha256": "1fe37bd88478ab70ab3924fb33ec72c092041c135938a2b9103ab5760f315307" }, "downloads": -1, "filename": "skoolkit-4.1.1.tar.gz", "has_sig": false, "md5_digest": "90100dcd5687e0388aea37a31d26398d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 516873, "upload_time": "2014-09-20T11:20:55", "url": "https://files.pythonhosted.org/packages/4a/58/43cc5a24ccd1c2296706d284ab419a14fc33a001aade3124ea13a4022cad/skoolkit-4.1.1.tar.gz" } ], "4.2": [ { "comment_text": "", "digests": { "md5": "a5a7480b7926e10ff7bec2f4c11d2ee9", "sha256": "ddc50b3ca40c7dd413abfda7b02eddf5dcc329feb050811aa7b92f6881ad30e0" }, "downloads": -1, "filename": "skoolkit-4.2.tar.gz", "has_sig": false, "md5_digest": "a5a7480b7926e10ff7bec2f4c11d2ee9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 532794, "upload_time": "2014-12-07T11:53:58", "url": "https://files.pythonhosted.org/packages/1e/45/239f4334ed1b4fcd29359c599591976a2080cafbfd403a841c0d34f5c537/skoolkit-4.2.tar.gz" } ], "4.3": [ { "comment_text": "", "digests": { "md5": "bbd82bb63e7c19441960433a8da6bce3", "sha256": "5fc76a17d4341de172af163be47d5a1230cb2bc13fdab30ab2aef82207c8d481" }, "downloads": -1, "filename": "skoolkit-4.3.tar.gz", "has_sig": false, "md5_digest": "bbd82bb63e7c19441960433a8da6bce3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 531965, "upload_time": "2015-02-14T13:25:27", "url": "https://files.pythonhosted.org/packages/df/21/e620e41fc73f9c82896b6f145e4987a74cb1268b18bb197cc56ae22cd106/skoolkit-4.3.tar.gz" } ], "4.4": [ { "comment_text": "", "digests": { "md5": "aa2bab1542d3117b2476d171bc8420c7", "sha256": "e2dfeffb598d2bcaa6323d275c39f0ea1f32a1d2b7ab5da809e4caa6b2ed75c6" }, "downloads": -1, "filename": "skoolkit-4.4.tar.gz", "has_sig": false, "md5_digest": "aa2bab1542d3117b2476d171bc8420c7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 550151, "upload_time": "2015-05-23T11:22:59", "url": "https://files.pythonhosted.org/packages/4d/b2/244dd47069e5d0ae525d7ce0c3b182a3f49642c743762ebb2329bb571a5d/skoolkit-4.4.tar.gz" } ], "4.5": [ { "comment_text": "", "digests": { "md5": "25fd548f83971bbc3ebc95edefe2c2f5", "sha256": "1dc40c9df968d752274f603553b99fb00b28ec0d6a6e7df3b4cad8898cccaa5e" }, "downloads": -1, "filename": "skoolkit-4.5.tar.gz", "has_sig": false, "md5_digest": "25fd548f83971bbc3ebc95edefe2c2f5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 584947, "upload_time": "2015-07-04T11:13:14", "url": "https://files.pythonhosted.org/packages/a0/90/5035bfeb9e566bde9228805943a1b90e5a4cd70bcb23650f10782722d68d/skoolkit-4.5.tar.gz" } ], "5.0": [ { "comment_text": "", "digests": { "md5": "babbc4d15d6b2a39b02d8ce444105e9d", "sha256": "3414e5497cf65701c4d9181b38ee3a11a9e9030c69f2f6640f5dde0bd40cbbbf" }, "downloads": -1, "filename": "skoolkit-5.0.tar.gz", "has_sig": false, "md5_digest": "babbc4d15d6b2a39b02d8ce444105e9d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 602968, "upload_time": "2015-10-04T12:58:49", "url": "https://files.pythonhosted.org/packages/4b/10/998e03032e752a62feace484c9727601bf17c76a43930cf1eca76cbf2ec2/skoolkit-5.0.tar.gz" } ], "5.1": [ { "comment_text": "", "digests": { "md5": "b385f28f1b8f70c56b30feae54c47733", "sha256": "87f846803e5292488755bd88b4e91a53874b8701bb462b8bf7983c5e22ff9994" }, "downloads": -1, "filename": "skoolkit-5.1.tar.gz", "has_sig": false, "md5_digest": "b385f28f1b8f70c56b30feae54c47733", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 631725, "upload_time": "2016-01-09T12:16:11", "url": "https://files.pythonhosted.org/packages/03/1e/f6712bde72a04513e529a7d0c854992d59b7b9c3bf5ab175629c04dedcf5/skoolkit-5.1.tar.gz" } ], "5.2": [ { "comment_text": "", "digests": { "md5": "5866ea155defb3b959c9552728bb772a", "sha256": "ef3cff914a2bf7932772a43bbfe4ab937591d8c7201e78d1b519819b397f8a98" }, "downloads": -1, "filename": "skoolkit-5.2.tar.gz", "has_sig": false, "md5_digest": "5866ea155defb3b959c9552728bb772a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 641128, "upload_time": "2016-05-02T13:35:28", "url": "https://files.pythonhosted.org/packages/8b/ba/a2a4e7614ba339f3d91f690d3a9923f1b3657204995565857316202c1f29/skoolkit-5.2.tar.gz" } ], "5.3": [ { "comment_text": "", "digests": { "md5": "450ed4beee237dc67b4e0a74c315debc", "sha256": "a99bbd569c0314bec04eda84ce9e45845203b30807dc73deddea29a33da4ff33" }, "downloads": -1, "filename": "skoolkit-5.3.tar.gz", "has_sig": false, "md5_digest": "450ed4beee237dc67b4e0a74c315debc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 656903, "upload_time": "2016-09-05T13:36:21", "url": "https://files.pythonhosted.org/packages/50/e1/6139ac74c14dc25f996199ce82d5bb549d72bddfef11e6921a003fd027d2/skoolkit-5.3.tar.gz" } ], "5.4": [ { "comment_text": "", "digests": { "md5": "3b0832fd2724bcee34389b595da7ea06", "sha256": "67a4c768272227b3769402b58a219ad8ca56598cd81e6e6e70308f4d80d0e5ef" }, "downloads": -1, "filename": "skoolkit-5.4.tar.gz", "has_sig": false, "md5_digest": "3b0832fd2724bcee34389b595da7ea06", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 678547, "upload_time": "2017-01-08T13:13:47", "url": "https://files.pythonhosted.org/packages/34/ba/57f173d303376e4b85202992dbf3347ee463f43f27cd4126c3a69aa82697/skoolkit-5.4.tar.gz" } ], "6.0": [ { "comment_text": "", "digests": { "md5": "f52159f9adfc292435c325c0a27a9f95", "sha256": "9d4eee115592c906826fd80974ffa1028118aa7debc4dd5e865f2d052294e607" }, "downloads": -1, "filename": "skoolkit-6.0.tar.gz", "has_sig": false, "md5_digest": "f52159f9adfc292435c325c0a27a9f95", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 681082, "upload_time": "2017-05-06T11:16:16", "url": "https://files.pythonhosted.org/packages/ca/08/52774329f891e0caed16d5f2904469e3398c8d6c1f69a10a762090921d8c/skoolkit-6.0.tar.gz" } ], "6.1": [ { "comment_text": "", "digests": { "md5": "99835f31b3778fd0f0257bd1981d1599", "sha256": "9170a92e0c0269943db97f01b0d691b562e1c10c76ecfaa21c722118103e44a2" }, "downloads": -1, "filename": "skoolkit-6.1.tar.gz", "has_sig": false, "md5_digest": "99835f31b3778fd0f0257bd1981d1599", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 711597, "upload_time": "2017-09-03T11:58:00", "url": "https://files.pythonhosted.org/packages/1e/49/45f053e0709f69392e21dfece9faf66feca0ce60d2f861fdc131624da40b/skoolkit-6.1.tar.gz" } ], "6.2": [ { "comment_text": "", "digests": { "md5": "b21831a51658770e925a775194f14374", "sha256": "bafc6cda46c3bb4221081b4b9c6fb0844bec5172a502c5f77bd6fcc20aa95b86" }, "downloads": -1, "filename": "skoolkit-6.2.tar.gz", "has_sig": false, "md5_digest": "b21831a51658770e925a775194f14374", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 721364, "upload_time": "2018-01-01T12:38:16", "url": "https://files.pythonhosted.org/packages/29/07/2fc1ad6f65453c4b628b52dc341ea39bfb30eaf9182beae70628d805b3c3/skoolkit-6.2.tar.gz" } ], "6.3": [ { "comment_text": "", "digests": { "md5": "1e891c523da675f363637220fd7fa3ce", "sha256": "e2c57c21b959272a3475d40fc5602dcdf46b64af7b67decddab990a7785ad439" }, "downloads": -1, "filename": "skoolkit-6.3.tar.gz", "has_sig": false, "md5_digest": "1e891c523da675f363637220fd7fa3ce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 730703, "upload_time": "2018-02-19T11:56:22", "url": "https://files.pythonhosted.org/packages/3f/3e/c1d8b908f3265874e96bf1d35be95af6e8a5c28d35af5a98193b0fcfbe94/skoolkit-6.3.tar.gz" } ], "6.4": [ { "comment_text": "", "digests": { "md5": "18f0163ef9a74753f411c9b3cb33471e", "sha256": "1e69296cb6456ae805cf523dd3b6c4471c4b1dca116f60fe7edc360f30af019a" }, "downloads": -1, "filename": "skoolkit-6.4.tar.gz", "has_sig": false, "md5_digest": "18f0163ef9a74753f411c9b3cb33471e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 738865, "upload_time": "2018-03-31T10:53:56", "url": "https://files.pythonhosted.org/packages/3b/72/d7db8f46a3e5f96d001e4f5c1130a41ae4e535d1447a1593cffc35ac965a/skoolkit-6.4.tar.gz" } ], "7.0": [ { "comment_text": "", "digests": { "md5": "77961fdd10c698088c733c9daf6f729c", "sha256": "46af2558ebbc6bd8b6291016d9fcdfef3a839f2894dc36a1405260c6b9ccc3ec" }, "downloads": -1, "filename": "skoolkit-7.0.tar.gz", "has_sig": false, "md5_digest": "77961fdd10c698088c733c9daf6f729c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 750796, "upload_time": "2018-10-13T12:45:13", "url": "https://files.pythonhosted.org/packages/c4/96/d2844c86fc9d2c5c50df7d248be881e87869502a32e654b55e4d4c0f7281/skoolkit-7.0.tar.gz" } ], "7.1": [ { "comment_text": "", "digests": { "md5": "ad2020b0c9f3e32fa930f3f81694b7d5", "sha256": "c1d40928ebf78330b33c86ef73f47465e1b73a7e506d0d764d61ed255cf0e0cc" }, "downloads": -1, "filename": "skoolkit-7.1.tar.gz", "has_sig": false, "md5_digest": "ad2020b0c9f3e32fa930f3f81694b7d5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 765920, "upload_time": "2019-02-02T12:58:19", "url": "https://files.pythonhosted.org/packages/19/f7/19dbbccfae70151c5d480cef958a45c7594fb8aebf405d3e21c3159ec1b4/skoolkit-7.1.tar.gz" } ], "7.2": [ { "comment_text": "", "digests": { "md5": "212a797607d5fb583f858284d06562f3", "sha256": "be97fdf11a6ff37404f14dde462ef752b7e872d4296015e8f5870ccfd634be28" }, "downloads": -1, "filename": "skoolkit-7.2.tar.gz", "has_sig": false, "md5_digest": "212a797607d5fb583f858284d06562f3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 788314, "upload_time": "2019-06-02T11:12:38", "url": "https://files.pythonhosted.org/packages/09/1a/6ed832de1f70da9813bda2bb7c612490ff00dacea8e19f5e889ba3de5cae/skoolkit-7.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "212a797607d5fb583f858284d06562f3", "sha256": "be97fdf11a6ff37404f14dde462ef752b7e872d4296015e8f5870ccfd634be28" }, "downloads": -1, "filename": "skoolkit-7.2.tar.gz", "has_sig": false, "md5_digest": "212a797607d5fb583f858284d06562f3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 788314, "upload_time": "2019-06-02T11:12:38", "url": "https://files.pythonhosted.org/packages/09/1a/6ed832de1f70da9813bda2bb7c612490ff00dacea8e19f5e889ba3de5cae/skoolkit-7.2.tar.gz" } ] }