photog.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
A place for your photos and banter. Photog first is our motto Please refer to the site rules before posting.

Administered by:

Server stats:

247
active users

#forth

3 posts3 participants0 posts today
Wintermute_BBS<p>Yay! 🥳 </p><p>I just made my <a href="https://oldbytes.space/tags/TTGO" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>TTGO</span></a> <a href="https://oldbytes.space/tags/VGA32" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>VGA32</span></a> use the <a href="https://oldbytes.space/tags/esp32forth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>esp32forth</span></a> variant with <a href="https://oldbytes.space/tags/fabgl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>fabgl</span></a> enabled (a.k.a. <a href="https://oldbytes.space/tags/ESP32forthStation" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32forthStation</span></a> ) *and* properly recognize the onboard <a href="https://oldbytes.space/tags/sdcard" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>sdcard</span></a> !!</p><p>In the end the modification was quite simple, I had to tell the TTGO VGA32 the proper SPI pin configuration for the sd card via SPI.begin() and added that code to the SD.begin word definition.</p><p>By default, SD.begin would use the <a href="https://oldbytes.space/tags/esp32" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>esp32</span></a> default SPI pin configuration which is not being used on the TTGO VGA32 (see TTGO VGA32 pinout).</p><p>EDIT: but it took me hours to realize that I used a video resolution which consumed too much memory, causing each attempt to do a "SD.begin" in ESP32forth to fail ... lowering the resolution to 640x200@60 did do the trick! 😎 </p><p>Time to go to bed ... 🥱 </p><p><a href="https://oldbytes.space/tags/Arduino" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Arduino</span></a> <br><a href="https://oldbytes.space/tags/Forth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Forth</span></a></p>
Wintermute_BBS<p>One of the things that annoyed me when using <a href="https://oldbytes.space/tags/ESP32forth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32forth</span></a> is that with recent versions of the <a href="https://oldbytes.space/tags/ArduinoIDE" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ArduinoIDE</span></a> it is no longer possible to use plugins for uploading additional files to the <a href="https://oldbytes.space/tags/SPIFFS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SPIFFS</span></a> partition of the ESP32.</p><p>There is a workaround solution for ESP32forth that allows a user to copy-paste code into the terminal, which is then stored on the filesystem - but that didn't convince me.</p><p>So I spent the last two days tinkering with mkspiffs and esptool.py and finally found a way to not only upload files to the SPIFFS partition but also dumping files *from* that partition back to your computer. All from the command line, no ArduinoIDE and plugins required - see below:</p><p>* Prerequisites:</p><p>- Compile mkspiffs with SPIFFS_OBJ_META_LEN set to 4 in include/spiffs_config.h</p><p>( <a href="https://github.com/igrr/mkspiffs.git" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">github.com/igrr/mkspiffs.git</span><span class="invisible"></span></a> )</p><p>- esptool.py installed on your system</p><p>* Info on ESP32forth SPIFFS partition:</p><p>SPIFFS offset (start of fs): 0x210000<br>SPIFFS size: 0x1E0000 (decimal: 1966080)<br>SPIFFS end of fs: 0x3effff</p><p>* Build SPIFFS image and flash to ESP32:</p><p>mkspiffs -c &lt;some_directory_containing_files&gt; -b 4096 -p 256 -s 0x1e0000 spiffs.bin<br>esptool.py --port /dev/&lt;ESP32_serial_device&gt; --chip esp32 write_flash -z 0x210000 spiffs.bin</p><p>* Dump SPIFFS partition from ESP32 to disk:</p><p>esptool.py --port /dev/&lt;ESP32_serial_device&gt; --baud 921600 read_flash 0x210000 0x1e0000 data.img</p><p>* Extract files from dumped partition:</p><p>mkspiffs -u &lt;some_directory&gt; data.img</p><p><a href="https://oldbytes.space/tags/ESP32" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ESP32</span></a> <br><a href="https://oldbytes.space/tags/Forth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Forth</span></a> <br><a href="https://oldbytes.space/tags/ueforth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ueforth</span></a></p>
Wintermute_BBS<p>After two weeks of not doing anything technical but enjoying my vacation, I have been tinkering with my <a href="https://oldbytes.space/tags/ForthDeck" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ForthDeck</span></a> again, adding another 64 blocks (64K) of EEPROM based block storage to it, which I connected via the I2C bus.</p><p><a href="https://oldbytes.space/tags/Forth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Forth</span></a> <br><a href="https://oldbytes.space/tags/My4TH" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>My4TH</span></a><br><a href="https://oldbytes.space/tags/Hardware" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Hardware</span></a></p>
Csepp 🌢<p><span class="h-card" translate="no"><a href="https://merveilles.town/@bouncepaw" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>bouncepaw</span></a></span> They don't really need to be objects, just redefinable. You could do some very nifty tricks if you were to redefine flow control words in <a href="https://merveilles.town/tags/Forth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Forth</span></a>. :moomin_hmm:</p>
Devine Lu Linvega<p>Our submission for <a href="https://merveilles.town/tags/Catjam" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Catjam</span></a> is complete! <span class="h-card" translate="no"><a href="https://merveilles.town/@rek" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>rek</span></a></span> and I set out to make a little platformer game in a <a href="https://merveilles.town/tags/forth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>forth</span></a>-like language. We made it a tough parkour type little game, give it a shot! Try to finish it in less than a minute. If you record yourself doing it in less than 45 seconds, send us a link and we'll put it in the game description :maru: </p><p>play: <a href="https://hundredrabbits.itch.io/polycat" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">hundredrabbits.itch.io/polycat</span><span class="invisible"></span></a><br>source: <a href="https://git.sr.ht/~rabbits/polycat" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">git.sr.ht/~rabbits/polycat</span><span class="invisible"></span></a><br>video: <a href="https://www.youtube.com/watch?v=kzH6GchYMNM" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">youtube.com/watch?v=kzH6GchYMN</span><span class="invisible">M</span></a></p>
circfruit<p>😂 I finally managed to light the green LED on <a href="https://fosstodon.org/tags/ch32v003" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ch32v003</span></a> using <a href="https://fosstodon.org/tags/forth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>forth</span></a> For some reason pasting is breaking on “0x”, possibly interpreting it as newline. I have to find workaround because typing those hexes every time will drive me crazy.</p>
Wintermute_BBS<p>Keep it simple!</p><p><a href="https://www.youtube.com/watch?v=UAxXuz9945g" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">youtube.com/watch?v=UAxXuz9945</span><span class="invisible">g</span></a></p><p><a href="https://oldbytes.space/tags/Forth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Forth</span></a><br><a href="https://oldbytes.space/tags/Programming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Programming</span></a> <br><a href="https://oldbytes.space/tags/RetroCoding" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>RetroCoding</span></a></p>
Feoh<p><span class="h-card" translate="no"><a href="https://oldbytes.space/@Wintermute_BBS" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>Wintermute_BBS</span></a></span> Just saw this video and thought of you:</p><p><a href="https://youtu.be/FY2WYXOdXoM?si=YGXzn-gaikqG8oG0" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">youtu.be/FY2WYXOdXoM?si=YGXzn-</span><span class="invisible">gaikqG8oG0</span></a></p><p>Therre's a new programming language for <a href="https://oldbytes.space/tags/music" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>music</span></a> written by the guy who wrote <a href="https://oldbytes.space/tags/Supercollider" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Supercollider</span></a>, and it's a <a href="https://oldbytes.space/tags/FORTH" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FORTH</span></a>!</p><p>[EDIT/UPDATE: It's apparently not <em>precisely</em> a FORTH because it includes lexically scoped variables, so it's FORTH-like.]</p><p>How cool is that?</p><p>I can't wait to have time to play with it. When I think about it, stack based programming would lend itself to all kinds of creative generative sound and music experimentation very well I think!</p>
Wintermute_BBS<p>Hmm ... first, the german <a href="https://oldbytes.space/tags/Forth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Forth</span></a> society (Forth Gesellschaft e.V.) take down their <a href="https://oldbytes.space/tags/website" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>website</span></a> due to a "legal dispute" and now, all of a sudden, the website of the <a href="https://oldbytes.space/tags/Forth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Forth</span></a> <a href="https://oldbytes.space/tags/Interest" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Interest</span></a> <a href="https://oldbytes.space/tags/Group" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Group</span></a> (FIG) is offline.</p><p>Could this be related? And if so, what the heck is going on?!</p>
McNige 🇳🇿🏴󠁧󠁢󠁳󠁣󠁴󠁿🇬🇧<p>Meanwhile in Queensferry:<br>The air sea rescue helicopter pilot notices a wasp in the cockpit.</p><p><a href="https://mastodon.scot/tags/Wildlife" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Wildlife</span></a> <a href="https://mastodon.scot/tags/art" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>art</span></a> <a href="https://mastodon.scot/tags/Photography" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Photography</span></a> <a href="https://mastodon.scot/tags/Forest" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Forest</span></a> <a href="https://mastodon.scot/tags/Wood" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Wood</span></a> <a href="https://mastodon.scot/tags/Wild" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Wild</span></a> <a href="https://mastodon.scot/tags/summer" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>summer</span></a> <a href="https://mastodon.scot/tags/loch" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>loch</span></a> <a href="https://mastodon.scot/tags/history" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>history</span></a> <a href="https://mastodon.scot/tags/scotland" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>scotland</span></a> <a href="https://mastodon.scot/tags/wild" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wild</span></a> <a href="https://mastodon.scot/tags/nature" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>nature</span></a> <a href="https://mastodon.scot/tags/PhonePic" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>PhonePic</span></a> <a href="https://mastodon.scot/tags/sunset" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>sunset</span></a> <a href="https://mastodon.scot/tags/sunrise" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>sunrise</span></a> <a href="https://mastodon.scot/tags/queensferry" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>queensferry</span></a> <a href="https://mastodon.scot/tags/phonephotography" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>phonephotography</span></a> <a href="https://mastodon.scot/tags/bridge" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>bridge</span></a> <a href="https://mastodon.scot/tags/helicopter" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>helicopter</span></a> <a href="https://mastodon.scot/tags/edinburgh" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>edinburgh</span></a> <a href="https://mastodon.scot/tags/forth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>forth</span></a></p>
Mark Mullen<p><a href="https://mastodon.sdf.org/tags/Forth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Forth</span></a> <a href="https://mastodon.sdf.org/tags/4th" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>4th</span></a> <a href="https://mastodon.sdf.org/tags/4July" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>4July</span></a> <a href="https://mastodon.sdf.org/tags/4thOfJuly" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>4thOfJuly</span></a> <a href="https://mastodon.sdf.org/tags/USA" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>USA</span></a> <a href="https://mastodon.sdf.org/tags/Independence" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Independence</span></a> <a href="https://mastodon.sdf.org/tags/Democracy" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Democracy</span></a> <a href="https://mastodon.sdf.org/tags/NoKings" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>NoKings</span></a> <a href="https://mastodon.sdf.org/tags/Trump" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Trump</span></a> <a href="https://mastodon.sdf.org/tags/Fascism" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Fascism</span></a></p>
Devine Lu Linvega<p><a href="https://merveilles.town/tags/Catjam" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Catjam</span></a> is starting tomorrow and runs until september 1st! </p><p>We ran this informally last year for the first time, and it's happening again. If you've ever thought about learning a bit of <a href="https://merveilles.town/tags/forth" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>forth</span></a>, <a href="https://merveilles.town/tags/joy" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>joy</span></a>, <a href="https://merveilles.town/tags/postscript" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>postscript</span></a>, <a href="https://merveilles.town/tags/uxn" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>uxn</span></a> or any other language of the family by making a game, now's the time to do with others!<br><a href="https://concatenative.org/wiki/view/Events" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">concatenative.org/wiki/view/Ev</span><span class="invisible">ents</span></a></p>
Continued thread

So this is very strange, it seems the single wire UART on #ch32v003 D6 pin works ONLY right after I flash #forth on the board. After I physically reconnect usb-to-uart connector, there’s no change I connect to the single wire UART of the microcontroller. I wonder if flashing sticks a pin into a state which enables the UART and after I reconnect I can’t get this state back. Very weird.

So I managed to compile and flash #Forth on #ch32v003, but the code is made so pd6 is half-duplex one wire UART. I’m not sure if I should connect pull-up resistor but I did a 10k ohm one. Still I managed to get it respond only once. IT seems it’s a HW issue of the UART being unstable.

I am happy to announce the release of a longwave software defined radio which I designed at work for experiments with #DSP algorithms, running on the #ULX3S #FPGA board. The user interface is based on #Mecrisp #Forth running on the #FemtoRV, and the signal chain contains a pipelined FFT designed by Dan Gisselquist. Many thanks to Ulixxe for their USB-CDC implementation!

github.com/mb-sat/ulx3s-longwa
codeberg.org/Mecrisp/ulx3s-lon

So here's an idea i had that i'm almost certainly not going to do anything with (so you should). With AVX-512 we have 16 x 32-bit registers. Let's pretend that's a 16-deep stack. The permute instruction let us do a DROP and DUP (except, you'd probably want to ROLL them, but whatever). I'm imaging that top-of-stack would always be register 0; PUSHing something permutes all the registers 1-higher and replaces register 0. Now implement a FORTH.
#AVX512 #FORTH