 |
|
 |
| Parallax Forums > Public Forums > Propeller Chip > TriBladeProp PCB: Uses 3 Propeller ICs for a Single Board Computer (SBC) | Forum Quick Jump
|
|  Cluso99 We live onboard

       Date Joined Apr 2008 Total Posts : 2276 | Posted 4/23/2009 8:32 PM (GMT -8) |   | |
Here is my latest ZiCog code on Blade #2 of the TriBladeProp. I thought it more relevant to post here than the ZiCog thread.
I have attached the zipped source files. The ZiCog Z80 code is not heaters latest (I am still using v005). There is an issue I need to fix by updating the TBP (TriBladeProp) driver. Currently I am resetting the cog to overcome this until I get time to fix (add a simple routine). All software to compile is in the demo zip file including the homespun compiler and the batch file to compile. There are 3 or 4 warnings about missing '#' in the jmp/ret instructions but this is in fact correct.
I have also attached the zipped disk files for the microSD card. It is a large file. Expand it first on your pc and then copy DRIVE__C.DSK to files A through H. This is a blank CPM2.2 disk which can be used for 1MB drives A...H. Expand DRIVE_1MB.RAM. This file is used to load the CPM boot information into the RAM (sram) by the spin program. DRVCPM_2.DSK is the disk file containing all the CPM2 files, formatted as a 1MB drive. It is best to leave this untouched and just copy it over the DRIVE__A.DSK you have made above. This way anything you do will overwrite/add to the A CPM drive and you will still have an original. And CPM will boot to the A drive.
Once these files are ready, format your microSD card with FAT16 and preferably 32KB clusters. Then copy these files one by one. They will then be contiguous (using successive clusters) because we access them using physical addresses once the starting point is found under FAT16.
SURVEY is the CPM program that shows the disk drives and memory map. It will not display drives until you have done a DIR command.
As I haven't included the CPM3 disk file, edit the spin demo file to change the H drive to use DRIVE__H.DSK and recompile.
This version only uses Blade #2 and the PropPlug connected to your PC and PropTerminal.
I edit and save using PropTool (dont forget to save), then go to a dos box and run z.bat from the source folder (set the path etc - ensure there are no blanks in the path/file names). Check the compile produced an output binary file with no errors (other than the warnings mentioned above). Go back to PropTool and load the binary file to the prop ram. The switch to PropTerminal. You will have about 3 seconds to do this before the software starts on the prop. If you miss this, just type "y" to load the ram and continue.
If you have any questions just ask. I am a bit tied up for a couple of days (in case I am slow to respond).
Enjoy
PS. Later I will publish the entire code you require to boot from an SD card without the PC. Links to other interesting threads:
Post Edited (Cluso99) : 4/24/2009 4:53:38 AM GMT File Attachment : TriBladeProp_Zicog_rr068.zip 112KB (application/x-zip-compressed) This file has been downloaded 58 time(s). File Attachment : Formatted 20090421.zip 775KB (application/x-zip-compressed) This file has been downloaded 57 time(s). | | Back to Top | | |
    |  Cluso99 We live onboard

       Date Joined Apr 2008 Total Posts : 2276 | Posted 4/24/2009 6:42 PM (GMT -8) |   | I have published a TriBlade driver for SRAM access Pass it a hub address, sram address and a length and wait for it to be done.
The SD card driver is the Femto drivers with a published fix
I have said many times, emulators are NOT my only purpose of the TriBlade. It is just my focus. However, everything I have written is with general purpose use in mind, just like heaters ZiCog is deliberately NOT tied to the TriBlade.
We eagerly await the Prop spin/pasm or c compiler running on the prop.
Meanwhile we can run/compile other code under CPM, like Turbo Pascal, MBasic, Fortran, ADA, etc, etc, etc. And we can run SuperCalc (not tried yet), etc, etc, etc. Links to other interesting threads:
| | Back to Top | | |
 |  SRLM Registered Member

       Date Joined Jul 2008 Total Posts : 2716 | Posted 4/24/2009 7:52 PM (GMT -8) |   | Well, I went to the lab today to solder up one of my boards, and whew! It takes a while. I worked on it for about 6 hours straight, and I'm still not done. A couple of questions:
Does the text on the resistor network go under the small square on the outline?
For the micro SD card holder, are all four pads in back used as electrical connections?
For the pairs of capacitors in and near C16, C26, C33, what values do we use? Also, those are for overclocking with a 6 MHz crystal, right?
Does the switch go in any particular orientation?
Blade two, what are the U24A and U23A for as opposed to the versions without A?
What are the various holes for, notably the LK1, LK2, LK3, ...?
I suppose that the Blade 2 SRAM pins most definitely cannot touch the PCB (the pins you mention in your mod)?
Edit: another question: I don't have 240 ohm resistors or any 1K1 ohm resistors. Is it okay to substitute with something close (perhaps 250 and 1K respectively)?Post Edited (SRLM) : 4/25/2009 4:52:36 AM GMT | | Back to Top | | |
 |  Cluso99 We live onboard

       Date Joined Apr 2008 Total Posts : 2276 | Posted 4/24/2009 8:50 PM (GMT -8) |   | Answers to SRLM questions....
1. The resistor network is soldered on the underside of the pcb and the usual "dot" indicating the common connection on the part goes to the square box end.
2. None of the pads at the back of the microSD connector are used in my design. They just provide stability for the connector in this application. Normally these back pads could be used for write protect and card inserted functions.
3. C16/17, C26/27 & C33/34 are for possible use in overclocking. No values are specified although I think 0.1uF and a 1uF (tantalum - so careful of polarity "+" closest to the vga connector) might be necessary from Sapheia's information. If required, they mount on the underside of the pcb. A 6MHz crystal hopefully should not require these.
4. There is no orientation for the switch. If the switch is in the left position the power will be off, right it will be on.
5. U23A and U24A are for 2MB SRAMs which replace the U23 and U24 512KB SRAMs. They are EXPENSIVE and nothing uses them at present.
6. Links:
LK1 & LK2 allow Blade #1 & #2 to connect their P30/31 serial pins together. You cannot use the PropPlug to connect to these Blades when this is active. Beware that P30 connects to P30, and P31 connects to P31, so the terminal function on Blade #1 will need it's serial pins reversed in software, otherwise there will be a bus conflict which may cause damage to the prop chips. Alternately use a small cable on these headers and cross them over.
LK3, LK4 & LK5 are designed to connect Blade #2 to Blade #3 together via the serial bus mentioned in LK1 & LK2. It can route the PropPlug to Blade #3 as well, including the reset line. See the schematic. Note these shunts can be all horizontal or all vertical for different pins
7. The modification to the SRAMs U23 and U24: These pins must not touch the pcb. If you are experienced, you may alternately drill the connection but this is not wise. You may bend then cut the pin shorter on each SRAM to ensure it does not touch the pcb, but long enough to solder the wire to. Put the 2 wires under the ICs to hide most of the modification and keep the wires from getting caught. This is the professional way.
8. Just to reiterate... U12, U22, U32 & U25 must be soldered to the underside of the pcb as the pinout is reversed for this. They will not function if soldered to the top of the pcb !!!
9. U26 label should read FLASH, not EEPROM.
10. Q91 is inserted differently to the label. (see the errata A1)
11. For now, I suggest you do not fit U13 and U15 (SRAM and Latch for Blade #1) until such time as you have a requirement for it or someone produces a requirement for it. There are other possible uses for these pins if left unsoldered - such as allowing VGA AND TV concurrently with a cable, or more I/O.
12. I have not fitted (permanently) any of the EEPROMs as it is my intention (when time allows) to have Blades #1 and #3 code loaded by Blade #2 when in standalone (SBC = Single Board Computer) operation. The USB serial connection to the PC will go to Blade #3. All Blades will communicate between them via a common high speed serial communications on a 1 or 2 wire bus (TBD).
13. I have not fitted the FLASH although I understand Mike Green is doing this.
14. You will see from the schematics, the LEDs are uncommitted, so you can wire them where you like. The pad will light the LED if it is logic high. I used a blue LED as LED2. I cannot recall which of the others were red and green. I only held wires to check the props were functioning.
Good luck and I await to hear you are running... If you have any questions, please ask. Links to other interesting threads:
| | Back to Top | | |
  |  SRLM Registered Member

       Date Joined Jul 2008 Total Posts : 2716 | Posted 4/24/2009 9:52 PM (GMT -8) |   | Thanks, a few more:
1)I've been socketing all the chips, and I'm wondering about the U23/U24 business. If I get a socket to fit the extra four pins, how easily can I switch between the two versions of SRAM? My guess is that I'll have to do some resoldering...
2) So for the microSD, is it okay if I bridge the four connections on the U23 side?
3) Will the overclocking caps hurt me if I only have a 5Mhz crystal?
4)A question that I edited in above at the same time you were posting: "Edit: another question: I don't have 240 ohm resistors or any 1K1 ohm resistors. Is it okay to substitute with something close (perhaps 250 and 1K respectively)?"
Thanks for telling be about the tantalum capacitor polarity. Of the three on the board (right!?) I've only gotten to C91 and it's in backwards... | | Back to Top | | |
   |  Toby Seckshund Registered Member
        Date Joined Mar 2009 Total Posts : 477 | Posted 4/25/2009 12:28 PM (GMT -8) |   | | If you have to use an alternative resistor value on the VGA or composite I would err on the higher side to prevent any clipping/"overloading". I have always used 270 Ohms and 1K2 if the right ones were left at work: again! | | Back to Top | | |
 |  Toby Seckshund Registered Member
        Date Joined Mar 2009 Total Posts : 477 | Posted 4/26/2009 11:51 AM (GMT -8) |   | I have joined in, now. I have a "Blade 2" with eeprom, SD and two 512KB rams. I have made it with the /OE mods with latch.
I originaly tried your ram test (with blue led on P24) which did not work, which i guess is due to the mods???. Next I tried the Test201, with this I get one screen full of number dumps. The numbers start wit 10,11,12 ...get up to 7f turn to 77s for some more rows and thenstart at ff count down to 80 and the 77s come back until i) complete gets a row of its own. Reading the code I think that it should test all the pages and the i) should be a number indicating that all 1024 pages have been vetted
Am I using the wrong test prog or have I got another puzzle waiting, whoopee.  | | Back to Top | | |
 |  Toby Seckshund Registered Member
        Date Joined Mar 2009 Total Posts : 477 | Posted 4/26/2009 12:43 PM (GMT -8) |   | I may have answered my own question. I made the seial window bigger and the could see the extra missing text saying this and that had passed.
So its a yippee, possibly.  | | Back to Top | | |
 |  Yoda Registered Member

       Date Joined Mar 2009 Total Posts : 61 | Posted 4/26/2009 5:30 PM (GMT -8) |   | @Clusso99
I got one of my TriBladeProps assembled now and can boot CPM from your posts
I assume the files on the disk are the cbios that is being used? I want to look at using 128 byte sectors and packing 4 per SD sector to be more efficient and want to look at CPM 3 long term to get to 512MB hardrives
Have you enabled using console going to Blade 1 with VGA and keyboard ? I am interested in testing that out next.
This is exciting and fun
Dave | | Back to Top | | |
  |  Toby Seckshund Registered Member
        Date Joined Mar 2009 Total Posts : 477 | Posted 4/26/2009 10:35 PM (GMT -8) |   | Thanks for the confirmatiom that things look good, so far. I modified my "Z80 nailed to a prop" board, which was basically a Demoboard without the video and sound stuff, so I have 90% of a Blade 1 ready and waiting (all the demo conns and components are on risers and a top board, arduino_esque.
Next the SD, then CPM ....
I started trying to get a Nascom 1 running, and now I recall trying to get a Nascom 2 to run CPM 2.2 (without the proper steering roms) | | Back to Top | | |
 |  Yoda Registered Member

       Date Joined Mar 2009 Total Posts : 61 | Posted 4/27/2009 6:41 AM (GMT -8) |   | Hi Ray,
Thanks for the info. Do you have a good communication routine between blade 1 and 2? I have a pretty decent terminal emulator that Vince Briel did for the PockeTerm. It is a neat little product. It does a very good VT100 emulation. I would just need to remove or modify the FullDuplexSerial that it uses to go out on the max233 to use the interconnect between blade 1 and 2 ? I assume there would be modifications on the blade 2 side as well? I think the packing would be a win of reads for sure and on the writes as well depending on whether you do lazy writes or not.
If I can help with any the code I will dive in. I will explore getting the terminal emulation going - so I can get off of propTerm and getting wordstar running on a nice 15 inch monitor.
Dave | | Back to Top | | |
  |  Yoda Registered Member

       Date Joined Mar 2009 Total Posts : 61 | Posted 4/27/2009 7:05 PM (GMT -8) |   | | I got VT100 code running pretty easily - it is using the full duplex serial driver. Some minimal issues with CR/LF that I have to work out but it was pretty easy to do. I made the mod to LK1 and LK2 so I can cross over lines. It is not 8M bit but 115200 is plenty fast for text now. So I can run the board now without being hooked to PC once code is loaded on blade 1 and 2 eeproms. I assume as I am doing that the jumpers have to be removed to load each blade to eliminate cross talk between them as the code is being downloaded? | | Back to Top | | |
  |  Cluso99 We live onboard

       Date Joined Apr 2008 Total Posts : 2276 | Posted 4/29/2009 9:05 PM (GMT -8) |   | | We (Heater and I) are trying to keep this thread more for the TriBlade implementation and other goodies and the ZiCog thread more for the Z80 emulator. Obviously there is a lot of crossover, but that's our objective.
There are a number of TriBlades now running out there now, so I will be posting some extra featres that may not have been obvious from the schematics and descriptions of the TriBladeProp.
Mike Green is doing Flash drivers, OBC is likely to be doing PropDos and/or VT100 ??, I think someone is doing an editor, and I have been discussing with Ross about getting his Catalina C compiler running on a TriBlade.
There is nothing on the TriBlade which cannot be wired on a group of demo boards and I have published the circuit diagrams.
I have another solution due in a couple of weeks for those that want a Blade #2 prebuilt.
I will publish more details as it gets closer.
Anyone want to get Ethernet (ENC28J60) running on Blade #3 (which is pretty much a prop with I/O pinouts only) or it could work on Blade #1 using the SRAM pins (i.e. no SRAM on Blade #1)?
If by chance I have missed responding to any questions over the past week or so, please re-ask as I have been busy with other things. Links to other interesting threads:
| | Back to Top | | |
  |  SRLM Registered Member

       Date Joined Jul 2008 Total Posts : 2716 | Posted 5/1/2009 9:08 PM (GMT -8) |   | I'm almost done assembling the first board, but I have a few more questions:
First: do you have the physical board layout diagrams somewhere? Specifically, I'm looking for the blade 3 prototyping area, but if you have the rest of the board that would be great. Second: I used a PN2222 transistor instead of a P2N222 transistor. Will my board explode into a million pieces, or will that work. I compared datasheets, and they appeared to be pretty much the same. Third: I used a electrolytic capacitor of the same value for C2 and C3. Is this okay? Fourth: What do the latch chips allow me to do? | | Back to Top | | |
  | 848 posts in this thread. Viewing Page : | | Forum Information | Currently it is Friday, November 20, 2009 10:46 PM (GMT -8) There are a total of 393,734 posts in 55,521 threads. In the last 3 days there were 82 new threads and 700 reply posts. View Active Threads
| | Who's Online | This forum has 17687 registered members. Please welcome our newest member, mark09. 51 Guest(s), 1 Registered Member(s) are currently online. Details Rick Brooks |
Forum powered by dotNetBB v2.42EC SP2.02 dotNetBB © 2000-2009 |
|
|