Low Level Emulating the VEX Cortex What better to spend my time on than emulate decade old deprecated hardware? Here is a rough block diagram of what the Cortex looks like: At first I wanted to do full emulation
Low Level MC6000 in hardware - Part 2: XBus So, we have the instruction set the next step is to design the schematics for the MC6000 in an HDL. HDLs are programming languages which compile to circuit schematics with transistors or program
Low Level MC6000 in hardware - Part 1: The assembler SHENZHEN-IO is an interactive circuit building and programming puzzle game with a programmable microcontroller called the MC6000, it has an extremely simple instruction set and no memory besides 2 registers that can only
Web Dev My own file uploading service The motivation behind this project was that I needed a very simple way for me and my friends to securely put files on my server for the various projects we use it for
Low Level A small ARM assembler I made a small ARM assembler in Dart! It just takes a string, like mov r0, #69 and emits the equivalent machine code: e3a00045. Initial tests with dissasemblers show it works pretty well
Servers and Networks RIP Dedi After 4 years of constant use in the worst conditions imaginable, my first home server codenamed "Dedi" has finally died. You will be missed.
Mobile Dev What 28 hours of app development looks like Over the past 2 weeks I have been recording myself making Flutter apps, and here they are!
Low Level Lua 5.2/5.3 bytecode reference (Incomplete) Bytecode format Lua 5.2 and 5.3 have an identical bytecode format other than a few extra instructions. file: 1b 4C 75 61 | Lua bytecode signature [u8 version] | Version number (0x52 for
Esoteric Golfing with Lambda Calculus A little while ago I stumbled upon a golf challenge where you had to do run length encoding (RLE) on an arbitrary string, for example given the input string: 10+[>+>3+
Low Level My first program in ARM assembly I made a crappy tic-tac-toe game in ARM: Basically you enter in a number 1 - 9 which corresponds with one of the spots on the field, X starts first and it alternates.
Robotics Filtering VEX event names When making my VEX event/team information app I encountered a problem, vex event names would take up too much space on the title bar and with mostly redundant information too. Here are
Robotics Vex scouting app alpha I am working on whats basically a native mobile app version of https://vexdb.io/ So far I have completed the events page, some basic settings, and some of the home page.
Esoteric Neat vector stuff in lambda calculus There are many different implementations of vectors in lambda calculus, wikipedia covers pairs as nodes and right-fold lists, here I will be using right-fold lists because they are much more intuitive. Vectors look
Esoteric Llama - my first functional language Llama is a language that compiles directly to lambda calculus with almost no layer of abstraction Example This code successfully compiles to: (λmkpair.(λfirst.(λgetfirst.(λsecond.(λgetsecond.(λconcat.(λmap.(λsucc.(λpred.(λmult.(λowo.
Low Level Making a Bullet physics wrapper for DartVM I wanted to make clustered 3d physics simulation in Dart but there were no physics engines or wrappers for any other APIs, my options were running the project in chromium and using emscripten
Low Level Online Lua dissasembler I made a Lua disassembler in Dart! library source: https://lab.pxtst.com/PixelToast/luabc live demo source: https://lab.pxtst.com/PixelToast/luabc_livedemo Right now it only supports Lua 5.2
Hardware Design Brainfuck CPU in Verilog I wanted to start learning Verilog and made a really simple brainfuck CPU. Specifications: Memory16384 Bytes Cell size1 Byte Cell overflowWrap Address overflowWrap Max code size1024 Instructions Maximum nested loops512 I/OFull stdin/
Low Level Entropy on the cortex A few people were complaining about the lack of random number generation in PROS and RobotC so i've made a simple RNG for the cortex in C++ on PROS: // entropy.h // Created by
Low Level 8762A Overcomplicated code release I am officially releasing 8762A's 2016-2017 code. The source can be found here: https://lab.pxtst.com/PixelToast/8762A-2016/tree/master/src Quick overview of features: 1.~1700 lines of code (1500 SLOC)
Low Level Watchdog for PROS If you use PROS a lot you may have noticed an odd issue where the cortex completely locks up, continuing to drive motors despite not getting any input and even disabled by field
Esoteric High level strings in brainfuck This post is mostly in my compiled language here: https://github.com/P-T-/bftoast/blob/master/asm/asm.lua The most basic string type is simply null terminated and prefixed: PUSH potato <
Low Level Using C++ in PROS There are currently a few issues with using C++ in PROS. First thing you might notice is an error like a missing bits/os_defines.h this is because the standard arm-none-eabi-g++ toolkit
Esoteric Brainfuck tutorial part 1 Before we start, you should already know the basics of all the instructions and how the tape works. If you don't already code and don't have pain killers for the headache you will
Robotics Line sensor position correction algorithm Another robot simulation in Love2D This simulation shows: 4 line sensors as red circles, robot's calculated position as green outline, and deadzones in red