Hacker Newsnew | past | comments | ask | show | jobs | submit | Marcus10110's commentslogin

> Do not move off the left or right side

Turns out if you do this, then hold the up key, it would appear that you avoid collision detection. Also, it appears your X position is preserved between levels, allowing you to hold the up arrow to rapidly advance levels.


For extra fun, remove the "uncompressed" onkeydown added at the end, then you can hold down the spacebar to do big jumps.


I have an ET-3400 on the shelf behind me! I was just playing with it the other day. After watching Jason Turner's CppCon talk on writing an i386 to 6502 assembly translator [1][2], I started working on a fork that would target the 6800. I only got about 3 instructions working, but that's really all you need for some really simple test code with optimization turned to the max. It also turns out that someone wrote a fantastic emulator specifically for the ET-3400 trainer [3], and I managed to get my application running on it!

[1] https://www.youtube.com/watch?v=zBkNBP00wJE [2] https://github.com/lefticus/6502-cpp [3] https://github.com/CalPlug/Heathkit_ET-3400

There is something special to me about the idea of writing modern C++, and compiling it for such early microprocessors. The 512 bytes of RAM is a pretty big limitation though. I wanted to try and emulate an EEPROM using an Arduino or FPGA, but got stalled out on the project. From time to time I like to browse through the LLVM backend documentation, but I can't seem to commit to trying to build a backend.


About 10 years ago, I met Al Alcorn at an event. Prior to that, I had studied the original pong schematics in school as part of an interesting challenge in a digital design course, where the goal was to figure out what the schematic did, without knowing it was pong.

So when I met Al, I mentioned that I found the schematics fascinating, and had some questions. He was happy to walk me through the whole thing! After that, he told me all kinds of great stories about the different versions of pong that they built, including color support, the home version, and PAL support.


It's not just a rip-off, it's build directly on top of the killedbygoogle repository!

https://github.com/fabianoriccardi/killed-by-microsoft is not a fork, but it has many of the commits from https://github.com/codyogden/killedbygoogle

The earliest commits from fabianoriccardi include git messages like: > replacing "Google" with "Microsoft", removed PressCoverage

Anyway, great code recycling at least right? It's a fun thought that the author of killedbygoogle ultimately wrote most of the code on killed-by-microsoft.

Contributor summary: https://github.com/fabianoriccardi/killed-by-microsoft/graph... https://github.com/codyogden/killedbygoogle/graphs/contribut...


Hi! Creator of Killed by Google. The code that runs Killed by Google has always been licensed under MIT, and it's changed significantly since the Microsoft version was cloned. There are multiple 'clones' that have popped up over the years using my repo as the base, and Fabiano is one of the few who kept my license in tact. The Microsoft version has been around for over a year, I think.

I agree that it is cool to see how it's been reused. :)


I deal with this every day, because we only notarize our electron app in CI if we're building the master branch or an RC branch. I don't see it mentioned in the article, but what gets me every time is that the "right-click" trick only works the second time you try to launch the app. The first time, right-click or not, MacOS won't let you launch the app.

I do wish Apple had a free tier for open source projects, just like many other tools on the web.

As an alternative, I wish there was an easy way to "sponsor" open source projects for this sort of thing. (I guess there is in some cases, but it's pretty hit or miss)

On Windows, although it's pretty easy to run unsigned applications, it's a huge pain to install unsigned 64 bit drivers, even if it's just the inf file that's custom. I've ended up signing open-source drivers several times with my own code signing certificate (a few hundred bucks every few years) although I haven't distributed the result. Drivers for things like USB SDRs.


> I don't see it mentioned in the article, but what gets me every time is that the "right-click" trick only works the second time you try to launch the app. The first time, right-click or not, MacOS won't let you launch the app.

Thanks for the comment! I've referenced this in a new addendum to the article.


We've done a similar analysis of USB 3.0 host controllers and the state of their drivers cross-platform. It's amazing how bad the state of USB 3.0 is, even 5 years after devices started shipping. Even the latest Intel host controllers (8 & 9 series) initially shipped with bad drivers. I look forward to getting our results posted.



Absolutely. Data corruption from VIA based host controllers was probably the worst issue we've seen, and the USB 3.0 ASMedia host controllers are probably the worst now that VIA was able to solve their issue with a driver update.

Most hardware on the market today was released before the xhci spec 1.0 was finished, and I agree that ALL hardware on the market does not even properly implement the spec that was available during its design. Fortunately, most issues can be worked around using quirks.

The hardware is the root of the problem, but I would also add that the xhci_hcd kernel module, even in the latest kernels, is well behind Microsoft in terms of handing these device-specific quirks. The Microsoft USB 3.0 stack introduced in Widows 8 solves just about every host-specific issue we've ever seen. ASMedia is the only host controller vendor that bothers to provide their own Windows 8/10 driver (both for their USB 3 Gen1 and Gen2 chips). No one else provides an alternative to the Microsoft provided usbxhci.sys. That said, all of our tests have been limited to bulk transfers, and we're only using existing user space libraries (WinUSB, LibUSB, IOKit). We do push throughput, we have tight latency requirements, and we keep a large number of buffers queued at all times, which does push the host controllers further than your typical storage device. (We make streaming data recording equipment for electrical engineers and embedded developers)

I don't want to bash xhci_hcd though; their progress has been fantastic, despite the minefield of problems created by all these host controller vendors. I would like to say a special thanks to @sarahsharp, for all of the hard work put into the xhci host controller module. Without Sarah, I don't know who will answer when the xhci_hcd doorbell rings.


Instead, I want to build a tool that constantly scans your plate number for tickets and auto-pays them as soon as they show up to avoid late fees. ...Because I deserved every ticket I've ever received.


You would be going after the right market, 95% of people just pay their ticket ;)

However, by lowering the barrier to legal representation it is our goal that TicketTitan may increase the percentage of people who fight. For example, did you know that in most states by paying a ticket you admit guilt of the violation, which often results in points on your license and insurance increases? Fighting a ticket in Court, even without a lawful defense, may result in dismissal, no conviction, no points, no school, and/or reduced fines.


Or, as parent suggests, you could just take responsibility for your actions...


Not every traffic ticket is fairly given.


Exactly. See Chicago's photo red light debacle. And that's a case where otherwise I'd support the idea because running red lights kills and maims people with a much higher incidence than say speeding on the highway.

The two speeding tickets I've gotten: one was deserved, but I still fought it for a minimal (standard) plea bargain reduction. The other, the cop flat out lied twice. He said he used pace method, yet was never going the speed I was (he came upon me like a bullet and I wasn't speeding); but then the ticket had the radar box checked, and I said I wouldn't sign it until he corrected it. He said he wasn't going to change the ticket and if I didn't sign it he'd take me to jail. Small podunk town in Kansas just randomly pulling people over to make money. Modern day highwayman.


... Did you win?


I didn't know HN loved cops so much. In what way is paying a ticket taking "responsibility for your actions"?


Both you and the OP are being pretty black and white about this. Paying for speeding tickets you deserve because you were speeding is hardly "loving cops so much".


Language like "deserve" is what I'm criticizing. Fighting a traffic ticket isn't a moral failure.


I mean, if you were speeding above the limit then you do "deserve" a ticket. Everyone is bound by the rules of the road.


This is SUCH an insufferable point of view. You're seriously of the belief that all traffic tickets are valid and that citizens who gasp dare to fight these tickets in court is are not responsible people?


My comments parent did say fighting "without a lawful defense." I'm pretty sure that fighting an invalid ticket is a lawful defense.


There was a startup doing just this - https://AutoPay.io - that was advertising in Boston and Cambridge back in March.

Amusingly, they seemed to follow around the people issuing tickets, and slipping fliers[1] under windshield wipers. There were a bunch of cars with a bright orange ticket under one wiper, and a bright green flier under the other.

[1] http://i.imgur.com/5tgbhPY.jpg


i use fixed for this, they have a product called ticket guardian - http://www.fixed.com/


Looks awesome! I would love real time updates of counterfeit products as they are posted to ebay, etc - especially in all regions/locales. We automated the process of sending the take down notice once a listing was identified, but we're manually searching & identifying right now. Seems like a good fit for us.


Cool! Are you a manufacturer or providing an IP enforcement service? Either way, feel free to reach out to me at derick@ip-shark.com. Would love to start any dialogue. We're new and just looking to help out anyone in need =)


Interesting perspective - we deploy our QT app on Linux, osx and Windows, but I find that the best experience has been on Windows. (we statically link QT and boost, which may cause more headaches than the default dynamic linking).

Specifically, maintaining backwards compatibility on OSX while marching forward with newer versions of the os has been a very big pain. We recently dropped support for OSX 10.6 because we simply could not get QT to statically compile on Yosemite, even after extracting the 10.6 SDK from a legacy xcode download. We did manage to keep 10.7 support though, thankfully, using the same SDK extraction method.

On Linux, the upgrade from QT 4.8 to 5.4 was the roughest. the number of dependencies dramatically increased, complicating the compilation of QT and breaking compatibility with older distros (specifically CentOS 6.x, where we hear the most complaints)

Windows & visual studio has always been our preferred developer environment, with the latest version of both. Maintaining support back to Windows XP has been particularly easy and painless. Where on Linux, it seems like the glibc requirements march forward with every release of gcc, and on osx it becomes dramatically more difficult to support older versions of the os with each new release.

A side note about QT on Windows - compiling QT and your application on the newest version of Windows helps a lot for customers on that platform - for instance, before we compiled on Windows 8, the application UI would default back to the legacy battleship grey theme, and simply rebuilding on Windows 8 with no source modifications fixed it.


on linux a couple of compiler flags (FORTIFY_SOURCE, etc) and providing a memcpy wrapper would get you compatibility back to about 2006. To go back further the glibc you compile against can have an earlier version of the linux kernel specified. I only bothered with 2.6.16 (or was that 18) at the time.


This almost feels like legal cover more than anything else. At least they "tried" to protect the music files from easy duplication & piracy. I wonder if circumvention of XOR is illegal under the DMCA. It feels just about effective as renaming the file extension from .mp3 to .shh


IANAL, but the DMCA does not make any distinction between strong encryption and mild obfuscation. They're both "technological measure that effectively controls access to a work"

I'm not sure the DMCA provides any "proof" that they're going after privacy. But it does afford them legal tools to go after people who publish Grooveshark decryptor scripts.


I think the word "effective" might be interpreted to exclude ineffective measures like this one.


I don't think it ever has been. Look at CSS.

court ruled that the DMCA statute does not require the access control or copy control technology to be strong as long as it prevents unauthorized access and/or copying under ordinary course of operation and with the authority of the copyright owner


I don't think so. Pretty sure it's "effective" as in "has the effect of" not in the sense of "does its job well"


Exactly, it's like a Home Depot lock, sure you can smash it, you can easily pick it, but it's effectively a lock.


That's subjective.

Any strong technique, once broken, is not effective anymore: is it then legal to use such technique, due its ineffectiveness?


Also IANAL but from what I know the law has not been interpreted to use (in my opinion) a reasonable definition of the word effective. The law requires 2 things here for a covered protection to be "effective":

  #1 That the protection on the copy is "sufficient" to protect the rights of a copyright holder of the original work, and

  #2 That the copyright owner is satisfied with the protection provided by the copied work.
To me at least, this seems insane. You can theoretically claim DCMA based relief for anything forever by taking its bitstream format and flipping every bit once. That coupled with the knowledge of the copyright owner will be enough to be covered under this reading of "effective".

The linked court decision states on page 28:

98. To prevail on a DMCA claim for violation of the copy-control provision, plaintiff must show that CSS “effectively protects a right of a copyright owner under” the DMCA. 17 U.S.C. § 1201(b)(1). Under that section, a technological measure “effectively protects a right of a copyright owner . . . if the measure, in the ordinary course of its operation, prevents, restricts, or otherwise limits the exercise of a right of a copyright owner under this title.” 17 U.S.C. § 1201(b)(2)(B). For the reasons articulated above, the court finds that CSS technology is an effective technological measure to prevent copying of copyrighted DVD content by the average consumer. That CSS technology has been hacked does not disturb this conclusion.

The RealNetworks case where this was decided is linked below. The case basically went "There is this program that uses freely available code that technically breaks your DCMA approved protection method, CSS, but because CSS still works to protect rights due to the breadth of it's implementation, it is not sufficiently broken by your program or the freely available knowledge you used to make it, and the Court finds for the Plaintiff." (my interpretation from reading page 56)

See: https://www.eff.org/files/filenode/RealDVD/real_v_dvd-cca_pi...

Pages #28 and #56


There was an argument for this, but it was in the EU not the US. http://www.turre.com/finnish-court-rules-css-protection-used... No idea how that ended up going in courts or later legislation.


Their content seems to be pirated (or user uploaded - hell, even company uploaded if the reports are true) in the first place. I think that's the bigger problem with the service.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: