-
Compiler's first command
05/18/2015 at 21:13 • 2 commentsIt's not yet being executed, but recognized by the compiler. (That's what the hardest part about compiling).
I couldn't update my project last week. There was a lot to do at work and at home (it's spring).
I hope you'll find the video interesting. In it, I show IMOV command.
That's it!
:)
-
Compiler - "Text Editor"
05/11/2015 at 20:09 • 2 commentsSo, my last log was about implementing a compiler for my project. Today it was time to prepare a stage for my compiler, meaning making some sort of text editor.
I am making a single line text editor . First I will compile each line on the fly, which has a bad side to it -> you can't really go back and fix something in your code. You make a mistake, you start all over again. Later, when all commands will be implemented, I will change that.
Today I had a couple of hours of thinking and searching to do, before finnaly figuring out how to make a backspace functionality for my LCD display. But it is working now. I also started outlining the finished prototype, since the compiler (or better to say op code) is what connects all the parts of my computer together. So the plan is to have a two state computer.
STATES:
1. programming (editor, compiler, compiler output target)
2. Execution (not executing code directly from a target, but executing some built in functions, among which is a a method to call an assembled code from ROM).
Please, any thoughts on that?
I am pretty lost, so I'm just trying to make it as simple as possible, so to have something to build on. The main problem is that I don't have an exact idea of what the end thing will look like and work like.
Thanks.
-
At last, it's the continueation time
05/09/2015 at 18:08 • 2 commentsSorry all for not updating my project for so long. I didn't have a computer.
I just set up a new chip, connected it to the data bus and prepared all that it needs to start becoming a chip with a built in ASM Compiler for my language.
For the sake of testing it, I used my breadboard and mounted an LED.
It's nothing special yet. All it does is interpreting a letter 'D' (that is pulled from the keyboard, sent to Compiler by a CPU). I deceided to make a simple inline compiler first. I've done some code parsing and compiling to byte code before, but it was all strictly software related, so I am looking forward to do it from the scratch.
Sorry for a shaky video.
-
Being idle, yeah I know...
02/20/2015 at 21:43 • 5 commentsHello guys (and gals)
I've been away for a while and I'm sorry I was not keeping you up to date with my project. I actually didn't work too much on the project. There was some planing going on, since I'm about to start assembling the whole compiler and cpu part, but nothing to be shown really. We Catholics are also in the Holy season of Lent now and so priorities turned a bit.
I mounted the controller of my keyboard on the keyboard itself, so it doesn't really jiggle around all the time. I think it looks pretty neat. Apart from that I also made a little cross for myself. Ahead, there are some really really interesting parts, like for instance - my computers firmware, built in compiler for assembly. Stay tuned.
Thanks all!
pics:
-
General project update
02/11/2015 at 23:48 • 2 commentsHello, dear hackaday!
I've had a lot of problems with my project, actually with my data transfer protocol. It was not the problom with the protocol itself, but something was causing it to not work properly. With help of another hackada member, I managed to solve the problem. It was a data cable problem. The only thing that was also in common with the SRAM module and not with any other module. Hmm, maybe I should give my SRAM another try. So, I would like to thank esot.eric.wazhung for all the help and tips that lead me to solution.
I demonstrate my project in the video bellow.
And always remember:
Tomorrow, I will let you know what are my next goals for my project.
-
The Keyboard Matrix
02/08/2015 at 21:19 • 9 commentsMy keyboard matrix is completed.
What happens if I press multiple buttons at once? - It registers only the one that was pressed first
What happens if I hold a button down for an hour? - Nothing, until you release it. It could be easily customised to act as a normal keyboard would, but It's not neccessery, so I will probably not implement that.
What about ghosting? - 33 diodes prevent that from happening. One for each button and 3 for every row selector pin.
In the video I explain a sad story about my SRAM and then later in the video I demonstrate how my keyboard matrix works.
The quality of the video is pretty bad. Sorry about that.
-
SRAM - problem
02/06/2015 at 23:52 • 7 commentsSo, today I ran into a problem with my SRAM. It works fine, just not always. For some reason, everything freezes on times, when accessing ram.
Here's what I mean.
I have 0123456789 written in my ram. I read it 5 times in a row and print it on screen.
This is when everything goes right:
This is when it *almost goes right*:
(it never outputs the last 8 and 9)
And this is just an utter failure:
I've spent my whole day debuging it. I really want to have the SRAM module a part of my computer. But it seems that it just may happen, I will have to use eeprom instead,.. after all.
This is how it works with EEPROM instead of RAM.
Any ideas or tips?
-
SRAM Completed
02/04/2015 at 17:17 • 0 commentsThe SRAM part of the project is now complete and fully wired with the motherboard. It is not yet mounted on it though. Addressing of RAM works, writing data works, reading data works. :) Makes me smile.
Above is the finished SRAM module. It uses Chiplus 256K S-RAM IC and two PIC16F723A mcus to drive it. Both controller mcus are using mym custom made TDP protocol for communication with cpu mcu.
and the bottom side.
What follows? Well, the keyboard would come in handy. So I guess I will resume with that. Tomorrow I must order some -much needed- additional components.
Have a wonderful day everybody.
-
SRAM Alpha Test
02/02/2015 at 20:28 • 0 comments[UPDATE] @ 3. feb. 2015
My SRAM is wire connected with two parts of IDE cable to the main board. It is not yet mounted on it, but is now connected to the databus, so that I will be able to test it more easily (displaying the results on LCD display).
The hardware part of the address control is also completed, tomorrow I'll try to complete the software part and then that should be it. Unless something goes wrong, which I hope it won't.
I need to order some more components and it normaly takes about a week for them to arrive. After I finish my SRAM module (with a success, I hope), (should be in two days max), I will continue to work on my keyboard matrix.
But like I said, I will require some more components. Meanwhile, while I wait for the components, I'll be updating this project with some theoretical material.
I've managed to finish my SRAM module today. Well, to be honest it's not 100% done yet, since I assembled it just enough so that I can test the SRAM chip to see if it will hold data and things like that.
But the test was SUCCESSFUL! (Thank you Saint Dominic Savio, my dear companion)
As you can probably see, the middle chip is missing. That's the missing part, the easiest part I should say (setting an address of a ram). I'm gonna build that tomorrow. For now, there was just one address 0x00)
I've had some bad time after I first wired it up and tested it. I couldn't understand why it wasn't working (the whole computer froze). The most high I experience in the last few days (while building it), was when I saw, that I forgot to ground the mcu that you can see in the picture. That was the reason for freezing and not working.
The most beautiful thing was to see a little LED to glow. Indicating that my test data has been written succesfully, read successfully and the response data comparison prooved that.
-
SRAM adventure
01/31/2015 at 11:59 • 2 commentsI started building my SRAM (256K) module. I hope it will work. Already have an idea how it will be mounted to the main board.
More to follow.
[UPDATE] later the same day.
These green pins with lovely green hats (I don't know how they are called in english), will be used to mount the module on the main board. If the module will work that is.
[UPDATE] @ 1.feb.
So, I did some testing regarding communication between cpu mcu and both mcu controllers for my ram. It worked. Could not yet test the ram itself though.
Red wires are address lines, yellow wires are Data in / Data out lines and three white wires are ram control lines.