Hi man, I'd be willing to help you with making snake in a digital simulation but I will be honest, Its not the best but, here is what I would suggest:
1. Build a RAM that can store you game size^2 x game size^2. What this means is for a 16x16 game have 256 bytes(0-255) this way you can have each cell on the screen have a number from 0-255, the length of that part
2. Create adders and subtractors that can either do full addition / subtraction or just a fixed rate of 1 is enough
3. Create a counter that can loop over all of the indices of the memory each frame/step, if 1 or higher draw snake, then subtract 1
3. Every frame have register2 with the snake X and Y, combine them with a bit shift and set that spot in memory to the snake length.
Thats all I have for now, later I will update the google drive files so you can look yourself in DLS. Hope that helps.
BaconLogic
Creator of
Recent community posts
I made Conway's Game of Life in the Digital Logic Simulation. It works by cycling over each cell in the grid and checking if it it on with 2 or 3 cells around it on or off with 3 cells on around it, if either of these conditions are met it writes that cell on otherwise, off. After every cell has been set it refreshes and loops. I used 8 hidden dot displays so that it can check all of the neighbours at once. Right now it is only a 16x16 screen, I am considering upscaling but it takes 6 ticks per cell, so increasing size increases time. If you have suggestions on how to make it better, let me know.
Project Files
I made Conway's Game of Life in the Digital Logic Simulation. It works by cycling over each cell in the grid and checking if it it on with 2 or 3 cells around it on or off with 3 cells on around it, if either of these conditions are met it writes that cell on otherwise, off. After every cell has been set it refreshes and loops. I used 8 hidden dot displays so that it can check all of the neighbours at once. Right now it is only a 16x16 screen, I am considering upscaling but it takes 6 ticks per cell, so increasing size increases time. If you have suggestions on how to make it better, let me know.
Project Files
When I said based off of 6502 I was just aiming for it to be able work like one, my only comparison is what you can do with the assembly code, I am rather clueless when it comes to the real 6502 architecture. As for INC and DEC those are short for increment and decrement, which are used on the X and Y registers. as for bitwise operations and shifts , you are correct those have not been implemented yet.
I made a compiler for it modified from my 6502 Emulator but for this new instruction set and binary output, repository linked Here. The compiler is web based and can be found Here. Note that all projects are on one global database so please use the honor system. In the video I ran 2 simple programs to plot non-linear growing numbers and a simple movement system. A link to download the project files is also attached Here.
Enjoy, BaconLogic
https://drive.google.com/file/d/1duDKIEoj3UurVFW4k0fDr-JmfL5ouMQv/view?usp=shari...
Heres a video of it in action, sorry if the formatting is poor. You can see a small error where the snake goes in the wrong direction briefly, I believe this is because the 256 Bytes of RAM slows my ticks per second to 60. I recently (after this video) updated, allowing me to use the pulse to a simpler byte and a near double in speed, I also replaced the dot display with an RGB.
Hope you enjoy, love the simulation and you videos!

Link to Project files: https://drive.google.com/file/d/1yC2Js7oOm4DtMc6q5uhjBOctHXAT11Vk/view?usp=shari...