I try to code a PS1 game.
Vložit
- čas přidán 26. 06. 2024
- And it really works!
Thanks to psxdev.net for their enormous amount of information about the subject.
Go join the PSX.dev discord to learn how this should be done correctly...
/ discord
I don't have any socials,
go away. - Věda a technologie
Okay I need to clear something up as I'm seeing a lot of comments about the same thing.
1) I do know I could have used a virtual machine. I just wanted to make things more interesting.
2) I don't really know why but the 32bit compatibility of modern Windows and CPUs just doesn't seem to work with PSYQ
3) The second part is already being worked on. You can watch my other videos in the meantime if you want ;)
4) I managed to reply to all comments but I'll have to start skipping some because at this rate I wouldn't be doing anything else in my day.
5) CZcams exploded this and I'm grateful to every single person who sees this
Damn 6 mins ago😳
Excellent video, mate! You've got a new subscriber!
Eh, in my (limited)experience virtual machines can be pretty slow and buggy, game development on one sounds like hell. I bet the reason why PSYQ would only work on 32 bit Windows is because the program is likely 16 bit, and to my knowledge, I don't think there's really a good way to make 16 bit software run in 64 bit versions of Windows.
well you could emulate the CPU which would be slower, but you'd have the exact 32bit instruction set you needed (e.g., Pentium 4).
Gotta love anyone that likes dankpods
Man coded a PS1 game and got it running on original hardware just for the fun of it.
You have my respect
If there is one thing I would love for the general public to understand: It's how INCREDIBLY DIFFICULT it is to develop for older systems. Just getting this demo to work impresses me more than a lot of the flashy bloated modern tech-stack apps I usually see.
It was a pain but it was definitely worth it.
I think it's because you're having to cross compile for old processor architectures that were either custom to that console or are no longer used, what with most of the development of compilers going into X86 and ARM.
Why would older systems be so much more difficult?
@@JohnSmithZen obscurity, harder to find resources
@@JohnSmithZen i think by hard, they really mean "none of my prior knowledge helps so i had to research for 8 hours" not "in the grand scheme of learning stuff this is a harder thing to learn"
As a once frustrated young game dev this brings me so much warm into my heart, good job dude! Keep it up!
Speaking 🔊 🗣 of warmth and development...is this Open Source to make additions? Like 👍 👌 maybe the Red is actually 🤔 Fire 🔥 & the Man 👨 in Blue is rushing to the exit...so I could see it being like a randomly generated Escape Room. Also I could make Sprites just as an example. At least sum of Them.
what@@veganfoodsCZcams
Bro, this is so cool. It warms my heart to see people take an interest in old hardware.
Since I don't have a community tab yet I'd like to announce here that I will not be able to get a video out no sooner than August. I'm terribly sorry about this but that's just how things are. 🤷♂
The next video is going to be a second part of this so stay tuned!
It's fine. Also, it's so dumb CZcams locks the community tab behind a certain subscriber count
Can you make win 98 games?
@@gpubenchmarks7905 probably!
@@Bandwidth_ytb :))) Can you make something with Blood Monolith 1997.
@@gpubenchmarks7905 maybe
Code in PSYQ and psn00b is the same, the same libraries, same techniques, same everything, except psn00b is a replica of the original, while PSYQ was the original. psn00b produces faster code, and even compiles faster (with multithreading and PCH). Also you'd be better off with no$psx with a debugger and breakpoints. I've been coding PS1 for the last 3 years.
I'll probably use it for the second part
@@Bandwidth_ytb HOW MANY FARDS CAN YOU PUT IN THE GAME BEFORE IT BREAKS?!?!?!?!?
You should also be able to debug with DuckStation. I've written the GDB stub that hooks into its debugging facilities, so if you use a toolchain that emits ELF you'd have access to such luxuries as symbolic debugging. One caveat is that I wrote it for reverse-engineering, so I'm not sure how janky that would be for actual debugging. Do ask questions if you're interested, I don't think it's properly documented.
explain in fortnite terms
@@wizkhalifa_official7179 FARD
Loved the way that you respected an amazing product of it's era. I lived that time and it was really amazing. Thanks for that video and for all the respect that you showed. Amazing video.
This was really fun to watch. I loved seeing your excitement once it started working!
This is probably the best thing CZcams has recommended me to this day. I was always interested in researching the hardware of these retro consoles but now you got me interested in the software and development side as well. Good work mate.
Thanks comments like these motivate me to make more!
link to channel that does hardware breakdowns and the development of the retro consoles retro 48k: czcams.com/users/RETRO48K great info
Agreed
fr!
@@CorporateComedy thanks pal
i've been looking for a motivation last days, a motiviation to revives me the love for programming and i found this video. nice content, keep doing what you are doing, you gonna be a great and awesome developer.
The tech part is incredible and your humor is just hilarious. You got my sub!
This was an insanely fun watch. I never understood the appeal of making new software for old systems but somehow I get it now- to see your game run on actual hardware makes it feel legit, no matter how much effort went into the game itself.
yeah well when he is trying blindly he did rather well trying to code a game for that console considering he does not know the hardware at all from a coding stand point
I've always dreamt of developing games for these older consoles! I just didn't know how. Thanks for proving it possible! I can't wait to try this myself!
Glad I could help!
Yo this was so cool to watch man keep killing it!
Congratulations!! That was a wonderful journey to follow.
Man as a fellow coder you earn my subscribe. it is incredibly difficult to develop in these older systems due to how much limitations on memory management were on this systems due to the technology of the time. This is why techniques such as compression for assets came to be, yes the graphics weren't that great but if you look at it was truly genius how developers focused on absolute efficiency because of limitations. Nowadays programmers have technically infinite memory resources which simply ignore optimization.
We need optimization then use bloatware bullshit : (
right on!! whats your github? im interested in starting coding
The ps1 game devs are the goats
@@RealAliens-fw4nqL
That's why FF7 had 3 disks. Lol
For such a small channel you've got so much talent that so few have seen. I can't wait to see what you do in the future!
I hope I can keep up!
@Bandwidth You definitely can!
@@Bandwidth_ytb keep what up?
The fact that anybody was ever able to program and code video games even at all is absolutely mind-blowing even like the old pong is absolutely mind-blowing let alone games like The Witcher 3 or something like that it's nothing short of a miracle
I know right? Pretty much voodoo black magic to me lol
I would have loved to see some more details about the coding: how the SDK expects the files' layout, whethere there is some particular "approach" you need to adopt to generate graphics and/or logic, etc..
I just now realised that this man only has 92 subscribers.
Edit: OK guys I get it this comment is old and he no longer only has 92 subscribers
I'm watching it grow every day and I'm still blown away.
@@Bandwidth_ytb have my sub too, this was an awesome video
11 days later he’s over 600! 🔥
Edit: fixed later
this video alone will get him subscribers for sure :)
@@Bandwidth_ytb can you give me a shout out brother?
The algorithm is working. This was really amazing. Awakened the desire to start learn to code. Thanks man.
That's crazy cool! Thanks for watching and good luck coding 👍
Dude, this is awesome! Keep up the good work!
Oh man, seeing you excited at the end made me excited as well - Congrats for a great video!
This is absolutely phenomenal on so many levels. You are a true genius, sir!
"Stand back. I'm arming the nugget" absolutely amazing I'm subscribing
Yes dankpods
You have funny editing man i love the videos i learn so much
This video is the best video i watched in all my life, is so chill and gracious. Its third time i watched!
Really great insight on PS1 development and encouraging for those who dont have the money to shell out for something like a Net Yaroze
That's what I aimed for!
This was awsome! I'm learning C and wish I could make something like this some day!
C is one of the hardest languages to learn. But it is very much doable. If you keep trying you'll be able to do something like this in no time.
C# or c++?
@@XinnDev_ANS C, only C. This is another language.
@@XinnDev_ANS just C, everything else is just toy languages lol
@@gman6860 hmm... I haven't learned that one yet
you are hope in humanity personified. so young and so competent in your own chosen craft. good luck to your future plans.
Your video popped up randomly in my feed and brought back memories of uni. Back in 2003/2004 part of our uni course was to do PS1 programming. I think we used net yaroze to simplify things as we could transfer data via serial cables. We learned a lot about scrolling backgrounds and using sprite sheets for animation.
This is awesome, congratulations! I would have been curious to have a quick look at the source code, but other than that, this is basically perfect!
I'll put it in the description when I get home from Austria.
This was a very fun video to watch, you are a natural at making these!
Thanks! I appreciate that!
the video, his room and the environment of this makes me nostalgic idk why
The legit joy in your voice when it runs is so wholesome. Sick video man, great job :)
Very enjoyable video! A good amount of entertaining chaos and actual result. I look forward to seeing more from you!
I had a similar experience with my first Sega Mega Drive demo, burning an actual ROM, and putting it into a PCB. The game started, and I've cried a bit of joy. Never coded a PS before, but this looks awesome. Maybe I should whip up a PS devkit on my old duron. Excellent video.
Dude, i can understand the difficult you faced all the time,
And this incredible masterpiece will be the one of your best moment ever
this is epic dude. thanks for the information / video
It’s awesome to see a fellow nerd from a more energetic generation go through the same process my generation did with the NES a decade prior. So many parallels.. ❤
im also really surprised it worked it flawlessly on the console itself. i decided to code a game for my 3ds back in the winter. i got it working flawlessly on the emulator but as soon as a gave it a shot on my actual 3ds, im pretty sure i ran into some memory management issues (something about how my minimax algorithm was functioning). i might try to figure it out eventually.
awesome job. always good to challenge urself like this.
Your video was a great inspiration during my coffee break to get back to work!
Man, this is so entertaining. Well done sir :)
I haven’t been more interested in PS1 game development than I am now that I watched this video. Thanks
That is so cool. It made me happy to see it worked aswell. I tried coding or making a game before but never could make it work (perhaps I aimed to high). But this was next level stuff you actually got it to work on the console itself. Congratulations.
Love the DankPods reference and its nice to see someone doing something I would love to do
I enjoyed the video very much ✨
I would like to see more of the what the actual coding looks like for part 2!
oh my god you don't know how glad I am to get such nerdy content in a format that isn't dry and is actually entertaining 🙏 thank you
I'm super glad you liked it!
Great video man. Can't believe you only had 92 subscribers before this blew up. The editing, quality and camera work are very well done. I think you have a natural talent for video creating AND programming. :-)
I appreciate that!
A subscription well earned. Thanks for the inspiration. Please make more.
I loved the condensed silliness of this video. Great content dude. Keep learning!
I was expecting to see the codes and a very brief explanation of the structure on what programmers had to take into account when making a game for the PS1 at the end.
And gotta say that the YT algorithm finally recommends something good to watch. Thanks for the work! Gotta check your following videos.
6:09 The Moment when you reading SUS instead of ASUS xD
Your joy at the end when it ran on the real hardware reminds me why I love programming!
this was so much fun. thanks for making this.
Awesome job man. I'm glad that it worked and it was a definite improvement from the emulator. I wasn't expecting that much of an improvement in speed but I was surprised.
I have never heard of your channel before now, but I’m glad CZcams recommended it to me! This was quite fascinating to watch. 😃
amazing work :D congratulations !
great job man, getting this far is a feat in itself.
A fellow Czech here, I love game development, and I love retro consoles / games. This was such a good video. You just got a subscriber from your own country!
same
Same too!
I _knew_ it!!! The accent!
Nedokážu uvěřit tomuhle sletu čechů
@@DaEpikRhythmGamer souhlas, je to šílený, ale jako je to super
This is really cool! Definitely interested to see more and where you can go with this. Also the fact that something can even still be coded for the PS1 today is awesome in itself!
And 2.2k subs in twelve days? Man, you're blowing up and rightfully so! Keep up the great work! Have my sub too. :P
I'm working on it! :D
@@Bandwidth_ytb this is seriously some of the best content i've seen from a
The intro was so funny!! Fantastic editing :)
I can see the potential for future arg's
This probably means nothing to some people, but for an 80s/90s kid, this was every gamers dream. Even if i wasn't involed in this, this really feels like i made my dream come true, through you. Thank you for making this possible
Hard agree! Dev kits were the holy grail for early console days! It was completely inaccessible until 5th Gen
Amazing video dude! I find it amazing that you tried to develop for a console that is probably older than yourself! I remember when the ps1 came out, it was an amazing machine and I have deep respect for the developers back then, they were really talented people.
This was really cool! Good job!
Super cool. You’ve got some serious skills man
Enjoyable video, enjoyed watching it all come together, Looking forward to upcoming PS1 content!
You earned your 61th Subscriber ;)
And I'm super grateful for every single one! Thank you very much!
this was pretty cool to see everything from start to finish. and that you even went old school and used an old laptop not even internet connected!! ("air gapped")
Yes, that was just part of the fun! :D
@@Bandwidth_ytb why is it dangerous to connect it to the internet? because of hackers or what?
amazing this video came in my recommended feed on the homepage just a few hours ago.
It's really fascinating how you solve every problem from the bottom. Kudos from S. Korea!
7:36 this is the setup of every teen in 2008 for creating source maps for gmod
great video!
Your content is the stuff of million-sub quality! Earned a sub.
Thanks! Stuff like this really motivates me!
I was expecting this youtuber to have a thousand subscribers but I was stunned to see him only have a few hundred subscribers. He's underrated
@@solisortus6241 three days later and it's several thousand. Gaining traction.
That's crazy, congrats on the result!
Very good content. Genuinely enjoyed the whole video. Keep up the good work!
Creating a PS1 game... You've just achieved a dream of many. Congratulations.
I wouldn't have this much motivation to make a game like you did haha, awesome job!! Underrated channel :)))
Thanks!
Kinda impressed that you record yourself researching, when I does that I got bored fast and start watching let's plays and forgot that I record myself doing that
i really appreciate your talent dude. keep it up
There are no cubes in 2D space. A cube is a 3 dimensional object. You mean you can move a square. 9:45
Well done. It was relatively tricky to get the first dev kits running from burned CDs back in the day. Lots of badly documented or undocumented config needed to be discovered.
I did not expect a dankpods reference anywhere today but it made the most sense to find it here
You remind me of another game dev here on CZcams named Dani.
I can’t wait to watch your other videos. Keep up the great work!
Not only is this a great concept, the comedy and editing is excellent too.
the corner... the CoRnEr... the CorNER COrNeR ... cOrneR ThE COrnEr
This is very good to see, I myself was working on a sequel to shrek noire trying to push windows 95 to its literal limits with raytracing
Sounds scary :D
@@Bandwidth_ytb we need insane people to aid in porting this game to the sega Saturn and Panasonic 3do, if you ever feel like trying to develop with us, ive got a video up of the windows 2000/xp port and I tested the 95 port on a geforce 256
Spectacular bro. Well done 👏
Subscribed, mate. You're quirky/dorky in a fun way! Stay true and continue making fun content!
very rare good recommendation from the algorithm lol. Nice work bro
Thanks it means the world to me!
From my years as an embedded programmer and electronics designer (digital electronics especially) I learned If one learns to code and design for an embedded and/or retro platform, you learn a LOT about system architecture and how hardware capabilities does dictate how you should code for it. You learn about limitations and through that you respect the fact that yes, we have many cores, gigahertz of clock speeds, gigabytes of RAM these days... but it's not infinite and there's a ton of wasted performance going to things that shouldn't be so performance intensive.
And even these days, if you really want to get good performance out of your code for PC architecture, you DO care about the exact hardware you're coding to (Core 2, AMD Zen, etc.). for example, it's inefficient to access RAM randomly (I know, right?), one should access it in full pages and order your data in memory so that you get more useful data with single call and thus you increase your throughput dramatically.
Also one DOES care about the CPU architecture when programming, since different architectures have different bottlenecks and strengths and if you understand them, you don't make code that wastes the potential of the CPU unnecessarily etc. You can get much more stuff on screen or more FPS or what ever... Factorio is awesome example of this understanding, one should read their dev blogs :)
It's great to see someone young to be interested in these weird old one of a kind platforms. They'll teach you a lot about efficiency and how systems work on hardware level :)
dude i just click your profile for no reason and you like skate too greets from chile bro
Fantastic job! Congrats!
That's so nice to see a young fellow so passionate about retro systems!
Could you share the source code you did for your videos? I'd just be curious how much hard it could be to code a simple thing!
I've always wondered about developing games for older consoles since everything has been hacked wide open. I think it's cool to make your own game, but there's something insane about having it on a console (or I guess the app store works)
That was a trip! Great work.
What a great video love the content 🎉
Velký pozdrav z Prahy
Your video has brought me a lot of nostalgia. I've always been interested in retro hardware, because it fascinates me that with the few resources you had back then, you could get real classics like Metal Gear Solid. The current industry is very focused on graphics and getting the maximum possible economic benefit, and I think that before the programmers were more ingenious people, and great masters of computer science, like Ken Kutaragi. Great video
Hey, this was fun! Good work!
I'm glad you enjoyed it!
As A fan of Dankpods Instantly subbed. Great vid
SUPER COOL, PLEASE KEEP ACHIEVE YOUR WORKS BRO...
To co se ti povedlo je opravdu obdivuhodné, sám vím že není zrovna jednoduché vytvořit a zprovoznit hru na starší platformě.
a by the way... fakt dobrá angličtina :)