< 1111104169 0 :calamari_!unknown@unknown.invalid PRIVMSG #esoteric :this is a pesky bug to track down < 1111104443 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :is the order of the system variables QGI01234etc significant? < 1111104625 0 :calamari!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1111104677 0 :calamari_!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure anymore < 1111104689 0 :calamari_!unknown@unknown.invalid PRIVMSG #esoteric :I know they need to stay together < 1111104726 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :maybe you could exclude the system variables from the sort < 1111104734 0 :calamari_!unknown@unknown.invalid PRIVMSG #esoteric :I do < 1111104760 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :hmmm... < 1111104847 0 :calamari_!unknown@unknown.invalid PRIVMSG #esoteric :the problem is that there are two different indexes I'm dealing with when rearranging things, and I probably messed it up somewhere < 1111104891 0 :calamari_!unknown@unknown.invalid PRIVMSG #esoteric :the first array "order", gives the original index numbers in the order they are currently in < 1111104942 0 :calamari_!unknown@unknown.invalid PRIVMSG #esoteric :the other "index", gives which index place in "order" that a particular original index is at < 1111104988 0 :calamari_!unknown@unknown.invalid PRIVMSG #esoteric :I need to keep track of the original indexes so that I can test against the interaction list, which uses the original index numbers < 1111105047 0 :calamari_!unknown@unknown.invalid PRIVMSG #esoteric :there is also a "start" list that gives the start positions for each variable < 1111105055 0 :calamari_!unknown@unknown.invalid PRIVMSG #esoteric :sanyhow, afk < 1111105060 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :have fun < 1111105068 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :i gotta go to bed anyhow# < 1111105079 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :...must have breakfast sometime < 1111105084 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :nite all < 1111105315 0 :calamari_!unknown@unknown.invalid PRIVMSG #esoteric :cya raven < 1111105718 0 :calamari_!unknown@unknown.invalid QUIT :"Leaving" < 1111126229 0 :calamari!~calamari@dialup-4.240.241.202.Dial1.Phoenix1.Level3.net JOIN :#esoteric < 1111132799 0 :clog!unknown@unknown.invalid QUIT :ended < 1111132800 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1111135698 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1111135698 0 :clog!nef@bespin.org JOIN :#esoteric < 1111145076 0 :bNk6i6l3lBeZrT7!~opera@ktv560-203-21.catv-pool.axelero.hu JOIN :#esoteric < 1111146071 0 :bNk6i6l3lBeZrT72!~opera@ktv560-203-21.catv-pool.axelero.hu JOIN :#esoteric < 1111146071 0 :bNk6i6l3lBeZrT7!unknown@unknown.invalid QUIT :Read error: 54 (Connection reset by peer) < 1111146075 0 :bNk6i6l3lBeZrT72!unknown@unknown.invalid PRIVMSG #esoteric :Wow! This BF Golf sounds great! < 1111146602 0 :bNk6i6l3lBeZrT72!unknown@unknown.invalid PART #esoteric :? < 1111151884 0 :Keymaker!~nobody@wire74.adsl.netsonic.fi JOIN :#esoteric < 1111151901 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :bNk6i6l3lBeZrT72: it is not bf golf! < 1111151911 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :(yes, i never get tired repeating it..) < 1111151994 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :but either the way, see you there :) < 1111152304 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :f... this is day is annoying.. X{} < 1111152308 0 :Keymaker!unknown@unknown.invalid PRIVMSG #esoteric :bye < 1111152309 0 :Keymaker!unknown@unknown.invalid QUIT : < 1111168770 0 :calamari!~calamari@dialup-4.240.246.0.Dial1.Phoenix1.Level3.net JOIN :#esoteric < 1111168817 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :hello < 1111172584 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :hi there < 1111172967 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :raven: it turns out that the -O3 changes were causing the freezing problem, not the variable optimization < 1111173792 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :raven: can you think of a way to extract digits from a number in forward order? < 1111173844 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :print var is broken for numbers like 255, because it's actually 65535, or whatever the size that the cell is on these bigger interps < 1111173896 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :i'll have a think < 1111173914 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :is this the print decimal value of cell in BF? < 1111173930 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1111173946 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :right now it extreacts the digits in reverse, hardcoded for a max of 3 digits < 1111173967 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :that was fine because I expected the code to be run on an 8-bit cell interp < 1111174113 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :hmm, may have something < 1111174134 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :difficult without a stack < 1111174135 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :65535/10=6553/10=655/10=65/10=6/10=0 .. divided 5 times < 1111174165 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :that's easy enouugh < 1111174188 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :so I start with 1 and multiply back 4 times.. 10*10*10*10=10000 < 1111174203 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :now I can extract the leftmost digit < 1111174750 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :you could do it with DIV and MOD but I can't work out the BF for it < 1111174825 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :div and mod provide a backwards answer < 1111174854 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :that's essentially how it is done now < 1111174916 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :123456 DIV 100000 = 1 < 1111174935 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :oic < 1111174938 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :if num - divisor > 0 num -= divisor < 1111174948 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :divisor /= 10 < 1111174958 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :23456 DIV 10000 = 2 < 1111174965 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :etc < 1111174990 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :it could really be written in bfbasic code, couldn't it? :) < 1111174998 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :maybe that's the best way < 1111175017 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :since it's so complicated < 1111175080 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :diong ot backwards only needs a max of 10 cells for 32-bit < 1111175103 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :but mem use is dependant on cell width :( < 1111175119 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :aka 10 digits < 1111175123 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :Doing it in forward order prevents any assumptions < 1111175142 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :just awkward :( < 1111175159 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :My "print out brainf*ck cell as decimal" is basically a "+1 to a variable-length BCD number" started with "0" and called the amount of times the cell specifies. It's.. "not very fast". < 1111175220 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(~220 characters of code.) < 1111175362 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Used that a ~year ago when writing some answers to our "introduction to imperative programming (in C)" course homework in BF. < 1111175412 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :doesn't look like it liked M=0-1, M=M/10 < 1111175546 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :wow, that divide routine is complicated < 1111175826 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :hmm.. is there an ansi sequence that will push a line to the right? < 1111175859 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :then I could extract in reverse and display as I go < 1111176227 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :if you could determine how many digits you needed to output you could use LOCATE to set the cursor to the right place < 1111176256 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :raven: ceil(log(x)/log(10)).. but I'm not sure how to do that with bf :) < 1111176262 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :but you would need to be careful if you printed a 2 digit number starting at the rightmost column < 1111176294 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :you don't need locate.. can just print spaces then use backspace < 1111176413 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :same difference really depends how moving left from col 0 is implemented < 1111176425 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :for worst case scenario < 1111176495 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :oic < 1111176545 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :the easy way out is to have the user tell us the cell size < 1111176548 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :n = 12345 : digits = 0 : WHILE n : n /= 10 : digits++ : ENDWHILE < 1111176559 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :gives num of digits to print < 1111176632 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :^^^ integer math < 1111176647 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :yeah that works.. divide is still freezing up :( < 1111176657 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :either that or its just really slow < 1111176675 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :just slow < 1111176686 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :finally finished < 1111176724 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :wonder if there's a fast hack for dividing by 10 < 1111176803 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :i only have the standard BF libarary code for DIV 10 here < 1111176805 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :heh, it's fine for #'s <256 < 1111176827 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :if they want to print big numbers then the user will need to wait or use a better interp :) < 1111177383 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :cool, that works, just a little slow < 1111177409 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :well, a lot slow actually.. need to try compiling the optimizing interp you sent me < 1111177469 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :which OSs are you using? < 1111177478 0 :calamari!unknown@unknown.invalid PRIVMSG #esoteric :linux < 1111177516 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :ahh, if i sent you the full bftools release just type make :) < 1111178311 0 :arke!unknown@unknown.invalid PRIVMSG #esoteric :teh hies < 1111178324 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :hullo arke < 1111178494 0 :arke!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1111178495 0 :arke!unknown@unknown.invalid PRIVMSG #esoteric :hows life? < 1111178516 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :fun as usual. :) < 1111178525 0 :arke!unknown@unknown.invalid PRIVMSG #esoteric :Cool :) < 1111179283 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :creative writing ability is inversely proportional to the amount of programming completed < 1111179291 0 :{^Raven^}!unknown@unknown.invalid PRIVMSG #esoteric :grrr.... < 1111179488 0 :arke!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1111183673 0 :calamari!unknown@unknown.invalid QUIT :Read error: 60 (Operation timed out) < 1111186903 0 :{^Raven^}!unknown@unknown.invalid QUIT :"Leaving"