New P2 FPGA Release (link)
Cluso99
Posts: 18,069
For those of you not following the large thread, Chip has released new FPGA code here...
http://forums.parallax.com/showthread.php/125543-Propeller-II-update-BLOG?p=1251927&viewfull=1#post1251927
http://forums.parallax.com/showthread.php/125543-Propeller-II-update-BLOG?p=1251927&viewfull=1#post1251927
Comments
It's only for daredevils, at this point, until the documentation gets updated over the next few days.
Thanks Chip!
Playing with the new stuff right now.... looks good!
TARG is a TOPONE!
TARG instructions redirect the result writing. The names changed, I think, since we last discussed them.
Is the LIFO stack only 18 bits now?
Returns AX = $3FFFF
Hi Baggers
I get the same result for PUSH myreg instead of PUSH ##value.
The last FPGA release allowed 32 bit values to be Push'ed onto the LIFO stack.
ICheers
Brian
Edit: I'm guessing the change was made so LIFO just holds a 16 bit address and the ZC flags.
Anybody finding code that ran under the 2/6/14 emulator doesn't run under the 3/20/14 emulator?
It assembles and loads (no changed mnemonic issues, causing unrecognized instructions) but then goes off into the weeds somewhere.
It's the p2pfth that I modified.
I hadn't thought there were any functional changes in the existing instructions (other than the possible PUSH issue above) with this emulation, just additional instructions.
I don't PUSH/POP, I do use PUSHX/POPX/PUSHY/POPY, SERIN/SEROUT.
I checked Dave Hein's original pfth port to the P2 and it didn't appear to work.
I'll go back and recheck things to make sure it's not stupidity (no guarantees there).
Any thoughts?
Thanks!
I am about to flash the 3/20/14 image, as soon as I find my notes on how to do so
Bill, do these help for the DE2? It's a REAL product now!
If it's a DE0, I can write something up for you real quick that should jog your memory.
OK, so the first block allows a D or a # value. the second block doesn't.
I need to go dig through the BLOG thread to find the differences.
Dang, this being adventuresome really taxes the memory!!
FOUND IT!! Except it is TARG instead of RESD
EDIT2: A Question for Chip: Why did the second set not get conditional execution bits (cccc)? If you are conditionally executing the initial set rdr and write, might you not want to conditionally execute the subsequent uses rdr and write operations? Just wondering at this point more than anything.
(mindrobots & Parallax)
I am printing it right now, along with other goodies from the latest zip. Time for me to flash my DE2-115!!!
I am not likely to get to my nano's for a couple of days... so no burning hurry - however I am sure many would appreciate a 'cheat sheet'
Why would I use nano's when I have a DE2?
For hardware experiments. I'd much rather risk a DE0-Nano, of which I have three, instead of my single DE2-115.
Now I just have to convince PNut.exe to find com ports > com9 !
(I remember running into this before as well, but don't remember how to resolve it)
Post it if you find a solution. I just deleted all my low number com ports and let the DE0s find ones below 9. Guess I'll have to delete a couple when my DE2 shows up to give it a slot.
From the Booter I used the following code
For now, I did the same thing - deleted a low number com port.
Here is my new setup:
(click for big pic)
I took a 8"x12" piece of 1/8" styrene
- drilled four 1/8" holes for the DE2-115
- drilled two 1/8" holes for two support standoffs for the P2 video emulation board
- then I added a SchoolBoard ][ to the P2 header (I had to trim longer leads on its bottom)
Now I can play in style :-)
Short story, go into Device Manager, connect your Prop Plug, refresh, and the new device that shows up is the one you want. Pick the properties and set the port.
Here's some notes on changes I have found in the pin transfer function.
The PTRY initial value is now included in the instruction.
A side effect of the change is when the SETXFR #0,#0 instruction is executed to stop the pin transfer the current PTRY value is lost.
Even issuing a GETPTRY before the SETXFR #0,#0 returns a zero value.
The previous F{GA release (6 Feb 2014) used to leave PTRY intact.
This was useful in determining the sample length by PTRY's current value.
Just FYI
It doesn't use PTRY, anymore. It maintains its own 8-bit counter which gets initialized on every SETXFR.
Brian, do you have an update for your tool you'd like to share? Please??
Thanks, all!
It looks like it is BLSIZE now. At least BLSIZE has the same opcode that was ENCOD.
C.W.
It prints garbage instead of "Hello World!"
The commented out "boo" loop works fine.
Hi Rick
The ENCOD instruction has been replaced with a new variant called TOPONE. See here
Because the LIFO is only 18 bits now I had to make a few changes.
I will post an updated version of Toolbox later today.
Cheers
Brian
Given that the 'boo' with the constant character out works, I am left scratching my head.
locptra #hello_world
with
setptra ##hello_world
Still does not work.
Try these changes
after the LOCPTRA #hello_world follow with a ADDPTRA ##$E00
Also a JMP @ switches to HUB exec and a JMP # switches to COG mode.