Almost like I've seen your other whiney opinions here and was commenting on your whiney opinionS. And it's kind of like I was assessing your overall contribution rather than a singular post, since when talking about contributions, it's a summary of work and not one event. Context is hard though, I understand.
I do. I'm in the discord under a separate name, this is an account I've had on here for a while and don't want the two combined. Daeken and a few others have noticed that I'm on here and know I'm also in discord, but aren't sure who I am on there. I like it that way. I like to keep degrees of separation, it's an odd compulsion I've always had (among the many others)
That being besides the point, I've contributed to the PSP scene, and 3DS scene, and know a bunch of the guys from this one, one personally. I've put in a couple PRs for libtransistor now. I have vacation in 2 weeks, when I'll probably finish up a bochs port I started the other night.
See, when you have a full-time job, a wife, and various other responsibilites, it saps at your ability to make free software for people who assert ignorant opinions about skills they don't have.
I do! 5, sometimes 6 days a week! It's the reason I went into my field, glad you can appreciate that. If you're going to tell someone off though, don't offer them an option they'll not only enjoy, but will do regardless. Looks desperate and uncreative. You know those people who you meet in every day life that just kind of rattle off the same old tired phrases and don't really say anything worthwhile? It's kind of like that.
Can you develop a sense of self-awareness enough to realize that your opinion when it comes to things you don't know anything about doesn't matter though? Asking the real tough questions, I know.
You're very welcome dude. I come on here and shit on people if they have a bad attitude or act liked spoiled little fuckers, but I'm actually a pretty friendly dude. I like doing this stuff because back in the PSP days I was very new and barely could scrap together a minigame in LUA, and the scene is what got me so interested in learning and expanding my skills. Tons of helpful people were around too, and if you were courteous to them they would help when they could. I'd like to return the favor, problem is that 90% of the users on this site are armchair experts with no real knowledge, and a whole lot of self-esteem wrapped up in that tiny bit knowledge they've received via osmosis.
If you look around on these forums it's kind of funny to watch. People that flat out state they "aren't experts", yet immediately try to go on and explain something they completely misunderstand.
I do! 5, sometimes 6 days a week! It's the reason I went into my field, glad you can appreciate that. If you're going to tell someone off though, don't offer them an option they'll not only enjoy, but will do regardless. Looks desperate and uncreative. You know those people who you meet in every day life that just kind of rattle off the same old tired phrases and don't really say anything worthwhile? It's kind of like that.
Can you develop a sense of self-awareness enough to realize that your opinion when it comes to things you don't know anything about doesn't matter though? Asking the real tough questions, I know.
You're very welcome dude. I come on here and shit on people if they have a bad attitude or act liked spoiled little fuckers, but I'm actually a pretty friendly dude. I like doing this stuff because back in the PSP days I was very new and barely could scrap together a minigame in LUA, and the scene is what got me so interested in learning and expanding my skills. Tons of helpful people were around too, and if you were courteous to them they would help when they could. I'd like to return the favor, problem is that 90% of the users on this site are armchair experts with no real knowledge, and a whole lot of self-esteem wrapped up in that tiny bit knowledge they've received via osmosis.
If you look around on these forums it's kind of funny to watch. People that flat out state they "aren't experts", yet immediately try to go on and explain something they completely misunderstand.
IDE's have partially changed the game, but assembler is a tedious torture chamber of opcode memorization and careful documentation. Even with a strong library, it's a tedious chore to perform even simple tasks. Nobody likes assembler and nobody uses it when there's a better option.
C/Python/Lua let me use naming convention/meaningful names to make things easy to read without the aggravation of cryptic opcodes and constantly composing comments to explain my code to the next person. Assembler is just too d@#n close to the metal.
As most are saying C/C++. it is probably best you don't just jump in. If you are creating a tool (one comparable to Anemone3DS or FBI) C might suit you better. However, if you are developing a game/application (comparable to Clementine or Super Hexagon) C++ might suit you better because of OOP.
As most are saying C/C++. it is probably best you don't just jump in. If you are creating a tool (one comparable to Anemone3DS or FBI) C might suit you better. However, if you are developing a game/application (comparable to Clementine or Super Hexagon) C++ might suit you better because of OOP.
Good advice. One addon though is I would suggest also learning a weakly typed language of any kind on top of a strongly typed language like C/C++/Java. There's a weird disconnect when you've worked exclusively in one for a long time without being introduced to the other. People typically used to strong-typed languages have a lot of difficulty at first with languages like javascript, which is understandable since one of the things you'll get used to in strongly typed languages like C or C++ is keeping types in mind through each session. When you're working in an IDE, or a text editor and compiling, it sucks for a long term build to fail because you forgot a function you wrote returns a double and you try to cram it into a string for whatever reason (maybe not enough coffee that morning).
So it kind of becomes a subpriority in the back of your mind while you're working away. So adapting to a different model like that can take some time, but easier the earlier you do it.
The other addon: learn build systems early on. Make, cmake, gradle, and gulp are all really good to learn, though gulp in itself requires knowledge of javascript, so be aware on that one. Unrelated to builds, but for fucks sake learn gdb. Trying to debug with print statements takes orders of magnitude more time than just learning how to properly step through a program. I can't tell you how many devs I've seen at jobs that take 3 days to find a bug using print statements when it could have been solved in an hour or two if they just used the right tool from the beginning.
Given that C lets me directly allocate memory and create my own data types, I'm not sure I would characterize it as strongly typed.
Maybe the definition of the term has evolved since the Fortran versus Pascal typing debates I recall, but C seems very flexibile with data types to me.
Given that C lets me directly allocate memory and create my own data types, I'm not sure I would characterize it as strongly typed.
Maybe the definition of the term has evolved since the Fortran versus Pascal typing debates I recall, but C seems very flexibile with data types to me.
Eh, it's fairly strongly typed, it's not exactly a black and white concept since the definition is argued over. The better word would be statically typed since it's checked during compile time. My apologies.
IDE's have partially changed the game, but assembler is a tedious torture chamber of opcode memorization and careful documentation. Even with a strong library, it's a tedious chore to perform even simple tasks. Nobody likes assembler and nobody uses it when there's a better option.
C/Python/Lua let me use naming convention/meaningful names to make things easy to read without the aggravation of cryptic opcodes and constantly composing comments to explain my code to the next person. Assembler is just too d@#n close to the metal.
You wrote "Nobody likes assembler and nobody uses it when there's a better option", which is wrong. Assembler as some advantages over high level languages and you can argue that it's simpler because there are no structures, classes etc. Assembler is how a computer works and you can try to hide it with a high level language, but in the end everything comes down to machine code. A good programmer should understand the hardware anyways.
You wrote "Nobody likes assembler and nobody uses it when there's a better option", which is wrong. Assembler as some advantages over high level languages and you can argue that it's simpler because there are no structures, classes etc. Assembler is how a computer works and you can try to hide it with a high level language, but in the end everything comes down to machine code. A good programmer should understand the hardware anyways.
I never said nobody uses assembly, but nobody should. Assembler has different requirements for different systems. If everybody uses the same platform it wouldn't be a waste of time, but they don't so it requires a lot more effort than what should be needed.
And by your logic, we should be writing applications in binary because that is how computers execute them and it allows for more freedom. Sometimes a high level language is better than a low level language.
I never said nobody uses assembly, but nobody should. Assembler has different requirements for different systems. If everybody uses the same platform it wouldn't be a waste of time, but they don't so it requires a lot more effort than what should be needed.
And by your logic, we should be writing applications in binary because that is how computers execute them and it allows for more freedom. Sometimes a high level language is better than a low level language.
But the person I quoted did. Assembler is still very useful for time crucial applications, integrated stuff and probably compiler building.
Knowing how the hardware works is crucial to write efficient code. Efficient code is not needed for simple homebrew apps but for professional stuff. The higher the level of the language is, the more power is wasted from the hardware to compensate the gap between code and hardware.
But the person I quoted did. Assembler is still very useful for time crucial applications, integrated stuff and probably compiler building.
Knowing how the hardware works is crucial to write efficient code. Efficient code is not needed for simple homebrew apps but for professional stuff. The higher the level of the language is, the more power is wasted from the hardware to compensate the gap between code and hardware.
You do realize that all code ends up in binary at the end? You can write the same application in assembly as you can C. All of that lost time is made up for portability.
I don't know anyone that wants to spend more time and money with x64 assembler. (Or, are we maintaining two code bases for x86 compatibility and x64? Another for ARM?)
Assembler as some advantages over high level languages and you can argue that it's simpler because there are no structures, classes etc.
Structures don't complicate design--they simplify. Logical naming and structure makes code easier to read and maintain.
Assembler is how a computer works and you can try to hide it with a high level language, but in the end everything comes down to machine code. A good programmer should understand the hardware anyways.
But the person I quoted did. Assembler is still very useful for time crucial applications, integrated stuff and probably compiler building.
Knowing how the hardware works is crucial to write efficient code. Efficient code is not needed for simple homebrew apps but for professional stuff. The higher the level of the language is, the more power is wasted from the hardware to compensate the gap between code and hardware.
You do realize that all code ends up in binary at the end? You can write the same application in assembly as you can C. All of that lost time is made up for portability.
Sure, but assembly gets transated direclty while C (which is a pretty low level language) and higher level languages contain commands etc. that don't directly exist in hardware. There is no "loop" machine code - only jumps. As I said, it depends on the purpose of the code.
I don't know anyone that wants to spend more time and money with x64 assembler. (Or, are we maintaining two code bases for x86 compatibility and x64? Another for ARM?)
It depends on the purpose of the code. There are cases where a fast code is crucial and where it is crucial to know exactly how long a program takes. That's nearly impossible with higher level languages.
That depens on the perspecitve. Access modificators may lead to compiler errors although the code should work on a logical layer, you have more keywords etc. Assembly is named logical, too. Nocash would tell you that it's much easier to read assembly. It depends on what you're used to, how you got teached etc.
I said that, too. That's why I pointed out that using assembly instructions is a last resort--or only when there isn't a better option. Something you said was "wrong" before you started backpedaling.
Also, writing the No$ emulators in assembly will ultimately kill the project. I have a hard time believing the code hasn't evolved into a monster. It can't be ported to other platforms. Worst of all, x86 will eventually be abandoned and the No$ emulators will all be forced to run on top of an additional layer to translate instructions to x64. That will nullify the performance benefits.
It depends on the purpose of the code. There are cases where a fast code is crucial and where it is crucial to know exactly how long a program takes. That's nearly impossible with higher level languages.
You just rephrased your first statement and ignored what I asked.
This response is nosense because you completely ignored my question. I pointed out how much work it would be to maintain completely independent code bases for multiple pieces of hardware. Does that make sense for an emulator?
I said assembler is not good unless there's no other option. You said I'm "wrong". Then, you started backpedaling with a bunch of "umm.. umm.. it depends" garbage.
That depens on the perspecitve. Access modificators may lead to compiler errors although the code should work on a logical layer, you have more keywords etc. Assembly is named logical, too. Nocash would tell you that it's much easier to read assembly. It depends on what you're used to, how you got teached etc.
Nocash is good at x86 assembler and x86 assembler is moving towards deprecation. It's great to have another option in the community, but I wouldn't choose assembler for many (if any) projects. It's just too d#$n close to the metal.
This is the most ignorant thing you have said all day.
Languages that are low level are Machine code and assembly.
C is a high level language. The way I see it is this:
Machine Code -> Assembly -> Compiled Languages (C, C++, Objective C, etc) -> Scripting Languages (Python, Perl, Batch, etc)
And to the rest of your post: You are reversing pretty much close to everything you have stated with the statement "As I said, it depends on the purpose of the code."
The only benefit to Assembly is speed, and the only legitimate reason I can defend for using Assembly for that purpose is a BootROM where a glitch attack is possible (AKA, Switch, 3DS, Wii U, etc). The faster the execution the better. Do you know of any games that were written in Assembly? No. Assembly libraries don't exist because you have to make everything yourself.
The whole purpose of high level languages is to provide an abstraction to lower levels.
Assembly is an extraction of machine code, Compiled languages of Assembly, and scripting languages of compiled languages. Your arguments are moot in the sense of software development (which I might remind you the topic of this thread is).
EDIT: To prove my point, here is hello world in Machine Code, Assembly, C, and then Python.
Machine Code said:
Code:
b8 21 0a 00 00 #moving "!\n" into eax
a3 0c 10 00 06 #moving eax into first memory location
b8 6f 72 6c 64 #moving "orld" into eax
a3 08 10 00 06 #moving eax into next memory location
b8 6f 2c 20 57 #moving "o, W" into eax
a3 04 10 00 06 #moving eax into next memory location
b8 48 65 6c 6c #moving "Hell" into eax
a3 00 10 00 06 #moving eax into next memory location
b9 00 10 00 06 #moving pointer to start of memory location into ecx
ba 10 00 00 00 #moving string size into edx
bb 01 00 00 00 #moving "stdout" number to ebx
b8 04 00 00 00 #moving "print out" syscall number to eax
cd 80 #calling the linux kernel to execute our print to stdout
b8 01 00 00 00 #moving "sys_exit" call number to eax
cd 80 #executing it via linux sys_call
I m through with a lot of languages but tbh - i only had to use asm when i really had to communicate on low Level. As Long as you dont want to Hack and Reverse Code stay away from asm!
It will burn your brain if u start with it!
Stick to c - its easy enough as a beginner. Or if u want to learn but not program on switch immediately after learning - Start with basic... or Maybe Lua (super simple and not that strong)... usually lua will run on any hacked Device sooner or later
As each year passes, retro games become harder and harder to play, as the physical media begins to fall apart and becomes more difficult and expensive to obtain. The...
While rumors had been floating about rampantly as to the future plans of Nintendo, the President of the company, Shuntaro Furukawa, made a brief statement confirming...
Nintendo has officially announced that a successor to the beloved Switch console is on the horizon. As we eagerly anticipate what innovations this new device will...
TheFlow has done it again--a new kernel exploit has been released for PlayStation 4 consoles. This latest exploit is called PPPwn, and works on PlayStation 4 systems...
DOOM is well-known for being ported to basically every device with some kind of input, and that list now includes the old retro game console in Persona 5 Royal...
With the vast success of Super Mario Maker and its Switch sequel Super Mario Maker 2, Nintendo fans have long been calling for "Maker" titles for other iconic genres...
With just a couple weeks after its initial release in the App Store, the Delta emulator for iOS was received with great success, after Apple loosened up its rules in...
Retro handheld manufacturer Anbernic has revealed its first clamshell device: the Anbernic RG35XXSP. As the suffix indicates, this handheld's design is inspired by...
After rumour got out about an upcoming NES Edition release for the famed Nintendo World Championships, Nintendo has officially unveiled the new game, titled "Nintendo...
The number of layoffs and cuts in the videogame industry sadly continue to grow, with the latest huge layoffs coming from Microsoft, due to what MIcrosoft calls a...
Nintendo has officially announced that a successor to the beloved Switch console is on the horizon. As we eagerly anticipate what innovations this new device will...
While rumors had been floating about rampantly as to the future plans of Nintendo, the President of the company, Shuntaro Furukawa, made a brief statement confirming...
As each year passes, retro games become harder and harder to play, as the physical media begins to fall apart and becomes more difficult and expensive to obtain. The...
Ubisoft has today officially revealed the next installment in the Assassin's Creed franchise: Assassin's Creed Shadows. This entry is set in late Sengoku-era Japan...
After a little more than three years of exclusivity with the Epic Games Store, Square Enix has decided to bring their beloved Kingdom Hearts franchise to Steam. The...
After several months of work, the Harbour Masters 64 team have released their first public build of 2Ship2Harkinian, a feature-rich Majora's Mask PC port. This comes...
TheFlow has done it again--a new kernel exploit has been released for PlayStation 4 consoles. This latest exploit is called PPPwn, and works on PlayStation 4 systems...
After rumour got out about an upcoming NES Edition release for the famed Nintendo World Championships, Nintendo has officially unveiled the new game, titled "Nintendo...
DOOM is well-known for being ported to basically every device with some kind of input, and that list now includes the old retro game console in Persona 5 Royal...
The number of layoffs and cuts in the videogame industry sadly continue to grow, with the latest huge layoffs coming from Microsoft, due to what MIcrosoft calls a...
I've been playing fallout4 all day, I went into a elevator and it kept going, never stopped, waited 5 minutes, must of been a bug. How bout you, whatcha do today?