Line delay - newlines - your documentation said it was ^A T D in minicom which is labeled "Newline tx delay" in the program - it all fits together perfectly! I should really learn to follow directions... Thanks for that hint, I would have never guessed.
XON/XOFF is not properly supported on PCs it seems, they just never seem to respond since they have such huge FIFOs which do not look ahead for XOFFs.
Is that a hardware thing or a Windows thing? Will it affect me on Linux? What if nothing else is in the FIFO when the XON/XOFF comes?
I didn't even notice QS.fth... Thanks! Now I'll probably have to buy the QS W5200 addon board for the QuickStart board I just got at RadioShack for something like $7.99 instead of just using my Spinneret.
I'm very happy to learn that your web server was on a bad wifi connection - I guess I'll give vanilla Tachyon with no PASM drivers a try.
I am new to forth, but I would like to humbly submit a question..
Do you in some form or fashion use RPN to process data like you would process numbers?
I know that you must use a math model(s) to streamline your processes, in sync with
the cogs of the propeller. Am I close? warm? cold? enquiring minds want to know..............
I am new to forth, but I would like to humbly submit a question..
Do you in some form or fashion use RPN to process data like you would process numbers?
I know that you must use a math model(s) to streamline your processes, in sync with
the cogs of the propeller. Am I close? warm? cold? enquiring minds want to know..............
Hi mklrobo, not too new though as you've had some experience with PropForth I guess. I'm not real sure of your question though, do you have a particular example or application in mind? Sometimes the problem is that if you knew the answer you would also know how to ask the question!
So rather than ask a question just say what it is you are trying to do, maybe what your initial goal is etc in plain simple words. As it is your question is a meaningless jumble of jargon, so I guess it would be "cold"
:nerd: I have been programming, but not as much as I would like.:frown:
In reference to programming in general, every programmer has learned
their own heuristics in programming. Your Forth runs faster than any other,
so I assume you have incorporated your heuristic into the program. You
must have adapted some advantage of forth to acquire this. This is what
I am focusing on. I know that you probably could not tell anyway, becuase
it is how you make your living; I understand. If it is just the perfection of
programming, why has not somebody at least come close to what you
have done?
Peter has gotten Tachyon Forth to run as fast as it does by careful optimization ... matching how his Forth works to how the Propeller works. In particular, the most commonly used bytecodes (that Forth gets compiled into) decode easily and quickly into code addresses with a direct jump to the code involved in executing the bytecode. Secondly, he has the first few stack locations in fixed memory locations (rather than indexed via a stack pointer or index register) because the Propeller has no index registers and computed addresses have to be handled via modifying instructions. There are other optimizations, but I believe these are the most important for performance.
Peter has gotten Tachyon Forth to run as fast as it does by careful optimization ... matching how his Forth works to how the Propeller works. In particular, the most commonly used bytecodes (that Forth gets compiled into) decode easily and quickly into code addresses with a direct jump to the code involved in executing the bytecode. Secondly, he has the first few stack locations in fixed memory locations (rather than indexed via a stack pointer or index register) because the Propeller has no index registers and computed addresses have to be handled via modifying instructions. There are other optimizations, but I believe these are the most important for performance.
While I have been playing with the P1 FPGA Verilog I've also been able to connect a few peripherals including a W5500 module that's been lying around waiting to be tested. So I have adapted the W5200 driver for this chip and it certainly is a lot easier to drive plus I like the way that they have segregated all the buffers in the W5500 so that you don't have to calculate addresses and masks all the time, just say which section you want in the control byte.
At present I am still testing this driver on the P1V @120MHz and with supercog mode where cog 0 has access to all unused hub slots but everything appears to run well. EASYNET has been updated as well to allow for the chip although I will see what I can do to have chip specifics removed from this level. The driver hasn't been optimized yet but otherwise it runs smoothly.
peter@peter-Dell-System-XPS-L702X ~ $ telnet 192.168.16.160 10001
Trying 192.168.16.160...
Connected to 192.168.16.160.
Escape character is '^]'.
WELCOME TO THE TACHYON WIZNET TELNET SESSION!
.MODULES
MODULES LOADED:
40DC: EASYNET.fth WIZNET NETWORK SERVERS 140804.2300
3910: W5500.fth WIZNET W5500 driver 140817.0000
2EBF: EASYFILE.fth FAT32 Virtual Memory Access File System Layer V1.1 140626-2100
29F3: SDCARD.fth SD CARD Toolkit - 140626.1400
1901: EXTEND.fth Primary extensions to TACHYON kernel - 140723-14OO
ok
BYE
Connection closed by foreign host.
peter@peter-Dell-System-XPS-L702X ~ $
If you want to dump contents of the W5500 just remember that all dumps are now unified under the general DUMP variants (DUMP, DUMPW, DUMPL, DUMPA) by specifying the device but with the W5500 you also need to specify the section and socket.
These are the modifier words:
WIZ selects the WIZnet device as the default DUMP method
@COMMON
@TX
@RX
n SOCKET will select socket 0..7 and also selects the socket segment (in place of TX RX or common)
Here are some examples (hex base):
0 40 WIZ @COMMON DUMP --- dump the common registers
0 30 WIZ 2 SOCKET DUMP --- dump socket 2 registers
0 100 WIZ 3 SOCKET @TX DUMPA --- dump the first 256 bytes of socket 3 transmit buffer
Note: There is no need to continue to continue to specify WIZ or other modifiers unless necessary, so:
0 40 WIZ 4 SOCKET @RX DUMPA --- dump some of the receive buffer for HTTP
0 200 DUMPA --- dumps more of the receive buffer for HTTP
So you can also type it like this:
WIZ 4 SOCKET @RX
0 40 DUMPA
0 200 DUMPA
While I have been playing with the P1 FPGA Verilog I've also been able to connect a few peripherals including a W5500 module that's been lying around waiting to be tested. So I have adapted the W5200 driver for this chip and it certainly is a lot easier to drive plus I like the way that they have segregated all the buffers in the W5500 so that you don't have to calculate addresses and masks all the time, just say which section you want in the control byte.
At present I am still testing this driver on the P1V @120MHz and with supercog mode where cog 0 has access to all unused hub slots but everything appears to run well. EASYNET has been updated as well to allow for the chip although I will see what I can do to have chip specifics removed from this level. The driver hasn't been optimized yet but otherwise it runs smoothly.........
I had a feeling you where not couting sheep. Thanks for the W5500 additions.
I have a DEO Nano, can I play with this Tachyon super cog too and new W5500 driver?
I had a feeling you where not couting sheep. Thanks for the W5500 additions.
I have a DEO Nano, can I play with this Tachyon super cog too and new W5500 driver?
There is a W5500 in the Dropbox and the current testing version in Google docs (via the link page). When I get away from this PC and sit down in front of my system I will tidy up the DE0 files although this isn't really required of course. I need to draw a quick diagram of the connections though.
There is a W5500 in the Dropbox and the current testing version in Google docs (via the link page). When I get away from this PC and sit down in front of my system I will tidy up the DE0 files although this isn't really required of course. I need to draw a quick diagram of the connections though.
Do you have a full time job? If you do, I'm really impressed that you find enough time to do all you've done with Tachyon. Heck, even if you don't, your productivity is impressive and I refuse to believe that is entirely do to working in Forth! :-)
Do you have a full time job? If you do, I'm really impressed that you find enough time to do all you've done with Tachyon. Heck, even if you don't, your productivity is impressive and I refuse to believe that is entirely do to working in Forth! :-)
Although I could work full time as I like I prefer "my time" where I choose a balance of current work, future work, and play work which might and does result in future work. If it's so much fun then it's hardly work so could you call it a job?
I keep my life fairly simple without stressing everyday about overheads and commitments and since I get to decide what I will or won't work on and how to do it then I choose the ones that are a balance between money and fun. But as much as you might refuse to believe that it's entirely to do with working in Forth I however find that since I have the most fun with Forth bringing new boards and chips to life that this then is also the most productive.
As I mentioned elsewhere it's not just about the "language" because you can't really compare Forth with traditional PC hosted languages/compilers, it's not the same thing. So while a target hosted Forth certainly does appear more primitive than a PC hosted Gigabyte compiler IDE it is also far more interactive and close to the silicon. I can hook-up a new chip and be "talking" to it within minutes discovering a lot more about it then can be gleaned and precompiled from a datasheet or accessing a driver or lib obect. In this manner I come up with alternative methods of accessing it and adapting the "language" so if it's the WIZnet chip for instance then I get to talk to it and it tells me all about itself and how it's coping, a real heart to heart if you could imagine it that way. So I know the things it likes, what it doesn't like, and little secrets that you can only know about if you get close and cosy. I hear it complain so I want to know what's wrong, I ask it, maybe a quick one-liner or something, and it tells me so I can make it better
Now what I said may be seem to be overly metamorphosing but it's hard to explain what that "something about Forth" thing is unless you really actually seriously get into it. I've had many traditional programmers and engineers who have watched over my shoulder as I turn a newborn shoebox prototype into a chatty can-do within hours if that even, and they are usually shaking their heads in utter disbelief. Unfortunately the greater percentage are "stuck" with their traditional ways of programming and like learning a foreign language are too caught-up in comparing back to what they already know rather than being immersed in the "culture" where when you get the way of thinking, then speaking the language follows easily.
hi, Peter
Do you mind if I pusblish the decompiled+disassembled list of Tachyon Forth based on the development system that I've designed. And if permissible I'll post the execution file so that one can see it clearly. Does Tachyon Forth follow the GPL (General Public Licience) rule?
holi
hi, Peter
Do you mind if I pusblish the decompiled+disassembled list of Tachyon Forth based on the development system that I've designed. And if permissible I'll post the execution file so that one can see it clearly. Does Tachyon Forth follow the GPL (General Public Licience) rule?
holi
Hi holi, thought I recognized you, venturing across into Propeller land
I haven't assigned any license to Tachyon, it's more like "use it how you want" and so there is absolutely no problem with whatever you want to do with it but let us know how you go with it though.
Although I could work full time as I like I prefer "my time" where I choose a balance of current work, future work, and play work which might and does result in future work. If it's so much fun then it's hardly work so could you call it a job?
I keep my life fairly simple without stressing everyday about overheads and commitments and since I get to decide what I will or won't work on and how to do it then I choose the ones that are a balance between money and fun. But as much as you might refuse to believe that it's entirely to do with working in Forth I however find that since I have the most fun with Forth bringing new boards and chips to life that this then is also the most productive.
As I mentioned elsewhere it's not just about the "language" because you can't really compare Forth with traditional PC hosted languages/compilers, it's not the same thing. So while a target hosted Forth certainly does appear more primitive than a PC hosted Gigabyte compiler IDE it is also far more interactive and close to the silicon. I can hook-up a new chip and be "talking" to it within minutes discovering a lot more about it then can be gleaned and precompiled from a datasheet or accessing a driver or lib obect. In this manner I come up with alternative methods of accessing it and adapting the "language" so if it's the WIZnet chip for instance then I get to talk to it and it tells me all about itself and how it's coping, a real heart to heart if you could imagine it that way. So I know the things it likes, what it doesn't like, and little secrets that you can only know about if you get close and cosy. I hear it complain so I want to know what's wrong, I ask it, maybe a quick one-liner or something, and it tells me so I can make it better
Now what I said may be seem to be overly metamorphosing but it's hard to explain what that "something about Forth" thing is unless you really actually seriously get into it. I've had many traditional programmers and engineers who have watched over my shoulder as I turn a newborn shoebox prototype into a chatty can-do within hours if that even, and they are usually shaking their heads in utter disbelief. Unfortunately the greater percentage are "stuck" with their traditional ways of programming and like learning a foreign language are too caught-up in comparing back to what they already know rather than being immersed in the "culture" where when you get the way of thinking, then speaking the language follows easily.
:cool: Right. The way I am trying to understand your Tachyon, is that your programming Methedology is more important that the code itself.
Hi holi, thought I recognized you, venturing across into Propeller land
I haven't assigned any license to Tachyon, it's more like "use it how you want" and so there is absolutely no problem with whatever you want to do with it but let us know how you go with it though.
hi, Forther
Those who are interested in this decompiled+disassembled list could find it here: tech.groups.yahoo.com/group/armForth/files choose parallex propeller
where you can find TachyonForthLST1.f
or if you're interested in the execution file, just download
TACHYONFORTH1.EXExxx
and remove the xxx at the end of the execution file.
It can be executed under windows XP where win32for 4.2.67x resides.
++++ You have to sign in as a member to read the file. ++++
Although I could work full time as I like I prefer "my time" where I choose a balance of current work, future work, and play work which might and does result in future work. If it's so much fun then it's hardly work so could you call it a job?
I keep my life fairly simple without stressing everyday about overheads and commitments and since I get to decide what I will or won't work on and how to do it then I choose the ones that are a balance between money and fun. But as much as you might refuse to believe that it's entirely to do with working in Forth I however find that since I have the most fun with Forth bringing new boards and chips to life that this then is also the most productive.
As I mentioned elsewhere it's not just about the "language" because you can't really compare Forth with traditional PC hosted languages/compilers, it's not the same thing. So while a target hosted Forth certainly does appear more primitive than a PC hosted Gigabyte compiler IDE it is also far more interactive and close to the silicon. I can hook-up a new chip and be "talking" to it within minutes discovering a lot more about it then can be gleaned and precompiled from a datasheet or accessing a driver or lib obect. In this manner I come up with alternative methods of accessing it and adapting the "language" so if it's the WIZnet chip for instance then I get to talk to it and it tells me all about itself and how it's coping, a real heart to heart if you could imagine it that way. So I know the things it likes, what it doesn't like, and little secrets that you can only know about if you get close and cosy. I hear it complain so I want to know what's wrong, I ask it, maybe a quick one-liner or something, and it tells me so I can make it better
Now what I said may be seem to be overly metamorphosing but it's hard to explain what that "something about Forth" thing is unless you really actually seriously get into it. I've had many traditional programmers and engineers who have watched over my shoulder as I turn a newborn shoebox prototype into a chatty can-do within hours if that even, and they are usually shaking their heads in utter disbelief. Unfortunately the greater percentage are "stuck" with their traditional ways of programming and like learning a foreign language are too caught-up in comparing back to what they already know rather than being immersed in the "culture" where when you get the way of thinking, then speaking the language follows easily.
I admire your courage in being freelance and able to pick what you work on. I've never had the self-confidence to do that! Good for you!
I don't want to start another language war but I think most of what you're describing is true of any interactive language. It is certainly true of that Javascript interpreter Heater is always talking about. However, I think Tachyon seems to fit the Propeller quite well and is probably a wonderful environment for someone familiar with Forth or interested in learning it.
Although I could work full time as I like I prefer "my time" where I choose a balance of current work, future work, and play work which might and does result in future work. If it's so much fun then it's hardly work so could you call it a job?
I always think of what I do as more like 'structured play' rather than work.
I admire your courage in being freelance and able to pick what you work on. I've never had the self-confidence to do that! Good for you!
I don't want to start another language war but I think most of what you're describing is true of any interactive language. It is certainly true of that Javascript interpreter Heater is always talking about. However, I think Tachyon seems to fit the Propeller quite well and is probably a wonderful environment for someone familiar with Forth or interested in learning it.
Look, isn't Tachyon Forth specific to the Propeller? So I'm not talking about programming in general although I prefer the speed and small footprint of Forth in typical embedded systems. Javascript needs lots of memory and grunt to run and then it just ain't fast at all. Those embedded systems that are capable of supporting Linux etc are a different kettle of fish and I use the language that best suits that board and application. To me coding in any language is a way of getting the job done so it's a matter of picking the right tools. On really small embedded systems I prefer to just code in assembler and so I know what I'm dealing with. I don't think I've ever bothered to code any real projects in Forth on an existing O/S but only those ones where it makes sense and to me the Propeller is one of those. So pretty much any smaller 16/32-bit system with at least 32K RAM perhaps would be a good candidate for Forth IMO.
Look, isn't Tachyon Forth specific to the Propeller? So I'm not talking about programming in general although I prefer the speed and small footprint of Forth in typical embedded systems. Javascript needs lots of memory and grunt to run and then it just ain't fast at all. Those embedded systems that are capable of supporting Linux etc are a different kettle of fish and I use the language that best suits that board and application. To me coding in any language is a way of getting the job done so it's a matter of picking the right tools. On really small embedded systems I prefer to just code in assembler and so I know what I'm dealing with. I don't think I've ever bothered to code any real projects in Forth on an existing O/S but only those ones where it makes sense and to me the Propeller is one of those. So pretty much any smaller 16/32-bit system with at least 32K RAM perhaps would be a good candidate for Forth IMO.
hello, good day.
which is out the latest Archive.zip for TACHYON?
I want no vga in the forth!
Thank you.
Check Peter's signature.
The (latest) binary in signature is with no vga and auto detects the 5/10 MHz Xtal. Simply connect a terminal (teraterm in Windows is a good start) and set it to 230400.
Check Peter's signature.
The (latest) binary in signature is with no vga and auto detects the 5/10 MHz Xtal. Simply connect a terminal (teraterm in Windows is a good start) and set it to 230400.
Massimo
As Massino said:
Check Peter's signature (Peter is the creator of Tachyon)
Comments
Is that a hardware thing or a Windows thing? Will it affect me on Linux? What if nothing else is in the FIFO when the XON/XOFF comes?
I didn't even notice QS.fth... Thanks! Now I'll probably have to buy the QS W5200 addon board for the QuickStart board I just got at RadioShack for something like $7.99 instead of just using my Spinneret.
I'm very happy to learn that your web server was on a bad wifi connection - I guess I'll give vanilla Tachyon with no PASM drivers a try.
Greeting
Do you in some form or fashion use RPN to process data like you would process numbers?
I know that you must use a math model(s) to streamline your processes, in sync with
the cogs of the propeller. Am I close? warm? cold? enquiring minds want to know..............
Hi mklrobo, not too new though as you've had some experience with PropForth I guess. I'm not real sure of your question though, do you have a particular example or application in mind? Sometimes the problem is that if you knew the answer you would also know how to ask the question!
So rather than ask a question just say what it is you are trying to do, maybe what your initial goal is etc in plain simple words. As it is your question is a meaningless jumble of jargon, so I guess it would be "cold"
In reference to programming in general, every programmer has learned
their own heuristics in programming. Your Forth runs faster than any other,
so I assume you have incorporated your heuristic into the program. You
must have adapted some advantage of forth to acquire this. This is what
I am focusing on. I know that you probably could not tell anyway, becuase
it is how you make your living; I understand. If it is just the perfection of
programming, why has not somebody at least come close to what you
have done?
10-4. Very clever. Thanks.
At present I am still testing this driver on the P1V @120MHz and with supercog mode where cog 0 has access to all unused hub slots but everything appears to run well. EASYNET has been updated as well to allow for the chip although I will see what I can do to have chip specifics removed from this level. The driver hasn't been optimized yet but otherwise it runs smoothly.
If you want to dump contents of the W5500 just remember that all dumps are now unified under the general DUMP variants (DUMP, DUMPW, DUMPL, DUMPA) by specifying the device but with the W5500 you also need to specify the section and socket.
These are the modifier words:
WIZ selects the WIZnet device as the default DUMP method
@COMMON
@TX
@RX
n SOCKET will select socket 0..7 and also selects the socket segment (in place of TX RX or common)
Here are some examples (hex base):
0 40 WIZ @COMMON DUMP --- dump the common registers
0 30 WIZ 2 SOCKET DUMP --- dump socket 2 registers
0 100 WIZ 3 SOCKET @TX DUMPA --- dump the first 256 bytes of socket 3 transmit buffer
Note: There is no need to continue to continue to specify WIZ or other modifiers unless necessary, so:
0 40 WIZ 4 SOCKET @RX DUMPA --- dump some of the receive buffer for HTTP
0 200 DUMPA --- dumps more of the receive buffer for HTTP
So you can also type it like this:
WIZ 4 SOCKET @RX
0 40 DUMPA
0 200 DUMPA
greeting
I had a feeling you where not couting sheep. Thanks for the W5500 additions.
I have a DEO Nano, can I play with this Tachyon super cog too and new W5500 driver?
There is a W5500 in the Dropbox and the current testing version in Google docs (via the link page). When I get away from this PC and sit down in front of my system I will tidy up the DE0 files although this isn't really required of course. I need to draw a quick diagram of the connections though.
Although I could work full time as I like I prefer "my time" where I choose a balance of current work, future work, and play work which might and does result in future work. If it's so much fun then it's hardly work so could you call it a job?
I keep my life fairly simple without stressing everyday about overheads and commitments and since I get to decide what I will or won't work on and how to do it then I choose the ones that are a balance between money and fun. But as much as you might refuse to believe that it's entirely to do with working in Forth I however find that since I have the most fun with Forth bringing new boards and chips to life that this then is also the most productive.
As I mentioned elsewhere it's not just about the "language" because you can't really compare Forth with traditional PC hosted languages/compilers, it's not the same thing. So while a target hosted Forth certainly does appear more primitive than a PC hosted Gigabyte compiler IDE it is also far more interactive and close to the silicon. I can hook-up a new chip and be "talking" to it within minutes discovering a lot more about it then can be gleaned and precompiled from a datasheet or accessing a driver or lib obect. In this manner I come up with alternative methods of accessing it and adapting the "language" so if it's the WIZnet chip for instance then I get to talk to it and it tells me all about itself and how it's coping, a real heart to heart if you could imagine it that way. So I know the things it likes, what it doesn't like, and little secrets that you can only know about if you get close and cosy. I hear it complain so I want to know what's wrong, I ask it, maybe a quick one-liner or something, and it tells me so I can make it better
Now what I said may be seem to be overly metamorphosing but it's hard to explain what that "something about Forth" thing is unless you really actually seriously get into it. I've had many traditional programmers and engineers who have watched over my shoulder as I turn a newborn shoebox prototype into a chatty can-do within hours if that even, and they are usually shaking their heads in utter disbelief. Unfortunately the greater percentage are "stuck" with their traditional ways of programming and like learning a foreign language are too caught-up in comparing back to what they already know rather than being immersed in the "culture" where when you get the way of thinking, then speaking the language follows easily.
Do you mind if I pusblish the decompiled+disassembled list of Tachyon Forth based on the development system that I've designed. And if permissible I'll post the execution file so that one can see it clearly. Does Tachyon Forth follow the GPL (General Public Licience) rule?
holi
Hi holi, thought I recognized you, venturing across into Propeller land
I haven't assigned any license to Tachyon, it's more like "use it how you want" and so there is absolutely no problem with whatever you want to do with it but let us know how you go with it though.
hi, Forther
Those who are interested in this decompiled+disassembled list could find it here:
tech.groups.yahoo.com/group/armForth/files choose parallex propeller
where you can find TachyonForthLST1.f
or if you're interested in the execution file, just download
TACHYONFORTH1.EXExxx
and remove the xxx at the end of the execution file.
It can be executed under windows XP where win32for 4.2.67x resides.
++++ You have to sign in as a member to read the file. ++++
I don't want to start another language war but I think most of what you're describing is true of any interactive language. It is certainly true of that Javascript interpreter Heater is always talking about. However, I think Tachyon seems to fit the Propeller quite well and is probably a wonderful environment for someone familiar with Forth or interested in learning it.
I always think of what I do as more like 'structured play' rather than work.
Sandy
Look, isn't Tachyon Forth specific to the Propeller? So I'm not talking about programming in general although I prefer the speed and small footprint of Forth in typical embedded systems. Javascript needs lots of memory and grunt to run and then it just ain't fast at all. Those embedded systems that are capable of supporting Linux etc are a different kettle of fish and I use the language that best suits that board and application. To me coding in any language is a way of getting the job done so it's a matter of picking the right tools. On really small embedded systems I prefer to just code in assembler and so I know what I'm dealing with. I don't think I've ever bothered to code any real projects in Forth on an existing O/S but only those ones where it makes sense and to me the Propeller is one of those. So pretty much any smaller 16/32-bit system with at least 32K RAM perhaps would be a good candidate for Forth IMO.
which is out the latest Archive.zip for TACHYON?
I want no vga in the forth!
Thank you.
why is that?
which terminal you used to represent the green startup screen?
thank you
Check Peter's signature.
The (latest) binary in signature is with no vga and auto detects the 5/10 MHz Xtal. Simply connect a terminal (teraterm in Windows is a good start) and set it to 230400.
Massimo
thanks you
is the spin from Library-Propellertool
Thank you.
As Massino said:
Check Peter's signature (Peter is the creator of Tachyon)
gruss
VGA.fth
or how this "fth" be loaded?
Thank you.