00:00:00 --- log: started forth/20.10.10 01:06:50 --- quit: proteusguy (Ping timeout: 260 seconds) 01:18:26 --- join: proteusguy joined #forth 01:18:26 --- mode: ChanServ set +v proteusguy 01:44:13 proteusguy: seems to be quite popular among ASM developers, anyhow 02:05:13 --- quit: jsoft (Quit: Leaving) 02:05:49 --- join: jsoft joined #forth 02:13:05 Popular is a bit of a stretch; most programmers targetting intel or amd use nasm or gas. fasm is more popular with university students, ime. 02:14:03 (gas with intel syntax, naturally) 02:19:03 And for other relatively modern ISAs, I, myself, and most of the programmers I know use gas or equivalent assemblers from sdcc. 02:28:38 I think you guys often forget that most forth programmers tend to talk to embedded programmers and there is a whole world of bloated high level code which you might not interface with very much. 02:33:02 Thank goodness for that. 02:46:23 I have heard forth programmers say things which are very true for embdedded but dont apply at all for other kinds of programming. 02:47:19 That is tautological. 03:18:53 lisbeths, that is why i said you can synthesize - with + and XOR which is what you use to negate 03:21:42 0x3 XOR 0xFF = 0xFC = -3 for 8 bit number for example 03:23:52 5 - 3 = 5 + (3 XOR 0xFF) = 5 + 0xFC = 0x102 ie 2 with carry set meaning positive result 03:24:09 thanks I will try to remember that trick. What do you call this kind of math where logic gates are used for more than just truth tables? 03:24:27 lisbeths: Forth solves different kinds of problems. It makes sense to do everything by yourself on embedded but or something like a web server that has to integrate with graph databases, yeah I'd go with level code 03:24:43 s/or/on 03:27:21 actually 5 + 0xFC = 101 so make sure to set carry bit before addding 03:30:03 lisbeths, dunno if theres a name for it. the CPU is using logic gates internally for all this. other processors do the XOR 0xFF in hardware. this one just makes you do it yourself 03:30:48 same on the 8x305 iirc 04:46:19 --- join: f-a joined #forth 05:58:18 --- quit: Zarutian_HTC (Remote host closed the connection) 06:05:16 --- quit: f-a (Quit: bb) 06:14:33 lisbeths, it's called two's compliment arithmetic 06:50:15 one thing which I have still failed to understand is why you need a second stack 06:51:34 I mean I guess I have two stacks, one being the call stack 07:17:46 --- join: f-a joined #forth 07:40:59 lisbeths, if you put your return address on the same stack as your data, you would have to take that into account when you pass arguments on the stack 07:41:36 : sum + ; 5 6 sum 07:42:34 if you put the return address on the same stack with the 5 and 6 and + adds the first two items, it will add the return address to 6 instead of 5 to 6 unless you design the word to skip over the first thing (the return address) it finds on the stack 07:46:21 but then you would need two versions: one + that skips over the return address and one that doesn't since just 5 6 + should NOT skip the first thing it finds 07:52:44 --- join: Zarutian_HTC joined #forth 08:14:37 --- quit: dave0 (Quit: dave's not here) 08:40:25 --- quit: f-a (Ping timeout: 265 seconds) 08:40:54 --- join: f-a joined #forth 08:52:45 --- quit: Zarutian_HTC (Ping timeout: 256 seconds) 09:41:42 --- join: Zarutian_HTC joined #forth 10:31:13 siraben: re: flat assembler; I used it extensively in the past, when I was doing x86 assembly. (I was the maintainer/porter of the version using libc for i/o on various Unix systems at the time) 10:53:02 --- join: WickedShell joined #forth 11:35:05 --- quit: gravicappa (Ping timeout: 260 seconds) 11:38:32 --- join: gravicappa joined #forth 11:52:26 --- quit: iyzsong (Quit: ZNC 1.7.5 - https://znc.in) 11:52:41 --- join: iyzsong joined #forth 12:35:56 --- quit: sts-q (Quit: ) 12:38:34 --- join: sts-q joined #forth 12:40:25 --- quit: f-a (Ping timeout: 260 seconds) 12:42:08 --- join: f-a joined #forth 13:47:02 --- quit: gravicappa (Ping timeout: 272 seconds) 13:50:00 siraben: I started a project on GAS, restarted with NASM, and again started over with Fasm. 13:50:00 siraben: Fasm was by far the most fun. I think it has the better syntax, is superfast 13:50:00 siraben: and a clear and simple handling. Fasm is written in Fasm. Tomasz did over the 13:50:00 siraben: years and still does a great job. 15:30:46 --- quit: f-a (Quit: leaving) 18:31:18 --- join: f-a joined #forth 18:37:32 --- join: boru` joined #forth 18:37:34 --- quit: boru (Disconnected by services) 18:37:37 --- nick: boru` -> boru 19:04:33 --- quit: WickedShell (Remote host closed the connection) 19:49:41 --- join: dave0 joined #forth 20:30:55 --- quit: sts-q (Ping timeout: 265 seconds) 20:42:59 --- quit: f-a (Ping timeout: 246 seconds) 20:49:34 --- quit: tabemann (Remote host closed the connection) 20:50:15 --- join: tabemann joined #forth 21:05:48 --- join: f-a joined #forth 21:29:26 --- quit: f-a (Ping timeout: 240 seconds) 21:32:52 --- join: sts-q joined #forth 21:35:49 --- join: gravicappa joined #forth 21:41:00 --- quit: dave0 (Quit: dave's not here) 22:39:24 --- quit: _whitelogger (Remote host closed the connection) 22:42:25 --- join: _whitelogger joined #forth 23:59:59 --- log: ended forth/20.10.10