00:00:00 --- log: started forth/05.07.14 00:15:25 --- quit: saon|smgl (Read error: 110 (Connection timed out)) 00:15:47 --- quit: saon (Read error: 110 (Connection timed out)) 03:24:16 --- join: yGREK (~yGREK@jaim.at) joined #forth 03:24:43 --- part: yGREK left #forth 04:57:02 --- join: saon (1000@c-66-177-224-222.hsd1.fl.comcast.net) joined #forth 04:57:57 --- join: PoppaVic (~pete@0-1pool64-158.nas22.chicago4.il.us.da.qwest.net) joined #forth 04:58:54 Mornin' 04:59:31 --- join: saon|smgl (~saon@c-66-177-224-222.hsd1.fl.comcast.net) joined #forth 06:46:49 --- join: segher (~segher@blueice3n1.de.ibm.com) joined #forth 06:49:45 Hi 06:49:52 lo 07:06:31 --- join: sproingie (foobar@64-121-15-14.c3-0.sfrn-ubr8.sfrn.ca.cable.rcn.com) joined #forth 07:33:42 --- join: hrmpf (~obi@gw.mastmoen.no) joined #forth 07:47:43 --- quit: hrmpf ("whatever u do, do it right!") 08:02:49 --- join: snowrichard (~richard@adsl-69-155-177-154.dsl.lgvwtx.swbell.net) joined #forth 08:03:20 hi 08:03:39 hello Robert 08:06:43 --- quit: snowrichard ("Leaving") 08:14:18 --- quit: PoppaVic ("Pulls the pin...") 08:16:02 --- join: PoppaVic (~pete@0-1pool65-239.nas22.chicago4.il.us.da.qwest.net) joined #forth 08:17:24 * sproingie wonders if anyone has written a floating point parser in forth or x86 asm? 08:17:41 looking at the source for strtod in glibc made my head all asplode 08:17:58 hehe 08:18:06 the source would 08:18:13 it's about 1500 lines of code 08:18:24 yep 08:18:33 it's also quite powerful 08:18:46 i'm starting to think just calling the C function would make more sense 08:18:48 ..although, I prefer sscanf, in general 08:19:01 I agree 08:19:10 if the libs are there, why not? 08:19:16 not always there 08:19:23 quite often are 08:19:34 wanting to have floating point in retroforth. it'll be there for the ffi versions all right 08:19:39 native version tho ... 08:19:41 even uclibc and dietlibc 08:19:48 the C function has different semantics than what Forth requires 08:19:54 yeppers 08:20:16 and, what I have seen of FFI does not make me much interested 08:20:26 maybe the uclibc version is more readable 08:20:32 but it's such a hairy problem in general 08:20:58 sure, yer going from one alien form to another and back 08:21:13 FFI has been bugging me for weeks 08:22:06 apparently, not one person in ##C or #gcc can see any C solution to a writing a program/tool to ascertain stackframe (and forget regs). 08:22:48 what do you mean, "ascertain stackframe"? 08:24:44 segher: I wanted a portable test-program in C that would be able to portably explain - or be parsed - to ascertain what C was expecting on the stack, and in what order... So a TIL could generate such a beast. 08:25:39 sounds complicated 08:25:44 Near as I can tell, no platform out there - let alone compiler - wants to properly expose who does what to whom and how. 08:26:09 yes, it does sound so. I'm still not sure how to solve it. 08:26:33 the C standard tells you what to expect on the stack and in what order. tho whether the stack grows up or down is implementation-defined 08:26:41 I 200% want to get around/past autoshit... and I live in C, but I want forthish, 08:26:44 compilers are also quite free to violate it as long as they're consistent 08:27:09 sproingie: like I said: there is no method to learn it, and there is no file to scan either. 08:27:27 if it's in a library tho, you can probably guarantee the particular format 08:27:52 libffi has a bunch of functions that marshall args onto the stack 08:27:57 Honestly, I was sorta' pissed when I figured we'd need a per-cpu file, let alone "per compiler" interface 08:28:29 yes, I have libffi here now... I'm not sure it does well for what I mean. 08:29:21 Ideally, we'd have a collection of very short asm or C programs that simply write to stdout. 08:29:24 if a function isn't exported by a library, there's no guarantee it even exists as a separate function at all 08:29:31 if it is, there's certain calling conventions you can expect 08:29:38 not really 08:29:58 I've heard that arg, and "cdecl" comments for awhile now. 08:30:17 actually i guess as long as you have the object files, every function has pretty much standard linkage 08:30:18 ...and not one of the proponents will proffer examples. 08:30:28 ahhh 08:30:40 and 'object' files themselves are artificial 08:30:52 yep, they're compiler-specific 08:31:07 there is a diff between .o and .c and .asm or .fs 08:31:27 So, as I said - the idea is sorta' moot/limbo 08:31:36 the whole concept of a function with a call frame is kinda c-specific 08:31:41 right 08:31:49 unless you use x86 ENTER/LEAVE instructions 08:32:00 i dont know of any language but pascal and HLA that use them 08:32:09 ..but, while they COULD generate a special ABI header, they don't. 08:32:28 yep 08:32:39 It's just this side of "pull my hair out" 08:32:48 ENTER/LEAVE will give you stack frames right there, the CPU itself manages 'em 08:32:58 too bad about nothing using 'em tho 08:33:03 I recall it from my 286 days ;-) 08:33:52 Now, the other thing is... MOST (not all) C's support some form of inline-asm... And, yer STILL fucked re regs/stack 08:33:55 i guess i'm confused at what you want that libffi doesn't provide 08:34:16 it's already a given that it's architecture-specific and more a matter of convention than standard 08:34:29 it sorta sucks, but that's the way it is 08:35:08 inline asm tends to leave the stack balanced. as for regs, you save and restore 08:35:30 sproingie: honestly? libffi doesn't seem to answer what I want, and obfuscates what it does answer.. I'm not sure it gains anything. Which is weird. Somewhere, somehow, there just should be a .h for C and "asm" (as) that does it once & properly 08:36:24 Maybe I just need some examples to learn from 08:36:26 maybe libbfd has something you want 08:36:39 cygnus documentation probably has examples of libbfd 08:36:40 yeah, for x86/linux, sure 08:37:02 This is why I say there is no currrent solution 08:39:04 here's a "ferunstance" 08:39:46 ..Let's say you have a C lib for handling gen/load of .o, .a, .so and (due to macosx 'modules)... 08:40:16 --- quit: sproingie (Remote closed the connection) 08:40:42 --- join: sproingie (foobar@64-121-15-14.c3-0.sfrn-ubr8.sfrn.ca.cable.rcn.com) joined #forth 08:40:42 OK, that is tits for C... But wait! There is nothing "standard" for interfacing C to anything else at all: the 'stds' are all tweaked binary hacks. 08:40:52 * sproingie globally disables CTCP. thanks to the goddam script kiddies 08:41:24 hmm, darn.. I often use CTCP to ascertain version/platform for folks 08:43:20 aha, /mode sproingie +C 08:43:21 This same (above) issue is valid for most languages that are asm-based rather than C 08:43:35 right.. 08:43:48 ignores all CTCP requests. thank the script kiddies 08:43:56 i dont want people knowing what version i run anyway 08:44:04 konqueror's buggy enough, probably has overflow sploits 08:44:16 C lacks a lib to gen/load/save those; and everything else that is non-C can't handle them worth a damn 08:44:34 I just use it to ascertain a dozer 08:44:44 C doesn't have a FFI, C sees itself as the FFI 08:44:45 ..or *bsd versus linux, etc 08:44:52 right, exactly 08:45:06 Yet, C is written out to asm 08:45:08 C is the center of the goddamn universe 08:45:19 ...Soooo, where are the asm-freaks? 08:45:28 yahbut that's like saying a car door is made of steel 08:45:36 and therefore you dont need standard latches 08:45:40 asm is just the raw material 08:45:57 no. 08:46:04 and inline asm is just lathing your own tools 08:46:16 I say again.... To get from high to low: you need an API 08:46:40 as a C programmer for decades, I avoid asm 08:46:40 i would suggest that C-- is attempting to take care of precisely what you're asking about 08:46:57 ..asm programmers can do the same, and remain isolated 08:47:04 and virtual machines like llvm and .net are also addressing the problem 08:47:12 arguably MS is getting further with .net 08:47:20 sproingie: right, heard that before, checked the url, and it didn't help much 08:47:30 yeah, I agree 08:47:43 ..don't use them, and don't LIKE them, but I agree 08:47:52 C-- is probably a better "low level" example 08:48:12 yipes, i gotta get to work. late. 08:48:20 * sproingie & 08:48:48 I sure hope to hell arke wakes the fuck up today or tomorrow 08:54:27 --- join: JasonWoof (~jason@Herkamire.student.supporter.pdpc) joined #forth 08:54:27 --- mode: ChanServ set +o JasonWoof 08:54:36 hey, herk 08:55:03 if you can, you might want to "scroll back" a screen or so 08:56:06 I'm sorta' limbo/brain-farting today. 08:56:42 I think there are "issues" wherein I/we sit, but I'm not sure of the solution. 09:11:34 --- quit: PoppaVic ("Pulls the pin...") 09:49:35 --- nick: saon -> saon|gf 10:06:48 fuuck 10:18:38 --- part: segher left #forth 11:12:14 --- join: slava (~slava@CPE0080ad77a020-CM000e5cdfda14.cpe.net.cable.rogers.com) joined #forth 12:37:00 --- nick: saon|gf -> saon 12:55:02 --- nick: Raystm2 -> nanstm 13:56:07 --- join: eph (thin@bespin.org) joined #forth 14:02:55 Hi 14:17:26 --- join: virl (~blah@62.116.127.15) joined #forth 14:19:11 sup 14:19:35 Debugging is so much fun. 14:19:56 definitely 14:20:05 if you're using debug.com anyways 14:20:08 thats a ton of fun ;P 14:21:18 * Robert screams 14:21:24 Well, gdb actually. 14:22:09 hmm, doesn't gdb suck 14:23:13 Not really... better than guessing where the problem is. 14:26:02 whats the best debugger out there (any platform) 14:26:07 soft-ice ? 14:26:34 i guess it also depends on the language though 14:26:47 No idea, never tried anything besides gdb and turbo debugger. 14:27:42 aren't there any alternatives to gdb in linux 14:27:47 or does windows have all the best debuggers heh 14:28:27 There are extentions and probably a bunch of alternatives. 14:31:29 --- join: crc (crc@pool-70-110-199-169.phil.east.verizon.net) joined #forth 14:32:40 CHECK MATE, MY CHECKSUM MATE 14:32:59 Hi Robert 14:33:39 --- quit: Snoopy42 (brown.freenode.net irc.freenode.net) 14:33:39 --- quit: ianp (brown.freenode.net irc.freenode.net) 14:33:39 --- quit: saon (brown.freenode.net irc.freenode.net) 14:33:41 --- quit: JasonWoof (brown.freenode.net irc.freenode.net) 14:33:41 --- quit: sproingie (brown.freenode.net irc.freenode.net) 14:33:41 --- quit: ccfg (brown.freenode.net irc.freenode.net) 14:33:41 --- quit: skylan (brown.freenode.net irc.freenode.net) 14:33:41 --- quit: warpzero (brown.freenode.net irc.freenode.net) 14:33:42 --- quit: onetom (brown.freenode.net irc.freenode.net) 14:33:42 --- quit: cmeme (brown.freenode.net irc.freenode.net) 14:33:42 --- quit: eph (brown.freenode.net irc.freenode.net) 14:33:43 --- quit: slava (brown.freenode.net irc.freenode.net) 14:33:47 --- quit: saon|smgl (brown.freenode.net irc.freenode.net) 14:33:47 --- quit: nanstm (brown.freenode.net irc.freenode.net) 14:33:47 --- quit: madwork (brown.freenode.net irc.freenode.net) 14:33:47 --- quit: alexander_ (brown.freenode.net irc.freenode.net) 14:33:47 --- quit: OrngeTide (brown.freenode.net irc.freenode.net) 14:33:47 --- quit: arke (brown.freenode.net irc.freenode.net) 14:34:45 --- join: JasonWoof (~jason@Herkamire.student.supporter.pdpc) joined #forth 14:34:45 --- join: sproingie (foobar@64-121-15-14.c3-0.sfrn-ubr8.sfrn.ca.cable.rcn.com) joined #forth 14:34:45 --- join: warpzero (~warpzero@wza.us) joined #forth 14:34:45 --- join: cmeme (~cmeme@216.184.11.2) joined #forth 14:34:45 --- join: skylan (~sjh@dialup-216-211-4-39.tbaytel.net) joined #forth 14:34:45 --- join: onetom (~tom@80.95.80.2) joined #forth 14:34:45 --- join: ccfg (ccfg@dsl-roigw3de0.dial.inet.fi) joined #forth 14:34:45 --- mode: irc.freenode.net set +o JasonWoof 14:35:06 --- join: eph (thin@bespin.org) joined #forth 14:35:06 --- join: slava (~slava@CPE0080ad77a020-CM000e5cdfda14.cpe.net.cable.rogers.com) joined #forth 14:35:06 --- join: saon|smgl (~saon@c-66-177-224-222.hsd1.fl.comcast.net) joined #forth 14:35:06 --- join: nanstm (~vircuser@adsl-69-149-58-39.dsl.rcsntx.swbell.net) joined #forth 14:35:06 --- join: madwork (~madgarden@derby.metrics.com) joined #forth 14:35:06 --- join: alexander_ (~alexander@69.17.112.153) joined #forth 14:35:06 --- join: OrngeTide (~orange@rm-f.net) joined #forth 14:35:06 --- join: arke (f2@bespin.org) joined #forth 14:35:36 --- join: saon (1000@c-66-177-224-222.hsd1.fl.comcast.net) joined #forth 14:36:11 --- quit: OrngeTide (brown.freenode.net irc.freenode.net) 14:36:11 --- quit: alexander_ (brown.freenode.net irc.freenode.net) 14:36:11 --- quit: saon|smgl (brown.freenode.net irc.freenode.net) 14:36:11 --- quit: slava (brown.freenode.net irc.freenode.net) 14:36:11 --- quit: eph (brown.freenode.net irc.freenode.net) 14:36:11 --- quit: arke (brown.freenode.net irc.freenode.net) 14:36:12 --- quit: madwork (brown.freenode.net irc.freenode.net) 14:36:12 --- quit: nanstm (brown.freenode.net irc.freenode.net) 14:36:13 --- quit: ccfg (brown.freenode.net irc.freenode.net) 14:36:13 --- quit: sproingie (brown.freenode.net irc.freenode.net) 14:36:13 --- quit: skylan (brown.freenode.net irc.freenode.net) 14:36:13 --- quit: warpzero (brown.freenode.net irc.freenode.net) 14:36:13 --- quit: onetom (brown.freenode.net irc.freenode.net) 14:36:13 --- quit: cmeme (brown.freenode.net irc.freenode.net) 14:36:13 --- quit: JasonWoof (brown.freenode.net irc.freenode.net) 14:36:16 --- quit: saon (brown.freenode.net irc.freenode.net) 14:36:21 --- join: saon (1000@c-66-177-224-222.hsd1.fl.comcast.net) joined #forth 14:36:54 --- quit: saon (brown.freenode.net irc.freenode.net) 14:37:37 --- join: JasonWoof (~jason@Herkamire.student.supporter.pdpc) joined #forth 14:37:37 --- join: arke (f2@bespin.org) joined #forth 14:37:37 --- join: OrngeTide (~orange@rm-f.net) joined #forth 14:37:37 --- join: alexander_ (~alexander@69.17.112.153) joined #forth 14:37:37 --- join: madwork (~madgarden@derby.metrics.com) joined #forth 14:37:37 --- join: nanstm (~vircuser@adsl-69-149-58-39.dsl.rcsntx.swbell.net) joined #forth 14:37:37 --- join: saon|smgl (~saon@c-66-177-224-222.hsd1.fl.comcast.net) joined #forth 14:37:37 --- join: slava (~slava@CPE0080ad77a020-CM000e5cdfda14.cpe.net.cable.rogers.com) joined #forth 14:37:37 --- join: eph (thin@bespin.org) joined #forth 14:37:37 --- join: saon (1000@c-66-177-224-222.hsd1.fl.comcast.net) joined #forth 14:37:37 --- join: sproingie (foobar@64-121-15-14.c3-0.sfrn-ubr8.sfrn.ca.cable.rcn.com) joined #forth 14:37:37 --- join: Snoopy42 (snoopy_161@dsl-084-058-128-075.arcor-ip.net) joined #forth 14:37:37 --- join: warpzero (~warpzero@wza.us) joined #forth 14:37:37 --- join: ianp (~ian@inpuj.com) joined #forth 14:37:37 --- join: cmeme (~cmeme@216.184.11.2) joined #forth 14:37:37 --- join: skylan (~sjh@dialup-216-211-4-39.tbaytel.net) joined #forth 14:37:37 --- join: onetom (~tom@80.95.80.2) joined #forth 14:37:37 --- join: ccfg (ccfg@dsl-roigw3de0.dial.inet.fi) joined #forth 14:37:38 --- mode: irc.freenode.net set +o JasonWoof 14:37:55 --- quit: eph ("leaving") 14:37:57 --- mode: ChanServ set +o crc 14:37:58 --- quit: ccfg (brown.freenode.net irc.freenode.net) 14:37:58 --- quit: sproingie (brown.freenode.net irc.freenode.net) 14:38:03 --- quit: skylan (brown.freenode.net irc.freenode.net) 14:38:03 --- quit: warpzero (brown.freenode.net irc.freenode.net) 14:38:03 --- quit: onetom (brown.freenode.net irc.freenode.net) 14:38:03 --- quit: cmeme (brown.freenode.net irc.freenode.net) 14:38:03 --- quit: JasonWoof (brown.freenode.net irc.freenode.net) 14:38:25 --- join: JasonWoof (~jason@Herkamire.student.supporter.pdpc) joined #forth 14:38:25 --- join: sproingie (foobar@64-121-15-14.c3-0.sfrn-ubr8.sfrn.ca.cable.rcn.com) joined #forth 14:38:25 --- join: warpzero (~warpzero@wza.us) joined #forth 14:38:25 --- join: cmeme (~cmeme@216.184.11.2) joined #forth 14:38:25 --- join: skylan (~sjh@dialup-216-211-4-39.tbaytel.net) joined #forth 14:38:25 --- join: onetom (~tom@80.95.80.2) joined #forth 14:38:25 --- join: ccfg (ccfg@dsl-roigw3de0.dial.inet.fi) joined #forth 14:38:25 --- mode: irc.freenode.net set +o JasonWoof 15:48:48 --- join: zoly (~zoly@p549DCC3B.dip.t-dialin.net) joined #forth 15:53:21 --- join: I440r (~mark4@rrcs-24-242-160-169.sw.biz.rr.com) joined #forth 15:53:34 Hi 15:54:09 hi 15:54:17 im trying to write an arm assembler for isforth 15:54:19 itsabitch 15:54:20 heh 15:54:36 :D 15:54:39 Good luck ;) 15:54:47 I440r: werd, what's it looking like? 15:54:54 I'm trying to code some FFT routines, it's a bitch as well. 15:54:58 not too bad so far 15:55:17 but so far all ive done is branches 15:55:29 Robert: ah, what language? I have to write some fixed-point FFT shit for this project 15:55:38 I440r: needs more jump tables 15:55:49 alexander_: Assembly language, using SSE. 15:55:53 ah 15:56:09 Robert: I'll probably do mine in ARM assembly, or forth 15:56:24 bx bxle bxgt bxlt bxge bxls bxhi bxvc bxvs bxpl bxmi bxcc bxcs bxne bxeq b ble bgt blt bge bls bhi bvc bvs bpl bmi bcc bcs bne beq 15:56:27 i got all those 15:57:36 --- join: Topaz (~top@spc1-horn1-6-0-cust117.cosh.broadband.ntl.com) joined #forth 15:57:47 I440r: oh you mean 15:57:48 werd. 15:57:51 I GET IT NOW 15:58:54 I440r: the way I've been doing is just having two branch instructions.. branch and branch with link, and branch with link and change to thumb. 15:59:04 and then you pass in a generic condition modifier. 15:59:11 and the offset.. and they get assembled in. 15:59:30 right and a whole bunch of condition code constants that the assembler compiles into the opcode when specified 15:59:39 yup 15:59:46 this probably means you always have to use the AL condition for ones without a cc 15:59:54 i had thought of doing it that way 16:00:00 but it looks oogerlie 16:00:15 it's clean, because it represents what the chip is actually seeing 16:00:34 specially when you also have to start doing it for b for byte and h for half word and all the other little things that could be truned into pre/post fixes 16:00:44 but you have to do 16:00:47 b eq blah blah 16:00:50 or eq b blah blah 16:00:55 instead of beq blah 16:01:21 and then you have the s flag too 16:01:22 first of all, I push the opcode parameters on the stack, and then the final word assembles the opcode. 16:02:24 yea - if i keep doing things THIS way im going to have thousands of opcodes 16:02:37 we'll be able to compare forth implementations using both assembler styles 16:02:42 or hundreds at least 16:02:44 and see how they worked out in the end. 16:05:10 ya 16:07:28 BTW, thanks again for isforth 16:07:34 :) 16:07:34 the source is super clean 16:07:48 i know, i just wish the documentation for it was :) 16:07:48 heh 16:07:52 brb 16:07:56 the code is clean enough for me to use it as documentation 16:21:36 --- quit: Topaz (Remote closed the connection) 16:36:00 ok, i gotta go do laundry 16:36:04 grr i hate doing laundry lol 16:55:58 --- quit: virl (Remote closed the connection) 17:01:42 --- join: crc2 (~crc@pool-70-16-148-200.phil.east.verizon.net) joined #forth 17:02:04 --- quit: crc (Nick collision from services.) 17:02:10 --- nick: crc2 -> crc 17:02:12 --- mode: ChanServ set +o crc 17:15:05 --- join: TheBlueWizard (TheBlueWiz@ts001d0828.wdc-dc.xod.concentric.net) joined #forth 17:31:18 --- part: TheBlueWizard left #forth 17:32:59 --- quit: madwork (Read error: 101 (Network is unreachable)) 17:33:35 --- nick: nanstm -> Raystm2 17:44:39 --- join: crc2 (crc@pool-151-197-229-12.phil.east.verizon.net) joined #forth 17:45:03 --- quit: crc (Nick collision from services.) 17:45:09 --- nick: crc2 -> crc 17:45:15 --- mode: ChanServ set +o crc 19:01:10 --- join: kunphuzil (~Jason@ip-69-10-109-24.cableaz.net) joined #forth 19:14:17 --- part: slava left #forth 19:15:25 yunno, the wacky diagrams in the web version of starting forth are almost better than the original 19:15:37 there's a kitschy surrealism to them 19:15:49 reminds me of why's poignant guide to ruby 19:16:57 a hooded executioner riding a miniature train between a dodo named "do" and an excited squirrel named "loop" ... 19:31:27 --- join: snoopy_16 (snoopy_161@dsl-084-058-134-189.arcor-ip.net) joined #forth 19:32:03 --- quit: Snoopy42 (Nick collision from services.) 19:32:06 --- nick: snoopy_16 -> Snoopy42 19:49:38 --- quit: Robert ("In Soviet Sweden, bugs deyou.") 20:10:02 --- join: crc2 (~crc@pool-70-110-197-71.phil.east.verizon.net) joined #forth 20:16:20 --- quit: crc (Read error: 110 (Connection timed out)) 20:34:37 --- quit: crc2 (Read error: 110 (Connection timed out)) 20:54:42 --- join: Raystm2_ (~vircuser@adsl-69-149-44-200.dsl.rcsntx.swbell.net) joined #forth 21:11:06 --- quit: Raystm2 (Read error: 110 (Connection timed out)) 21:11:25 --- nick: Raystm2_ -> Raystm2 22:07:07 --- quit: zoly (Read error: 145 (Connection timed out)) 22:10:57 --- join: crc (~crc@pool-70-110-223-209.phil.east.verizon.net) joined #forth 22:19:18 --- join: zoly (~zoly@p549DBB84.dip.t-dialin.net) joined #forth 22:21:59 --- quit: sproingie (Remote closed the connection) 22:37:20 --- quit: crc (Read error: 110 (Connection timed out)) 23:07:37 --- join: snowrichard (~richard@adsl-69-155-177-154.dsl.lgvwtx.swbell.net) joined #forth 23:09:49 --- quit: snowrichard (Client Quit) 23:09:51 --- quit: JasonWoof ("off to bed") 23:33:56 --- join: Topaz (~top@spc1-horn1-6-0-cust117.cosh.broadband.ntl.com) joined #forth 23:59:59 --- log: ended forth/05.07.14