tabemann has joined #forth
lonjil has quit [Remote host closed the connection]
lonjil has joined #forth
boru` has joined #forth
boru has quit [Disconnected by services]
boru` is now known as boru
lonjil has quit [Remote host closed the connection]
<tabemann> tpbsd: I got flash erasure working for zeptoforth on stm32f407
<tpbsd> cool, 'll try it out
<tpbsd> was it a drama ?
<tabemann> it was a stupid bug
<tpbsd> arent most of them ?
<tabemann> yes
<tpbsd> i think my ratio of stupid to real bugs is about 500:1
<tabemann> wait a second
<tabemann> I have to fix something
<tpbsd> no problemo
lonjil has joined #forth
dave0 has quit [Quit: dave's not here]
<tabemann> back
<tabemann> made my fix
<tpbsd> cool
<tabemann> one key thing with cornerstones on the stm32f407 is don't use very many
<tabemann> because they are extremely expensive memory-usage-wise
<tpbsd> i havent used any yet
<tabemann> because all of flash is divided up into just 12 sectors to erase
<tpbsd> k
<tabemann> the first four sectors are 16K, the fifth sector is 64K, the rest are 128K
<tpbsd> instead of all being 16k ?
<tabemann> I had to make the dictionary start at $8000 because otherwise flashing the whole dictionary would mean flashing the kernel
<tabemann> yes
<tpbsd> ugh
<tpbsd> whats it like in your L model ?
<tabemann> 2K sectors
<tabemann> much nicer
<tpbsd> definitely
<tabemann> so basically, don't use cornerstones except to enable erasing everything other than the core libraries
<tpbsd> this was painful by the sounds, I should have just bought a L like you have
<tpbsd> except I dont use the M4's
<tabemann> well it was nice just to motivate myself to work on a port of zeptoforth
<tpbsd> good practice if it catches on
<tpbsd> youll get asked for other versions
<tabemann> I might have to accumulate a stash of different boards
<tpbsd> just tell em to mail you a board and youll work on it
<tabemann> lol
<tpbsd> get the requester to send you a board, thats what people do
<tpbsd> I sent matthias a F0 Disco
<tpbsd> a board is nothing to pay for a Forth port
<tabemann> I can foresee the day someone wants an F0 port
<tpbsd> once I told matthias a board was in the mail he created a port from the specs and emailed it to me before my board reached him and it worked first time
<tpbsd> maybe, they may also want a NXP or a SAM port
<tpbsd> there are cortex-m4's in everything
<tpbsd> matthias wont do SAM becaus eteh flash blocks are too large
<tpbsd> atmel 'samxxx"
<tabemann> erase blocks or write blocks?
<tpbsd> write blocks I think
<tpbsd> theyre pretty big
<tabemann> yeah, big write blocks would be intolerable
<tpbsd> thats the problem with the SAM models
<tabemann> the f407 has the advantage of having really small write blocks (not even blocks per se)
<tpbsd> but it's the erase blocks that are so large ?
<tabemann> yes
<tpbsd> I rarely use cornerstones anyway
<tabemann> but that's less important
<tpbsd> once words are tested I put them in flash
<tpbsd> I develop in ram
<tpbsd> tabemann, do you have a list of error messages you generate ?
<tpbsd> ok
<tpbsd> ok
<tpbsd> over action-sysick-start ! unable to parse: art
<tpbsd> -1 swap action-systick-delay ! sta ok
<tpbsd> du schedule-curren @ unable to parse: du
<tpbsd> 3 pick action-systick-delay @ u>= or and stack underflow
<tpbsd> oops hangon thats my fault I think
<tpbsd> stupid error I loaded the files in the wrong order after automating it
<tpbsd> all ok now :)
rdrop-exit has joined #forth
Zarutian_HTC| has joined #forth
Zarutian_HTC has quit [Read error: Connection reset by peer]
gravicappa has joined #forth
webchat9 has joined #forth
dddddd has quit [Ping timeout: 265 seconds]
aaaaaaaa has joined #forth
webchat9 has quit [Ping timeout: 264 seconds]
mtsd has joined #forth
jn__ has joined #forth
reepca has quit [Read error: Connection reset by peer]
reepca has joined #forth
proteus-guy has quit [Ping timeout: 240 seconds]
proteus-guy has joined #forth
<S-Jack> ""A Forth System without an assembly vocabulary is only slightly better than no forth at all. ""
siraben has quit [Quit: killed]
jimt[m] has quit [Quit: killed]
<rdrop-exit> S-Jack, what's the source for that quote?
WickedShell has quit [Remote host closed the connection]
<tpbsd> it's a good quote in my opinion
jsoft has joined #forth
siraben has joined #forth
jimt[m] has joined #forth
<rdrop-exit> yes, I agree for targets, for PCs though I don't really care anymore
<tpbsd> yeah, nor would I
cp- has quit [Quit: Disappeared in a puff of smoke]
<S-Jack> rdrop-exit: I lost the reference. I have to Google it myself...
<rdrop-exit> ok thanks, I'll try my google-fu
cp- has joined #forth
cp- has quit [Client Quit]
<S-Jack> Please inform us (me) of whatever You find interesting.
<rdrop-exit> ok :)
Keshl has quit [Read error: Connection reset by peer]
Keshl has joined #forth
cp- has joined #forth
xek has joined #forth
tabemann has quit [Ping timeout: 252 seconds]
tabemann has joined #forth
aaaaaaaa is now known as webchat9
webchat9 has quit [Read error: Connection reset by peer]
veltas_ is now known as veltas
webchat9 has joined #forth
dave0 has joined #forth
jsoft has quit [Ping timeout: 240 seconds]
<webchat9> is there any "apropos" word that can be used to search for the dictionary for regexp patterns?
dave0 has quit [Read error: Connection reset by peer]
nonlinear has quit [Quit: Ping timeout (120 seconds)]
nonlinear has joined #forth
dave0 has joined #forth
<rdrop-exit> webchat9, I'd check the docs of your specific Forth, utility words vary widely between systems
<webchat9> yeah, I am asking generally, if anyone has heard of some forth implementation that has such an utility; I wanna take a look to see how it's implemented
<rdrop-exit> When you say search the dictionary, are you searching for word names?
<rdrop-exit> or are you searching the binary for strings?
<rdrop-exit> or are you searching through source?
dddddd has joined #forth
iyzsong has joined #forth
<webchat9> searching for word names
<webchat9> in the dictionary/vocabulary
<rdrop-exit> Look in your Forth for variants of FIND or WORDS that take a regular expression or similar pattern
<rdrop-exit> I've never encountered one myself, but they might exist in some Forths
<webchat9> ok
<webchat9> WORDS looks interesting
proteusguy has quit [Ping timeout: 250 seconds]
proteus-guy has quit [Ping timeout: 256 seconds]
rdrop-exit has quit [Ping timeout: 260 seconds]
rdrop-exit has joined #forth
proteus-guy has joined #forth
proteusguy has joined #forth
jedb_ is now known as jedb
<S-Jack> GForth has a GNU Emacs mode. You could take a look at it (documentation and source).
<webchat9> thanks
mark4 has joined #forth
iyzsong has quit [Ping timeout: 240 seconds]
mtsd has quit [Quit: Leaving]
dave0 has quit [Quit: dave's not here]
cartwright has quit [Ping timeout: 240 seconds]
cartwright has joined #forth
rdrop-exit has quit [Ping timeout: 256 seconds]
rdrop-exit has joined #forth
<tabemann> back
mark4 has quit [Remote host closed the connection]
<tabemann> I have an annoying problem
<tabemann> now that I've got reading bytes over serial working, writing bytes out is causing bytes to be lost when sending lots of data
<tabemann> tpbsd: I'm going off to work in a sec, but I'm just letting you know that from executing WORDS I've noticed issues with outputting large amounts of data at once with zeptoforth
<tabemann> but gotta go
tabemann has quit [Ping timeout: 256 seconds]
jsoft has joined #forth
kori has quit [Ping timeout: 240 seconds]
jsoft has quit [Ping timeout: 256 seconds]
Zarutian_HTC| has quit [Ping timeout: 256 seconds]
rdrop-exit has quit [Quit: Lost terminal]
john_cephalopoda has joined #forth
<john_cephalopoda> Morning
<tpbsd> sure is, it's 0330 here :)
<john_cephalopoda> It's 18:33 here.
<john_cephalopoda> But it's morning in the UGT timezone. https://www.urbandictionary.com/define.php?term=ugt
<tpbsd> ahh I didnt know that
<tpbsd> I generally like to know what tz people are in and anyway if it's not morning, why say it ? why not just say 'greetings' ?
<tpbsd> my usual saying is 'greeting forthlings'
Zarutian_HTC has joined #forth
reepca has quit [Read error: Connection reset by peer]
reepca has joined #forth
webchat9 has quit [Ping timeout: 256 seconds]
WickedShell has joined #forth
<john_cephalopoda> Hm, thinking about what to program.
john_cephalopoda has quit [Read error: Connection reset by peer]
TheCephalopod has joined #forth
xek has quit [Ping timeout: 265 seconds]
gravicappa has quit [Ping timeout: 265 seconds]
TheCephalopod is now known as john_cephalopoda
<Zarutian_HTC> john_cephalopoda: bresenham graphix primitives?
<john_cephalopoda> Oof, those are really annoying to implement. I've tried my hand on those several times.
<Zarutian_HTC> using that book/paper as guide?
<john_cephalopoda> No, just random online descriptions of the algorithm.
<john_cephalopoda> Yeah, I think that's one of the ones I used.
<Zarutian_HTC> which reminds me
<john_cephalopoda> Hm, or actually not. The one I looked at split the line thing into half a dozen different ones.
<john_cephalopoda> I.e. every direction was handled separately. Really complex and clunky.
<Zarutian_HTC> you know how VALUEs are often implemented
<john_cephalopoda> I actually never used the VALUE word, looks a lot like CONST.
<john_cephalopoda> How is it implemented?
<Zarutian_HTC> VARIABLE TO_STATE FALSE TO_STATE : VALUE create 0 , does> TO_STATE @ IF SWAP ! FALSE TO_STATE ! ELSE @ THEN ; : TO TRUE TO_STATE ; \ for example
<Zarutian_HTC> s/TO_STATE :/TO_STATE ! :/
<Zarutian_HTC> now do you know if this pattern has a name?
<Zarutian_HTC> because a few moons ago I thought up and noted down something similar for ?pseudo-pixmaps? (and QuickDraw esque masks)
<Zarutian_HTC> in place of TO I have four ?switch? words
<john_cephalopoda> I'm still trying to figure out what exactly the words do.
<Zarutian_HTC> ( getWidth getHeight getPoint putPoint )
<Zarutian_HTC> the VALUE words were generally used for often read but less frequently written to variables
<Zarutian_HTC> the words after does> run when ever a VALUE word is called
<john_cephalopoda> Ah, so it's practically a locked variable that can only be written to with the TO word?
<Zarutian_HTC> when that code starts it has the address of the VALUE word on top of the stack
<Zarutian_HTC> yebb
<Zarutian_HTC> VALUE bar 42 TO bar \ for an example use
<john_cephalopoda> In what context would that be used?
<john_cephalopoda> I.e. what advantages does it bring over regular variables and '!'?
<Zarutian_HTC> bar then puts 42 onto the stack when no TO was in front of it
<Zarutian_HTC> less @ usage which could mean shorter words and take less space
<Zarutian_HTC> I qm myself dubious about the usefullness of VALUE
<Zarutian_HTC> s/qm/am/
<Zarutian_HTC> but the example impl above demonstrated more easily what I am trying to talk about
<Zarutian_HTC> the idea is to have pixmap defineing words that can make words that act as graphix transforms, colour mapping and clipping masks
<Zarutian_HTC> all those without taking huge memory each for an actual pixels buffer
Lambdajack has joined #forth
S-Jack has quit [Ping timeout: 256 seconds]
john_cephalopoda has quit [Ping timeout: 260 seconds]
jsoft has joined #forth
MrMobius has quit [Read error: Connection reset by peer]