kuldeep_ has joined ##openfpga
cyozap_web has joined ##openfpga
<cyozap_web> pointfree: My thoughts exactly. I've alsobeen able to run the synthesis and P&R executables under Wine without much issue, but their command line options are so cryptic I didn't explore them much further.
<pointfree> cyrozap_web: codegentemp/placer.log shows the necessary command line options and files need to run sjplacer.exe (Softjin Placer)
<cyozap_web> pointfree: I'm also thinking we should maybe write a .route file parser, too, so we can automate matching the routes->bits
<cyozap_web> pointfree: Also, since I can't seem to remember, do you know what the intermediate format(s) between warp.exe and sj*.exe are?
cyozap_web has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
Tenacious-Techhu has quit [Ping timeout: 260 seconds]
<pointfree> cyrozap: Yes, I converted the config.hex to a config.bin with hex2bin and parsed it easily with one line: http://hub.darcs.net/pointfree/psoc-rebit/browse/configbin.4th
<pointfree> I haven't used warp.exe. What is it?
<pointfree> I'm thinking we should write something for RE in a more popular language that we can all use, such as Rust when we get into parsing the .route file etc.
<pointfree> We can isolate bigger things than just individual bits. I think we could also isolate bytes and tiles etc.
<pointfree> I've found that Mill's Methods are very similar to "from bitstream to netlist" but they go further. https://en.wikipedia.org/wiki/Mill's_Methods
<pointfree> .route config.bin
<pointfree> bitstream #1: A B C D occur together with w x y z
<pointfree> bitstream #2: A E F G occur together with w t u v
<pointfree> Causation can happen between any number of elements on the right and left and in any arrangement.
<pointfree> However the causal structure cannot change between rows.
<pointfree> Method of Residue can be used to pull in previously isolated things such as blocks and tiles for isolating other things.
<pointfree> bitstream #1 and bitstream #2 can be replaced with tile #1 and tile #2 as these things are isolated or found to have the same structure. (This is already known)
<pointfree> I'm looking to tie all of Mill's Methods together so they work together.
Strikerteam007 has joined ##openfpga
Strikerteam007 has quit [Quit: Fucked Off]
Tenacious-Techhu has joined ##openfpga
kuldeep_ is now known as kuldeep
ZipCPU|Laptop has joined ##openfpga
<cyrozap> Tenacious-Techhu: Packaging on OS X is a total pain, and OS X's package management system (if you can even call it that) is far less powerful than even Homebrew. Have you ever tried to uninstall an OS X package without a vendor-provided uninstaller? It sucks, and you have to go use the command line to do it, anyways. In Homebrew, you just `brew install`, `brew uninstall`, and if you really want to
<cyrozap> uninstall all the extra stuff a brew formula pulled in, you can take a look at the package's dependencies and uninstall it along with all the newly-orphaned packages.
<cyrozap> Tenacious-Techhu: Also, the driver issues you're having seem to be caused by Apple not including a way to unload a driver for only one device.
<cyrozap> Tenacious-Techhu: I take offense to your assertion that Linux developers "need to learn proper cross-platform design". Why should I spend my free time writing software to support a proprietary operating system I don't use, that only runs on expensive hardware I don't own?
pie_ has joined ##openfpga
pie_ has quit [Changing host]
pie_ has joined ##openfpga
<cyrozap> pointfree: warp is Cypress's synthesys tool
pie__ has joined ##openfpga
pie__ has quit [Changing host]
pie__ has joined ##openfpga
pie_ has quit [Ping timeout: 248 seconds]
gnif has joined ##openfpga
<gnif> Hi All, this might not be the place to ask this, but I need a 2nd eye on the output of OpenOCD to verify I have wired up my JTAG adaptor to a target for reverse engineering properly. It seems to be working, but I am unsure as the doco for this board are not available.
<gnif> I am seeing a TAP duing the auto probe with an id of 0x000000, first on the chain
<gnif> Here is the output from OpenOCD, http://pastebin.ca/raw/3754944, the target is a BCM63168 in a VDSL router
<Tenacious-Techhu> cyrozap, that’s nonsense; you trash the Application bundle, and you delete any associated preference files. It’s not at all hard.
<Tenacious-Techhu> “Take a look at the package dependencies” my ass; I shouldn’t HAVE to look at package dependencies.
<Tenacious-Techhu> cyrozap, all I’m saying is, no one should pretend that the job is done just because it’s available through Homebrew. The job is done when it’s an App you can drag to the Applications folder.
<lain> or an installer on windows, or a package for every linux distro
<lain> there's too many people to satisfy
<jn__> and BSD!
<lain> jn__: of course
<Tenacious-Techhu> BSD has bsdports; they don’t need application level support, because that isn’t their intended user experience.
<lain> I tried solving this for something I did some years ago by buying a Magic Ermine license for linux and BoxedApp Packager for windows and packaging as an app for osx, and then distributing a single binary for each platform that just works
<lain> and then people threw hissy fits because it's not a package for <insert distro here>
<lain> and because it's a binary blob which is "inherently evil"
<lain> (it wasn't open source software...)
DocScrutinizer05 has quit [Disconnected by services]
DocScrutinizer05 has joined ##openfpga
<Tenacious-Techhu> lain, that’s exactly the point; the Linux people are all, “Binary blobs are evil!”; whereas the Windows and Mac OS guys are all, “Binary blobs are THE ENTIRE POINT!”.
<pie__> lain, i cant really comment but if the installer is not a binary blob at least you still have a chance to install it on an unsupported platform
* pie__ runs
<lain> pie__: yeah, in this case there was no installer, it was just an executable that just runs the app
<Tenacious-Techhu> Devs should give the end-users what they expect, not what they themselves prefer.
<pie__> oh
<lain> everything was either statically linked in or packaged with Ermine or BoxedApp Packager
<pie__> lain, well some peopleyou just ignore i guess xD
<lain> both of which effectively virtualize the filesystem from the app's point of view, so config files, libs, etc, are all baked in
<lain> yeah
<pie__> well, past reasonability
<lain> it's not like I lost any sleep over it :D
<lain> I mean, for isostick I was also told that I should support UFS filesystem
<lain> which... I'm not dissing whoever suggested that, I don't even remember who it was
<lain> it's just totally unreasonable from a commercial perspective
<lain> I have this device, it accepts microSD cards and presents a flash drive and cdrom to the computer over usb - microSD to the flash drive, an iso on the microSD to the cdrom
<lain> it uses fat32 because everything speaks fat32
<Tenacious-Techhu> Mac OS can boot from UFS sometimes, but people are more likely to use HFS+.
<lain> the main issue with fat32 is 4GB file size limitation, but it supports split files to work around that
<lain> not as nice as it could be but eh.
<lain> I looked into exfat but it's a mess, legally and technically
<lain> and nothing else is "universal" that I'm aware of
<lain> </rant>
kuldeep has quit [Remote host closed the connection]
kuldeep has joined ##openfpga
<Tenacious-Techhu> Yeah, it makes cross-platform NAS applications difficult.
<pie__> ohfat32 has an actual split files thing? i thought people meant manually splittinf files whenthey mentioned that
<pie__> i need to figure out why my spacebar is so unreliable at some point...
kuldeep has quit [Read error: Connection reset by peer]
<lain> no, they mean literally splitting files
<lain> like with the `split' utility
<pie__> oh ok
<lain> :3
<pie__> :(
<lain> fat32 is a mess lol
<lain> long filename support is a clever hack though, I will give them that
kuldeep has joined ##openfpga
<Tenacious-Techhu> If you run the split utility on a Banana Pi, do you get a Banana Split Pi?
<pie__> i ran into the 4gb issue a few days ago when i forgot to reformat a drive to ntfs
* pie__ splits
kuldeep has quit [Read error: Connection reset by peer]
<lain> Tenacious-Techhu: nice
kuldeep has joined ##openfpga
kuldeep has quit [Read error: Connection reset by peer]
kuldeep has joined ##openfpga
pie_ has joined ##openfpga
pie_ has quit [Changing host]
pie_ has joined ##openfpga
<Tenacious-Techhu> Circumstantial comedy is my specialty; I can usually do better. :)
JvD has quit [Disconnected by services]
<cyrozap> Tenacious-Techhu: I was referring to *.pkg files that get installed by Installer.app.
<Tenacious-Techhu> cyrozap, what about them?
<cyrozap> You can't just drag them to the trash to uninstall them
<Tenacious-Techhu> cyrozap, things packaged that way can be uninstalled the same way.
<Tenacious-Techhu> The installer is its own uninstaller.
<cyrozap> gnif: You'd probably have more luck asking in #openocd or #openwrt. That said, have you made sure your irlen is correct? An irlen of 2 (as OpenOCD auto-detected) is unusual for something like a SoC.
Marex has quit [Ping timeout: 260 seconds]
<gnif> cyrozap, yes, I would think it is incorrect also, but no idea how to confirm what it should actuall be
Marex has joined ##openfpga
<cyrozap> Tenacious-Techhu: Can you please point me to a set of instructions that can show me how to do that?
<cyrozap> gnif: Try `openocd -f target/bcm6348.cfg`
<gnif> cyrozap, I have already tried to use that target, the expected IDs do not mach, been trying to build my own configuration
<Tenacious-Techhu> cyrozap, you mean to package things into that installer package properly?
<cyrozap> Tenacious-Techhu: No, to uninstall a .pkg that was provided without an uninstaller, without using pkgutil.
<Tenacious-Techhu> cyrozap, you just open the installer again, and select uninstall instead of install. :P
<cyrozap> gnif: Oh, so I assume you've already tried it with the detected ID?
<gnif> cyrozap, yes
<cyrozap> Tenacious-Techhu: Opening the .pkg again just offers to install the package again.
<Tenacious-Techhu> cyrozap, what exactly are you uninstalling?
<cyrozap> Tenacious-Techhu: The files that were installed by the .pkg file.
<Tenacious-Techhu> Right, but what specific .pkg?
<cyrozap> gnif: Hmm, well, definitely ask over in those other channels. Good luck with the RE!
<gnif> cyrozap, thanks mate :)
<cyrozap> Tenacious-Techhu: Custom thing I made for work. It installs a file somewhere, then uses a script to copy the file to a directory based on some auto-detected stuff.
<cyrozap> Tenacious-Techhu: I've never encountered a package that offered to uninstall itself--I would always have to just run the separate uninstaller package (if there was one).
<Tenacious-Techhu> cyrozap, properly done, the .pkg will include an uninstall script too; it’s been ages since I’ve had to do it, so I don’t recall where exactly to find it; it’s the sort of thing you just remember how to do when you need to do it, so I’m sorry I can’t give you more detail than that.
<Tenacious-Techhu> Usually, it’s not complicated, and it’s just a button you click, or a menu option you select.
<balrog> A .pkg installer doesn't have to have an uninstall script and most don't have one
gnif has left ##openfpga ["Leaving"]
<cyrozap> Tenacious-Techhu: Oh, are you talking about generating packages with some kind of tool?
<cyrozap> balrog: Thank you, I thought I was taking crazy pills for a while there :P
<Tenacious-Techhu> balrog, even if that’s true, the ones made by responsible developers either will have an uninstall script, or will have some other means of uninstalling properly.
<balrog> Quite a lot don't
<Tenacious-Techhu> Yes, irresponsible developers abound these days. That’s pretty much what got us into this conversation. :P
<pie__> heh
<Tenacious-Techhu> Regardless, a .pkg without an uninstaller is still way less of a mess than anything Homebrew does. :P
<Tenacious-Techhu> And I should be off for the night, so if you really need to talk about it some more, you’ll have to catch me another time.
Tenacious-Techhu has quit [Ping timeout: 260 seconds]
flaviusb has joined ##openfpga
Bike has quit [Quit: seize da means of production, doc]
clifford has quit [Ping timeout: 260 seconds]
lain has quit [Ping timeout: 268 seconds]
lain has joined ##openfpga
m_t has joined ##openfpga
clifford has joined ##openfpga
<jn__> if Tenacious-Techhu paid someone to package the icestorm toolchain, he'd probably get what he wants
<balrog> jn__: what does he want? I didn't read the logs
<ZipCpu> balrog: He's looking for a mac capable icestorm set of tools.
<balrog> ahh
<balrog> yeah, use homebrew :|
<nats`> it's an help vampire
m_t has quit [Remote host closed the connection]
m_t has joined ##openfpga
<pointfree> cyrozap: Thanks for the pointer on warp.exe
<pointfree> the .rpt file has more commands to be run and references warp.exe
<pointfree> I've been writing some scripts for using the Cypress CLI tools on Linux: http://hub.darcs.net/pointfree/psoc-cli-tools
<pointfree> Anyway, placer.sh works and runs sjplacer.exe just fine on Linux.
<pointfree> I'm not yet sure where placer.sh will go in relation to warp. I guess I will have to look at generated output file dependencies.
<pointfree> Hopefully I can get a Linux workflow going soon.
eduardo__ has joined ##openfpga
eduardo_ has quit [Ping timeout: 245 seconds]
<pointfree> I think I would still need something else to build all the C and asm code of a project, but that's less important for RE'ing.
<pointfree> Apparently cydsfit.exe from the top of the .rpt file will call all the tools that do synth, routing, and placement.
* rqou is very jetlagged :(
<rqou> jumping GMT+1 to GMT-8 sucks
<nats`> :D
<pointfree> I'm thinking the LUT would have to be written in Verilog with PSoC Creator not selected from the drag-and-drop components.
<pointfree> The project_name.v files are auto-generated and overwritten each time one builds.
<pointfree> Next up: modify a LUT on Linux and try synthesizing it on Linux
<pointfree> The script takes the project name and workspace as arguments and works on Linux (for the configurable logic)
Ardeshir has joined ##openfpga
seu has quit [Read error: Connection reset by peer]
_whitelogger has joined ##openfpga
Ardeshir_ has joined ##openfpga
Ardeshir has quit [Ping timeout: 248 seconds]
seu has joined ##openfpga
jrernst has joined ##openfpga
Bike has joined ##openfpga
<cyrozap> pointfree: I think cydsfit.exe is too high-level, we really want to be as close to the P&R as possible. Otherwise, not only will we *have* to use PSoC creator (and therefore won't be able to automate it), relying on it to generate verilog for us could introduce extra sources of noise in our analysis.
<cyrozap> Ideally, I'd like to generate netlists and see what comes out at the bitstream end.
<cyrozap> Less ideally, but still workable, would be to give some Verilog to Warp, then pass along its generated netlist (or whatever it outputs) to the other tools.
<pointfree> cyrozap: so, something like sjrouter.exe and sjplacer.exe?
<cyrozap> pointfree: Right. We need to figure out the exact commands PSoC Creator uses to run them, so we can run them without it. I don't know if theres any kind of strace for .NET, but we'd need a tool like that to avoid hours of .NET reversing.
<rqou> cyrozap, pointfree: sysinternals procmon is pretty close to strace for windows
<rqou> iirc it can't print buffer contents (for e.g. io operations) though
<rqou> if you're just capturing command line args it should be sufficient
<pointfree> Working on sjrouter.exe right now.
<pointfree> I'm trying all the xml files in the project to see which one I need to get .route file output.
<pointfree> I have sjplacer.exe working properly in a script.
<rqou> >testing things in minecraft
<rqou> >right mouse button is broken
* rqou is yak shaving/NIH-ing and making yet another server wrapper
<nats`> the xilinx jtag cable stuff ?
<rqou> no, a minecraft server wrapper :P
<nats`> ahhh
<rqou> a thing that has to periodically detect if an exception was thrown and then complain loudly :P :P
<nats`> last time I played to minecraft was something like 6 years ago :D
<nats`> when in beta
<nats`> :D
<rqou> the last normal minecraft i played was beta 1.7
<rqou> followed by modded mc in various versions
<rqou> up till 1.7.10
<rqou> because the post-1.7.10 mod ecosystem is still a clusterf*ck
<rqou> anyways, i'm working on setting up some ##openfpga minecraft servers
<rqou> because what nerd group doesn't have one? :P
<nats`> oO
<nats`> set a 7DTD server ;p
<rqou> "7 Days to Die is a survival horror video game set in an open world developed by The Fun Pimps." <--this?
<rqou> or a specific map type?
<rqou> for minecraft?
<nats`> this one :p
<nats`> it's a minecraft like but with a lot of zombie and crafting fun :D
<rqou> "7 Days to Die received "unfavorable" reviews, according to video game review aggregator Metacritic."
<nats`> weird because it's a really good gaùe
<nats`> game
<nats`> the dev is slow
<nats`> maybe that's why it was badly noted
jrernst has quit [Quit: Leaving]
<rqou> hmm i've never even heard of 7dtd
<nats`> on steam 41k review positiv
<rqou> who here is good at python?
<rqou> how to i communicate with stdin/stdout of a subprocess without going insane?
<rqou> last time i tried it it sucked immensely and involved tons of messing around with buffers and blocking/nonblocking-ness
<pointfree> Maybe the "architecture" xml file is indeed just "pins_100-TQFP.xml"
Ardeshir_ has quit [Remote host closed the connection]
Ardeshir has joined ##openfpga
m_t has quit [Quit: Leaving]
maaku has joined ##openfpga
<pointfree> cyrozap: I now have working scripts for both
<pointfree> the xml architecture filename I found in the .rt_log file of another project.
<pointfree> pins_100-TQFP.xml was of course the pins file for sjplacer.exe
rqou-telnet has joined ##openfpga
<rqou-telnet> Playing
<rqou> hmm
<rqou> that's not right
<rqou-telnet> Playing with the raw IRC protocol!
rqou-telnet has left ##openfpga [##openfpga]
Ardeshir has quit [Quit: Leaving]
Ardeshir has joined ##openfpga
rqou_ has joined ##openfpga
rqou_ has left ##openfpga [##openfpga]
<cyrozap> pointfree: Awesome, that's exactly what we need! Looks like it uses a standard PCF file for physical constraints, a standard SDC file for clock net definitions, and *VHDL* for its netlist.