Shop OBEX P1 Docs P2 Docs Learn Events
Propeller OS for Demo Board and Hydra — Parallax Forums

Propeller OS for Demo Board and Hydra

Mike GreenMike Green Posts: 23,101
edited 2007-02-11 20:59 in Propeller 1
Attached is the latest version of the Propeller OS for the Demo Board and Hydra. This incorporates both the TV driver and the VGA 1024x768 Tiled driver. There are 4 precompiled sets of binary files in subfolders for TV and DemoBoard, VGA and DemoBoard, TV and Hydra, and VGA and Hydra. Changes in this version:

1) The display interface is now identical for both types of display (OS_dspText).
2) There is one centralized point to configure the type of hardware (TV vs VGA, DemoBoard vs Hydra). You still have to include the video driver
(OS_dspTextInit) and keyboard driver (OS_keyboardInit) appropriate for the type of hardware from the proper subfolder.
3) There is the beginning of Vinculum (USB host) support. Currently the initialization routine is commented out. Do NOT try to use the test
commands for this. They may hang up if the initialization code is uncommented and recompiled. It does do a few simple things on the
DemoBoard if this is done and you connect up a Vinculum as described in the comments in OS_massStorage.

Plans for the near future (1-2 weeks):

1) Set up the display initialization so both drivers are included. Only one will be used, but switching source files won't be necessary.
2) Continue working on Vinculum support so EEPROM images can be copied from and to USB flash drive files.
3) Try to combine the two keyboard and mouse drivers (DemoBoard and Hydra) so only once source is needed.
«1

Comments

  • [Deleted User][Deleted User] Posts: 0
    edited 2006-12-12 01:30
    Mike ,
    ·Look's like you have everything wraped up nicely, do you want me to keep pluging away at the GUI or do you have somthing else I could help with ?

    Brian

    Post Edited (truckwiz) : 12/12/2006 5:16:11 AM GMT
  • Mike GreenMike Green Posts: 23,101
    edited 2006-12-12 04:59
    Brian,
    I'm trying to provide a framework for doing things like a GUI. Not everyone who uses the PropellerOS will want to use a GUI or a mouse. Keep at it, but look at the services provided by the OS. For example, I still need to add methods to support the use of graphics within a window or other screen region. I have some ideas, but suggestions and experience are welcome.
    Mike
  • [Deleted User][Deleted User] Posts: 0
    edited 2006-12-12 05:09
    Mike,
    ·I'm in the middle of reading "Microcomputer displays, graphics, and Animation . Once I get done reading , I'll have see what I come up with . I can't get any of the sample programs to work on the Propeller OS . I have the demo board with the standard memory.

    Thanks,Brian
  • Mike GreenMike Green Posts: 23,101
    edited 2006-12-12 06:07
    Brian,
    You can use all the I/O routines without the command interpreter to make your own application. Take OS_mainProgram, throw out everything from after "_free" to before "PUB main", keep the "init.start" in the main method and throw out everything else that you don't want there. The "OS_initialization" starts up everything and displays the identification banner. The "OS_loader" file contains the definitions for DemoBoard vs. Hydra and TV vs. VGA. Sid (Newzed) essentially did this to make his controller.
    Mike
  • [Deleted User][Deleted User] Posts: 0
    edited 2006-12-12 16:47
    Mike ,

    ·The sample programs ,are they stand alone objects or do you have to run them under the OS.

    Brian
  • Mike GreenMike Green Posts: 23,101
    edited 2006-12-12 17:18
    The sample programs have to be run under the OS since they're specifically intended to demonstrate how that can be done. They can be modified to run standalone using the OS's I/O routines as I described previously. You just have to provide an OBJ declaration for "init" as "OS_initialization", then call "init.start" as the first statement of the main method. You'll get the identification banner unless you remove the code from "OS_initialization" that displays it.
  • [Deleted User][Deleted User] Posts: 0
    edited 2006-12-12 18:19
    Mike ,
    ·Can I hook up another memory chip on the demo board & then load your sample programs on there ?

    Brian


    (My wife bought me a hydra for christmas & had It shipped to her moms so I have to wait for all the good stuff !)

    Post Edited (truckwiz) : 12/12/2006 6:26:31 PM GMT
  • Mike GreenMike Green Posts: 23,101
    edited 2006-12-12 18:41
    Yes, that's the way I've been testing the software. You can use a 24LC256 or 24LC512 (bigger is better!), hook up the Vss pin to ground and the Vdd pin to 3.3V. You'll need pullup resistors to 3.3V on SCL (clock) and SDA (data). Pick any pair of pins (I use pins 0 & 1) and connect SCL to the even numbered one and SDA to the odd numbered one. When you start up the OS, do a "probe n" command where "n" is the even pin number. You should see two lines listed, one for the boot EEPROM, the other for this extra EEPROM. The OS won't see the extra EEPROM until you do the "probe n" command. The documentation shows how to load the sample program, then reload the OS. The Hydra, particularly with an extra memory card, makes this all much easier.
  • [Deleted User][Deleted User] Posts: 0
    edited 2006-12-13 04:53
    Mike,

    ·I don't know what I'm doing wrong , I get the binary basic out of the demo vga file , load eeprom , load the ram with the os , copy boot to basic , reload os to eeprom , type run basic & screen goes blank.

    Thanks,Brian
  • Mike GreenMike Green Posts: 23,101
    edited 2006-12-13 05:00
    I'll look into it. Thanks.
    Mike
  • [Deleted User][Deleted User] Posts: 0
    edited 2006-12-13 05:08
    Mike,
    ·Tv version works great·, I see that my leds go out when I run the VGA basic (bad loader file ?)

    Brian
  • [Deleted User][Deleted User] Posts: 0
    edited 2006-12-13 05:33
    Mike,
    ·Heres what I tried , deleted every os_loader & other files , created new folder , down loaded files again·& stored just vga files in folder , still does the same thing

    Brian

    P.s, Chips big vga tile driver does the same thing to my LCD monitor (ya i'll dig out a old monitor).

    ·*********** old monitor does same thing , with basic & chips tile driver **********
    (the OS works on the VGA )


    P.s.s , My propeller got really mad when I had 40(32, other 8 where in the next state)·buttons on screen the other day (all my leds where very dim & my monitor thought it was the sixties), I don't know if I messed up cog ?

    Post Edited (truckwiz) : 12/13/2006 6:23:42 AM GMT
  • Mike GreenMike Green Posts: 23,101
    edited 2006-12-13 06:34
    The VGA version has some kind of problem with the loader. I don't know what it is yet. I'll get to it during the day Thursday or Friday.

    There also is a problem with the DataScope sample program in that it doesn't reload the OS properly in the TV version. Probably it's the same problem.

    Mike
  • NewzedNewzed Posts: 2,503
    edited 2006-12-13 13:39
    Mike, as you know, I have the OS, modified with Chip's Tile program running SuperMill.· Is there amything to be gained by downloading your new version of OS or should I leave well enough alone?

    Thanks

    Sid

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Sid Weaver
    Don't have VGA?

    Newzed@aol.com
    ·
  • Mike GreenMike Green Posts: 23,101
    edited 2006-12-13 15:31
    Brian,
    Attached is a new binary for the DemoBoard & Hydra VGA and source for the VGA driver that corrects the bug you saw. The VGA driver was "registering" its cogs improperly and the loader turned off the VGA driver. There's still a problem with reloading the OS after running a program.

    Sid,
    There's no great advantage in messing up something that works fine for you. As features are added, decide if they're really useful for you first.
  • [Deleted User][Deleted User] Posts: 0
    edited 2006-12-13 18:47
    Mike,
    Lunch hour not long enough , I will play with it tonight .

    Brian
  • [Deleted User][Deleted User] Posts: 0
    edited 2006-12-13 23:15
    Mike,
    ·Works great , reminds of the first time I sat in front of a apple. ( I don't know if thats good or not)

    Brian
  • [Deleted User][Deleted User] Posts: 0
    edited 2006-12-14 00:01
    Mike,
    Can you save in basic , what kind of syntax are you using on INPUT ??

    Brian
  • Mike GreenMike Green Posts: 23,101
    edited 2006-12-14 00:08
    The Basic doesn't have a save (although it could be added). I think the INPUT just allows a list of variable names and allows you to enter numeric values, probably with spaces or commas as delimiters (I'm not really sure). It's really just a toy Basic with limited capabilities, like for demonstrations. The Basic in the Hydra package is much faster and is intended to be full-featured once the author gets done with it. For now, that only works on the Hydra.

    The sample programs (SimpleBasic and DataScope) were written by others and posted to this forum some time ago. I modified them minimally to use the OS's keyboard and display drivers and to be able to exit back to the OS. That's all. They were included to demonstrate what's necessary to do that.

    Mike

    Post Edited (Mike Green) : 12/14/2006 12:13:30 AM GMT
  • [Deleted User][Deleted User] Posts: 0
    edited 2006-12-14 00:26
    Did you·get the scope to work in vga , I get the start screen and thats it.



    Brian


    Post Edited (truckwiz) : 12/14/2006 2:57:45 AM GMT
  • Mike GreenMike Green Posts: 23,101
    edited 2006-12-14 06:39
    Sigh, it used to work just fine. I'll check that tomorrow as well.
    Mike
  • NewzedNewzed Posts: 2,503
    edited 2006-12-14 14:39
    Mike, did you write a new simulation object?· Does it include the shiftout/shiftin commands?

    Sid

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Sid Weaver
    Don't have VGA?

    Newzed@aol.com
    ·
  • Mike GreenMike Green Posts: 23,101
    edited 2006-12-14 15:06
    Sid,
    No. I wrote that to help debug your program and haven't had any reason to use it further. One of Martin Hebel's students is trying to do something similar with shiftin/shiftout (this thread: http://forums.parallax.com/showthread.php?p=620870). It's a very useful concept, particularly with the Propeller where there are usually extra processors available
    Mike
  • [Deleted User][Deleted User] Posts: 0
    edited 2006-12-14 15:29
    Mike,
    I had a dream last night, A on chip assembler to go with your OS , I'll try to hammer out something to start with tonight.

    Brian
  • NewzedNewzed Posts: 2,503
    edited 2006-12-14 15:38
    Thanks, Mike

    I downloaded your new OS and Hydra version but could not get it to display.· I was running " simpleDemo.spin " with all the required objects, and in the CON block of OS_loader I changed:

    ·dspPinGroup = (TV & tvPinGroup) | (VGA & 16)·

    to read:

    ·dspPinGroup = (TV & tvPinGroup) | (VGA & 8)

    Do I need to do something else?

    Sid

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Sid Weaver
    Don't have VGA?

    Newzed@aol.com
    ·
  • Mike GreenMike Green Posts: 23,101
    edited 2006-12-14 16:08
    Brian,
    The OS_windowEditor object is intended to be the beginning of a simple text editor for just such a project. I wanted to get some kind of mass storage support into the OS before I changed my focus to this. It mostly needs support for multiple pages and scrolling. It would be pretty easy to load and store 32K text images which would be enough for most assembly programming. The assembler could have provisions for an "include" statement so larger programs could be made up of several pieces < 32K of text.
    Mike
  • Mike GreenMike Green Posts: 23,101
    edited 2006-12-14 16:13
    Sid,
    Make sure the other constants earlier in OS_loader are set properly (TV = false, Parallax = true). The Demo Board and Hydra use different crystals and PLL settings and the Parallax constant adjusts for that.

    Chip's new VGA driver uses a 60Hz refresh rate which should work with pretty much any VGA monitor at 1024 x 768.
    Mike
  • [Deleted User][Deleted User] Posts: 0
    edited 2006-12-14 16:14
    I'll start laying some ground work tonight , if you want some help ?Other wise I'll leave it alone.

    Brian
  • NewzedNewzed Posts: 2,503
    edited 2006-12-14 16:40
    OK, Mike, I'll check that.

    I got OS_mainprogram running OK.· Tried to change the colors but got nowhere.· If I enter Setcolor or Setcolors the screen says "Unkown command".· Can you show me one time how to change scrren colors, say yellow font on blue background?

    Thanks

    Sid

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Sid Weaver
    Don't have VGA?

    Newzed@aol.com
    ·
  • NewzedNewzed Posts: 2,503
    edited 2006-12-14 16:52
    Mike, constants are correct.· Tried DataScope and it would not display either, but OS_mainprogram does.

    Sid

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Sid Weaver
    Don't have VGA?

    Newzed@aol.com
    ·
Sign In or Register to comment.