I had an idea for a project bouncing around in my head for a long time to build a “self-hosted development platform.” I felt like I had missed out on all the homebrew computing fun of the 1970′s and 80′s, and I wanted to try to build a computer that I could actually write and run code on. Using a Picaxe-18X microcontroller, along with a 20×4 character LCD screen, an external 24LC512 EEPROM and a tiny PS/2 keyboard, I made the DIY Laptop.

The software environment has 4 main components:
1) Program Manager - This is just a simple menu system for choosing which program/task to run. There is no true filesystem, but the program manager uses “slots” where a fixed number of programs could be stored. There were 10 slots for executable programs and 4 slots for text files.
2) Text Editor - I needed a way to type in code, so I wrote a simple text-editor that used 6-character lines to enter in code – 3 characters for an Op-code and 3 characters for an argument. There was no support for comments, line numbering, inserting/deleting lines, etc. It was extremely limited, but it lets you pretty easily type in short programs.
3) Compiler - It’s more of a “tokenizer/assembler” than a compiler, but I needed a way to convert plain ASCII into a more compact form for speed/memory purposes. This will read in a text file and convert each opcode/argument pair into a 2-byte instruction. It starts from the beginning of the text file, and runs until it gets to a line labeled “XXX” instead of an accepted opcode. It then stores the “compiled” code in one of the 10 available program slots.
4) Interpreter – Due to the way a PIC microcontroller is structured (and consequently the Picaxe), it can’t actually alter its own machine code. The solution was to run a “virtual machine”/interpreter for a language I made up called “Chris++” with the following opcodes:
- LOAD
- ADD
- COMPARE
- SUBTRACT
- JUMP
- Jmp-IF-EQUAL
- STORE
- LOAD_IMMEDIATE
- SerToSlave
- MULTIPLY
- DIVIDE
- JmpNEQ
- GETKEY
- WAIT_FOR_SLAVE
- SET_SBID
- READ_ADC
- Get_SBID
- DISPLAY
- AND
- OR
- XOR
- ANDNOT
- ORNOT
- XNOR
- End
- RTN
The language started off as an emulator for a simple 6-bit processor I had designed using schematic capture, but gradually developed into a full, if limited, language.
Why is this so cool? Programming is easy…
Mainly because 1) I actually did it. The parts are pretty easy, but it was a hassle to get everything working properly in such a limited environment, and 2) It all fits into 2 kilobytes of BASIC code! That is *not* a lot of space to fit a text editor, assembler, program manager, and interpreter, even if you do get to use a “high-level” language like BASIC.
Where is the code?
In the spirit of open-source, here is the full source code for everything! Its not commented very well (and some of the comments are just plain wrong), but it’s free, it works, and you’re free to play with it.
And Schematics?
Ask and you shall receive (right-click -> View Image for larger image)

More Pictures!

Here you can actually see how awkwardly large it is.

Here is a shot of the laptop with the insides exposed.

Here is a close-up of the circuit boards I used. It’s a *very* simple circuit.
A nice shot of it closed with the hinges and power switch visible.
922732 249425really good post, i truly enjoy this internet web site, maintain on it 596997
You should of a shed and its giving depends upon individual tastes.
To remove decay stain, you make use of any rust dirt remover.
This segment looks at the minimum wage and even some unanticipated successes.
Region Homes did not necessarily return a call for comment.
I’m extremely impressed together with your writing skills and also with the structure in your blog. Is this a paid subject matter or did you customize it yourself? Either way keep up the excellent quality writing, it is uncommon to look a nice weblog like this one nowadays..
Wow, such a advantageous web-site.
Wonderful website. A lot of useful information here. I’m sending it to a few pals ans additionally sharing in delicious. And certainly, thank you for your sweat!
Seeking for a real personal loan becomes very simple
if the on the net method is found.
These include these rap, hip hop, gospel, classical, oldies, soul and rhythm and blues.
Extra importantly, how to assist you capitalize on that will.
Just want to say your article is as astonishing. The clearness to your publish is just nice and i can suppose you’re a professional on this subject. Fine with your permission let me to snatch your feed to stay up to date with forthcoming post. Thanks one million and please continue the enjoyable work.
Having the superior health and financial resources to travel with my wife as much as possible, to see more with the environment and meet more of its people.
the content on this site is amazing. the content on line 4 is just what i was looking for. its that good i will link to this off my website to thanks
You can check Taylor Swift’s actual “22″ music film below. It was no longer until 1950, the recording of the 4 Seasons appeared, how the piece gained notice.
I simply want to mention I am just new to blogging and actually enjoyed this web page. More than likely I’m planning to bookmark your blog . You actually have superb article content. Thank you for revealing your blog site.
Other high-quality Tapco brake brands could be the PRO 14 and the “Windy” SP series.
A powerful arc flash is without question a short routine in the
air.
TFile – популярный, открытый и быстрый торрент-трекер основанный в 2006 году. За время своего существования завоевал доверие миллионов пользователей во всем мире. На ТФайле пользователи могут абсолютно бесплатно скачать фильмы, сериалы, игры, музыку, книги и многое другое, причем без регистрации.
Youre not the average web site writer, guy. You definitely have anything potent to add on the internet. Your design is so powerful that you could virtually get away with being a poor writer, but youre even amazing at expressing what you have to express. Such a excellent blog. Ill be back for a lot much more.
Wow! I cant think I have found your weblog. Very useful information.
When you submit your site functions and login,
you may go as a consequence of each history.
This blog doesn’t show up correctly on my blackberry – you might wanna try and repair that
A topic near to my heart thanks, do you have a Facebook page for your site?
The most comprehensive and extremely well thought out write-up I have found on this subject on the net. Keep on writing, I will keep on visiting to read your new content. This is my fifth time visiting your website .
Wow, fastidious YouTube video about how to install virtual directory, I totally got it. Thanks keep it up.
I appear to be having a hard time subscribing to your Feed. It shows as an 500. Let me know if this is a common error or if its just happenting to. Ive tried Chrome and IE. Im using Bullguard Firewall and im not certain how I can turn it off . Im not that good with PCs. I’ll bookmark your website and see if you have responded. cheers!
I understand that you will find a lot of spam lately. Apparently its pretty difficult for guys to grasp the concept that relationships can be mutually beneficial. I can leave a meaningful fantastic comment and add content and substance to 1 of your pages and you will give me a link in exchange. There are too many takers out there and they arent willing to help people out. Take take take! .
I apologise, but it not absolutely approaches me.
authoron bb2arg24
WOW It’s such a shame more people don’t know about this site, it had just what I needed this morning.
“Say, you got a nice post.Much thanks again. Fantastic.”
I’m really enjoying the design and layout of your site. It’s a very easy on the eyes which makes it much more enjoyable for me to come here and visit more often. Did you hire out a developer to create your theme? Great work!
Hi,br /Being the female friends and family cook, FFC?, in our household, I often approach the kitchen for a drag. I found your site hunting to explore pan sauces and also identified “real” sauteing! Fantastic instructions! I have found this so intimidating. Now I’m inspired to test out the latest quick cooking method that never ever designed sense in advance of. Thank you!
Greate post. Keep posting such kind of information on your site. Im really impressed by your blog
I really appreciate this post. I have been looking all over for this! Thank goodness I found it on Bing. You’ve made my day! Thx again
I value the blog write-up.Really thanks! Fantastic.
Black Ops 2
I seriously love your blog.. Great colors & theme. Did you build this website yourself? Please reply back as I’m attempting to create my own personal website and would love to find out where you got this from or just what the theme is named. Cheers!
Hey very interesting blog!
I’ll gear this review to 2 types of people: current Zune owners who are considering an upgrade, and people trying to decide between a Zune and an iPod. (There are other players worth considering out there, like the Sony Walkman X, but I hope this gives you enough info to make an informed decision of the Zune vs players other than the iPod line as well.)
I enjoyed reading this, You must have a Facebook group for your website?
Bookmarking now cheers, a good quick read. Will re-tweet later!
Amazing article, thank you, I will visit again soon.
These are actually enormous ideas in on the topic of blogging. You have touched some pleasant things here. Any way keep up wrinting.
It seems to me that this web site doesnt load up on a Motorola Droid. Are other people having the exact same issue? I enjoy this web site and dont want to have to miss it any time Im gone from my computer.
Wow! This blog site is cool. How do you make it look this good .
Wanted to drop a remark and let you know your Rss feed is not functioning today. I tried including it to my Google reader account and got absolutely nothing.
Have you given any kind of consideration at all with translating your main website into Spanish? I know a several of translaters right here that would help you do it for free if you want to contact me.
If you could email me with a few pointers on how you made your blog site look this awesome, Id be thankful!
It appears to me that this web site doesnt download in a Motorola Droid. Are other folks getting the exact same problem? I like this webpage and dont want to have to miss it any time Im gone from my computer.
Have you thought about adding some videos to the article? I think it will really enhance everyones understanding.
That is a beautiful photo with very good lighting
An cool blog post there mate ! Cheers for the post .
surprisingly useful material, all round I imagine this is worthy of a book mark, thank you
I wanted to thank you for this fantastic write-up, I certainly loved each and every small bit of it. I’ve bookmarked your internet site to look at the latest stuff you post.
If you could message me with a few pointers on how you made your site look like this , I would be appreciative!
Bookmarking now cheers, a good fast read. Will re-tweet later!
A cool blog post there mate ! Cheers for that.