PROPELLER COLOR BASIC (was VGABASIC)
Oldbitcollector (Jeff)
Posts: 8,091
PROPELLER COLOR BASIC V2 - (A major fork off FemtoBASIC)
Final home for updates. (This project is nearing completion.)
https://www.dropbox.com/sh/qwhixzvtlrvp1u1/y-JshwklWj/PropellerBASIC
Hardware Requirements:
Demoboard or Propellerpowered VGA+ -:- VGA, Keyboard, & Audio (optional SD & Wii Classic Controller)
This software would not have been possible without help and contributions from:
A complete list of commands is being generated, but some hightlights include:
PLOT, NOTEON, NOTEOFF, REDEFINE.
Advanced: Copy the BASIC.BIN and BASEDIT.BIN to your SD card and
use F1 to jump from BASIC to a full screen editor.
Try this code with it...
..more to come..
OBC
Final home for updates. (This project is nearing completion.)
https://www.dropbox.com/sh/qwhixzvtlrvp1u1/y-JshwklWj/PropellerBASIC
Hardware Requirements:
Demoboard or Propellerpowered VGA+ -:- VGA, Keyboard, & Audio (optional SD & Wii Classic Controller)
This software would not have been possible without help and contributions from:
- Mike Green (FemtoBASIC)
- Tomas Rokicki (FemtoBASIC, & FSWR)
- Marko Lukat (Despair & Hope VGA driver)
- Pat Daderko (Wii Controller driver)
- Johannes Ahlebrand (TinySynth)
- Michael Park (Edit)
A complete list of commands is being generated, but some hightlights include:
PLOT, NOTEON, NOTEOFF, REDEFINE.
Advanced: Copy the BASIC.BIN and BASEDIT.BIN to your SD card and
use F1 to jump from BASIC to a full screen editor.
Try this code with it...
10 COLOR 111,0 20 CLS 30 A=RND(100) 40 B=RND(75) 50 C=RND(250) 60 PLOT A,B,C 70 GOTO 30
..more to come..
OBC
Comments
Ok.. I'll post one.. (See OP) For the example program shot you'll have to run it yourself..
Ran into some stability issues due to my use of memory.
I believe I have things straightened out with 4k available in the programming space.
(Thanks to Mike Green and Marko Lukat for being a second pair of eyes.)
I *think* I can work some very that small audio driver that Ahle2 did into this with some simple graphics commands.
Edit: Interestingly, the little BASIC plotting program I posted in the OP visually demonstrates how NOT RANDOM the Propeller can be when fishing for random results.
OBC
Use "real random" object. It shows how random a Propeller can be. This if first processor I can see which can generate real random numbers without external hardware.
I was thinking about that.. I'm down to around 3k+ open space left right now so it's a matter of what features are most important to me now.
OBC
This code finally works..
Included now is Michael Park's EDIT (Full Screen Edit) / Jump back and forth using [F1] from BASIC to EDIT.
Also included is Ahle2's TinySynth.
Many minor refinements.
I'm about 99% happy with this software now, and the combination of the objects used makes this just awesome.
(See list of authors in the OP)
OBC
See OP for download location.
OBC
See OP for download location
See OP for download location
See OP for download location
Already working on a bunch of little demos. I've got some bigger stuff in the works.
OBC
Outside of this release, I've started toying with the SRAM code which will be accessible in the next version of the VGA+ board (arriving this week) BASIC with 32k+ of available RAM sounds enticing.
OBC
That is "exactly" the direction I'd like to go with this project. As I move into the 32K SRAM it should start to open all kinds of possibilities like this.
OBC
This project is certainly going to force my Spin coding to continue to evolve..
OBC
8-bit Atari has a display list controlled graphics. The display list tells "display one line of 8x8 text" or" display one line of 320 px 2 colors grapgic" or "160px 4 color" "get display data from here" etc.
Then you have commands in Atari Basic like "graphics 0" - set 40x25 text mode - or "graphics 8" - set 320x184 graphic mode and two lines of text at the bottom of the screen.
Atari 8 bit graphic modes uses up to 8k of RAM.
What is your SRAM and how is it connected to the Propeller?
Here's the next revision of the QuickVGA+ board I'm waiting to get back in.
The SPI socket is located on:
Edit: Oh, yeah. We also implemented Phil's simple VGA fix so you'll get 64 colors in BASIC now.
OBC
John Abshier
I will setup an image, but for now you can find all of the items between these two locations:
The Propellerpowered Archive: http://www.propellerpowered.com/library and the BASIC examples thread:
OBC
A check for an extended memory chip is done at boot, if discovered the boot message indicates it.
A POKE command has been added
A PEEK command has been added.
I still need to add a statement to clear extended memory when the "NEW" command is issued.
I haven't decided if I want extended memory to stay current when "REBOOT" or program "LOAD" is issued.
Currently it keeps it's memory. This might be handy. Thoughts?
OBC
BASIC with 32K of extended (SRAM) memory detected!
My triple stack prototyping setup. The center board is a servo/sensor board with the SRAM added.
OBC
SRAM is tested for upon boot. A message will display when properly detected.
Manual has been updated to reflect new command usage as well.
OBC
OBC
First problem might be my non standard SD card settings (11,0,9,8) ' cause I screwed up pin 10.
Second question is fsrwfemto has no revision info. Is it only FAT16 compatible?
Perry
You can adjust the audio settings in your copy to 11 and 11 for both right/left channel audio. That should get it out of the way of your setup. I used the latest version of Femto, but is only FAT16 compatible. I'm county every byte of memory and had to keep it light. My apologizes for the lack of comments. I used Phil's clean program which stripped them while it was doing it's job. I'm steady replacing them as I work.
I've pushed the clock up to 96Mhz here with no problems, haven't tried 108mhz, but can't see why it shouldn't work as well.
OBC
OK I formatted a 1GB to FAT16.
That almost worked, I also had to change the SRAM settings, this board is my "stupid video" platform and does not have standard TV parts on it so I set the SRAM to 12,13,14,15 and both audios to 5.
managed to save a simple "first.bas" file.
Now if I can only remember the BASIC syntax I will try some more programs.
Thanks Jeff
Perry
P.S. when should you create the "desktop.tmp" file on the SD card?
There is a .PDF in the distribution site which should help you with the command-set.
The "desktop.tmp" is handled automatically.
OBC