The shoutbox is currently out of service. Join us on Discord instead.

The ultimate extension Module for Gamebuino: The Ninja Board

Started by DarkestEx, June 30, 2015, 05:04:28 pm

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

DarkestEx

Hey guys!

@adeko (from Gamebuino.com) and I have been working on the ultimate extension board for the Gamebuino: The Ninja Board

The features
- Boosts SRAM to 129 KB!
- 128x64 OLED for extra status information like texts, maps, images
- Intelligent keypad matrix for text and other input on the Gamebuino; customizable by games
- ATmega328pu coprocessor @ 8 MHZ
- Plugs right into the I2C and the SPI bus of the Gamebuino (connects to the Gamebuino's top)
- Connections for more SPI devices on the Coprocessor's bus
- Works standalone (needs 3V3 and GND)
- Leaves I2C in tact (I2C ontop of SPI)
- Blazing fast hardware SPI communication
- Fully compatible with BuinoBasic
- Updateable using a special loader on the Gamebuino: Create your custom firmware!
- Arduino library for easy integration in games
- Powered right from the Gamebuino
- Hackable (e.g. make your own TVout, serial terminal, ... with it)

Estimated pricepoint:
- Bare PCB: ?? EUR + shipping from Europe
- Full kit: around 20-30 EUR + shipping from Europe

We are already taking preorders if anybody wants one.


DJ Omnimaga

With the 128x64 screen, I wonder if this could be turned into some sort of Nintendo DS or Game and Watch?

In any case, this extension would be nice to expand games further. With the combined CPU powers, could faster games be made?

DarkestEx

Quote from: DJ Omnimaga on July 04, 2015, 12:10:40 am
With the 128x64 screen, I wonder if this could be turned into some sort of Nintendo DS or Game and Watch?

In any case, this extension would be nice to expand games further. With the combined CPU powers, could faster games be made?

Oh yeah would be a nice idea!
The Gamebuino will have some limited control over the OLED but I can probably extend this support and add bitmaps and other stuff.

Well, I actually don't think the games would be any faster, but as soon as a game needs heavy processing power, the Ninja core (the coprocessor) can probably easily help the Gamebuino. And the Ninja core could be easily modified in software to support wifi, ethernet, bluetooth and even more interfaces.
In this way could the games even become online support with no additional load on the main game processor.

Btw. I almost finished the board. Here is a mockup:

DJ Omnimaga

Yeah my idea was having the processing power split between both processors.

This looks interesting, by the way :)

CKH4

Wow, looks impressive. Could this possibly be used as a companion to buinobasic allowing it to run as fast as the native c (is that even the native lang?) applications?


Snektron

awesome :D very cool project! :3

Quote from: CKH4 on July 04, 2015, 01:18:42 am
Wow, looks impressive. Could this possibly be used as a companion to buinobasic allowing it to run as fast as the native c (is that even the native lang?) applications?


C gets compiled to ASM, the native lang. If you want to run basic as fast as C, you need to compile it to asm too :P
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


p4nix

Actually, machine code isn't ASM :P Anyway, I think CKH4 wants to know if Ninja + Gamebuino could be as fast as badly optimized C-code (translated to machine code)... But isn't BuinoBasic compiled too?

DarkestEx

Quote from: p4nix on July 04, 2015, 11:50:36 am
Actually, machine code isn't ASM :P Anyway, I think CKH4 wants to know if Ninja + Gamebuino could be as fast as badly optimized C-code (translated to machine code)... But isn't BuinoBasic compiled too?

The thing about BuinoBasic is, that it doesn't require reflashing the chip to run something.
The code is compiled to bytecode (similar to machine code; liks java) which is then ran in a virtual machine on the Gamebuino.
So it is not slow, but absoultely not as C (the virtual machine will be written in C).

Snektron

Quote from: p4nix on July 04, 2015, 11:50:36 am
Actually, machine code isn't ASM :P

Yeah yeah, its machine code... asm is just the readable form
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


p4nix

Quote from: DarkestEx on July 04, 2015, 11:53:23 am
So it is not slow, but absoultely not as C (the virtual machine will be written in C).


Comparable to that Android-bytecode?

DarkestEx

Quote from: p4nix on July 04, 2015, 12:09:28 pm
Quote from: DarkestEx on July 04, 2015, 11:53:23 am
So it is not slow, but absoultely not as C (the virtual machine will be written in C).


Comparable to that Android-bytecode?

Kinda comparable. But it is essentially a whole new instruction set + a new basic dialekt.

CKH4

My original question is could the second processor be told to run if it is a buino basic program. Something similar to axe where you could specify FullSpeed to use both processors or not to just use the one.


DarkestEx

Quote from: CKH4 on July 04, 2015, 02:46:14 pm
My original question is could the second processor be told to run if it is a buino basic program. Something similar to axe where you could specify FullSpeed to use both processors or not to just use the one.

Ah, I get you.
No, there is no way to sync the processors efficiently enough to get any speed boost out of it except for calculation heavy operations.
Btw, the coprocessor runs at half the speed of the main core.

EDIT: Actually I will look into this and see if I can find a way to get this done.

CKH4

Could the coprocessor be used for graphics? (Adding a gpu to the game buino :w00t:)


Powered by EzPortal