00:00:00 --- log: started forth/11.03.09 00:19:17 --- quit: ygrek_ (Remote host closed the connection) 00:46:16 Free-man: you didn't use any c terms ni your previous sentence. 00:46:24 C doesn't have primitives, nor opcodes 00:46:33 i know 00:46:42 but i dont really get your point 00:46:45 clarify? 00:46:56 i might still be asleep :) 00:47:23 ah; i know... 00:47:39 by `in c terms' i was referring to the use of the word `wrapper' 00:47:57 or shell terms, if that's more comprehendable 00:48:41 k? 00:48:55 Free-man: also not a c term. 00:49:16 ok but you understand what i mean? 00:49:18 the c standard doesn't even mention "wrapper" 00:49:21 no, i don't. 00:49:34 you're being too pendantic. dont think so deeply. :) 00:49:47 (too hyper-correct) 00:49:49 not thinking at all 00:49:53 heh 00:50:18 you said C terms, but didn't use any. langauge is to convey knowledge, you cannot convey knowledge by saying the wrong thing using the wrong words 00:50:30 what i mean, ie, for insn scasb, i write code to get stack args for scasb, run the op, then return some results. 00:50:44 that's wrapping. 00:50:56 wanna see the code itself here? 00:51:07 so a function. 00:51:14 you're writting a function, it is not a wrapper. 00:51:18 a forth primitive 00:51:26 a wrapper you have around bon-bons 00:51:32 heh 00:51:35 mmm 00:51:36 a forth word, not primitive 00:51:38 hold on 00:51:46 i'm gonna drop a few lines here 00:51:52 which can either be a code word, or not. 00:52:15 ok here it is: 00:52:45 -_scasb: 00:52:45 - mov edx, esi ; save IP. 00:52:45 - pop esi ecx eax 00:52:45 - cmp ecx, 0 ; dont scan when length == 0. 00:52:45 - jz @@ 00:52:45 - cld ; guarantee increasing direction. 00:52:45 - repne scasb 00:52:46 -@@: push esi ecx ; push results. 00:52:46 - mov esi, edx ; restore IP. 00:52:47 - jmp next 00:52:53 ignore ^[-] 00:53:14 right, so a function. 00:53:17 ok 00:53:22 what is called a function, not a wrapper 00:53:49 ok; i can see that you're limiting your use of certain terms to their pedantic meaning... ok :) 00:54:08 not really 00:54:10 i'm not here to argue, just to share the success 00:54:11 a wrapper, in programming, would be a function that takes another function as input argument, and does something around it. 00:54:22 ok 00:54:26 WRAPPER(bon-bon, sugar, ..) 00:54:32 you're a bit fp too 00:54:37 fp? 00:54:41 functional 00:54:44 not really 00:54:50 lispy 00:54:53 nor am i pednatic 00:54:59 words have meaning, and you used it incorrectly. 00:55:06 well that you are, it's not a bad term 00:55:09 you can't say "rose" and pretened that it means "apple" 00:55:11 i agree. 00:55:13 heh 00:55:42 nothing pedantic about correcting a illogical usage of a word 00:55:50 i agree. 00:55:56 nor am i offended. 00:56:21 but it is `pedantic' 00:56:47 no, it isn't. 00:56:52 do you see any problem in the code above that i've missed? 00:57:15 pedantic 00:57:15 adj 1: marked by a narrow focus on or display of learning especially its trivial aspects [syn: {academic}, {donnish}, {pedantic}] 00:57:32 this has nothing to do with being narrow, or learning a trivial aspect, you used a blatantly incorrect word. 00:57:34 i dont think being pedantic is trivial. 00:57:48 now you are being pedantic. 00:57:52 yes 00:58:01 as for your code, i cannot read intel assembler. 00:58:12 so transpose the registers :) 00:58:22 except for the push/pop 00:58:36 that takes effort on my side for no gain 00:58:43 heh 00:59:04 ok, since that, there's no gain for me to continue this discussion; which is a shame on your part. 00:59:12 nto really 00:59:36 there is immense gain on your side by me not answering your question 00:59:39 you will learn things. 00:59:42 then talk to me about writing a forth engine 01:00:16 what is there to talk about? 01:00:24 nm. 01:00:30 and you mean a forth intepretator. 01:06:14 Free-man: aren't you using a register as TOS? 01:06:52 nop 01:07:24 and one thing, how does 'repne scasb' behave when you have ecx == 0 ? 01:07:29 i have a billion cycles to burn :) i'm focusing my good coding on other facets :) 01:07:43 i test for ecx==0 and skip on true 01:07:55 but what would happen if you didn't 01:08:05 Free-man: focus on working code. 01:08:24 then ecx=0xfff-ffff, 4g; not good to scan that many bytes 01:08:56 from a decrement 01:09:22 binary 789 bytes now of headless code 01:09:58 75 lines of asm code. 01:10:01 in file 01:10:09 including comments 01:10:20 oops; that's 75 lines of comment. 01:12:05 wirte less comments, and clearer code 01:20:31 --- join: fantazo__ (~fantazo@178-191-161-193.adsl.highway.telekom.at) joined #forth 01:24:03 --- quit: fantazo_ (Ping timeout: 248 seconds) 01:42:06 --- quit: Free-man (Read error: No route to host) 03:19:23 --- join: Snoopy_1611 (Snoopy_161@dslb-188-107-196-022.pools.arcor-ip.net) joined #forth 04:28:23 --- quit: gogonkt (Read error: Operation timed out) 04:31:51 --- join: gogonkt (~info@2001:5c0:1400:a::635) joined #forth 04:45:49 --- join: MayDaniel (~MayDaniel@unaffiliated/maydaniel) joined #forth 04:59:42 --- quit: MayDaniel (Read error: Connection reset by peer) 06:06:24 --- quit: gogonkt (Read error: Operation timed out) 06:39:22 --- quit: Joseph_ (Ping timeout: 250 seconds) 06:51:30 --- quit: nixness (Ping timeout: 255 seconds) 06:54:22 --- join: Joseph_ (~Joseph@caen-cse-141-212-203-1.wireless.engin.umich.edu) joined #forth 06:56:05 --- join: nighty^ (~nighty@x122091.ppp.asahi-net.or.jp) joined #forth 06:58:49 --- quit: Joseph_ (Ping timeout: 248 seconds) 07:27:14 --- join: ygrek_ (debian-tor@gateway/tor-sasl/ygrek) joined #forth 07:28:49 --- join: Joseph_ (~Joseph@caen-cse-141-212-203-1.wireless.engin.umich.edu) joined #forth 07:33:02 --- join: gogonkt (~info@2001:c08:3700:ffff::9:494d) joined #forth 07:44:17 --- join: MayDaniel (~MayDaniel@unaffiliated/maydaniel) joined #forth 07:52:13 --- quit: gogonkt (Remote host closed the connection) 07:52:22 --- join: gogonkt (~info@2001:c08:3700:ffff::9:4bb7) joined #forth 07:56:02 --- quit: nighty^ (Ping timeout: 250 seconds) 07:57:59 --- quit: gogonkt (Ping timeout: 248 seconds) 08:09:32 --- join: gogonkt (~info@2001:c08:3700:ffff::9:4e55) joined #forth 08:12:12 --- quit: gogonkt (Client Quit) 08:29:06 --- quit: ygrek_ (Ping timeout: 246 seconds) 08:41:59 --- join: ygrek_ (debian-tor@gateway/tor-sasl/ygrek) joined #forth 09:13:53 --- quit: ygrek_ (Ping timeout: 246 seconds) 09:23:25 --- join: fantazo_ (~fantazo@178-191-171-182.adsl.highway.telekom.at) joined #forth 09:23:58 --- quit: fantazo__ (Ping timeout: 252 seconds) 09:39:26 --- join: gogonkt (~info@2001:c08:3700:ffff::9:8679) joined #forth 09:59:23 --- join: foocraft (~dsc@89.211.254.177) joined #forth 10:02:11 --- quit: gogonkt (Ping timeout: 248 seconds) 10:08:53 --- join: gogonkt (~info@2001:c08:3700:ffff::9:8a83) joined #forth 10:18:50 --- join: qFox (~C00K13S@5356B263.cm-6-7c.dynamic.ziggo.nl) joined #forth 10:30:34 --- quit: gogonkt (Read error: Operation timed out) 10:35:45 --- join: RikusW (~RikusW@41.157.70.10) joined #forth 10:47:47 --- join: ygrek_ (debian-tor@gateway/tor-sasl/ygrek) joined #forth 10:49:15 --- join: gogonkt (~info@2001:c08:3700:ffff::9:8f35) joined #forth 11:00:52 --- join: forther (~forther@207.47.34.100.static.nextweb.net) joined #forth 11:03:32 --- quit: foocraft (Remote host closed the connection) 11:06:37 --- join: foocraft (~dsc@89.211.254.177) joined #forth 11:14:00 --- part: RikusW left #forth 11:22:24 --- quit: Joseph_ (Ping timeout: 240 seconds) 11:30:44 --- join: SunTzu (1000@c-68-56-234-19.hsd1.fl.comcast.net) joined #forth 11:31:47 --- join: Joseph_ (~Joseph@caen-eecs-141-212-212-126.wireless.engin.umich.edu) joined #forth 12:15:52 --- quit: MayDaniel () 12:46:13 --- quit: ygrek_ (Ping timeout: 246 seconds) 13:05:18 --- join: Joseph__ (~Joseph@caen-eecs-141-212-212-126.wireless.engin.umich.edu) joined #forth 13:07:55 --- quit: Joseph_ (Ping timeout: 246 seconds) 13:20:31 --- quit: fantazo_ (Remote host closed the connection) 13:23:58 --- quit: forther (Remote host closed the connection) 13:24:12 --- quit: scj (Ping timeout: 240 seconds) 13:25:19 --- join: scj (scj@mycrosoft.us) joined #forth 13:28:44 --- quit: qFox (Quit: Time for cookies!) 17:07:19 --- quit: proteusguy (Remote host closed the connection) 17:37:32 --- quit: Fox78 (Remote host closed the connection) 18:22:32 --- join: Fox78 (~fox@123.118.150.174) joined #forth 20:24:41 --- quit: gogonkt (Ping timeout: 251 seconds) 20:26:49 --- join: gogonkt (~info@2001:c08:3700:ffff::9:fe7b) joined #forth 22:13:08 --- quit: gogonkt (Ping timeout: 260 seconds) 22:14:49 --- join: gogonkt (~info@2001:c08:3700:ffff::a:1e41) joined #forth 22:37:56 mornin 23:05:06 --- join: elliott (~elliott@unaffiliated/elliott) joined #forth 23:14:28 Are there any pseudo-Forthoids that fit into a 512 byte boot sector for x86? I'm hacking on one now but wondering if it's been done before. 23:35:28 --- quit: elliott (Remote host closed the connection) 23:39:16 damn he quit 23:39:53 why damn him when he has better things to do? 23:40:00 --- quit: gogonkt (Ping timeout: 260 seconds) 23:40:03 i dint do tht 23:40:20 he axed a good question tht i was going to write on 23:40:28 --- join: elliott (~elliott@unaffiliated/elliott) joined #forth 23:40:37 oh good, you're back 23:40:53 I don't have better things to do, X just has an undying hatred for me. 23:40:54 :) 23:41:06 elliott so, i tried that once or twice and decided that the boot sector can only do one thing. 23:41:16 --- join: gogonkt (~info@2001:c08:3700:ffff::a:366e) joined #forth 23:41:26 the boot sector load more sectors, that's all. 23:41:37 haha 23:41:38 SunTzu: Well, quite a lot has been done in one sector. 23:41:50 Just ask a scener :) 23:41:51 done complicate your life. 23:42:10 SunTzu: it can be a fun exercise 23:42:13 i know 23:42:22 i tried it twice 23:42:29 a failed both? 23:42:39 Right now I haven't got much... a word-reading routine, a loop that reads a word and executes it forever, and the words @, !, >r, r> and emit. No compiler yet. 23:42:47 besides, if you do that to 0.0.0, then you break standards for booting 23:42:54 But I've only used ~200 bytes, so I'm quite optimistic. 23:42:55 ok 23:43:00 heh ok 23:43:03 ! and >r and r> aren't actually called that though, those aren't in my character set. 23:43:04 SunTzu: huh? 23:43:09 (i'm not trying to disuade you, just...) 23:43:14 what standards for booting? 23:43:17 I pack the name of every word into one 32-bit word, with each character being 5-bits of its ASCII code minus 64. 23:43:20 PC platform 23:43:26 This has A-Z, plus [], \, ^, and _. 23:43:33 ok 23:43:39 SunTzu: let me repeat: what standards for booting? 23:43:52 PC bios standards; the one everyone uses. 23:44:03 SunTzu: and how does that break by using this? 23:44:05 elliott kool 23:44:09 SunTzu: do you mean if I fill a whole boot sector it will not be bootable because the last two bytes have to be the signature? 23:44:15 0x55, 0xAA 23:44:22 elliott that's part of it. 23:44:22 SunTzu: seeing that this is a frigging mbr, and it follows the normal method of booting on ia32 23:44:33 that just means you have to do it in 510 bytes ;) 23:44:45 elliott yea 23:44:48 actually in my case it's not an MBR... no partition table. 23:44:54 well, i suppose it has a partition table. just not a coherent one. 23:45:00 it's a perfectly good first sector of a floppy, though. 23:45:07 even if your floppies can only hold 512 bytes. 23:45:11 elliott yea 23:45:11 the only thing that is guaranteed is that the first sector on the first disk contains 0x55aa at the end, nothing more. 23:45:15 execution starts from there. 23:45:33 hmm, right, seems like a partition table isn't actually part of the definition of an mbr 23:45:36 just most people use it for that :) 23:45:44 i fail to see what imaginary standards you are refering too 23:45:51 elliott: correct. 23:45:57 elliott: there are lots of partition table layouts 23:46:03 right 23:46:06 elliott: you've got the normal MS-DOG one 23:46:10 elliott: then you've got LLVM 23:46:16 elliott: BSD uses its own weirdo thing 23:46:24 elliott i'm working on an engine for linux. the binary is current about 800 bytes sans headers, which i'm trying to integrate now 23:46:35 elliott: then you have the horrible GUID thing or whatever it is called on OS X 23:46:45 LLVM? I'm going to assume you don't mean the compiler framework 23:46:52 elliott: erm, LVM :-) 23:46:55 right :) 23:47:04 elliott qv Beetle too 23:47:06 (which is a partition table inside a partition table) 23:47:15 SunTzu: i think you are really refering to GNU, Linux is only a kernel. 23:47:21 --- quit: ams (Changing host) 23:47:21 --- join: ams (ams@gnu/inetutils/ams) joined #forth 23:47:22 SunTzu: bah, just remove some of the bytes at random 23:47:26 and that's all i'm referring to 23:47:31 ams: hmm, I'd expect most Forths to be more tied to Linux than GNU. 23:47:42 elliott: not really. 23:47:43 since the "traditional" method is to do syscalls directly. 23:47:47 i'm writing my kernel in asm 23:47:55 so, no libs yet 23:48:02 SunTzu: still, the OS is called GNU, not Linux. 23:48:22 i reject the gnu usurpation of linux by GNU 23:48:29 i'm not a GNUdist 23:48:31 what if you run busybox on top of linux :) 23:48:45 --- quit: gogonkt (Ping timeout: 260 seconds) 23:48:45 with er, zsh. 23:48:50 elliott: it is really not what you run on top of linux what matters... 23:49:01 elliott: just like if you replace BSD land with busybox, it would still be BSD no? 23:49:02 ams: can a system with no GNU software be said to be gnu? 23:49:08 elliott: and not /vmunix 23:49:15 ams: I'm not so sure 23:49:28 anyway, we named the OS GNU, please call it that when refering to GNU. 23:50:05 --- join: gogonkt (~info@2001:c08:3700:ffff::a:388e) joined #forth 23:50:10 elliott: OS X is BSD, still doesn't share the same kernel with BSD, or useland. 23:50:19 (or rather, a variant of BSD) 23:50:30 well, the linux installation i was working on-and-off on ended up unintentionally having very little GNU software 23:50:32 (and GNU/Linux is a variant of GNU in the same way but with a Linux kernel) 23:50:48 I think Emacs was the main piece it did have :-) 23:50:51 elliott: a linux installation is copying a ELF file, the kernel. 23:51:02 since "OS" is highly susceptible to abuse and multiple definitions, the operating system is the kernel, Linux. my distro of choice is Slackware. 23:51:02 (and maybe linux headerS) 23:51:08 you have no userland in linux, it is a kernel. 23:51:16 "GNU" is persona no-gratia 23:51:19 ams: well, I can hardly call it GNU, since it contained almost no GNU components. 23:51:51 elliott: it is what it is based on historically. 23:52:17 GNU would be more proper than saying Linux, since Linux has a specific meaning, linux-x.x.x.tar.gz 23:52:20 besides, Linus holds the trademark to Linux, not GNU nor ~rms 23:52:23 hmm, I think busybox has some coreutils heritage, but the libc didn't 23:52:37 SunTzu: and? 23:52:46 SunTzu: people saying lies can always say lies. 23:52:59 SunTzu: we hold a trademark on GNU btw. 23:53:26 --- quit: gogonkt (Read error: Operation timed out) 23:53:26 elliott: i'd fold for busybox OS or similar. 23:53:39 elliott: but calling the OS for linux is not correct, since linux refers to the kernel only. 23:54:19 ams: Well, I think that's a very prescriptivist position to take, and I'm no prescriptivist. Language is how it's used, and it's undeniable that Linux in common usage refers to an OS with a Linux kernel, usually with GNU software on top but not always. 23:54:25 elliott: kinda funny when you say that you are running "Linux 2.6.36.1" or something :-) 23:54:46 Well, words can have multiple meanings :-) 23:54:49 elliott: it is not at all common knowledge. it is only used by those who are incorrectly informed. 23:55:04 ams: au contraire, plenty of people who know the GNU position still use the terminology that way 23:55:13 elliott: it is also immensly rude to those who wrote the OS to give credit for someone who only did a small work (in the grand scheme of things) 23:55:20 I'd hesitantly say, but without evidence, that even the majority who know the GNU position still use the terminology in that way 23:55:24 --- join: gogonkt (~info@2001:c08:3700:ffff::a:3a30) joined #forth 23:55:40 elliott: then that is even more damaging, and insulting, since they are discrediting our work. 23:56:25 most people actually say and write GNU/Linux these days anyway. 23:56:45 No... they don't. At least not in my experience. 23:57:08 elliott: they do, both in articles, and what not. 23:57:35 ams: Hmm... it's not my experience. Certainly many people call it GNU/Linux but I think "most" is a stretch. 23:58:01 elliott: you would be correct if you go back a few years, then it was more common to refer to GNU/Linux incorrecly as Linux. 23:58:11 but these days the opposite it true, which is good 23:58:16 Linux at least gets more Google results than GNU/Linux :) 23:58:20 Which is a completely scientific metric. 23:58:22 and you can help us clear up the mess 23:58:30 elliott: google will filter out the slash 23:58:32 ams, who is "we" in holding a trademark? 23:58:42 SunTzu: the Free Software Foundation 23:58:46 ams: not with +"GNU/Linux" 23:58:49 at least the results do not suggest that 23:59:52 anyway, the name is GNU, and has been that name since 84' 23:59:59 --- log: ended forth/11.03.09