00:00:00 --- log: started forth/21.01.01 00:06:51 --- join: proteus-guy joined #forth 00:07:03 --- join: birdwing joined #forth 00:27:31 --- join: jedb_ joined #forth 00:30:14 --- quit: jedb (Ping timeout: 260 seconds) 00:56:00 --- quit: actuallybatman (Quit: Lost terminal) 01:50:56 --- join: jedb__ joined #forth 01:53:01 --- quit: cantstanya (Remote host closed the connection) 01:53:59 --- quit: jedb_ (Ping timeout: 264 seconds) 01:55:22 --- join: cantstanya joined #forth 02:11:25 --- quit: proteus-guy (Ping timeout: 260 seconds) 02:12:28 --- nick: jedb__ -> jedb 03:58:42 --- join: john_cephalopoda joined #forth 04:31:41 --- quit: john_cephalopoda (Quit: Leaving) 04:48:24 --- quit: _whitelogger (Remote host closed the connection) 04:51:20 --- join: _whitelogger joined #forth 07:17:33 --- quit: birdwing (Remote host closed the connection) 07:30:21 --- join: birdwing joined #forth 07:32:58 --- quit: the_cuckoo (Ping timeout: 256 seconds) 07:33:10 --- join: proteus-guy joined #forth 07:59:51 --- join: the_cuckoo joined #forth 08:40:39 --- join: badcfe joined #forth 08:46:17 --- quit: dave0 (Quit: dave's not here) 08:48:26 --- quit: badcfe (Quit: leaving) 08:57:00 --- join: biotty joined #forth 09:40:35 --- quit: proteus-guy (Ping timeout: 260 seconds) 10:31:24 --- quit: gravicappa (Ping timeout: 256 seconds) 10:33:00 --- join: gravicappa joined #forth 10:43:26 --- join: lispmacs joined #forth 10:46:37 hi, I was wondering how to check for integer overflow, specifically during a multiplication operation. seems like this is not built into forth. Is there some way to check the flag on x86? 10:51:17 or some other way this problem is dealt with? 10:55:05 maybe FLAGS register can be accessed in some way... 10:55:59 you're asking about ans, i would expect them not to expose platform-specific registers 11:04:19 s/you're/if you're/ 11:12:26 looks like gforth has a bunch of register related words defined. Maybe they are documented in the source 11:37:07 --- quit: birdwing (Ping timeout: 268 seconds) 11:39:55 lispmacs, is it too big to fit in a double? 11:41:15 MrMobius: as far as a specific problem: I was doing the Forth Application Techniques problem where you have to create a class ( using : create ) for a 2array 11:41:36 user passes in number of rows and columns 11:42:23 instance behavior is to take in a row and col number and return the address of that array element 11:43:34 anyway, the definition behavior involves multipling the row and col to figure out how much to allot, so just had me wondering how one could check for multiplication overflow/carry 12:00:13 maybe there's a cleverer way but I would promote to double and compare 12:09:39 lispmacs: This is something that almost all programming languages are painfully lacking in, standard forth included 12:09:57 Regarding integer flags 12:10:46 It's weird when you find there is something easier to do in assembly, but most clever uses of arithmetic or extensions of arithmetic seem to be easier in assembly 12:11:28 In my forth I am meaning to add integer flag support, it will probably simplify certain e.g. double/mixed colon definitions 12:16:09 Heh... 12:17:02 My brain always goes straight to trying to solve problems with clever arithmetic and logical functions, which is quite bulky and annoying on modern programming languages. 12:39:59 --- quit: gravicappa (Ping timeout: 260 seconds) 14:14:02 --- join: Vedran joined #forth 15:24:46 --- join: yyyyyy`` joined #forth 15:26:11 --- quit: yyyyyy` (Ping timeout: 246 seconds) 15:57:44 --- quit: Vedran (Ping timeout: 260 seconds) 15:58:03 --- join: Vedran joined #forth 17:05:33 --- quit: cantstanya (Remote host closed the connection) 17:08:21 --- join: cantstanya joined #forth 17:21:57 i see argv leads to a c-encoding of the string. is there readily a word to decode this and parse as a number, or do i write a word with 10 mod/ 0 until for example? 17:22:48 Which forth? 17:24:45 >NUMBER is one way to do this in forth 200x standard 17:25:14 gforth here, but i like if its ans or 200x 17:27:00 also, ofcourse my above statement would rather be 10 * when parsing a dec 17:30:43 veltas: are you suggesting i use count 99 and let it stop at the zero termination? 17:32:29 veltas: .. i also see >number has a weird ud1 parameter, i dont see from spec if its added to result 17:36:30 --- join: dave0 joined #forth 17:56:51 --- join: Zarutian_HTC joined #forth 17:58:54 hmm, i get "invalid mem address" when doing : anum ( addr-cstr -- n) 17:58:54 0 do 99 0 17:58:54 over i + c@ 17:58:54 dup 48 < if drop leave then 17:58:54 48 - swap 10 * + 17:58:56 loop nip ; 18:00:18 happy new year, folks 18:00:45 oh, i see i messed up the do syntax, terribly sorry. 18:00:52 happy new year. Zarutian_HTC 18:01:42 now it werks ; ) 18:05:05 one thing I have yet to have seen in old hobby computer magazines and am astounded none of them did was to 'barcode' in paperpape-esque way the program listings on the margin furthest from the spine on each page 18:06:17 each magazine would have one page on how the reader is constructed and works 18:07:45 would been a bit more expensive on black ink though 18:08:42 but it would have been easier than typing those listings by hand 18:10:15 would look like you were sliding a giant credit card through a slotted reader 18:13:34 those zines would have distinctive margins of two and a quarter centimeters 18:15:04 wouldnt you need a huge amount of bar codes though? 18:15:11 since they dont encode many numbers 18:15:40 (using 7 bit ascii with a 'timing' channel where 7 bit paper tape had sprocket holes) 18:17:15 MrMobius: think of paper tape, but instead of holes you would have ink on white paper 18:19:43 each 2,5 mm of the margin 'tape' would encode one 7 bit ascii char 18:20:17 2.5 mm down/up the page 18:21:20 could even go a bit smaller in that dimension to fit more characters 18:24:41 on a A4 sized page you could fit 58 chars at 2.5 mm size or 116 chars at 1.25 mm size, easily 18:26:08 well that was a fun exercise but i see in gforth i have next-arg 18:27:50 heck some pages in the back of the magazine could be 'foldables' with quite a few columns of this 18:31:31 Zarutian_HTC, and you would get a schematic to build something that can read it? 18:32:00 out of off the shelf parts 18:32:30 hmm this format would have only worked with Forth as you can really 'compress' the programs down 18:34:07 MrMobius: yebb, something like eight photo transistors, some resistors, and wiring to a 8 bit input port 18:35:20 oh, and a strong light source to reflect off the paper 18:37:32 black cardboard mask with tiny holes to limit ?cross talk? between chars 18:42:19 I would be very impressed if you could make this :P 18:48:14 --- join: boru` joined #forth 18:48:17 --- quit: boru (Disconnected by services) 18:48:19 --- nick: boru` -> boru 18:52:56 MrMobius: I do not see the point nowdays though 18:55:04 it was previously requested i show my feigenbaum generator otherwise than in a line here. i uploaded it to github now; https://github.com/biotty/rmg/blob/master/graphics/feigenbaum.fs 18:55:28 could be interesting in an role play point'n'click puzzle game set in that home computer era 18:57:28 quite impressed by myself, as i hadn't seen a single forth word less than a week back 18:58:28 sort of retconning it in, plus perhaps making an eForth/figforth based colour home computer such a reader was hooked to 19:12:04 --- quit: dave0 (Quit: dave's not here) 19:52:51 --- join: proteus-guy joined #forth 20:12:28 Zarutian_HTC, https://vintageapple.org/byte/ 20:13:02 ive only worked through 1977. some of them have program listings in multiple formats. dont remember if any are bar codes 20:17:59 --- quit: sts-q (Ping timeout: 264 seconds) 20:30:47 --- join: sts-q joined #forth 21:39:31 --- join: dave0 joined #forth 21:41:29 --- join: jedb_ joined #forth 21:44:23 --- quit: jedb (Ping timeout: 264 seconds) 21:50:10 --- quit: biotty (Quit: leaving) 21:59:24 --- join: jedb__ joined #forth 22:02:24 --- quit: jedb_ (Ping timeout: 256 seconds) 22:06:12 --- quit: irsol (Ping timeout: 256 seconds) 22:19:21 --- join: irsol joined #forth 22:23:56 --- quit: irsol (Ping timeout: 256 seconds) 22:30:29 --- join: irsol joined #forth 22:35:43 --- quit: irsol (Remote host closed the connection) 22:36:09 --- join: irsol joined #forth 23:01:06 --- quit: Zarutian_HTC (Remote host closed the connection) 23:05:08 --- join: hosewiejacke joined #forth 23:24:18 --- quit: hosewiejacke (Remote host closed the connection) 23:24:33 --- join: hosewiejacke joined #forth 23:50:23 --- quit: hosewiejacke (Ping timeout: 264 seconds) 23:59:59 --- log: ended forth/21.01.01