0.0
No release in over 3 years
Low commit activity in last 3 years
This is a native Ruby port of David Malmborg's ByteBoozer 2.0.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 2.2.16
~> 2.5.1
~> 5.14.4
~> 13.0.3
~> 1.13.0

Runtime

~> 6.1.3.1
 Project Readme

ByteBoozer2

Gem Version

ByteBoozer2 package provides a native Ruby port of David Malmborg's ByteBoozer 2.0, a data cruncher for Commodore files written in C.

Version

Version 0.0.4 (2021-05-01)

Description

ByteBoozer 2.0 is very much the same as ByteBoozer 1.0, but it generates smaller files and decrunches at about 2x the speed. An additional effort was put into keeping the encoder at about the same speed as before. Obviously it is incompatible with the version 1.0.

Compressed data is by default written into a file named with .b2 suffix. Target file must not exist. If you want an executable, use ecrunch. If you want to decrunch yourself, use crunch or rcrunch. The decruncher should be called with X and Y registers loaded with a hi- and lo-byte address of the crunched file in a memory.

Installation

Add this line to your application's Gemfile:

gem 'byteboozer2', '~> 0.0.4'

And then execute:

$ bundle install

Or install it yourself as:

$ gem install byteboozer2

Usage

The following operations are supported: crunching files, crunching files and making an executable with start address $xxxx, crunching files and relocating data to hex address $xxxx.

require 'byteboozer2'
include ByteBoozer2

# Crunch file:
crunch(file_name)

# Crunch file and make executable with start address $xxxx:
ecrunch(file_name, address)

# Crunch file and relocate data to hex address $xxxx:
rcrunch(file_name, address)

Development

After checking out the repo, run bin/setup to install dependencies. Then, run rake to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment. To install this gem onto your local machine, run rake install. To release a new version, update the version number in version.rb, and then run rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/pawelkrol/byteboozer2_ruby.

License

The gem is available as open source under the terms of the MIT License.