« on: Yesterday at 07:25:09 pm »
Yep, maybe I'll take a look at it tomorrow. I've had enough of this one for tonight, hehe.
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Messages - Streetwalrus
« on: Yesterday at 06:58:39 pm »
(This should be alright for a double post)
Alright, second line:
Our disassembly becomes:
So we call our little saferam routine, abusing HL once more to pass it 'H' (0x48) and e (0x65).
And finally, line 8:
Here we skip the first 4 bytes (ld a, l // b_call(PutC)) of the routine, and load H with the character 'd' for the finale.
And we have our result on screen: "Hello World".
That was a beautiful hack and a very fun challenge, @Hayleia, thanks a lot.
« on: Yesterday at 05:11:08 pm »
Yeah, pretty much.
So here's a first attempt:
The first line decodes to the following (after adding new lines where it makes sense ):
Which can be interpreted (by hand) as:
So I'm seeing a pattern here already. We're placing code at 0x88B0 and then calling it.
Not 100% sure what the hell that is for, besides clearing the screen. I'm far from being done.
« on: Yesterday at 03:23:26 pm »
Let's start by formatting this a little, so we can see clearer.
Now, for the edge case of /() that you mentioned, it's simply that if HL is 0, the result will be 65535. So the first two in the program ensure that we start at 1.
So now we can already see that each +() will double HL, +(+()) will triple, etc. *() is square, +(/()) is +1 (or -1 if HL==0), and so forth. I can't actually find more than two levels of parenthesis nesting, so that will simplify things a little. Brb writing a quick python script.
« on: March 28, 2017, 08:28:14 am »
And another invalid argument is like Axe vs Lua or Axe vs C++ or Axe vs Java or whatever. Because Lua, C++ and Java don't run on 6MHz z80s. So you don't need to optimize anything and you can keep your code readable. If you had to run Java on a z80, you'd end up writing bytecode, so it would be less readable than any Axe code and still slower.Also keep in mind that these languages have much, much better compiler optimizations than what Axe is capable of, especially considering the increased complexity of modern architectures.
Not as long as I do it on purpose. If a company used Axe as their language for a product (lol) and I wrote such ugly code, yeah, I'd understand I'd get fired.I think you're overestimating the quality of corporate code by a long shot.
« on: March 19, 2017, 08:51:31 am »
I think it's a good idea.
I haven't been following knightos, but I know it basically makes a bit of progress every few months when sircmpwn feels like working on it. Overall it's going really slowly and I doubt it'll ever be any good.
Strip will remove debugging symbols (gcc includes some by default even when you don't compile with -g). What you want is not removing symbols but actual sections. I don't really know how to do that but a possible approach would be to replace the beginning of the main function with a jump to another function that you would add.
Ryzen is quite disappointing...Crappy Lake has 20% higher single threaded performance than Ryzen thanks to a ~7% IPC lead and much higher clocks. Ryzen also suffers from a severe lack of optimization in games themselves which have been optimized for Intel platform for all these years. It's a brand new architecture and it will take a little bit of time before performance picks up. The results are still impressive and beyond anything bulldozer could ever dream of. It's faster than my Ivy Bridge i7, and I need the 8 cores for compiling so I'm definitely upgrading.
Also keep in mind that the 1700 overclocks just as well as the 1800X, but is slightly cheaper than a 7700k. This is the chip to buy. And that isn't even counting the SKUs with less cores that are coming up and should deliver similar gaming performance for much less money.
As for the IME and PSP, it looks like AMD is considering supporting coreboot directly, and possibly giving the community more control over the PSP. Considering their outstanding open source support, I have high hopes for this.