From: Enoch <ix...@ho...> - 2013-04-01 05:29:29
|
Hello Matthias & All: Here's a useful word to add to our lib (IMHO). Regards, Enoch. P/S ( f-addr count ) is produced by s" ---------------------------------------------------------------------- \ copy "count" bytes from Flash to RAM : imove ( f-addr count addr -- ) swap 0 ?do over i 2/ + @i i 1 and if >< then over i + c! loop 2drop ; |
From: Matthias T. <mt...@we...> - 2013-04-01 13:08:24
|
Hi Enoch, > : imove ( f-addr count addr -- ) Its already there: copy-string in lib(ans94/core/evaluate.frt and environment-q.frt I shoiuld extract the code (and rename it to something better what about iplace? it resembles place and indicates the i-memory.) Matthias |
From: Enoch <ix...@ho...> - 2013-04-01 14:28:01
|
Matthias Trute <mt...@we...> writes: >> : imove ( f-addr count addr -- ) > > Its already there: copy-string in lib(ans94/core/evaluate.frt > and environment-q.frt > > I shoiuld extract the code (and rename it to something better > what about iplace? it resembles place and indicates the > i-memory.) Hello Matthias, As a general rule we should prefer picking names resembling those already in Forth 2012 RC1 -- I guess that I am not the only one keeping this doc at my fingertips when coding :-) That's the only reason I chose a variant of the word MOVE. ICOMPARE is a good example. Regards, Enoch. |
From: Rafael G. <ast...@ya...> - 2013-04-01 16:20:50
|
Maybe it is a trivial observation, but I see that 2/ is a bad idea for addresses > 32KWhatever (bytes or words) since sign propagation will produce an incorrect address. I defined u2/ myself for that purpose. cheers Rafael ________________________________ De: Enoch <ix...@ho...> Para: amf...@li... Enviado: Lunes 1 de abril de 2013 7:29 Asunto: [Amforth] Quite trivial Hello Matthias & All: Here's a useful word to add to our lib (IMHO). Regards, Enoch. P/S ( f-addr count ) is produced by s" ---------------------------------------------------------------------- \ copy "count" bytes from Flash to RAM : imove ( f-addr count addr -- ) swap 0 ?do over i 2/ + @i i 1 and if >< then over i + c! loop 2drop ; ------------------------------------------------------------------------------ Own the Future-Intel® Level Up Game Demo Contest 2013 Rise to greatness in Intel's independent game demo contest. Compete for recognition, cash, and the chance to get your game on Steam. $5K grand prize plus 10 genre and skill prizes. Submit your demo by 6/6/13. http://p.sf.net/sfu/intel_levelupd2d _______________________________________________ Amforth-devel mailing list for http://amforth.sf.net/ Amf...@li... https://lists.sourceforge.net/lists/listinfo/amforth-devel |
From: Enoch <ix...@ho...> - 2013-04-01 16:41:19
|
Rafael Gonzalez <ast...@ya...> writes: > Maybe it is a trivial observation, but I see that 2/ is a bad idea for addresses > 32KWhatever (bytes or words) > since sign propagation will produce an incorrect address. I defined u2/ myself for that purpose. Good point, thanks! Interestingly, RC1 does not address this important issue of sign extension. Yes, we should have u2/ in our lib as well. Regards, Enoch. > ________________________________ > De: Enoch <ix...@ho...> > Para: amf...@li... > Enviado: Lunes 1 de abril de 2013 7:29 > Asunto: [Amforth] Quite trivial > > Hello Matthias & All: > > Here's a useful word to add to our lib (IMHO). > > Regards, Enoch. > > P/S ( f-addr count ) is produced by s" > > ---------------------------------------------------------------------- > > \ copy "count" bytes from Flash to RAM > : imove ( f-addr count addr -- ) > swap 0 ?do > over i 2/ + @i > i 1 and if >< then > over i + c! > loop > 2drop > ; > > > ------------------------------------------------------------------------------ > Own the Future-Intel® Level Up Game Demo Contest 2013 > Rise to greatness in Intel's independent game demo contest. > Compete for recognition, cash, and the chance to get your game > on Steam. $5K grand prize plus 10 genre and skill prizes. > Submit your demo by 6/6/13. http://p.sf.net/sfu/intel_levelupd2d > _______________________________________________ > Amforth-devel mailing list for http://amforth.sf.net/ > Amf...@li... > https://lists.sourceforge.net/lists/listinfo/amforth-devel > ------------------------------------------------------------------------------ > Own the Future-Intel® Level Up Game Demo Contest 2013 > Rise to greatness in Intel's independent game demo contest. > Compete for recognition, cash, and the chance to get your game > on Steam. $5K grand prize plus 10 genre and skill prizes. > Submit your demo by 6/6/13. http://p.sf.net/sfu/intel_levelupd2d |
From: Matthias T. <mt...@we...> - 2013-04-02 18:08:37
|
Hi, > Maybe it is a trivial observation, but I see that 2/ is a bad idea for > addresses > 32KWhatever (bytes or words) since sign propagation will > produce an incorrect address. I defined u2/ myself for that purpose. Its not the address but the size information. The chances are too little to hit this bug (you need plenty of external RAM for this). Matthias PS: Another simple (but not trival) update is http://amforth.sourceforge.net/TG/recipes/RAM-Efficiency.html |
From: Rafael G. <ast...@ya...> - 2013-04-03 08:02:11
|
Sorry, I was referring to Flash addresses. :-) ________________________________ De: Matthias Trute <mt...@we...> Para: Everything around amforth <amf...@li...> Enviado: Martes 2 de abril de 2013 20:08 Asunto: Re: [Amforth] Quite trivial Hi, > Maybe it is a trivial observation, but I see that 2/ is a bad idea for > addresses > 32KWhatever (bytes or words) since sign propagation will > produce an incorrect address. I defined u2/ myself for that purpose. Its not the address but the size information. The chances are too little to hit this bug (you need plenty of external RAM for this). Matthias PS: Another simple (but not trival) update is http://amforth.sourceforge.net/TG/recipes/RAM-Efficiency.html ------------------------------------------------------------------------------ Minimize network downtime and maximize team effectiveness. Reduce network management and security costs.Learn how to hire the most talented Cisco Certified professionals. Visit the Employer Resources Portal http://www.cisco.com/web/learning/employer_resources/index.html _______________________________________________ Amforth-devel mailing list for http://amforth.sf.net/ Amf...@li... https://lists.sourceforge.net/lists/listinfo/amforth-devel |
From: Enoch <ix...@ho...> - 2013-04-02 19:26:53
|
Matthias Trute <mt...@we...> writes: >> Maybe it is a trivial observation, but I see that 2/ is a bad idea for >> addresses > 32KWhatever (bytes or words) since sign propagation will >> produce an incorrect address. I defined u2/ myself for that purpose. > > Its not the address but the size information. The chances are too little to > hit this bug (you need plenty of external RAM for this). Hello Matthias, What I expressed support for was adding u2/ to the standard, as recommended by Rafael. People with strictly typed language experience may easily forget about this subtle point. Regards, Enoch. |