< 1236988800 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Of course any interesting program I've tried hasn't really worked well on dosemu. < 1236988800 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, um. Yet it is available on x86_64? How is that possible < 1236988809 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :iirc long mode prevents vm86() < 1236988851 0 :cherez!n=cherez@69.76.143.134 JOIN :#esoteric < 1236988865 0 :cherez!unknown@unknown.invalid PART #esoteric :? < 1236988872 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :at least virtual 8086 mode is not available even from 32-bit compat mode under long mode according to AMD docs iirc < 1236988896 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I didn't do it, I don't know how it works. But the vm86 trick is what it used to do, anyway. < 1236988903 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1236988937 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway thanks to recent coverage analysis I have found two real bugs in cfunge. + a lot of stuff mycology doesn't test. Now to debug those bugs... < 1236988939 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :While dosbox actually emulates a CPU too. < 1236988975 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :This performance is ridiculous. < 1236988994 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1236989003 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Like really ridiculous. < 1236989011 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I can see the line go from the left to the right of the screen. < 1236989015 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, rewrite it in ASM < 1236989016 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(And it's drawing top-down!) < 1236989018 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: NO NO NO < 1236989024 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why not? < 1236989028 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NOOOOOOOOOOOOOOOOOOOOOOOOOOOOO < 1236989030 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :BAD AnMaster!! < 1236989033 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why? < 1236989040 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :BEACUSE I HAVE _SOME_ SANITY < 1236989047 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :On x86, dosbox also has some "dynamic instruction translation" option, which is faster but less accurate. < 1236989056 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh shit, this is going to go further than the video memory < 1236989058 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ok then. POKE machine code somewhere, then jump to that < 1236989058 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :WILL IT CRASH?! WHO KNOWS < 1236989059 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1236989063 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: That's actually in the docs. < 1236989068 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what?! < 1236989071 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yeah. < 1236989075 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :-_- < 1236989085 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: where is it again? < 1236989085 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Didn't you see my copy-paste. The help file has some inline machine code examples. < 1236989090 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1236989096 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, must have missed that < 1236989099 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :http://zem.fi/~fis/qbu.html#QEw4MDhh < 1236989103 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The CALL ABSOLUTE statement. < 1236989143 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what is the calling convention < 1236989146 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so you can return and such < 1236989155 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Holy shit. < 1236989159 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :H o l y s h i t < 1236989161 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I crashed dosbox < 1236989162 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Not even cleanly < 1236989164 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, err < 1236989164 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It just exited < 1236989166 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You do a RETF when you want to return. < 1236989166 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :huh < 1236989170 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Wanna know how? < 1236989172 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :CALL ABSOLUTE(0) < 1236989176 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hah < 1236989176 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*BOOM* < 1236989188 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, segfault? < 1236989192 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Dunno < 1236989195 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :And you can't return any values or anything. < 1236989212 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Example: < 1236989212 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : PRINT "Game over." < 1236989214 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : END < 1236989215 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Of course you can manipulate the memory allocated for some BASIC variable if you want to return something. < 1236989215 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I mean it is possible the memory at 0 could have contained something to stop the machine < 1236989216 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's so depressing. < 1236989218 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :HLT or whatever < 1236989225 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Er, the memory at 0 contains nothing, AFAIK. < 1236989230 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well. < 1236989233 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :PRINT PEEK(0) prints 112. < 1236989236 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Is 112 HLT? :P < 1236989239 0 :FireyFly!unknown@unknown.invalid QUIT :"Later" < 1236989240 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no idea < 1236989249 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and HLT is the wrong one anyway < 1236989253 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Typically the memory at 0 in a dos system contains the interrupt vector table. < 1236989256 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :HLT halts until interrupt iirc < 1236989264 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :HCF < 1236989277 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : To build programs that Use a Basic development environment that < 1236989277 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : require over 160K of memory supports creating large programs. < 1236989281 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :LAAAAAAAAAAAAAARGE PROGRAMS < 1236989288 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : To distribute your programs Use Microsoft Visual Basic for MS-DOS or < 1236989293 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :t'was contaminated even then < 1236989338 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :HLT Halt < 1236989338 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Causes the microprocessor to halt instruction execution and enter the HALT state. Entering the HALT < 1236989338 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :state puts the processor in low-power mode. Execution resumes when an unmasked hardware interrupt < 1236989338 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(INTR), non-maskable interrupt (NMI), system management interrupt (SMI), RESET, or INIT occurs. < 1236989353 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is AMD64 docs. But iirc it was introduced quite early on < 1236989355 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not sure when < 1236989364 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: "The current version of the CPU emulator, as of dosemu-1.1.x, has been rewritten from scratch, and is now called simx86. -- Added a native 64-bit port for x86-64, which, by default, uses CPU emulation for V86 mode, and runs DPMI code natively." < 1236989367 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :maybe 386, maybe a bit later < 1236989372 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :So that's what dosemu does on x86-64. < 1236989380 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, I see < 1236989390 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, DPMI? < 1236989391 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It has a dosbox-like full CPU emulation, but it only uses that when it has to. < 1236989400 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's the DOS way of running in protected mode. < 1236989407 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1236989410 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"DOS Protected Mode Interface". < 1236989413 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : /G Sets QBasic to update a CGA screen as fast as possible < 1236989414 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : (works only with machines using CGA monitors). If you < 1236989416 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : see snow (dots flickering on the screen) when QBasic < 1236989418 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : updates your screen, your hardware cannot fully support < 1236989420 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : this option. If you prefer a clean screen, restart < 1236989422 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : QBasic without the /G option. < 1236989424 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :IF YOU PREFER A CLEAN SCREEN < 1236989435 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, yes and? < 1236989445 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :xD < 1236989449 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, idea: Haskell -> QBasic translator < 1236989452 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :XD < 1236989454 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1236989458 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :YES! < 1236989480 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :call it QHaskell. Or HBasic? < 1236989487 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://zem.fi/~fis/qb.html#QEw4MDgz < 1236989491 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AIAEEEEEEEEEEEEEEE < 1236989505 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : ■ Remarks are ignored when the program runs unless they contain < 1236989505 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : metacommands. < 1236989506 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ha ha ha what < 1236989516 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://zem.fi/~fis/qb.html#QEw4MDdi < 1236989517 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1236989519 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :They go in COMMENTS> < 1236989521 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: '$DYNAMIC < 1236989524 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :commands that work from comments < 1236989527 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :horrible < 1236989533 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :basically it's for compatibility with other versions of BASIC < 1236989535 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which didn't read them < 1236989546 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :however, given that $STATIC and $DYNAMIC change the semantics of the language... < 1236989549 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, err INTERCAL has comments like that < 1236989552 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :kind of < 1236989558 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's a bit like #pragma. < 1236989585 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Except maybe even a tiny bit uglier. < 1236989590 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: not really < 1236989603 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's more INTERCAL doesn't have comments, people abuse syntax errors as comments < 1236989610 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well yeah < 1236989622 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :BASIC as a scripting language for a C program: < 1236989627 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :In C, < 1236989642 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :funcptr basic_funcs[512]; < 1236989650 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :in basic_funcs, put pointers to machine code. < 1236989660 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, err... what? < 1236989663 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wait for it < 1236989666 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then, to execute a basic program, < 1236989677 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :put an INPUT line, that reads into cFuncsBase < 1236989683 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and then procedure definitions < 1236989687 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that use CALL ABSOLUTE to call into them < 1236989689 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, where is this from? < 1236989691 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then cat the program to it < 1236989692 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then, run it < 1236989695 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: nowhere, I just invented it < 1236989700 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1236989706 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: discuss the awfulosity < 1236989710 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, also DOS doesn't have cat < 1236989718 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's not the point. < 1236989721 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1236989761 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, so is this extending C with BASIC or BASIC with C? < 1236989769 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Former < 1236989776 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :An old-school game scripting language scheme :P < 1236989778 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, so the C program starts first? < 1236989784 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sort of < 1236989786 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you do < 1236989789 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :system("qbasic ...") < 1236989789 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :in C < 1236989794 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well < 1236989795 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :except more complex < 1236989800 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and it can call back to C? < 1236989801 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :since you write the address of basic_funcs to its stdin < 1236989805 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh wait, no fork() < 1236989807 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and yes, via the funcs you specially set up and pointers < 1236989816 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: fork() is impossible altogether in DOS < 1236989818 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :how can that even work. How can you know basic won't overwrite your memory= < 1236989818 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :? < 1236989822 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you don't < 1236989824 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you never do in DOS < 1236989842 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"Code your own computer opponent with the Microsoft QBasic language you know and love. Just use our library of standard game procedures in your program—they're there automatically!" < 1236989852 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well. I mean system() can't really work if you have been overwritten when it returns < 1236989872 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, heh < 1236989880 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if the user overwrites the game from his AI, that's his own shit-stupid fault and he gets what he deserves < 1236989934 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :then something happened... Between 1990 and 2000... < 1236989938 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1236989947 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :? < 1236990015 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, memory protection started going mainstream more and more. Windows NT. Later during 200x: windows xp. < 1236990020 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1236990030 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :windows nt didn't really hit home users < 1236990035 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well, this passes around a pointer from another app that you jump to < 1236990035 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but work places mostly < 1236990039 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so it wouldn't work anyway with memory protection < 1236990048 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: is there -no way- to multitask in dos? < 1236990051 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I doubt that would work even under Windows 9x < 1236990055 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :there has to be, surely, see: all the advanced dos programs < 1236990066 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: you can do cooperative multitasking sort of < 1236990072 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but you normally need cooperation from both programs < 1236990076 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, TSR? < 1236990082 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yeah, we don't control qbasic so that's not an option < 1236990086 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you effectively have to write your own OS kernel above DOS in order to do competitive < 1236990097 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, as AnMaster says, there were TSRs < 1236990106 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah, that could work < 1236990106 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which basically worked by hooking the interrupt table in evil ways < 1236990111 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :have the qbasic program tsr < 1236990114 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :while the game keeps running < 1236990121 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and then, in the game loop, have a resumeQBasic() < 1236990122 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure if you can get QBasic to TSR < 1236990122 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :at the end < 1236990125 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I doubt you could do that in qbasic < 1236990128 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it can execute arbitrary machine code < 1236990129 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well POKE machine code... < 1236990148 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so you'd just have a snippet to tsr, then control it from C < 1236990159 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric := Scripting a C DOS game with QBasic! And as a side effect having it crawl to a stop. < 1236990164 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :WHAT NOT TO LIKE < 1236990199 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :s/LIKE/DO/ < 1236990312 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1236990316 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: have you got any qbasic programs lying around? < 1236990319 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'd love to try them :) < 1236990332 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ahahaha < 1236990332 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: they were mostly on a really old laptop that doesn't work nowadays < 1236990337 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what a silly typo < 1236990341 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :let me run a quick slocate to see if any survived < 1236990343 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: wut < 1236990356 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :buf[n] = '\0'; vs. buf[STRINGALLOCCHUNK] = '\0'; < 1236990381 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nope, apparently none of them did, pity < 1236990393 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I see < 1236990431 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'd love a sort of "QBasic 2009" dealie < 1236990438 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :nowadays it's all about Visual Basic < 1236990450 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, VB.NET < 1236990451 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :even < 1236990457 0 :zzo38!n=zzo38@h24-207-48-53.dlt.dccnet.com JOIN :#esoteric < 1236990457 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes, but I don't mean actually basic < 1236990464 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :just a really simple language you can do SDL-y stuff in < 1236990465 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :would be nice < 1236990466 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh, hi zzo38 < 1236990478 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, hm... asm? < 1236990482 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :we. < 1236990482 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: http://www.newscientist.com/blogs/shortsharpscience/2009/03/how-moores-law-saved-the-web.html < 1236990484 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: *er < 1236990497 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, if with simple you mean low level < 1236990505 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, you can get QBasic from http://support.microsoft.com/kb/135315 < 1236990507 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: ... no. < 1236990508 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :download olddos.exe < 1236990512 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and run it in dosbox < 1236990513 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I have qbasic... < 1236990515 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, haskell with hsdl? < 1236990520 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: other people here might not < 1236990522 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that's not "really simple" < 1236990527 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well ok < 1236990544 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, hm... Java? < 1236990550 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :.... < 1236990552 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :just stop talking < 1236990559 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, then any suggestions? < 1236990560 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :The #anagol channel doesn't help. How to put FlogScript on anarchy golf site? Can someone send a message, but I don't use e-mail and am unsure. Still, I do it anyways on the wiki entry for FlogScript but if it is directly on there, it can be together listed with the others! < 1236990567 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: You cannot. < 1236990571 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You must ask shinh to add a language < 1236990589 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :He is on IRC quite often < 1236990605 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :shinh was on but I received no reply < 1236990621 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I like gopher, so that link above.. < 1236990625 0 :KingOfKarlsruhe!unknown@unknown.invalid QUIT :Remote closed the connection < 1236990640 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :And the tunes.org log seems to be not working right now < 1236990649 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It works here < 1236990692 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :The log works now < 1236990698 0 :ais523!unknown@unknown.invalid QUIT : < 1236990760 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Maybe my DNS is mixed up and doesn't always work. I am unsure < 1236990809 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So, I invented a language earlier today. < 1236990828 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"What BASIC would be if everything was event-based instead of imperative, and there were only assignments and a few other things and stuff." < 1236990834 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Catchy name, I'm sure you'll agree. < 1236990847 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :What link for description of language you invented earlier today < 1236990876 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No link right now < 1236990877 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Here's an example < 1236990898 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0 SUM < 1236990898 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0 NUMBERS < 1236990899 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ON INPUT% N < 1236990901 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SUM + N SUM < 1236990903 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NUMBERS + 1 NUMBERS < 1236990905 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :OVER < 1236990907 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ON INPUT$ ='' < 1236990909 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NUMBERS READ < 1236990911 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :' NUMBERS, SUM ' READ < 1236990913 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SUM READ < 1236990915 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :OVER < 1236990917 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :READ actually prints, it means "read out" < 1236990921 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It should be obvious what it does but how it works is a bit odd < 1236990923 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, that looks like AppleBASIC... < 1236990933 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Here it is with blank lines < 1236990934 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0 SUM < 1236990934 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0 NUMBERS < 1236990936 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : < 1236990938 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ON INPUT% N < 1236990940 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SUM + N SUM < 1236990942 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NUMBERS + 1 NUMBERS < 1236990944 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1236990944 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :OVER < 1236990946 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : < 1236990948 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ON INPUT$ ='' < 1236990949 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :UNDER < 1236990950 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NUMBERS READ < 1236990952 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :' NUMBERS, SUM ' READ < 1236990954 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SUM READ < 1236990956 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :OVER < 1236990958 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :easier to read that way < 1236990962 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, "What BASIC would be if everything was event-based instead of imperative, and there were only assignments and a few other things and stuff." < 1236990965 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is the context < 1236990977 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The interesting thing is, < 1236990982 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :in "INPUT% N" < 1236990982 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, hi btw < 1236990985 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: would i have said "OVER" if i cared about the context? < 1236990985 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That's actually an assignment < 1236990994 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, no idea. < 1236990996 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and INPUT$ ='' is an assignment too, although not how you might think < 1236990997 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i mean "UNDER" < 1236990999 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric := is a variable modifier. < 1236991009 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Basically, everything is an assignment < 1236991029 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if you assign to a variable starting =, it is compared to the rest and is true if the thing it'd assign is equaal to that. < 1236991036 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :everything is water < 1236991036 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, did you see my comment about AppleBASIC above? < 1236991041 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's "VALUE VARIABLE" < 1236991044 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :thus the 0 SUM < 1236991046 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so INPUT% N < 1236991047 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :is < 1236991050 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :N = INPUT% < 1236991053 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and INPUT$ = '' < 1236991054 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :is < 1236991063 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :X = INPUT$; IF X = '' THEN TRUE ELSE FALSE < 1236991070 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :except X isn't actually assigned < 1236991079 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and, of course, assigning to READ prints out the value < 1236991090 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :$ means string and % number, there's actually two different INPUT commands < 1236991119 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ON foo\n...\nOVER means "Whenever performing foo happens (is true), do the stuff, then finish,." < 1236991126 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION tries to come up with rules that would make befunge harder to use < 1236991129 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Basically, it listens for user input and the like all the time, but by default does nothing. < 1236991134 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :panta rhei < 1236991134 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what about swapping arguments for - < 1236991141 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, I think it's easy to understand from that, does that make sense zzo38? < 1236991152 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so you need 4\- to do the same as 4- now < 1236991154 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You can also define your own assignments and stuff < 1236991154 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Yes it make sense. OK < 1236991163 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So if you want to condition on multiple stuff you can < 1236991165 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Like < 1236991173 0 :comex!unknown@unknown.invalid NICK :judicaster < 1236991183 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if we want to say FOO whenever we get a number below 10 < 1236991236 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :BEGIN < 1236991236 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :INPUT% N < 1236991237 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :N < 10 < 1236991239 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :IS INBEL10% N < 1236991242 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : < 1236991243 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ON INBEL10% N < 1236991245 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'FOO' READ < 1236991247 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :END READ < 1236991249 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :OVER < 1236991251 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :END is a string with a newline. < 1236991257 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So, BEGIN\n...\nIS blah means "blah is true if the stuff is true" < 1236991268 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Pretty simple, like I said it's just event-based BASIC, sort of < 1236991287 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I called it Simple Tables, because the CPU architechture I thought about that would run it well involved tables for events < 1236991321 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : oerjan is wrong < 1236991330 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :haven't used tabs in vim, then < 1236991343 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The machine architechture basically had two instructions < 1236991348 0 :Judofyr!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1236991358 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :an instruction that made it easy to condition on an event (which is: any outside input, or clock tick, or whatever) < 1236991363 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i.e. one instruction, that would just idle then jump < 1236991371 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And another one which you gave a pointer < 1236991376 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And it'd read that pointer, and see another pointer < 1236991378 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :read that, execute it < 1236991380 0 :bsmntbombdood!unknown@unknown.invalid QUIT :Read error: 145 (Connection timed out) < 1236991380 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and go on one < 1236991392 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So an ON would just add to the pointer list of that event < 1236991400 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and an ON of an event not seen before would add it to the event table jump < 1236991524 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :bye < 1236991648 0 :zzo38!unknown@unknown.invalid QUIT : < 1236991708 0 :bsmntbombdood!n=gavin@97-118-133-63.hlrn.qwest.net JOIN :#esoteric < 1236991727 0 :Jophish!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1236991987 0 :Corun!n=Corun@93-97-219-19.zone5.bethere.co.uk JOIN :#esoteric < 1236991993 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :$ ~/funge/interpreters/rcfunge/funge tests/sigfpe.b98 < 1236991993 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Floating point exception < 1236991996 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :should I report it < 1236991998 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :sigh < 1236992024 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just all division by zero < 1236992031 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which is well defined in befunge to be 0 < 1236992038 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :this time in various fingerprints < 1236992128 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thought this was from sigfpe the blogger for a moment < 1236992145 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :from who? < 1236992158 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also SIGFPE is floating point exception < 1236992163 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :http://blog.sigfpe.com/ < 1236992174 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well i remembered that the next moment < 1236992772 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is doing a rather absurd DVD ripping spree... < 1236992779 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :43 fucking DVDs. < 1236992786 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(Farscape, in its entirety) < 1236992786 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :pikhq the ripper < 1236992843 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Fortunately, copying the DVD to disc can be done seperately from the encode. So, just spend a few hours feeding discs in, and let a batch encode run for, oh, say, a week. < 1236993199 0 :MizardX!unknown@unknown.invalid PRIVMSG #esoteric :http://paste2.org/p/164029 :) < 1236993240 0 :[helloworld]!n=[hellowo@62.87.208.174 JOIN :#esoteric < 1236993307 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :hello, i'm trying to write simple ROT-program in brain-fuck but i have problems with rot-1 ;/ it doesn't work for all cases. I just increase ascii value, but it doesn't work, where i have got Z, it shoul return A < 1236993311 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :could you hlp me? < 1236993319 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION swats MizardX -----### < 1236993323 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :I AM NOT EHIRD < 1236993339 0 :MizardX!unknown@unknown.invalid PRIVMSG #esoteric :You have shared nicks sometime in the last 4 months < 1236993361 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1236993362 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well yeah i remember him impostering me the other day < 1236993365 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :i asked about that < 1236993380 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :but still have no idea :/ < 1236993426 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :[helloworld]: well you need to test for Z i guess < 1236993439 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :also, what about non-alphabetic characters? < 1236993449 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :but how can i do simply if() in BF? < 1236993470 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :i start learn BF, i want to write in only for A-Z chars < 1236993506 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :i read only one char increase it and write < 1236993509 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :take a look at http://esoteric.voxelperfect.net/wiki/Brainfuck_algorithms < 1236993523 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :but i should first check is it a 'Z" < 1236993571 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :so you probably need the if-then-else algorithm there < 1236993588 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :http://esoteric.voxelperfect.net/wiki/Brainfuck_algorithms#if_.28x.29_.7B_code1_.7D_else_.7B_code2_.7D < 1236993634 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :see the beginning of the article for how to interpret the algorithms < 1236993637 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :or maybe modulo < 1236993650 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :what should be easier? < 1236993686 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm maybe < 1236993708 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Does the Rickroll phone number still work? < 1236993743 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well the modulo looks short enough < 1236993802 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :but how to use it? < 1236993875 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :or maybe if, it looks easier < 1236993974 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :what is: temp0[-] should i change it? it's forbidden chars < 1236993977 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well for if you would need to subtract 'Z' from your character, then test, since all basic testing is for 0 < 1236993992 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :[helloworld]: i said to read the beginning of the article for that < 1236994066 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :i did that and stil don't know ;/ < 1236994120 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :basically the variable names are abbreviations for >'s and <'s to get to that particular spot < 1236994171 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :still don't know, could you give me an example code with if instruction? < 1236994192 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you need to first choose where on the tape each variable is < 1236994284 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :but how can i 'save' this vars on the 'tape' < 1236994307 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :i read one chars using "," < 1236994316 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :then where/how should i store it? < 1236994323 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yes, so go to the right place before you do , < 1236994349 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :so this char shoulnd't be the first in my program? < 1236994375 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Not unless you want it stored at cell 0. < 1236994382 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Which could very well be quite reasonable. < 1236994394 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well you want to loop, so it at least needs to be in a loop < 1236994419 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :but it could be worthwhile to duplicate it, for example cat is ,[.,] < 1236994440 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :That's generally a good idea, since you *probably* want to check for EOF. < 1236994450 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(assuming EOF=0) < 1236994476 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :ok but if I only want read only one char from input? < 1236994491 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Then you don't have read in a loop. < 1236994495 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :why should i use loop? < 1236994522 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :then you don't need to < 1236994533 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :ok, so I read that char and how can i check is it 'Z' or no < 1236994561 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you need to subtract the code for 'Z' since all testing is for 0 < 1236994581 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you can use just a bunch of -'s for starters < 1236994588 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :don't understand, could you paraphrase? < 1236994614 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the code for 'Z' is 64+26 = 90 < 1236994623 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :so 90 minuses < 1236994649 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :there are shorter ways though, but they require some copying around < 1236994656 0 :MizardX!unknown@unknown.invalid PRIVMSG #esoteric :http://paste2.org/p/164039 <-- updated < 1236994665 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :There's another page on the wiki for those shorter ways. < 1236994684 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yes, Brainfuck constants < 1236994729 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :ok, i have ,---[90 times]. Then i should check is that [90 minuses]==var i have read? < 1236994772 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :No, you do - 90 times on the var you've read, and then check whether that's 0. < 1236994805 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :how can i chec it? < 1236994810 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :k, but wait < 1236994825 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :if it's not 0 i should write that var++? < 1236994854 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yeah you'll need to add 91 back then < 1236994872 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :but stil don't know how to code if < 1236994879 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :how can i check is it 0? < 1236994889 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :see the if then else algorithm < 1236994912 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :i do that and still don't understand that "pseudo"code < 1236994913 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :now you need to select cells for temp0 and temp1. x is your original var. < 1236994940 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :if you let temp0 and temp1 be the next cells you can use the second, simpler version < 1236994961 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :but how to select that cells in BF? < 1236994974 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :with the right number of >'s and <'s < 1236994990 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you need to know what cell you are on before, and which you want to go to < 1236995018 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :could you paraphrase < 1236995028 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :since you have just subtracted 90 from x, you will still be at x < 1236995040 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :so to get to temp0 you do > < 1236995055 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and to get to temp1 after that, another > < 1236995067 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :then you go back to x with << < 1236995108 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :ok, now understand selecting, but stil don't udnerstand why should i use that temps < 1236995198 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :basically the way to test for 0 is with a [loop]. but you need some trickiness to get out of that loop after just one test, and to know what the test result was < 1236995254 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :i've already known: read my var x and substract 90 from it. Then i have to check is my "new" var is 0 < 1236995262 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :and now i don't know how to code it < 1236995312 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :temp0[-]+temp1[-]x[code1x>-]>[->]<< < 1236995321 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that's the second version < 1236995340 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :assuming x is the first cell, temp0 the second and temp1 the third < 1236995381 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :code1 will start running at x, it will be run if x is nonzero < 1236995411 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :code2 will also start running at x, it will be run if x is zero < 1236995426 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :so I should change it that code temp0 via > and temp1 via >> ? < 1236995449 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it depends where you start from < 1236995478 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :but assume code1 and code2 don't move (i don't think they need to). then we should know where you are all through that mess < 1236995499 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :let me change those to >'s and <'s for you < 1236995524 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :>[-]+>[-]<<[code1>-]>[->]<< < 1236995529 0 :[helloworld]!unknown@unknown.invalid PRIVMSG #esoteric :>[-]+>[-]<<[code1x>-]>[->]<y) < 1236996845 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : fspace.bottomRightCorner.y = position->y; < 1236996845 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : if (fspace.topLeftCorner.y > position->y) < 1236996845 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : fspace.topLeftCorner.y = position->y; < 1236996850 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that generates better code < 1236996851 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :than < 1236996856 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : if (fspace.bottomRightCorner.y < position->y) < 1236996856 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : fspace.bottomRightCorner.y = position->y; < 1236996856 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : else if (fspace.topLeftCorner.y > position->y) < 1236996856 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : fspace.topLeftCorner.y = position->y; < 1236996860 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which is rather weird < 1236996869 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, don't you agree? < 1236996896 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :huh, again < 1236996907 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, you agree then or? < 1236996912 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1236996914 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway. reason: x86 has "conditional move", avoiding overhead of branching. < 1236996920 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with else if you can't use it < 1236996929 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since you need to jump past then < 1236996945 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, so the former is in fact faster < 1236996951 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :due to less branching < 1236996959 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ah so pipelining makes the first do more at one time, essentially? < 1236996964 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in fact the former has no branches < 1236996965 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :at all < 1236997019 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, well possibly that too < 1236997022 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but don't think so < 1236997032 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but mainly this is due to branch prediction < 1236997093 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh well < 1236997125 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, http://paste.lisp.org/display/77000 < 1236997149 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fspace there is really fspace.topLeftCorner.x < 1236997153 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but they have same address < 1236997164 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :first member of struct < 1236997179 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION gives up understanding that < 1236997189 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(tldr essentially) < 1236997196 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, well it is a bit confusing since all this is in RIP addressing < 1236997208 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is relative the program counter < 1236997223 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, the comments show the expanded values < 1236997243 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, what is "tldr"? < 1236997244 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i think you are misunderstanding me. i am saying i cannot be bothered to try and understand that. < 1236997252 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :"too long, didn't read" < 1236997389 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, since "position" is passed in registers on amd64 this is even more confusing < 1236997393 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it isn't even on stack < 1236997457 0 :neldoreth!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1236998213 0 :olsner!n=salparot@h-60-96.A163.priv.bahnhof.se JOIN :#esoteric < 1237001174 0 :sebbu2!n=sebbu@ADijon-152-1-88-99.w81-49.abo.wanadoo.fr JOIN :#esoteric < 1237002232 0 :sebbu!unknown@unknown.invalid QUIT :Success < 1237002393 0 :GreaseMonkey!n=gm@unaffiliated/greasemonkey JOIN :#esoteric < 1237003426 0 :oerjan!unknown@unknown.invalid QUIT :"Good night" < 1237003487 0 :Corun!unknown@unknown.invalid QUIT :"Leaving" < 1237005433 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :Hmm < 1237005459 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :I'm trying to design a set of cpu/sound/video hardware for something like a demo < 1237005478 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :probably to just run it in an emulator < 1237005499 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :and I'm out of inspiration < 1237005513 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :especially for the cpu part < 1237006092 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :also should be 16 bits-ish and possible to implement on FPGAs < 1237006202 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :BITCHES < 1237006272 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :16 bitches? < 1237007201 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1237016245 0 :Sgeo!unknown@unknown.invalid QUIT :"Leaving" < 1237017599 0 :clog!unknown@unknown.invalid QUIT :ended < 1237017600 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1237020512 0 :mad!unknown@unknown.invalid QUIT :"Radiateur" < 1237021496 0 :MigoMipo!n=MigoMipo@84-217-2-146.tn.glocalnet.net JOIN :#esoteric < 1237024437 0 :GreaseMonkey!unknown@unknown.invalid QUIT :"Client Excited" < 1237025161 0 :Slereah!n=butt@ANantes-259-1-57-123.w92-135.abo.wanadoo.fr JOIN :#esoteric < 1237025828 0 :neldoreth!n=user@unixboard/users/neldoreth JOIN :#esoteric < 1237025886 0 :Slereah_!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1237026254 0 :tombom!i=tombom@wikipedia/Tombomp JOIN :#esoteric < 1237026346 0 :KingOfKarlsruhe!n=nice@HSI-KBW-091-089-027-168.hsi2.kabelbw.de JOIN :#esoteric < 1237026956 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh, and yet another conversion variant: http://zem.fi/~fis/qbc.html has a lot more authentic colors. < 1237029308 0 :Mony!n=Harmony@AToulouse-258-1-93-123.w90-60.abo.wanadoo.fr JOIN :#esoteric < 1237030153 0 :MigoMipo_!n=MigoMipo@84-217-7-169.tn.glocalnet.net JOIN :#esoteric < 1237030248 0 :MigoMipo!unknown@unknown.invalid QUIT :Nick collision from services. < 1237030254 0 :MigoMipo_!unknown@unknown.invalid NICK :MigoMipo < 1237030832 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is irritated... Spent three hours trying to track down a "rootkit" detected by chkrootkit, only to find and confirm it was a false positive. < 1237030854 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(of course I did it from bootcd too, so even more wasted time) < 1237030982 0 :sebbu2!unknown@unknown.invalid NICK :sebbu < 1237036507 0 :neldoreth!unknown@unknown.invalid QUIT :"Lost terminal" < 1237036523 0 :neldoreth!n=user@unixboard/users/neldoreth JOIN :#esoteric < 1237036549 0 :Jophish!n=Jophish@80-47-79-201.lond-hex.dynamic.dial.as9105.com JOIN :#esoteric < 1237036873 0 :KingOfKarlsruhe!unknown@unknown.invalid QUIT :Remote closed the connection < 1237039937 0 :Corun!n=Corun@93-97-219-19.zone5.bethere.co.uk JOIN :#esoteric < 1237041973 0 :BeholdMyGlory!n=BeholdMy@d83-183-181-73.cust.tele2.se JOIN :#esoteric < 1237043765 0 :FireyFly!n=FireFly@1-1-3-36a.tul.sth.bostream.se JOIN :#esoteric < 1237044374 0 :neldoreth!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1237044777 0 :neldoreth!n=user@unixboard/users/neldoreth JOIN :#esoteric < 1237045940 0 :Corun!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1237045984 0 :Corun!n=Corun@93-97-219-19.zone5.bethere.co.uk JOIN :#esoteric < 1237046133 0 :KingOfKarlsruhe!n=nice@HSI-KBW-091-089-027-168.hsi2.kabelbw.de JOIN :#esoteric < 1237047300 0 :Corun!unknown@unknown.invalid QUIT :"Leaving" < 1237048834 0 :tombom!unknown@unknown.invalid QUIT :"Peace and Protection 4.22.2" < 1237048959 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: the background is blue, silly. < 1237048971 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, a qbcnou would be nice < 1237048972 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :03:50 psygnisfive: BITCHES < 1237048976 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"but i don't say bitches!" < 1237048981 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :MizardX: lol i am not ais523 :D < 1237049062 0 :MizardX!unknown@unknown.invalid PRIVMSG #esoteric :There is an updated version: http://paste2.org/p/164039 < 1237049098 0 :Judofyr!n=Judofyr@c0796BF51.dhcp.bluecom.no JOIN :#esoteric < 1237049101 0 :MizardX!unknown@unknown.invalid PRIVMSG #esoteric :I removed the spourious nick changes that made the script think you where the same person < 1237049186 0 :Corun!n=Corun@93-97-219-19.zone5.bethere.co.uk JOIN :#esoteric < 1237049425 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :MizardX: that's a rather limited selection of logs < 1237049464 0 :MizardX!unknown@unknown.invalid PRIVMSG #esoteric :Yes. Only since november. < 1237049673 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'll write a script to download all of clog < 1237049850 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, English question: < 1237049871 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"Move the IP forward one step" or "Move the IP forwards one step"? < 1237049875 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and also: < 1237049883 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"Move the IP backward one step" or "Move the IP backwards one step"? < 1237049894 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: 1) either works, the latter is more pronouncable 2) either works, the latter sounds a lot better < 1237049900 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1237049903 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so I'd go for the latter both times < 1237049920 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, yeah I thought "backwards" sounded better, but I wasn't sure about forward(s) < 1237049921 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :thanks < 1237049948 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :np < 1237049965 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, btw did you see that code I posted yesterday, where if was faster than else if? < 1237049966 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1237049997 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1237050023 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :anyone know curl here? < 1237050025 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :weird isn't it? I mean, logically, just testing one branch should be faster. < 1237050037 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, as in libcurl API or curl the command line tool? < 1237050040 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :latter < 1237050049 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah well then I'm not the right person to ask < 1237050055 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well I used curl a bit < 1237050061 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so I might be able to help < 1237050066 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what is the issue? < 1237050072 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I just want it to output a one-line progress bar, instead of this monstrosity: < 1237050073 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : % Total % Received % Xferd Average Speed Time Time Time Current < 1237050074 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : Dload Upload Total Spent Left Speed < 1237050076 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :100 277k 100 277k 0 0 71867 0 0:00:03 0:00:03 --:--:-- 81084 < 1237050095 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm, well actually they're so small I don't need a progress bar < 1237050098 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh well, thanks anyway :P < 1237050099 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, have you see what wget outputs? < 1237050114 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : -#/--progress-bar Display transfer progress as a progress bar < 1237050117 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, tried that ? < 1237050120 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah, thanks :) < 1237050141 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, from curl --help | grep progress < 1237050145 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :-_- < 1237050151 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well sorry ;_; < 1237050165 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, no problem < 1237050207 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just wanted to help you in the future. You know you always tell me to use google so to keep the balance I have to tell you to use --help/man/info/grep/whatever < 1237050209 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :~ < 1237050631 0 :Corun!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1237051388 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wrote a script to download all clog logs (or, if you already have them, update them to the current day) < 1237051392 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It also renames them to YYYY-MM-DD < 1237051401 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It'd be nice if I could fix the times too; anyone know clog's timezone? Well, I could check. < 1237051402 0 :ais523!n=ais523@147.188.254.128 JOIN :#esoteric < 1237051405 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hi ais523 < 1237051410 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hi ehird < 1237051429 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, /is/ my-cars (car . cdr)? < 1237051441 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1237051447 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's the lisp translation of "My other car is a cdr" < 1237051454 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1237051473 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :surely people would use a list not a cons cell to list their cars, though? < 1237051478 0 :ais523!unknown@unknown.invalid TOPIC #esoteric :(eq? (cadr my-cars) 'cdr) | http://tunes.org/~nef/logs/esoteric/?C=N;O=D < 1237051480 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1237051484 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"my other" means there's only two < 1237051491 0 :ehird!unknown@unknown.invalid TOPIC #esoteric :(eq? (cdr my-cars) 'cdr) | http://tunes.org/~nef/logs/esoteric/?C=N;O=D < 1237051497 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's a pair of cars < 1237051514 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, ok < 1237051520 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but cons cells are inherently ordered < 1237051523 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I suppose lists are too, though < 1237051637 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :My script is currently downloading aaaall the tunes.org logs. < 1237051651 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It automatically only downloads ones you haven't downloaded yet, too. < 1237051669 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I want to make it fix the timezones, too < 1237051670 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :to UTC < 1237051687 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1237051692 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's 16: here, 09: there < 1237051699 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so UTC-7 < 1237051712 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1237051713 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :agh < 1237051718 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it crosses the day line, of course < 1237051722 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so I'd have to move lines between files < 1237051729 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::\ < 1237051734 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: worth it, do you think? < 1237051746 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1237051759 0 :Azstal!unknown@unknown.invalid PRIVMSG #esoteric :it would normally be UTC-8, though < 1237051768 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh, right < 1237051772 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :does UTC have daylight savings? < 1237051778 0 :Azstal!unknown@unknown.invalid PRIVMSG #esoteric :or, -8 from us, anyway < 1237051779 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if not, I can just blanket -8 < 1237051852 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1237051855 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :should be simple enough < 1237051870 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if it's N hours away from midnight, strip from file onwards and append to 'Putthisinthenextfile' < 1237051880 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :when you make a file, splurge putthisinthenextfile after the first 'starting' line < 1237051882 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :repeat < 1237051897 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if you come to today - 1, disregard putthisinthenextfile (It never downloads an incomplete log) < 1237052077 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'll make it download first, though < 1237052219 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :anyway, the net effect should be -- wait a few minutes, get YYYY-MM-DD logs with UTC timestamps, fully greppable < 1237053119 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you know what irritates me? < 1237053132 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :OOP weenies "praising" functional programming by saying it has things to contribute to architechture < 1237053142 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :because, of course, _replacing OOP_ cannot possibly be a productive path < 1237053157 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :functional and OOP simultaneously is of course entirely possible < 1237053158 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no, we just have to stick and pile crap on to our existing model, see? those functional languages are just wacky things we'll cherry pick from < 1237053165 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yes, but I mean the OOP C# Java sort of people < 1237053166 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :always say that < 1237053168 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that doesn't mean it's a good idea for all programs < 1237053185 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :they never consider that maybe replacing OOP is better than adding on to it < 1237053194 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's always things "contributing" to mainstream languages < 1237053326 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so anyway < 1237053334 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :should I write a book about esolangs and esoprogramming < 1237053340 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i mean I've been toying with the idea for a while. < 1237053863 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so have I < 1237053872 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but our books would probably look very different < 1237053877 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ehird: i changed my ways just for you. < 1237053896 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: why? :P < 1237053903 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Asztal: I misread UTC-8 as UTF-8, and got confused for a moment < 1237053906 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its a symbol of my love *-* < 1237053908 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well, mine was gonna have a loot of theoretical stuff < 1237053912 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and then like some practical tipz < 1237053913 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: because we seem to disagree stylistically on everything < 1237053921 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but that's not too dissimilar from what I was planning < 1237053930 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think I'd include in-depth discussions of many of the most popular esolangs, though < 1237053940 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I wonder how to measure esolang popularity? Page-hits on the wiki? < 1237053950 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I was maybe gonna do two books < 1237053958 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :one about esoprogs & esolangs in general < 1237053964 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :one about how to actually write a damn program in brainfuck/intercal/etc < 1237053970 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :two sections of the same book might work better < 1237053973 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :mm < 1237053987 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I can't imagine they'd be too big, yeah :P < 1237054016 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow, http://esoteric.voxelperfect.net/wiki/Special:Popularpages is pretty interesting < 1237054026 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm surprised Ook! is so far up, for instance < 1237054039 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and that INTERCAL is so far down < 1237054049 0 :Judofyr_!n=Judofyr@c0796BF51.dhcp.bluecom.no JOIN :#esoteric < 1237054073 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so I found a qbasic game that dosbox was too slow to run X < 1237054074 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :XD < 1237054082 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can speed it up < 1237054086 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it had "delay = 10000" < 1237054089 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it was obviously designed for more modern computers < 1237054092 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm setting it to "delay = 0" < 1237054102 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it was made in 1995 by a friend; but it was his second ever game < 1237054109 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :for example, all IFs were just gotos, etc < 1237054111 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1237054118 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's before I was born < 1237054118 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so, it's probably a large artifact of the code < 1237054123 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: what, 1995? < 1237054130 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, misread it as 1985 < 1237054140 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It was slightly after I was born, I think < 1237054167 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: what cpu cycles do you have your qbasic dosbox? < 1237054171 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :mine is 3000 < 1237054182 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I leave it on default < 1237054185 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't use it much, you see... < 1237054191 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it'll be in the title bar < 1237054262 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wow, this game is fancy, it even has an icon. < 1237054454 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I can't type backslash, argh < 1237054817 0 :Judofyr!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1237055116 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Huh. < 1237055117 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :BASIC is portable. < 1237055125 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I just translated some C64 basic to QBasic trivially. :P < 1237055131 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I wouldn't be surprised if there was at least one portable version by now < 1237055132 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(graphical) < 1237055140 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :arguably, VB.NET is portable due to Mono, but that's hardly BASIC < 1237055215 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wait, spectrum < 1237055215 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :not c64 < 1237055219 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Spectrum BASIC: < 1237055219 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :10 BORDER 0; PAPER 0 < 1237055220 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :20 FOR n = 1 TO 7 < 1237055222 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :30 INK n < 1237055224 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :40 CIRCLE 100+n*10,100+n*10,50 < 1237055226 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :50 NEXT n < 1237055228 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :QBasic: < 1237055230 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SCREEN 12 < 1237055232 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :FOR n = 1 TO 7 < 1237055234 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :COLOR n < 1237055237 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :CIRCLE (1==+n*10,100+n*10),50 < 1237055238 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NEXT n < 1237055240 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err < 1237055242 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :CIRCLE (1+n*10,100+n*10),50 < 1237055580 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1237055735 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : 16 bitches? < 1237055748 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION imagines some kind of counting song < 1237056048 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: It's not blue in my qbasic.exe help-browser by default; it's black there, even though the edit screen is white-on-blue. < 1237056057 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh right < 1237056096 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Although at least quickbasic has a colour configura-o-tron for the UI. < 1237056239 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://jsspeccy.zxdemo.org/ < 1237056249 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :all it needs now is a BASIC editor < 1237056287 0 :Judofyr_!unknown@unknown.invalid NICK :Judofyr < 1237056649 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: you know how you said the shuffle should have buttons on the headphones? < 1237056650 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it _does_ < 1237056655 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow < 1237056656 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I just realised < 1237056661 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but unfortunately, it isn't just the headphones? < 1237056674 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :There's a thin unit: http://images.apple.com/ipodshuffle/gallery/images/ipodshuffle_image1_20090311.jpg < 1237056678 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but yes, not quite all in those tiny tiny earphones < 1237056713 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :You have a thin unit < 1237056713 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://images.apple.com/ipodshuffle/gallery/images/ipodshuffle_image3_20090311.jpg <- headphone cable controls < 1237056713 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Slereah: Oh burn. < 1237056716 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :kekeke < `?> < 1237056925 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :kekeke? is that some kind of french laugh? < 1237056945 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Korean. < 1237056962 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1237056979 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's "lololo" put through the Orcish/Human filter in World of Warcraft < 1237057003 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If I remember correctly, anyway < 1237057008 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1237057047 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Evidently "kek" is "lol" but "kekeke" is "hahaha" according to Wikipedia < 1237057090 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1237057093 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it originates from starcraft iirc < 1237057106 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there's an orcish/human filter on world of warcraft? < 1237057106 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The origin is the Korean < 1237057108 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or at least, common usage < 1237057114 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :how does it work, just swapping certain letters? < 1237057125 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I think so, yes, with some hardcoded words (like "lol" -> "kek") < 1237057134 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it doesn't, considering the < `?`> smiley next to it it's obviously meant to be korean < 1237057167 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: It originates in Warcraft, to be precise < 1237057178 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :wspanig elttres < 1237057187 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I.e. Warcraft: Orcs and Humans from 1994 < 1237057193 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or 1993? Not sure < 1237057196 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*wspaipgn < 1237057281 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ot wspa, ro ont ot wspa, httas' hte uqseitno < 1237057337 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :s/httas'/htta si/ < 1237057352 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :an ode to orcs enjoying hot spas, obviously < 1237057434 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :octnartcoisn tfw! < 1237057448 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Qapla'! < 1237057454 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... it seems to be mostly anagramming rather than substituting letters < 1237057477 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ais523: i hope you are not thinking i am being authentic here < 1237057501 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :or does that mean i'm more authentic than i thought? < 1237057566 0 :kar8nga!n=kar8nga@a-27.vc-graz.ac.at JOIN :#esoteric < 1237057588 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hell, now that I see the quote in question, make that "taH pagh, taHbe"... < 1237057663 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric ::o < 1237057666 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :KLINGON!? < 1237057667 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric ::o < 1237057668 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :my klingon is rather rusty. < 1237057677 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :as in, dead before birth, really < 1237057680 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :QAPLAH < 1237057685 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i dont know klingon < 1237057717 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Slereah: i do vaguely recall it being case sensitive, though < 1237057722 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Yes < 1237057723 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :it is. < 1237057733 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Well, the transliteration anyway < 1237057737 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :klingon uses caps and lowercase for different sounds < 1237057742 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :They don't < 1237057746 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :they do. < 1237057750 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :in the transliterations. < 1237057753 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :It's the transliteration that does that < 1237057758 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Klingon has an alphabet < 1237057762 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :yes i know this < 1237057764 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :thank you. < 1237057768 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :it has two, actually < 1237057771 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :but thats besides the point < 1237057787 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :HOEFLER TEXT < 1237057799 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :hoefler text? < 1237057804 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes! < 1237057826 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :and why is this font interesting now? < 1237057833 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It is awesome. < 1237057837 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1237057843 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Also, *typeface. < 1237057844 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :its italic Q is pretty neat < 1237057845 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION hoefles around < 1237057888 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :text figures <3 < 1237058131 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION swats a wiki spammer -----### < 1237058145 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION catches the wiki spammer in a butterfly net -----\XXXXX/ < 1237058145 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :he'll never know what hit him < 1237058188 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i don't think the gentle butterfly net is appropriate for spammers < 1237058201 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, it's to hold them still while you swat them < 1237058214 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Why does the gentle butterfly net remind me of a frying pan? < 1237058230 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hello! I am testing stuff. Please feel free to totally ignore me. < 1237058231 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Thank you! < 1237058238 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :frying pans are similar but harder and more painful < 1237058238 0 :Corun!n=Corun@93-97-219-19.zone5.bethere.co.uk JOIN :#esoteric < 1237058242 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also they have a smaller volume < 1237058259 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Frying pans are presumably preferred by the really hard-core butterfly enthusiasts. < 1237058274 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :um, you would be surprised < 1237058312 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://screencast.com/t/jlgWoqvK (needs flash) < 1237058328 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: just do it all command-line and use termcast < 1237058333 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1237058335 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that doesn't need flash, or indeed a web browser < 1237058347 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it needs telnet. and it requires you to use command line tools. < 1237058359 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :what do you mean needing telnet is a problem? needing flash isn't either. < 1237058361 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, it's for broadcasting terminals, of course it requires command line tools < 1237058380 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :besides, Windows Vista comes with telnet by default, and not Flash < 1237058386 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :likewise for every other common OS, I think < 1237058395 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but doing it with windows is more impressive < 1237058395 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :why are you using a computer? use a television. that doesn't need RAM, or indeed a CPU. well, it's for broadcasting images, of course it requires passivity < 1237058405 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :besides, my house came with a TV, but no computer < 1237058423 0 :Azstal!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure Windows Vista comes with telnet by default < 1237058460 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it does, it's just not enabled by default < 1237058464 0 :Azstal!unknown@unknown.invalid PRIVMSG #esoteric :Well, it does, but you have to install it. < 1237058466 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :windowshelp.microsoft.com sez: "By default, Telnet is not installed with Windows, but you can install it by following the steps below." < 1237058472 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no install is needed < 1237058475 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :at least, it's on the computer < 1237058476 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Huge video capture is huge! I bet this one will be like 15MB+. < 1237058477 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but you have to turn the thing on < 1237058479 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Stupid FLV. < 1237058495 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Testing, testing. < 1237058533 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Installing is what they call "turning it on" on that windows help thing, though. Although admittedly the installation instructions go to some "Turn Windows features on or off" page. < 1237058565 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Also other very good questions there: "Telnet doesn't look like Windows. Why?" < 1237058583 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"I've got the Telnet window open. Now what?" < 1237058632 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :interesting fact: for ages, Windows NT only supported one locally logged in person at a time, but allowed any number of users to telnet in < 1237058730 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That may be a fact, but I'm not sure why it's so interesting. :P < 1237058757 0 :oerjan!unknown@unknown.invalid QUIT :"And then, a miracle occurs" < 1237058783 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :...and I am here to capture this miracle forever and ever. < 1237058790 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I feel so special to be selected as the sole receiver. < 1237058797 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Whatever will become of my life when this wonder is over? < 1237058803 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's interesting because it has 2*2*2*3*5 letters. < 1237058807 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'll flip burgers or something. I'll burger flips. < 1237058810 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I am a burger. < 1237058813 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Arem < 1237058815 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Aren't you? < 1237058825 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Is "burger" a verb? < 1237058837 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :of course < 1237058850 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :otherwise you wouldn't be able to say "burger flips" < 1237058877 0 :Corun!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1237059019 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://screencast.com/t/vdo7feUDvw <-- Burgers, miracles, etc. < 1237059028 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Can you tell I'm testing? < 1237059046 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :No, you sound just like you usually do. < 1237059051 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1237059078 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It'd be nice if Jing was less... laggy. And less SWF. < 1237059086 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :maybe I'll write my own capturerotron < 1237059407 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://www.newartisans.com/2009/03/hello-haskell-goodbye-lisp.html <- Yet another joins the club. < 1237060146 0 :ais523!unknown@unknown.invalid QUIT :Remote closed the connection < 1237060187 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1237060211 0 :BeholdMyGlory!n=BeholdMy@d83-183-181-73.cust.tele2.se JOIN :#esoteric < 1237061937 0 :Mony!unknown@unknown.invalid QUIT :"Quit" < 1237062194 0 :judicaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird: what IRC client is that < 1237062200 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :limechat < 1237062202 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :OS X only < 1237062208 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://limechat.net/mac/ < 1237062209 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well < 1237062212 0 :judicaster!unknown@unknown.invalid PRIVMSG #esoteric :looks better than colloquy < 1237062213 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :there is a limechat for windows by the same author < 1237062216 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but it's totally separate < 1237062217 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and it is < 1237062245 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also < 1237062246 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"Note that you need to install it even if you are using OSX 10.5.5. " < 1237062247 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ignore that < 1237062249 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's bullshit < 1237062255 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :just download limechat, it works :P < 1237062411 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :omg < 1237062414 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :there's limechat for the iphone < 1237062416 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :why nobody tell me < 1237062428 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://limechat.net/iphone/images/serverlist.png < 1237062436 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION grabs < 1237062464 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hrmps, £3 < 1237062757 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: should I learn erlang? < 1237062779 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://gist.github.com/79022 On second thoughts, maybe not. < 1237063590 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh, screen 13 is trivial < 1237063617 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :x+(y*w) < 1237063620 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :where w = width of stream < 1237063624 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :screen < 1237063715 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1237063719 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hi AnMaster < 1237063720 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, maybe. If you want. < 1237063725 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I got fast graphics working in qbasic < 1237063744 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh? nice < 1237063754 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'll show the code as soon as this finishes running :P < 1237063765 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, have guests today that stay over night. Not much time to talk. < 1237063770 0 :Azstal!unknown@unknown.invalid PRIVMSG #esoteric :using poke inset of pset? < 1237063771 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :kay < 1237063775 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Asztal: yeah, pretty much < 1237063776 0 :Azstal!unknown@unknown.invalid PRIVMSG #esoteric :instead* < 1237063786 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's for screen 13 (@AnMaster: 320x200, 256 col) < 1237063788 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(relatives...) < 1237063792 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but I couldn't get it working before < 1237063797 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :now it seems to work < 1237063804 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1237063811 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :@AnMaster: 320x200, 256 col <-- ? < 1237063817 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's what screen 13 i < 1237063818 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :s < 1237063823 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :k < 1237063833 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, screen 13 meaning? < 1237063838 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :screen mode 13 < 1237063840 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1237063841 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :QBasic: SCREEN 13 < 1237063868 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I think "the 13th terminal" which is very different < 1237063872 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1237063877 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :thought* < 1237063883 0 :neldoreth!unknown@unknown.invalid QUIT :"leaving" < 1237063888 0 :neldoreth!n=user@unixboard/users/neldoreth JOIN :#esoteric < 1237063900 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Looks like it's finishing off... < 1237063902 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, and it just didn't make sense for DOS! < 1237063913 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you should see my multi display DOS setup < 1237063914 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's hardcore./ < 1237063926 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i have a 17" text display < 1237063931 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : http://gist.github.com/79022 On second thoughts, maybe not. <-- wth < 1237063932 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a 14" 640x480 16-col display < 1237063937 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION tries to understand that code < 1237063941 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and a 15" 320x200 256-col display < 1237063943 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it's from erlang < 1237063945 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'s source code < 1237063946 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :otp, thing < 1237063949 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err < 1237063951 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :erl_eval < 1237063952 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or something < 1237063966 0 :judicaster!unknown@unknown.invalid PRIVMSG #esoteric :any language that has a fun keyword is cool with me < 1237063977 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fun awesome -> radical < 1237063994 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it doesn't make much sense < 1237064003 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :why not < 1237064039 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well maybe in context. But you can call a fun with unknown arguments count at compile time in cleaner ways < 1237064051 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : apply(Fun, Args) -> term() | empty() < 1237064051 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : Types Fun = fun() < 1237064051 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : Args = [term()] < 1237064056 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is a BIF even < 1237064067 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :er, no < 1237064068 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :becaus < 1237064069 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :e < 1237064072 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's in the evaluator < 1237064075 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it isn't an actual function < 1237064077 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :thus the eval_fun shit < 1237064124 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well that code assigns a fun(a,b,c,...) to F that calls eval_fun < 1237064136 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm not dumb, I can read i < 1237064137 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :t < 1237064138 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I'm not sure why this is useful. < 1237064139 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's just hdeous < 1237064141 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hideous < 1237064144 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I mean. what is the context < 1237064146 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and I agree < 1237064168 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what source file is it from? < 1237064176 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :dunno < 1237064203 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Howdy neighbor! This here's sup-config, ready to help you jack in to < 1237064203 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the next generation of digital cyberspace: the text-based email < 1237064205 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :program. Get ready to be the envy of everyone in your internets < 1237064207 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :with your amazing keyboarding skills! Jump from email to email with < 1237064208 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm /usr/lib/erlang/lib/stdlib-1.15.5/src/erl_eval.erl < 1237064209 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :nary a click of the mouse! < 1237064210 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it seems < 1237064211 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wth < 1237064211 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :— sup-config program < 1237064310 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, hm. It seems very weird indeed. The normal way would be to compile to erlang byte code then run that iirc < 1237064312 0 :Sgeo!n=Sgeo@ool-18bf68ca.dyn.optonline.net JOIN :#esoteric < 1237064323 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you can do that sort of stuff < 1237064371 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : This module provides an interpreter for Erlang expressions. The expressions are in the abstract syntax as returned by erl_parse, the Erlang parser, or a call to < 1237064371 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : io:parse_erl_exprs/2. < 1237064373 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1237064615 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, and yes that code was horrible. But then it isn't something I ever needed to do thankfully < 1237064642 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it seems erl_eval is meant to support safe evaluation of erlang code < 1237064657 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with callbacks for all function calls and such < 1237064674 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : During evaluation of a function, no calls can be made to local functions. An undefined function error would be generated. However, the optional argument LocalFunction‐ < 1237064674 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : Handler may be used to define a function which is called when there is a call to a local function. The argument can have the following formats: < 1237065078 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: here's the code < 1237065079 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SCREEN 13 < 1237065083 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :DEF SEG = &HA000 < 1237065086 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :FOR n = 0 TO 32767 < 1237065089 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :FOR x = 0 TO 100 < 1237065094 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :POKE x + (1 * 320), n < 1237065095 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NEXT x < 1237065096 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NEXT n < 1237065107 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's `x + (y * 320)` < 1237065118 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :anyway, that flashess a band of colour on the second line of the screen. < 1237065119 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a lot. < 1237065330 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Next you'll be graduating to VGA palette rotation tricksies. (That's also trivial: OUT &H3C8, followed by OUT &H3C9, ; OUT &H3C9, ; OUT &H3C9, with rgb values in the [0, 63] range; and it auto-advances, so you can just OUT &H3C8, 0 and then feed the whole 256-color palette in the 0x3c9 port. < 1237065400 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: what does that buy you? < 1237066522 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nice < 1237066571 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :btw confusing: callgrind reports that 0 system time was spent in fclose() or fwrite() when writing files. Even though commenting out those calls actually reduces run time... < 1237066572 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wth < 1237066585 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it reports the system time just fine for other stuff < 1237066591 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You can do "animation" fast without screen-redrawing. As long as you're happy with just manipulating palette values. < 1237066607 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :==16002== L2 refs: 123,201 ( 28,492 rd + 94,709 wr) < 1237066607 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :==16002== L2 misses: 30,943 ( 21,054 rd + 9,889 wr) < 1237066607 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :==16002== L2 miss rate: 0.0% ( 0.0% + 0.2% ) < 1237066614 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I don't believe valgrind can count? < 1237066624 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the miss rate seems way off < 1237066700 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or, if it is actually relative L1 refs in the table above... < 1237066701 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :http://paste.lisp.org/display/77046 < 1237066706 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :then it is very confusing output < 1237067205 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(And of course it also "buys you" a less silly color palette -- well, less silly for many uses -- than the default 256-color one.) < 1237067378 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Stop all the QBasic nonsense before I catch the qb bug too, though. I'm already very close to running dosbox; probably would've started it already, except I'm afraid it might use enough CPU to make the virtualbox windows vm get some audio-playing glitches. < 1237067906 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The "Version Differences" list at http://zem.fi/~fis/qbc.html#QEw4MDBm should make you appreciate QBasic over the older pre-5 DOS GW-BASIC. < 1237068961 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1237069021 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : Whatever will become of my life when this wonder is over? < 1237069098 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you will be caught up in a struggle between religious sects with fiercely different interpretations of the miracle. as a result you will end up being burned on the stake, although that will still be many years in the future. < 1237069116 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION hopes this cleared it up. < 1237069223 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Are you sure you should be revealing your information-of-the-future stuff to us? I understand it's usually very hush-hush. < 1237069258 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :not this one. it is a self-fulfilling prophecy, and those are important to get into the open. < 1237069363 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1237069381 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what exactly does this mean: char* const args[] < 1237069383 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in C < 1237069396 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :black magic. < 1237069402 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : int execvp(const char *file, char *const argv[]); < 1237069404 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is the context < 1237069406 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the POSIX API < 1237069414 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :at least that's how i understand const in C (i.e., not very well at all) < 1237069432 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well I understand const char*, just not char* const < 1237069452 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's a constant pointer. < 1237069465 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1237069476 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I mean, "const char*" is a pointer to constant characters, while "char* const" is a constant pointer to (modifiable) characters. < 1237069492 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :cdecl> explain char* const args[] < 1237069492 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :declare args as array of const pointer to char < 1237069494 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm does const commute with some of it? i.e. is const char * == char const * ? < 1237069501 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1237069522 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There's a long discussion about the benefits of "const char *" and "char const *" in the C++ FAQ. < 1237069528 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's about "business reasons". < 1237069532 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1237069573 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :those should be the same... < 1237069583 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so it would just be a matter of coding style -_- < 1237069612 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"Fred const* x is functionally equivalent to const Fred* x. However, the real question is which should be used. < 1237069617 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Answer: absolutely no one should pretend they can make decisions for your organization until they know something about your organization. One size does not fit all; there is no "right" answer for all organizations, so do not allow anyone to make a knee-jerk decision in either direction. "Think" is not a four-letter word." < 1237069624 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That's a very typical piece of the C++ FAQ. < 1237069624 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :char *const argv[restrict] <-- nice one from posix_spawn() < 1237069637 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what does *that* restrict change < 1237069646 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1237069676 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in an argument list this is pointer to array of pointers to null terminated strings < 1237069691 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the pointers to the strings are constant < 1237069696 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and may not alias each other? < 1237069704 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or what bit does restrict there restrict < 1237069704 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :? < 1237069710 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That sounds reasonable, but it's a silly-looking place for the restrict. < 1237069725 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : int posix_spawn(pid_t *restrict pid, const char *restrict path, < 1237069725 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : const posix_spawn_file_actions_t *file_actions, < 1237069725 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : const posix_spawnattr_t *restrict attrp, < 1237069725 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : char *const argv[restrict], char *const envp[restrict]); < 1237069730 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is the full prototype < 1237069775 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :To tell you the truth, I'm actually a bit surprised that it's legal. But my guess is that "char *const argv[restrict]" might be the same thing as "char *const *restrict argv", maybe. < 1237069776 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it may also indicate argv and envp can't alias each other < 1237069778 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure < 1237069801 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, restrict is perfectly legal inside [] in argument lists < 1237069817 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, obviously, but it still looks silly. < 1237069833 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I don't see where else it could be in a [] thing, so I guess there's not really an alternative. < 1237069842 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, for example, this is valid: static inline void mulMatrices(const double a[restrict 16], const double b[restrict 16], double r[restrict 16]) < 1237069855 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yeah that is 16 as in size < 1237069868 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :16 restrict isn't valid though: < 1237069873 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :/home/arvid/src/cfunge/code-cleanup/src/fingerprints/3DSP/3DSP.c:139: error: expected ‘]’ before ‘restrict’ < 1237069970 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, nice syntax eh? < 1237069972 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :~ < 1237069999 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :20:36 fizzie: You can do "animation" fast without screen-redrawing. As long as you're happy with just manipulating palette values. < 1237070001 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ha < 1237070010 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :20:46 fizzie: (And of course it also "buys you" a less silly color palette -- well, less silly for many uses -- than the default 256-color one.) < 1237070011 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, well, I'm not quite sure where else it could be, so I guess it makes sense; it just looks silly. < 1237070013 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :what are the values? < 1237070015 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :32-bit colours or w/e? < 1237070025 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :20:49 fizzie: Stop all the QBasic nonsense before I catch the qb bug too, though. I'm already very close to running dosbox; probably would've started it already, except I'm afraid it might use enough CPU to make the virtualbox windows vm get some audio-playing glitches. < 1237070027 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :dosbox uses like 0 cpu < 1237070030 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :do eet ;) < 1237070043 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I mean qbasic is just awesome. < 1237070049 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, and come to think of it, that virtualbox seems to use something like 10-30 % of one core, anyway. < 1237070062 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how many cores you got? < 1237070067 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Just two. < 1237070074 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :me too! we're core-buddie. < 1237070075 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :buddies < 1237070080 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION only has one code < 1237070082 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :core* < 1237070085 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The R/G/B values (each written separately) are 6-bit values, since VGA only does 18-bit colors. < 1237070097 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm fizzie should I not get an 8-core so we can stay core buddies? :( < 1237070100 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, however I do have root on a Quad Core Opetron server! < 1237070108 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :legal root < 1237070113 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pfft, quad core. < 1237070115 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(of course) < 1237070121 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :my hypothetical 2xquad-core nehalem scoffs at you. < 1237070124 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, model name : Quad-Core AMD Opteron(tm) Processor 1354 < 1237070128 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :don't think that is too bad < 1237070159 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Go do 8-core if you want; I can just sum up different computers and pretend they're somehow metaphysically speaking part of the same system. < 1237070169 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: i tried that once < 1237070176 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :in this room, I have 5 cores < 1237070177 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I think < 1237070193 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err 6 < 1237070193 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I just link a few erlang nodes :P < 1237070195 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Currently, there's only 2 cores in this room. I run old hardware. < 1237070197 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :7 < 1237070201 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, same < 1237070207 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :iMac: 2, ancient powermac: 1, iphone: 1, nintendo DS: 1, gamecube: 1, game boy advance sp: 1 < 1237070213 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :assuming I didn't miss anything < 1237070224 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :of course, most of those cores are ridiculously underpowered... < 1237070233 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1237070238 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :livebox runs linux so it must have some sort of cpu < 1237070238 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :8 < 1237070247 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hey I don't need to buy an 8-core < 1237070250 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I have it already! < 1237070298 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It'd be nice if QBasic would work with, say, more than 80x24 < 1237070299 0 :Azstal!unknown@unknown.invalid PRIVMSG #esoteric :ehird: the DS has two CPUs :) < 1237070299 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Nintendo DS counts as two. < 1237070302 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Or, you know, DOS in general < 1237070304 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wait, the DS has two cpus? < 1237070310 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There's both a 66 MHz and 33 MHz ARMs. < 1237070315 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's some powah. < 1237070318 0 :Azstal!unknown@unknown.invalid PRIVMSG #esoteric :an ARM9 and ARM7, I think < 1237070327 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ARM9 and ARM7; the ARM7 pretty much only does sound an input, though. < 1237070337 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i have 9 cores < 1237070340 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :top of the range! < 1237070342 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :night < 1237070372 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : Cassette tape support Yes No < 1237070373 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :aw bummer. < 1237070380 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :An unsubstantiated rumour says that in the official Nintendo dev-kit you can't really write custom code for the ARM7 anyway, there's just the Nintendo-provided binary that can handle sound-playing and other hardware functions unique to the ARM7 side. < 1237070381 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : Code organization Linear Modular < 1237070387 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :is that referring to the awful F2 sub browser? < 1237070392 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that hides subs from your main text? < 1237070411 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, probably. And maybe also the fact that you can actually have subs, although that's covered elsewhere too. < 1237070429 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm pretty sure even old BASICs had subs apart from really old ones < 1237070436 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: your code prints out \ as \\, it's causing alignment issues < 1237070462 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I didn't de-escape that; probably didn't notice it either. < 1237070541 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I have in this room two Athlon X2 dual-core things (sum: 4), two iBooks (sum: 6), and then all those "you can only non-seriously count these", like a DS (=8), a Symbian phone (=9), a Linksys WLAN thing (=10), and some even less-computery systems like the amplifier which has some sort of cpu/dsp dual-thing. I'm sure we can agree on some core-buddy number, though. < 1237070558 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a DS has 8 cores? < 1237070559 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :What now? < 1237070560 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1237070563 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's a running total < 1237070568 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's just the cumulative sum, yes. < 1237070594 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yeah, a linksys router with 10 cores would be fun < 1237070622 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so fizzie have you started up dosbox :P < 1237070636 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I recommend setting cpu cycles to 5000, it seems to run the most authentic while not being stupidly slow < 1237070650 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It depends on what you're running < 1237070664 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, you probably want >5000 for QBasic games, given their dog-slowness. < 1237070688 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But is that authentic speed? < 1237070712 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, I'm operating ont he assumption that this game was actually playable in 1995 < 1237070716 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :As opposed to taking one second to turn < 1237070718 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Not yet, no. I'm still just considering. For some reason dosbox's keyboard layout wasn't automagically okay either. < 1237070722 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :My point was that 'authentic speed' depends on what you're doing, the emulation is slower for some apps than others < 1237070744 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Mm. < 1237070748 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :And I've seen some pretty unplayable qbasic "games". < 1237070778 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Even with cpu cycles 53000 it's too slow on some things < 1237070790 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Raising CPU cycles slows stuff down after a certain point < 1237070820 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :There's the 'dynamic' mode, or whatever it was called, which often works best < 1237070829 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'll try that < 1237070846 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That's the on-x86-only binary translation thing, I guess. < 1237070888 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Since you're such a dosbox gooroo, how do I get my keyboard to work right? By default this seems like the US layout. < 1237070890 0 :kar8nga!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1237070892 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: that changed absolutely nothing. It just sticks at 3000 cycles. < 1237070901 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1237070902 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's core= < 1237070903 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :not cycles < 1237070905 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :dur < 1237070911 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Then it was something else, I don't remember what it's called but it removes the cycle count from the title bar < 1237070924 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :core=dynamic < 1237070929 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1237070933 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it sstill says cpu cycles, though < 1237070949 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: I just spent half a day a few weeks back trying to get the layout to work right, the best I could do was an almost-working (backspace is both backspace and caps lock) US < 1237070962 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I can't type \, it shows up as #. < 1237070976 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's not really friendly to non-US layouts < 1237070982 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :This is a US layout. < 1237070986 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Albeit an Apple one. < 1237070989 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm talking to fizzie < 1237070992 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1237070994 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or in general < 1237070996 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : I can't type #, it shows up as #. <-- say what? < 1237070998 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Not to you in particular, anyway < 1237071006 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: in DOSBox. < 1237071014 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :My \ key is just above my (one line) enter key. < 1237071039 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :That's strange, my # key is above 3. < 1237071040 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So anyway, a colemak layout with swapped caps lock and backspace was pretty much impossible to get to work < 1237071050 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :In Windows, I got it to work really easily though < 1237071070 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Okay, even with cpu cycles: max this game is ridiculously slow < 1237071117 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh, right, there's that ctrl-f1 keymapper, can that do something useful? < 1237071118 0 :Corun!n=Corun@93-97-219-19.zone5.bethere.co.uk JOIN :#esoteric < 1237071125 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I couldn't get it to work right < 1237071133 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It thought right alt was page down < 1237071136 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And other stuff like that < 1237071151 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Maybe I'll just use the US layout since it seems to work right. < 1237071153 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh, there were two possible keyboard modes in the .conf file < 1237071175 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The other one worked like that (not at all) and the other one worked partly, can't remember how exactly < 1237071188 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :In the end I just stuck with US with broken backspace < 1237071195 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :broken backspace, that must be a pain < 1237071201 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No, backspace works < 1237071214 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: < 1237071214 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: 2009-03-14 23:49:08 ( Deewiant) fizzie: I just spent half a day a few weeks back trying to get the layout to work right, the best I could do was an almost-working (backspace is both backspace and caps lock) US < 1237071223 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1237071236 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I have a ZX Spectrum+ on which backspace is 0 over 90% of the time < 1237071240 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That's a pain < 1237071241 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, fizzie, I recommend you set: < 1237071243 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :cycles=max < 1237071245 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :in the configuration < 1237071252 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's still dog slow, but you can write QBasic programs and have them finish before you die. < 1237071287 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"D'oh, typo. D'oh, zero! D'oh, zero! (...) Yay, backspace! D'oh, didn't hold it down, still 60 zeroes before my typo" < 1237071305 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Also the mouse won't work, but I'm not sure I'd be using that much. F6 for window-swapping feels a bit silly though. < 1237071331 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I didn't have mouse trouble < 1237071370 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :If I click the window so that it captures the mouse, I can only move the cursor up and down on the rightmost column of the screen. < 1237071413 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I guess the more important thing is that I have no clue what to do with qbasic. < 1237071434 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: You type, and F5 runs. < 1237071438 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ctrl-Break terminates. < 1237071443 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You can open, save, find, replace. < 1237071445 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And F2 browses subs. < 1237071450 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :For all else, see your manual. :P < 1237071456 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(Yes, I am deliberately misinterpreting) < 1237071499 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Whoa. I just sped my program up like 5x by using POKE instead of pset. < 1237071499 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1237071602 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :How did you interrupt this thing again? I didn't follow that part of the conversation. :p < 1237071610 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ctrl-Break. < 1237071618 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Which doesn't work for me but there you go < 1237071638 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It didn't really want to work for me either. < 1237071646 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Try alt-Break. < 1237071648 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Just Break. < 1237071649 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Shift-Break. < 1237071650 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :etc. < 1237071657 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ctrl-Shift-Break. blah blah < 1237071664 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Alt-Break changed the window title to be QBASIC PAUSED, that's about it. < 1237071689 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm second < 1237071732 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1237071734 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: ctrl-break ESC < 1237071744 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err, but alt-braek froze it < 1237071745 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :don't do tha < 1237071747 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :trestart dosbox :P < 1237071763 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Alt-break here just pauses it, and a second alt-break restores. < 1237071768 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ah. < 1237071771 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Then ctrl-break ESC. < 1237071774 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Huh, also, a note < 1237071784 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :For actual lines, use LINE, it's faster than repeated POKEs < 1237071790 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :POKE is just fast for single pixel thangz. < 1237071799 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Sure, a qbasic loop is slow-as-molasses. < 1237071819 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Did ctrl-break esc work for you? < 1237071841 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It had already finished; I'll try when I get stuck next. < 1237071864 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm being transported back to good old days I never had :P < 1237071926 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I had some qbasic days, and I'm not sure they were especially good. I think the Commodore kids and such got all the good old days, while PC people just got the sucky old days. < 1237071943 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, QBasic is pretty cool. < 1237072171 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1237072172 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: try < 1237072177 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ctrl-scrollock ESC < 1237072204 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1237072205 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it works < 1237072207 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :in fact < 1237072210 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :just ctrl-scrollock < 1237072211 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no ESC < 1237072212 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :works perfectly < 1237072242 0 :kar8nga!n=kar8nga@e-44.vc-graz.ac.at JOIN :#esoteric < 1237072246 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, seems to. Good. < 1237072270 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Demoscene law dictates that I now write a mandelbrot renderer that twirls it around. < 1237072295 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It will not be very fast. < 1237072311 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hey, a mandelbrot viewer came with QBasic, apparently. < 1237072315 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's gotta be possible. < 1237072322 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Sure, just not very fast. < 1237072327 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sides, I can use inline machine code. < 1237072365 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh yes, the comfortable solution. < 1237072387 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, there's nothing you can't do with QBasic! < 1237072460 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Anyway, here's one palette-rotation example for you, if you can bother waiting for it to finish drawing: http://zem.fi/~fis/prot.txt < 1237072483 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That's scarily ... organized. < 1237072525 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Heyyy, that's my fractal! < 1237072530 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::DD < 1237072538 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Whoa it changes colour. < 1237072540 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Right, it's the ehird fractal. < 1237072542 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Best program ever. < 1237072647 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Try replacing (X AND Y) with (X OR Y). < 1237072652 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, well, "changes colour" is pretty much what you get with palette-messups. As far as graphics chipsets go, VGA is pretty boring. < 1237072661 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's the same! < 1237072715 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: wtf, XOR produces it too < 1237072719 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :is there any operation that DOESN'T produce it? < 1237072732 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :XOR's pallette changing is diagonal, which is nice. < 1237072741 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Are those bitwise or boolean operations? < 1237072745 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Bitwise < 1237072756 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: (X + Y) gives a smooth gradient < 1237072782 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, that's just "manhattan-distance from (0,0)" and the palette happens to be a smooth gradient. < 1237072789 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :haha :D < 1237072829 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :X IMP Y gives it to you in a bit different orientation, but most bitwise ops do "look" rather similar when done that way. < 1237072847 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :X EQV Y is perhaps a bit different-looking. < 1237072866 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err it is < 1237072867 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :? < 1237072869 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it looks the same to me < 1237072873 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It also has a bit of a "straight line looks curved" visual illusion going on, or maybe it's just my eyes that are wonky. < 1237072880 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1237072883 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: EQV is XOR < 1237072884 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :for this < 1237072894 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Right, I didn't try XOR. But yes, sure. < 1237072914 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's just NOT (x XOR y) anyway. < 1237072918 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wish it wrapped on overflow instead of errored < 1237072958 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: anyway, that palette changing would indeed be useful to animate without redrawing anyhting < 1237072969 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :EQV and XOR are dual. (NOT x) EQV (NOT y) = NOT (x XOR y) < 1237073022 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, how do you convert a string to an int... < 1237073045 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The canonical palette-animation example is an animated sea: just allocate 8 or 16 colors for a blue-white gradient, use that to draw your sea tiles, then you can rotate that 16-color block to get waves. < 1237073092 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://zem.fi/~fis/qbc.html#QEw4MDI1 < 1237073102 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :CVI(string) converts to an integer. < 1237073111 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :And CVL to long. < 1237073122 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1237073143 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :are you sure? < 1237073149 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :as in CVI("123")=123 < 1237073153 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Not really, no. < 1237073158 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :VAL converts a string representation of a number to a number. < 1237073159 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's VAL. < 1237073177 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Okay, this is very slow but pretty. < 1237073184 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :CVI is the inverse of MKI$, which is for formatted int-printing. < 1237073198 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :STR$/VAL seems to be the human-readable pair. < 1237073204 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Aw, overflow. < 1237073205 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I don't really remember any of this stuff. < 1237073220 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Okay. < 1237073222 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*Hokay. < 1237073227 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :What now, hrm < 1237073287 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://library.thinkquest.org/19436/download/gorilla/gorilla.bas < 1237073292 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :gorilla.bas; albeit double spaced. < 1237073306 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Exciting! < 1237073307 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That thing would be useful (in a very limited sort of way) for quick prototyping of... well, something; if it were, you know, quick. < 1237073321 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"thing"? < 1237073326 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :QBasic? < 1237073329 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :qbasic. < 1237073342 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I am very upset you do not consider it a viable programming choice :P < 1237073371 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :GORILLAS RUNS :D < 1237073381 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*RUN < 1237073417 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :or possibly, *GORILLA < 1237073481 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :IF again$ = "y" THEN GOTO spam < 1237073606 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :haha, setting gravity=-1 in gorillas messes everything up < 1237073623 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :velocity 1? the banana just shoots off into space. veeery slowly. < 1237073919 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Incidentally, VGA can do this unchained mode, where you get four 64K planes, with plane 0 containing pixels 0, 4, 8, .., plane 1 containing 1, 5, 9, ... and so on; then you can set a write mask of 0b1111 and write a pixel to all four planes simultaneously; that's quite a bit faster if you just need to write the same value to all pixels. < 1237073962 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :(And of course it lets you use all the 256K memory a VGA card has, so you can do double-buffering with hardware-assisted page-flipping.) < 1237073969 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm < 1237073974 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Is there any way to have more than one palette at a time? < 1237073984 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Like, changing the palette in the middle of a redraw? < 1237073989 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's just that things are more complicated then, and whenever you add a bit of qbasic logic, things get real slow real fast. < 1237074000 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Then you could have >256 colours < 1237074039 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I don't think I've seen such tricks done on a PC, really. I don't think you can get any interrupts at particular raster-lines or anything. < 1237074054 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Mm. So drawing is atomic, then. < 1237074054 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You'd need some pretty careful cycle-counting, at the very least. < 1237074071 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Not very doable in a qbasic program. < 1237074076 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: what if you drew only some of the pixels per redraw, and flashed between them really fast? I guess the hardware isnt' fast enough to make that plausible < 1237074108 0 :MigoMipo!unknown@unknown.invalid QUIT :"QuitIRCServerException: MigoMipo disconnected from IRC Server" < 1237074131 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lament: link to haccordion? < 1237074135 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Since I have leopard now < 1237074185 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I'm sure you can flash between two screens at 60hz (it's just a couple of writes to the VGA registers to switch the display start offset) so you can draw two pictures with close-enough colors, and that way get colors between the ones in the (static) palette, if you don't mind the horrible flickering. < 1237074195 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: in asm it could be fast enough. maybe? < 1237074206 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but yeah, N segments gives you 256*N colours < 1237074219 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so if you have a segment per pixel the possibilities [for your epilepsy] are boundless < 1237074270 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"Okay this is subjective because it depends on your definition of large. When I say large, I mean about 6 gigs or so. Because your company's source tree is probably that large." < 1237074274 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You can fit up to four frames of that 320x200 256-color mode on the standard video memory. I really don't have a clue how slow the palette reprogramming is. < 1237074274 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That is one shit company. < 1237074457 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hokay, mandelbrot. < 1237074462 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Let's see if I can't done figure this out? < 1237074758 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :er wait < 1237074810 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh dear, my mandelbrot leavs a flat nothing,. < 1237074994 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :-2 to 2 on both axes if you want all of it < 1237074996 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :iirc < 1237075004 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Actually, it's just a bug. < 1237075006 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well. < 1237075009 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Maybe not quite a bug, just. < 1237075012 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It takes 5 years. < 1237075087 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I think the (-2,-2) .. (2,2) range is not the aesthetically most pleasing one. I don't remember what I've used, though. That certainly should contain all of it, anyway, so you can fine-tune. < 1237075128 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :might do something refining, painting larger squares first < 1237075156 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh well, I'll stick to simpler fractals. < 1237075167 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I can render a sierpinski in 4.5 seconds, you know. < 1237075184 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Actually it's more like 8 seconds