Releases: MCJack123/craftos2
CraftOS-PC v2.4.5
CraftOS-PC v2.4.5 is a small bugfix update to prepare for v2.5.
- Bumped CC:T version to 1.93.1
- 1.94.0 support will be coming in v2.5
- CC:T Edition builds will now update to the standard ROM due to deprecation in v2.5
- v2.5 is merging the CC:T ROM into the main ROM, so CC:T Edition downloads will be removed
- Further auto-updates will download the standard version regardless of whether CC:T Edition was installed
- v2.5 will be the last version with a CC:T Edition download available - after that, updating from CC:T Edition will fail
- Added some previously missing checks from
term
API functions - Fixed
term.setGraphicsMode(false)
not working properly - Fixed a possible crash in
file.readLine
on empty lines - Fixed a memory leak in
os.startTimer
- Fixed
ccemux.openDataDir
not working on Windows - Fixed monitor_touch events not being sent when monitorsUseMouseEvents is disabled
- Fixed update message appearing when switching between standard and Accelerated versions
- Windows 10: Possibly fixed automatic reboots after installing (#151)
If you need help using CraftOS-PC, I'm available on the ComputerCraft Discord server as @JackMacWindows#9776
. Feel free to ping me if you need anything.
The Windows installer has been updated to remove some accidental debug files that made their way into the installer. Please remove C:\Program Files\CraftOS-PC\ccemux.dll
and C:\Program Files\CraftOS-PC\plugins\zlib.dll
if you downloaded the old installer (before 2020-12-07).
CraftOS-PC Accelerated v2.4.5
CraftOS-PC Accelerated is a fork of CraftOS-PC that uses the LuaJIT engine to increase speed. However, compatibility is not guaranteed, and some things may break. If you are unsure which version to download, you should use the standard version instead.
CraftOS-PC v2.4.5 is a small bugfix update to prepare for v2.5.
- Bumped CC:T version to 1.93.1
- 1.94.0 support will be coming in v2.5
- CC:T Edition builds will now update to the standard ROM due to deprecation in v2.5
- v2.5 is merging the CC:T ROM into the main ROM, so CC:T Edition downloads will be removed
- Further auto-updates will download the standard version regardless of whether CC:T Edition was installed
- v2.5 will be the last version with a CC:T Edition download available - after that, updating from CC:T Edition will fail
- Added some previously missing checks from
term
API functions - Fixed
term.setGraphicsMode(false)
not working properly - Fixed a possible crash in
file.readLine
on empty lines - Fixed a memory leak in
os.startTimer
- Fixed
ccemux.openDataDir
not working on Windows - Fixed monitor_touch events not being sent when monitorsUseMouseEvents is disabled
- Fixed update message appearing when switching between standard and Accelerated versions
- Windows 10: Possibly fixed automatic reboots after installing (#151)
If you need help using CraftOS-PC, I'm available on the ComputerCraft Discord server as @JackMacWindows#9776
. Feel free to ping me if you need anything.
The Windows installer has been updated to remove some accidental debug files that made their way into the installer. Please remove C:\Program Files\CraftOS-PC\ccemux.dll
and C:\Program Files\CraftOS-PC\plugins-luajit\zlib.dll
if you downloaded the old installer (before 2020-12-07).
CraftOS-PC v2.4.4
CraftOS-PC v2.4.4 is a minor bugfix update with a month of changes rolled into one version. (Don't let that fool you - not many changes have been made.) Some of the improvements include internationalization, crash fixes, and better compatibility with ComputerCraft.
- Bumped CC:T version to 1.93.0
- Added computer size counting to
fs.getFreeSpace
- This is only enabled with
standardsMode
on - Without
standardsMode
, old behavior is kept - May reduce performance of
fs.getFreeSpace
- This is only enabled with
- Fixed path resolution on Windows systems using non-ASCII characters in paths
- This involved rewriting all of the path-related code to accept wide strings on Windows
- Why did Windows have to keep using UTF-16??? >:(
- This involved rewriting all of the path-related code to accept wide strings on Windows
- Fixed keyboard layouts not being respected (#138)
- Fixed string pattern matching with NUL bytes in patterns
- This was previously done in the default ROM, but now Lua itself has been modified to fix the issue
- Alternate ROMs (such as the CC:T ROM) no longer have this issue
- Fixed automatic directory creation reversing the new directory names (#137)
- Fixed some crashes related to the printer
- Fixed HTTP >= 400 response codes not being returned as failures
- Fixed
terminate
event not being sent unconditionally when a filter is set term.screenshot
can now be called with a boolean value specifying whether to copy the image to the clipboard- Added error message to
periphemu.create
- Fixed name of scripts run through
wget
- Added some extra argument checks to
shell
functions incash
- Fixed
__tostring
metamethod missing fromcc.pretty
objects - Fixed standalone CI builds
- macOS: CraftOS-PC now supports macOS 10.9.5+ once again
If you need help using CraftOS-PC, I'm available on the ComputerCraft Discord server as @JackMacWindows#9776
. Feel free to ping me if you need anything.
The CCEmuX plugin in this version had an issue where ccemux.openDataDir()
wouldn't do anything on Windows. Please download an updated build of the plugin below separately.
CraftOS-PC Accelerated v2.4.4
CraftOS-PC Accelerated is a fork of CraftOS-PC that uses the LuaJIT engine to increase speed. However, compatibility is not guaranteed, and some things may break. If you are unsure which version to download, you should use the standard version instead.
CraftOS-PC v2.4.4 is a minor bugfix update with a month of changes rolled into one version. (Don't let that fool you - not many changes have been made.) Some of the improvements include internationalization, crash fixes, and better compatibility with ComputerCraft.
- Bumped CC:T version to 1.93.0
- Added computer size counting to
fs.getFreeSpace
- This is only enabled with
standardsMode
on - Without
standardsMode
, old behavior is kept - May reduce performance of
fs.getFreeSpace
- This is only enabled with
- Fixed path resolution on Windows systems using non-ASCII characters in paths
- This involved rewriting all of the path-related code to accept wide strings on Windows
- Why did Windows have to keep using UTF-16??? >:(
- This involved rewriting all of the path-related code to accept wide strings on Windows
- Fixed keyboard layouts not being respected (#138)
- Fixed string pattern matching with NUL bytes in patterns
- This was previously done in the default ROM, but now Lua itself has been modified to fix the issue
- Alternate ROMs (such as the CC:T ROM) no longer have this issue
- Fixed automatic directory creation reversing the new directory names (#137)
- Fixed some crashes related to the printer
- Fixed HTTP >= 400 response codes not being returned as failures
- Fixed
terminate
event not being sent unconditionally when a filter is set term.screenshot
can now be called with a boolean value specifying whether to copy the image to the clipboard- Added error message to
periphemu.create
- Fixed name of scripts run through
wget
- Added some extra argument checks to
shell
functions incash
- Fixed
__tostring
metamethod missing fromcc.pretty
objects - Fixed standalone CI builds
If you need help using CraftOS-PC, I'm available on the ComputerCraft Discord server as @JackMacWindows#9776
. Feel free to ping me if you need anything.
CraftOS-PC v2.4.3
CraftOS-PC v2.4.3 is an emergency bugfix update that resolves an issue causing CraftOS-PC to crash when using plugins. It also updates the CC: Tweaked version to 1.92.0.
- Updated CC:T version to 1.92.0
- Add support for the
__pairs
metamethod. string.format
now uses the__tostring
metamethod.- Correctly handle tabs within
textutils.unserializeJSON
.
- Add support for the
- Fixed a crash when using plugins
- Fixed crashing when a Lua panic occurs
- Fixed a bug causing lesser performance in C CraftOS functions
- JIT: No longer using LuaJIT BitOp library as it is incompatible with
bit32
- Now using PUC Lua
bit32
implementation instead
- Now using PUC Lua
- Mac: ccemux plugin is now built as a universal binary
If you need help using CraftOS-PC, I'm available on the ComputerCraft Discord server as @JackMacWindows#9776
. Feel free to ping me if you need anything.
CraftOS-PC Accelerated v2.4.3
CraftOS-PC v2.4.3 is an emergency bugfix update that resolves an issue causing CraftOS-PC to crash when using plugins. It also updates the CC: Tweaked version to 1.92.0.
- Updated CC:T version to 1.92.0
- Add support for the
__pairs
metamethod. string.format
now uses the__tostring
metamethod.- Correctly handle tabs within
textutils.unserializeJSON
.
- Add support for the
- Fixed a crash when using plugins
- Fixed crashing when a Lua panic occurs
- Fixed a bug causing lesser performance in C CraftOS functions
- JIT: No longer using LuaJIT BitOp library as it is incompatible with
bit32
- Now using PUC Lua
bit32
implementation instead
- Now using PUC Lua
- Mac: ccemux plugin is now built as a universal binary
If you need help using CraftOS-PC, I'm available on the ComputerCraft Discord server as @JackMacWindows#9776
. Feel free to ping me if you need anything.
CraftOS-PC v2.4.2
One year ago today, CraftOS-PC 2 was officially launched, touting fast speeds and more features than any other emulator out there. Today, CraftOS-PC is more stable and accurate than ever, with even more features than it originally released with. It's grown from a small program to test CraftOS in a C environment, to an entire emulator platform with multiple editions and strong compatibility. The past year has been quite a ride for me, and in between school and a pandemic I've been working non-stop to make CraftOS-PC the best emulator it can be.
Happy birthday, CraftOS-PC!
CraftOS-PC v2.4.2 is a small feature update, with some compatibility fixes as well as a few new features. It also adds FFI support for CraftOS-PC Accelerated, as well as a few more bugfixes.
Don't mind the fact that CI tests fail; it's because of the date-specific MOTDs firing today and breaking the CC:T 1.91 tests. This will be fixed with 1.92.
- Updated CC:T version to 1.91.0
- Add string.{pack,unpack,packsize} (MCJack123)
- Escape non-ASCII characters in JSON strings (neumond)
- Make field names in fs.attributes more consistent (abby)
- Fix textutils.formatTime correctly handle 12 AM (R93950X)
- Speakers are now emulated closer to how they work in ComputerCraft
- Each speaker has its own channel pool
- Channels are allocated as needed
- The
maxNotesPerTick
option now properly caps notes every 1/20 s - Only one sound can be played at once
- Channel numbers are now returned as a second argument
- These can be passed to
stopSounds
to stop one channel
- These can be passed to
- Replaced custom bit32 library with standard Lua 5.2 implementation
- This fixes a bug where functions can't take more than two arguments
- This should also fix any other possible bugs in the bit32 library
- Fixed yielding from callbacks of certain functions:
string.gsub
table.sort
- debug hooks
- The only function that can't yield from a callback is
load
- Added
--mc-save
argument to load computers from a Minecraft save- This reads from the default Minecraft save directory
- If the save isn't stored there, you can't use this argument (use
--computers-dir
instead)
- Added date-specific MOTDs
- One of these appears today (September 8)!
- Added support for hardware renderer in raw client mode
- Functions can now return an unlimited* number of values
- Updated cash to use
cc.require
module - Fixed a bug causing the same MOTD to appear on each boot
- Fixed a bug causing a failure to connect to
localhost
over HTTP - Fixed a bug with the \x escape code
- Modified internals of plugin loader, fixing a memory leak in the process
- JIT: Updated LuaJIT to 2.1.0-beta3
- JIT: Moved plugin path back to
plugins-luajit
as expected - JIT: Added FFI library (available with
jit_ffi_enable
set to true) - JIT: Removed
os.setHaltOnLongRunMode
, count hooks are no longer used - JIT: Fixed a bug causing
io.read
to not work - Windows: Added error dialog when using console-only options with non-console builds
- Mac: Application is now built as a Universal binary (excluding CraftOS-PC Accelerated, as LuaJIT does not fully support ARM64 yet)
If you need help using CraftOS-PC, I'm available on the ComputerCraft Discord server as @JackMacWindows#9776
. Feel free to ping me if you need anything.
CraftOS-PC Accelerated v2.4.2
One year ago today, CraftOS-PC 2 was officially launched, touting fast speeds and more features than any other emulator out there. Today, CraftOS-PC is more stable and accurate than ever, with even more features than it originally released with. It's grown from a small program to test CraftOS in a C environment, to an entire emulator platform with multiple editions and strong compatibility. The past year has been quite a ride for me, and in between school and a pandemic I've been working non-stop to make CraftOS-PC the best emulator it can be.
Happy birthday, CraftOS-PC!
CraftOS-PC v2.4.2 is a small feature update, with some compatibility fixes as well as a few new features. It also adds FFI support for CraftOS-PC Accelerated, as well as a few more bugfixes.
Don't mind the fact that CI tests fail; it's because of the date-specific MOTDs firing today and breaking the CC:T 1.91 tests. This will be fixed with 1.92.
- Updated CC:T version to 1.91.0
- Add string.{pack,unpack,packsize} (MCJack123)
- Escape non-ASCII characters in JSON strings (neumond)
- Make field names in fs.attributes more consistent (abby)
- Fix textutils.formatTime correctly handle 12 AM (R93950X)
- Speakers are now emulated closer to how they work in ComputerCraft
- Each speaker has its own channel pool
- Channels are allocated as needed
- The
maxNotesPerTick
option now properly caps notes every 1/20 s - Only one sound can be played at once
- Channel numbers are now returned as a second argument
- These can be passed to
stopSounds
to stop one channel
- These can be passed to
- Replaced custom bit32 library with standard Lua 5.2 implementation
- This fixes a bug where functions can't take more than two arguments
- This should also fix any other possible bugs in the bit32 library
- Fixed yielding from callbacks of certain functions:
string.gsub
table.sort
- debug hooks
- The only function that can't yield from a callback is
load
- Added
--mc-save
argument to load computers from a Minecraft save- This reads from the default Minecraft save directory
- If the save isn't stored there, you can't use this argument (use
--computers-dir
instead)
- Added date-specific MOTDs
- One of these appears today (September 8)!
- Added support for hardware renderer in raw client mode
- Functions can now return an unlimited* number of values
- Updated cash to use
cc.require
module - Fixed a bug causing the same MOTD to appear on each boot
- Fixed a bug causing a failure to connect to
localhost
over HTTP - Fixed a bug with the \x escape code
- Modified internals of plugin loader, fixing a memory leak in the process
- JIT: Updated LuaJIT to 2.1.0-beta3
- JIT: Moved plugin path back to
plugins-luajit
as expected - JIT: Added FFI library (available with
jit_ffi_enable
set to true) - JIT: Removed
os.setHaltOnLongRunMode
, count hooks are no longer used - JIT: Fixed a bug causing
io.read
to not work - Windows: Added error dialog when using console-only options with non-console builds
- Mac: Application is now built as a Universal binary (excluding CraftOS-PC Accelerated, as LuaJIT does not fully support ARM64 yet)
The CC:T builds have been updated to fix an issue with the bit library that prevents it from booting.
If you need help using CraftOS-PC, I'm available on the ComputerCraft Discord server as @JackMacWindows#9776
. Feel free to ping me if you need anything.
CraftOS-PC v2.4.1
CraftOS-PC v2.4.1 is a very small update to fix a few issues and to consolidate the version number/features of different forks.
With CraftOS-PC v2.4.1, CraftOS-PC Accelerated is being re-introduced, being the first version since v2.2.1 to have an Accelerated version. CraftOS-PC Accelerated is a fork of CraftOS-PC that uses LuaJIT rather than standard Lua, allowing over 8-16x performance improvements depending on the workload. Go to the release page to download it. You can install CraftOS-PC and CraftOS-PC Accelerated alongside each other without having them interfere.
- Grayscale terminals now render using 16 grays instead of forcing colors to 4 grays (#132)
- For example, you can now set the color to
colors.red
and the color will render as the grayscale version of red
- For example, you can now set the color to
- Fixed a crash when using the profiler (#129)
- Fixed incorrect cursor color in hardware terminal (#130)
- Last version check now saves right after boot
- Fixed up a whole bunch of stuff for WASM ports
- Re-introduced CraftOS-PC Accelerated for v2.4.1
If you need help using CraftOS-PC, I'm available on the ComputerCraft Discord server as @JackMacWindows#9776
. Feel free to ping me if you need anything.
CraftOS-PC Accelerated v2.4.1
CraftOS-PC v2.4.1 is a very small update to fix a few issues and to consolidate the version number/features of different forks.
With CraftOS-PC v2.4.1, CraftOS-PC Accelerated is being re-introduced, being the first version since v2.2.1 to have an Accelerated version. CraftOS-PC Accelerated is a fork of CraftOS-PC that uses LuaJIT rather than standard Lua, allowing over 8-16x performance improvements depending on the workload. You can install CraftOS-PC and CraftOS-PC Accelerated alongside each other without having them interfere.
- Grayscale terminals now render using 16 grays instead of forcing colors to 4 grays (#132)
- For example, you can now set the color to
colors.red
and the color will render as the grayscale version of red
- For example, you can now set the color to
- Fixed a crash when using the profiler (#129)
- Fixed incorrect cursor color in hardware terminal (#130)
- Last version check now saves right after boot
- Fixed up a whole bunch of stuff for WASM ports
- Re-introduced CraftOS-PC Accelerated for v2.4.1
If you need help using CraftOS-PC, I'm available on the ComputerCraft Discord server as @JackMacWindows#9776
. Feel free to ping me if you need anything.