00:00:00 --- log: started forth/07.04.05 00:00:32 --- quit: warp0x00 (Read error: 110 (Connection timed out)) 01:12:24 --- quit: DocPlatypus (Read error: 110 (Connection timed out)) 01:16:58 --- join: ygrek (i=user@gateway/tor/x-7f5d2283485ebe0f) joined #forth 01:30:31 --- join: brx (n=brx@p57A7A854.dip0.t-ipconnect.de) joined #forth 01:40:05 --- join: ygrek_ (i=user@gateway/tor/x-aba32547ea2d41e0) joined #forth 01:40:24 --- quit: tgunr (Read error: 110 (Connection timed out)) 01:46:13 --- quit: brx` (Read error: 110 (Connection timed out)) 01:50:34 --- quit: ygrek (Remote closed the connection) 01:51:54 --- join: tgunr (n=davec@70-41-219-171.cust.wildblue.net) joined #forth 01:57:34 --- join: brx` (n=brx@p57A7A790.dip0.t-ipconnect.de) joined #forth 02:04:40 --- quit: brx (Read error: 110 (Connection timed out)) 02:09:49 --- join: warpzero (n=warpzero@wza.us) joined #forth 02:17:20 --- quit: tgunr (Read error: 54 (Connection reset by peer)) 02:17:54 --- join: tgunr (n=davec@70-41-219-171.cust.wildblue.net) joined #forth 02:28:30 --- quit: yumehito (Read error: 145 (Connection timed out)) 02:32:12 --- join: brx (n=brx@p57a7b62d.dip0.t-ipconnect.de) joined #forth 02:47:38 --- quit: brx` (Read error: 110 (Connection timed out)) 02:57:24 --- join: brx` (n=brx@p57a7b23a.dip0.t-ipconnect.de) joined #forth 03:04:18 --- quit: brx (Read error: 110 (Connection timed out)) 03:36:32 --- join: brx (n=brx@p57a79854.dip0.t-ipconnect.de) joined #forth 03:38:30 --- join: tathi (n=josh@pdpc/supporter/bronze/tathi) joined #forth 03:38:30 --- mode: ChanServ set +o tathi 03:47:02 --- quit: brx` (Read error: 110 (Connection timed out)) 03:57:14 --- part: azekeprofit left #forth 05:02:21 --- quit: JasonWoof ("leaving") 05:05:29 --- join: b52 (n=b52@130.90.99-84.rev.gaoland.net) joined #forth 05:06:47 --- part: b52 left #forth 05:13:17 morning all! 05:22:34 Good morning 05:31:18 hi tathi 05:32:09 ayrnieu ? 05:43:16 --- join: azekeprofit (i=azekepro@88.204.194.0) joined #forth 05:44:00 vatic - what? 05:44:51 ayrnieu: I liked your comment about C last night... 05:46:24 oh, OK. 05:47:53 ayrnieu so C has a preprocessing state, followed by a compiling state, followed by runtime state, 05:48:36 where Forth can move back and forth at any time between interpretation and compilation, followed by a runtime state? 05:49:14 and of course interpreted Forth is much more powerful than CPP 05:52:16 here, I wrote about this recently: http://programming.reddit.com/info/1d2ck/comments/c1d37c 05:53:23 thanks, I'll have a look... 05:54:43 and although you saw that as last night, I wrote it in the early morning -- and need to go to bed, now. Good night :-) 05:55:44 ayrnieu see you! 06:14:15 --- join: yumehito (n=yumehito@b-internet.87.103.254.70.snt.ru) joined #forth 06:15:32 --- quit: azekeprofit (Read error: 104 (Connection reset by peer)) 06:15:49 --- join: azekeprofit (n=azekepro@88.204.194.0) joined #forth 06:54:34 --- join: madgarden (n=madgarde@bas2-kitchener06-1096651787.dsl.bell.ca) joined #forth 06:55:28 --- quit: azekeprofit (Read error: 104 (Connection reset by peer)) 06:56:52 --- join: azekeprofit (i=azekepro@88.204.194.0) joined #forth 07:08:03 --- quit: tathi ("leaving") 07:42:33 --- join: yumehito_ (n=yumehito@b-internet.87.103.254.70.snt.ru) joined #forth 07:48:08 --- join: madwork (n=foo@204.138.110.15) joined #forth 07:51:26 so FALIGNED returns a dataspace pointer aligned to the machine's representation of a float? 07:52:44 If so, if I say FALIGNED, do I need to say it after every FLOATS ALLOT, or will FLOATS keep the datapsace pointer FALIGNED? 07:53:32 --- join: tathi (n=josh@pdpc/supporter/bronze/tathi) joined #forth 07:53:32 --- mode: ChanServ set +o tathi 07:53:42 FALIGNED 1 FLOATS ALLOT 1 FLOATS ALLOT 3 FLOATS ALLOT ? 07:53:45 --- quit: yumehito (Read error: 110 (Connection timed out)) 07:54:04 I think you're mixing up FALIGN and FALIGNED 07:54:20 FALIGN aligns the data space pointer. 07:54:33 ALLOTing FLOATS will not un-align it. 07:55:00 FALIGNED takes an address and returns the next float-aligned address. 07:57:05 so for instance : FVARIABLE ( "name" -- ) CREATE FALIGN 1 FLOATS ALLOT DOES> ( -- f-addr ) FALIGNED ; 07:57:13 OK, thanks. I see that. SO as long as I'm alloting a series of floats, no need to realign? Only if I mix types, right? 07:57:17 right 07:57:40 thanks! 08:18:15 --- join: tgunr_ (n=davec@70-41-219-171.cust.wildblue.net) joined #forth 08:19:13 --- quit: tgunr (Read error: 104 (Connection reset by peer)) 08:27:11 --- quit: tgunr_ () 08:28:44 --- join: gordonjcp (n=gordonjc@cpc1-broo2-0-0-cust991.renf.cable.ntl.com) joined #forth 09:31:38 --- join: edrx (n=Eduardo@200.217.105.44) joined #forth 09:47:04 --- join: segher_ (n=segher@dslb-084-056-156-210.pools.arcor-ip.net) joined #forth 09:57:12 --- quit: segher (Read error: 110 (Connection timed out)) 10:05:51 --- nick: yumehito_ -> yumehito 10:24:12 --- quit: Snoopy42 () 10:28:45 --- quit: tathi ("leaving") 10:35:11 If I'm notating a stack diagram for a word that makes use of XTs, how do I abbreviate them? Something like: ( xt xt -- ) 10:36:38 I believe the standard uses 'xt' like you've done above. 10:37:17 thanks TreyB. 10:58:31 --- join: brx` (n=brx@p57a799ba.dip0.t-ipconnect.de) joined #forth 11:07:14 --- quit: brx (Read error: 110 (Connection timed out)) 11:08:39 --- quit: edrx (Read error: 113 (No route to host)) 11:13:01 --- nick: brx` -> brx 11:50:48 --- quit: azekeprofit (Read error: 104 (Connection reset by peer)) 11:50:51 --- join: azekeprofit- (n=azekepro@88.204.194.0) joined #forth 11:51:05 --- nick: azekeprofit- -> azekeprofit 11:54:13 --- join: brx` (n=brx@p57A78350.dip0.t-ipconnect.de) joined #forth 11:55:59 vatic, generally you'd do ( xt1 xt2 ... ) so as to differentiate. 12:04:05 --- join: brx`` (n=brx@p57a79006.dip0.t-ipconnect.de) joined #forth 12:05:47 --- join: brx``` (n=brx@p57A7B0B3.dip0.t-ipconnect.de) joined #forth 12:09:46 --- quit: brx (Read error: 110 (Connection timed out)) 12:13:07 --- quit: brx` (Read error: 110 (Connection timed out)) 12:21:17 --- quit: brx`` (Read error: 110 (Connection timed out)) 12:34:06 --- quit: azekeprofit (Read error: 104 (Connection reset by peer)) 12:34:21 --- join: azekeprofit (i=azekepro@88.204.194.0) joined #forth 12:43:55 --- quit: Quartus_ (Read error: 104 (Connection reset by peer)) 12:50:03 --- join: brx (n=brx@p57A7C3C9.dip0.t-ipconnect.de) joined #forth 12:53:18 --- join: ecraven (i=nex@eutyche.swe.uni-linz.ac.at) joined #forth 12:57:51 --- quit: brx``` (Connection timed out) 13:02:33 --- join: yumehito_ (n=yumehito@b-internet.87.103.254.70.snt.ru) joined #forth 13:08:02 --- join: JasonWoof (n=jason@c-71-192-30-169.hsd1.ma.comcast.net) joined #forth 13:08:02 --- mode: ChanServ set +o JasonWoof 13:08:16 --- join: brx` (n=brx@p57A78442.dip0.t-ipconnect.de) joined #forth 13:15:54 --- quit: yumehito (Read error: 110 (Connection timed out)) 13:23:07 --- quit: brx (Read error: 110 (Connection timed out)) 13:25:36 --- join: tathi (n=josh@pdpc/supporter/bronze/tathi) joined #forth 13:25:36 --- mode: ChanServ set +o tathi 13:27:00 --- quit: azekeprofit (Read error: 110 (Connection timed out)) 13:27:25 --- join: azekeprofit (n=azekepro@88.204.194.0) joined #forth 13:41:31 --- join: slava (n=slava@CPE0080ad77a020-CM000e5cdfda14.cpe.net.cable.rogers.com) joined #forth 13:41:31 --- mode: ChanServ set +o slava 13:44:28 --- part: azekeprofit left #forth 13:51:16 --- quit: ygrek_ (Remote closed the connection) 13:53:25 --- nick: brx` -> brx 14:20:26 good evening 14:21:08 hey crc 14:38:37 --- join: tgunr (n=davec@70-41-219-171.cust.wildblue.net) joined #forth 14:51:26 --- join: Quartus_ (n=Quartus_@209.167.5.2) joined #forth 14:51:26 --- mode: ChanServ set +o Quartus_ 14:54:08 --- join: brx` (n=brx@p57A7C7A4.dip0.t-ipconnect.de) joined #forth 14:54:57 --- quit: timlarson (Read error: 145 (Connection timed out)) 15:02:31 --- quit: brx (Read error: 110 (Connection timed out)) 15:02:55 this is a very open question, but assuming a certain amount of knowledge of Forth, and a certain amount of programming ability, how hard is it to write up a version of Forth from scratch? 15:03:15 assume a system with fairly simple I/O for a terminal and mass storage 15:04:08 anywhere from a weekend to several year. 15:05:44 heh 15:05:49 ask a stupid question... 15:06:05 well, i've been working on a language implementation for three and a half years now 15:06:13 --- quit: ecraven ("bbl") 15:06:19 maybe I'd be quicker fixing my Jupiter Ace 15:06:29 use someone else's forth. 15:06:33 no need to write your own. 15:06:59 haven't found one 15:07:11 what OS are you using? 15:07:14 there are hundreds of forths 15:07:25 yeah, not for my target machine though, not that I can find 15:07:45 I wasn't planning on using an OS, it's easy enough to use bare metal 15:07:59 what's the target machine? 15:08:12 PDP11/73 15:08:16 ugh 15:08:17 ok 15:08:22 :-D 15:08:44 I like the architecture, and I like Forth, so I thought, hey wouldn't it be good if... 15:08:57 I think porting a 68000 implementation would be a good place to start 15:12:18 --- join: brx (n=brx@p57a78a81.dip0.t-ipconnect.de) joined #forth 15:14:38 --- join: timlarson (n=timlarso@rrcs-24-123-46-28.central.biz.rr.com) joined #forth 15:26:44 --- quit: brx` (Read error: 110 (Connection timed out)) 15:49:14 --- join: brx` (n=brx@p57a7b20d.dip0.t-ipconnect.de) joined #forth 15:58:37 --- quit: brx (Read error: 110 (Connection timed out)) 16:09:53 --- nick: brx` -> brx 16:38:23 --- join: DocPlatypus (n=skquinn@adsl-75-54-182-88.dsl.hstntx.sbcglobal.net) joined #forth 16:39:48 I think I've finally figured out that base 32 problem and figured out # 16:45:50 : # base @ mu/mod rot digit hold ; 16:47:05 yeah ... well it's trickier in my case 16:47:22 how so? 16:47:26 I actually made my own # 16:47:41 so did i, and ^^^^ there you have it ;-) 16:48:00 well it's for a custom base 32 system... I need to skip I, O, and S 16:48:34 ah 16:48:45 i'd just do a table lookup if i were you :-) 16:49:08 you can still use the same # , it's DIGIT that you need changing :-) 16:49:22 hehe 16:49:42 this is GNU Forth, it doesn't have digit 16:50:05 well you need to redefine # so you can have DIGIT if you want :-) 16:50:37 : digit s" 0123456789ABCDEFGHJKLMNPQRTUVWXYZ" drop + c@ ; 16:50:47 with error checking if you care ;-) 16:55:27 --- quit: timlarson (Read error: 110 (Connection timed out)) 17:00:13 --- join: timlarson (n=timlarso@rrcs-24-123-46-28.central.biz.rr.com) joined #forth 17:17:37 --- quit: timlarson (Read error: 145 (Connection timed out)) 17:19:07 --- quit: tathi ("leaving") 18:11:09 well that's one way to do it, I kind of like my way better, though if I do it the other way around I think I have to use a table 18:14:51 --- join: edrx (n=Eduardo@201.5.12.96) joined #forth 18:16:03 --- join: timlarson (n=timlarso@user-12l37rb.cable.mindspring.com) joined #forth 18:35:39 hey 18:36:43 --- quit: Quartus () 18:59:16 --- join: Quartus (n=neal@CPE0001023f6e4f-CM013349902843.cpe.net.cable.rogers.com) joined #forth 18:59:16 --- mode: ChanServ set +o Quartus 19:08:31 --- join: brx` (n=brx@p57A7A7A1.dip0.t-ipconnect.de) joined #forth 19:18:33 --- join: brx`` (n=brx@p57a7a621.dip0.t-ipconnect.de) joined #forth 19:19:41 Ho! 19:23:56 --- join: brx``` (n=brx@p57a7a258.dip0.t-ipconnect.de) joined #forth 19:24:32 --- quit: brx (Read error: 110 (Connection timed out)) 19:26:00 --- quit: brx` (Read error: 110 (Connection timed out)) 19:26:58 great way to hose your current Forth session: 1 base ! 19:28:05 actually it doesn't hose it as bad as I thought... certainly one of the worse typos one can make though 19:30:11 decimal 19:30:13 hex 19:30:44 yeah I just tried that and indeed either bails you out 19:31:04 in a real pinch you can do: base base ! unless you are so unlucky that the address of base is 0 or 1 19:33:55 --- join: brx (n=brx@p57A79E54.dip0.t-ipconnect.de) joined #forth 19:36:44 --- quit: brx`` (Read error: 110 (Connection timed out)) 19:39:36 --- join: azekeprofit (i=azekepro@88.204.194.0) joined #forth 19:41:15 --- quit: brx``` (Read error: 110 (Connection timed out)) 19:46:08 --- join: brx` (n=brx@p57a7990e.dip0.t-ipconnect.de) joined #forth 19:55:10 --- quit: azekeprofit (Read error: 104 (Connection reset by peer)) 19:55:21 --- join: azekeprofit (n=azekepro@88.204.194.0) joined #forth 19:58:10 --- join: brx`` (n=brx@p57a799eb.dip0.t-ipconnect.de) joined #forth 20:00:41 --- quit: brx (Read error: 110 (Connection timed out)) 20:05:03 --- quit: brx` (Read error: 110 (Connection timed out)) 20:05:55 --- part: azekeprofit left #forth 21:21:51 DocPlatypus: 21:22:01 DocPlatypus: heh, yeah, I can see that being a problem 21:22:44 DocPlatypus: regarding base base !, what happens if you set base > 255? 21:22:57 utf8 characters? 21:23:04 gordonjcp: that's just a stopgap until you can set a proper base 21:23:19 hmm 21:23:45 (I'm not normally up at 5am) 21:24:14 decimal 255 256 base ! . 6 ok 21:24:56 The conversion of digits outside 21:24:56 this range is implementation defined. 21:25:14 'this range' being the mapping of 0...35 to 0-9A-Z 21:25:41 base64 would be a good one to implement, very useful 21:25:43 obviously I've never read the ANS Forth spec 21:25:51 Worth the read. 21:25:59 I've been reading it while bored at work 21:26:18 I may well retrieve my Jupiter Ace (or what's left of it) while I'm up at my Mum's over Easter 21:26:45 A forth-79 era Forth if memory serves, on the Ace 21:26:50 I have an emulator for it here somewhere 21:27:26 I've got figforth for the Epson HX20 on ROM somewhere 21:27:48 neither terribly useful gadgets 21:28:28 Quartus: possibly not now, but the HX20 I have was originally part of a sophisticated piece of medical monitoring equipment 21:28:40 now is what I'm talking about 21:29:05 what is forth used in now? 21:29:23 I was going to use it to write the firmware for a car ignition controller, running on a PIC microcontroller 21:29:31 openboot, for one. Lots of embedded work. 21:29:48 Spacecraft. Application development on PCs and handhelds. 21:29:48 oh, of course, openboot! I've used that, you'd think I'd remember 21:30:00 cool 21:32:43 I always feel you don't totally understand a piece of software until you've ported it to something, which is why I fancy writing a port of forth 21:34:40 I don't believe implementing Forth is a good way to learn Forth; in fact it may run in the opposite direction. 21:34:55 really? 21:35:03 what do you mean "run in the opposite direction"? 21:35:40 I mean the process of implementing Forth before you understand it may lead you to perceive the language in terms of the implementation you come up with, instead of in terms of its proper abstractions. 21:35:49 You can get anchored to a particular implementation strategy. 21:36:01 point 21:36:25 but then you're likely to do that with any implementation 21:36:33 Implementing Forth also teaches you nothing about how to write Forth. 21:36:55 although I can see what you mean, you get into a mindset of "It's not this way but it should be this way" 21:38:11 Implementing Forth is a damn sight easier than actually learning to write Forth, though. 21:39:00 I am planning to use Forth in another embedded application, as it comes closer to fruition I'll reveal more details 21:39:01 hence my search for a nice little Forth project 21:39:34 I strongly encourage you to learn Forth, rather than building another partial or broken implementation of it 21:40:21 I already know Forth to an extent, perhaps not as well as I know C but at least enough to get my head around it 21:42:37 --- part: edrx left #forth 21:43:32 Well, there's always more to learn. 21:43:37 oh definitely 21:44:17 I'm keen to get my ignition controller going in hardware, I've got part of the software written already 21:44:27 I'm just now getting back into programming 21:44:40 when I was last seriously into programming, I had lazy summer afternoons between school years 21:44:43 just need to go and find places to mount a speed sensor 21:45:31 It can be hard to find time to work on code. I keep a project or two on the Palm and work on them when I'm stuck somewhere. 21:45:44 see I don't have a PDA 21:45:50 nor a laptop 21:46:19 I have a libretto, old P133-ish "palmtop" 21:46:21 it's hard for me to understand modern software, everything has gotten so complex 21:46:23 The Palm fits in a pocket, so it's always on hand 21:46:29 hey Quartus 21:46:33 Hey Slava. 21:46:35 well, it's bigger than a palmtop, about the size of a VHS tape 21:46:43 it's like popping the hood on a 2007 Neon when you last worked on carburetor-era engines 21:46:45 i find it easier to work on projects when i'm on my rather large computer. 21:46:52 i never liked laptops much. 21:46:59 "what the quack's this EFI stuff?" 21:47:06 Quartus: I tried coding on my Palm Vx but using graffiti was very very time consuming 21:47:09 you can ignore EFI. 21:47:14 DocPlatypus: heh 21:47:16 if you're writing applications, it never enters the picture. 21:47:23 they've even done away with idle adjustment screws. you can't just idle up the car to keep it from dying out on you now 21:47:35 gordonjcp, I can't write code faster than I can graffiti, so it's never been an issue for me 21:47:39 slava: I'm drawing an analog to cars here 21:47:42 DocPlatypus: ah, but if it's doing that, it's doing it for a reason 21:48:13 DocPlatypus: just to extend your analogy, if it doesn't work, there must be a reason, and if you can't tell just by looking or listening you can plug in and ask it 21:48:36 "Oi, what's wrong with *you* today" "21 31 32 45 11" 21:48:42 LOL 21:48:59 modern software and hardware is vastly more complex, but also more capable. 21:49:37 modern hardware can simulate vastly simpler hardware -- at greater-than-original speeds! 21:49:41 actually I think OBD starts with 12 and ends with 11 21:49:49 but you get the idea 21:49:53 yeah 21:50:11 OBDII I've not played with, the newest car I have is 1991 and doesn't have it 21:50:33 the disadvantage is if it's just the electronics that don't work, and the car runs fine, you can still fail inspection on OBD-II cars 21:50:49 yeah, but as I say, there's usually a good reason for it 21:50:50 I have a 1993 Plymouth Sundance 21:51:01 it has the old OBD-I or 1.5 not sure which 21:51:15 or some Chrysler-specific OBD 21:51:34 in the UK at least, you can't fail the MOT based on what the diags say - if the emissions are right and the ABS light goes out when it's supposed to, that's all they want to know about the electrickery 21:51:53 slava, I see werty on about ASCII as a bottleneck for his brilliance again 21:52:00 DocPlatypus: Plymouth Sundance rings a bell - think it may have a Peugeot-derived engine? 21:52:03 well in Texas (US) OBD-II rules all 21:52:09 was it werty who was offering $100 for a disassembler? 21:52:15 if you have it 21:52:15 I didn't see that. 21:52:27 I may try to chase down a 1995 Dodge Shadow if this car croaks 21:52:33 DocPlatypus: one of my cars - '88 Citroen CX - has analogue ABS 21:52:40 that being the Dodge analog to the Plymouth Sundance 21:52:49 this car has no ABS and only driver's side airbag 21:53:16 as in, ABS implemented with lots of opamps and comparators, and a certain amount of discrete CMOS 21:53:17 power nothing, automatic nothing besides the transmission, and a 2.2L L4 engine 21:53:56 heh 21:54:39 yeah, I like them simple, too 21:54:57 at times I hate hand-crank windows but I have had many power windows fail on me 21:55:05 to drift marginally back on-topic though, I wanted to implement an ignition timing controller, because the distributor is knackered 21:55:11 and the timing is all over the place 21:55:12 but my passenger's side window will not roll back up after I roll it down, it's off the track 21:55:48 I figured, hey, it's getting in the direction of control systems, vaguely along the lines of robotics 21:55:59 so let's write it in Forth 21:56:52 I like the concept of Forth, I wish I had found it when I first started programming 21:57:03 I'm slowly figuring it out 21:57:19 it's a nice language 21:57:46 I got into it in the early-to-mid 80s when I was at school, and a friend of my Dad's gave me his Jupiter Ace which he couldn't make sense of 21:58:10 Sell the ace, buy yourself a Palm :) 21:58:27 times have changed 21:58:38 the odds are better than even now a kid's first computer will be a PC with some version of Windows on it 21:58:44 and not surprisinly I think this is a bad thing 21:59:17 Windows does not come with any BASIC at all that I know of. heck, Visual Basic was discontinued from what I understand 21:59:36 but I see the concept here. Microsoft does not want too many people to become programmers 22:00:02 windows ships with interpreters for VBScript, JScript and batch files. 22:00:16 DocPlatypus: yeah 22:00:17 batch files aren't really programming 22:00:17 If you want a BASIC, there's a zillion you can google. www.freebasic.net is a good one 22:00:38 well... there was a certain magic about using batch files to pull off amazing things with just a return code mechanism 22:00:39 If you want a BASIC, you should probably think carefulyl 22:00:43 back in the MS-DOS era 22:00:44 and then install Python 22:00:49 DocPlatypus: yeah 22:01:07 ingenious use of shell variables, and all that... 22:01:12 Modern structured basics are fine. 22:01:13 but again, I am talking about what comes with the computer. time was when GW-BASIC came with MS-DOS 22:01:22 gw-basic was crap though. 22:01:25 GW-BASIC was crap. 22:01:29 Line-numbered and slow. 22:01:37 well it was enough to get people interested in programming 22:01:43 are you sure GW-BASIC had line numbers? 22:01:50 yes it did 22:02:02 hm, what BASIC came with DOS 6.0? 22:02:11 QBASIC. 22:02:16 qbasic, interpreter only 22:02:20 but back through about 1985, single board computers based on processors like the Z80 or 6502 were common 22:02:31 ah, of *course* 22:02:39 not that we should bring those back, but it's worth noting both of those chips are still being made 22:02:46 DocPlatypus: well, funny you should say 22:03:04 DocPlatypus: but I'm considering a simple design for an 8-bit SBC for a local electronics club 22:03:20 there's a certain magic about making a minimalist computer do things, no mouse, no GUI, just typing on a keyboard 22:03:38 probably just (initially) a Z80, some LEDs, a serial port and some RAM 22:03:55 DocPlatypus: yeah - I like my PDP-11 22:04:01 would it be feasible to make a SBC based on a Z80 that is accessible via USB? 22:04:02 And a hobbyist might buy an old computer just to play with. You're not going to start an intellectual fire by offering people a computer they can't put to any practical use, though. 22:04:10 DocPlatypus: oh yeah, there actually are kits 22:04:26 Quartus: depends on the application 22:04:29 * slava prefers modern computers, for various reasons. 22:04:54 anybody can make a box with a 1GHz processor and 256M of RAM do amazing stuff 22:04:57 Quartus: if people want to learn about how computers actually work, something like a 70s-era SBC is vastly more useful than a modern PC 22:05:06 It depends on there actually being an application. When the 8-bit computers had their heyday, it was the most computer you could buy for the money, representing a leading-edge of some kind. That mattered. 22:05:11 it takes real programming skill to do the same with a Z80 and 64K of RAM 22:05:20 hmm. i like to think i know how computers work, and here i have a quad cpu power mac. 22:05:52 slava: yeah, but if you wanted to learn about it at an electronic level, which would you rather play about with the insides of? 22:06:00 Quartus: I agree. but these days, people take that for granted 22:06:04 *shug* 22:06:08 i write software, i don't do electronics 22:06:23 are terminals still being made? 22:06:24 slava: so you're not the target audience, and that's fine 22:06:33 or do you have to buy a PC with a terminal emulator? 22:06:36 DocPlatypus: apparently so, I can't remember who by though 22:06:40 You can understand how a computer works at any given level without going at it with a soldering iron. 22:06:48 DocPlatypus: someone bought DEC's terminal division 22:07:00 Quartus: some people would prefer to poke the real physical electronics 22:07:12 gordonjcp: hopefully not Microsoft just so they could bury it 22:07:30 DocPlatypus: no, they are still making them, just not many... 22:07:36 gordonjcp, once you're working with VLSI, you're not poking at anything but support hardware. 22:07:57 Quartus: it's the same reason - to go back to DocPlatypus's car analogy - that people do car maintenance courses at night school 22:08:13 all they really need to know is how to change a flat tyre 22:08:14 just curious, any hockey fans here, in particular NHL etam fans? 22:08:16 Really? How many people study Model T engine repair? 22:08:40 they're never going to strip down the cylinder head of their Volvo V70 in their driveway, but they feel they want to know how it works 22:09:02 there's nothing wrong with wanting to know how it works, sometimes it's useful. 22:09:20 Quartus: wtf has Model Ts got to do with it? 22:09:22 I feel like it's useful to know how to use a command line 22:09:31 it's knowledge the average person doesn't have 22:09:43 Quartus: do you really think every piece of computing machinery has a quad Xeon and 2 gig of ram? 22:09:57 being able to say "don't bother plugging in the mouse" has a kind of surprise factor to it 22:10:29 and I have to agree, devices have computers that people don't think of as computers 22:10:50 everything besides the most basic all-mechanical device probably has a computer inside it 22:11:07 DocPlatypus: well, pretty much any car 22:11:17 The point is that in your car analogy, there are cars that are old, useless, and obsolete. Likewise there are computers that are. Learning to repair an ancient car would be as useful to a modern car owner as learning 8-bit hardware would to anyone wanting to work with modern stuff. 22:11:24 DocPlatypus: my washing machine has an embedded CPU that is on a par with a Mac Classic 22:11:32 really? 22:11:35 68000 based? 22:11:59 DocPlatypus: yup, some form of Dragonball, just to run a pretty basic washing machine 22:12:07 Quartus: sorry, but that is frankly nonsense 22:12:34 Quartus: there are a lot of people who buy and restore old cars purely for the fun of it 22:12:35 Ah, well, in that case. 22:12:46 likewise there are people who buy and restore old computers purely for the fun of it 22:13:10 what does the hobbyist market for antique crap have to do with whether it's of value to teach computers using old junk? 22:13:10 just because you personally don't see them as useful doesn't make them any less useful to their owners 22:13:14 it saddens me to see forth automatically associated with 'old computers', though. 22:13:28 slava, I don't make that association. 22:13:51 Quartus: I'm beginning to suspect I'm being trolled... ;-) 22:13:54 well, here in #forth, there is a considerable amount of discussion about old computers. 22:14:12 A strength of Forth is that it can run in extremely limited environments. 22:14:23 agreed. I was surprised at just how small the images were for gforth 22:14:37 Quartus: I lot of the people that I teach develop hardware and software for things like kinetic art. A bit wanky, I know, but they seem to enjoy it and it stops them turning their attention to something sinister 22:14:38 yeah, but a modern embedded CPU is not the same thing as some dusty 8 bit apple //. 22:14:39 I'm not trolling you, gordonjcp. I just disagree with the notion that computers can't be learned without living through the 8-bit age. And I say that as someone who *did*. 22:14:40 I looked at RetroForth and I was like... "this whole thing is written in assembler?" 22:14:57 slava: the only difference in the new Z80 is it can run at 50 MHz 22:15:03 well 22:15:08 maybe not the only, but probably the biggest difference 22:15:15 I mean, for a Z80, that's blazing 22:15:21 Quartus: now a lot of them use stuff like PIC microcontrollers to base their work on, which are very similar to the older CPUs in terms of speed, memory etc 22:15:33 Quartus: it depends what you mean by "learned" 22:15:39 Great. That's not what we're talking about in any way. That's a niche enthusiast market. 22:15:57 DocPlatypus was going on about how kids these days can't learn computers properly because they're too complicated. 22:16:03 Quartus: some people are happy to say they've "learned computers" when all they've done is a short course in MS Word 22:16:14 Which is also not what we're talking about. 22:16:39 now some of the people I work with want to know what's going on with the computer at gate-level 22:17:33 'cos if you can get your head around a simple little 8-bit machine with fairly simple architecture, you can see how that would map to more modern machinery 22:18:01 you're never going to actually build hardware for your brand new 3.2GHz P4, but at least you've got an idea of why things are the way they are 22:18:32 stuff like memory maps, why is it laid out like that? Why do things have an IO address and a memory address? 22:23:06 slava, true. 22:23:12 gordonjcp: some of them barely learn the GUI, much less a word processor 22:23:15 and on a purely aesthetic note, hanging a bunch of LEDs off the address and data lines, and hooking the clock up to a 4MHz signal genny then winding the clock speed down as the program is running until you can see the individual CPU states is pretty cool 22:23:28 --- join: brx (n=brx@p57a78099.dip0.t-ipconnect.de) joined #forth 22:23:30 I would agree completely 22:23:48 DocPlatypus: that's the good thing about computers, there's something for everyone to learn 22:24:06 it's fine if you only want to go as deep as high-level languages like C and Forth 22:24:26 GUIs are nice, granted, it took me a good 5 years to finally realize it wasn't GUIs I hated, it was Windows 22:24:29 perfectly OK to only know how to use Word, Excel and a browser 22:24:36 DocPlatypus: tried Ubuntu? 22:24:41 gordonjcp: I use Debian 22:24:50 very similar 22:24:53 I have also used OpenBSD and FreeBSD, and other GNU/Linux distributions 22:25:03 yes Ubuntu was a fork of Debian, still uses the .deb packaging system 22:25:05 I'm just doing the final bits on a new Ubuntu install to get it ready for my Mum 22:25:27 eep, 0710 - I should have been on the road an hour ago! 22:25:34 oy 22:25:37 anyway 22:26:04 is it still worth it to learn, say, Z80 assembler? 22:26:12 ah, no, clock is fast - 06:24 22:26:24 DocPlatypus: yeah, possibly 22:26:45 although the embedded market is moving more to things like PIC and Atmel AVR 22:26:47 I feel like kicking myself for not learning it back when the chip was relatively new. I learned 6502 assembler, and stopped there 22:27:09 I know of the TI MSP430, and I kind of like it 22:27:42 just taking brief looks at what the chip can do from their documentation and the fact you can get a USB-based eval kit from TI for $20 22:28:18 well there's lots of kit out there that still uses Z80s 22:28:24 lots of emulators 22:28:42 if you fancy trying your hand at games programming, the original Gameboy uses a Z80 variant 22:28:49 indeed 22:29:32 one project I wanted to do was make a fully tweakable arcade game emulator, something like MAME except it read in text-based configurations 22:29:55 so you could, say, start writing code for Pac-Man hardware by just tweaking a few lines without having to go muck with the source 22:30:40 not sure if I'll still have time to do it 22:31:59 well a lot of old arcade games had broadly similar hardware 22:32:08 anyway, don't let discussions of usefulness put it off 22:32:16 not everything has to be conventionally useful 22:32:35 well... I'm not saying it wouldn't be useful, just that my interests have changed a bit 22:32:46 I have a huge pine cone that my sister found that sits on my bookshelf - it's not useful, but I like looking at it 22:37:02 * gordonjcp -> off 22:37:09 ok 22:37:13 have a good one 22:37:14 time to pack this off and drive 220 miles 22:37:28 ttyl 22:39:16 --- quit: brx`` (Read error: 110 (Connection timed out)) 22:39:41 ______________________________-____________ 22:39:41 Little man in box dont 22:39:41 understand ASCII ...... 22:39:41 ha ha ha ha ha ha ha LOL .... 23:01:27 It means to toss excessive bagage , 23:01:28 yet all here , insist on defining 23:01:28 more arbitrary definitions ! 23:06:15 haikus are easy 23:06:15 but sometimes they don't make sense 23:06:15 refrigerator 23:08:00 --- join: brx` (n=brx@p57a78581.dip0.t-ipconnect.de) joined #forth 23:08:14 when I worked at IBM doing tech support I started closing off tickets in Haiku in the week leading up to Christmas 23:08:36 by Christmas Eve (yes, I was working Christmas Eve) they were getting a bit... strained 23:08:43 This once was easy 23:08:56 They're getting harder to write 23:09:03 I wish I hadn't 23:15:18 --- quit: brx (Read error: 110 (Connection timed out)) 23:15:39 --- join: brx (n=brx@p57a7c24a.dip0.t-ipconnect.de) joined #forth 23:18:47 two days ago my good friend Jim said this seriously: 23:19:03 "Do you want to know my secret to life? If something irritates you, complain about it." 23:19:56 then after my laughter died down a bit said: "Because then you get it out of your system and can deal more clearly with the situation." 23:20:38 might not be funny out of context 23:30:59 --- quit: brx` (Read error: 110 (Connection timed out)) 23:33:01 --- join: brx` (n=brx@p57A7BECF.dip0.t-ipconnect.de) joined #forth 23:41:22 --- quit: brx (Read error: 110 (Connection timed out)) 23:42:00 --- quit: tgunr (Read error: 104 (Connection reset by peer)) 23:42:09 --- join: brx (n=brx@p57a7b02a.dip0.t-ipconnect.de) joined #forth 23:45:47 --- join: tgunr (n=davec@70-41-219-171.cust.wildblue.net) joined #forth 23:56:47 --- quit: brx` (Read error: 110 (Connection timed out)) 23:59:59 --- log: ended forth/07.04.05