Homebrew Petit Computer Thread

DiscostewSM

Well-Known Member
Member
Joined
Feb 10, 2009
Messages
5,484
Trophies
2
Location
Sacramento, California
Website
lazerlight.x10.mx
XP
5,499
Country
United States
Getting closer and closer to a release. Currently working on audio, which I've hit a hurdle. Originally, I thought I'd only need to create my own Triangle Wave waveform (which I have), but it seems I'll also have to make some variations of Noise. Petitcom has it's own Noise instrument, but the NES sound chip is capable of having variations of noise rather than just one with a change in octaves. The program has also slowed down quite a bit in concentrated areas that display more than 4 objects (to which an object is anything that works on it's own, like the player, an enemy, a bullet, etc), and I can't find anything to improve that right now. Maybe once I release this, people can then look at it, and see what I may have missed.
 

DiscostewSM

Well-Known Member
Member
Joined
Feb 10, 2009
Messages
5,484
Trophies
2
Location
Sacramento, California
Website
lazerlight.x10.mx
XP
5,499
Country
United States
Some good news, and some bad news.

The good news that I plan to release my work by tomorrow night. The bad news is that I didn't get around to implementing everything I wanted, so the release will be as-is, unfortunately. Still, I think people want to see what is behind the game, even if it isn't complete.
 

VMM

Hamon > Stand
Member
Joined
Jul 1, 2010
Messages
3,132
Trophies
2
Age
33
XP
2,243
Country
Brazil
A little progress report on my Megaman 2 project. Lots of optimizations done, and speed is decent with a couple of objects on the screen. Other than Dr. Wily's 2nd stage, I'm also working on Metal Man's stage. The enemies of those two stages (excluding bosses) have most of their AI done, as well as collision with the background. Megaman can shoot now. Currently dealing with sprite-sprite collision using my hitbox design (used also for background collision), but it seems the Petitcom sprite collision functions aren't cooperating with my sprite engine design. Still no ETA on my public release.

Man, I just looked at your game and this is awesome!
Megaman 2 on petit computer will be outstanding.
I hope you can make the sound work and still have a good speed.
 

DiscostewSM

Well-Known Member
Member
Joined
Feb 10, 2009
Messages
5,484
Trophies
2
Location
Sacramento, California
Website
lazerlight.x10.mx
XP
5,499
Country
United States
A little progress report on my Megaman 2 project. Lots of optimizations done, and speed is decent with a couple of objects on the screen. Other than Dr. Wily's 2nd stage, I'm also working on Metal Man's stage. The enemies of those two stages (excluding bosses) have most of their AI done, as well as collision with the background. Megaman can shoot now. Currently dealing with sprite-sprite collision using my hitbox design (used also for background collision), but it seems the Petitcom sprite collision functions aren't cooperating with my sprite engine design. Still no ETA on my public release.

Man, I just looked at your game and this is awesome!
Megaman 2 on petit computer will be outstanding.
I hope you can make the sound work and still have a good speed.

From what I've seen, audio hasn't created any additional slowdown, which bring up a rather odd thought. If I'm hitting the processing limit, then why isn't audio being affected? I can only think of two things to explain this. Either it dedicates a fixed amount of time for the audio every frame (since it is done internally), and/or Petit Computer purposefully doesn't use the full capacity of the CPU. I'd hate to imagine the latter being true in any form.
 

VMM

Hamon > Stand
Member
Joined
Jul 1, 2010
Messages
3,132
Trophies
2
Age
33
XP
2,243
Country
Brazil
A little progress report on my Megaman 2 project. Lots of optimizations done, and speed is decent with a couple of objects on the screen. Other than Dr. Wily's 2nd stage, I'm also working on Metal Man's stage. The enemies of those two stages (excluding bosses) have most of their AI done, as well as collision with the background. Megaman can shoot now. Currently dealing with sprite-sprite collision using my hitbox design (used also for background collision), but it seems the Petitcom sprite collision functions aren't cooperating with my sprite engine design. Still no ETA on my public release.

Man, I just looked at your game and this is awesome!
Megaman 2 on petit computer will be outstanding.
I hope you can make the sound work and still have a good speed.

From what I've seen, audio hasn't created any additional slowdown, which bring up a rather odd thought. If I'm hitting the processing limit, then why isn't audio being affected? I can only think of two things to explain this. Either it dedicates a fixed amount of time for the audio every frame (since it is done internally), and/or Petit Computer purposefully doesn't use the full capacity of the CPU. I'd hate to imagine the latter being true in any form.

It seems strange that a Megaman 2 port is hitting the processing limit.
The DSi processing power seems a lot bigger than the necessary for a Megaman 2 port.
I bet it's the latter, but I don't know why Petit Computer developers would do this.

Just for curiosity, is there a limit of lines for a Petit Computer Application?
 

DiscostewSM

Well-Known Member
Member
Joined
Feb 10, 2009
Messages
5,484
Trophies
2
Location
Sacramento, California
Website
lazerlight.x10.mx
XP
5,499
Country
United States
A little progress report on my Megaman 2 project. Lots of optimizations done, and speed is decent with a couple of objects on the screen. Other than Dr. Wily's 2nd stage, I'm also working on Metal Man's stage. The enemies of those two stages (excluding bosses) have most of their AI done, as well as collision with the background. Megaman can shoot now. Currently dealing with sprite-sprite collision using my hitbox design (used also for background collision), but it seems the Petitcom sprite collision functions aren't cooperating with my sprite engine design. Still no ETA on my public release.

Man, I just looked at your game and this is awesome!
Megaman 2 on petit computer will be outstanding.
I hope you can make the sound work and still have a good speed.

From what I've seen, audio hasn't created any additional slowdown, which bring up a rather odd thought. If I'm hitting the processing limit, then why isn't audio being affected? I can only think of two things to explain this. Either it dedicates a fixed amount of time for the audio every frame (since it is done internally), and/or Petit Computer purposefully doesn't use the full capacity of the CPU. I'd hate to imagine the latter being true in any form.

It seems strange that a Megaman 2 port is hitting the processing limit.
The DSi processing power seems a lot bigger than the necessary for a Megaman 2 port.
I bet it's the latter, but I don't know why Petit Computer developers would do this.

Just for curiosity, is there a limit of lines for a Petit Computer Application?

Well, it is dealing with an interpreted language that isn't as sophisticated and optimized as compiled machine code, but I do agree that even at 67Mhz (which is the effective frequency outside of cache/tcm access by the CPU in the DSi), it should have been enough, which is why I'm wondering if Petit Computer is purposefully not using the full CPU power.


As for the # of lines, a single program can hold up to 9999 lines. PTC does allow the use of the EXEC command, which has the current program run a different program, and because all variables are global, you can have multiple programs use those same variables. Only one program can run at any given time though, and if they are each 9999 lines, then expect a significant delay when switching, as the programs have to be loaded each time they are called in this fashion.
 

VMM

Hamon > Stand
Member
Joined
Jul 1, 2010
Messages
3,132
Trophies
2
Age
33
XP
2,243
Country
Brazil
Well, it is dealing with an interpreted language that isn't as sophisticated and optimized as compiled machine code, but I do agree that even at 67Mhz (which is the effective frequency outside of cache/tcm access by the CPU in the DSi), it should have been enough, which is why I'm wondering if Petit Computer is purposefully not using the full CPU power.


As for the # of lines, a single program can hold up to 9999 lines. PTC does allow the use of the EXEC command, which has the current program run a different program, and because all variables are global, you can have multiple programs use those same variables. Only one program can run at any given time though, and if they are each 9999 lines, then expect a significant delay when switching, as the programs have to be loaded each time they are called in this fashion.

Do you think you'll need to use more than one program?
If yes, how many program do you think it will be needed?
Do you think you could implement save?
 

DiscostewSM

Well-Known Member
Member
Joined
Feb 10, 2009
Messages
5,484
Trophies
2
Location
Sacramento, California
Website
lazerlight.x10.mx
XP
5,499
Country
United States
Well, it is dealing with an interpreted language that isn't as sophisticated and optimized as compiled machine code, but I do agree that even at 67Mhz (which is the effective frequency outside of cache/tcm access by the CPU in the DSi), it should have been enough, which is why I'm wondering if Petit Computer is purposefully not using the full CPU power.


As for the # of lines, a single program can hold up to 9999 lines. PTC does allow the use of the EXEC command, which has the current program run a different program, and because all variables are global, you can have multiple programs use those same variables. Only one program can run at any given time though, and if they are each 9999 lines, then expect a significant delay when switching, as the programs have to be loaded each time they are called in this fashion.

Do you think you'll need to use more than one program?
If yes, how many program do you think it will be needed?
Do you think you could implement save?

Highly doubt I'll need more than one. As it is, the current one is about 3500 lines, half being code, half data, and I plan to move as much data as I can to GRP files.

Passwords are a thing of the past. Besides, saving is easier.
 
  • Like
Reactions: 1 person

VMM

Hamon > Stand
Member
Joined
Jul 1, 2010
Messages
3,132
Trophies
2
Age
33
XP
2,243
Country
Brazil
Well, it is dealing with an interpreted language that isn't as sophisticated and optimized as compiled machine code, but I do agree that even at 67Mhz (which is the effective frequency outside of cache/tcm access by the CPU in the DSi), it should have been enough, which is why I'm wondering if Petit Computer is purposefully not using the full CPU power.


As for the # of lines, a single program can hold up to 9999 lines. PTC does allow the use of the EXEC command, which has the current program run a different program, and because all variables are global, you can have multiple programs use those same variables. Only one program can run at any given time though, and if they are each 9999 lines, then expect a significant delay when switching, as the programs have to be loaded each time they are called in this fashion.

Do you think you'll need to use more than one program?
If yes, how many program do you think it will be needed?
Do you think you could implement save?

Highly doubt I'll need more than one. As it is, the current one is about 3500 lines, half being code, half data, and I plan to move as much data as I can to GRP files.

Passwords are a thing of the past. Besides, saving is easier.

You know, I never looked to basic with good eyes,
always used C++ for game developing,
but seeing your recent progress with Megaman 2 port,
this makes me rethink about that.
I wonder if I can create something that amazing in Basic.
I'll wait untill I cleared some subjects in University of Brasilia(UnB).
Then I'll invest in basic programming,
unless 3DS gets hacked in this meantime
 

Snailface

My frothing demand for 3ds homebrew is increasing
Member
Joined
Sep 20, 2010
Messages
4,324
Trophies
2
Age
40
Location
Engine Room with Cyan, watching him learn.
XP
2,256
You know, I never looked to basic with good eyes,
always used C++ for game developing,
but seeing your recent progress with Megaman 2 port,
this makes me rethink about that.
I wonder if I can create something that amazing in Basic.
I'll wait untill I cleared some subjects in University of Brasilia(UnB).
Then I'll invest in basic programming,
unless 3DS gets hacked in this meantime
Don't. Believe me, Disco succeeded with this project is spite of Basic, not because of it. It's an old and depricated language, avoid it.

Sure its relatively easy; but it teaches bad habits, gives slow performance, and is used by hardly anyone in the professional and homebrew world nowadays.
 
  • Like
Reactions: 1 person

DiscostewSM

Well-Known Member
Member
Joined
Feb 10, 2009
Messages
5,484
Trophies
2
Location
Sacramento, California
Website
lazerlight.x10.mx
XP
5,499
Country
United States
Trust Snailface on this. This form of BASIC is long gone as far as being a worthy programming language, and while Petit Computer can do some decent stuff, it shouldn't be used for anything serious in light of current homebrew development kits available on the DS (which are c/c++ based). Simple games are one thing, but my project is one of complexity, and BASIC is not meant for complexity. If anything, I'm just proving what can be done with it despite its problems.
 

DiscostewSM

Well-Known Member
Member
Joined
Feb 10, 2009
Messages
5,484
Trophies
2
Location
Sacramento, California
Website
lazerlight.x10.mx
XP
5,499
Country
United States
Just got my 3DS back yesterday with my cameras fixed and I wanted to know how everyone is doing.

Been dealing with work, family, holidays, my Wii U.....all that good stuff, so in terms of my MM2 PTC project, it has been going slow. I will say though that all the audio is complete (both BGM and SFX), and is held in GRP form of my audio player. Currently, I am working on organizing the sprites, which I thought I could store them all in the 8 SPR slots provided, but it looks like I'll be a few slots over and will need to deal with them.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: Yeah been there had that no fun +1