I completely agree. Also, I hope disaster never strikes because a house fire or a flooded basement could easily wipe out his entire collection. And that'd be a tragic loss for everyone, not just the owner.
"You snooze, you lose." is a pretty terrible take, and it makes even less sense when we're talking about digital content that more or less exists in perpetuity.
Are people legally entitled to the games featured on the 3DS and Wii U eShops? No, but did Nintendo force people to buy them? Yes, and that's wrong.
I have a soft spot for both the cartoon and the Sega Genesis game, so I'm really excited to see a follow-up with modern design sensibilities. (Fun fact: The Sega Genesis game uses the same (terrible) sound driver as DOOM 32x.) Also, I second the Kabukiman cameo!
This announcement has made me very concerned about the future of Playmaji and the Polymega. Like, I legitimately want to own a Polymega console, I have for years, and I may finally have enough funds to purchase one come summer of this year. That said, nothing about this announcement inspires hope that the company will survive let alone be able to fulfill my order.
To Playmaji I say this, I genuinely want you all to succeed! I absolutely think there is a place for devices like the Polymega. I am extremely worried about your partners in Myanmar. I want to know how they're doing! (Seriously, keep us posted like Frogwares does!) I know you're trying to make the best out of a bad situation. The Remix seems like a decent solution, but I'd be lying if I didn't say I'm also getting 32x / Creative 3DO Blaster vibes from it. Keep focusing on the software! Being able to back up and play all of my old games on multiple devices sounds amazing! Lastly, and this will sound disrespectful no matter how I phrase it, try to read the room better. You do not have the same amount of good will built up as other companies do. Every delay and/or new product announcement hurts your credibility. Don't tease a big announcement, and then delay it, when everybody is expecting that announcement to be that you've resolved your supply chain issues, and/or you're now shipping more than 50 units a month.
Edit: I hope I didn't come across as too harsh. I say all of this out of love for what you do and what the Polymega represents. Think of me as being like Cat-Pat before he made his "Burnout" video.
While I'm not trying to refute your point, IDW's run of TMNT has had several cross-overs already. They've done Batman, Ghostbusters, the X-Files, and Power Rangers so far.
I wish we could PM each other. I'm really enjoying our conversation even though it's completely off-topic at this point.
I didn't realize static_cast and the like were relatively new to C++. I already make use of them. I don't like the code bloat but I like the syntax and the vagueness of C-style casts less.
When you refer to dynamic type detection, are you talking about the is_pointer template class and what not? Those do seem pretty handy. Visual Studio 2010 doesn't fully support them. I'd use a newer compiler but I've got a few projects I'm still working that are already set up for VS2010.
Regarding the algorithm library, I know it's powerful but I hate the design of it. I understand why it was built that way but it feels like such a C-style solution to a C++ problem. I shouldn't have to include a separate library to perform simple tasks on the objects inside of a vector. That functionality should have been built into the vector class.
You've probably picked up on this but I don't really like C++'s template syntax. It makes code longer, and I find it hard to read. That said, it's not nearly as offensive to me as pre-processor macros. I understand why people use both but that doesn't mean I like it.
As for the auto declaration, that is something I'm interested in but I don't believe it's fully supported in VS2010 either. (I remember messing around with it a while back and running into trouble.) I also find the syntax for lambda functions hard to read. (Function pointers are confusing enough as is.)
I'll concede that C and C++ are too similar to be considered different languages but I take issue with referring to Assembly as such. That's like saying Python is no different than C just because it was built with it.
I agree that malloc is generally a bad idea. The reason why I use it is to read in a large chunk of data all at once rather than read it in byte-by-byte and then push copies to a vector. I also can't cast an address to a vector of uint8_t's to whatever data type I need it to be. I could use C++'s new operator but that would require me to define a type and the chunk of data I'm reading in may be composed of several. Void pointers just make sense here and that means using malloc which means using C.
As for smart pointers, I haven't used them much. I know I probably should but I don't like the syntax and I enjoy the challenge of managing my own memory. Truth be told, I haven't really messed with Boost or any of the new features added to C++ since 2003 or so. (nullptr is awesome though!)
Lastly, I am out of my depth here but I know both Java and Python have some kind of foreign function interface which allows you to call subroutines written in other languages. I know you can also extend the Python language using C / C++. I imagine it wouldn't be too hard to write a program in Java or Python that uses a library written in something completely different. In Polymega's case, I'm guessing they just wrote some kind of wrapper in C though.
While I do think referring to C as a "low-level" language is somewhat misleading, interpreted languages like Java, Python, and Ruby are becoming more prevalent. Since those are considered "high-level" languages, I can understand why someone would refer to a compiled language like C as "low level."
Regarding writing a program in multiple languages, Visual Studio will absolutely allow you to do this. You can write a C++ program that also includes C and Assembly code.
As for why people still use C, I don't know enough about the differences to give you a definitive answer. I can tell you why I use it though.
C++ is strongly typed and will not allow you to dynamically allocate memory and assign the address to a void pointer. You can get around this by making use of C's malloc function.
I find File I/O in C to be simple and elegant. You've got one data type and several functions you can use to read and write data. File I/O in C++ is needlessly complicated. You've got multiple data types and functions specific to each.
Comments 58
Re: Random: Dude Collects 1000 Copies Of Dragon Warrior On NES, And He's Still Not Done
@MetaCrystal
I completely agree. Also, I hope disaster never strikes because a house fire or a flooded basement could easily wipe out his entire collection. And that'd be a tragic loss for everyone, not just the owner.
Re: Now's The Time To Hack Your 3DS
@Tasuki
"You snooze, you lose." is a pretty terrible take, and it makes even less sense when we're talking about digital content that more or less exists in perpetuity.
Are people legally entitled to the games featured on the 3DS and Wii U eShops? No, but did Nintendo force people to buy them? Yes, and that's wrong.
Re: The Toxic Crusaders Are Back In An All-New Beat 'Em Up Adventure
I have a soft spot for both the cartoon and the Sega Genesis game, so I'm really excited to see a follow-up with modern design sensibilities. (Fun fact: The Sega Genesis game uses the same (terrible) sound driver as DOOM 32x.) Also, I second the Kabukiman cameo!
Re: Polymega's Next Trick? Ditching Dedicated Hardware
This announcement has made me very concerned about the future of Playmaji and the Polymega. Like, I legitimately want to own a Polymega console, I have for years, and I may finally have enough funds to purchase one come summer of this year. That said, nothing about this announcement inspires hope that the company will survive let alone be able to fulfill my order.
To Playmaji I say this, I genuinely want you all to succeed! I absolutely think there is a place for devices like the Polymega. I am extremely worried about your partners in Myanmar. I want to know how they're doing! (Seriously, keep us posted like Frogwares does!) I know you're trying to make the best out of a bad situation. The Remix seems like a decent solution, but I'd be lying if I didn't say I'm also getting 32x / Creative 3DO Blaster vibes from it. Keep focusing on the software! Being able to back up and play all of my old games on multiple devices sounds amazing! Lastly, and this will sound disrespectful no matter how I phrase it, try to read the room better. You do not have the same amount of good will built up as other companies do. Every delay and/or new product announcement hurts your credibility. Don't tease a big announcement, and then delay it, when everybody is expecting that announcement to be that you've resolved your supply chain issues, and/or you're now shipping more than 50 units a month.
Edit: I hope I didn't come across as too harsh. I say all of this out of love for what you do and what the Polymega represents. Think of me as being like Cat-Pat before he made his "Burnout" video.
Re: Teenage Mutant Ninja Turtles And Street Fighter Clash In New Comic Series
@Ganner
While I'm not trying to refute your point, IDW's run of TMNT has had several cross-overs already. They've done Batman, Ghostbusters, the X-Files, and Power Rangers so far.
Re: Exclusive: Polymega Creator Playmaji On FPGA, Sega Saturn And Dealing With 'Healthy' Scepticism
@Yorumi
I wish we could PM each other. I'm really enjoying our conversation even though it's completely off-topic at this point.
I didn't realize static_cast and the like were relatively new to C++. I already make use of them. I don't like the code bloat but I like the syntax and the vagueness of C-style casts less.
When you refer to dynamic type detection, are you talking about the is_pointer template class and what not? Those do seem pretty handy. Visual Studio 2010 doesn't fully support them. I'd use a newer compiler but I've got a few projects I'm still working that are already set up for VS2010.
Regarding the algorithm library, I know it's powerful but I hate the design of it. I understand why it was built that way but it feels like such a C-style solution to a C++ problem. I shouldn't have to include a separate library to perform simple tasks on the objects inside of a vector. That functionality should have been built into the vector class.
You've probably picked up on this but I don't really like C++'s template syntax. It makes code longer, and I find it hard to read. That said, it's not nearly as offensive to me as pre-processor macros. I understand why people use both but that doesn't mean I like it.
As for the auto declaration, that is something I'm interested in but I don't believe it's fully supported in VS2010 either. (I remember messing around with it a while back and running into trouble.) I also find the syntax for lambda functions hard to read. (Function pointers are confusing enough as is.)
Re: Exclusive: Polymega Creator Playmaji On FPGA, Sega Saturn And Dealing With 'Healthy' Scepticism
@Yorumi
I'll concede that C and C++ are too similar to be considered different languages but I take issue with referring to Assembly as such. That's like saying Python is no different than C just because it was built with it.
I agree that malloc is generally a bad idea. The reason why I use it is to read in a large chunk of data all at once rather than read it in byte-by-byte and then push copies to a vector. I also can't cast an address to a vector of uint8_t's to whatever data type I need it to be. I could use C++'s new operator but that would require me to define a type and the chunk of data I'm reading in may be composed of several. Void pointers just make sense here and that means using malloc which means using C.
As for smart pointers, I haven't used them much. I know I probably should but I don't like the syntax and I enjoy the challenge of managing my own memory. Truth be told, I haven't really messed with Boost or any of the new features added to C++ since 2003 or so. (nullptr is awesome though!)
Lastly, I am out of my depth here but I know both Java and Python have some kind of foreign function interface which allows you to call subroutines written in other languages. I know you can also extend the Python language using C / C++. I imagine it wouldn't be too hard to write a program in Java or Python that uses a library written in something completely different. In Polymega's case, I'm guessing they just wrote some kind of wrapper in C though.
Re: Exclusive: Polymega Creator Playmaji On FPGA, Sega Saturn And Dealing With 'Healthy' Scepticism
@Yorumi
While I do think referring to C as a "low-level" language is somewhat misleading, interpreted languages like Java, Python, and Ruby are becoming more prevalent. Since those are considered "high-level" languages, I can understand why someone would refer to a compiled language like C as "low level."
Regarding writing a program in multiple languages, Visual Studio will absolutely allow you to do this. You can write a C++ program that also includes C and Assembly code.
As for why people still use C, I don't know enough about the differences to give you a definitive answer. I can tell you why I use it though.
C++ is strongly typed and will not allow you to dynamically allocate memory and assign the address to a void pointer. You can get around this by making use of C's malloc function.
I find File I/O in C to be simple and elegant. You've got one data type and several functions you can use to read and write data. File I/O in C++ is needlessly complicated. You've got multiple data types and functions specific to each.