Archive of the Gamebuino Classic forum (2014-2018), rebuilt from the pages kept by the Wayback Machine: only part of the topics and pages were captured. Read-only. Removal on request: hi@gamebuino.com.
BuinoBasic - Basic Compiler and VM for the Gamebuino
Muessigb Wed May 20, 2015 12:06 am
Hey guys,
I was busy with school for the last months, but before that I was working on a BASIC interpreter for our all loved Gamebuino.
So because I think, that it is going to be another way to write programs easily for the Gamebuino, I restarted work on it a few days ago.
Check the post of me below, to see what features you're going to expect.
You can find more information on the official site.
I was busy with school for the last months, but before that I was working on a BASIC interpreter for our all loved Gamebuino.
So because I think, that it is going to be another way to write programs easily for the Gamebuino, I restarted work on it a few days ago.
Check the post of me below, to see what features you're going to expect.
You can find more information on the official site.
Skyrunner65 Wed May 20, 2015 12:53 am Re: BASIC Interpreter
Wait, BASIC?
Atari confirmed?
What I meant by that statement is "Could we port Atari games to the Gamebuino (Albeit Graphically downgraded)?" .
Atari confirmed?
What I meant by that statement is "Could we port Atari games to the Gamebuino (Albeit Graphically downgraded)?" .
erico Wed May 20, 2015 5:31 am Re: BASIC Interpreter
Hey Muessigb, that is awesome news!
I´m a basic fan and user, just love it.
I used to code basic on trs-80 color and later on the amiga with AMOS...made many nice games back then. :)
I current use GLBasic for my games where I can export to multiple platforms, check it out:
http://www.glbasic.com/
Here a beta run of my last creation:
So, if we have basic going on here, I´m going to be a hell of a happy chap!
Keep it up!
I´m a basic fan and user, just love it.
I used to code basic on trs-80 color and later on the amiga with AMOS...made many nice games back then. :)
I current use GLBasic for my games where I can export to multiple platforms, check it out:
http://www.glbasic.com/
Here a beta run of my last creation:
So, if we have basic going on here, I´m going to be a hell of a happy chap!
Keep it up!
Sorunome Wed May 20, 2015 10:52 am Re: BASIC Interpreter
Wha, that is sounding very awesome Muessig! I can't wait to see it!
Muessigb Wed May 20, 2015 11:43 am Re: Gamebuino BASIC VM
erico wrote:Hey Muessigb, that is awesome news!
I´m a basic fan and user, just love it.
I used to code basic on trs-80 color and later on the amiga with AMOS...made many nice games back then. :)
I current use GLBasic for my games where I can export to multiple platforms, check it out:
http://www.glbasic.com/
Here a beta run of my last creation:
So, if we have basic going on here, I´m going to be a hell of a happy chap!
Keep it up!
Looks awesome!
Skyrunner65 wrote:Wait, BASIC?
Atari confirmed?
What I meant by that statement is "Could we port Atari games to the Gamebuino (Albeit Graphically downgraded)?" .
Hmm, I don't know Atari Basic. Actually I think it would be hard to make it source compatible. I was more planning on going with custom functions (tell me any features you want!) than copying an already existing Basic dialekt. I am tailoring it especially for the Gamebuino Hardware.
Sorunome wrote:Wha, that is sounding very awesome Muessig! I can't wait to see it!
Thanks, Sorunome :)
After some thinking and because you all seem to like it, I am going to restart my codebase to make it even better. I will also put it on GitHub, so that you can track progress and request features or help me improve code quality. If you don't mind, will I make this a compiled language, so you basically write the (normal) basic source code on your PC or directly on the Gamebuino and then compile it on the device itself into some bytecode language that can be executed directly or saved to a file for later use. This would open us some new possibilities and make the code alot faster. I would start with the Compiler (for the PC to test it, as I'm faster in writing C# than plain C; the compiler on the Gamebuino will follow - I promise!) and the Gamebuino "VM". Any input from you about my new ideas would be great ;)
EDIT: So, I decided that I want to make a compiled language out of it in any case (because of the 1.5KB memory limit and the very low speed; I tried it and stumbled over this problem with my first attempt).
What BASIC dialekt do you want?
I, personally want to include following elements by default (please tell me which of them you really need and how you like them to be):
- 8 or 16 bit signed numbers
- 32 or 64 bit longs (if really needed)
- Arrays (fixed size; not dynamic; maybe multidimensional; can contain strings and numbers)
- Strings (possibly manipulatable)
- Dynamic buffers, created at execution time (????, not sure if that's possible!)
- For, While and Repeat until loops
- If...Then...Else keywords
- Goto and conditional Goto
- Subs (maybe with arguments)
- Gamebuino drawing functions
- Debugging stuff (breakpoints with optional vardump).
- No line numbers (because they suck and are worthless anyways)
Remember, that the most work is not done by the actual VM, but by the compiler. It needs to convert the code to small, lightweight binary instructions that the VM can understand. The VM only executes the code (with some Exception checking of course e.g. divide by zero, invalid operation, wrong data type, invalid array indexes, ...). There will be a variable lookup table which contains every (global) variable's data: its address in actual RAM, its type, its maximum size, ...
The variable scope will be global. Variables need to be defined before used (LET keyword) and arrays need to be initialized with the maximum size. I don't really care about the length of the name on the pc compiler. Floting point is very hard to implement and i don't really want to do that if not really, really needed. I think that I can manage this with a bytecode language (some parts might be tricky, but I should get it done). The variables will be pointers (not that that really matters to the user, but anyways). Many Gamebuino functions will be supported and text screen and drawing screen are the same.
The on-the-gamebuino compiler will only have a limited language subset, as I am not good in writing programming language parsers in C. It could have the full commandset if you are willing to help me with that. The on-the-gamebuino compiler will be seperated from the VM (so you have to reflash to go into that compiler). I really want to see what I can do with only 1.5KB of RAM and around 20KB of Flash. The PC compiler and the actual VM are not a real problem for me though.
I cannot promise to get it completly done alone (so help is really appreciated ;)). Also do I have alot of work for school to do in June, so no progress in June.
Tell me if I forgot anything.
EDIT #2: So I restarted the project. I'm working on the new PC compiler right now.
You can see the source of the compiler and contribute here: https://github.com/muessigb/BuinoBasicCompiler.
The source for the VM will go here: https://github.com/muessigb/BuinoBasic
I really hope that this language allows us to make alot new, awesome games!
Also does this save your Flash from additional cycles, makes development faster and easier. There will also be no waiting times anymore, as there is nothing that needs to be flashed.
erico Thu May 21, 2015 4:32 pm Re: Gamebuino BASIC VM
I will be looking for this!
On dialekt, if you keep the base of basic, then a lot of basic games will be convertable and many old basic books might be usefull.
Still, I currently have nothing to suggest.
One interesting thing, while not a suggestion since I´m not sure it would be usefull, is related to inlining C++.
Back on GLBasic, all basic code gets transformed into C++ and you can also inline it if you need.
I´m not really sure this would be of any good here and I don´t know what kind of restrictions one would have creating a Basic for Gamebuino.
Either way, is it done already? ;)
On dialekt, if you keep the base of basic, then a lot of basic games will be convertable and many old basic books might be usefull.
Still, I currently have nothing to suggest.
One interesting thing, while not a suggestion since I´m not sure it would be usefull, is related to inlining C++.
Back on GLBasic, all basic code gets transformed into C++ and you can also inline it if you need.
I´m not really sure this would be of any good here and I don´t know what kind of restrictions one would have creating a Basic for Gamebuino.
Either way, is it done already? ;)
Muessigb Thu May 21, 2015 7:08 pm Re: Gamebuino BASIC VM
erico wrote:I will be looking for this!
On dialekt, if you keep the base of basic, then a lot of basic games will be convertable and many old basic books might be usefull.
Still, I currently have nothing to suggest.
One interesting thing, while not a suggestion since I´m not sure it would be usefull, is related to inlining C++.
Back on GLBasic, all basic code gets transformed into C++ and you can also inline it if you need.
I´m not really sure this would be of any good here and I don´t know what kind of restrictions one would have creating a Basic for Gamebuino.
Either way, is it done already? ;)
Yay! I can't wait to see what Basic games you all make!
If I have time, there could even be a small compiler *on* the Gamebuino. But it would have to have a way more limited subset of Basic, because the Gamebuino isn't nearly as much as powerful as a normal PC ;)
Well, yeah, the Basic is pretty much the normal basic syntax with some syntax elements of Microsoft's QBasic / QuickBasic / GW-Basic.
I will still add some Gamebuino related commands (we can have up to 255 different commands).
No, it's not yet done (actually I just started yesterday ;) - it's a total rewrite to support a bunch of more features -there were no strings nor arrays nor useful graphic functions before, just plain basic- and to make it fast!). I hope to get it to a useable state until the end of this month.
I am working on it real hard. The compiler already has quite alot of supported statements by now though :)
No, the Basic doesn't get translated into C++, but to something similar to Java. There will be a small Java-like Virtual Machine on the Gamebuino that does execute the so called "bytecode" there. Still, it will have access to most (or all) of the Gamebuino's library functions (LCD, SD, Settings, ...)
About the restrictions, yeah, we only have a starting point of 2KB of RAM. But not even the full RAM is available because of the Variable Jump Table (you get 255 different vars! strings, arrays, uint 8bit - int 64 bit; but they all must be declared before used (at the beginning of the program) and the maximum size needs to be specified. I guess there will only be like 1KB - 1.25KB of RAM available for you. But you can still load directly from SD or write to it. Also I will add support for external RAM (up to 256KB! - the chip only costs around 2€ = 3$).
erico Thu May 21, 2015 8:46 pm Re: Gamebuino BASIC VM
NICE...it dearly recalls those 64kb days with expansion to 128 or 512kb! :)
Well, giving a harder thought about it, I´d say I have some recommendations.
It would be great if you Basic was kind of close to AMOS or GLBasic in a sense that it is geared towards multimedia/games kind of like:
Grafic commands (point, rectangle, line)
bmp commands (For background or tiles)
sprite commands (draw, rotate, scale, collision)
Sound commands (play sound, play music, maybe volume)
Also, the ability to load from SD, but that seems already into it.
Keep us update, if at anytime you have something workable and would like testing, let me know I would be glad to help.
It also seems we have many fronts on people trying to put up a tracker for the gamebuino, to load and play such files would be nice, but I fear they are not yet complete.
Cheers!
Well, giving a harder thought about it, I´d say I have some recommendations.
It would be great if you Basic was kind of close to AMOS or GLBasic in a sense that it is geared towards multimedia/games kind of like:
Grafic commands (point, rectangle, line)
bmp commands (For background or tiles)
sprite commands (draw, rotate, scale, collision)
Sound commands (play sound, play music, maybe volume)
Also, the ability to load from SD, but that seems already into it.
Keep us update, if at anytime you have something workable and would like testing, let me know I would be glad to help.
It also seems we have many fronts on people trying to put up a tracker for the gamebuino, to load and play such files would be nice, but I fear they are not yet complete.
Cheers!
Muessigb Thu May 21, 2015 9:17 pm Re: Gamebuino BASIC VM (BuinoBasic)
erico wrote:NICE...it dearly recalls those 64kb days with expansion to 128 or 512kb! :)
Oh yeah. I guess it was a nice time. Retro is just great :)
erico wrote:Well, giving a harder thought about it, I´d say I have some recommendations.
It would be great if you Basic was kind of close to AMOS or GLBasic in a sense that it is geared towards multimedia/games kind of like:
Grafic commands (point, rectangle, line)
bmp commands (For background or tiles)
sprite commands (draw, rotate, scale, collision)
Sound commands (play sound, play music, maybe volume)
Alright, I will implement them all over time :)
Well, but variables still need to be defined with their maximum size and type (because of the way I manage memory alignment).
Oh well. I'm not the best at Basic itself. I used to know QBasic on MS-DOS (although my first computer had WinXP on it, but my dad had an old Laptop with DOS and Basic on it). E.g. I totally forgot that If blocks can have and concernation (but this makes the compiler alot more complicated...)
erico wrote:Also, the ability to load from SD, but that seems already into it.
Yeah, SD support is very important. All compiled files are read (streamed) directly from SD to save RAM.
Basic will of course get SD support too (It can handle byte arrays and read and write from and to the SD).
erico wrote:Keep us update, if at anytime you have something workable and would like testing, let me know I would be glad to help.
It also seems we have many fronts on people trying to put up a tracker for the gamebuino, to load and play such files would be nice, but I fear they are not yet complete.
Alright, I'll do :)
Don't forget to check out my GitHub and my blog.
Cheers!
Quirby64 Fri May 22, 2015 12:04 am Re: Gamebuino BASIC VM
Ooh! A BASIC converter? This is great! This and JavaScript are the only two languages of code I can remember enough of to make basic programs from memory. (C and C++, why? :P) :D
If anything I'd like to have the basic BASIC ( :) ) commands for a text adventure (IF, PRINT and the like). I would love to make an actual game for the Gamebuino.
If anything I'd like to have the basic BASIC ( :) ) commands for a text adventure (IF, PRINT and the like). I would love to make an actual game for the Gamebuino.
erico Fri May 22, 2015 12:39 am Re: Gamebuino BASIC VM
Nice! I´ll be keeping an eye on the blog and here.
Keep it up!
Keep it up!
Muessigb Sun May 24, 2015 12:18 am Re: Gamebuino BASIC VM
erico wrote:Nice! I´ll be keeping an eye on the blog and here.
Keep it up!
Thanks, I will!
I am working on the code since a few days now.
It's getting shape!
Now I can add another website to check out:
http://buinobasic.muessigb.net/
Muessigb Mon Jun 01, 2015 1:37 am
I am working on a website for BuinoBasic together with CKH4 from Codewalr.us. You will be able to upload your games and let others download them.
It will contain an API reference, Download links and example programs.
If I can afford it, will I rent a domain name for it. If not will it be hosted on buinobasic.muessigb.net.
BuinoBasic will get a big project. I hope BuinoBasic will get an important programming language for new games and to make it easier for beginners to get started with the Gamebuino and maybe even programming.
It will contain an API reference, Download links and example programs.
If I can afford it, will I rent a domain name for it. If not will it be hosted on buinobasic.muessigb.net.
BuinoBasic will get a big project. I hope BuinoBasic will get an important programming language for new games and to make it easier for beginners to get started with the Gamebuino and maybe even programming.
erico Mon Jun 01, 2015 2:09 am
Nice!
A repository+wiki kind of thing me guesses.
It really would be great if the code could be compiled on the gamebuino itself.
I have a dream that we need a set of creative tools that could go on solo on the gamebuino, no other computer/internet required.
Independent creative handheld. 8-)
When it comes to coding, while we don´t have a keyboard on it, maybe it could be paired by some sort of connection module.
At the worst case scenario, there could be a zx-spectrum type virtual keyboard to lend a hand.
Just some wild thoughts.
A repository+wiki kind of thing me guesses.
It really would be great if the code could be compiled on the gamebuino itself.
I have a dream that we need a set of creative tools that could go on solo on the gamebuino, no other computer/internet required.
Independent creative handheld. 8-)
When it comes to coding, while we don´t have a keyboard on it, maybe it could be paired by some sort of connection module.
At the worst case scenario, there could be a zx-spectrum type virtual keyboard to lend a hand.
Just some wild thoughts.
Muessigb Mon Jun 01, 2015 11:38 am
erico wrote:Nice!
A repository+wiki kind of thing me guesses.
It really would be great if the code could be compiled on the gamebuino itself.
I have a dream that we need a set of creative tools that could go on solo on the gamebuino, no other computer/internet required.
Independent creative handheld. 8-)
When it comes to coding, while we don´t have a keyboard on it, maybe it could be paired by some sort of connection module.
At the worst case scenario, there could be a zx-spectrum type virtual keyboard to lend a hand.
Just some wild thoughts.
Yeah kindof. My github will always be the place for the source code, but I will host some binary downloads on the site.
The site is fully custom made. You can already see it here: http://buinobasic.muessigb.net/Beta%20Site/home/.
I am working on this too. There will be a small compiler right on the Gamebuino, but it will have a reduced instruction set (e.g. no arrays, no functions, only 1 letter variables) because of technical limitations. We could actually provide a larger instruction set, and make typing easier and compiling faster, if we would let the user choose the command from a list instead of letting him type it. He could still type the arguments, but going this way would make everything alot easier.
Yeah, we could pair some PS2 keyboard to it or similar. The spectrum one is nice too.
I was also thinking about a RAM extension module to boost the Basic RAM from 2KB to 256KB via a small 2-chip module that you plug into the I2C and the ICSP bus (we need one chip select line from the I2C and we need the hardware SPI bus from the ICSP and its power).
Muessigb Thu Jun 04, 2015 10:05 pm
Ok. I got some positive feedback already. But the project is really big. I will never cancel it, but I want to know who of you is (still) interested in programming in Basic on the Gamebuino and on the PC. I need some kind of feedback to know how large-scaled this will be.
Quirby64 Fri Jun 05, 2015 12:59 am
I can try coding some BASIC programs if needed, but I haven't used the "original" BASIC I should say as I've used Sinclair BASIC through an emulator and Petit Computer BASIC on my 2DS (Which, I think is closer to regular BASIC). Even then, the most I could do would have to be entirely text based...
Muessigb Fri Jun 05, 2015 11:11 am
Quirby64 wrote:I can try coding some BASIC programs if needed, but I haven't used the "original" BASIC I should say as I've used Sinclair BASIC through an emulator and Petit Computer BASIC on my 2DS (Which, I think is closer to regular BASIC). Even then, the most I could do would have to be entirely text based...
This is all community based. So you all pretty much tell me how your perfect BuinoBasic is going to look like.
We don't copy one particular style but we let us inspire from fragments from newer Basics and older ones.
So we take the strong typing and the functions from QBasic, some Game releated features from GLBasic and we let us inspire from what you need too.
Awesome that you join the Basic community here! :)
Quirby64 Fri Jun 05, 2015 7:20 pm
Alrighty, so I tried writing the same basic program in both BASIC types and what I think would be regular BASIC (Though, idk if it's even close XD) :
Maybe you can tell me how close each is to regular BASIC. :P
- Code: Select all
Sinclair BASIC
10 REM TOAST IS FREAKING AMAZING.
20 PRINT "DO YOU LIEK WAFFELZ?"
30 END
Petit Computer Basic
'Toast is freaking amazing.
VISIBLE 1,1,0,0,0,0
CLS:COLOR 0
PRINT"DO YOU LIEK WAFFELZ?"
PRINT"Eyy press da A button to exit the program."
@KLOOP
VSYNC 1
IF BTRIG()!=16 THEN @KLOOP
END
Probably what regular BASIC is like
//Toast is freaking amazing.
PRINT "DO YOU LIEK WAFFELZ?"
END
Maybe you can tell me how close each is to regular BASIC. :P
Muessigb Sat Jun 06, 2015 10:58 am
Quirby64 wrote:Alrighty, so I tried writing the same basic program in both BASIC types and what I think would be regular BASIC (Though, idk if it's even close XD) :
- Code: Select all
Sinclair BASIC
10 REM TOAST IS FREAKING AMAZING.
20 PRINT "DO YOU LIEK WAFFELZ?"
30 END
Petit Computer Basic
'Toast is freaking amazing.
VISIBLE 1,1,0,0,0,0
CLS:COLOR 0
PRINT"DO YOU LIEK WAFFELZ?"
PRINT"Eyy press da A button to exit the program."
@KLOOP
VSYNC 1
IF BTRIG()!=16 THEN @KLOOP
END
Probably what regular BASIC is like
//Toast is freaking amazing.
PRINT "DO YOU LIEK WAFFELZ?"
END
Maybe you can tell me how close each is to regular BASIC. :P
Thanks for the examples :)
Yeah I guess they're pretty close, but the // should be REM IIRC :P
For the Petit Computer Basic, I'm not sure. I didn't knew that one.
I will make the language easier by making the basic case-insensitive and without any line numbers. Also will I probably support // for comments
Muessigb Fri Jun 12, 2015 6:12 pm
By the way, I am right now working on the schematics and a prototype of the RAM expansion card that will boost your Basic RAM to 256KB!
adekto Thu Jun 18, 2015 4:21 pm
thinking about basic, i cant help but think its going to be hard to type
so just some eurly design i got here for a keyboard module
based on the zx81 layout
so just some eurly design i got here for a keyboard module
based on the zx81 layout
Attachments: ss+(2015-06-18+at+06.16.48).jpg (not archived)
erico Thu Jun 18, 2015 5:37 pm
A similar-styled add on for the gamebuino, keyboard and memory would be just amazing!
Muessigb Fri Jun 19, 2015 10:39 pm
adekto wrote:thinking about basic, i cant help but think its going to be hard to type
so just some eurly design i got here for a keyboard module
based on the zx81 layout
Woha awesome!
We could actually make both ones!
The SPI bus, we're using for the RAM expansion allows us to add even one more device.
So we take the SPI bus pins (the ICSP header) and the I2C bus (only for two chip selects, we disable I2C while in Basic)
This would allow us to add a serial input shift register and maybe interface that one to the SPI aswell.
But we would be still missing one pin. Any ideas about how we should interface the modules?
erico wrote:A similar-styled add on for the gamebuino, keyboard and memory would be just amazing!
Yeah, I really think it would :)
adekto Sat Jun 20, 2015 1:33 am
im not folowing you exactly but this keybourd needs some sort of chip
best bet would be an atmega
so it could store and buffer keybourd comands until the i2c buss is free again wen your doing your ram thing
also i got that oled "module"
might help for showing allot more text
iv also been looking at cheaper alternatives, and best bet would be IR reciver and an attiny and using like a remote as keybourd
but sure thing im up for making everyhting compatible and maybe in a single expansion pcb to get the cost down
best bet would be an atmega
so it could store and buffer keybourd comands until the i2c buss is free again wen your doing your ram thing
also i got that oled "module"
might help for showing allot more text
iv also been looking at cheaper alternatives, and best bet would be IR reciver and an attiny and using like a remote as keybourd
but sure thing im up for making everyhting compatible and maybe in a single expansion pcb to get the cost down
Muessigb Sun Jun 21, 2015 2:29 pm
adekto wrote:im not folowing you exactly but this keybourd needs some sort of chip
best bet would be an atmega
so it could store and buffer keybourd comands until the i2c buss is free again wen your doing your ram thing
also i got that oled "module"
might help for showing allot more text
iv also been looking at cheaper alternatives, and best bet would be IR reciver and an attiny and using like a remote as keybourd
but sure thing im up for making everyhting compatible and maybe in a single expansion pcb to get the cost down
Well I2C is the worst and slowest bus available on the Gamebuino. The fastest accessable being the hardware SPI bus, which has a speed that is high enough to use an external RAM chip (actually we need two external chips, one level shifter and one Microchip SPI Ram with 256KB).
I will provide two versions of the VM, one with external RAM and one without (using the 1.5KB builtin RAM).
But SPI needs a chip select line. That's why I am using the I2C bus as digital IO. The keyboard could get a small ATtiny85 (or something with more IO) and be the keyboard controller (actually we could even add PS/2 keyboard and XBOX 360 Chatpad support to that controller). That controller will be driven using SPI (the second chip select pin). If we want to expand the number of available peripheral devices, we could use a shift register that could increase the total number of devices.
About the LCD, yeah, we could include that into the keyboard, but I guess it would be cheaper to just use an Hitachi HD44780 controlled 8x1 LCD.
adekto Mon Jun 22, 2015 11:03 am
complicated but alright
wel thing is looking at ebay listings there the same price both bieng around €3 avrige
personaly the 8x1 seems pointles if you got the nokia screen already
but im looking forward to how you solve the isue
Hitachi HD44780 controlled 8x1 LCD.
wel thing is looking at ebay listings there the same price both bieng around €3 avrige
personaly the 8x1 seems pointles if you got the nokia screen already
but im looking forward to how you solve the isue
Muessigb Mon Jun 22, 2015 4:30 pm
adekto wrote:complicated but alrightHitachi HD44780 controlled 8x1 LCD.
wel thing is looking at ebay listings there the same price both bieng around €3 avrige
personaly the 8x1 seems pointles if you got the nokia screen already
but im looking forward to how you solve the isue
So, we don't need an LCD?
I mean, it's totally not required, but I thought that you like one.
So, let's start designing the expansion modules.
Skyrunner65 Mon Jun 22, 2015 7:42 pm
Wow, I've been gone for a while.
How much do you think the keyboard will cost?
How much do you think the keyboard will cost?
Muessigb Tue Jun 23, 2015 4:21 pm
Skyrunner65 wrote:Wow, I've been gone for a while.
How much do you think the keyboard will cost?
Well, it always depends on the model.
I think about making two different models:
- A PS/2 and XBox 360 Chatpad keyboard controller (hook up your old full size PS/2 or the small and nice XBox 360 Chatpad to your Gamebuino through some processing circuitry)
- A small keyboard module with switches
I guess that the first one will be alot cheaper than the second one.
The Chatpad costs around 10€ or 13$ and a PS/2 keyboard can be obtained from almost everywhere for as little as 5€ or 6$ and the circuitry could cost around 10 - 15€ (very loose guessing; we have 2€ for the IC, around 1-2€ for the other electronical stuff and around 10€ for the PCB (even if it's very small). I guess it will cost around 20€ / 25$ at the end (+ shipping).
For the other idea; I guess it will be significantly more (I guess it wouldn't be worth it).
I will design a PCB and then see how much it would cost for the first model.
Should I make it SMD or Through Hole?
And should I solder it or would it be better as a kit?
Should the keyboard module contain the RAM expansion (would make wiring alot easier and would only add like 2€ / 3$ cost for 256KB more ram)?
Quirby64 Tue Jun 23, 2015 8:16 pm
Just a thought for a cheaper alternative - how about a Number Pad?
Ascii example :
1 2 3
abc def ghi
4 5 6
jkl mno pqr
7 8 9
stu vwx yz
0
*misc. symbols*
It could be used in conjunction with the Gamebuino's buttons, as well :
D-Pad : Move around to edit
B : Backspace
Ect...
What do you think?
Ascii example :
1 2 3
abc def ghi
4 5 6
jkl mno pqr
7 8 9
stu vwx yz
0
*misc. symbols*
It could be used in conjunction with the Gamebuino's buttons, as well :
D-Pad : Move around to edit
B : Backspace
Ect...
What do you think?
cyberic Tue Jun 23, 2015 9:04 pm
Would it be possible to use the micro usb port, and to connect a usb keyboard or a mini keypad, using an adapter?
Or to use the micro usb port as a usb host port?
Or to use the micro usb port as a usb host port?
adekto Wed Jun 24, 2015 9:47 pm
just thinkng about the display and having played with the nintendo DS game petit computer
mich be cheaper and more versitile to use a screen as keybourd using a resistive touch screen?
altough getting one the size of the oled might be hard to optain
also the cheapest like keybourd would probebly be an IR reciver and a tv remote (cheapest dousnt mean usefull tough)
altogh we need high demand we could do a run of custom silicone pad's (like the zx spectrum)
getting of the shelf parts means allot of tinkering or disasambling like the xbox pad
alternative bieng compliant with BLE would alow any wireles keybourd to work (ofcource at decrement of the batery and price)
mich be cheaper and more versitile to use a screen as keybourd using a resistive touch screen?
altough getting one the size of the oled might be hard to optain
also the cheapest like keybourd would probebly be an IR reciver and a tv remote (cheapest dousnt mean usefull tough)
altogh we need high demand we could do a run of custom silicone pad's (like the zx spectrum)
getting of the shelf parts means allot of tinkering or disasambling like the xbox pad
alternative bieng compliant with BLE would alow any wireles keybourd to work (ofcource at decrement of the batery and price)
Muessigb Wed Jun 24, 2015 10:57 pm
adekto wrote:just thinkng about the display and having played with the nintendo DS game petit computer
mich be cheaper and more versitile to use a screen as keybourd using a resistive touch screen?
altough getting one the size of the oled might be hard to optain
also the cheapest like keybourd would probebly be an IR reciver and a tv remote (cheapest dousnt mean usefull tough)
altogh we need high demand we could do a run of custom silicone pad's (like the zx spectrum)
getting of the shelf parts means allot of tinkering or disasambling like the xbox pad
alternative bieng compliant with BLE would alow any wireles keybourd to work (ofcource at decrement of the batery and price)
No problem! Before you were writing this, I already developed a working XBox 360 Chatpad driver that will work with our controller ATMEGA128p.
The chatpad is just awesome to write things on; and would probably the best option in my opinion. What do you think?
About the touch screen, how did you think should we add such a layer?
cyberic wrote:Would it be possible to use the micro usb port, and to connect a usb keyboard or a mini keypad, using an adapter?
Or to use the micro usb port as a usb host port?
I fear thats not possible :(
Quirby64 wrote:Just a thought for a cheaper alternative - how about a Number Pad?
Ascii example :
1 2 3
abc def ghi
4 5 6
jkl mno pqr
7 8 9
stu vwx yz
0
*misc. symbols*
It could be used in conjunction with the Gamebuino's buttons, as well :
D-Pad : Move around to edit
B : Backspace
Ect...
What do you think?
A nice idea actually.
In case you don't like my Chatpad consideration, I have a similar idea in mind, but note that the size of the PCB pretty much dictates the end price of he module.
Here's a rough draft:
adekto Thu Jun 25, 2015 4:18 am
not sure about that i2c as chip select, probebly want a i2c chip doing somthing else that also maniges the chips selecting
due to that and were dealing with 2 conectors in such an odd way may i sugest 2 pcbs that interconect
one acting as a passtrue similar to a wire
or run with 2 cables and mount it all on the back (thats what those cutouts are for anyway)
on the touch screen, well im not sure howto stick it on there or if its even usefull at the resolution, just an idea
due to that and were dealing with 2 conectors in such an odd way may i sugest 2 pcbs that interconect
one acting as a passtrue similar to a wire
or run with 2 cables and mount it all on the back (thats what those cutouts are for anyway)
on the touch screen, well im not sure howto stick it on there or if its even usefull at the resolution, just an idea
adekto Thu Jun 25, 2015 5:22 am
ok im geting behind the keypad idea
and i would like to expand on the idea, what if u use d-pad in combination with the 9keypad
so the keymap changes depending what dpad your holding down (idk if that makes sence)
the keymap could be displayd on one of the displays
and i would like to expand on the idea, what if u use d-pad in combination with the 9keypad
so the keymap changes depending what dpad your holding down (idk if that makes sence)
the keymap could be displayd on one of the displays
Muessigb Sat Jun 27, 2015 11:59 am
adekto wrote:ok im geting behind the keypad idea
and i would like to expand on the idea, what if u use d-pad in combination with the 9keypad
so the keymap changes depending what dpad your holding down (idk if that makes sence)
the keymap could be displayd on one of the displays
Looks awesome. Yes, the I2C from the Gamdbuino will be used as simple GPIO to chip select the ICs on the expansion board.
slobu Thu Aug 27, 2015 3:03 pm
Just want to say I've been waiting a LONG time for a combination like the Gamebuino and BASIC. I've always wanted to make a handheld LCD game and never went farther than BASIC.
Actually programming on an Arduino seems counterproductive so keyboard interfaces do not interest me. I can't wait until this gets to the point one can write a Zelda clone. Thanks for continuing this project!
Actually programming on an Arduino seems counterproductive so keyboard interfaces do not interest me. I can't wait until this gets to the point one can write a Zelda clone. Thanks for continuing this project!
