Skip to content

Releases: misson20000/libtransistor

libtransistor v2.2.0-rc6

12 Aug 00:13
Compare
Choose a tag to compare
Pre-release

Changelog

  • Fixed missing return in C++ ipc server.
  • Improved debug functionality for ipc failures and waiter.
  • Added userland exception handling stub.

libtransistor v2.2.0-rc5

13 Jan 02:30
Compare
Choose a tag to compare
Pre-release

Changelog

  • Fleshed out thread_context_t.
  • Added operator== for ResultCode.
  • Added syscall wrappers for svcSetHardwareBreakPoint.
  • IPC no longer uses "single" C descriptor
  • Waiter no longer requires lock to signal
  • ipcserver now implements QueryPointerBufferSize
  • Added env_get_aslr_base()
  • ResultError now stores a backtrace
  • Added nowait init to usb serial
  • Moved Failed to mount sdcard error to stderr
  • Made error debug prints in fspfs more descriptive

libtransistor v2.2.0-rc4

18 Mar 03:55
Compare
Choose a tag to compare
Pre-release
  • fixes svcSetDebugThreadContext

libtransistor v2.2.0-rc3

07 Jan 10:54
Compare
Choose a tag to compare
Pre-release

Changelog

Additions

  • Added support for creating threads with automatic priority
  • Added condvar
  • Added bsd_poll
  • Added ipc_multi_session, for ipc concurrency
  • Added "deadline" and "signal" wait types to Waiter
  • Added trn_thread_cancel_synchronization
  • Added surface_get_buffer_event
  • Added string encoding utility functions
  • Added support for USB on 5.0.0+
  • Added IPCServer::AttachSession
  • Added svc::QueryProcessMemory
  • Added KWEvent
  • Added svcCreatePort, svcConnectToPort, and svcSetThreadPriority

Changes

  • bsd_accept now accepts null pointers
  • bsd now uses ipc_multi_session
  • usb_serial timeout is now infinite
  • Updated base libraries

Bugfixes

  • Fixed mutexes
  • Fixed version detection for 5.0.0
  • Fixed ipc::InHandle
  • Fixed ipcserver for X descriptors

libtransistor v2.2.0-rc1

06 Nov 06:23
Compare
Choose a tag to compare
Pre-release

Changelog

Additions

  • Added support for creating threads with automatic priority
  • Added condvar
  • Added bsd_poll
  • Added ipc_multi_session, for ipc concurrency
  • Added "deadline" and "signal" wait types to Waiter
  • Added trn_thread_cancel_synchronization
  • Added surface_get_buffer_event
  • Added string encoding utility functions
  • Added support for USB on 5.0.0+
  • Added IPCServer::AttachSession
  • Added svc::QueryProcessMemory
  • Added KWEvent
  • Added svcCreatePort, svcConnectToPort, and svcSetThreadPriority

Changes

  • bsd_accept now accepts null pointers
  • bsd now uses ipc_multi_session
  • Updated base libraries

Bugfixes

  • Fixed mutexes
  • Fixed version detection for 5.0.0
  • Fixed ipc::InHandle
  • Fixed ipcserver for X descriptors

libtransistor test b4

01 May 07:29
Compare
Choose a tag to compare
libtransistor test b4 Pre-release
Pre-release
add test for override heap

libtransistor test b3

30 Apr 02:37
Compare
Choose a tag to compare
libtransistor test b3 Pre-release
Pre-release
fix ace_loader build

libtransistor v1.2.0 test build 4

01 Mar 06:14
Compare
Choose a tag to compare
Pre-release

THERE IS NOT YET A FULL RELEASE OF LIBTRANSISTOR v1.2.0; THIS IS LIBTRANSISTOR v1.2.0-test4, NOT v1.2.0

Changelog:

  • C++ support (including exceptions and libc++)
  • Improved nxodance, resulting in more stable linking (link script and elf2nxo.py)
  • Redo memory management to use alloc_pages
  • Split ace_loader into wk_ace and sysmod_ace (for running applications under the WifiWebAuth applet if you're not using the Homebrew Launcher, you'll want wk_ace)
  • More socket syscalls
  • Add hexdump_dbg
  • Expand socket buffer size
  • Initialization guards
  • Fix fputs, fwrite, etc. for stdio
  • Reorganize build system for binary packaging

Instructions for using dist tarballs:

Download libtransistor_v1.2.0-test4.tar.gz and extract it. Set LIBTRANSISTOR_HOME to wherever you extracted it, like so:

$ cd
$ mkdir libtransistor_dist
$ cd libtransistor_dist
$ tar xf libtransistor_v1.2.0-test4.tar.gz
$ export LIBTRANSISTOR_HOME=$HOME/libtransistor_dist

Next, make sure you have all the packages listed below for your distro installed. You should be ready to build applications with libtransistor.

Distro-specific notes:

  • Ubuntu Xenial:
    • sudo apt install llvm-5.0 clang-5.0 lld-5.0 python3-pyelftools python3-pip
    • pip3 install lz4
    • You will need to run make as make LLVM_POSTFIX=-5.0
  • Ubuntu Bionic:
    • sudo apt install llvm clang lld python3-pyelftools python3-lz4 make
  • Arch Linux:
    • sudo pacman -S make llvm clang lld python3 python-pyelftools python-pip
    • pip3 install lz4 --user (alternatively, install python-lz4 from the AUR)
  • Mac OSX:
    • ??? to be determined