EMC: 03cradek 07TRUNK * 10emc2/src/emc/rs274ngc/interp_read.cc:
EMC: add semicolon comment character: the semicolon and everything after it
EMC: on the line is disregarded.
hmmm. what happens if there's a semicolon inside a () comment?
g0(;)x0 is an interesting case
what should it do?
presumably, (msg, change tools; then hit START) would also give an error
assuming that an unclosed () is an error
"If more than one comment appears on a line, only the last one will be used; each of the other comments will be read and its format will be checked, but it will be ignored thereafter. It is expected that putting more than one comment on a line will be very rare."
that tells me that only the last comment will be executed (if it's a MSG or DEBUG), but multiples are supposed to be accepted, presumably intespersed with G-code wirds
"If each group is kept in order or reordered without changing the meaning of the line, then the three groups may be interleaved in any way without changing the meaning of the line. For example, the line "g40 g1 #3=15 (foo) #4=-7.0" has five items and means exactly the same thing in any of the 120 possible orders (such as "#4=-7.0 g1 #3=15 g40 (foo)") for the five items."
also from the MIST page
since ; was an illegal character I thought this was trivial
but (...;...) was not illegal and I changed its behavior
* cradek grumbles
indeed. that's a tough one unless there's a "preprocessor" that removes comments
in which case the semicolon code can go just after that
yeah maybe I just put it in the wrong place
I think I have the right fix now
can you also test it?
um - unfortunately not at the moment
I should be able to boot up the latop pretty quickly though - hang on
I tried all the combinations I can think of, but it would be better if someone who doesn't know how the code works would try to break it
my sledgehammer is booting, sim only
EMC: 03cradek 07TRUNK * 10emc2/src/emc/rs274ngc/ (rs274ngc.hh interp_read.cc interp_array.cc):
EMC: SWPadnos pointed out the trouble case G(;)0X1 in my previous attempt at
EMC: semicolon comments. I think this is a correct implementation now...
interesting: g()0x0 is an error, and it was before I messed with stuff
"bad number format"
I think the parens are significant, even though they generate no actions
the thing after a G has to be a number
I guess you can't put comments anywhere. I did not know this.
though it can be G#123
it has to evaluate to a number, I guess
g0()x0 is fine, g()0x0 is not
yeah, that is interesting - comments aren't as freeform as whitespace
whereas most computer languages treat comments as whitespace for the most part
I don't like it, but I'm not going to fix it
I'm 90% sure this is now as right as it can get
thanks for pointing out (msg,a;b) which is the way someone might have run into the bug I wrote
nevermind - typo on my part
I'm testing without having peeked at the last change, so I[m a little handicapped :)
g0x0(msg,pay attention; I'm important)
I tried this kind of stuff
g0 x1 (msg, hi there; how's life?) y1
ok, I've tried semicolons at the beginning and in the middle of a line, and inside comments
I tried inside 
plus semicolon then comment (with or without semicolon), and comment (with or without semicolon) then semicolon
ah - I haven't tried any equation stuff yet
but it seems right now
some of the cases are probably very rare but it's good if they do the least surprising thing
do you recall the format for printing variables/equations in messages?
or was that taken out/never finished?
ah, so that's debug :)
also (print,#1) for stdout (or is it stderr?)
also probe or log or something like that
it always takes me a few tries to figure out it's spelled atan[-1]/[-1]
if you don't find anything, I'm calling it good
I haven't yet - looks good to me
thanks very much for looking
sure. thanks for coding :)
it was a surprisingly hard change
yeah - I figured it might be - that's why I was scared to do it :)
fools rush in
I'vehad to deal with that kind of thing on an AVR (in assembly language) for a serial protocol
the avr's interrupt-when-character-received-so-you-better-do-something-with-it-fast is a real challenge
though I think the serial port was polled in this case - the 1 KHz control interrupt was more important than the serial commands
just be glad you have a uart
yes, with a one-byte buffer
I can't believe people still bit-bang serial on pics
bit-banging is so much less fun
not much choice, is there? ;)
well, the choice is don't use a pic
oh, well there is that option
that's the one I've used since the AVR appeared
I sure like gcc+avr more than writing assembler. I've done enough f8 and pic assembler for a whole lifetime
I was so happy to see a microcontroller that knew how to use its carry bit
F8 - I don't think I've used that one
it's very old
I've heard of H8 and Z8, but not F8 :)
ok, that explains the F
production 1Q 1975
damn, it's almost as old as me
the best part was having no stack
two PCs, they swapped when you called a subr or an interrupt happened
if you have intrs and subrs (just one level of course) both, it's a bit tedious
ouch - better be sure you only use one call level
swapping register sets is somewhat better (but then communications between interrupt and foreground contexts become difficult)
you could manage two if you mask intrs while you shuffle around the return PCs
was there a "load PC" command?
other than call
I was pretty fluent - and now I sure appreciate gcc+avr
yes there's jmp
wonder if the instruction set is *anywhere* online
I suppose I should actually use that combo some time, and also get gcc/ARM working sometime soon
you do avr but not with gcc?
[04:58:30] <cradek> http://www.nyx.net/~lturner/public_html/F8_ins.html
I was just about to paste that ;)
I did a lot of projects without an assembler too... hand assembled
eek - that's going a bit overboard if you ask me
for most stuff, I could program it directly in hex, typing into the eprom programmer's editor
I've only done that a little on (a) an exidy sorceror (Z80) and the Heathkit HERO-1 robot (6809 I think)
wrote a f8 table for tasm later... luxury!
(or was that a later HERO that talked?)
this one talked, but you had to be careful
we had a program that used the interrupt from the sonar sensor to trigger some speech
unfortunately, we had forgotten a "I'm already talking" flag
my favorite F8 project is probably the wwvb clock on http://timeguy.com/cradek/clocks
and the actualy speech was done in the interrupt routine
but we were smart enough to clear the interrupt flag so we could be re-interrupted ...
"Welcome to the Welcome to Welcome Welcome Welcome to the computer room to the computer room to the computer room the computer room computer room" ...
we also realized at that point that people have two legs
and the HERO is short ...
well the average number of legs is less than 2
same as arms
hey it's another leap year, I should fix that other clock I never quite got right...
as long as you don't have to do F8 machine code
I made this other one in late '04 and '04 ran out before I fixed it
and I really didn't feel like setting up a wwvb signal emulator
that's the timecode broadcast?
a lot of my clocks receive and decode that
it's really nice to not have to set them
and if some genius changes the DST rules they just work
(but, so far I've hardcoded central timezone since they're not for sale)
hi guys... been having fun with a pdf to gcode converter... http://filebin.ca/beeovj/map.ngc
LawrenceG: I saw your screenshot - pretty cool
is that Comic Sans on the CRT clock?
somehow pdf seems like a strange part description language though :-)
fenn: no, I digitized my own handwriting
cradek: I sent the source to the pstoedit developer... hope it gets added
* fenn rtfwp's
ps is wierd... not my kind of language... although it does resemble rpn
if you're an rpn fan, the new HP35S is not bad at all
I'd rather they had rereleased the 15C though... that would be great
my 28S/28C seem to work fine
still have my hp35....
but a little slow
I have several 32sii - a very great calculator
I know what I should do - go to bed
good plan. good night all
alex_jon1 is now known as alex_joni
EMC: 03jepler 07TRUNK * 10emc2/src/.swish_config: additional items to ignore
Just this once .. here's the log: http://www.linuxcnc.org/irc/irc.freenode.net:6667/emcdevel/2008-02-05.txt
heh Looking at the emc2 code base (under protest), it *might* be possible to build
(sorry my connection was down.. )
now I'm up to date with emails
EMC: 03flo-h 07TRUNK * 10emc2/src/emc/usr_intf/stepconf/ (stepconf.py stepconf.glade): set some labels which are not shown to untranslateable, so they dont show up in the .po file