Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

megarcher

14
Posts
2
Topics
1
Followers
1
Following
A member registered Dec 17, 2022

Recent community posts

I'd recommend you check out my new (not anymore) version of it! https://itch.io/t/2670630/i-improved-my-8-bit-computer-watch-video-of-it-in-acti...

I don't think I'll share the files though, since the components are a mess and you need my self-made mod to open them anyways.

If you're not familiar with the new unity input system, you might want to change support for the old input system in player settings. Then you can just make a script using the old input system. Don't forget to make the background bigger and change the input/output pins locations. (or the input pins will be halfway on the screen)

In my last post (https://itch.io/t/2624472/i-made-an-8-bit-computer-in-digital-logic-sim-v2), I showed a simple self-made CPU. (almost completely my own architecture!) since then, I've learned a lot about CPU's. Yesterday I finally finished building my new 8-bit computer, so today I thought, why not make a post about it.
Let's start with some photo's
image
This is the finished product. The blue wires are clock signals, the yellows are instruction signals. There's an 8-bit BUS in the middle of the CPU, which connects all chips together. It's an address and data bus, depending on the instruction.
image
These are all the instructions that are implemented.
The first test I did was creating a program that shows all the multipliers of 3. This is the ROM I used:
address, instruction, data(optional)
0000 | ADD | 0100
0001 | OUT | 0000
0010 | JMC | 0000
0011 | JMP | 0000
0100 | 0000 | 0101
It worked first try, thankfully.
Then I tried the following ROM:
0000 | MVA | 0001
0001 | STA | 1111
0010 | STB | 1110
0011 | ADD | 1110
0100 | LDB | 1111
0101 | OUT | 0000
0110 | JMP | 0001
Which did not work first try.. But after some debugging, it worked. I'll show a video of the computer in action.
https://vimeo.com/800255224

I've had a lot of fun with DLS so far, and will continue creating stuff. I have something new in the works already.

I required a bit more space for my 8-bit computer, so i modded the game to make zooming in and out possible. All the other features, except for rotating, are in the game already. 

I think being able to rotate the chips would be cool. At the moment I'd rather have bundled cables though (8 or 16 bit cables for example)

my post on the 8-bit computer

Glad to have you responding, that was kind of a goal of my own :).

Please, i beg you, keep continuing this program, it's so cool. Would be great to have bundled cables like the CE version of your V0 has. I'm currently working on a much bigger project than the one i posted about, I'm sadly forced to do it on CE because they have a 16x16 display. It'd be much clearner if you could add bundled cables and displays though.

Oh I did not know what you were talking about, sorry! 

That feature is sadly not yet possible. Although Sebastian (the developer) did make a chip library for us, which could still be polished a bit better by adding folders or such.

That is a possible way, however this gets very VERY tedious fast. I made a simple game for my virtual computer that required only 8 addresses of ROM (16 bits per address), which was doable, i'm currently planning on making a waay more powerful and advanced computer, so I can run more heavy workloads on it, but i would need multiple hundreds of bytes to make an actual game. At some point I will start using a 16x16 display for running the game, but for now this will do: my project.

Hi,

It's really simple to mod the game. Just download the source code from github, install a compatible unity editor version, and open DLS in unity. Once you're there, you can make whatever changes you want, but for the one we want, zooming in and out, you'll need to make a C# script. By chaning the camera's orthographic size, you can make the camera zoom in and out. Be sure to include the camera's child, or the input system won't work well.

Good luck, let me hear how it goes!

If you go 20 sec back, he shows you how to make them.

I finished this project several weeks ago, but forgot to share it with the community, so here it is! (PS if you're confused by the size of chips, I noticed that I was running out of usable space in the sim, so I made a mod for the sim to have a bigger workspace and have a way of zooming in and out.)

A few weeks ago, when DLS got updated, I went on a journey to create a computer that could do these things:

ALU operations: X + Y, X - Y, X + 1 and X - 1

Logic operations: X and Y, X or Y, X xor Y and invert X

And as control unit it should be able to switch the X and Y inputs and it should be able to zero X.

It should also have enough memory to run a small game on it. 


First I made some simple arithmic chips and combined them into the arithm chip (attachment 1), then I went ahead and made a logic chip, combined them and made the ALU. Soon after that, I made the control chip. At this point I still had to make a ROM and some memory to get the computer to run a program, so I made a 65536 bits (or 8192 bytes) memory module for the computer.

I then programmed a simple game to test on the computer. The computer will show the player a random (I haven't made a randomizer, I might do it in the future) decimal number on the seven segment displays (the one with the green wires attached) the objective of the game would be to input that number into the computer in binary. When you input a correct number, you get a point (displayed in the bottom right display), if your number is wrong, you can try again

This computer is (how I like to call it :) Nandpatible, or Nandgame compatible. Programming the rom should be the same for my computer as the Nandgame computer, although my computer only does operations in 8 bit. For the people that want my game ROM, here it is:

1000000010010000

0000000001010011

1000010010010000

0000000000000100

1001011000000101

0000000000000000

1001010101001000

1000000000000111

Now let's show you some photo's of my computer!

Most of those features are coming, he needs a little more time i think. What he hasn't said anything about was ROM, tabs (i explained in my own comment that it would be hard when editing chips was implemented, but could still be useful), he hasn't said anything about clocks yet, i don't think that he will make an ASCII character display, but he will make a seven segment display. Using an encoder you could still use it as an ASCII display. If you're looking for a full display (i forgot how many pixels, but it was quite a lot. even with color. ) you can look for lime inc's refresh of the simulation, i don't think i can link them here. they have quite a few new toys :)

You can basically save unfinished chip designs and edit them later once he adds editing chips. 

You can already rotate chips by pressing q and e while placing a chip.


I am quite excited about the other features you mentioned like zooming in and out (i asked for that myself too), ROM would be a REALLY REALLY nice addition for actually creating some programs, adjusting the clock speed, a ASCII character display, though we can make that ourselves and tri-state logic would also be cool.

Anyways, check out the lime inc remix if you can't stand the wait and check this page every day, he should soon release a update. (or check his youtube channel)

It was abandoned for two years. 

And besides, they made some cool updates ;).

A clock, a seven-segment display, a full display and probably more that I forgot.

I'm happy the sim will be updated by Sebastian again though.

Hey Sebastian,

I played this simulation for hours, but there were some things you could maybe add in your next update.


Zooming in and out of the workspace would be really cool so we can make bigger and more complex chips. I know this is already possible by pressing ctrl&-, but the hitboxes don't match up which makes it basically useless.

I did see that you are creating a system for editing existing chips, Great with a capital G!

Being able to see the decimal count of a eight-bit number would be cool. Could be implemented like: When creating a new input/output you can choose between a normal in/out, a four-bit in/out, eight-bit and some custom number bits. Might need to make an option to enable/disable two's compliment though.

I think that by adding a edit button my next idea is less useful, i'll still mention it though: multiple tabs which you can work in. I don't know what to do about chips being inside other chips that are being worked on though, and like I said, this feature is not necessary.


I enjoyed your simulation a lot and wish you the best of luck with the new update, I know how stressful it can be to have announced a new update but still having to make a part of it, so take your time (but be quick if you know what I mean :P).