Skip to content

Releases: thingsiplay/tochd

v0.13 - March 12, 2024

12 Mar 01:14
3d8fbef
Compare
Choose a tag to compare

It's time again. This time, there aren't too many changes at all. I finally figured out AppImage creation and added a check to recognize if its running as an AppImage (and if Nuitka was used to compile Python too). Soon the AppImage format will be available.

(Edit: Looks like the generated AppImage in my personal labor is not working perfectly in all situations, because of some working dir shenanigans.)

The temporary created folders when unpacking archive files such as .7z and .zip are now hidden by default once again; meaning a dot "." is added automatically in front of the folder names. tochd.py now also checks if any of the required executables 7z and chdman are available in the same directory as the script itself. Makes it a little bit more portable.

A new option to specify the size of the hunks is also added. Normally this is not a topic you need to care about, but for some systems it might be needed. PSP games use DVD format, but has a hunksize of 2048. The current version of chdman v0.263 uses 4096 for DVD output. Future versions of chdman will do this automatically, but until then you can specify the hunksize yourself. (Thanks hikaricore for bringing this up #6).

  • new: option -H, --hunksize to specify the exact size of hunks in bytes
    used with chdman, only needed in special cases,
    #6
  • changed: search for executables such as 7z and chdman programs in
    scripts own installed directory first, this makes it more portable
  • changed: temporary folders where archives are unpacked to will start with
    dot again, so they are hidden at default, but only if no path is specified
    with --temp-dir

v0.12 - March 8, 2024

08 Mar 01:30
4cb3541
Compare
Choose a tag to compare

Today we are jumping from v0.10 right to v0.12! That's because originally after lot of changes the project was tagged with next version, but after that lot of changes happened again before I created a release. So here we are.

This project got its first bigger contributions, by Alexander Ravenheart. He is responsible for quite a lot actually. Lot of smaller stuff got refactored, renamed and brought up to standards; you know, professionals have standards! He also implemented a new mode type "dynamic" (which I later renamed to "auto") for option -m to automatically determine the creation mode of CHDs as CD or DVD, depending on the filesize. Unfortunately at the moment I am not sure if this is the best choice as default, so i changed it back to "cd", for now. But you can use it with option -m auto. We'll see how this goes and I might make it back to default in the future.

But to me the biggest improvement, thanks to Alexander, is to use Pythons integrated functionality of Temporary files and folders to replace my custom implemented logic. For most end users almost nothing changes, other than the folders are now visible. This should be more secure and reliable. Also if you use option -E to stop script execution entirely with keyboard shortcut Ctrl+c, no longer temporary files will be left! Finally this option makes sense.

Note: We are jumping over v0.11 and combine it with next version v0.12.

  • bug: counter for finish states like "Completed: 0" are disabled, when combining the options -p and -s, because counting these variables is not thread safe at the moment
  • bug: cpu count was wrongly reported when using custom number for threads
  • new setting in option: specify -m auto to determine "cd" or "dvd" format based on filesize with a 750 MB threshold (thanks AlexanderRavenheart #3)
  • changed: generation and handling of temporary folders refactored, now it's using proper builtin tempfile functionality instead custom logic, currently the folders are not hidden anymore (thanks AlexanderRavenheart #3)
  • changed: due to the new approach of temporary folders, the option -E will finally cause Ctrl+c to delete temporary files and folders before exiting (thanks AlexanderRavenheart #3)
  • removed: option -f and --fast, because nobody actually needs it, its an artefact of early testings to quickly generate huge files
  • lot of internal code refactor for being more consistent styling and naming (thanks AlexanderRavenheart #3)

v0.10 - February 11, 2024

11 Feb 13:17
Compare
Choose a tag to compare

It's been a while since my last update on this tool. The truth is, it worked quite well over the years. I tried to do some GUI stuff too, but gave up on that, plus a few things changed in my life. But now I got a good reason to go back and do something.

Recently the emulator PPSSPP 1.17 got support for CHD files too. Finally! But there is a twist. The standard way of encoding CHD files with chdman createcd command are horrible for PSP games. I added a command -m or --mode to be able to choose between cd and dvd format. CD is the default, so be careful when converting PSP ISOs and use --mode dvd instead as an option.

Other than that I added a few more options, such as -s or --stats to display a summary at the end of the process. I also updated the Readme a little bit and and removed confusing and unnecessary Makefile and PKGBUILD files. Make sure to uninstall a previous tochd installation, if you gonna use the manual custom installer suggested_install.sh script.

  • new: option -m to specify disc format created by chdman backend,
    defaults to cd, but for certain emulators (such as ppsspp) dvd is
    recommended
  • new: option -s to display additional stats, such as a summary at the end and
    how long the operation took
  • new option -n to simply shorten the displayed path of printed jobs as
    filenames only, excluding the folder part
  • changed: also the install and uninstall scripts are reworked
  • removed: Makefile deleted, no need for PyInstaller packaged bundles, assuming
    most modern distributions can run the Python script anyway
  • removed: PKGBUILD deleted, which was used to create the Archlinux package
    for the AUR, its just confusing and unnecessary for the end user and not
    needed to be part of the project

v0.9 - July 06, 2022

06 Jul 17:01
8075b8c
Compare
Choose a tag to compare
  • changed: now flushes the output of job message without buffering, useful for
    live monitoring and reading stdout the moment it is written
  • new: added a "PKGBUILD" for use with pacman, can be used to generate an
    Archlinux package (note: this file is already updated in main repository, the version in this release is obsolete)

First standalone release

30 Mar 00:16
bb8a118
Compare
Choose a tag to compare
  • new: pseudo compiled bundle of the script with pyinstaller to build a
    standalone executable, available on
    Releases page
  • new: "Makefile" script for make to create the standalone bundle of Python
    script with the Python interpreter and package it into an archive
  • changed: runs with default options -X ., if no options provided
  • some little internal optimizations or additions, such as code comments