00:00:37 <boily> quintopia: when will it be done?
00:01:07 <boily> you should conclusively sugar your bloodstream hth
00:02:39 <oren> h́̅̆ể̏l̸̤l̲̹̘̊ö̸̷̤̥̂̀̃̅̆
00:03:09 <oren> you lose, lol, I'm so random
00:04:24 <boily> . o O ( I should've used a spork for mapoling oren. I guess I'm not random enough... )
00:04:29 -!- ChanServ has set channel mode: +o oerjan.
00:04:46 -!- oerjan has kicked oren Preliminary Zalgo protection.
00:04:56 -!- oerjan has set channel mode: -o oerjan.
00:05:08 <boily> quintopia: the game.
00:05:10 -!- oren has joined.
00:05:18 <boily> helloren! long time no see!
00:05:33 <oren> ok, I'll stop seeing how much shit i can stack on top of a latter
00:08:04 <quintopia> boily: as you can see, wam made some mistakes and has now been thrown under the bus.
00:08:22 <oerjan> boily: a spork does not seem to qualify as a mapole hth although maybe if it's an infamous canadian army pole it might include a spork?
00:08:45 <HackEgo> A mapole is a thwackamacallit built from maple according to Canadian standards.
00:09:30 <oerjan> `learn_append mapole The army version includes a spork, a corkscrew and a moose whistle.
00:09:32 <HackEgo> Learned 'mapole': A mapole is a thwackamacallit built from maple according to Canadian standards. The army version includes a spork, a corkscrew and a moose whistle.
00:10:12 * oerjan felt sudden inspiration
00:11:30 * boily needs to update ça au plus vite.
00:11:41 <HackEgo> quintopia is our resident tl;dr generator.
00:13:00 <boily> meanwhile, I'm using zsh at my job, and bash at home. I'm beginning to prefer zsh. I feel tainted and corrupted. do y'all think I should switch everything to the Z, or keep bash as a saner option?
00:16:22 <zzo38> Even if you prefer to use zsh generally you should probably install bash anyways in case some program require it somehow
00:18:21 <oren> I use midnoght commander as my shell most of the time
00:18:32 <oren> but sometimes zsh too
00:20:29 <boily> I never got the hang of mc. I prefer a good screen (or tmux).
00:23:36 <oren> mc is good mostly for moving and renaming files en masse
00:25:14 <oren> for an actual shell I used zsh
00:25:18 -!- bb010g has joined.
00:25:28 <oren> but for file management mc is the boss
01:00:41 -!- mihow has joined.
01:05:28 -!- mihow has quit (Ping timeout: 256 seconds).
01:06:31 -!- mihow has joined.
01:08:43 <oren> i'm going to put the current draft of my sprite scaler up
01:14:14 -!- mihow has quit (Ping timeout: 264 seconds).
01:20:15 -!- mihow has joined.
01:24:52 * boily stares at dropbox to make it sync faster
01:32:16 -!- hilquias has quit (Remote host closed the connection).
01:43:19 <oren> https://github.com/orenwatson/oren4x/blob/master/oren4x.cpp
01:47:38 <boily> also, you're now a coonspirator.
01:48:37 -!- boily has quit (Quit: ALIGNED CHICKEN).
01:50:33 -!- mihow has quit (Ping timeout: 265 seconds).
01:54:31 <zzo38> O, you even have learn_append command I didn't know that before
01:59:08 <zzo38> I don't even need all of the functions of Redmine; the issues, wiki, files, will be good enough but I would want to allow arbitrary people writing on wiki and this this Redmine doesn't seem to accept that
02:02:09 <zzo38> I don't need the HTTPS either
02:02:25 -!- nys has quit (Quit: quit).
02:06:49 -!- adu has joined.
02:23:47 -!- hjulle has quit (Ping timeout: 250 seconds).
02:33:13 -!- Sprocklem has quit (Quit: ).
02:45:52 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
03:31:55 -!- adu has quit (Quit: adu).
03:44:33 -!- Herbalist has quit (Ping timeout: 244 seconds).
03:49:18 -!- password2 has joined.
03:51:13 -!- doesthiswork has joined.
03:53:22 <doesthiswork> I just had a great idea. floating precision floating point. You set several bits aside to tell you how many bits are in the exponent
03:54:29 <pikhq> I do hate to tell you this, but that's pretty close to just arbitrary-precision floating point.
03:57:50 <oren> I don't think that's the same thing
03:59:06 <oren> he's saying, if you have 256 bits, you use 8 of them to signal how many of the remaining 248 bits are used as exponent and how many as mantissa.
03:59:34 <oren> So the total number of bits is still fixed
04:01:09 <pikhq> Ah. That... sounds *really* tricky to implement.
04:03:46 <doesthiswork> and if you're that you might waste bits on the meta-exponent when you don't need that amount of dynamic range in the exponent, you can have a meta-meta-exponent that tells you how many bits are used for the meta-exponent
04:04:16 <doesthiswork> replace "you're that" with "you're worried that"
04:08:03 <oren> holy crap, __int128_t is a thing
04:12:23 <pikhq> I prefer its real name, int128_t
04:16:32 -!- Wallacoloo has joined.
04:18:08 -!- hilquias has joined.
04:48:14 -!- hilquias has quit (Read error: No route to host).
04:59:10 <Jafet> TAOCP 2 has an exercise involving "floating-slash" rational numbers.
05:17:40 <quintopia> i guess that means a number m/n is represented by a fixed-width number k, followed by the k bits of m, followed with all the remaining bits representing n?
05:39:41 <Sgeo_> This looks like some nice light Agoran reading http://www.mail-archive.com/agora-official@agoranomic.org/msg07043.html
05:39:47 * Sgeo_ will read it tomorrow
05:47:54 -!- password2 has quit (Remote host closed the connection).
05:55:34 <oren> my scaling algorithm is working nicely now
05:56:14 <oren> http://postimg.org/image/lwzyx1cy9/2439f47a/
05:58:53 <oren> http://postimg.org/image/kpt8mgxhb/
06:00:08 <oren> it attempts to smooth edges and yet make dithering xxxxxxx patterns look good too
06:02:08 <oren> like look at the carpet in the living room. it has a checkerboeard pattern on it, so the algorithm dithers it more together
06:03:50 <HackEgo> [wiki] [[Special:Log/newusers]] create * Nomanni * New user account
06:04:59 <Jafet> oren: some pixels seem to be leaking from the potted plant, though
06:06:43 <oren> yeah, it's not perfect, but it is made to be easily modified. the algorithm https://github.com/orenwatson/oren4x/blob/master/oren4x.cpp simply matches the area around a pixel to various patterns of pixels with the same color, and a matched pattern results in a pattern for the 4x version
06:06:52 <Jafet> The artist probably never expected that to become visible
06:07:41 <oren> I plan to keep figuring out rules whenever I see a part that looks too wrong
06:07:49 <Jafet> Optimising the battle animations could be more interesting
06:08:02 <HackEgo> [wiki] [[Main Page]] http://esolangs.org/w/index.php?diff=43196&oldid=43156 * Nomanni * (-749)
06:09:51 <HackEgo> [wiki] [[Language list]] http://esolangs.org/w/index.php?diff=43197&oldid=43167 * Nomanni * (-14275)
06:11:42 <Jafet> Someone's optimising the esowiki
06:11:46 <oren> http://postimg.org/image/drsnyx6kh/
06:12:06 <HackEgo> [wiki] [[Esolang:Community portal]] http://esolangs.org/w/index.php?diff=43198&oldid=43155 * Nomanni * (-909)
06:12:23 <oren> here we can see some glitches with parts of the chinese chatacters
06:13:47 <Jafet> Edge detection would work for more lines
06:13:55 <HackEgo> [wiki] [[Main Page]] http://esolangs.org/w/index.php?diff=43199&oldid=43196 * Nomanni * (-1787)
06:14:25 <HackEgo> [wiki] [[Language list]] http://esolangs.org/w/index.php?diff=43200&oldid=43197 * Zzo38 * (+14275)
06:14:36 <HackEgo> [wiki] [[Special:Log/block]] block * Oerjan * blocked [[User:Nomanni]] with an expiry time of indefinite (account creation disabled): Spamming links to external sites
06:15:21 <HackEgo> [wiki] [[Main Page]] M http://esolangs.org/w/index.php?diff=43201&oldid=43199 * Oerjan * (+2536) Reverted edits by [[Special:Contributions/Nomanni|Nomanni]] ([[User talk:Nomanni|talk]]) to last revision by [[User:213.162.68.175|213.162.68.175]]
06:15:22 <HackEgo> [wiki] [[Esolang:Community portal]] M http://esolangs.org/w/index.php?diff=43202&oldid=43198 * Oerjan * (+909) Reverted edits by [[Special:Contributions/Nomanni|Nomanni]] ([[User talk:Nomanni|talk]]) to last revision by [[User:213.162.68.175|213.162.68.175]]
06:17:01 <oren> oerjan: uh, am I missing somethin
06:17:21 <oerjan> zzo38: never mind it was ok
06:22:57 <oerjan> that one seemed pretty insistent, at least we caught em quickly
06:25:23 <oren> http://postimg.org/image/qbrbyr2tj/
06:27:25 <oren> I like ZAS because it has the most intricate graphics of any game I've played for the original game boy
06:28:19 -!- Wright has quit (Ping timeout: 244 seconds).
06:41:00 <mroman_> oren: what scaling alogrithm is that?
06:41:34 <oren> https://github.com/orenwatson/oren4x/blob/master/oren4x.cpp
06:41:54 <oren> I modded it into mednafen
06:42:34 <doesthiswork> so I'm playing around with machine learning proto-indoeuropean roots. And it finds it very surprising how many roots start with gʷ
06:45:14 <oren> gwuh gwark gwlph
06:47:39 <oren> doesthiswork: are you entering them as unicode or a special encoding?
06:50:21 <oerjan> doesthiswork: gʷery gʷood
06:51:35 -!- constant has quit (Ping timeout: 265 seconds).
06:59:39 -!- doesthiswork has quit (Quit: Leaving.).
07:02:37 -!- Herbalist has joined.
07:19:32 -!- Wallacoloo has quit (Quit: Leaving.).
07:25:14 -!- J_A_Work has joined.
07:34:47 -!- Herbalist has left ("WeeChat 1.2").
07:48:16 -!- Elronnd has changed nick to kerio_is_a_boat.
07:48:38 -!- kerio_is_a_boat has changed nick to Elronnd.
07:51:31 <oerjan> *sigh* bbc's news site also seems to think zoom means i want to look at a mobile-like page
07:54:14 <oerjan> oh well only depressing news anyway.
08:11:44 -!- FreeFull has quit (Ping timeout: 256 seconds).
08:13:16 -!- FreeFull has joined.
08:15:42 <oren> the bbc is crap anyway. actually, scratch that, all news is crap
08:16:42 <int-e> For a better experience on your device, try our mobile site.
08:16:55 <int-e> and... stupid firefox.
08:17:44 <oren> 't see a message when I zoom
08:18:20 <oren> might be they are using some HTML5 thing that my older version of firefox didn't have
08:19:45 <oerjan> oh it only did what i complained about when i load the page, not if i zoom after it's loaded.
08:19:54 <oren> like detecting zoom might not be in firfox 22
08:21:07 <int-e> they do collapse the "side bar" to the right at some (ridiculous) zoom level, or window width. I would see that as a feature.
08:21:35 <int-e> ...if javascript is enabled...
08:22:26 <oren> I have jsenabled
08:22:41 <oren> i think it's just a new html5 thing
08:25:04 <int-e> actually without javascript, links point to pages that look very much like they're designed for mobile devices. ugh.
08:31:19 -!- Patashu has joined.
08:34:35 -!- Patashu has quit (Remote host closed the connection).
08:34:55 -!- Patashu has joined.
09:03:47 -!- mitchs_ has joined.
09:04:48 -!- mitchs has quit (Read error: Connection reset by peer).
09:07:04 -!- oerjan has quit (Quit: Good night).
09:57:19 <mroman_> apparentely webpages can disable zooming on mobile devices
09:58:07 <mroman_> <meta content='width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0' name='viewport' /
09:58:15 <mroman_> there's a special place in hell for these peolpe
09:59:02 <mroman_> "Disable "disable zoom"" would be a nice browser option
10:14:45 -!- boily has joined.
10:32:43 <oren> "find web developer and slap them" would be a better one
10:33:32 <boily> web developers deserve more.
10:36:22 <oren> This irssi process has now been running for 10 days
10:36:49 <oren> ps -axo comm,lstart | grep irssi
10:37:04 <oren> irssi Mon Jun 1 02:40:26 2015
10:45:12 <oren> I wonder what the world record for longest running server is
10:45:19 <izabera> http://git-man-page-generator.lokaltog.net/
10:46:41 <oren> holy shit I was taken in for like a whole minute
10:48:02 <oren> just goes to show how incomprehensible git is.
10:56:25 <boily> do you even educate subtrees, bro? did you skip remote stash day?
11:02:30 -!- lemurian has quit (Ping timeout: 265 seconds).
11:03:49 <lambdabot> CYUL 111000Z 24014G24KT 10SM FEW010 OVC025 17/14 A2968 RMK SF1SC7 SLP051 DENSITY ALT 600FT
11:08:03 <HackEgo> racoonspirator/A racoonspirator is a collaborator wrapped in fur
11:08:09 <HackEgo> koen/Koen vit au haut de la Tour Eiffel (coordonnées approximatives).
11:08:19 <Jafet> My git trees are always reflogged, as flogging them once isn't enough.
11:08:50 <boily> @ask Koen_ Vis-tu toujours en haut de la Tour Eiffel, ou approximativement là, ou vraiment approximativement quelque part autour?
11:10:12 <HackEgo> phở/Phở là một món ăn truyền thống của Việt Nam, cũng có thể xem là một trong những món ăn đặc trưng nhất cho ẩm thực Việt Nam.
11:10:33 * boily wonders if he can get a nicer Vietnamese font...
11:10:37 <HackEgo> koen/Koen vit au haut de la Tour Eiffel (coordonnées approximatives).
11:10:46 * boily mapoles HackEgo's RNG
11:10:49 <HackEgo> burlesque/Burlesque is only the sexiest language on Earth. (See: http://mroman.ch/burlesque)
11:11:01 <HackEgo> whitespace/see https://www.bing.com/search?q=whitespace
11:11:50 <oren> space. the final frontier
11:12:14 <HackEgo> coulor/Coulor is the correct spelling.
11:12:23 <HackEgo> is a space, unless you're hackego and don't understand wide characters.
11:17:28 <oren> is it even possible to name a file the empty string
11:19:52 <APic> Try and report, please.
11:20:03 <APic> [2/5.0.7]apic@Ant:~> >""
11:20:03 <APic> zsh: datei oder Verzeichnis nicht gefunden:
11:20:39 -!- Patashu has quit (Ping timeout: 246 seconds).
11:20:56 <HackEgo> bash: : No such file or directory
11:21:06 <APic> [2/5.0.7]{1}apic@Ant:~> strace "sh -c '>\"\"'"
11:21:06 <APic> strace: Can't stat 'sh -c '>""'': No such file or directory
11:21:18 -!- Patashu has joined.
11:21:21 <APic> Back to JuNetHack.net
11:21:24 <boily> APic: hi? what was that?
11:21:28 <oren> yeah it would be incompatible with paths like ~/code//utils/timetotime
11:21:49 <APic> I _think_ NetHack should be nearly Turing-complete. Anybody can elaborate on that?
11:21:53 <boily> fungot: have you brought forth one of your brethren?
11:21:58 <fungot> boily: http://www.codu.org/ odikeh/ :) dinnertime. those were backspaces.) all qubits in fnord states have always resolved to 1, and ( in my fridge but they're rather quiet." " yeah, but
11:22:21 <APic> boily: That was my zsh-Prompt and an epic Fail, sorry.
11:22:22 <boily> APic: you should ask ais523. he maintains NetHack.
11:22:35 <APic> Yeah, i know him from #NetHack et al.
11:22:48 <APic> Will ask when he joins back.
11:23:35 <oren> can you name a file with non-printing characters?
11:23:48 <oren> like backspace?
11:24:29 -!- lemurian has joined.
11:24:49 <oren> apparently you can do it with newline
11:26:16 <Melvar> IIRC the only characters that can’t be in unixy filenames are '/' because separator and '\0' because end of string.
11:26:54 <Taneb> I think ':' as well maybe?
11:27:56 <oren> shit now my home directory is full of asinine named files
11:28:35 <boily> Taneb: ':' on windows because 'C:' hth
11:28:45 <boily> oren: now you know why you can't :P
11:29:26 <Melvar> : is perfectly fine. You can also leave such a file on a FATwhatever thumbdrive, then Windows Explorer will show the : as a box.
11:30:00 -!- boily has quit (Quit: HOMOGENEOUS CHICKEN).
11:30:58 <oren> like touch $"\007" works. so then your terminal beeps every time you ls
11:31:24 -!- Phantom_Hoover has joined.
11:31:58 <oren> whoops my bash syntax is off that should be $'\007'
11:37:01 <oren> Melvar: yeah that appears to be correct. filenames can contain any bytes except those two it appears
11:38:03 -!- sebbu2 has changed nick to sebbu.
11:39:47 <oren> this time i had the prescience to put them in a temporary directory
11:47:27 -!- lemurian has quit (Ping timeout: 265 seconds).
11:52:47 -!- ais523 has joined.
11:54:55 <mroman_> the can even have backspaces?
11:55:53 <oren> when ls, all control chars are replaced with ?
11:58:37 <mroman_> fungot: Fnordy morning to you
11:58:37 <fungot> mroman_: what's the rationale for that? they need more of this silliness? :) i don't know squat about the language
11:58:45 <mroman_> fungot: I know the language.
11:59:03 <mroman_> fungot: Shall I teach you?
11:59:25 <mroman_> fungot: Yeah, the language is called 'or'.
11:59:25 <fungot> mroman_: the command to push false is ' f'
12:00:00 <mroman_> fungot: Exactly. To push false to the stack in 'or' you just use the f command prefixed with a space.
12:01:44 -!- ZombieAlive has joined.
12:01:56 <ais523> is fungot inventing an esolang?
12:01:57 <fungot> ais523: i just used emacs to control source code control. objections?") and two people working on each implementation is probably quite useless with a lisp
12:01:59 -!- ZombieAlive has quit (Changing host).
12:01:59 -!- ZombieAlive has joined.
12:02:12 <ais523> I guess we should leave it alone to write the interp
12:02:40 <mroman_> No, it is tyring to learn a language called or.
12:03:54 <mroman_> However, we only now so far that ' f' pushes false to the stack.
12:09:10 <oren> I added a few palettes for game boy games to my repstry.
12:09:20 <ais523> we should add this esolang to esolangs.org
12:09:48 <oren> that sounds good
12:12:34 <mroman_> It will mostly be impossible to prove turing complete until more is known .
12:14:06 -!- Patashu has quit (Ping timeout: 258 seconds).
12:27:26 <int-e> hmmm. "Have you brought Forth one of your brethren?"
12:28:18 -!- supay has joined.
12:29:12 <int-e> fungot: are you working on your own esolang?
12:29:12 <fungot> int-e: even if there are many variations and i do plan on waiting for that website for my entire language on., they're trying to cut down on the floor
12:29:26 <b_jonas> oh! so it's not exponential decay
12:38:16 -!- J_A_Work has quit (Quit: J_A_Work).
12:40:59 -!- ais523 has quit (Ping timeout: 272 seconds).
12:53:57 -!- ais523 has joined.
12:59:59 <Jafet> ^style irc is getting pretty meta.
13:01:49 -!- lemurian has joined.
13:01:59 -!- lemurian has quit (Changing host).
13:01:59 -!- lemurian has joined.
13:14:41 -!- J_A_Work has joined.
13:21:38 -!- Wright has joined.
13:21:58 -!- J_A_Work has quit (Quit: J_A_Work).
13:24:13 <Taneb> I miss the legend that was Friendship Mouse
13:24:34 -!- doesthiswork has joined.
13:24:51 <Taneb> Heh, there are two quotes about self-face-punching
13:25:01 <Taneb> `quote punch.* myself
13:25:02 <HackEgo> 401) <Taneb> Look, I often walk my dog through a field with cows in it. And I punched myself in the face once. \ 612) <elliott> ais523: I pronounce "xor" by punching myself in the face and then "or"
13:26:51 <Taneb> Anyway it is time to listen to someone talking about a language that is a little like Eodermdrome! Or possibly something else
13:26:56 <Taneb> In any case I am going away now
13:30:47 -!- `^_^v has joined.
13:42:17 <oren> you know, it *would* be nice for the emulator to interpolate scrolling backgrounds to increase the effective frame rate but I cant' figure out where in the code I would do such thing
13:43:31 <oren> I guess I could do it somewhere above the gpu emulation but that seems unsanitary
13:47:55 <oren> Like the idea would be, if the bg is scrolling at 1pix/8frames and we are operating at 4x scale, we could interpolate to scroll at an effective 1pix/2frames on the real screen
13:49:03 <oren> but the problem is, the scaling happens after the gpu emulation, so we would have to store say the last 10 frames and check whether it is scrolling
13:50:31 <oren> while if the scaling was BEFORE the gpu composites the sprite and background layers, then it would be way easier
13:52:07 <oren> Maybe I'll try to do the after-compositing idea by storing previous frames. it will be fucking slow, but hey, game boy emulation is pretty fast
13:54:23 <HackEgo> [wiki] [[Or]] N http://esolangs.org/w/index.php?oldid=43203 * 160.85.232.173 * (+1256) or - the dubious language
13:58:41 <oren> Ok so what I'mma do is, for each block of say 5x5 pixels, check if any of say the last 10 previous frames exactly matches it, one pixel up, left, right or down. if it does, then we also check if any frame before that has the same pattern one more pixel in the same direction. that will give us the scroll rate,and if we store previous rendered version we then copy it, scrolled by the interpolated subpixel amount, into the block.
13:59:25 <oren> overall then, 20 frames of previous data need to be stored
14:00:32 <oren> does that sound good? or does it sound like complete madness
14:02:10 <oren> there may be glitches at the border between scrolling and stationary objects or objects scrolling in different directions
14:02:48 -!- ais523 has quit.
14:02:56 -!- ais523 has joined.
14:03:20 -!- variable has joined.
14:06:05 -!- Wright has quit (Ping timeout: 265 seconds).
14:07:32 <oren> so a fully rendered and scaled frame from a game boy is 1.5 MB, therefore 20 frames (1/3 of a second) is 29 MB of ram
14:08:09 <mroman_> how much RAM did a regular gameboy have?
14:08:29 <b_jonas> what? isn't it a 256x212 pixel with 4 levels of grayscale?
14:08:49 <b_jonas> plus it's made of tiles and sprites
14:09:32 -!- ais523 has quit (Ping timeout: 276 seconds).
14:09:44 <oren> 160x144*(4bytes color)*(4*4 scaled) = 1441474560
14:09:54 <oren> 160x144*(4bytes color)*(4*4 scaled) = 1474560
14:10:36 <oren> maybe I'll instead store some sort of hash for easier comparison
14:12:07 <oren> b_jonas: the coloring also happens before I can get to is
14:12:21 <oren> so if you want palets to work with it
14:12:45 <oren> i know, it's fuck
14:12:56 <b_jonas> store just the map, the offsets, sprite pics and locations, and the map tile pictures when they change.
14:13:12 <b_jonas> ok wait, what generation game boy is this?
14:13:45 -!- Froox has quit (Quit: *bubbles away*).
14:13:58 <b_jonas> can you live compress it with some fast algorithm? tiles compress well
14:14:05 <oren> Well the part of the code I understand and know how to modify happens after the sprites are baked into the frame. so yeah
14:14:11 <oren> I can probably do that
14:14:43 <b_jonas> you can also try two-level compression, first compress quickly as you run the game, then later recompress
14:15:20 <oren> then decompress when I'm interpolating?
14:16:20 <b_jonas> but that's only worth if you want to watch playing of the game live to see it goes well, or want to interact with it
14:16:28 <b_jonas> if it's a fixed known good emulation, then don't bother
14:16:36 <b_jonas> then compress it in one phase
14:18:44 <oren> what is a good fast hashing scheme?
14:19:59 <oren> (fast on X86, that is)
14:21:21 <mroman_> is that for the gameboy monochrome?
14:22:08 <oren> monochrome is 8kb
14:23:56 <oren> fuck it, I'll just do some stupid simple rotate-xor thing
14:24:32 -!- Frooxius has joined.
14:25:16 <oren> get the 9 pixels around, rotate each one by its position from 1-9, xor them all together into a 32 bit unsigned
14:25:34 <oren> that ughta do it
14:26:08 <b_jonas> oren: or use multiplication too
14:26:20 <oren> actually that would work better
14:26:30 <oren> colors tend to have repetitive bits
14:27:32 <oren> multiply each color by a 8 bit prime, xor them together
14:27:44 <b_jonas> multiply each 16 bit word with some nice number, taking the low or high bits of the result, whichever you choose, but the high bits only if you multiply by a number, different for each word so that shifted pics differ, and add them together
14:29:32 <b_jonas> then maybe log how many collisions you get to find out if it's a good algorithm or not
14:30:10 -!- doesthiswork has quit (Quit: Leaving.).
14:30:15 <oren> if we get collisions the screen will look... horribly wrong i think
14:34:11 <b_jonas> oren: you always get some collisions
14:34:39 <b_jonas> so you have to do a proper hash table lookup too, not just a hash function
14:35:00 <b_jonas> it's just _too many collisions_ that you should avoid
14:36:07 <mroman_> (I'm really nooby in computer graphics)
14:36:29 <oren> To allow easy detection of when a 5x5 pixel area matches a previous frame's shifted.
14:36:49 <oren> or 3x3 or whatever I decide
14:38:59 <oren> in other words, if the current frame locally looks like the frame 5 frames ago, except moved 1 pixel left, and the frame 10 frames ago is shifted 2 pixels, we want to interpolate so that the frames move smoothly
14:39:20 <oren> on top of emulating a game boy
14:39:53 <oren> and dynamically, intelligently scaling the screen up so each pixel becomes 16
14:39:58 <b_jonas> so you have to do it in real time?
14:40:08 <oren> well yeah it's an emulator
14:40:46 <oren> I program for the same reason I play games, because they're HARD!
14:41:36 -!- variable has changed nick to rout.
14:41:38 -!- rout has changed nick to trout.
14:43:23 <b_jonas> oren: I still say you should try to access the map and sprite data, or at least parts of it, from the emulator directly
14:43:27 <oren> actually technically, I think the colors don't have an alpha channel. So I could store 3 bytes per color instead
14:43:57 <b_jonas> oren: no no no, figure out the palette first, isn't it always small on any one frame?
14:44:13 <b_jonas> convert to an indexed image
14:44:21 <b_jonas> make sure to try to make the indexes consistent between pictures
14:44:28 <b_jonas> or get the palette directly from the emulator
14:44:44 <b_jonas> the tiles or sprites are not true color, right?
14:45:05 <oren> on color game boy i think its' 15 bit color
14:46:48 <oren> oh wait, they are limited to 56 colors per scanline
14:47:30 <oren> which makes no sense, how do scanlines exist on an LCD anyway?
14:47:48 <b_jonas> oren: because the cpu can in theory change the palette between scan lines
14:48:08 <b_jonas> (or any time really, but the graphics chip reacts slowly)
14:48:25 <b_jonas> the chipset rendering the video still has to process in scan lines
14:48:29 <b_jonas> even if there's no cathode ray
14:48:44 <b_jonas> but very likely the palette changes rarely
14:48:52 <b_jonas> probably only at most once a frame
14:49:54 <oren> well I'll get to writing code, and if it is too slow (on this crap computer which is a good basement, being less powerful than a typical smartphone tthese days)
14:50:01 <fizzie> Quite a few old video chips have per-block things to save on VRAM.
14:50:07 <oren> then i'll opytimize
14:51:18 <oren> and obviously I'll leave in a #define to turn off/on this shit
14:53:51 <Taneb> It was an interesting talk, about GP 2
14:54:05 <Taneb> (a language that is a bit like Eodermdrome, in that it is a graph programming language)
14:54:07 <fizzie> I'm pretty sure at least some of the C64 graphics modes have "native" 8x8 blocks where you can have 4 different colors out of a palette of 16 in each block (some details omitted here), and people turn that into 8x1 blocks by doing work for each scanline.
14:54:58 <b_jonas> fizzie: isn't that character mode with 2 bit per pixel deep fonts?
14:55:11 <b_jonas> wait, they do work for each scanline? really?
14:55:25 <b_jonas> don't they just use a 1 pixel high font because there's enough RAM for that?
14:56:18 <fizzie> From what I recall (it's been quite a while since I last fiddled with this), the "normal" multicolor modes have nothing to do with CHARGEN.
14:57:17 -!- Sprocklem has joined.
14:57:26 <oren> #ifdef MUHUHAHAHA
14:57:39 <fizzie> http://www.studiostyle.sk/dmagic/gallery/gfxmodes.htm "MultiColor mode generates the screen with resolution 160*200 pixels/16 colors. -- The screen is divided into 40*25 attribute cells. Each attribute cell is 4*8 pixel big. -- In this mode you can use maximum 4 colors in the attribute cell. Each pixel defined by 2 bites can have one of 4 different colors. One of colors is the background color."
14:57:53 <APic> ,o0(#elsif Perl Comment)
14:58:39 <fizzie> Yeah, it's just two-bits-per-pixel graphics mode (hence the horizontal resolution is halved), and the two bits select out of a color palette, and the attribute cells (which are also used for text mode) can be set to select the per-cell colors for that 4x8 (or 8x8 "real" pixels) cell.
14:59:07 -!- Welo has joined.
14:59:57 <b_jonas> so it's not made of characters
15:00:42 <fizzie> No. The VIC-20 screen is "text mode" only, I think.
15:01:04 <fizzie> http://en.wikipedia.org/wiki/List_of_video_game_console_palettes#Game_Boy_Color also refers to "mode 3 mid-scanline rendering", claiming that people swap palettes for the GBC even during a scanline.
15:02:25 <b_jonas> fizzie: but do the games really do that every scanline, or just like a few times per frame at most?
15:02:31 <b_jonas> I'd be surprised if they did it every scanline
15:02:54 <APic> Can the original Super Mario Land be glitched?
15:02:55 <fizzie> There are no citations, so I'unno. Probably not.
15:03:14 <Taneb> Is a graph language which operates on an undirected graph of the same power as a similar graph language operating on a directed graph?
15:03:24 <fizzie> b_jonas: I wouldn't be surprised if you could find GBC demos that did it quite often when showing a static image for a while.
15:03:34 <b_jonas> APic: slightly, yes, but there's no really game-breaking glitch
15:04:21 <b_jonas> APic: there's a glitch that lets mario teleport from the left edge of the screen to the right edge sometimes in autoscroller levels, which allows completing 2-3 quicker
15:04:42 <b_jonas> APic: and there's some cases when collision detection lets mario apparently pass through enemies and such things
15:05:12 <b_jonas> but nothing that really breaks the game like many other games have
15:06:06 <b_jonas> APic: it's passing through the carnivorous flowers that looks especially strange to me
15:06:22 <APic> Got a Video-Link?
15:07:07 <b_jonas> APic: http://tasvideos.org/2091M.html
15:07:16 <b_jonas> (and the hard mode which it links to)
15:07:50 <b_jonas> APic: in theory, it's possible that it can be glitched by tasers haven't found a way yet, but it's not very likely
15:08:00 <b_jonas> it's a pretty well studied game
15:18:08 <Taneb> I think that it is possible to translate graph programs operating on a directed graph to graph programs operating on an undirected graph
15:22:49 <oren> well sure. translate the directed graph to a graph with Y's where the prongs of the y are connected to the source and the bottom is connected to the destination.
15:23:13 <oren> wait that might be ambiguous
15:24:44 <oren> foreach edge from A to B, create nodes C,D,E and edges AC, AD, CE,DE, EB
15:26:23 <oren> hopefully that is less ambigious
15:27:17 <oren> would that work?
15:27:49 <APic> The Flower-Thingy owns!
15:36:01 <Taneb> > ((-) `on` ord) 'o' 'g'
15:37:57 <oren> > chr (ord 'o' + 8)
15:38:10 <oren> > chr (ord 'w' + 8)
15:38:26 <oren> > chr (ord '\DEL' + 8)
15:39:20 <oren> it... ran out of time? how is that the error, ratehr than "there is no character with that number"
15:40:02 <oren> > chr (ord '\DEL' + 8)
15:42:30 <Taneb> > char $ chr 0xffc4
15:42:40 <Taneb> > char $ chr 0xff21
15:43:41 <oren> FFC4 is a halfwidth hangul
15:43:53 <Taneb> > char $ chr 0x2615
15:44:06 <b_jonas> we have halfwidth hanguls?
15:44:12 <b_jonas> what the heck are those used for?
15:44:37 <coppro> for when you can't handle fullwidth
15:46:12 <tswett> > 1111111111111111111111111111 + 1111111111111111111111111111
15:46:31 <tswett> lambdabot is currently inebriated.
15:46:32 <oren> セーム リーソン ウィ ハブ ハーフ ウィズト カタカナ
15:47:54 <HackEgo> [U+FF73 HALFWIDTH KATAKANA LETTER U]
15:48:13 <coppro> I thought wi was written as W-small-i
15:48:22 <oren> it is, and I did
15:48:48 <coppro> now I can't trust anything you write
15:49:34 <oren> there is also the old kana ヰ but there is no halfwidth of that
15:50:04 <coppro> oren: where did you learn Japanese?
15:51:00 <oren> I took a course in my first summer of university, and then I went to Japan to attend an intensive course at a school in Tokyo
15:51:26 <oren> Then I kept it up my reading manga and watching anime
15:51:37 <b_jonas> oren: I think halfwidth kana were used on systems like VGA text mode that can display a 256 or 512 character font with only 8 or 9 or 12 wide character cells
15:51:57 <b_jonas> where they can be displayed mixed with latin letters
15:51:58 <oren> same for hangul then
15:52:06 <b_jonas> but I don't see how hangul would be used that way
15:52:30 <oren> well you just decompose the blocks into the jamo
15:52:38 <oren> and then write them in order
15:53:20 <oren> or something? Some of these ones have multiple jamo in one bloakc
15:57:10 <oren> The kana do something similar in that the handakuten ゚ and dakuten ゙ are separate characters rather than on the kana
15:58:33 <oren> which is why the spacing of for example ゴンドラ si weird
15:59:41 <oren> in regular it would be ゴンドラ
16:00:58 <tswett> I found a sed command in the neural net output that I'm pretty sure it just memorized. Lemme test it out.
16:01:08 <tswett> `run echo spaghetti | sed -e 's/^([^aeiou]+)(.*)$/\1\2 shm\2/'
16:01:09 <HackEgo> sed: -e expression #1, char 31: invalid reference \2 on `s' command's RHS
16:01:57 <oren> that's an extended regex
16:02:13 <oren> sed by default requires \(\)
16:02:23 <tswett> `run echo spaghetti | sed -e 's/^\([^aeiou]+\)\(.*\)$/\1\2 shm\2/'
16:03:06 <tswett> So the regex didn't match for some reason?
16:03:22 <tswett> `run echo spaghetti | sed -e 's/^\([^aeiou]\+\)\(.*\)$/\1\2 shm\2/'
16:03:44 <tswett> There must be some option you can give sed that makes it treat those as magic.
16:04:38 <b_jonas> sed -Ee 's/^([^aeiou]+)(.*)$/\1\2 shm\2/' <<<progress
16:04:42 <b_jonas> `` sed -Ee 's/^([^aeiou]+)(.*)$/\1\2 shm\2/' <<<progress
16:09:19 -!- Welo has quit (Ping timeout: 276 seconds).
16:09:48 <tswett> `run sed -Ee 's/^([^aeiou]+)(.*)$/\1\2 shm\2/' < wisdom/reflection
16:09:49 <HackEgo> sed.-Ee.s/^([^aeiou]+)(.*)$/\1\2 shm\2/. shmed.-Ee.s/^([^aeiou]+)(.*)$/\1\2 shm\2/.
16:12:18 <tswett> `run sed -Ee 's/[^a-z]//g' wisdom/reflection
16:21:32 <oren> there's that gw again
16:23:54 <HackEgo> [wiki] [[Talk:Or]] N http://esolangs.org/w/index.php?oldid=43204 * OriginalOldMan * (+356) Created page with "Here is an interpreter in Ruby for the so far known parts of Or: <pre> program = File.open(ARGV[0],"r").read i = 0 stack = [] while i < program.length if program[i] == " " ..."
16:25:53 <myname> https://www.youtube.com/watch?v=TxJVH5TZQFY would play
16:45:43 -!- Welo has joined.
16:49:21 <Taneb> Should there be a category on the wiki for Fancy L-complete languages?
16:58:14 -!- SirCmpwn has quit (Read error: Connection reset by peer).
16:59:41 -!- SirCmpwn has joined.
16:59:47 <oren> "jump crosses initialization" FUCK YOU GCC
17:00:54 <oren> it's not as if I ACESS the goddamn thing
17:04:45 -!- FreeFull has quit (Quit: Lost terminal).
17:06:51 -!- FreeFull has joined.
17:32:05 <oren> FUCK YES! it scrolls pixel by pixel!
17:32:34 -!- lambdabot has quit (Quit: brb).
17:32:35 <oren> MUHUHAHAHAHAHAHAAAA
17:33:26 <HackEgo> monads/Monads are just free monad monad monad algebras.
17:33:34 <HackEgo> marmite/Marmite is a group mind of fungal microorganisms spreading throughout the supermarkets of the Commonwealth.
17:34:17 <oren> hold on getting a scren shot
17:37:36 -!- lambdabot has joined.
17:40:00 <oren> http://img.ctrlv.in/img/15/06/11/5579c84856dd6.jpg
17:40:38 <oren> if you look closely you can see that the bg is 1/2 pixel down compared to the spaceship
17:41:02 <oren> it scrolls lovelily.
17:42:28 <oren> there is some flickering whenever a nearby non-background object impinges
17:43:13 <oren> but overall it looks great. maybe I'll take a look later at fixing the flickering somehow
17:46:47 <oren> https://github.com/orenwatson/oren4x/commit/4552012637e4cf8c40f4111b387a2862ca3e8fac
17:48:26 -!- AnotherTest has joined.
17:50:17 <oren> hmm my code isn't right
17:55:15 -!- AnotherTest has quit (Ping timeout: 258 seconds).
17:57:03 <oren> ha! now it's right.
17:57:33 <oren> but makybe I should store several hashes, of greater and greater area around the pixel.
17:58:37 <oren> first + then □ then a bigger ○ and then a bigger square
18:03:00 <oren> i'll do that after lunch
18:03:33 -!- Wallacoloo has joined.
18:14:05 -!- Sprocklem has quit (Ping timeout: 256 seconds).
18:19:42 <oren> hey, apparently mednafen has an irc channel
18:21:21 -!- nortti has changed nick to lawspeaker.
18:21:44 -!- lawspeaker has changed nick to nortti.
18:24:51 -!- nortti has changed nick to hvidiecat.
18:24:59 -!- hvidiecat has changed nick to nortti.
18:26:11 -!- nortti has changed nick to quick-brown-fox.
18:26:20 -!- quick-brown-fox has changed nick to nortti.
18:29:54 -!- evalj has joined.
18:33:34 -!- bb010g has quit (Quit: Connection closed for inactivity).
18:55:43 -!- atrapado has joined.
19:05:38 -!- Sprocklem has joined.
19:07:45 -!- Phantom_Hoover has quit (Ping timeout: 265 seconds).
19:11:11 -!- trout has quit (Remote host closed the connection).
19:16:37 -!- variable has joined.
19:19:40 -!- Elronnd has left.
19:40:44 -!- `^_^v has quit (Quit: This computer has gone to sleep).
19:49:28 -!- notfowl has joined.
19:52:09 -!- Sprocklem has quit (Ping timeout: 265 seconds).
20:08:39 -!- notfowl has quit (Excess Flood).
20:08:57 <notfowl> Don't you write tests kirill
20:09:11 -!- notfowl has joined.
20:09:11 -!- notfowl has quit (Excess Flood).
20:10:11 -!- notfowl has joined.
20:21:03 -!- nys has joined.
20:37:21 -!- notfowl has quit (Quit: zz).
20:37:58 -!- fowl has joined.
20:37:58 -!- fowl has quit (Changing host).
20:37:58 -!- fowl has joined.
20:47:14 -!- Welo has quit (Quit: Leaving).
20:59:20 -!- Patashu has joined.
21:01:13 -!- lleu has joined.
21:01:18 -!- j-bot has quit (Ping timeout: 272 seconds).
21:24:28 -!- Patashu has quit (Ping timeout: 265 seconds).
21:27:21 <Taneb> oren, what desktop environment is that?
21:31:28 -!- oerjan has joined.
21:33:37 <oren> puppy linux JWM
22:00:47 -!- Wright has joined.
22:08:06 -!- Elronnd has joined.
22:08:08 -!- Elronnd has left.
22:08:11 -!- Phantom_Hoover has joined.
22:13:52 <pikhq> I used to work with the JWM guy.
22:24:49 -!- variable has changed nick to function.
22:24:57 -!- function has changed nick to constant.
22:34:22 <Taneb> I still love that quartic-time fizzbuzz I wrote
22:36:33 <oerjan> @tell APic <APic> I _think_ NetHack should be nearly Turing-complete. Anybody can elaborate on that? <-- i'm pretty sure that's ais523's job hth
22:37:27 -!- Wallacoloo has quit (Ping timeout: 265 seconds).
22:39:27 <oerjan> @tell boily <boily> APic: you should ask ais523. he maintains NetHack. <-- nethack 4. it is unwise to confuse the various variants hth
22:43:54 <oerjan> <oren> whoops my bash syntax is off that should be $'\007' <-- ooh
22:44:07 <HackEgo> bash: ehoc: command not found
22:47:45 -!- atrapado has quit (Quit: Leaving).
23:11:01 -!- hjulle has joined.
23:27:35 <FireFly> `` echo $'\x02Hello\x0F world'
23:33:08 <HackEgo> nooodl/nooodl is the correct spelling
23:33:40 <HackEgo> F="$(find wisdom -type f | shuf -n1)"; echo -n "${F#wisdom/}/"; cat "$F"
23:34:02 -!- boily has joined.
23:35:47 <shachaf> `` echo 'F="$(find wisdom -type f | shuf -n1)"; echo -n "${F#wisdom/}/" | rnooodl; cat "$F" | rnooodl' > bin/wisdom
23:36:38 <boily> shellochaf. upgrading noooodl?
23:36:44 <lambdabot> oerjan said 57m 16s ago: <boily> APic: you should ask ais523. he maintains NetHack. <-- nethack 4. it is unwise to confuse the various variants hth
23:37:07 <boily> hellørjan. sorry, I won't noobmistake the nethackvariants again.
23:37:18 <boily> @ask nooodl where are you?
23:37:25 <shachaf> boily: I'm upgrading wisdom.
23:37:39 <shachaf> I'm considering putting wisdom straight into bin/?
23:38:05 <shachaf> But that's a pretty foundational script.
23:38:32 <boily> AAAAAAAAAAAAAAAH *mapole* AAAAAAAAAAAAAH!
23:39:51 <HackEgo> changeset: 4531:7f957c1f4661 \ user: HackBot \ date: Sun Mar 16 01:52:15 2014 +0000 \ summary: <oerjan> revert \ \ changeset: 4530:03afb1619ef2 \ user: HackBot \ date: Sun Mar 16 01:51:13 2014 +0000 \ summary: <elliott> revert 1 \ \ changeset: 4288:abb75d738ee1 \ user: HackBot \ date: Tue Ja
23:41:02 <shachaf> boily: isn't the mapole the national tree of canada
23:41:40 <shachaf> oh, "mapole" comes from "maple"
23:41:50 <HackEgo> A mapole is a thwackamacallit built from maple according to Canadian standards. The army version includes a spork, a corkscrew and a moose whistle.
23:43:28 <HackEgo> atm/An ATM is when you're withdrawing money right now at a machine that will steal your relevant info
23:43:34 <boily> according to Google Translate, a scow is a "wide-beamed sailing dinghy".
23:44:04 <HackEgo> m–rdalsjökull/M–rdalsjökull is a draconic volcano harbouring the secret KATL base.
23:44:22 <HackEgo> onëliner/onëliners are pairs of unfathomable vectors in the category of exponential distance.
23:44:31 <HackEgo> gaspatsjo/gaspatsjo is a norwegian soup, which died out due to a lack of hot summer days
23:46:26 <boily> and now, I have some Enya stuck in my head.
23:51:03 <shachaf> `` echo 'hg log "$1" | grep summary: | awk '\''{print substr($2,2,length($2)-2)}'\'' | xargs' > bin/culprits; chmod +x bin/culprits
23:51:38 <shachaf> `culprits wisdom/Tanventions
23:51:44 <shachaf> `culprits wisdom/tanvention
23:51:52 <shachaf> `culprits wisdom/tanebvention
23:51:53 <HackEgo> oerjan Taneb oerjan oerjan oerjan FireFly oerjan boily oerjan oerjan
23:52:42 <HackEgo> oerjan elliott shachaf oerjan oerjan oerjan oerjan nooodl Roujo nooodl__ shachaf oerjan ais523 ais523 oerjan Jafet Jafet Jafet Jafet Jafet Jafet Jafet Jafet Jafet Jafet Jafet Jafet Jafet Jafet Jafet Jafet Jafet Jafet oerjan oerjan oerjan oerjan oerjan oerjan oerjan Jafet elliott FreeFull oerjan nitia
23:52:51 <shachaf> I guess pinging people like that isn't very polite.
23:53:39 <HackEgo> hg log "$1" | grep summary: | awk '{print substr($2,2,length($2)-2)}' | xargs
23:54:01 <FireFly> You could insert zero-width spaces after the first character in each nick
23:54:54 <shachaf> I kind of like seeing the full history.
23:55:07 <shachaf> But it might be more useful with uniq.
23:55:26 <boily> from what I see, the first culprit in time is the last in the list?
23:55:57 <boily> @ask Roujo quand est-ce que ça te dirait de revenir dans le chännel une fois, juste de même, sans pression?
23:56:32 <oerjan> boily: you realize you share another channel with him, right?
23:56:33 <shachaf> It occurs to me that the le/rn trick could be used for creating arbitrary files.
23:56:38 <shachaf> And even chmodding them +x and so on.
23:57:04 <boily> oerjan: uuuuuuuuuuuuh... >_>'...
23:57:12 * boily whistles innocently
23:58:12 <FireFly> `` sed -ri 's,xargs,sed "s/./&\xE2\x80\x8B/" | &,' bin/culprits
23:58:58 <FireFly> `` sed -ri 's,xargs,sed "s/./\&\xE2\x80\x8B/" | &,' bin/culprits
23:59:12 <HackEgo> rm: cannot remove `/home/hackbot/hackbot.hg/multibot_cmds/env/.hg/store/data/canary.orig': Is a directory \ Done.
23:59:20 <boily> xarshachaf. he he he :D
23:59:36 <HackEgo> hg log "$1" | grep summary: | awk '{print substr($2,2,length($2)-2)}' | sed "s/./xargs/" | xargs
23:59:39 <oerjan> hmph that message again
23:59:46 <boily> `culprits pineapple