WickedShell has quit [Remote host closed the connection]
Zarutian_HTC has joined #forth
jsoft has joined #forth
boru` has joined #forth
boru has quit [Disconnected by services]
boru` is now known as boru
<tabemann>
back
[1]MrMobius has joined #forth
MrMobius has quit [Ping timeout: 240 seconds]
[1]MrMobius is now known as MrMobius
jsoft has quit [Ping timeout: 264 seconds]
Zarutian_HTC has quit [Remote host closed the connection]
Gromboli has quit [Read error: Connection reset by peer]
sts-q has quit [Ping timeout: 265 seconds]
sts-q has joined #forth
gravicappa has joined #forth
cp- has quit [Ping timeout: 260 seconds]
cp- has joined #forth
cp- has quit [Ping timeout: 260 seconds]
cp- has joined #forth
hosewiejacke has joined #forth
lispmacs has joined #forth
<lispmacs>
hi, I'm working with a forth that has a ." but not a .\", but I wanted to print the \e escape character. Is there some other trick to do this?
<siraben>
lispmacs: you could emit the character
<siraben>
`42 emit * ok`
<siraben>
that's what gforth gives me for instance
Vedran has quit [Read error: Connection reset by peer]
Vedran has joined #forth
<lispmacs>
okay, thanks. This does seem to emitting the character (0x1b) though not having the expected effect when trying something like \e[35m.
<lispmacs>
I am trying to do ansi color codes. .\" \e[35m" changes the color to purple, but not trying to do the same thing with emit, for some reason
<lispmacs>
*not when
<lispmacs>
oh wait, I think I just had the color code wrong
gravicappa has quit [Ping timeout: 256 seconds]
gravicappa has joined #forth
jsoft has joined #forth
gravicappa has quit [Ping timeout: 260 seconds]
xek has joined #forth
mtsd has joined #forth
xek has quit [Ping timeout: 260 seconds]
xek has joined #forth
mtsd has left #forth ["Leaving"]
xek has quit [Remote host closed the connection]
xek has joined #forth
MrMobius has quit [Read error: Connection reset by peer]
MrMobius has joined #forth
xek has quit [Ping timeout: 264 seconds]
lisbeths has joined #forth
lisbeths has quit [Remote host closed the connection]
dave0 has joined #forth
gravicappa has joined #forth
jsoft has quit [Ping timeout: 256 seconds]
Gromboli has joined #forth
xek has joined #forth
xek_ has joined #forth
xek has quit [Ping timeout: 265 seconds]
MrMobius has quit [Read error: Connection reset by peer]
dave0 has quit [Quit: dave's not here]
<lispmacs>
yeah, seems to be working fine using emit. I just have to be sure to use a terminal emulator that processes the color escape sequences correctly
<lispmacs>
minicom doesn't work, but screen does
hosewiejacke has quit [Ping timeout: 256 seconds]
hosewiejacke has joined #forth
hosewiejacke has quit [Ping timeout: 246 seconds]
gravicappa has quit [Ping timeout: 256 seconds]
<lispmacs>
and picocom
rixard has quit [*.net *.split]
koisoke has quit [*.net *.split]
KipIngram has quit [*.net *.split]
koisoke has joined #forth
KipIngram has joined #forth
rixard has joined #forth
<lispmacs>
does forth have a word already to print a string from a memory location, stopping at a null byte? Not that it sounds difficult to code...
<siraben>
Nixpkgs should have tilp2 merged sometime soon
<siraben>
lispmacs: what do you use?
<lispmacs>
I was very interested in reprogramming ti calculators for a while last year, but only wanted to use free software tools. I couldn't get tilp2 to work with my ti-92+, unfortunately, so the endeavor is currently shelved
<siraben>
Dang. Didn't work how?
<siraben>
IIRC TI-92+ processor is m68k or something
<siraben>
Yeah just checked
<lispmacs>
it seemed to be a problem with the USB communication. I could us tilp2 fine with my ti-89 titanium
<lispmacs>
but not with the ti-92+
<lispmacs>
I badly wanted to use the ti-92+ instead because of the nice keyboard layout
<siraben>
Right. Looks like qwerty.
<lispmacs>
also, my toddler dropped my ti-89 titanium in the toilet
<siraben>
nooo
<lispmacs>
yeah, that was a sad day
<siraben>
OTOH after programming on my calculator with Forth I can type decently on its A-Z keyboard layout
<siraben>
there's still emulators around fortunately, but it's not like the actual hardware, yeah.
<lispmacs>
yeah, i wrote a tiemu package for guix a while back, but not near as much fun as working with the real hardware
<siraben>
Ah you're a Guix user, nice.
<siraben>
Guix and Nix are close cousins, heh.
<lispmacs>
yes, we owe much to the Nix folks. But Guix is my choice, as a Gnu project, and also with the guile focus
<siraben>
I tried Guix before Nix when I was into GNU and the free software movement, however I just couldn't get it to work on my hardware.
<siraben>
I might try again on my next laptop which hopefully would be blob-free
<lispmacs>
video card and wi-fi drivers would be my first guess without asking
<lispmacs>
Guix uses the linux-libre kernel
<siraben>
I think video was fine, wifi didn't work.
<siraben>
And at the time I didn't know how to write derivations in either Guix or Nix
xek__ has joined #forth
<lispmacs>
that can be a problem for sure. I actually gave up on Wi-fi chips and just started using a TPE-1200 portable wi-fi router, running librecmc in client mode, and connect that via ethernet
<siraben>
Is the Nixpkgs equivalent in Guix strict about non-free software?
xek_ has quit [Ping timeout: 256 seconds]
<lispmacs>
I'm not quite sure I fully understand the question, but guix will allow you to install anything from the guix git repo you are using, and you can use as many as you want. The official guix git repo is a Gnu project and 100% free software
<lispmacs>
you could make your own git repo with some non-free packages. I suppose you would download blobs in the same way that the bootstrap packages do
<lispmacs>
not that I am recommending that :)
<siraben>
lispmacs: Ah right. Is there a community-maintained non-free repository?
<lispmacs>
not that I've heard of. The guix community is general hostile towards the idea, but I haven't gone looking for one. certainly it would be anything the official project would even be willing to mention exists
<lispmacs>
*wouldn't
<siraben>
One thing I hope Nix can learn from Guix is the minimization of the bootstrap.
<lispmacs>
yes, that is an exciting, energetic guix project. janneke is leading the way on that
<siraben>
Yeah I've talked to them on the #bootstrappable channel
<siraben>
They're almost able to achieve a bootstrap using stage0
<lispmacs>
along with the gnu hurd support, which is cool too
<siraben>
They're close, the missing part is a Scheme interpreter in C.
<siraben>
I hope Forth could also replace the bottom parts eventually, heh.
<lispmacs>
I've been a diehard scheme fan, but forth has been an intriguing discovery recently
<siraben>
I'm thinking of bridging the M2-Planet and mes-cc gap with a Scheme interpreter written in a subset of Haskell (which can bootstrap from their basic C compiler), see https://github.com/siraben/compiler
<siraben>
Yeah, it was very pleasant to write a Forth in Scheme in ASM, as well.
<siraben>
As in, existing Z80 assemblers were pretty awful when it came to meta-programming and macros, so naturally Scheme would help with that
<lispmacs>
I can't pretend to be honest that I've ever coded anything significant in any language, but am having fun recently with Forth on Arduino, which might lead to some interesting applications
<siraben>
What Forth implementation are you using?
<lispmacs>
currently Arduino-FVM. it was the easiest choice as it is coded as an Arduino IDE sketch
<siraben>
Arduino is what kind of CPU again?
<lispmacs>
They use the Atmel AVR chips. I'm focusing on the traditional 328P microprocessor, though the mega2560 is a more powerful choice
<lispmacs>
the mega2560 does not have a DIP form, however
<lispmacs>
if you like your chips with DIP
<siraben>
Ah, AVR.
<siraben>
I'm not familiar with what DIP is
<siraben>
Could you cross-compile to AVR using Guix?
<lispmacs>
DIP socket, if you want to be able to push in and pull out your chip
<siraben>
I see
<lispmacs>
siraben: you can certainly use avrdude, gcc-avr, and the arduino-ide (with some extra work) on Guix
<lispmacs>
I believe I could create a guix package to compile specific other software for an AVR chip, but haven't played around with that yet
<siraben>
Right, but in Nix you could cross-compile GNU Hello for example by doing `nix-build . -A pkgs.pkgsCross.avr.hello`
<lispmacs>
i.e., a guix package that would compile some atmel code using avr-gcc
<siraben>
^ that command works because there's a cross-build mechanism in Nixpkgs along with declarations of the GCC or Clang based compiler for each target
<siraben>
Ah so I think Guix might have something similar
<lispmacs>
sorry, you are kind of reaching a little past the limit of my current Guix packaging knowledge
<siraben>
Haha, no problem.
<lispmacs>
I've only written about two or three guix packages
<siraben>
Could you give an example of a simple Guix derivation?
<lispmacs>
I'm sorry, do you mean the package definition itself. (I believe the derivation is the output of the package definition in guix)
<lispmacs>
or were you looking for a command for modifying a derivation?
<lispmacs>
I know guix has some commands for changing a package definition with command line options, like changing the compiler used on the fly, but would have to look that up in the manual
<siraben>
The package definition itself
<lispmacs>
yes, standby
<siraben>
Ah yeah, I got mixed up for a second. Derivation is also the output
<lispmacs[work]>
what is the easiest way to store a string in memory? I know now how to print one that is in a memory location but was wondering about copying one into a memory location
WickedShell has joined #forth
gravicappa has quit [Ping timeout: 260 seconds]
gravicappa has joined #forth
<inode>
CMOVE for the characters alone, or PLACE to write them with a leading count?
<lispmacs[work]>
inode: but, I mean, if the string is not already in memory. like, say, I allocate for myself 6 bytes of memory and want to put the string "hello\0" in it
dys has quit [Ping timeout: 240 seconds]
<inode>
VARIABLE HELLO 6 ALLOT
<inode>
S\" HELLO\0" HELLO SWAP CMOVE
<inode>
HELLO 6 DUMP
dys has joined #forth
<inode>
if you really want that null-terminated string and you have a word like S\" for that purpose
<inode>
but compare that to the dump you might get from S" HELLO" HELLO PLACE instead
<lispmacs[work]>
thx
crc has quit [Read error: Connection reset by peer]
crc has joined #forth
gravicappa has quit [Ping timeout: 260 seconds]
boru` has joined #forth
boru has quit [Disconnected by services]
boru` is now known as boru
xek_ has quit [Ping timeout: 246 seconds]
dave0 has joined #forth
Gromboli_ has joined #forth
jedb has quit [Remote host closed the connection]
jedb has joined #forth
Zarutian_HTC has quit [Remote host closed the connection]