ZipCPU|Laptop has joined ##openfpga
noobineer has quit [Remote host closed the connection]
noobineer has joined ##openfpga
noobineer has quit [Read error: Connection reset by peer]
soylentyellow has joined ##openfpga
<whitequark> awygle: hm this is annoying
<whitequark> I think we'll need two EEPROMs
<whitequark> or, well
<whitequark> the CY7C68013A detects whether the EEPROM is 8-bit or 16-bit by the low address bits, 000 or 001
<whitequark> and we need a 17-bit EEPROM for the 104kB bitstream
noobineer has joined ##openfpga
ZipCPU|Laptop has quit [Ping timeout: 240 seconds]
<whitequark> hm I managed to add a 2nd EEPROM and only enlarge BOM by 12 cents
noobineer has quit [Ping timeout: 276 seconds]
ZipCPU|Laptop has joined ##openfpga
<awygle> whitequark: thanks for gathering all that from the logs
<awygle> any thoughts on azonenberg's concerns about the level shifter?
<awygle> kc8apf: cool. i've been thinking about it too, i'll also draw some diagrams tomorrow
<whitequark> awygle: yes, I'm leaning towards scrapping it
<awygle> kc8apf: maybe add ecp5 packet format to your list?
<whitequark> and replacing it with protection diodes
<awygle> whitequark: i agree with scrapping it. protection diodes in the traditional "diode to vcc" sense will be difficult because we only have 160 mV of headroom
<awygle> i was thinking a zener crossbar with ptc might make sense if we can't find clamping diodes that work for us
<awygle> err not crossbar, crowbar
<kc8apf> awygle: it's there after ice40. I know xilinx and ice40. I haven't looked at ECP5
<awygle> kc8apf: mk :) i have interests in that family so i'm being selfish lol
<awygle> kc8apf: i've been thinking about the problem from the other direction so hopefully we'll meet nicely in the middle somewhere
<whitequark> awygle: hmmm any specific recommendations?
<whitequark> I'm not familiar with those parts
<awygle> whitequark: i haven't actually done the analysis, but littelfuse polyswitch are what i usually use for PTC and diodes incorporated makes good zeners, e.g. https://www.digikey.com/product-detail/en/diodes-incorporated/DDZ3V3BSF-7/DDZ3V3BSF-7DICT-ND/3193476
ZipCPU|Laptop has quit [Quit: Warp drive ready at your command, Captain!]
digshadow has quit [Ping timeout: 276 seconds]
<awygle> the tricky part is making sure the fuse gets tripped before the zener explodes, and that the zener draws enough current to trip the fuse
<awygle> i think we need to more clearly define what conditions we're expecting. surviving a sustained short from a low impedance source while also driving at MHz into high capacitance loads is outside my experience.
<whitequark> meanwhile I'm looking at other voltage translators, some of them seem much better than the one I looked at above
<whitequark> awygle: take a look at http://www.ti.com/lit/ds/symlink/txs0108e-q1.pdf
<awygle> i think this is what azonenberg mentioned the other day
<whitequark> hm
<whitequark> awygle: I have an idea.
<whitequark> I think we can have our cake and eat it.
* awygle likes cake
<awygle> also i think http://www.ti.com/product/TXB0108 would be better than the TXS since we're not doing open drain
<whitequark> oh yes, TXB is much better.
<whitequark> and it has 4 kOhm internal resistors, so it can cope with fairly small pullups/pulldowns on the external board.
<whitequark> but I *might* just have something better.
<whitequark> if that doesn't work I would like to go with TXB as an experiment, because it is much nicer than SN74GTL2003
noobineer has joined ##openfpga
<awygle> sure
<awygle> nothing i was looking at made me happy anyway lol
<awygle> clamping diodes in that voltage range either only clamp 10 mA or are like 17 pF
<awygle> and the PTCs i found were all distressingly slow (~100 ms OOM)
<whitequark> right
<whitequark> awygle: look at this weird-ass device http://www.ti.com/lit/ds/symlink/sn74lvc16t245-ep.pdf
<rqou> um, it sounds like you're currently hitting the exact same issues that both azonenberg and i hit :P
<whitequark> oh nvm I was misreading the circuitry
<awygle> well, of course
<awygle> solve same problem, hit same issues
<awygle> but our tradeoffs are different than azonenberg's because our design goals are different
<rqou> sure
<awygle> and different than yours because we're _mostly_ not overdesigning :p
<rqou> whitequark: what about that part? iirc i've come across it before
<whitequark> rqou: nothing interesting
<whitequark> I was misreading the schematic
<rqou> iirc sourcing is a bit of a pain
<rqou> and it's _huge_ (physically)
<awygle> that's true of anything -EP
<rqou> what's -EP mean?
<awygle> extended package or something like that?
<awygle> it rounds to "military"
<rqou> huh
<awygle> "enhanced product"
<rqou> anyways, a 48 pin tssop
<rqou> azonenberg would scream :P
<rqou> iirc there exists a similar part (probably not as wide) with a "almost flow-through" bga package
<awygle> i love 'digital isolators'
<awygle> they're so cool
<whitequark> okay wtf
<whitequark> i can't believe no one had this idea before me
<rqou> ok, what's the idea? :P
<whitequark> hang on i want to look at other vendors too
<whitequark> awygle: haaaaang on
<whitequark> I think I found a legit use case for one of the greenpak chips
* awygle hangs
<awygle> ha!
<whitequark> because I can't find what I want and it seems perfect
<whitequark> we'd need... four SLG46621V
<rqou> wtf?
<rqou> greenpaks are sloow
<awygle> yeah i was gonna ask what the i/o speed on a greenpak is, i thought i remembered 10 MHz
<awygle> what were you looking for?
<whitequark> are they really that slow?
digshadow has joined ##openfpga
<awygle> i don't know... i can't find it
<whitequark> yes, same
<whitequark> I think they didn't actually characterize it
<whitequark> hm I guess I better check if the design fits first
<whitequark> at least
<rqou> troll suggestion: xc2c32a :P
<whitequark> it's not dual-supply
<rqou> but it has dual IO voltages
<whitequark> oh?
<rqou> yeah, each function block has its own vccio
<rqou> you need the *A version
<rqou> (the non-A was EOLed a long time ago)
<whitequark> hmmm
<rqou> and yes, it has the standard (for CPLDs) hotplug/anti-latchup capability
<whitequark> but it's not 5V tolerant
<rqou> no, it isn't
<whitequark> if it's not 5V tolerant we're just back to square one
<rqou> really?
<whitequark> well, more or less
<rqou> who even still uses 5V?
<rqou> anyways, i guess we need to go and RE some of the 5V-tolerant CPLDs at some point
<rqou> but in general using cplds for level translating is reasonably common
<whitequark> I mean, I'd lose the ability to have two different levels on two daughterboards if I drop the CPLD
<whitequark> but I'm less interested in that than 5V tolerance
<whitequark> "In this app note we will outline how to make a smart pillow that is sensitive to snoring, using a
<whitequark> Silego GreenPAK™ SLG46620V."
<whitequark> what in the fuck
<rqou> wut
<rqou> why?
<rqou> i think that beats the "bagel" pin and "frying pan" schematic symbols that showed up on birdsite a while back
<azonenberg> rqou, whitequark: txb010x has a flow through WLCSP package
<whitequark> azonenberg: uhhh I don't really want anything harder than QFN for this board
<rqou> i think you can make a flow-through wlcsp work on an oshpark process
<rqou> since you don't really need access to inner balls?
<whitequark> no, you do on txb0108
DocScrutinizer05 is now known as uptopdownbottom
<rqou> hmm yeah that is unlikely to work
uptopdownbottom is now known as DocScrutinizer05
<awygle> azonenberg: how fast is a greenpak?
<rqou> the "RGY" package looks pretty neat though
<awygle> I/O wise
<awygle> whitequark: ah
<whitequark> "programmed in socket"
<whitequark> I bet it would behave better on a properly routed PCB
<rqou> hrm, ~50 MHz is pretty bad
<whitequark> not really
rohitksingh_work has joined ##openfpga
<whitequark> txb0108 has the same performance between 1.8V and 5V
<whitequark> well, slightly better
<rqou> i thought people now want jtag up to 100 mhz or so in order to e.g. dump tons of shit into an arm soc?
<whitequark> yes
<awygle> whitequark: we'd never run 1.8-to-5v though
<rqou> e.g. "i want to load an allyesconfig kernel in 1s" :P
<whitequark> awygle: how so?
<awygle> would we?
<awygle> i guess if we dropped the DAC we might
<whitequark> oh, hm
<whitequark> if we do level shifting with greenpaks
<whitequark> then we can keep the core at 3.3V
<whitequark> I mean, I could easily enough measure the performance, sure
<awygle> 1.8-to-1.8 is 50 Mbps though
<awygle> so same difference
<rqou> hmm are greenpaks safe for hotplugging?
<rqou> do they have anti-latchup and stuff to prevent issues if one vddio goes away?
<whitequark> not sure
<rqou> yeah, that might be an issue
<rqou> most CPLDs like to specifically advertise that they don't have this problem
<whitequark> according to AMR Vdd2 must be always less than Vdd
<azonenberg> awygle, rqou: lol
<azonenberg> you guys are basically going through the same exact design process i did with starshipraider
<rqou> i literally just pointed that out
<azonenberg> Just trying to do so at lower cost
<azonenberg> And lower performance
<azonenberg> It will be nice to have a midrange between the bus pirate and starshipraider though
<whitequark> exactly
<rqou> i thought 100mhz would be easy
<rqou> but i guess i never went though the full design process
<rqou> also, f*ck 5V :P
<azonenberg> rqou: lol
<azonenberg> also, jtag has it easy
<azonenberg> since every line is unidirectional
<whitequark> I think 5V is important for this being a 'turnkey' design I can just hand out to someone
<azonenberg> starshipraider doesnt have any fixed jtag lines
<sorear> jtag seems like not the best protocol for transferring many MB/s
<rqou> why not?
<azonenberg> rqou: me?
<azonenberg> because it's not just a jtag master
<azonenberg> it's a LA, i2c, uart, etc
<azonenberg> the whole concept was that you have an io crossbar
<rqou> no, asking sorear
<azonenberg> and you hook protocol blocks up to gpios in soft logic
<rqou> sorear: just make an "infinity-bit-long" DR like azonenberg
<azonenberg> I'll probably use SRLs for that, have a 5:1 mux in one lut
<azonenberg> Since the gpio config doesnt have to change too often
<whitequark> rqou: well ideally you'd have, for example, a packet-switched protocol over LVDS over differential pairs
<whitequark> like PCIe :P
<whitequark> that lets you transfer a lot of MB/s :PP
<rqou> or sgmii? :P
<azonenberg> like... ethernet? ;p
<azonenberg> rqou: beat me to it
<whitequark> yes but if you do JTAG you usually want things like debug capability
<whitequark> and with PCIe you can obviously access the entire address space
<rqou> PCIe over ethernet :P
<whitequark> PCIe over serial
<rqou> "converged network"
<whitequark> cc @marcan42
<rqou> lol
<whitequark> PCIe over barbed wire
<whitequark> after looking at the 3.5m PCIe riser video
<rqou> with the broadcom cheat, of course :P
<whitequark> that might not be completely impossible
<marcan> with ASCII encoding :>
<rqou> oh hi marcan
<rqou> didn't realize you lurked here
<marcan> I idle in too many places
<whitequark> wtf
<whitequark> I didn't realize you actually were here
noobineer has quit [Remote host closed the connection]
<whitequark> I just typed that as a joke
<marcan> clearly. since you used my Twitter handle :D
<awygle> PCIeoE
<marcan> 1gbps ethernet in one direction, ASCII-serial at 115kbaud in the other
<marcan> worked for me anyway
<sorear> does the barbed wire work better or worse than the wet string
<whitequark> PCIeieio
<rqou> i mean, i just remembered that the "converged network" people already did rdma-over-ethernet
<awygle> you should be able to do a ladder line with barbed wire actually
<marcan> best ppc instruction
<awygle> dunno if you can get 50 tho
<awygle> err, 100? 90? whatever pcie is
<whitequark> marcan: what about rvwinkle
<marcan> rlwinm?
<rqou> awygle: isn't the really common ladder line normally 300?
<awygle> rqou: sure but it doesn't need to be
<whitequark> marcan: nonono, the sleep instructions
<whitequark> doze, nap, sleep, rvwinkle
<marcan> TIL
<rqou> btw is it just me that always finds ppc mnemonics impossible to decode?
<marcan> POWER ISA v3, huh
<marcan> I got stuck at BookE :P
<awygle> lmao fdbr
<whitequark> rlwbv - Rotate Left Wheel and Buy a Vowel
<whitequark> mscdfr - Means Something Completely Different For r0
<rqou> someone on birdsite (probably marcan?) joked that ibm exhausted their vowel budget on eieio
<whitequark> lrdsni - Likely Reached the Data Section, Not an Instruction
<marcan> those are jokes but the real ones are indistinguishable
<marcan> wasn't me
<marcan> but I approve
<whitequark> marcan: the best part about rvwinkle is that I watched Hellsing before even learning about the Washington Irving story
<whitequark> so that is the image I have in my mind every time I encounter that instruction
<rqou> btw many years ago when my father first started using ppc a coworker had to teach him the old macdonald song after my father didn't understand what was so funny about the eieio opcode
<marcan> ha :D
<awygle> azonenberg: are you going to the fpga meetup tomorrow?
<awygle> rqou: i love this.
<rqou> everything over everything
<awygle> this is amazing.
<whitequark> jesus
<marcan> thousands of roots and endpoints.
<marcan> just. wowo.
Bike has quit [Quit: Lost terminal]
<rqou> when do we get a Universal SERDES Bus? :P
<rqou> (no, TB doesn't count)
<awygle> who among us hasn't wanted thousands of PCIe roots, let's be honest
<rqou> and yes, i know about PHY Interface for PCIe/SATA/USB
<awygle> isn't that approx. what whitequark is working on at m-labs?
<rqou> marcan: more or less insane than the ps4 southbridge?
<marcan> well, given my experience with PCIe... at 15000 km the speed of light may start making things time out, give or take depending on the host
<marcan> which... isn't too bad I guess
<marcan> rqou: less, assuming they aren't stashing thousands of endpoints into *the same fucking device function*
<rqou> yeah, i still don't even understand how that works
<rqou> but i also don't know much about how pcie works
<marcan> with horrible drivers is how it works
<rqou> how does the bsd kernel not choke on it too?
<marcan> they patched it
<rqou> WHY?!
<whitequark> lol
<marcan> it's great when you don't have to care about ever upstreaming anything, isn't it?
<marcan> too bad then you can't rebase on top of new releases either
<whitequark> rqou: we sort of already have an universal SERDES bus
<awygle> upstream is for suckers
<rqou> whitequark: oh?
<awygle> whitequark: speaking of upstream, is "make all the symbols/footprints" our next glasgow move?
<rqou> you mean ethernet? :P
<marcan> they have patches into the BSD core that literally hardcode their horrible interrupt controller function crap
<whitequark> rqou: intel has these reconfigurable lanes that can be PCIe, SATA, USB, or I think a few other things
<marcan> right into the PCI code
<whitequark> awygle: yep!
<marcan> whitequark: tegra too
<awygle> whitequark: which ones do you want :p
<rqou> why is sony code such a clusterf*ck all the time?
<marcan> to be fair, marvell is to blame for the southbridge
<whitequark> marvell :<
<rqou> oh yeah my father doesn't particularly like marvell silicon at all
<whitequark> can marvell do, like, anything right
<rqou> yes, the alaska phy seems to work
<whitequark> their SATA controllers are horrible, their network controllers are horrible, their SoCs are awful
<marcan> seeing x86 Linux detect XScale-quirk mode serial ports was kind of hilarious
<whitequark> of course, integrating Marvell SATA controllers and network controllers doesn't help the SoCs at all
<marcan> kind of funny seeing that come around back to Intel after they sold their ARM division to Marvell
<whitequark> marcan: detect what.
<whitequark> howo do you fuck up a serial port
<rqou> whitequark: what do you think about the alaska phy?
<rqou> hey, every uC vendor manages to fuck up I2C
<marcan> whitequark: you'd be surprised at the amount of horrible variants of 8250 serial ports
<awygle> I2C is a garbage protocol
<azonenberg> rqou, awygle: A0 rev PIC32MZ had completely nonfunctional QSPI
<marcan> wait wrong file
<rqou> azonenberg: QSPI i can kinda understand
<rqou> it has more than one mode! :P
<marcan> that serial_core.h
<rqou> not-quad setup mode and actual quad mode
<awygle> QSPI is a lie, it's QPPI
<rqou> marcan: WTF?!
<rqou> is "interrupt flags, baud rate, data register, other misc. doodads" really that hard?
<awygle> imagine if software worked
<marcan> start throwing FIFOs into the mix and various legacy quirks of a really shitty old register model with multiple mostly-but-not-quite backwards-compatible variant chips now ported to sane buses and...
<whitequark> by @0x47df
<rqou> ah i see
<marcan> oh yeah, that wet string post was amazing
<rqou> i usually expect UARTs to not have any of those
<sorear> whitequark: yes, i am explicitly referencing that
<awygle> i want to see a BER vs humidity graph
<rqou> just interrupts, baud rate, and a 2-entry fifo
<whitequark> wtf, SLG46620 is qualified for Tj of up to 150°C?
<rqou> what
<rqou> silego parts are so weird
<whitequark> also they don't specify a minimum Tj and that's *obviously* wrong
<azonenberg> whitequark: they dont specify timing across PTV
<azonenberg> that's what i started that whole characterization project for
<azonenberg> then House Stuff happened
<whitequark> azonenberg: it's in AMR
<azonenberg> and i had to drop everything so i'd have somewhere to live :p
<marcan> what, you mean it won't work at 0°K? :P
<azonenberg> AMR?
<marcan> -°
<whitequark> absolute maximum ratings
<rqou> azonenberg: just go live with monochroma :P :P
<azonenberg> rqou: she offered if all else fails
<azonenberg> i hope to not take her up on it
<whitequark> monochroma?
<marcan> AMR isn't operational
<whitequark> marcan: hm I wonder at what point silicon stops semiconducting
<whitequark> oh right, they mention operational below, -40 to +85
<marcan> AMR is "outside these ranges the thing dies"
<rqou> that's more like it
<marcan> as long as it doesn't physically destroy itself at 0K, that's fine
<whitequark> marcan: yes, I know, but that's still odd
<whitequark> I mean, both the upper and the lower limits
<rqou> 150 is probably ok
<whitequark> 150°C is unusually high IME?
<rqou> as absolute max
<marcan> the weird thing is that right above it has a storage temperature range
<whitequark> I guess these are simple ICs
<marcan> of -65 to 150
<whitequark> yes, that too
<azonenberg> the plastic probably gets brittle below -65 :p
<rqou> super buggy datasheets
<marcan> I suspect what they were going for is "if in operation you let the thing get to above 150°C (by which point it probably won't work any more anyway) then that will cause permanent damage
<whitequark> who on earth would even store chips at -65°C?
<marcan> someone living in antarctica?
<awygle> space is cold
<marcan> whitequark: I just looked at some other random chip and it's not much different
<awygle> well, parts of space are cold
<awygle> 150 Tj is pretty common
<sorear> whitequark: there are a couple reports floating around of people successfully operating xilinx fpgas in helium baths (also isn't this extremely your job)
<marcan> PIC16F88: ambient under bias -40 to +125, storage -65 to +150
<awygle> to get 85 for case
<awygle> RF parts sometimes have Tchannel of like... 225 or 250
<awygle> those are fun
<rqou> RF parts sometimes also have BeO
<whitequark> sorear: huh
<rqou> that seems less fun
<marcan> tbh people tend to overestimate the sensitivity of silicon to temperature
<whitequark> sorear: no, I just write software for this stuff
<marcan> shitty laptops like mine regularly run their CPU at 100°C
<marcan> and that's a freaking CPU
<sorear> there's also a very fun VEXAG report about upper limits of commercial silicon technology and what needs to be done to make a microcontroller that functions at 475C ambient
<marcan> oh that sounds fun
<awygle> i don't think i've ever used a BeO part
<rqou> btw i wonder if overheating laptops spontaneously flip bits more often
<awygle> although there was a big to-do about a BeCu antenna at one point
<azonenberg> marcan: higher temps have worse electromigration
<whitequark> marcan: assuming silicon follows the usual "2-4 times increase in reaction speed per 10°C" rule
<marcan> rqou: yes they do
<marcan> RAM anyway
<whitequark> then 100 and 150°C have a *lot* of difference
<awygle> iirc we changed to white bronze instead
<azonenberg> In addition to worse timing
<rqou> yeah
<rqou> i have a persistent hypothesis (that i can't really test) that "impossible" vidya bugs are caused by overheating shitty laptops
<marcan> azonenberg: yes, but a CPU also will operate on much tighter margins and higher chance of failure than a less complex chip
<azonenberg> marcan: what i meant was, running hot doesnt just hurt performance
<azonenberg> it kills the chip faster
<marcan> yes, it does
<marcan> but a CPU is also much likely to die early in that case
<marcan> *much more
<azonenberg> Yes
<azonenberg> because more wire
<marcan> I'm just saying 150°C isn't exactly a great idea, but stuff *will* often actually work at that temperature
<sorear> cpus have a fair amount of error-detection logic (ECC in caches is standard, etc) so I'd sooner blame overheating RAM than overheating CPUs
<marcan> eh... CPUs have error-detection logic in caches, but if the logic flips a bit you're screwed
<rqou> something scary is that HDDs often _don't_ have ECC in caches
<marcan> however DRAM is more directly sensitive to temperature, since, well, D
<awygle> Very Hot RF "works" but the noise margins go to shit
<marcan> in fact LPDDR4 needs temperature sensing and you need to run it at derated timings above a certain threshold
<rqou> O_o
<marcan> (also LPDDR4 needs freaking periodic retraining at runtime)
<rqou> wtf
<rqou> is that detectable in microbenchmarks?
<marcan> *that* bit of code isn't in upstream Linux yet for Tegra210
<marcan> it is in their horrible fork though
<marcan> good question!
<whitequark> marcan: oh my god that vDSO bug
<whitequark> you have an inhuman amount of patience
<marcan> I just like finding bugs like these
<marcan> it's more fun than "people writing a C++ compiler forgot how to write C++" :D
<rqou> btw marcan may i ask what your "real job" is?
<rqou> how do you have time to yak shave so much?
<marcan> I'm freelance
<marcan> mostly winds up being systems engineering/SRE type stuff
<whitequark> rqou: I yak shave *nearly* this much
<marcan> with some security thrown in
<whitequark> it usually doesn't go very well :p
<marcan> well...
<marcan> let me give you a quote from my boss at my old job
<rqou> oh yeah, i saw that on birdsite
<whitequark> ...
<awygle> i would like to get into a professional situation where i can yak shave this much
<marcan> I sometimes get to do it for work, kinda
<whitequark> awygle: well
<awygle> but this time last year i had negative money, so there's a few steps from here to there
<whitequark> I'm debugging *another* calling convention issue on openrisc
<rqou> why is or1k tooling so flaky?
<marcan> the best one I had so far was when my main client called me in a panic because some ancient FreeBSD server running a blog service they had ate its filesystem
<rqou> awygle: i thought you had a "real job" before?
<whitequark> rqou: it's not inherently flaky
X-Scale has quit [Read error: Connection reset by peer]
<marcan> somehow after fsck it wound up empty, some stuff got recreated from zero
<marcan> no backups, of course
<whitequark> it's caused by me writing an LLVM patch most likely
<whitequark> and missing something
<marcan> I wound up learning a lot about UFS that day
<rqou> lol
<whitequark> amazing
<awygle> oh UFS
pie___ has joined ##openfpga
<awygle> what an incredible pain in the ass you ar
<rqou> i know a decent amount of "classic unix fs design" too because our OS class covered it
<marcan> in the end I found the sector containing the old root directory entry, and slammed it on top of the new one
<marcan> after much time was wasted with broken forensics tools
<rqou> as in, pre-UFS
<awygle> oh you probably meant the other one actually huh
<marcan> IIRC they recovered ~everything
<marcan> and I told them to back up their shit
* awygle has been working on Universal Flash Storage for the last nine months or so
<rqou> for my OS class project i think i was the only one who wrote a "fsck" tool
<rqou> to help debug why it corrupted itself
<whitequark> ha
<awygle> rqou: i had a real job for 4 years (where i got paid well below market rate because ~~space~~), then spent a year and a half marginally self-employed
<marcan> if you like FS stories, there's also this one: https://marcan.st/2015/10/rescuing-a-broken-ntfs-filesystem/
<rqou> btw the OS class project was quite "fun" overall
<rqou> i got put in the huge 5-person straggler team and ended up carrying the entire team
<rqou> because apparently nobody else was "good at debugging"
<whitequark> "the MFT has to contain the list of extents of the MFT itself" uhh
<marcan> yeah NTFS is hilarious
<whitequark> who came up with this
<rqou> yeah, i always felt the NTFS design is weird and not good
<marcan> I like how they came up with this amazing (stupid, but pretty) orthogonal design where everything is a file including the MFT itself and the boot sectors
<marcan> ... except the backup boot sector.
<marcan> because reasons.
<rqou> lol
<rqou> one of my favorite NTFS unfeatures is the upcase table
<rqou> i still don't know what happens if you load a fucked up one that claims a-->B
<marcan> if you read to the bottom, that was the only thing chkdsk complained about after this fix
<marcan> no idea why
<marcan> maybe the table had changed between Windows updates and the FS was still using an old one or something? who knows
<rqou> yeah, i seem to remember that can happen
<rqou> not sure if the upcase table is better or worse than the macos fucked-up-not-quite-nfkd
<rqou> oh, it's only a messed-up nfd, not nfkd
<whitequark> damn that's a good post
<marcan> the upcase table reminds me of this thing you can do in python, if you *really* want to watch the world burn: https://twitter.com/marcan42/status/506344729621958656 (py2 only, py3 changed something)
<rqou> oh goddammit
<rqou> just like fortran
<rqou> and i thought the py2 feature of "True = False" was bad enough
digshadow has quit [Ping timeout: 255 seconds]
<whitequark> nice
<marcan> oh, py3 just changed the offset (and the usual py3isms)
<marcan> .seek is a TLD now? I don't even
<marcan> whitequark: I love how that ExpEther wikipedia article was obviously written by Japanese people
<marcan> such awkward engrish
<rqou> ah, came out of NEC
<pie___> marcan, if it is its probably so somone can do mr.me.seek
<pie___> also what in unholy hell.
<pie___> @ python
<rqou> i still think lain's rDNS is better
<pie___> "(CPython uses the object's memory address.)" ah well.
<pie___> ^ id()
<whitequark> azonenberg: hm how would I get an GP_IOBUF inferred from verilog?
futarisIRCcloud has quit [Quit: Connection closed for inactivity]
<marcan> yeah, it just mangles the small integer array, which is pre-populated
<rqou> whitequark: wait, you're actually going to accept the reduced performance of using a greenpak?
<marcan> now the fun thing is if you actually try running anything interesting after that :D
<marcan> since all 54s magically become 42s
<whitequark> rqou: I'm trying to see if the design even fits
<whitequark> into a greenpak
<whitequark> rqou: like, worst case
<whitequark> I'll lay out the board with three different options
<whitequark> and have to qualify them all
<whitequark> awygle: actually
<rqou> what was wrong with the 74xxx buffers again?
<whitequark> iCE40 is "5V tolerant"
<whitequark> by which I mean that it doesn't die if you put 5V@4mA on its pins
<whitequark> or maybe that was 2mA
<marcan> ha
<whitequark> but I shouldn't rely on that :P
<marcan> "yeah if you use a resistor it's 5V tolerant" ahem
<whitequark> no I just put 5V on its pins directly
<whitequark> I *thought* it is 5V tolerant
<whitequark> then I read the datasheet
<whitequark> after gathering the data I wanted
<marcan> what limited the current to 4mA?
<whitequark> the output drivers of greenpak
<marcan> fine, built-in resistor
<whitequark> yeah, I suppose
<whitequark> I guess this doesn't really tell us anything other than "it has clamping diodes on IOBs"
<whitequark> which is something we already knew
<pie___> aaaand having repasted the link in discord i now see why the seek being a tld thing came up
<pie___> marcan, theres a prepopulated small integer array?
<marcan> yes
<whitequark> python has most integers on heap
<pie___> marcan, i just figured it creates it when needed and then just continues referring to it like everywhere else
<whitequark> except I think ones from 0 to 100?
<pie___> oh lol huh.
<whitequark> or something like that
<whitequark> it's stupid
<marcan> it prepopulates small integers, because they get used often enough it's worth reusing instances
<marcan> much easier to just index an array than allocate an object
<rqou> heh
<whitequark> ruby uses the fact that its heap objects are 8-aligned to get three free bits
<marcan> >>> id(2 * 4) == id(2 * 2 * 2)
<marcan> True
<marcan> False
<marcan> >>> id(2 * 4 * 100) == id(2 * 2 * 2 * 100)
<marcan> so small integers consistently are singletons
<marcan> larger ones aren't
<pie___> oh shit
<rqou> for a project for my data structures course i managed to accidentally allocate several gigabytes of "Position" objects
<whitequark> in ruby fixnums, symbols, true, false, nil and undefined (yes, ruby has undefined) are all just pointer-sized
<rqou> for bonus points, there were only 64 possible total positions
<rqou> >50% of runtime was being taken up by running the GC (this was in Java) :P
<pie___> marcan, jesus, i thought 'is' works on integers but i guess not, only strings
<pie___> (just checked)
<marcan> whitequark: I still can't get over the fact that in ruby a = a is nil :P
<marcan> (when a is undefined)
<pie___> (though the id example should have sufficed)
<rqou> my partner then optimized it to simply preallocate all 64 possible position objects at startup
<rqou> since they were immutable anyways except for one spot in the code :P
<whitequark> marcan: so
<whitequark> i wrote a ruby parser in ruby
<whitequark> and as a part of it i wrote the only existing reimplementation of ruby lexer in the world
<whitequark> that stays as the only one to this day
<whitequark> (a compliant one that is)
<whitequark> ruby is... insane
<marcan> pie___: "is" most definitely does not work on strings consistently
<whitequark> did you know that you could use any delimiting character in %-strings
<marcan> >>> a = "a" * 50000
<marcan> >>> b = "b" * 50000
<marcan> False
<marcan> >>> (a+b) is (a+b)
<pie___> marcan, guess i rememebred wrong, its been a while
<marcan> "is" is only for object identity
<whitequark> so you can use %{foo}, %xfoox, %,foo, so far so good right?
<marcan> using it for equality is always a mistake
<marcan> you pretty much only want to ever use "is None"
<marcan> anything else is a bad idea
<pie___> right
<whitequark> but by any I do mean any. %%% is an empty string
<whitequark> but only in some contexts, in other it's a syntax error
<whitequark> you can also use %\0foo\0, where \0 is an actual zero byte in the source code
<marcan> lol.
<marcan> wow.
<pie___> down with c strings
<whitequark> ruby has heredocs. so far so good right?
<whitequark> ruby also has string interpolations
<whitequark> so of course, you can combine the two. yes. you can have nested heredocs.
<rqou> wtf
<rqou> this is significantly worse than vhdl
<pie___> so is the lexer turing complete
<awygle> does ruby have a spec? or is it just "whatever the reference implementation does"?
<rqou> traditional lexers are not turing complete
<pie___> is this traditional? :P
<whitequark> you can also use any string as a heredoc delimiter
<whitequark> for example,
<whitequark> puts <<"#{1}"
<whitequark> #{1}
<whitequark> yes, an interpolation is a legal heredoc delimiter
<marcan> lol
<whitequark> and it takes precedence over, well, interpolating that
<marcan> this is amazing
<rqou> pie___: so far this sounds like it hasn't yet exceeded the capabilities of a pushdown automaton at least :P
<rqou> also wtf ruby
<whitequark> so, regexps, right? specifying regexps as /foo/ is nice
<whitequark> but also, division, right?
<whitequark> let's say you write:
<whitequark> m / foo #/
<whitequark> depending on whether there is a local variable m, this is either a function call that receives a regexp
<whitequark> or a division of m by foo
<marcan> bwahahahaha
<marcan> this is like the lexer hack squared
<whitequark> similarly,
<whitequark> m %xx
<whitequark> not to be confused with
<whitequark> m % xx
<whitequark> which has completely different semantics
<rqou> iirc perl has this problem too
<rqou> but it actually makes perl _unparsable_
<whitequark> ruby has symbols that are defined with :foo
<whitequark> also, character literals that are defined with ?x
<rqou> because somehow the presence of a local variable requires interpreting the code that came before or something??? i don't know perl
<whitequark> and also it has a ternary operator
<whitequark> so good luck parsing x?y:bar
<whitequark> like fucking half of the lexer is dedicated to insanity like this
<marcan> amazing
<rqou> is ruby "unparsable" like perl though?
<rqou> perl parsing is undecidable
<whitequark> it used to have THREE concurrent lexer stack states
<whitequark> that are stacked even further inside the parser
<whitequark> i.e. the parser had a stack of lexer states, that are stacks
<rqou> wtf
<whitequark> that's apart from the lexer state itself
<marcan> yo dawg
<whitequark> which USED to be an FSM
<whitequark> but now they turned it into a multi-bit combinatorial state
<whitequark> it also allows almost any operator and any keyword to be a function name
<whitequark> so you can do
<rqou> what do you mean by "a multi-bit combinatorial state"?
<whitequark> def def; end
<rqou> a NFA?
<awygle> well this is fun :p i'm going to bed, goodnight y'all
<whitequark> rqou: I'm not even sure how to classify the lexer
<marcan> whitequark: heh that "uart is just a pipe" thing. you were using raw ttys?
<rqou> it's not a pushdown automaton?
<marcan> (this is always why I just use PySerial or whatever, to take care of all the tty nonsense)
<whitequark> rqou: your CS education shows :p
<rqou> lol
<whitequark> marcan: oh have I mentioned that it also has methods ending in ? and ternary
* marcan got a CS education but promptly forgot all this crap :P
<whitequark> so you have to resolve things like x.y?:foo
<rqou> wat
<rqou> this is total bullshit
<marcan> oh right, the ? in method names thing
<marcan> amazing
<rqou> and i thought vhdl was bad
<whitequark> and methods ending in ! and negation
<rqou> at least vhdl can be lexed with a traditional FSM lexer (like what flex can generate)
<whitequark> and splats and multiplication
<whitequark> so for example
<whitequark> x *y
<whitequark> it's a splat if x is a method and it's a multiplication
<whitequark> rqou: hahahahahaha flex
<whitequark> no
<whitequark> the ruby lexer is a bunch of C code sitting in parse.y
<rqou> wait, .y?
<awygle> hey real quick dumbass question - i know verilog has 'inout', but can you actually use that inside of either FPGAs or ASICs, or is it solely for pins?
<whitequark> marcan: to figure out some parts of the lexer I had to commission a translation of a chapter from a book in Japanese
<whitequark> awygle: solely for pins
<marcan> wow.
<whitequark> marcan: that's not all
<marcan> that's dedication.
<whitequark> the guy who wrote that book, Minero Aoki, had to reverse-engineer the lexer
<rqou> whitequark: did someone pay you to do this?
<whitequark> and in the second edition of the book he includes an aside stating that he was not, in fact, fully correct in his analysis, and much apologizes
<pie___> holy shit lol
<whitequark> to figure this out he had to instrument the ruby lexer
<rqou> would you rate this as better or worse than php?
<whitequark> and do dynamic analysis
<whitequark> rqou: marcan: oh have I mentioned
<whitequark> the ruby parser mutates the state of the lexer in LALR(1) lookahead actions.
<rqou> WHAT
<marcan> *facepalm*
<rqou> is that safe?
<rqou> why is it so bad?
<whitequark> oh and in the latest version of ruby
<whitequark> they not only mutate the state of the lexer in lookahead actions
<whitequark> they do it based on the lookahead token
<rqou> ugh nooooo
<whitequark> not only that
<rqou> dumb question: does ruby have a spec?
<whitequark> but what they do is decide what to push and pop from one of the lexer's state stacks
<whitequark> rqou: yes, there is an ISO spec
<whitequark> no, it doesn't actually specify the lexer
<rqou> wtf
<whitequark> you can't write a Ruby implementation by following the spec
<whitequark> it gets better
<whitequark> (I have the spec)
<whitequark> the spec was deliberately written ambiguously enough that both Ruby 1.8 and 1.9 are compliant
<whitequark> this means that it doesn't specify the behavior of either 1.8 or 1.9 enough to write any real code
<rqou> are 1.8 and 1.9 very different?
<rqou> (i don't use ruby either)
<pie___> qu1j0t3, read scroll when youre back lmao
<whitequark> it was a python2/python3 situation
<rqou> what
<rqou> but it's a "minor" version
<whitequark> that's ruby for you
<marcan> on a minor version.
<marcan> wat.
<rqou> that's worse than javascript :P
<pie___> pff noone uses semantic versioning anymore
<whitequark> mind you, the 1.9->2.0 change is backwards compatible
<marcan> HA
<whitequark> I think they just didn't want to have 1.10
<marcan> did they just... off by one their versioning?
<rqou> why do people use this?
<whitequark> rqou: if you don't actually understand how it works it looks elegant
<marcan> I mean, people *could* use python
<rqou> wow, vhdl is sane by comparison
<whitequark> oh have I mentioned that if it encounters a EOF (\x04) symbol inside a file, it decides that the file has ended
<whitequark> but you can still use EOF as a %-string delimiter
<rqou> WTF
<rqou> why?!
<marcan> I just got DOS flashbacks
<whitequark> also, in an UTF-8-encoded file, %-string delimiters can be any code units
<whitequark> because fuck you, that's why
<rqou> wait, but that's not the same EOF as DOS either
<whitequark> oh, it has three EOF symbols
<whitequark> \x04, \x1a and \x00
<rqou> zomg
<whitequark> all of which can be used in %-strings
<pie___> but! yu can use \0 as a delimiter
<pie___> xP
<whitequark> have I mentioned the "leading dot"
<pie___> or whatever it was
<pie___> no you havent
<whitequark> not content with unlimited lookbehind in the lexer, there is an one line lookahead
<whitequark> so if you wrote
<whitequark> .bar
<whitequark> foo
<whitequark> it's a method call
<whitequark> you don't need a \
<whitequark> you can also do
<whitequark> foo # bar
<whitequark> .baz
<pie___> if anyone ever writes obfuscated ruby im out.
<marcan> IORCC
<whitequark> pie___: oh I have something for you.
<pie___> decompile the bytecode instead if thats a tihng
<whitequark> yes, there's bytecode
<pie___> marcan, NO.
<whitequark> back in 1.9 days, I wrote a V8-based interpreter for YARV bytecode
<pie___> by corollary, underhanded ruby contest
<whitequark> that passed most conformance tests (except those involving IO, etc)
<whitequark> it was faster than the C implementation
<rqou> lol
<marcan> HA
<whitequark> "A robust quine program that works even after any one character is deleted."
<pie___> oh cool!
<whitequark> it has 26 instances of eval
<pie___> "World No.1 IOCCC player." huh.
<azonenberg> rad hard quine
<whitequark> mame has other amazing things
<azonenberg> lol
<whitequark> a 128 language quine
<pie___> what the hell is this guy
<pie___> do gods walk among us
<whitequark> he wrote a book on this. https://www.amazon.co.jp/dp/4774176435
everbrew has quit [Ping timeout: 256 seconds]
<rqou> my favorite quine has to be one of the IOCCC entries from the 80s
<rqou> the absolute smallest possible quite
<rqou> *quine
<pie___> but its in japanese
<pie___> :C
<rqou> it was 0 bytes long
<rqou> the rules were then altered such that entries had to be >= 1 byte
<marcan> needed a custom makefile though
<whitequark> what in the hell http://ioccc.org/2015/endoh1/hint.html
<whitequark> this is absolutely nuts http://ioccc.org/2015/endoh1/prog.c
<pie___> qu1j0t3, ^
<marcan> not quite as nuts but I assume you know http://uguu.org/sources.html :p
<whitequark> of course.
<pie___> what is this :D
<whitequark> "Misaka has been awarded "most catty" for the 22nd IOCCC." lol
<marcan> yup
<whitequark> pie___: C code
everbrew has joined ##openfpga
<marcan> some are perl
<whitequark> but all are awesome
<whitequark> bonus points for recognizing characters
<marcan> Best use of python
<marcan> Yusuke Endoh
<marcan> looking forward to that
<marcan> (from this year's IOCCC)
<whitequark> omg this is adorable http://uguu.org/nfo_fuuko.html
<whitequark> and this one is actually very useful http://uguu.org/nfo_rinia.html
<pie___> id thought of doing stuff like that with md5 but of course thats not so simple
<whitequark> Lain produces useless obfuscated programs formatted to a user supplied
<whitequark> but with a lot less effort ;)
<whitequark> template. i.e. it lets you do what I have been doing for a long time
<pie___> lol
<marcan> reminds me of http://uguu.org/nfo_akari.html
<marcan> poor akari :D
<whitequark> oh my god look at this http://uguu.org/src_nagisa_pl.html
<marcan> ahahaha
<pie___> godan
<pie___> (whats a godan?)
<pie___> uh, dango
<whitequark> er, sec
<whitequark> it's from CLANNAD https://www.youtube.com/watch?v=qvzCmV3_12c
<whitequark> but it's hard to understand unless you watch it
<rqou> hey whitequark marcan get back to work :P
<whitequark> pie___: read the comments to the video :p
<pie___> "Who would've thought a song about frikkin' dumplings would've been one of the most emotional songs ever?"
<marcan> whitequark: you know... I haven't watched CLANNAD (I know, I know) but I'd heard the song. but actually parsing the japanese now, that's so cute.
<whitequark> marcan: I think you know what you should do right n ow.
<marcan> clearly.
<pie___> im not ready for this feels train.
<pie___> nope.
<pie___> nope. nope. nope.
<pie___> not gonna watch clannad.
<whitequark> pie___: i've watched several of the most depressing anime *ever*
<whitequark> like texhnolyze and bokurano
<whitequark> and i'm not sure if i'm up for clannad again
<pie___> maybe you misattributed depression to overwork
<whitequark> mm?
<pie___> i was just making a joke in poor taste about when you said all you did was work andit was really bad
<whitequark> oh no, i watch depressing anime as a "fight fire with fire" strategy
<whitequark> it helps
<pie___> yeah that does make sense actually
<pie___> "oh wait, i DO have feelings"?
<whitequark> no, not really
<pie___> hm ok.
<whitequark> remember, i don't have unipolar depression
<whitequark> or rather, i have bipolar disorder, and so at the very least i don't get to experience unipolar depression like everyone else
<pie___> ah.
<whitequark> for example, without mood stabilizers, what antidepressants do is significantly increase the amplitude of mood swings, as if creating a resonance
<whitequark> in both directions
<whitequark> that's how i diagnosed it, in fact. i started antidepressants and when they started working, at some day i first spent a few hours completely paralyzed for no reason whatsoever and then ate moths
<whitequark> and the door was amazingly colorful
<whitequark> did you know that fried moth smells almost exactly like chicken?
<pie___> damn
<whitequark> yes, i caught and fried them
<whitequark> and i ate them raw too, just to compare
<pie___> you must have had a lot of moths around
<pie___> i have a thing for you
<whitequark> see, our cat caught and ate moths, and i thought, well, am i worse than our cat?
<whitequark> so i caught and ate moths too.
<whitequark> except i fried them, because i'm an advanced creature.
<whitequark> yeah, it was during summer 2017, lots of moths flying towards light
<whitequark> two centimeters in wingspan, gray, fat hairy bodies
<whitequark> delicious
<pie___> im just going to imagine you like this from now on
<rqou> wtf
<pie___> yeah dont catch any parasites/whatever
<whitequark> pie___: LOL
<whitequark> yeah that works for me
* cr1901_modern just woke up, and is now going back to bed to forget that he just read about eating moths
<pie___> cr1901_modern, you mean it wasnt even the ruby stuff?
<cr1901_modern> Hopefully this is just a lucid dream
<pie___> damn
<whitequark> well the one I ate was a bit smaller
<cr1901_modern> Yes, that is indeed a fat moth :o
<pie___> i mean i wouldnt eat that, but im just a pleb
<whitequark> I would actually fry and eat it, like, right now
* whitequark thinks
<whitequark> oh right i'm hypomanic
<whitequark> see it's very convenient
<marcan> pie___: now I will never be able to not associate whitequark with kanna
<cr1901_modern> pie___: The ruby discussion... well, I have questions lol (what is a "multi-bit combinatorial state")
<whitequark> mission. accomplished.
<whitequark> except
<pie___> marcan, question is is he cute in real life kekeke
* pie___ isnt gay fwiw
<whitequark> who said i'm a he
<cr1901_modern> kanna has a different meaning for me that most ppl probably lol
<marcan> *are they
<pie___> whitequark, internet rules
<whitequark> marcan: except with redder hair https://twitter.com/whitequark/status/975754549402087424
<marcan> I approve of this
<pie___> cr1901_modern, i kno
<pie___> blue hair right
<rqou> huh, that's more vivid red than i remember
<whitequark> marcan: it's she actually, but twitter bio has they for similar reasons as the avatar being a black square
<whitequark> i might revise that soon idk
<pie___> "the colors are so vivid people literally asked me on street if I'm from anime" lmao
<marcan> I actually don't know why the avatar is a black square
<marcan> I do know sometimes someone else with a black square shows up in my notifications and I get confused :P
<whitequark> rqou: the dye *very* slowly fades
<cr1901_modern> pie___: You still need to finish that game lol
<pie___> cr1901_modern, yeh
<pie___> but im so lazy to work the time system >_<
<whitequark> rqou: i think when we've met around a year has passed since i've dyed most of the hair (i redye roots more often, of course)
<pie___> kannanically kanna
<whitequark> it's incredibly resilient somehow, and it's classified as semi-permanent, not permanent
<pie___> fluorescent too? guess youd be a hit at raves :P
<whitequark> doesn't wash out much, doesn't bleach out on UV
<whitequark> yes, fluorescent
<cr1901_modern> marcan: Which kanna were you talking about?
<whitequark> we checked with a laser at m-labs
<whitequark> fluorescent and quite a bit at that
<rqou> people ask if you're from anime? in HK or RU?
<whitequark> rqou: that was in RU
<pie___> marcan, hmmm now i want to copy that :P
<marcan> annoyingly we're getting two new servers soon and probably ditching two old ones and I'm having conflicting thoughts about what to do about hostnames
<cr1901_modern> Oh, that kanna from that dragon show
<whitequark> in HK no one talks to me
<cr1901_modern> ehh :(
<whitequark> or maybe it's me who doesn't talk to anyone
<rqou> cr1901_modern: the rechargeable electric dragon loli :P
<rqou> do not lewd
<cr1901_modern> rqou: Not my thing
<pie___> "fuck me in the eth0 Aleksi", classic
<marcan> why do I get the feeling I caused this channel to go downhill today
<marcan> :p
<cr1901_modern> why did I just look that up
<rqou> nah, there are other weebs here
<cr1901_modern> is... is that Lum?
<whitequark> rqou: though I'll probably redye it completely next time
<whitequark> I wonder if I can get an even brighter color, somehow
<cr1901_modern> Yes, that is Lum
<pie___> "my avatar is the color of my soul"
<cr1901_modern> pie___: I could've gone my whole life without seeing that
<azonenberg> whitequark: you've met rqou?
<whitequark> marcan: I really don't like random people making assumptions on the basis of my appearance (hence, avatar), gender, or nationality. hence, no avatar, no name, and no gender on twitter
<whitequark> azonenberg: correct
<azonenberg> ah cool
<rqou> azonenberg: yeah, let's not get into too many details about that
<whitequark> I needed to stay somewhere one night back when [REDACTED]
<azonenberg> Lol i see
<marcan> whitequark: sounds reasonable
<whitequark> marcan: but it doesn't really work because people assume male
<azonenberg> whitequark: btw, have you considered not having red hair?
<cr1901_modern> Everyone here has met each other (well it seems that way)
<azonenberg> i'm thinking, say, H2O2 bleach + fluorescein
<marcan> yeah, I didn't expect it to
<whitequark> so I'm going to change my avatar to that of a catgirl, I think
<marcan> but the *idea* sounds reasonable
<marcan> unfortunately the internet isn't reasonable
<whitequark> you know, to drive the point in
<azonenberg> whitequark: how about the "anime schoolgirls build a PCB" image? :p
<azonenberg> (that really needs to become a full anime series lol)
<rqou> cr1901_modern: you need to get on the "proper" coast :P
<whitequark> azonenberg: (have I considered not having red hair) hell no, I had red hair ever since uh
<whitequark> it was soooo long ago
<cr1901_modern> I'll pass...
<whitequark> I've moved at least two times since then
<pie___> cr1901_modern, ive only met rqou at ccc
<whitequark> 2011?
<rqou> cr1901_modern: you can sleep on my couch :P
<whitequark> 2012?
<cr1901_modern> hmmm...
<azonenberg> whitequark: lol
<pie___> azonenberg, thats my uh....facebook profile background lol (yeahhh i have facebook)
<whitequark> azonenberg: fluorescin is quite corrosive and I think it's also pretty toxic
<whitequark> definitely not good to put on hair
<azonenberg> whitequark: it's safe enough to use intraocularly for diagnostic purposes
<azonenberg> as long as you arent allergic
<whitequark> hm, interesting
<whitequark> I only know that it degrades stainless steel
<azonenberg> I assume it's ph buffered and quite dilute
<whitequark> and rather rapidly
<azonenberg> in that use case
<pie___> whitequark, oh what is this https://llvm.moe/
<azonenberg> Pyranine? i dont recall the toxicity of it but they use it in highlighters
<azonenberg> so it cant be toooo bad
<marcan> I have that book
<whitequark> I have it too
<whitequark> not the clang one
<marcan> same
<awygle> I keep meaning to hang my printout of that anime pcb image
<whitequark> also I can't read japanese so it's kind of a pity
<marcan> what is this anime pcb image?
<whitequark> marcan: I think you tweeted it?
<pie___> sec
<whitequark> retweeted even
<marcan> oh the one with the IC-sized schoolgirls?
<marcan> yeah
<azonenberg> whitequark: pyranine is HMIS health hazard 1,
<azonenberg> and seems quite safe to work with
<whitequark> azonenberg: anyway that image won't work pecause people only see tech on it
<pie___> yeah that
<awygle> I have a folder of like four similar images
<azonenberg> awygle: yeah probably all from the same artist
<whitequark> not probably
<awygle> Always on the lookout for more but not finding
<marcan> I really want to start making PCBs again and do stuff like that :P
<azonenberg> iirc lain had it as her pc wallpaper
<azonenberg> for a while
<whitequark> the artist even has an animation of drawing it
<awygle> I think I have three from one artist and one from a different one
<rqou> PCBs are so much work though
<rqou> f*ck footprints forever
<awygle> Style is different
<pie___> awygle, post them, i cant find this right now xD
<rqou> all components should magically attach themselves to boards without any potential for errors :P :P
<awygle> rqou: I recommend caring less
<pie___> i think i have *one* more from the same artist
<rqou> awygle: and then you have to respin the board
<marcan> "cure up ra pa pa! PCB, design yourself!"
<awygle> rqou: what are you building anyway
<pie___> so is this llvm.moe a text book or a pictures book
<rqou> <redacted>
<marcan> it's actually text
<awygle> boo
<marcan> with like one intro picture per chapter
<pie___> boooo :C
<marcan> still cute
* pie___ is learning to draw
<whitequark> marcan: oh that's an impressive pcb
<rqou> to draw pr0n? :P
<pie___> llvm-chan...eventually?
<whitequark> quite some work went into it
<rqou> wait, do you know the designer?
<whitequark> no, but I see the board
<whitequark> and it's not easy to wrestle EDA into making this output
<pie___> well it has a url on it
<rqou> yup, EDA tools are all disasters for some reason
<awygle> it's not bad in altium actually
<awygle> There's a whole command for it
<cr1901_modern> marcan: Re: Clannad, you don't know the ending correct (I will _not_ spoil it)?
<marcan> I do not
<cr1901_modern> Okay try not to seek it out, it ruins things
<awygle> I miss my expensive pcb tools
* cr1901_modern already knows :/
<whitequark> it's a good ending
<whitequark> it's weird
<marcan> yeah I don't research things I'm about to watch, beyond basic synopsys and non-spoiler opinions usually
<whitequark> but it's good
<awygle> I want to re-watch angel beats
<marcan> synopsis
<cr1901_modern> whitequark: I know, but it ruined the experience for me
<marcan> synopsys lol
<whitequark> lol
<awygle> If only for the music
<cr1901_modern> I thought the upbeat parts of Clannad were hilarious tho
<awygle> Why do depressing anime always have such good music
<pie___> clann-sad
<whitequark> awygle: ohhhh
<awygle> See also uninstall
<whitequark> yes I was about to post it
<pie___> awygle, why do the most fucked up things have the best art
<awygle> post it anyway
<marcan> seems I already have a 1080p version lying around on my NAS too
<awygle> It deserves sharing
<cr1901_modern> Saya No Uta anyone?
<cr1901_modern> pie___: ^
<awygle> Higurashi too
<awygle> Dear You is great
<marcan> oh that song is good (uninstall)
<awygle> As are others but idr the names
<marcan> even though I haven't watched that either
<cr1901_modern> pie___: It's by that person who did that Madoka series everyone loves
<pie___> cr1901_modern, havent heard of it
<pie___> cr1901_modern, oh god i heard thats a mindfuck
<cr1901_modern> Gen Urobutcher
<awygle> Madoka is good
<pie___> whitequark, oh hey this is pretty good :D
<marcan> cr1901_modern: wait what is by the same person?
<whitequark> Madoka broke my brain
<cr1901_modern> Yes lol
<pie___> mentally torturing lolis (or anyone) is bad mkay
<marcan> madoka is amazing
<cr1901_modern> marcan: Saya No Uta
<pie___> s/bad/mean/
<cr1901_modern> is by the creator of Madoka
<awygle> The first big spoiler got me good
<marcan> madoka is actually my favorite anime
<marcan> *grabs*
<whitequark> I'm not sure what my favorite anime is
<awygle> my favorite anime is Skip Beat
<awygle> Today, at least
<rqou> yeah, madoka was pretty great
<cr1901_modern> Mine is _probably_ DYRL
<awygle> Don't read the manga of skip beat tho
<awygle> Monthly updates :-( too infrequent
<rqou> back when i used FB the "religion" field on my profile was set to "Haruhiist/Madokan" :P :P
<marcan> wait saya no uta is... what exactly?
<cr1901_modern> it's a VN
<marcan> ah, that makes more sense
<awygle> mmm Haruhi is excellent too, as are the monogataris
<marcan> nitroplus, eh
<marcan> how does it compare in horribleness with DDLC? :P
<pie___> rqou, lol
<awygle> ddlc is fairly tame tbh
<marcan> ddlc was hilarious tbh
<whitequark> Spice and Wolf? Monogatari? Ergo Proxy? FLCL? Sayonara Zetsubou Sensei? Daughters of Mnemosyne? Azumanga Daioh? Toaru Kagaku no Railgun?
<awygle> It was good but more for the meta than the horror
<whitequark> Texhnolyze?
<awygle> Uhh all of the above except mnemosyne
<pie___> im just a poser
<marcan> awygle: yeah, horror-wise it wasn't that bad tbh
<whitequark> there' just so many good ones
<awygle> Railgun is so good lol
<pie___> whitequark, ergo proxy ++ , i should rewatch, see if its still goof :P
<cr1901_modern> I... lost interest in Railgun/Index T_T
<marcan> the meta was pure gold though
<pie___> *good
<cr1901_modern> marcan: Don't remember, tbh
<awygle> My whole network is named after raildex chars
<cr1901_modern> DDLC is tame tho
<pie___> whitequark, the first few episoded of ergo procy though, damn
<whitequark> cr1901_modern: you probably don't watch it for same reasons as I do
<whitequark> pie___: the all episodes of ergo proxy
<whitequark> I call it "Ergot Proxy"
<whitequark> because it's the truth
<awygle> SZS made me uncomfortable in the best way
<pie___> whitequark, thats that mean
<cr1901_modern> whitequark: I mean Railgun >>> Index
<awygle> And the first op set that mood so well
<pie___> *whats that mean
<whitequark> actually, I don't really know how it compares to LSD because I just get a horrifying reaction to LSD, but it is not entirely dissimilar to the psilocybin experience
<marcan> Railgun >>> Index indeed
<rqou> huh, no wonder my firefox was hitting OOM so quickly
<cr1901_modern> I got to like episode 20, and just "okay I don't feel like watch it anymore". That was 2014
<whitequark> all of this is worth watching for *some* reason
<pie___> rqou, feedin it too many cookies? :P
<awygle> Railgun is better but I would never have watched it if I hadn't watched index first
<rqou> i put firefox in a memory cgroup to keep it under control
<marcan> pfft MAL :P
<rqou> but i forgot that cgroups inherit :P
<awygle> Specifically when touma loses his memory and doesn't get it back
<rqou> so anything you open by clicking in downloads will also be confined to the same cgroup
<whitequark> a few things there are bad but they're so bad it's good
<whitequark> like Dead Leaves
<awygle> (that's like episode 2,not a spoiler)
<cr1901_modern> awygle: Okay, so... unrelated to not finishing Railgun, but
<rqou> and i had e.g. libreoffice open
<cr1901_modern> I have started a policy of greylisting anime based on a Light Novel
<rqou> why is java such a memory hog?
<whitequark> Chaika is so sad ;_;
<cr1901_modern> I'm less likely to watch it
<cr1901_modern> B/c it's become clear to me that these anime only exist to sell the LN and won't be finished in any satisfactory capacity after 2 seasons
<awygle> Hyouka is great
<cr1901_modern> Only Zero No Tsukaima afaik actually finished the story, but:
<awygle> cr1901_modern: solution - read the light novels
<cr1901_modern> 1. The author died.
<awygle> Legend of the Legendary Heroes anyone?
<whitequark> awygle: no. just no.
<pie___> you mean galactic heroes?
<awygle> whitequark: :-P
<cr1901_modern> 2. I don't think of it as fondly as I used to.
<awygle> pie___: no
<pie___> ok i dunno then
<whitequark> pie___: oh lain
<pie___> that sounds cheesy af
<whitequark> I couldn't watch the entirety of lain
<awygle> ZnT is not great tbh
<whitequark> that's because I tried to watch it while (as I later figured out) nonconsensually drugged with neuroleptics at a psychiatric hospital
<cr1901_modern> I know, but I used to like it T_T
<pie___> whitequark, oh :|
<whitequark> it somehow resonated with the side effects and the result was just
<awygle> whitequark: seitokai yakuindomo really? Hahaha
<whitequark> dramatic
<marcan> ugh :|
<whitequark> awygle: I was really bored okay
<cr1901_modern> whitequark: I thought you hated seitokai yakuindomo
<pie___> whitequark, sidenote, people sholdnt be allowed to watch public television at psychiatric institutions
<whitequark> cr1901_modern: it's the single stupidest thing I've ever watched
<pie___> my uninformed opinion.
<awygle> whitequark: no hate, I love that show
<cr1901_modern> whitequark: Might want to watch Kon! for competition?
<awygle> I watch mostly stupid and uncomplicated anime
<whitequark> pie___: it was on my laptop
<whitequark> yes I had my laptop and internet
<pie___> whitequark, yea, unrelated proposition
<awygle> Oh hell yeah yakitate japan
<cr1901_modern> awygle: Aria the Animation. You're welcome. Uncomplicated. Not stupid.
<whitequark> Yakitate!! is something else entirely.
<whitequark> I actually baked bread when it got to the episode with the recipe.
<whitequark> it was pretty decent
<pie___> :D
<whitequark> in retrospect, it just made me manic
<marcan> if you want bad anime there's this: https://anidb.net/perl-bin/animedb.pl?show=anime&aid=6287
<whitequark> but that's a good thing
<marcan> it's amazing :P
<awygle> I lost it at the Gauntlets of the Sun
<whitequark> marcan: wtf
<marcan> exactly.
<awygle> GET SWOLE BAKE BREAD
<whitequark> it's by IG Production?!
<whitequark> what on earth
<marcan> the good news is each episode is 3 minutes
<marcan> easy watch!
<whitequark> ...
<pie___> wtf is that lol
pie___ has quit [Read error: Connection reset by peer]
<whitequark> marcan: you'll like Dead Leaves.
* cr1901_modern uses an alias for AnimePlanet (not MAL). Wonder if I can export it w/o IDing info
pie_ has joined ##openfpga
<whitequark> for bonus points, I personally watch it in a reasonably bad russian dub
<pie_> <pie___> wtf is that lol
<pie_> <pie___> if you guys want a mango, and dont mind/like dark stuff, dorohedoro is pretty good
<marcan> we watched some of abunai sisters at the AniDB Board Game Meetup a couple years ago
<pie_> <pie___> its not finished though
<awygle> My most recent favorite is Re:Zero
<pie_> <pie___> binged the whole thing over the weekend
<pie_> well im not sure id say dark as much as gorey
<marcan> last year I made them watch Kemono Friends which was, well, quite a bit better :P
<pie_> so, ##openfpga anime meetup when
<pie_> s/anime/weeb/
<whitequark> at hackerfarm right
<whitequark> because where else
<awygle> any of you are welcome at my place in Redmond anytime :-P
<marcan> of course
<marcan> I have a BlitzLoop instance at hackerfarm btw
* azonenberg will definitely be having weeb nights at his new place
<marcan> needs some updates but it should work
<azonenberg> i've had a few w/ sgstair, monochroma, and lain already
<marcan> sgstair wow
<marcan> haven't heard that name in a long while
<awygle> azonenberg: but I have to take the Nice Boat to get there
<pie_> azonenberg, no fair :P
<whitequark> awygle: ...
<whitequark> no
<whitequark> just no
<whitequark> just
<whitequark> no
* awygle zzzz
<cr1901_modern> Every time _I_ mention School Days, ppl dpon't know what I'm talking about
<whitequark> cr1901_modern: no
<cr1901_modern> but when awygle mentions it, it's a visceral reaction
<whitequark> this is my response to school days
<rqou> azonenberg when is your friggin house going to be done? :P
<whitequark> no
<whitequark> meh i wish i could get a japanese visa, or any visa for that matter
<whitequark> i mean i can
* sgstair waves
<pie_> o/
<cr1901_modern> I'm sure I could find a few more even more fucked up VNs
<whitequark> but there's no point in getting a visa that'll just be invalidated in a few months
<pie_> (/me whispers: "who is this guy?" ;PPP)
<awygle> I actually back doored into school days from a touhou song saying "suwako de nice boat"
<awygle> in the background
<whitequark> oh we're doing touhou songs now? https://www.youtube.com/watch?v=_ZbnoxUFbpQ
<azonenberg> awygle: lol
<cr1901_modern> Kiminozo has a few fucked up endings I've heard about, but since the translation is in progress, most of them are kept secret.
<awygle> Overdrive maybe?
<pie_> awygle, i watched outlaw star because a pystrance song sampled the opening
<azonenberg> rqou: that's a very good question
<rqou> pie_: don't worry, i don't really know them either
<cr1901_modern> Actually looking at my list, the 1985 Dirty Pair is prob my favorite anime, DYRL being a close. I miss the days of cel animation.
<marcan> sgstair: did I ever mention how at one point we used your Spartan3E logic analyzer at CCC, in broadcast mode, connected to the event network?
<marcan> not sure if anyone noticed :D
<cr1901_modern> close second*
<azonenberg> I have to vacuum the rest of the insulation in my attic friday (seattle fpga meetup is keeping me busy after work tomorrow, then i have something the next day)
<azonenberg> Then saturday hopefully take down the living room ceiling
<azonenberg> defintiely sunday
<pie_> marcan, does the network even have broadcast
<pie_> (i mean i wouldnt know)
<marcan> ethernet has broadcast
<pie_> sure i mean would it not be blocked
<azonenberg> at that point the majority of the demo will be done, i just have to do "finish" demolition like pulling random nails and staples stuck in things
<marcan> nah, mdns and such worked
<rqou> O_o sgstair did dswifi
<pie_> a'ight
<awygle> ugh why am I awake and shitposting about anime
<sgstair> marcan: haha, nice
<marcan> sgstair: that's also the thing that taught me about metastability
<pie_> awygle, because thats what friends do
<marcan> not sure which version it was but it was *crashing* on my board
<whitequark> pie_: the first anime i watched was death note. a few of my classmates were very insistent on it because they thought i was like L.
<sgstair> me too, actually
<pie_> anyone have a link to this thing sgstair made?
<awygle> friends don't let friends go full weeb
<marcan> and I was scratching my head as to how *hardware* could crash
<marcan> then eventually I figured it out
<pie_> whitequark, haha
<rqou> they apparently worked on the reverse-engineered wifi lib for the nintendo ds
<pie_> awygle, real friends insist
<awygle> pie_: trufax
<sgstair> pie_: which thing? The logic analyzer thing I don't think I ever released.
<cr1901_modern> awygle: My issue w/ school days isn't the ending. It's all the events leading up to it and how unlikable the main character is.
<rqou> azonenberg: demo would be so easy if you could just be like that one celebrity with the wrecking ball :P :P
<rqou> (i don't really know celebrities)
<whitequark> cr1901_modern: isn't that like
<whitequark> the point of school days
<awygle> Yeah that's exactly the point
<whitequark> (disclaimer: the first episode of the anime broke me)
<awygle> Valid reason to not like it tho
<whitequark> (about halfway into it)
<whitequark> (I just completely lost my ability to even)
<awygle> Like I didn't watch Breaking Bad because it just made me sad
<azonenberg> rqou: demolition is easy
<azonenberg> *selective* demolition is hard :p
<pie_> controleld demolition is no tso easy
<whitequark> breaking sad
<rqou> just do a 9/11 :P :P :P
<marcan> aaand now we're on a watchlist
<azonenberg> i want to still have a house when i'm done...
<awygle> rqou: you are referring to M. Cyrus
<whitequark> marcan: you must be new here
<rqou> we're already on a watchlist most likely
<marcan> I know, I know :P
<whitequark> we've already discussed ultracentrifuges a few times
<marcan> hahahaha
<marcan> yeah okay, lost cause
<azonenberg> marcan: i want to build one and use it to distill ethanol
<azonenberg> i dont even drink
<azonenberg> Just for kicks
<awygle> speaking of who saw lockheeeds fusion patent in the news recently
<whitequark> build what?
<azonenberg> To be able to say i made moonshine with a gas diffusion centrifuge
<whitequark> oh
<marcan> of course, why else would you do things?
<whitequark> that, hm.
* whitequark thinks
<azonenberg> whitequark: if you can separate U235F6 from U238F6
<whitequark> azonenberg: damn you for nerdsniping me
<whitequark> but also, separating U235F6 from U238F6 required Iran something like eight or twelve thousand centrifuges in series
<pie_> so school days sounded familiar but couldnt place it, looked it up, yeah no.
<whitequark> if I recall correctly
<azonenberg> C2H5-OH and CH3-OH shoudl be easy
<pie_> marcan, only *now*?
<whitequark> CH3OH?
<whitequark> why CH3OH?
<awygle> I wonder if at some point it becomes easier to breed plutonium
<pie_> wait ultracentrifuge?
<whitequark> you want to separate it from water primarily
<azonenberg> whitequark: you dont want to go blind when you drink it, right?
<pie_> is that some kind of really big centrifuge or do they let me guess distill uranium
<azonenberg> h2o is super easy to separate
<rqou> ##opennuke when :P
<azonenberg> by comparison
<awygle> pie_: the term is enrich
* whitequark snorts
<pie_> i should stop replying to things half way up in scroll without reading the rest
<azonenberg> pie_: we're discussing, basically, making a uranium enrichment plant and then using it to make booze
<whitequark> ##enrichment_center
<azonenberg> rather than nukes
<awygle> That's just portal now
<azonenberg> Just to overdo things in classic nerd fashion
<cr1901_modern> from anime to uranium
<marcan> whitequark: take your upvote and go home
<cr1901_modern> that's ##openfpga
<whitequark> bwahaha
<whitequark> I mean, you probably don't need to go as fast, so you can actually build the centrifuges without ITAR-regulated components
<pie_> rqou, lmao
<whitequark> like maraging steel
<cr1901_modern> I wonder if digshadow would be weeping
<whitequark> though I bet I could provide maraging steel for you
<cr1901_modern> erm ignore that, incomplete thought
<pie_> azonenberg, yeah i got it
<azonenberg> whitequark: ITAR is mostly an issue for export/import right?
<azonenberg> i.e. if you build it in your own garage from domestically acquired parts
<azonenberg> it shouldn't be too hard
<whitequark> azonenberg: noooot quite
<rqou> or just build everything outside the US
<awygle> when the weebs burn the sky with The Bomb so we cry that's ##openfpga
<whitequark> I'm mostly using ITAR as a shortcut here
<azonenberg> and you're not trying to make a ton either
<marcan> I actually wonder if I'm on a Japanese government watchlist yet
<whitequark> like you aren't getting maraging steel from anywhere either
<whitequark> domestically
<rqou> aren't all foreigners in japan on a watchlist?
<azonenberg> But yeah, for ethanol separation it should be possible with much lower RPMs
<marcan> well... I guess? :P
<whitequark> I believe I have the ability to alloy it though
<marcan> OTOH they seem to be unaware of the concept of data sharing
<marcan> see: tax office thinks I'm two different people
<rqou> lol
<rqou> i remember that series of tweets
<whitequark> have I told you my story of interaction with ITAR?
<marcan> please.
<rqou> fortunately i haven't broken the tax office yet (i have two passports)
<whitequark> so, I wanted one of those teeny tiny cryocoolers that they use in seeker missiles, because they're very cute
* awygle worked in space, ITAR is a sore subject
<pie_> kawaii cryo coolers eh?
<whitequark> Ricor K562S
<whitequark> to be specific
<awygle> kawaii-o coolers
<rqou> btw anybody want to RE how to unlock FLIR cameras? :P dig refused due to ITAR
<pie_> awygle, omg
<pie_> so anyway, chibi cryogenics
<whitequark> I couldn't get them from the US because of ITAR
<awygle> pie_: it was RIGHT THERE
<pie_> awygle, IM SORRY
<whitequark> so I went and bought them in Israel, which is not a signatory of ITAR, and they just shipped it to HK.
<whitequark> end of story.
<rqou> lol
<pie_> awygle, my brain doesnt default to elmer fudd
<awygle> Yeah that's... Not uncommon.
<marcan> lol
<whitequark> Israel rocks
<rqou> except their foreign policy
<rqou> except the US is even worse
* awygle thinks and lets go of several dozen thoughts
<whitequark> I mean, you know why I like having Russian nationality right?
<pie_> wait why does missile-chan need a cryo cooler?
<whitequark> oh marcan hasn't heard that story yet either
<whitequark> pie_: IR sensors
<whitequark> need to be at around 70K
<marcan> indeed
<pie_> ah i figured for some reason
<pie_> TIL
<marcan> well some IR sensors, right?
<awygle> I have a story about exactly that cooler actually but I can't tell it. Darn.
<pie_> >>>> * awygle thinks and lets go of several dozen thoughts
<whitequark> awygle: god damn it
<marcan> microbolometers seem to do fine at ambient
<pie_> damnit
<rqou> > btw anybody want to RE how to unlock FLIR cameras? :P dig refused due to ITAR
<pie_> whitequark, so about that story
<whitequark> I have like three and I designed a fixture to refill them with helium
<whitequark> and yes I have a bottle of six nines ultrapure helium why do you ask
<marcan> ...
<awygle> whitequark: time to liquefy
<awygle> ... How the fuck do you spell that word
<whitequark> marcan: pie_: so the story
<whitequark> I was just buying chemicals, minding my own business
<whitequark> here you need some context.
<whitequark> in russia, chemicals are regulated, in a very... interesting way.
<pie_> rqou, id have figured them to be hardware limited? they arent? re flir
<whitequark> glassware is completely unregulated (hi Texas)
<pie_> ^
<pie_> ive heard of that
<rqou> pie_: i heard via MTVRE that they have firmware-limited frame rate due to ITAR
<whitequark> *some* reagents are regulated.
<marcan> yeah I think it's firmware
<pie_> rqou, yeah thats what i meant
<marcan> Seek Thermal is definitely firmware averaging
<marcan> I should pull off the SPIflash someday and fix that
<awygle> almost certainly firmware is enough. GPS lockouts are all firmware.
<pie_> huh didnt know thats a thing.
<rqou> marcan: i heard that there's more limits in some OTP/internal memory in the sensor itself
<whitequark> an example of things that are regulated: sulfuric and hydrochloric acid. yes. what europe has as drain cleaner is regulated.
<marcan> not allowed to go above X speed and Y altitude
<marcan> IIRC some vendors implement it as OR, better ones as AND
<whitequark> an example of things that aren't regulated: red phosphorus, bromine, methylamine.
<awygle> "pay 9k extra and we'll turn off this lockout" go fuck yourselves
<rqou> ##openillegalgps :P
<marcan> whitequark: so barf is regulated?
<marcan> that doesn't sound like it'd go well in russia
<rqou> lool
<whitequark> marcan: only concentrated
<pie_> marcan, where do you think she sources it from? :)
<whitequark> battery acid is OK
<whitequark> oh I'll get to that part a bit later
<marcan> I see a market for concentrating HCl out of barf
<pie_> whitequark probably runs a puke distillery
<pie_> :P
<rqou> i'm not sure if RU is better or buying sulfuric acid from walmart is better
<whitequark> marcan: the vendor I typically buy chemicals from has a listing for bromine
<whitequark> "liquid bromine, three kilograms, pickup only"
<awygle> #TooMuchBromine
<whitequark> they also have it in 100g ampoules (which I buy) but one day they didn't have those in stock
<pie_> #NeverGoFullBromine
<whitequark> so I chatted a bit with the owner of the shop
<rqou> btw did you ever get the free-radical bromination to work?
<whitequark> he told me, quite philosophically, a story of how "yesterday, some guys also wanted a 100g ampoule, we didn't have it... I offered the 3kg one... they bought it... broke it almost immediately..." with the tone that other people would describe their dinner with
<rqou> O_o
<marcan> bwahahaha
<whitequark> another day I was buying something else and a guy beside me bought several barrels of methylamine
<whitequark> yes, they have methylamine by the barrel.
<awygle> Isn't philosophically describing catastrophes like, quintessentially Russian?
<whitequark> no, methylamine is not regulated in russia.
<whitequark> yes, you can buy it, and ask to, quote, put it on my pickup truck
<marcan> I think I see the appeal of Russia now :P
<pie_> is that a meth precursor?
<rqou> so it'd be much easier for Walter White to just turn into Walter Ivanov :P :P
<whitequark> pie_: yup
<pie_> wiki looks like the functional group
<pie_> or something. ok
<marcan> I still need to figure out how to get chemicals in japan
<whitequark> we've later calculated how much meth could be made from that and something else he bought that was strongly indicatory of meth
<marcan> not that I've tried very hard
<marcan> but getting SEM consumables was annoying enough
<pie_> rqou, lool
<whitequark> it turned out to something like 200 years of consuming a near-lethal dose every day
<marcan> "is this a university or something?" "no, we're, uh, a group of independent researchers. yes please ship it to this address. yes it's a shack in the middle of nowhere."
<pie_> its the best shack htough
<pie_> wait ship? nah he just put it on his truck
<pie_> never expose the shack
<marcan> I actually had them ship it to my apartment in Tokyo because I think going straight to the farm would've been even worse
<marcan> :P
<rqou> i haven't tried to get any "controlled" precursors but i've found that in general getting chemicals in the US is straightforward enough
<marcan> but they were still wondering why the fuck a random gaijin was buying SEM consumables
<marcan> like, privately
<rqou> lolol
azonenberg has quit [Ping timeout: 240 seconds]
<marcan> I had to ask them about consumption tax too, they didn't even put it down on the invoice
<marcan> "so, er, do I just add 8% to this? like, this total?"
azonenberg_work has quit [Ping timeout: 245 seconds]
<pie_> well MAYBE HE HAS A SEM? DID YOU THINK OF THAT HUH?
<marcan> "ah, yes, that works"
<whitequark> so, anyway, "precursors", including sulfuric and hydrochloric acid, are regulated, and in theory should be only sold according to compliance rules
<whitequark> traceability, storage, etc
<rqou> lol bullshit that's never going to work
<whitequark> of course, that's russia, so in practice
<whitequark> they have a 100 RUB surcharge for every liter of a precursor
<rqou> especially since sulfuric acid is iirc the most used industrial chemical
<whitequark> and they ask you for your full name
<whitequark> they don't look at your ID, just ask
azonenberg has joined ##openfpga
<whitequark> #compliance
<marcan> nice
<azonenberg> Back
<whitequark> in general I found that I can get the absolute wildest things as a private individual and companies generally very rarely refuse to work with me because of that alone
<pie_> that reminds me of something
<whitequark> like I never had trouble finding machinists
<pie_> if i can find it...
<azonenberg> (what did i miss?)
<rqou> "hi my name is Ivan Ivanov, totally legit"
<whitequark> in one case I did have minor trouble finding a good welder for vacuum equipment
<pie_> whitequark, ughhh not faair
<whitequark> so eventually I located a welder who moonlighted on a closed government object on a local clone of craigslist
<whitequark> he can weld 0.3mm 316L stainless
azonenberg_work has joined ##openfpga
<whitequark> yes that's point three
<whitequark> he's fucking godlike
Guest74744 has quit []
<marcan> nice.
Guest74744 has joined ##openfpga
Guest74744 is now known as JSharp
<whitequark> of course, they don't pay jack shit his CNC machinist and mech designer coworkers either
JSharp has quit [Client Quit]
<rqou> wait wait i just looked up what 100 RUB is and it's <USD$2
JSharp has joined ##openfpga
<whitequark> so I gave them a few STEP files, they redrew them for me to ISO standard and manufactured for uh
<rqou> that's not much of a disincentive
<whitequark> I think the entire thing cost me less than one hour of machining work in the US
<pie_> inb4 america is overrated
<rqou> america is pretty overrated in a lot of cases
<whitequark> including the cost of raw materials and shipping a massive chunk of stainless from St Petersburg
<whitequark> by massive I mean I couldn't lift it
<whitequark> I shipped it for less than $5 :D
<whitequark> called the company, agreed on the price, they cut it for me with a plasma torch from a thick sheet and shipped
<whitequark> zero fucks given that I'm not a company
<whitequark> it was a pretty large vacuum chamber
<marcan> that's amazing
<marcan> shipped to HK?
<whitequark> the bottom flange was ISO160
<whitequark> and it was around 200 mm in height
<whitequark> at the bottom there was an adapter made from 10mm thick 316L, and the chamber itself was made from a 4mm thick pipe and bulkhead
<whitequark> and another ISO100 flange on top
<whitequark> marcan: no to Moscow
<pie_> man the west is for pussies
<marcan> ah
<whitequark> the entire chamber cost me something like
<whitequark> maybe $400?
<rqou> pie_ aren't you technically in eastern europe too?
<pie_> im part of the EU
<whitequark> including what I paid for the drawings and everything
<pie_> technically we say "central europe"
<whitequark> it actually cost me almost more to ship it to the UK (it was an order) than to manufacture it
<rqou> HU isn't normally considered eastern europe?
<whitequark> marcan: so yeah if you need vacuum gear at low low cost
<whitequark> give me some STEP files
<pie_> other people probably say eastern europe, but definitely not that eastern
<pie_> whitequark, how's shipping to hugary lol
<rqou> whitequark: does m-labs do that too or do you find parts in HK?
<whitequark> and yes I can do 45 micron finish and everything
<whitequark> no electropolishing last time I looked but that can be addressed
ym has quit [Remote host closed the connection]
<whitequark> rqou: no sebastien finds parts on taobao
<whitequark> pie_: probably about as much
<rqou> i guess that works too
<pie_> meh :P
* pie_ needs to stop being a relatively brokeass student
<pie_> need to get rich on some software or somethin :P
<rqou> oh yeah, whitequark: what's it like doing engineering in HK only speaking english?
<rqou> e.g. dealing with suppliers
<whitequark> rqou: I haven't talked to any local places actually
<whitequark> haven't really had the ability to do so, living alone in HK is corrosive to mental health
<pie_> :(
ym has joined ##openfpga
<whitequark> hell it's a good day when I can get out of the house
<rqou> :(
<pie_> ##openfpga HK dorm
<marcan> whitequark: I get the feeling nava might be interested
<rqou> sure :P
<whitequark> marcan: whom do you think I shipped the chamber to
<whitequark> lol
<marcan> LOL
<pie_> lol
<rqou> pie_: do it before my family has to fight over what to do about our HK apartment
<pie_> whos nava
<whitequark> new299
<pie_> who/what
<whitequark> @new299
<pie_> aha
<marcan> if only I had space at home for any kind of lab
<marcan> I see two options: either I get myself a car and a license, or I make it a habit to spend a week at the hackerfarm once in a while
<marcan> that's the only way I'm going to be going there often enough to build an alternate lab there
<whitequark> at the place I currently live with (it's mostly my roommate's but we technically pay equal amounts of rent) I just got some appropriate furniture and added ventilation
<rqou> in RU or in HK?
<whitequark> RU. I fucking wish I had a roommate in HK
<rqou> lol i need to move to HK :P
<marcan> I don't think my dinky place in tokyo could handle that
<marcan> well, not that dinky by tokyo standards
<whitequark> you probably don't want to live with me
<rqou> > before my family has to fight over what to do about our HK apartment
<marcan> but still
<whitequark> way too depressed, has severe trust issues, etc
<whitequark> marcan: well
<whitequark> one time my roommate, who is still learning chemistry properly (she didn't even have it in high school at all)
<whitequark> (and is learning CS at uni)
<whitequark> well, she decided to perform a nitration
<whitequark> entirely on her own
<marcan> um.
<whitequark> so, she poured, uh, I think it was butan-1,4-diol?
<marcan> I mean I'm no chemist but. nitration.
<whitequark> and nitric acid into a flask on a mag stirrer
<whitequark> unfortunately, she did not turn on the stirring, so at first, they stratified into two layers
<whitequark> then, when she did turn it on, they rapidly mixed together
<azonenberg> Boom
<marcan> ouch
<whitequark> so you know how good magstirrers have a flat machined aluminium heat spreader plate right?
<marcan> right
<whitequark> when I arrived back some time later, I found that the plate became concave
<rqou> lolol
<marcan> hahahaha
<whitequark> most of the acid instantly turned into NO2
<whitequark> so there was this massive cloud of NO2 in the room
<pie_> now i know who to poke about fluidics i guess
<whitequark> the rest was scattered all around the room by the resulting explosion
<rqou> and i thought my runaway reaction was bad :P
<whitequark> and she got stuffed with deeply embedded glass shards from the poor flask
<pie_> 0_0
<azonenberg> whitequark: did she have... any lab safety training whatsoever?
<whitequark> for the next two weeks she's been taking them out with tweezers and sending me photos
<pie_> she's been or she'd been >_>
<marcan> ouch
<whitequark> azonenberg: actually, yes, I drill people on lab safety when I have the opportunity
<pie_> is this current
<whitequark> she had a full face respirator and gloves on
<pie_> thank god
<azonenberg> whitequark: but no lab coat or fume hood?
<rqou> so not my sketchy AF technique
<cr1901_modern> Carol never wore her safety goggles
<azonenberg> or blast shield?
<pie_> at least she didnt get a face full of glass
<whitequark> azonenberg: so the thing is I never instructed her on anything that could be an exotherm of this margin
<whitequark> or expected that she'll do it
<whitequark> that was a complete surprise to me
<awygle> cr1901_modern: ffffffuck that poster
<whitequark> we don't have a fume hood, only a fume extractor, or blast shield
<azonenberg> a piece of plywood with a bit of polycarbonate over a hole
<whitequark> this isn't a problem with the kind of reactions I do, and the way I do them
<azonenberg> is a perfectly fine shield
<azonenberg> But yes
<cr1901_modern> awygle: I mean, it was in high schools everywhere, right?
<whitequark> yes, I know
<awygle> cr1901_modern: certainly in mine
<rqou> for anybody who hasn't seen this (i think everybody here has except marcan): https://robertou.com/lab-notes-on-decapping-ics-with-sulfuric-acid.html
<awygle> I've heard more jokes about that damn poster than probably anything else in life
<awygle> lol
<marcan> oh, thanks!
<marcan> I'm trying to convince myself to finally start building enough of a chem lab at hackerfarm to decap/delayer
<whitequark> you probably shouldn't follow rqou's advice
<whitequark> lol
<rqou> lol
<marcan> lol
<rqou> i've since switched to RFNA
<rqou> less exciting in a number of ways
<whitequark> marcan: so a few tips
<whitequark> 1. aliphatic hydrocarbons have excellent resistance to almost anything, except mainly aromatics and halogens
<marcan> (as proud of I am of my amazing razor technique)
<whitequark> use polypropylene containers to contain spills, etc
<marcan> *as
<pie_> rqou, you should add a line next to the warnings to that one chemistry subforum of mishap threads or what was it
<whitequark> 2. separate storage for acids, bases, nitric, organic solvents, solid reagents
<whitequark> is mandator
<pie_> s/line/link/
<rqou> whitequark: does "opposite corners of the floor" count? :P
<marcan> define separate
<azonenberg> whitequark: i would say s/nitric/oxidizing acids/
bitd has joined ##openfpga
<azonenberg> i.e. perchloric counts too
<whitequark> azonenberg: right
<whitequark> uh
<whitequark> I wouldn't store perchloric, personally
<azonenberg> Me neither :P
<azonenberg> but it's an oxidizing acid
<azonenberg> when i started at $DAYJOB they had HAc and HNO3 right next to each other
<whitequark> ...
<azonenberg> I quickly corrected THAT
<azonenberg> at least the solvents were separated
<azonenberg> this wasnt dilute either, we're talking glacial acetic and WFNA iirc
<pie_> theyre just letters what culd go wrong
<rqou> oh i have that
<whitequark> marcan: different cabinets
<rqou> there's a cardboard box between them :P
<rqou> yes, i'm working on fixing this
<whitequark> preferably use polyethylene/polypropylene or stainless steel everywhere
<whitequark> stainless isn't very resistant but won't quickly react
<whitequark> polyethylene doesn't give jack shit, you can stick it into conc nitric or sulfuric with zero things happening
<whitequark> polypropylene too
<marcan> for the actual cabinet you mean?
<whitequark> you probably want a metal cabinet and a PP container with actual acid bottles inside
<marcan> makes sense
digshadow has joined ##openfpga
<whitequark> one tall PP container for acids one for bases one for oxidizing acids in the same cabinet is likely OK too
<marcan> fwiw there's a lot of wood shelves at the hackerfarm, which is probably a terrible idea for this stuff
<whitequark> and then you'd have another cabinet for organic solvents if any
<azonenberg> whitequark: i have a metal double walled cabinet with flash arrestors for my organic solvents
<azonenberg> then, across the lab
<azonenberg> a double walled HDPE cabinet with one shelf for liquid acids on the bottom and one for powdered basis on the top
<azonenberg> bases*
<pie_> marcan, idk if i was storing dangerous stuff at a public place id probably at least get a lockable heavy cabinet
<pie_> or something
<marcan> semi-public
<pie_> well yeah
<marcan> but yeah a lock is in order
<whitequark> azonenberg: your typical overkill way of doing things :P
<pie_> i mean you have a lot of people moving around that might not know whats what
<marcan> especially since the door has none
<whitequark> I mean it's quite good, there's very little that setup wouldn't stand up to
<marcan> (yes, you can technically walk up and use the SEM without permission; Akiba will probably get angry though :P)
* awygle burned his hand with glacial acetic in high school because he was told "it's just vinegar" by a substitute who didn't know what glacial meant
<whitequark> but a PP container from ikea is very good bang per buck too
<whitequark> marcan: what else.
<azonenberg> whitequark: yeah
* marcan opens up a notes file with this stuff
<pie_> flash arrestors?
<whitequark> if you use ether solvents do note that these oxidize in air and form peroxides
<azonenberg> pie_: little wire mesh screens that suck heat out from a flame
<whitequark> said peroxides then evaporate and condense inside the cap thread
<azonenberg> the idea is, if vapor leaking out from the solvent cabinet ignites somehow
<whitequark> they're also primary explosives
<azonenberg> you don't want it to flash back into the cabinet and ignite your bulk supply
<pie_> yeha um if the ##opefpga safety gurus could like go and write everything down that would be great ;P
<whitequark> so if you have an ether bottle dated, say, 2007
<pie_> (well sure its probably collected in other plavces)
<rqou> whitequark: according to this https://www.calpaclab.com/polypropylene-chemical-compatibility-chart/ PP isn't resistant against nitric acid
<azonenberg> whitequark: call the bomb squad? :p
<whitequark> basically yes
<whitequark> it MIGHT be ok to lift and move it, very carefully and with a good thick polycarbonate face shield.
<whitequark> might.
<azonenberg> the only peroxide i'm willing to store is 3% H2O2
<rqou> and supposedly PP only has a "fair" resistance against sulfuric?
<whitequark> I have 30% H2O2 in my fridge, it's perfectly fine
<azonenberg> and i avoid things that spontaneously perform peroxides even more :p
<rqou> azonenberg: that's going to make a really weak pirana :P
<whitequark> I need it for piranha
<whitequark> rqou: those charts are bullshit.
<rqou> wut whitequark what are you using piranha for?
<rqou> oh?
<marcan> 30% H2O2 is fine
<marcan> that much I've fucked around with making PCBs many years ago
<marcan> H2O2+HCl etchant
<whitequark> you still shouldn't put your fingers into it
<whitequark> ask me how I know
<marcan> except that one time I forgot to dilute it
<marcan> that PCB got made fast
<rqou> lol
<whitequark> lol
<pie_> lol
<whitequark> rqou: I mean, if you're building a chemical plant, you don't want to use PP pipes to move conc nitric around
<marcan> good thing it was at a giant exhibition hall. massively tall ceiling.
<marcan> the fumes dissipated fast :P
<marcan> (yeah it wasn't even at home)
<whitequark> but if you're just fucking around PP is plenty resistant
<rqou> hmm TIL
* rqou goes out to buy a ton of sterilite bins
<rqou> (they're cheap and PP)
<pie_> whitequark, but if those charts are bullshit wat do?
<whitequark> pie_: they're more like guidelines
<whitequark> for example
<pie_> rqou, if its made in china is it really PP
<whitequark> all the charts say that nitrile gloves aren't resistant against nitric
<whitequark> that's not true
<rqou> pie_: well, they're sold in brick-and-mortar stores in the US, so must be legit enough
<whitequark> sure, you probably shouldn't put your gloved hands into a large tank of WFNA
<rqou> wait, i thought RFNA will set them on fire?
<whitequark> oh I'm not talking about RFNA
<whitequark> never worked with that, never intend to
<whitequark> mostly about 70%
<whitequark> they don't even appreciably degrade from 70%
<rqou> oh yeah 70% is much less exciting
<pie_> :P
<whitequark> RFNA is no-no, use viton
<rqou> much lower chance of spontaneous nitrations
<pie_> man, well not that ill actually have a chem lab any time soon because leaving shit around my family is a nope.
<rqou> i use butyl rubber gloves for RFNA
<whitequark> or that
<whitequark> butyl is probably better
<whitequark> doesn't degrade in ketones
<whitequark> marcan: get yourself a 3M 6xxx or 7xxx series respirator
<rqou> the first time i synthesized rfna i didn't use gloves at all and triggered an "unintended xanthoproteic reaction" :P
<rqou> my parents were less than amused :P :P
<azonenberg> whitequark: what do you think of neoprene as a general purpose lab glove?
<rqou> $$
<azonenberg> rqou: you can buy them in the home depot for like $5 a pair
<whitequark> azonenberg: haven't considered it personally
<rqou> wait really?
<azonenberg> i use them around the house for insulation work
<whitequark> I think there isn't any good source in RU
<azonenberg> They're much more glass-splinter-resistant than other materials i've tried
<rqou> although i guess $$ is only on the order of $40 or so
<rqou> or less
<azonenberg> they flex and stretch rather than puncturing
<marcan> good to know re: glass splinters
<whitequark> yes, I should consider neoprene, too
<rqou> btw nitrated skin feels really really weird :P :P :P
<azonenberg> marcan: i cant comment on bigger, more solid stuff like broken glassware
<azonenberg> but they're my first choice of PPE for fiberglass
<whitequark> marcan: 3M respirators are great, both their full and half masks
* azonenberg has a 3M 6000 series full face and it's AWESOME
<whitequark> full masks have a PC shield so you're reasonably protected from explosions
<rqou> yup
<azonenberg> the intake valve sucks filtered air over the visor every breath
<azonenberg> i have been wearing that thing sweating buckets
<rqou> (see, i don't skip _all_ safety precautions)
<azonenberg> swimming inside a tyvek suit
<whitequark> I've seen PC safety glasses tested by shooting a nail directly into glass
<azonenberg> and there is zero fogging whatsoever
<whitequark> different model, but gives you an idea of why PC is great
<whitequark> very resilient material
<marcan> I wonder if I should get one and send my mom a photo (she was worried when I mentioned chemistry). and then she'll think I'm going to kill myself making explosives or something :P
<marcan> PC is great indeed
<marcan> I've used it in other contexts
<whitequark> the full mask is truly awesome but if you wear glasses that compromises the seal slightly
<whitequark> depending on the style of glasses
<whitequark> well, my glasses are OK, my roommate's glasses weren't
<whitequark> though she got LASIK
<azonenberg> whitequark: OK meaning you did an actual fit test?
<azonenberg> and the US army makes prescription inserts that can be worn inside protective eyewear
<whitequark> azonenberg: I checked that it is not leaking air, yes
<azonenberg> most major PPE vendors make goggles/glasses that fit those inserts
<azonenberg> i dont know how hard it is to get the lens blanks, havent checked
<whitequark> I think that's not really an option in RU
<azonenberg> But might be worth looking at
<azonenberg> i know uvex/honeywell makes a lot of stuff that those fit
<pie_> pff just tape your leness in
<pie_> lenses
<rqou> whitequark: a "put your hand on the filter" fit test or a test with e.g. isoamyl acetate and #compliance?
<whitequark> rqou: on the intake actually
<whitequark> that works better than on the filter
* marcan wonders where one buys respirators in japan
<rqou> amazon?
<whitequark> and it's in the manual for the respirator
<rqou> yeah, i do that too
<pie_> couly you like stick your face in water and see if it leaks
<rqou> apparently there are various #compliance test procedures that are more complicated
<whitequark> well
<awygle> if you want to drown...
<whitequark> so about test procedures
<whitequark> one time, I synthesized a reasonably large amount of sulfur dichloride and phosphorus pentachloride and wanted to get rid of both
<whitequark> the proper process is to hydrolyze them, of course
<whitequark> naturally, the former decomposes to SO2 + HCl vapor, and the latter to P2O5 and HCl vapor
<whitequark> also, protip
<whitequark> if you have a mixture of PCl5 and red P, do *not* just pour water into the flask
<whitequark> I did in fact expect an exotherm and these decomposition products
<whitequark> but I did not expect a nice long flame shooting out of the flask neck
<rqou> lool
<pie_> huh xD
<whitequark> (the flask survived)
<rqou> what are you planning to do with these compounds btw?
<whitequark> also protip #2
<marcan> nice
<whitequark> when you hydrolyze shit like that, you end up with a large cloud of HCl vapor that sits in your sink (and to my sheer surprise, it did not corrode everything around)
<whitequark> (probably chrome coating?)
<rqou> loool
<whitequark> so that seems OK at first
<rqou> i can see where this is going
<whitequark> but you must also understand that the cloud of HCl is also quite hot
<whitequark> so it starts to rise
<rqou> O_o
<whitequark> and a dense cloud of hot HCl slowly rising towards your head requires you to maintain composure quite well
<marcan> of course these things are twice the price on amazon.co.jp than amazon.com
<rqou> why were you not my chem teacher? :P
<whitequark> oh I should tell you all about my chem teacher
<marcan> whitequark: I did have that happen with the PCB etch bodge
<rqou> although my actual chem teacher was imo pretty awesome too
<marcan> everything around the area gained a subtle layer of rust
<whitequark> my chem teachers, even.
<rqou> interestingly most other people _hated_ my chem teacher
<whitequark> marcan: oh about rust
<whitequark> at some point, I was cleaning the vacuum chamber with a pickling solution
<whitequark> 3% HF, some HNO3 and HCl too
<whitequark> naturally, I did that in my kitchen, on a few sheets of PP
<whitequark> I only did not account for the damn thing emitting vapors, since it was a gel and didn't really look like it would do so
<whitequark> corrosion got EVERYTHING
<whitequark> stainless steel rusted like corrugated iron in acid rain
<pie_> TIL pay attention to vapors
<rqou> oh btw whitequark what's a good material for a work surface if i'm going to use rfna/sulfuric acid/HF?
<pie_> so what did you do about the rising cloud of hcl
<whitequark> rqou: PE.
<rqou> hmm
<rqou> ok
<whitequark> get a good thick sheet of HDPE and bolt it down to your table
<rqou> my current work surface is a scrap piece of granite
<pie_> sheet or tray
<rqou> which is probably an upgrade from "carpet" :P
<whitequark> tray is even better I suppose
<pie_> tray-like
<pie_> xD
<pie_> spills pls
<whitequark> granite is 1/3 alkaline feldspar
<pie_> when is rqou's house getting an SCP entry?
<whitequark> so, my chem teachers
<rqou> still better than carpet? :P
<whitequark> my chem prof in uni (the one who did lectures) joked about drugs a *lot*
<whitequark> and he somewhat resembled walter white
<marcan> there was a story around my uni of the former head of the chem department getting caught for running a drug operation
<whitequark> once he told us a cautionary tale of a student at the dept of chemistry of MSU who was caught because he made drugs that were too pure
<rqou> loool
<marcan> lol
<azonenberg> whitequark: like, all ingredients were ACS reagent grade? :p
<whitequark> azonenberg: you don't need that
<azonenberg> or just he was too good at workup
<whitequark> yes
<whitequark> it's a matter of, let's say we're making meth
<pie_> lol damn
<whitequark> since you're interested in the salt form, you need to carefully wash it with acetone multiple times to get rid of unreacted organic junk
<whitequark> and you need to recrystallize it at least once or preferably twice to get rid of the water-soluble contaminants
<azonenberg> Doesn't sound hard
<whitequark> exactly
<rqou> sounds like standard workup
<whitequark> it's not a question of complexity
* azonenberg has, to be fair, never actually looked into how to make meth
<whitequark> it's a question of *caring*
<azonenberg> but it sounds like standard workup for making stuff
<pie_> oething something making drugs is surprisingly easy
<whitequark> most drug manufacturers don't bother with standard workup
<rqou> pie_: don't you dare say that to nurdrage :P
<marcan> 3M half mask respirators seem to be reasonably affordable
<pie_> rqou, i mean i dont actually know but ive read stuff like that
<whitequark> they just get the concentration high enough to make the product sellable
<whitequark> and then it's all eating into margins
<marcan> https://www.amazon.co.jp/dp/B009S4FAOU still twice the price of .com, but eh
<azonenberg> whitequark: were you the one who linked the synthesis for pseudoephedrine with meth as a raw material?
<whitequark> that paper is famous
<azonenberg> that was hilarious
<azonenberg> "can't find good cold medicine but can get meth? Synthesize it" :p
<pie_> ohhh i remember that xD
<whitequark> amusingly, it would be doubly useful in russia, because russia doesn't have any pseudoephedrine decongestants on market ever
<whitequark> and never had
<whitequark> on the other hand, meth is cheap and plentiful
<rqou> pie_: nurdrage spent ~2 years synthesizing pyrimethamine (the thing that the "asshole pharma bro" jacked the price up) from stuff you can buy at the hardware store
<rqou> actually amazingly impressive
<whitequark> but the paper is kinda shitty
<whitequark> like it assumes a fairly well stocked chemical dept
<pie_> rqou, ah.
<azonenberg> well i doubt it was intended to be *used*
<whitequark> I'd have to go to like, Sigma-Aldrich for most of that stuff
<azonenberg> just a theoretically plausible synthesis :p
<pie_> also, * synthesizing meth is surpprisingly simple
<rqou> whitequark: thoughts on the nurdrage pathway? :P
<whitequark> no, that synthesis is perfectly normal *if you're working in a modern organic lab*
<whitequark> but most people who lack access to decongestants don't
<whitequark> I'm sure a much simpler one can be devised
<whitequark> rqou: haven't read into it in detail
<whitequark> oh fwi
<whitequark> fwi
<whitequark> RU regulates HCl
<whitequark> but not HI
<whitequark> because that makes sense somehow
<rqou> what
<rqou> anyways, https://www.youtube.com/watch?v=5kZi3J2S52E at 4 minutes
<whitequark> my teacher in high school was a guy who you'd think was slightly crazy
<whitequark> one time he carefully mixed perchlorate with red P in a mortar while telling us not to do it
<whitequark> then went ahead and hit it with a test tube holder
<pie_> rqou, looking at the background always makes me laugh
<rqou> background of what?
<pie_> the nurdrage videos
<pie_> that wrecked hotplate surface
<rqou> oh lol
<whitequark> the entire fume hood was filled with fumes, parts of the handle went to the back of the auditorium, and we all got momentarily deafened
<whitequark> it was fun
<whitequark> the other day he was showing synthesis of some metal carbide
<azonenberg> whitequark: lol
<pie_> nice
<whitequark> in a very very small crucible with a tiny cap
<rqou> yeah my chem teacher tended to be a lot safer and less "fun"
<whitequark> so he's heating a mixture of carbon and metal (aluminium I think?) with this biggest shit eating grin and telling us about it
<pie_> meh. /what/ teacher?
<whitequark> nothing happens for a while
<whitequark> then a loud bang and the cap of the crucible makes a dent in the ceiling
<pie_> whitequark, so, how many dents? xD
<whitequark> not sure, I determined that by the sound that it made when meeting concrete
rohitksingh_work has quit [Ping timeout: 248 seconds]
<rqou> whitequark you should teach me more chem :P
<whitequark> rqou: well sure
<whitequark> go to russia
<whitequark> no way in hell i do any of that in the states
<pie_> "the repeated demonstratory lectures in lecture hall ___ have compromised the static structure of the building."
<rqou> after i graduate, very overloaded right now
<whitequark> pie_: bwahahaha
<rqou> hmm, is it really that bad in the US?
<rqou> DEA hasn't knocked on my door yet :P :P
<whitequark> he also showed us liquid bromine
<whitequark> and he wasn't wearing a respirator
<whitequark> he just... fucking poured it
<pie_> rqou, people probably like you so far
<rqou> i'm also in berkeley fwiw
<pie_> rqou, need a few crazy exes
<rqou> i don't know if that's better or worse
<whitequark> rqou: I really wouldn't rely on that
<whitequark> the US is absolutely nuts
rohitksingh_work has joined ##openfpga
<whitequark> hell I wouldn't even do it in like, NL
<rqou> yeah, i noticed
<whitequark> or DE
<rqou> (the US being nuts)
<azonenberg> whitequark: see, my solution was to get a PhD and a business license
<azonenberg> and make my lab look as professional as i can
<whitequark> azonenberg: I still wouldn't risk it personally
<whitequark> even with a PhD and a business license
<rqou> but azonenberg is also white :P
<azonenberg> well i mean i'd avoid making drugs or other explosives etc obviously
<azonenberg> But for example, chems commonly used in decapping
<azonenberg> combined with a history of publications at industry conferences on doing silicon RE
<whitequark> that requires the agents to understand that you're avoiding making drugs etc
<azonenberg> is a pretty good explanation of why i have it
<rqou> azonenberg is a white male gun owner, so he can get away with anything :P :P :P
<whitequark> yes, that probably helps much more
<azonenberg> whitequark: well that was my point, the more "upper class" you look/act, the more likely they are to ask politely what you're doing
<whitequark> like I said, *I* wouldn't risk it personally
<azonenberg> rather than showing up at 2am with the swat team
<whitequark> because I'm a stinky foreigner
<azonenberg> well thats a whole other can of worms
<rqou> btw whitequark what does the news about the US look like in RU/HK?
<marcan> heh, good question that
<rqou> or JP/ES for that matter
<whitequark> and with what's happening between US and RU on diplomatic level I suspect soon enough being russian wouldn't qualify you as white much
* whitequark is reminiscent of nazis
<whitequark> rqou: define "news about the US"
<whitequark> local news in RU?
<rqou> sure
<whitequark> thanks but no I don't want to get brain rot
<rqou> oh lol
<whitequark> you don't watch fox news either
<whitequark> well there are a few decent publications, most of them federally banned
<whitequark> but that's mostly like following USian leftist twitter
<azonenberg> whitequark: so RT isn't a "decent publication"? :P
<whitequark> azonenberg: RT is export-only
<azonenberg> (do they have a domestic arm or is that entirely external-facing propaganda?)
<azonenberg> ah ok
<whitequark> I mean
<whitequark> it's the other way around
<whitequark> RT is the foreign arm of the state propaganda machine
<whitequark> you get more of the same shit if you turn on, like, any TV channel
<azonenberg> ah ok
<whitequark> some newspapers are just that
<whitequark> some are even worse
<whitequark> i.e. commie shit
<whitequark> yes, there are stalinist-leaning newspapers
<rqou> still?
<marcan> hey they make decent fansubs
* marcan hides
<whitequark> no, the only people who read them are old farts who still remember soviet union in all its glory
<whitequark> marcan: wait what
<whitequark> oh
<whitequark> ...
<marcan> I'm sorry :P
<rqou> i actually don't know what this is about
<whitequark> Commie Subs is a fansub team
<rqou> oh lol
<whitequark> what in the actual fuck is this website https://commiesubs.com/about/
<whitequark> is that reagan?!
<rqou> yes
<marcan> lol there's a theme switcher on the right
<marcan> I'm... hoping this is an april fools
<whitequark> lol the s;g one
<rqou> but it's not even the 1st anymore?
<marcan> they have a bit of a reputation for fansub shenanigans
<whitequark> their FAQ page says for "Who are you?"
<marcan> like randomly interesting typesetting
<whitequark> "A small group of “dedicated” “fansubbers” “devoted” to bringing the “best” possible “releases” to the field."
* azonenberg comes back to channel and o_O holy offtopic batman
<azonenberg> lol
<pie_> fpgas and silicon re is the real off topic
<azonenberg> :P
<rqou> btw did anybody other than me have fun with the "erisnet" april fools?
<pie_> :D
<marcan> also things like
<marcan> -rw-r--r-- 2 marcan marcan 298198105 Mar 17 2014 Nisekoi - 10 - Lottery [Commie][720p][12121212].mkv
<marcan> (guess what number was involved in said lottery)
<pie_> quads
<whitequark> lol
<whitequark> that's brutal
<pie_> rqou, the separation step in the pywhatever video was cool :D
<rqou> oh the nurdrage video?
<rqou> yeah, it's pretty interesting to see a precipitate forming its own layer
<rqou> whitequark: what do you think about the pathway in https://www.youtube.com/watch?v=5kZi3J2S52E at 4 minutes?
<rqou> it's a proof-of-concept only of course
<marcan> whitequark: also this is gold: https://www.youtube.com/watch?v=LLlytsgLcr4
<whitequark> rqou: I'm really bad at organic chemistry
<whitequark> I'm not qualified to comment
<rqou> really?
<whitequark> yes
<rqou> i see you doing organic stuff all the time though
<rqou> marcan: wtf "This video contains content from Sony Music Entertainment (Japan) Inc.. It is not available in your country."
<marcan> wat
<rqou> yeah lol
<rqou> i should spin up a JP linode
<pie_> vpn throguh aws or something
<pie_> ywah lol
<pie_> i actually vpn throguh my friends lan sometimes
<rqou> i thought normally people need to do the opposite
<whitequark> works in HK huh
<whitequark> marcan: that is
<whitequark> a lot of effort.
<rqou> copyright is dumb news at 11
<whitequark> rqou: well I'm trying to learn how to do orgchem properly
<whitequark> precisely because I'm bad at it
<rqou> is that what your recent experiments are for?
<whitequark> I really suck at theory, and I only mostly suck at practice
<whitequark> mhm, partly
<whitequark> I need SCl2 to get thionyl chloride
<whitequark> and I need thionyl chloride to do aminoalcohol cyclization
<pie_> "i dont think reactions performed in a soup can would pass medical grade certification"
<whitequark> that's definitely not to GMP
<rqou> lol nurdrage
* marcan just watched that nurdrage video too
<marcan> amazing
<whitequark> and I need aminoalcohol cyclization for an experimental route to [REDACTED]
<whitequark> that as far as I know has never been published in open literature
<whitequark> wtf
<marcan> yeah they went all out on that series
<rqou> whitequark are you trying to get pyridine? or trying to get some other thing that is normally made from pyridine?
<whitequark> pyridine is aromatic, you can't make it with aminoalcohol cyclization
<whitequark> well not in one pot, you need dehydrogenation
<whitequark> I need a substituted piperidine
<rqou> hmm
<rqou> yeah, i suppose i won't ask further
<rqou> hey azonenberg, i'm wondering what the ETA for your house is
<rqou> before or after i graduate? :P
<azonenberg> rqou: i need to be out of my current house in early to mid june at the absolute latest
<azonenberg> Hopefully, the new place will be livable at that time
<pie_> we should all just move in with azonenberg
<rqou> hmm so i'm hearing "hard to say"
<azonenberg> if not, i have several backup plans
<pie_> only problem is 'murica
<azonenberg> rqou: so, basically
<azonenberg> what has to happen is...
<pie_> hey azonenberg any ideas on how to transplant your entire house to RU
<rqou> i want to plan for if/when i need to go up and visit you again :P
<azonenberg> pie_: not happening
<azonenberg> :p
<azonenberg> rqou: Vacuum blow-in insulation from kitchen, living room, and bathroom ceilings
<pie_> :P
<rqou> HK?
<azonenberg> rqou: not there either
<azonenberg> Remove living room ceiling
<azonenberg> Remove stairwell ceiling
<pie_> we could make a space station
<azonenberg> Remove a few little bits of sheetrock hiding in other places (corners etc)
<pie_> shipping is gonna be a killer though
<azonenberg> Run a few power lines in the living room to connect strings of outlets i have there
<azonenberg> Run data conduit from the living room down to the cable trays in the first floor
<azonenberg> Run data conduit from 1.5 bedrooms (one is partially wired) down to the first floor
<azonenberg> Add a few wires and junction boxes to connect the overhead lights in the second floor together (right now i have switches wired to lights but no power feed to the switches)
<azonenberg> Figure out fan-out routing from the breaker panel to the cable trays
<azonenberg> Build a short (~2 foot) wall in the garage along a piece of bare concrete so i can put wiring on it
<azonenberg> Frame out walls in the office
<azonenberg> Wire those walls
<azonenberg> Do the electrical inspection
<azonenberg> Put insulation in all of the walls
<azonenberg> Get insulation inspected
<azonenberg> Hang sheetrock, get sheetrock inspected
<azonenberg> Tape and mud the sheetrock, install electrical fixtures
<azonenberg> Final electrical inspection
<azonenberg> Final inspection of the house prior to signoff by the building department
<azonenberg> Move in
<azonenberg> (oh, before hanging sheetrock I want to scrub and decontaminate all of the walls and floors to remove tobacco-scented dust)
<azonenberg> once i'm moved in, one room at a time will get emptied out, painted
<azonenberg> install trim
<azonenberg> install flooring
<azonenberg> then actually put furniture in a somewhat permanent location
<azonenberg> oh, and "install electrical fixtures" includes running cable tray and all of the "home run" wiring from the breaker panel in the trays to where they enter the wall
<rqou> wait, you haven't done any inspections?
<rqou> sounds like you're going to be waiting a while
<azonenberg> rqou: The plan is to do the decontamination during the inspection-wait period
<pie_> at about 4:30 in, https://www.youtube.com/watch?v=KKdzhPiOqqg we should maybe use an extractor like that for decap
<pie_> well i mean if i udnerstood correctly he's reusing the solvent somehow by boiling it back off or something so, idk if thats doable or economical or safer than the typical process
<azonenberg> rqou: that will take time
<azonenberg> also, once the demolition is done and we've removed smoke residue we can start moving our stuff over
<azonenberg> we can't legally *live* there but nothing stops us from storing stuff
<azonenberg> We'll also need some time to pack up our stuff and clean up the current house in preparation for moving out
<azonenberg> So the inspection lag is a perfect time for that
rohitksingh_wor1 has joined ##openfpga
rohitksingh_work has quit [Ping timeout: 255 seconds]
<whitequark> ... the state can prevent you from living in your own house?
<whitequark> talk about government overreach
<azonenberg> whitequark: basically once construction begins on a building
<azonenberg> it's not legal to live in until it's inspected to make sure it meets building code
<azonenberg> there's gray areas for partial remodels, like just a kitchen or bathroom or something
<azonenberg> but this is the whole house
<whitequark> in RU the only real requirement you have is to not compromise structural integrity of multi-apartment buildings
<whitequark> (people do that anyway)
<whitequark> (like removing a load-bearing wall because it's in the way)
<azonenberg> i mean, to be fair
<azonenberg> people routinely do construction without permits and inspections
<azonenberg> most of them get away with it
<whitequark> ah
<azonenberg> But i wanted to do this right because i wanted a second set of eyes to look at my work :p
<azonenberg> i've never done construction at this scale before
<azonenberg> i'm used to single room remodels
<azonenberg> so if i *did* do something stupid and unsafe i want to know
<azonenberg> it's actually funny, as i dismantled the place i've seen multiple sets of hands at work
<azonenberg> some are competent, some not
<whitequark> yeah that makes a lot of sense
<whitequark> I mean, assuming the inspectors are actually competent
<whitequark> and aren't going to just demand a bribe or something
rohitksingh_wor1 has quit [Ping timeout: 260 seconds]
<azonenberg> Yeah they generally are
<azonenberg> this isn't the moscow building dept :p
<pie_> yeah its america
<pie_> :P
<rqou> for the most part inspectors in the US aren't grossly incompetent
<rqou> if you want to be sad, you should be sad at city planners and zoning regulations instead
<rqou> something something the bay area is a f*cking disaster
<rqou> see: the thread that was floating around birdsite recently
<whitequark> oh yeah
<rqou> "the median sale price for a home in Palo Alto is $3.08M"
<whitequark> I am unfortunately informed about the Bay Area, uh
<rqou> i hadn't realized _just_ how bad it was until that thread and i live in the bay
<whitequark> everything
<whitequark> yes, I've read that thread
<whitequark> no, I don't know why
<rqou> and all the people who bought houses in the 2000s are saying "what's the problem? i only paid <not as unreasonable number>"
DocScrutinizer05 has quit [Read error: Connection reset by peer]
Ultrasauce_ has joined ##openfpga
mIKEjONES has joined ##openfpga
<pie_> can you actually get someone to buy a house for that price
plaes_ has joined ##openfpga
<rqou> maybe
<rqou> if you work in tech and make $BIG_NUMBER
bitd has quit [Ping timeout: 255 seconds]
<rqou> otherwise you're totally screwed
<whitequark> and it would still be a waste of money
<rqou> that too
<whitequark> the $BIG_NUMBERs aren't so big when you consider the rents
bitd has joined ##openfpga
SuperChickeNES has joined ##openfpga
Lord_Nightmare2 has joined ##openfpga
everbrew_ has joined ##openfpga
<pie_> dont want to commute? live in truck during the week, go home for the weekend :P
everbrew has quit [*.net *.split]
indy has quit [*.net *.split]
fouric has quit [*.net *.split]
Ultrasauce has quit [*.net *.split]
Lord_Nightmare has quit [*.net *.split]
Morn_ has quit [*.net *.split]
ChickeNES has quit [*.net *.split]
plaes has quit [*.net *.split]
mIKEjONE1 has quit [*.net *.split]
Lord_Nightmare2 is now known as Lord_Nightmare
<rqou> illegal
Morn_ has joined ##openfpga
<pie_> also logistically infeaasible but yknow
<pie_> whys it illegal
indy_ has joined ##openfpga
<rqou> living in a vehicle is illegal in many places because of reasons
<pie_> (something something these arent hot and wild guessing acid reactivity is exponential in temperature)
<pie_> so what are they gonna do...arrest you for being homeless? xD
<rqou> yes
<rqou> this happens
<pie_> yeah i figured
<rqou> no, it obviously doesn't fix the problem of people being homeless
Bike has joined ##openfpga
<rqou> in fact it probably makes the problem worse
<pie_> yeah this is pretty confusing
<rqou> although occasionally some people do it on purpose
<rqou> see for example the (multiple!) people that robbed a bank for $1 so that they could go to jail and get healthcare
<rqou> yes, this happened more than once
rohitksingh_work has joined ##openfpga
fouric has joined ##openfpga
<rqou> aaaanyways, it's super late; sleep time
rohitksingh_wor1 has joined ##openfpga
rohitksingh_work has quit [Ping timeout: 268 seconds]
<whitequark> azonenberg: btw, would yosys ever infer GP_IOBUF?
<whitequark> i.e. can I specify a bidirectional pin from verilog?
<whitequark> I don't actually *need* it, just curious
<whitequark> hm looks like iopadmap can do that
eduardo_ has joined ##openfpga
eduardo__ has quit [Ping timeout: 264 seconds]
<whitequark> azonenberg: wait
<whitequark> where do I get timing.json? :D
indy_ is now known as indy
Bike is now known as Bicyclidine
indy has quit [Read error: Connection reset by peer]
indy has joined ##openfpga
<pie_> now i know why rqou mentioned hydrogen and carbon monoxide detectord the other day
<pie_> newest nurdrage video.
rohitksingh_wor1 has quit [Read error: Connection reset by peer]
<Ultrasauce_> oh no i missed the weeb roll call
<pie_> o no
* pie_ adds Ultrasauce_ to (poser) watchlist
<cr1901_modern> Ultrasauce_: Prob for the best
<pie_> cr1901_modern, nooo :P
pie_ has quit [Read error: Connection reset by peer]
pie_ has joined ##openfpga
DocScrutinizer05 has joined ##openfpga
soylentyellow has quit [Ping timeout: 255 seconds]
DocScrutinizer05 has quit [Remote host closed the connection]
DocScrutinizer05 has joined ##openfpga
<pie_> can paperclips be put in the metals recycling bin?
<pie_> well, cans or what
<jn__> pie_: <stupid>No, they're made of paper!1</stupid>
<pie_> ugh xD
cr1901_modern has quit [Read error: Connection reset by peer]
cr1901_modern has joined ##openfpga
<qu1j0t3> pie_: don't you get guidelines
<pie_> i havent gotten any :P
<qu1j0t3> then go to the city's web site
<pie_> its probably an aluminium only thing though
<pie_> and paperclips are probably steel
<pie_> is consumer waste even comparable with industrial waste
<awygle> rqou: re: going to prison on purpose for food/shelter, I was punched in the head by a homeless man in front of a cop in downtown Seattle once for that reason
<qu1j0t3> pie_: Well you have to check what they actually accept.
<pie_> wow kde just messed somehting up and copied from the wrong graphics buffers... 'xD
<Ultrasauce_> the compositor is my least favourite part of kde
azonenberg_work has quit [Ping timeout: 255 seconds]
noobineer has joined ##openfpga
<pie_> its actually the task bar area
<pie_> seems to have come from firefox though so maybe hacks involved there
<pie_> actually no nevermind about firefox
rohitksingh has joined ##openfpga
rohitksingh has quit [Quit: Leaving.]
azonenberg_work has joined ##openfpga
noobineer has quit [Ping timeout: 265 seconds]
cr1901_modern1 has joined ##openfpga
cr1901_modern has quit [Ping timeout: 240 seconds]
cr1901_modern1 has quit [Read error: Connection reset by peer]
cr1901_modern has joined ##openfpga
<pie_> lmao wtf i think facebook chat renders latex now?
<awygle> two things I hope never to encounter again
<pie_> yeah it renders at the least basic latex holy shit xD
<azonenberg_work> pie_: it's done this ofr a while
<azonenberg_work> for*
<pie_> well i didnt know
<qu1j0t3> that's kind of ... unexpected
digshadow has quit [Ping timeout: 240 seconds]
azonenberg_work has quit [Ping timeout: 256 seconds]
<rqou> awygle: O_o wtf
<rqou> we're MAGA-ing very well aren't we /s
<awygle> Well this was 2008... But yes.
<awygle> Err no. 2012.
digshadow has joined ##openfpga
<kc8apf> awygle: yes inout can be used in Verilog. Vivado infers tristate buffers if all connections the net are inout. The analysis only works if you flatten the design though. Module boundaries break the analysis.
<digshadow> kc8apf: what step are those converted to muxes
<digshadow> or you mean on I/O?
<kc8apf> elaboration turns them into RTL_TRISTATE
<kc8apf> synthesis maps them onto muxes
<kc8apf> if I remember right
<rqou> hmm random thought: i wonder if "classic" vendor cpld logic minimization is based on BDDs rather than AIGs
<rqou> AIGs don't seem to be the best fit
<awygle> kc8apf: so if the netlist has to be flattened, and inout has to be on ports, doesn't that mean that inout can only be used on exerterior ports, I.E. pins?
<kc8apf> no. You can have a net inside a module marked inout. Drivers assign either 1'b1 or 1'bz. Loads just read as normal.
<kc8apf> it will get inferred as RTL_TRISTATE and then implemented as a set of muxes
<kc8apf> easy way to represent a multi-drop bus
<awygle> hm.
<kc8apf> modules breaking the inference is a bug in Vivado's infrencing logic
<rqou> um, i heard that this feature is pretty dangerous
<rqou> fun thing #1 is that in ancient xilinx fpgas it would actually map to internal tristates
<rqou> and (historically) this feature had bugs
moho1 has quit [Quit: WeeChat 1.9.1]
azonenberg_work has joined ##openfpga
<rqou> O_o
<rqou> i think berkeley finally fixed "print anything from anywhere"
<rqou> that took long enough
<pie_> aww
<balrog> rqou: lol...
<rqou> yeah i'm disappointed
<rqou> i wonder if they noticed me specifically or if they noticed weev
<rqou> or if it's just a general "improve security practices" thing
<kc8apf> rqou: it's broken enough that it requires much care to have it work correctly
<rqou> printers or verilog tristates?
<kc8apf> yes
<rqou> "yes"
<rqou> ok
<rqou> :P
mumptai has joined ##openfpga
moho1 has joined ##openfpga
moho1 has quit [Client Quit]
moho1 has joined ##openfpga
<pie_> rqou, should have made a printer botnet while zou could
<rqou> i mean, you have physical access to the printers
<rqou> awygle, azonenberg: should I send this PR?
xdeller has joined ##openfpga
<awygle> rqou: what pr is that?
<rqou> oh wtf clipboard fail
<awygle> definitely
<rqou> will i get flamed for sending this?
<rqou> hopefully i don't get flamed too badly
<rqou> O_o abc has _travis_ now?!
<rqou> oh god
<rqou> abc has vendor-ed copies of zlib and bzip2
<rqou> that are ancient with known CVEs
<rqou> which is ok in this application, but still
user10032 has joined ##openfpga
<kc8apf> awygle: threw some object graph sketches in gaffe's master branch. Write up on what they mean is next.
<rqou> er, what is this project?
user10032 has quit [Quit: Leaving]
noobineer has joined ##openfpga
<digshadow> rqou: what inspired you to do abc cleanup
<rqou> i was looking into handling "XOR of sum of product with another product"
<rqou> and the file that implements that is covCore.c which is particularly bad at having random junk
<rqou> ~half of that file was junk code
<rqou> and `grep "#if 0"` is pretty straightforward
<digshadow> gotcha
Bicyclidine is now known as Bike
<kc8apf> rqou: were you asking about awygle and my project?
<rqou> yeah
<kc8apf> we were both independently thinking of how to build something like LLVM as a framework for working with logic
<kc8apf> so we're exchanging notes and prototyping ideas
<kc8apf> I'm more focused on backend (bitstream generation) and awygle is more middle-end (PnR, etc)
<rqou> isn't yosys already considered the llvm of logic? or is there more stuff you want to handle?
<kc8apf> I've had a really hard time figuring out how PnR and bitstream generation would be added
<cr1901_modern> It's not yosys
<cr1901_modern> ' job*?
<sorear> does PnR exclusively mean FPGA PnR?
<kc8apf> right. Hence why we're experimenting with something that handles the whole flow from Verilog->Bitstream
<awygle> "verilog to routing", if you will :P
<awygle> (actually please don't)
<kc8apf> sorear: no. Ideal is to make the framework that allows new passes to be implemented easily
<awygle> sorear: not necessarily. i don't really know much about ASICs but the ideal is to avoid making things so specific that it's exclluded as a possibility
<kc8apf> so targeting an ASIC would be writing a different set of passes and probably a different IR for the backend
<awygle> ^ what kc8apf said
<kc8apf> My goal is to provide a way for people more knowledgeable than me to experiment and extend
<kc8apf> FWIW, I have near-zero interest in doing the front-end work of a Verilog parser
* awygle has... more than zero interest in that
<cr1901_modern> yosys has an incredible number of features and introspection capabilities (most of which I don't even use right now!) or examining how it changes input Verilog. I'm hard pressed to replace it, especially when new pnr tools come out for other families
<awygle> but it's not my initial priority
<qu1j0t3> is that near-zero as in positive or negative
<kc8apf> I may add a BLIF parser just so I can use post-techmapped output from Yosys
<awygle> i would see a BLIF parser, and/or an ilang parser, and/or a yosys json parser, as a requirement in the near term
<kc8apf> qu1j0t3: within a ULP
<awygle> so that we don't _have_ to write a Verilog parser
<cr1901_modern> I guess my question is, what is the long term advantage of duplicating what yosys is capable of in exchange for having "a single tool that does everything"?
<awygle> that's a good question with a complicated answer
mumptai has quit [Quit: Verlassend]
<kc8apf> cr1901_modern: honestly, my goal is to unify the bitstream generation info into one tool (ala binutils)
<kc8apf> using those abstractions to build higher-level tools is more awygle's area
<awygle> my major goal is to reduce the friction of _different_ tools trying to work together, rather than generate one giant supertool
<awygle> for example an explicit goal of this project is to be FFI friendly. so if i want to glue the GHDL parser to it, i can do that.
<kc8apf> I'm scratching my itch that the RE info for various chips is sitting idle, waiting for some toolchain to pick it up
<cr1901_modern> I mean, this is why we agreed to use a superset of the ucf format that arachne-pnr uses for gp4par for instance
<awygle> i hate the way we end up with four partial implementations of e.g. verilog, and so nobody can use more than a crappy subset of features with confidence
<cr1901_modern> If you're writing Verilog for GP4, I'm pretty certain you're not writing portable code anyway
<awygle> i'm just generally frustrated with the ecosystem in a lot of ways and so i want to explore what the big hammer solution to my problems looks like
<awygle> it might be that we come up with something and then look at it and say "oh wow that's an impossible task, we'd better radically downscope" but i want to start with an ideal and trim it down, i guess
<cr1901_modern> It could very well work- llvm handles a bunch of targets w/ varying feature sets just fine (I _think_?). I'd personally rather see standardized exchange formats and libraries, and the applications (pnr, bitstream) themselves for each family can tailor said libraries and input from exchange formats as they wish
<rqou> kc8apf: you know that project14 and all of the misc. CPLD work is currently explicitly not intended for toolchain dev, right?
<rqou> it's intended for RE only
Lord_Nightmare has quit [Ping timeout: 248 seconds]
<cr1901_modern> project2064 bitstream generation would be funny as a joke, but totally not worth the pain
<rqou> pretty much
Lord_Nightmare has joined ##openfpga
<awygle> cr1901_modern: i mean, that's basically the idea. a standardized exchange format (actually two, one for disk/network and one for in-memory/FFI), a set of standardized graph-manipulation libraries, and a bunch of programs that operate on those formats at the appropriate level of abstraction (be that AST, generic netlist, target-specific netlist, or actual bitfile).
<rqou> so would my rust yosys-netlist-json crate count as part of the ecosystem?
<awygle> sure. although probably we'd want to do a rust yosys-netlist-json-to-gaffe-ir crate. iirc you basically reimplemented the RTLIL structures?
<sorear> what if we make RE formally part of the toolchain, and when you add toolchain support for 2064 you get both bitstream generation and RE at the same time
<rqou> that's _hard_
<rqou> every architecture has to have a stupid different quirk
<rqou> awygle: not really? there's nothing exactly analogous to RTLIL in my code
<awygle> that's essentially the dream, though. and ideally the "architecture's stupid quirk" applies equally to synthesis and RE extraction since the problems are duals of each other
<awygle> that's the whole power of azonenberg's hardwear project, isn't it?
soylentyellow has joined ##openfpga
<rqou> hmm, so you would somehow have to encode quirks like e.g. "LUTxx_yy can't use feature F on chip C" throughout the entire stack?
<sorear> more to the point i'm postulating that bitstream generation will make RE easier to test and vice versa
<awygle> no, the idea is that you get out of "machine-specific land" before you do e.g. counter extraction. so you'd go from a bitstream to a machine-specific IR, then to the generic IR, and do higher level structural analysis in the generic IR
<rqou> we already do that?
<awygle> i know we do
<awygle> well, sort of
<rqou> yeah, a lot of it is manual and/or violates abstraction barriers
<rqou> hmm that reminds me
<rqou> i should really really go refactor that
<cr1901_modern> machine-specific IR != text repr of bitstream showing interconnects?
<rqou> well, in my code there are two machine-specific IRs :P
<rqou> one older "dynamically typed" one and a newer "statically typed" one
<rqou> and they're both "arrays of structs"
<rqou> i tend to prefer really dumb data structures whenever possible
<cr1901_modern> I'm asking "what's the difference?"
<rqou> i don't have a text IR
<rqou> well, technically i do
<rqou> it's "whatever serde-json does with my data structure"
<rqou> (note that this isn't stable)
<awygle> cr1901_modern: it would be a non-text IR that you could serialize to a text-based IR in a standardized way.
<awygle> this is all pretty early days, i hasten to emphasize
<rqou> also, not every data structure can currently be deserialized due to the lack of type-level integers and my inability to understand how to work around this
<cr1901_modern> So basically take the text repr of the bitstream and represent it as a graph in memory?
<cr1901_modern> or on disk*?
<rqou> why text representations?
<cr1901_modern> It's the smallest "unit" of transformation possible
<rqou> it's starting to sound like all of us have different ideas of what we want
<rqou> and none of us have looked much at each other's code/designs
<cr1901_modern> I mean, I have no horse in this race, so feel free to ignore me :P
<awygle> which is why kc8apf and i are each semi-independently writing down our thoughts
<rqou> so what about my already-existing implementation?
<rqou> or icebox?
<awygle> and trying to get on ~the same page before writing a bunch of code lol
<cr1901_modern> I'm just making mental notes of "I like X idea" or "Oh God I don't like Y idea". And asking for clarification when "I don't understand Z" :D
<awygle> there's a bunch more studying to do, definitely
<awygle> i want to look at rqou's implementation, icebox, FIRRTL, vvp, and probably a few others that currently escape me
<cr1901_modern> Pretty sure vvp is for simulation only (also, there be dragons)
<awygle> also i should probably comprehend the actual openfpga repo at some point :p
<sorear> can the machine-specific IR for an arbitrary vu440 bitstream be loaded into memory on a normal-sized machine?
<awygle> cr1901_modern: sure, but it findamentally has to solve a bunch of the same problems
<digshadow> kc8apf: the best things are those that scratch an itch
<awygle> sorear: a VU440 is ~6M primitives. depending on the number of edges in that graph, no reason it wouldn't fit in memory
<awygle> sorear: also, if you're working with a VU440 you're almost certainly not using a "normal-sized" machine :p
<cr1901_modern> Lemme guess, that's the biggest FPGA in the world
<awygle> doubt it
<rqou> huh, this reminds me that i should really investigate the "xc2bit overflows the stack" issue that i've been punting on
<cr1901_modern> (IIRC Xilinx's biggest offering is 4 smaller FPGAs in a single package)
<rqou> (you can work around it by doing `ulimit -c unlimited`)
<rqou> *-s
<sorear> it's the biggest one I have docs saved for. 1B bitstream bits, and if you have any significant amount of per-bit metadata instead of handling the topology algorithmically you will have a bad time
<awygle> huh, actually, maybe
<awygle> i was guessing Stratix 10 or VUP would be bigger but it doesn't look like it
<rqou> er, why? if each bit takes up 1 byte of space that's only 1GB
<awygle> that's also a fully-specified bitstream, i.e., a dense graph. you can do a sparse graph representation of your actual netlist.
<rqou> unless your fpga is 100% full? :P
<awygle> unless you're using 100% of the routing resources, which would be interesting lol
<rqou> you'll be PAR-ing it for a week :P
<sorear> rqou: i'm wondering if the tools under development take 40-100 bytes per bitstream bit
<awygle> sorear: we'll let you know when we know? early days. but memory pressure is definitely important to consider.
<rqou> ok, that's 40-100GB, which is still just barely within "single machine" sizes
<awygle> (i suspect vivado takes... Rather More than a byte per bit)
<rqou> last i checked the xc2bit data structure was "huge"
<rqou> it was iirc on the order of one whole megabyte
<rqou> iirc azonenberg wasn't too impressed
<rqou> since this doesn't fit on most microcontrollers
<rqou> and the largest cpld only has about 300k bits
bitd has quit [Quit: Leaving]
<awygle> Oh hey azonenberg can chew me out for overambition in person assuming he's going to the fpga thing tonight
<digshadow> awygle: having a group dinner?
<kc8apf> fwiw, my experiments are starting from prjxray. Going from bitstream -> SeriesIR is definitely on my dev path
<kc8apf> taking that back to higher-level IRs is a TBD
<awygle> digshadow: there's a pnw fpga meet-up planned by Jan Gray and futan (whose real name I do not know)
<rqou> lol i don't know either of those people
<sorear> jan gray, neat
<kc8apf> one of the few weekends I'm not in SEA :(
<digshadow> what is PNW?
<kc8apf> pacific northwest
<digshadow> gotcha
<awygle> Yes, that. 15 miles and an hour and a half from my house :-P
<awygle> (probably a slight exaggeration)
<kc8apf> so, my daily commute
<kc8apf> whole bay area is terrible
noobineer has quit [Ping timeout: 240 seconds]
<digshadow> kc8apf: could you flex your hours to avoid the traffic
<kc8apf> already do
<kc8apf> apparently not enough
digshadow has quit [Quit: Leaving.]
digshadow has joined ##openfpga