Join us on Discord!
You can help CodeWalrus stay online by donating here.
Menu

Show posts

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.

Show posts Menu

Messages - Hayleia

#1
Looks nice already :)

However, if I were you, I'd make sure to keep the code legible, especially for a Zelda-like game. Maybe you want to share the source for people to help you with that, or maybe you just want to read posts about how to write legible Axe. But in any case, don't keep writing "code that works" and that you understand while it's only 100 lines long but that you won't understand when it's 2000 lines long... Be sure to write code that still works (of course) but that you'll always understand later. For example, don't use GDB1 to store your maps, and Str1 to store your sprites, and ABC...Z to store your variables, but use custom readable names.
#2
Tech, Science, IT discussion & News / Re: Pocketchip
April 14, 2017, 07:33:29 AM
For some reason I wanted one two years ago when it was only a Kickstarter. Now I don't care anymore. I'd rather have a real PC for computer things and more specific devices for more specific tasks, such as a Game Pie Advance for my handheld retrogaming needs. Yeah, it has no keyboard which is annoying if I want to do C, but let's stop pretending I'd enjoy doing C on any of these tiny screens anyway. I'd only use them for retrogaming, and the GPA is better at that.

Also, there was already a topic about that here https://codewalr.us/index.php?topic=1317.0
#3
Gaming / Re: Zelda: Breath of the Wild
April 07, 2017, 04:49:35 AM
Quote from: tr1p1ea on April 06, 2017, 08:51:13 PM
Agree that in this day and age it's harder to find time to play games that require a prolonged sitting.

You never know, it may grow on you!
Yeah, I agree, but it's going to have a hard time growing on me. I do not have enough "prolonged sitting" periods of time in my schedule.
#4
Quote from: Cakeisalie5 on March 15, 2017, 10:24:33 PM
Actually, English is mandatory also in France, and even if most french people aren't almost native speakers, people that do the most on Plan├Ęte Casio have a good level of English as it's the dominant language in computer science and stuff. The main barrier is that it can be tiring to be in several communities simultaneously. But as I'm trying to gather as much information as I can as I need them for my projects (libp7, libg1m, FONTCHARACTER reference, ...), and information is everywhere, I need to go everywhere to get them. :p
Quote from: DJ Omnimaga on April 06, 2017, 05:23:32 AM
Ah ok about English, I just noticed that on most forums I've been to, the proportion of people who have serious troubles writing English sentences is much higher than people from other countries. I sadly can't help on this project since I only do BASIC/TI-BASIC and such languages, though.
I kind of agree with both of these. I mean, I had a shortcut to say "Lol French" in MH4U each time I see a French person speaking frenglish, that's for a reason... Not sure what causes French people to be worse at English than people from other countries but they are. And they are recognizable too. And they're bad at MH4U too -.-
...Which doesn't prevent people from PC to be quite good at it. I'm only talking about the masses which we can meet while playing videogames or browsing random forums but not on a forum about programming on calculators. The masses don't code and don't care about calculators. People from PC (or CW, etc) on the other hand care about coding, do it in English of course, read stuff in English to progress, etc, unlike a lot of people I see who are like "meh, I can't learn that, I only found English tutorials and nothing in French" -.-
#5
Gaming / Re: Zelda: Breath of the Wild
April 06, 2017, 04:56:48 AM
Quote from: DJ Omnimaga on April 06, 2017, 03:26:31 AM
I guess people are used to Ocarina of Time and Link to the Past
Quote from: tr1p1ea on April 05, 2017, 11:05:42 PM
Complaining that Zelda has Zelda elements reminds me of people who complained that Rogue One had too much Star Wars in it ... what exactly are people expecting?
This can't be me since I'm not a fan of Zeldas, so I don't really know what are "Zelda elements" and never played A Link to the Past (and was bored in OoT) :P

Quote from: tr1p1ea on April 05, 2017, 11:05:42 PM
It is a game that requires the player to engage for an extended period, not '10 minute rounds at a time' like most other games these days.
Well that's a problem. I don't have long periods of time available in my schedule outside of week ends.
I guess I'll play Splatoon during weeks and consider BoTW in week ends.

But ok. If that was just a bad first impression (at least on me, not necessarily on everyone), I don't mind. I mean, Monster Hunter makes even worse first impressions and MH4U is one of my favourite games of all times (my current inner debate even puts it before Smash in my list). So ok, I'll discard that first impression and give that game a serious try later.
#6
Gaming / Re: Zelda: Breath of the Wild
April 05, 2017, 01:49:40 PM
With all the awesome reviews everywhere, I was kind of underwhelmed when I finally gave it a try.

If there is a storyline, it isn't obvious from the beginning. I mean a female voice saying "wake up, Link" with Link sleeping in a magical bath in a cave. Could you even make it more stereotypical if you tried? I couldn't. Then towers coming out of the ground. Saints Row IV did this. And Saints Row IV mocked every unoriginal everything. And then "wow wow, evil Ganon has taken over the castle, or maybe the contrary, we're not too sure anymore, but whatever, at some point we'll be doomed and need a savior". Really? Even Monster Hunter makes better scenarios than this.

Then again, that's only after one hour of playing. Maybe there's more to the story after that. But yeah, that's kind of the other annoying point. In one hour I just got that due to running around like a fool just to get to my objective. If that's just the beginning where it's supposed to be more tutorial-ish and the rest is going to make me run around even more, it's going to be boring.

So yeah, of course, don't take this as the best opinion ever on BoTW since I usually don't like Zelda games (the only one I liked enough to finish was Minish Cap, then I could have finished ALBW if I didn't lose my savegame maybe) and I only played for one hour. But that just explains why I stopped BoTW for Splatoon.

Does the game get more interesting later on? I usually love open world games (which is why I tried that particular Zelda) so I would really be annoyed if I missed something huge just because the beginning is bad. I'd give it another try with other expectations if you would tell me I should.
#7
Hehe, well done :D

Quote from: Streetwalrus on March 29, 2017, 06:58:39 PM
That was a beautiful hack and a very fun challenge, @Hayleia, thanks a lot. :D
Well if you're not fed up with this, you could try to produce the same output with the same restrictions but with less characters :P
For example, IAMISSAM on TI Planet noticed that the first /() is useless. And indeed, I only put two of them to be sure I get 1 so that the following calculation gives what I want... except that there is a *() not so far from there, so it works with -1 too. And there are probably other ways to save space, not sure how yet but probably. Like not using the same ram area for the asm code but one that is shorter to get, if that exists.
#8
Quote from: Streetwalrus on March 29, 2017, 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. :P
Yes everywhere :P
Especially about the python script :trollface:

Except maybe about the formatting. I'm not so sure I find this more readable. The only thing I would have done to make it more readable is putting the __->{__}^^r on separate lines rather than all on one.
#9
Quote from: Snektron on March 28, 2017, 10:22:39 AM
The load of the address would be one of your weird formulas ofcourse.
That could definitely have been possible indeed. And probably much smaller in the case of the Hello World. Not sure about other cases (longer strings).

Quote from: Snektron on March 28, 2017, 10:22:39 AM
Also thats PutS, not PutC ;)
Sorry, I had problems reading your code. Too many alphanumeric characters and not enough operators and parentheses :trollface:
#10
Quote from: Streetwalrus on March 28, 2017, 08:28:14 AM
I think you're overestimating the quality of corporate code by a long shot. :trollface:
Nope, I've seen it :P
But it's just the "wait what?" type of code, not brainf*ck type of code on purpose.

Quote from: Snektron on March 28, 2017, 08:52:17 AM
Okay, so i count 8 pairs of ->{x}^^r. That means you wrote 16 bytes, im guessing:
0xEF, 0x45, 0x0A, H, e, l, l, o, , w, o, r, l, d, 0x00
Also known as

    bcall(_PutS)
    ret
.db "Hello world", 0

You probable wrote them to saferam or something, which means after writing you probably call the address where you wrote your code.
Ah, another challenger :D
Well, this would lack a ld to load the address of the string (plus PutC only puts one character, but just change that bcall and you can write a string for the same amount of bytes).
But glad you noticed there were a lot of __->{__}^^r, combine that with what @c4ooo finds as number values (values stored, addresses stored to, addresses called) and you could understand everything, for real.
#11
Quote from: c4ooo on March 28, 2017, 03:32:46 AM
We need more hints :3
Ah come on, you can't give up now :P
You already found out what /() meant (you missed its special case but still, if you understand that even without the special case, you can understand 90% of the program... plus, the special case is easy to find and quick to test) and noticed the use of (foo)(), so really, you can at least transform that unreadable Axe code into a readable Axe code (I mean with numbers :P). Then you'll need basic Asm skills to progress but we're not there yet (and if you're not into Asm, anyone who is can help, it's really basic).
#12
Quote from: Snektron on March 27, 2017, 08:56:49 AM
The only thing i dont get is how you actually print the value, or does (x)() work on bcalls? Other than that you might be able to compress it with smc
It does not as far as I know. And I already use smc :P
#13
No, it's obviously not faster (nor smaller) than just a ClrHome and a Disp. I meant that
- readability is not the goal when people optimize
- readability is not my goal when writing unreadable code on purpose (obviously)
But these cases are not the same case, my unreadable code here isn't optimized. It's just unreadable. Optimization often makes code unreadable, but unreadability not often makes code optimized :P
#14
Quote from: p2 on March 27, 2017, 07:35:06 AM
then I have one last question @Hayleia:
Why?
Why on earth would you ever want to write a code like that???
For several reasons, more or less important.

  • I was bored. Now my Wii U is back so I "released" this without working too much on it so I am really 100% sure it can be improved drastically
  • I wanted to code something in C++ and to get my TI-dev environment on my "new" linux partition. Yeah, of course that code is generated, did you really think I wrote that all by hand? :P
  • and the last one is a longer reason, and it's actually what I wrote in the first post. Axe isn't less readable than Basic. On the contrary, it's a language that supports indentation, functions and custom names for variables (instead of just A-Z) so it's intrinsically more readable than Basic...
    Except that some people take my Axe, matref's Axe and Runer112's Axe as an example for what all Axe programs look like. But nope, that's not what all Axe programs look like. If you want readable Axe, you can get it. Have a look at SSBO's source, you'll understand everything except the main menu. And have a look at Weregoose's Basic. You don't understand one line of his one liners.
    What this means is that Axe and Basic can become unreadable when the dev doesn't care about readability. Like when they try to optimize for speed/memory, or when they do it on purpose like what I just did. And it doesn't mean these languages are intrinsically unreadable. On the contrary, more Axe devs got their Axe programs to be optimized because thanks to indentation, functions and custom variables, they were still more understandable than an optimized Basic program's seq/cumSum/linearReg(ax+b) unindented lines using one-character variables only.

    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.

    So yeah, that was kind of my rant and action about that :P

Quote from: p2 on March 27, 2017, 07:35:06 AM
writing such terribly ugly code should be considered a crime against humanity :ninja:
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.
#15
@Ranman @p2 @JWinslow23 Ok about the punch cards, but I still have no idea about "Break out" :P

Quote from: p2 on March 26, 2017, 10:17:23 AM
Also wow, have fun debugging such a code x.x
No need to debug it when it works at first try.
(lol)

Quote from: c4ooo on March 26, 2017, 06:56:45 PM
() basically returns the previous value of HL, so you can do something like /() which would be HL/HL and thus one.
(foo)() also calls the address of foo.
Ah, finally a challenger :D
You're right about routine calling. And you're half right about your first sentence :P
/() is often one, but not always. Though it does not always matter, depending on what's next.
Powered by EzPortal