You are a lone adventurer in a strange world, where geometry does not work in the expected way. Gather as much treasure as you can before the nasty monsters get you. Explore about 50 different worlds, each with its own unique treasures, enemies, and terrain obstacles. Your quest is to find the legendary treasure, the Orbs of Yendor. Collect one of them to win! Or just ignore your quest and collect smaller treasures.
The twist is the unique, unusual geometry of the world: it is one of just few games which takes place on the hyperbolic plane. Witness a grid composed of hexagons and heptagons, straight lines which seem to be parallel, but then they diverge and never cross, triangles whose angles add up to less than 180 degrees, how extremely unlikely is it to reach the same place twice, and how the world seems to be rotated when you do return. All this matters for the gameplay. The game is inspired by the roguelike genre (although in a very minimalist way), works of M. C. Escher, and by puzzle games such as Deadly Rooms of Death.
With more space than anything Euclidean. The game dynamically generates new parts of the world as you move. No previous understanding of hyperbolic geometry is required -- actually, playing HyperRogue is probably the best way to learn about this, much better and deeper than any mathematical formulas. It is virtually impossible to get back to a place where you have been before, unless you go back exactly the same way. Show your true mastery of hyperbolic navigation by finding the Orb of Yendor, Holy Grail, rescuing the Prince(ss)!
ZIM command line tools. Of note are:
zimcheck
verifies that a given ZIM file is not corrupted.zimdump
inspects or dumps (part of) a ZIM file.zimsplit
splits a ZIM file smartly into smaller chunks.zimwriterfs
creates ZIM files from a locally-stored directory containing "self-sufficient" HTML content (with pictures, javascript and stylesheets). The result will contain all the files of the local directory compressed and merged in the ZIM file. The generated file can be opened with a ZIM reader.In Arch's extra/ package repo.
DOOM (using libSDL) compiled into Webasm so it can be loaded as a (rather complex, really) widget. Built using Emscripten.
Requires a copy of doom1.wad copied into the sdldoom-1.10/ directory.
You can get doom1.wad here: https://doomwiki.org/wiki/DOOM1.WAD
audiowaveform is a C++ command-line application that generates waveform data from either MP3, WAV, FLAC, Ogg Vorbis, or Opus format audio files. Waveform data can be used to produce a visual rendering of the audio, similar in appearance to audio editing applications.
Waveform data files are saved in either binary format (.dat) or JSON (.json). Given an input waveform data file, audiowaveform can also render the audio waveform as a PNG image at a given time offset and zoom level.
The waveform data is produced from an input audio signal by first combining the input channels to produce a mono signal. The next stage is to compute the minimum and maximum sample values over groups of N input samples (where N is controlled by the --zoom command-line option), such that each N input samples produces one pair of minimum and maximum points in the output.
In the AUR.
A collection of tools and algorithms for developing traditional roguelike games. Implements features such as field-of-view, pathfinding, and a tile-based terminal emulator. The documentation exists in the repository but you can read it online here: https://libtcod.readthedocs.io/en/latest/
fooyin is a music player built around customisation. It provides a variety of widgets to help you manage and play your local collection. Supports FLAC, MP3, MP4, Vorbis, Opus, WavPack, WAV, AIFF, Musepack, Monkey's Audio, and multiple VGM and tracker file formats.
It's highly extensible with a plugin system and includes FooScript, a scripting language for advanced configuration of widgets. A layout editing mode enables the entire user interface to be customised, starting from a blank slate or a preset layout.
Only Linux is supported at present, though support for other platforms is coming soon.
Bills itself as a word processor for handwriting. Write and draw in it the way you would on paper. Most usefully, it incorporates standard word processing features, such as editing, moving stuff around, basic markup, undo/redo history, and links.
Available for Windows, OSX, Linux, Android, and iOS.
DOSBox-X is a cross-platform DOS emulator based on the DOSBox project (www.dosbox.com).
Like DOSBox, it emulates a PC, necessary for running many MS-DOS games and applications that simply cannot be run on modern PCs and operating systems. However, while the main focus of DOSBox is for running DOS games, DOSBox-X goes much further than this. Started as a fork of the DOSBox project, it retains compatibility with the wide base of DOS games and DOS gaming DOSBox was designed for. But it is also a platform for running DOS applications, including emulating the environments to run Windows 3.x, 9x and ME and software written for those versions of Windows. By adding official support for Windows 95, 98, ME emulation and acceleration, we hope that those old Windows games and applications could be enjoyed or used once more. Moreover, DOSBox-X adds support for DOS/V and NEC PC-98 emulations so that you can play DOS/V and PC-98 games with it.
Alexandria.org is a non-profit, ad-free search engine. Our goal is to provide the best available information without compromise. The index is built on data from Common Crawl and the engine is written in C++. The source code is available. We are still at an early stage of development and running the search engine on a shoestring budget.
Github:
In theory you can set up your own instance. In practice, I don't know how practical that would be.
RIOT is a free, open source operating system developed by a grassroots community gathering companies, academia, and hobbyists, distributed all around the world. RIOT supports most low-power IoT devices, microcontroller architectures (32-bit, 16-bit, 8-bit), and external devices. RIOT aims to implement all relevant open standards supporting an Internet of Things that is connected, secure, durable & privacy-friendly.
Supports over 200 boards based on AVR, MSP430, ESP8266, ESP32, RISC-V, ARM7 and ARM Cortex-M microcontrollers.
RIOT supports DTLS transport layer security, IEEE 802.15.4 encryption, Secure Firmware Updates (SUIT), multiple cryptographic packages, and crypto secure elements. Modular to adapt to application needs. We aim to support all common network technologies and Internet standards. RIOT is open to new developments and often an early adaptor in networking.
Develop in standard languages using standard tools. Modular. Real-time capable. Multithreaded with low overhead (less than 25 bytes/thread). Supports common and specialized protocols (6LoWPAN, IPv6, RPL, UDP, TCP, QUIC, MQTT-SN, CoAP, CBOR) and interfaces (BLE, LoRaWAN, 802.15.4, WLAN, CAN). Static and dynamic memory allocation.
Github: https://github.com/RIOT-OS/RIOT
YAFB is an amateur radio fox transmitter designed for an ESP32-S2-Saola-1 and a NiceRF SA818.
Still being worked on and now works fairly well on my bench. Hasn't been tested yet in the field. As of Nov 2023 just sent in to have v4.1 of the board to be made. More updates soon.
My goal is to provide a way to make a cheap alternative fox transmitter. When done you'll be provided with all the files needed to make your own.
1W VHF or UHF transmitter (NiceRF SA818). Configure it over Bluetooth.
Generic satellite data processing software. Plug it into an SDR pipeline and it'll try to decode satellite images. Process and interpret in realtime or from recorded traffic. Can use either a local SDR or one shared across a network with rtl_tcp.
In the AUR. There's even a version for Android (in the F-Droid repo).
If the asciidoctor gives you any trouble (specifically, if it keeps saying it can't find itself), it means that it's been installed into the gem directory for a version of Ruby that you're not running (at least for Arch - it was in 3.2.0 but I had 3.0.0 installed).
LibreCUDA is a project aimed at replacing the CUDA driver API to enable launching CUDA code on Nvidia GPUs without relying on the proprietary CUDA runtime. It achieves this by communicating directly with the hardware via ioctls, (specifically what Nvidia's open-gpu-kernel-modules refer to as the rmapi), as well as QMD, Nvidia's MMIO command queue structure. LibreCUDA is capable of uploading CUDA ELF binaries onto the GPU and launching them via the command queue.
Still in the early stages, it looks like.
In this project we have extended the original gr-tempest (a.k.a. Van Eck Phreaking or simply TEMPEST; i.e. spying on a video display from its unintended electromagnetic emanations) by using deep learning to improve the quality of the spied images. See an illustrative diagram above. We are particularly interested in recovering the text present in the display, and we improve the Character Error Rate from 90% in the unmodified gr-tempest, to less than 30% using our module.
In addition to the source code, we are also open sourcing the whole dataset we used. Follow this dropbox link to download a ZIP file (~7GB).
AtomGPS Wigler is a wardriving tool originally created by @lozaning. For use with the M5Stack Atom GPS kit, this tool is specifically designed for Wi-Fi network geolocation. LED status indicators are outlined below. Wigle compatible CSV files are written to SD.
Requires an M5 AtomGPS unit, an SD card, and the Arduino IDE or Esptool.py to flash the firmware.
This application is a player for tracker music files as they are common in the demoscene. With its fullscreen interface and limited interaction options, it's specifically targeted towards presenting tracked music in a competition or for random background music. Based on libopenmpt. Plays all common tracker formats. libSDL user interface. Single executable.
Just drag a module file onto the executable, or into the window once the player has already been started. If a directory is opened this way, the first playable file therein is loaded. Note that this is not recursive; TrackMeister won't play entire directory hierarchies. If no file is specified upfront, but there are playable files in the current directory when TrackMeister starts, the (lexicographically) first file is loaded.
Make sure you cloned the repository recursively, as it pulls in a few libraries as submodules; if you forgot to do that, run git submodule update --init
Software and documentation for getting media signals (FM RF) out of VHS VCRs, processing them, and writing them out to lossless digital formats for archival.
suyu is the continuation of the world's most popular, open-source, Nintendo Switch emulator, yuzu. It is written in C++ with portability in mind, and we actively maintain builds for Windows, Linux and Android.
We do not support or condone piracy in any form. In order to use suyu, you'll need keys from your real Switch system, and games which you have legally obtained and paid for. We do not intend to make money or profit from this project. This repo is based on Yuzu EA 4176.
Supports nearly every old-school 8-bit/16-bit system out there! from the Atari 2600 and Commodore PET to SNES, Genesis and arcades, you'll feel at home with the vast selection of systems Furnace supports. Every sound chip is emulated using many of the best emulation cores out there for a fantastic, true-to-hardware sound. The most flexible and customizable tracker interface ever. Every window can be arranged as you wish without restrictions. The color scheme is also customizable. I guess you can make it as simple or as complicated as you need? Furnace supports exporting your song as audio files (.wav), VGM files (covering over 80% of the VGM specification), and ZSM files (for Commander X16).
A simple tool to send xmpp messages from command line. Upon cursory inspection it doesn't seem to rely upon libstrophe or other external XMPP libraries.