Войти
  • 8063Просмотров
  • 7 месяцев назадОпубликованоModPunchtree

Redstone Computer running small programs not worthy of individual videos

Programs shown: - 3D Spinning IRIS Logo - 3D Minecraft World Renderer - Iris animation - Amiga Bouncing Ball - Bouncing Ball Physics Simulation - Fibonacci - FizzBuzz I didn't know what to do with these programs because I had no plans on making youtube videos on any of them. So instead of letting them go to waste - here they are. Note this compilation is missing the Mandelbrot and URCL OS programs - this is because I didn't record replay mod videos of those and I couldn't be bothered to rerun and record them for a video that realistically won't get any views. Individual program descriptions: 3D Spinning IRIS Logo: - Floating point values used to calculate the position of the logo and transform to screen space - Uses the hardware line drawer to draw lines connecting the 3d points together for a wireframe 3d effect 3D Minecraft World Renderer: - Floating point values used for all the 3d math - Renders quads instead of triangles - Affine texture mapping (software implementation) - No gameplay, it is just a static 8x8x8 minecraft world Iris animation: - Short animation stored as tiles - Lossless video (other than squishing it to fit on low resolution screen) - Huffman and run length compression - Just under 16kB after compression Amiga Bouncing Ball: - 8 frames of animation - Animated by switching the tiles used to draw the ball every frame - Uses fixed point values for calculating the position and speed of the ball Bouncing Ball Physics Simulation: - Balls bounce off each other and the sides of the screen - Spawns a new ball every 120 frames (approximately) - Slows down when more balls are on screen - Uses fixed point values for calculating the position and speed of the balls - Simple collision detection which swaps the velocity of the balls when they collide Fibonacci: - 16 bit - Simple repeated addition - First non-debug program that IRIS ran FizzBuzz: - Uses hardware divider to calculate if each number is divisible by 3 or 5 - Prints "Fizz" if number divisible by 3 - Prints "Buzz" if number divisible by 5 - Else prints the number itself - Second program that IRIS ran ------------------------------------------------------ World Download: Join my patreon to get: - Working version of IRIS - All IRIS tools - Code for all programs IRIS has ran - Access to Discord channels where I discuss IRIS - Support me pushing the limits of redstone! Patreon: Alternatively join this channel to get the same perks: Join my Discord: If you want to try writing your own programs for IRIS - use the online emulator: URCL Discord: (URCL is the programming language this program is written in) MCHPRS Github: (Minecraft server that runs redstone really fast) ------------------------------------------------------ IRIS Specs: - 16 bit - Custom RISC arch - 32 bits per instruction - Up to 2048 instructions (Harvard architecture) - 29 general purpose registers - 8 kB RAM - 64 kB ROM - 4 kB tile ROM - 128x96 pixel black and white screen - Floating point unit (add, mult, divide, sqrt) - Qwerty keyboard - 173 tick clock (runs at roughly 20 kHz on mchprs) IRIS diagram: IRIS ISA sheet: ------------------------------------------------------ Music: IMOJIST - 2024 Memes Wangan Trance Remix I do NOT own the music!