Points of Required Attention™
Please chime in on a proposed restructuring of the ROM hacking sections.
Views: 88,414,974
Main | FAQ | Uploader | IRC chat | Radio | Memberlist | Active users | Latest posts | Calendar | Stats | Online users | Search 04-16-24 01:36 PM
Guest: Register | Login

0 users currently in ROM Hacking | 4 guests

Main - ROM Hacking - asm programming = slave labor New thread | New reply

Pages: 1 2 3

Aaendi
Posted on 12-26-09 06:02 PM (rev. 2 of 12-26-09 06:13 PM) Link | Quote | ID: 124165


Red Koopa
Level: 27

Posts: 16/131
EXP: 109089
Next: 7070

Since: 10-18-09

Last post: 4660 days
Last view: 4321 days
I'm not doing assembly to impress people nor doing it because I enjoy it. I'm only doing it for one reason, and that is so I can design my own game. I would rather be the sprite animator, and the level designer and have somebody else do the programming for me, but I looked for a programmer a long time ago but I'm the only one who actually knows how to program the kind of game I want to make.

Kawa
Posted on 12-26-09 06:05 PM Link | Quote | ID: 124166


CHIKKN NI A BAAZZKIT!!!
80's Cheerilee is best pony
Level: 138

Posts: 3074/5344
EXP: 30920476
Next: 742505

Since: 02-20-07
From: The Netherlands

Last post: 4488 days
Last view: 2623 days
What kind of game do you want to make, and how does the ASM programming fit in?

____________________
Wife make lunch - Shampoo
Opera - give it a spin
Spare some of your free time?
<GreyMaria> I walked around the Lake so many goddamn times that my sex drive was brutally murdered
Kawa rocks — byuu

Aaendi
Posted on 12-26-09 06:20 PM Link | Quote | ID: 124171


Red Koopa
Level: 27

Posts: 17/131
EXP: 109089
Next: 7070

Since: 10-18-09

Last post: 4660 days
Last view: 4321 days
A run'n'gun game. Everytime I ask someone to help me they just whine about the cpu.

Kawa
Posted on 12-26-09 06:22 PM Link | Quote | ID: 124173


CHIKKN NI A BAAZZKIT!!!
80's Cheerilee is best pony
Level: 138

Posts: 3075/5344
EXP: 30920476
Next: 742505

Since: 02-20-07
From: The Netherlands

Last post: 4488 days
Last view: 2623 days
And what CPU would that be?

____________________
Wife make lunch - Shampoo
Opera - give it a spin
Spare some of your free time?
<GreyMaria> I walked around the Lake so many goddamn times that my sex drive was brutally murdered
Kawa rocks — byuu

Aaendi
Posted on 12-26-09 06:32 PM (rev. 2 of 12-26-09 06:34 PM) Link | Quote | ID: 124175


Red Koopa
Level: 27

Posts: 18/131
EXP: 109089
Next: 7070

Since: 10-18-09

Last post: 4660 days
Last view: 4321 days
The Super Nintendo's CPU.

btw, my WIP game is uploaded on this website under ID #2683

Kawa
Posted on 12-26-09 06:34 PM Link | Quote | ID: 124176


CHIKKN NI A BAAZZKIT!!!
80's Cheerilee is best pony
Level: 138

Posts: 3076/5344
EXP: 30920476
Next: 742505

Since: 02-20-07
From: The Netherlands

Last post: 4488 days
Last view: 2623 days
I'm starting to get some ideas here. Why specifically the SNES?

____________________
Wife make lunch - Shampoo
Opera - give it a spin
Spare some of your free time?
<GreyMaria> I walked around the Lake so many goddamn times that my sex drive was brutally murdered
Kawa rocks — byuu

paulguy
Posted on 12-26-09 06:36 PM Link | Quote | ID: 124177


Flurry
Level: 37

Posts: 189/258
EXP: 326720
Next: 11533

Since: 04-10-07
From: Buffalo, NY

Last post: 5018 days
Last view: 4558 days

Kawa don't bother, you won't finish it.

____________________
"In other news, Scientists theoretize that CHEESECAKE CHEESECAKE CHEESECAKE." --Blackhole89

Kawa
Posted on 12-26-09 06:38 PM Link | Quote | ID: 124179


CHIKKN NI A BAAZZKIT!!!
80's Cheerilee is best pony
Level: 138

Posts: 3077/5344
EXP: 30920476
Next: 742505

Since: 02-20-07
From: The Netherlands

Last post: 4488 days
Last view: 2623 days
Butt out Paulguy. I haven't offered to code anything and I wasn't planning to. I'm just trying to help in some way I can.

Besides, I can barely even read SNES ASM.

____________________
Wife make lunch - Shampoo
Opera - give it a spin
Spare some of your free time?
<GreyMaria> I walked around the Lake so many goddamn times that my sex drive was brutally murdered
Kawa rocks — byuu

Aaendi
Posted on 12-26-09 06:44 PM (rev. 3 of 12-26-09 06:48 PM) Link | Quote | ID: 124180


Red Koopa
Level: 27

Posts: 19/131
EXP: 109089
Next: 7070

Since: 10-18-09

Last post: 4660 days
Last view: 4321 days
I own a Super Nintendo, but there's not that many run'n'gun games on it, and I love run'n'gun games. Plus I like making sprites using the Super Nintendo's color palette.

Kawa
Posted on 12-26-09 06:47 PM Link | Quote | ID: 124181


CHIKKN NI A BAAZZKIT!!!
80's Cheerilee is best pony
Level: 138

Posts: 3078/5344
EXP: 30920476
Next: 742505

Since: 02-20-07
From: The Netherlands

Last post: 4488 days
Last view: 2623 days
Those are pretty good reasons on first glance, except for the palette thing.

The Super Gameboy, Color Gameboy, Gameboy Advance and DS all use the exact same color format. The only difference is the amount of palette entries.

Still, the other two are perfectly good reasons. Got any more?

____________________
Wife make lunch - Shampoo
Opera - give it a spin
Spare some of your free time?
<GreyMaria> I walked around the Lake so many goddamn times that my sex drive was brutally murdered
Kawa rocks — byuu

Parasyte
Posted on 12-26-09 11:01 PM Link | Quote | ID: 124197


Red Goomba
Level: 18

Posts: 36/48
EXP: 24764
Next: 5133

Since: 02-09-09
From: Flagstaff, AZ

Last post: 5200 days
Last view: 5178 days
It's a stretch to claim that writing assembly is "slave labor" (it never caused any revolts or revolutions when developers were using it just perfectly well up until the mid-90's). Besides, you don't have to know a thing about assembly for writing your own games for SNES. Use the C language.

Not everyone is cut out to write their own operating system... (Which is exactly what you're doing when you're writing a game engine!)

Aaendi
Posted on 12-27-09 04:33 PM Link | Quote | ID: 124254


Red Koopa
Level: 27

Posts: 20/131
EXP: 109089
Next: 7070

Since: 10-18-09

Last post: 4660 days
Last view: 4321 days
They got money for it and I don't, and besides isn't C really slow?

Kawa
Posted on 12-27-09 04:47 PM Link | Quote | ID: 124256


CHIKKN NI A BAAZZKIT!!!
80's Cheerilee is best pony
Level: 138

Posts: 3080/5344
EXP: 30920476
Next: 742505

Since: 02-20-07
From: The Netherlands

Last post: 4488 days
Last view: 2623 days
No it isn't. On any system, there's several levels of speed.

ASM is at the very top, but if it's badly written it drops a level or two.
C is right below it. Given a proper compiler, it is so fast that only very intensive parts might require some inline ASM work. C++ is often one (or one half) level below that, but only because of extra OO overhead. Using a C++ compiler, yet writing plain C with it could even help create faster ASM output.

Somewhere at the bottom are interpreted languages, not counting any game script interpreter you might use.

Now, the SNES might not be the fastest horse in the stable but I think, if you write good C code, it'll work fine.


And now, some life experience: I write C on the Gameboy Advance. One of the first things I learned is to use native-width integers for stuff like parameters and globals, and only use other types in structs and stuff. This because having a byte or halfword parameter or return value would require extra ASM code to make sure it is a byte or halfword. With native ints, that code can be left out, making the resultant ASM smaller and faster.

These days, most if not all games are written in C (or C++) with preciously little ASM work. Most I've seen that's consistently done in ASM is stuff like sound mixing.

____________________
Wife make lunch - Shampoo
Opera - give it a spin
Spare some of your free time?
<GreyMaria> I walked around the Lake so many goddamn times that my sex drive was brutally murdered
Kawa rocks — byuu

DahrkDaiz
Posted on 12-27-09 05:08 PM Link | Quote | ID: 124259


Nipper Plant
Sandwich Artist
Level: 46

Posts: 334/417
EXP: 673920
Next: 37854

Since: 02-22-07

Last post: 3476 days
Last view: 3397 days
Posted by Aaendi
They got money for it and I don't, and besides isn't C really slow?


If you ever expect to do anything related to programming, you have to throw the money notion out the window. If you think people program, even in ASM, purely for money aspect, then you're going to be a very poor programmer and designer. You have to love for it to be any good.

Kawa
Posted on 12-27-09 05:09 PM Link | Quote | ID: 124260


CHIKKN NI A BAAZZKIT!!!
80's Cheerilee is best pony
Level: 138

Posts: 3081/5344
EXP: 30920476
Next: 742505

Since: 02-20-07
From: The Netherlands

Last post: 4488 days
Last view: 2623 days
Posted by DahrkDaiz
You have to love for it to be any good.
No matter what language you write in.

I won't code in COBOL for anything less than five hundred though

____________________
Wife make lunch - Shampoo
Opera - give it a spin
Spare some of your free time?
<GreyMaria> I walked around the Lake so many goddamn times that my sex drive was brutally murdered
Kawa rocks — byuu

Parasyte
Posted on 12-27-09 05:36 PM Link | Quote | ID: 124264


Red Goomba
Level: 18

Posts: 37/48
EXP: 24764
Next: 5133

Since: 02-09-09
From: Flagstaff, AZ

Last post: 5200 days
Last view: 5178 days
Posted by Aaendi
They got money for it and I don't, and besides isn't C really slow?

There's still money in game development today, and there's still no revolts or revolutions. What's next? "C/C++ programming = slave labor?"

Aaendi
Posted on 12-27-09 06:28 PM (rev. 2 of 12-27-09 06:30 PM) Link | Quote | ID: 124268


Red Koopa
Level: 27

Posts: 21/131
EXP: 109089
Next: 7070

Since: 10-18-09

Last post: 4660 days
Last view: 4321 days
Whenever I try to learn C, I can't find any page that just lists instructions and functions ect. All I can find are boring slow tutorials that lose my interested. I already know how to type "Hello World" I just want to learn how I can draw a sprite or at least a dot, before I lose interest.

Kawa
Posted on 12-27-09 06:32 PM Link | Quote | ID: 124269


CHIKKN NI A BAAZZKIT!!!
80's Cheerilee is best pony
Level: 138

Posts: 3082/5344
EXP: 30920476
Next: 742505

Since: 02-20-07
From: The Netherlands

Last post: 4488 days
Last view: 2623 days
Well, I have some GBA C code to draw stuff like a tilemap. It's quite close to the SNES, format-wise, as far as I can remember so if you want I can give you some sample code. I also have a simple tile-based print function that could theoretically work on any system with tilemaps.

Sprites I'm not too certain about, so I'd rather not give (possible) C code for that until I've studied the ASM side of it myself.

____________________
Wife make lunch - Shampoo
Opera - give it a spin
Spare some of your free time?
<GreyMaria> I walked around the Lake so many goddamn times that my sex drive was brutally murdered
Kawa rocks — byuu

Aaendi
Posted on 12-27-09 06:44 PM Link | Quote | ID: 124272


Red Koopa
Level: 27

Posts: 22/131
EXP: 109089
Next: 7070

Since: 10-18-09

Last post: 4660 days
Last view: 4321 days
Sure, go ahead and show your tile map code.

I also need to know what I need to do C. Please nothing with a command prompt. The command prompt doesn't work on my computer.

Kawa
Posted on 12-27-09 06:57 PM Link | Quote | ID: 124275


CHIKKN NI A BAAZZKIT!!!
80's Cheerilee is best pony
Level: 138

Posts: 3083/5344
EXP: 30920476
Next: 742505

Since: 02-20-07
From: The Netherlands

Last post: 4488 days
Last view: 2623 days
What do you mean, "it doesn't work"?

Anyway, here's some sample code. It's just from the top of my head and unfit for consumption, but it's the basics.

//Just imagine this is more, about one screenfull.
//The ones are wall pieces, two, three and four are
//shadow variations and five is floor. Can you visualize the data?
const u16 someMapData[] =
{
1, 1, 1, 1, 1, 1, ...
1, 2, 3, 3, 3, 3, ...
1, 4, 5, 5, 5, 5, ...
1, 4, 5, 5, 5, 5, ...
1, 4, 5, 5, 5, 5, ...
1, 4, 5, 5, 5, 5, ...
...
};

void LoadTestMap()
{
//Again, top of my head.
memcpy(someMapData, BG0, sizeof(someMapData));
}
Assuming you have, through similar methods, loaded the graphics tiles into their proper memory area, you should get whatever you visualized on screen. This all assumes you have a header file to describe whatever "BG0" is supposed to be -- in this case, a pointer to the VRAM area where the bottom background layer is stored.

Also note that I used "const u16" instead of just "int" -- for one, such data should be defined constant so it doesn't take up extra RAM, and for two it really should match the type of the target.

____________________
Wife make lunch - Shampoo
Opera - give it a spin
Spare some of your free time?
<GreyMaria> I walked around the Lake so many goddamn times that my sex drive was brutally murdered
Kawa rocks — byuu
Pages: 1 2 3


Main - ROM Hacking - asm programming = slave labor New thread | New reply

Acmlmboard 2.1+4δ (2023-01-15)
© 2005-2023 Acmlm, blackhole89, Xkeeper et al.

Page rendered in 0.022 seconds. (342KB of memory used)
MySQL - queries: 89, rows: 128/131, time: 0.013 seconds.