Homebrew Development

Discussion in '3DS - Homebrew Development and Emulators' started by aliak11, Jan 16, 2014.

  1. ernilos

    ernilos GBAtemp Regular

    Member
    3
    Aug 28, 2013
    United States
    CAT
    I did a shit like this a loong time ago, I used it to play Osu! easy songs xD
     
    Celice, Ryanrocks462 and YoshiInAVoid like this.
  2. YoshiInAVoid

    YoshiInAVoid GBAtemp Advanced Fan

    Banned
    4
    Jan 10, 2011
    Haha, yes, I made a DS app that did this too.

    But I thought I'd make one for 3DS because it has better WiFi (not limited to WEP like the DS) and it has a circle pad which could be used as a joystick.
     
    filfat likes this.
  3. Cyan

    Cyan GBATemp's lurking knight

    Global Moderator
    22
    Oct 27, 2002
    France
    Engine room, learning
    if you could stream your PC to the console at the same time that would be even better for Osu :P


    Someone made a server/client controller for Wii and Windows using PPjoy. (PadSend, look in the homebrew competition section)
    It's currently only compatible with Gamecube and DS, but that would be great if his project wasn't dead :(
    Maybe you could try to contact him if you could add 3DS support?
     
    filfat likes this.
  4. T3GZdev

    T3GZdev head of T3GZdev

    Member
    3
    Apr 21, 2010
    United States
  5. YoshiInAVoid

    YoshiInAVoid GBAtemp Advanced Fan

    Banned
    4
    Jan 10, 2011
    No, I didn't make Win2DS. This is a similar project, but for 3DS instead of DS.

    Cyan, thanks for the suggestion, but this is more of a personal project for me. With that said, it will be open source, so anyone is free to contribute. Also, thanks for telling me about vJoy, it looks like just what I need!
     
  6. YoshiInAVoid
    This message by YoshiInAVoid has been removed from public view by Cyan, Dec 4, 2014, Reason: requested.
    Dec 4, 2014
  7. minexew

    minexew ayy lmao

    Member
    3
    Mar 16, 2013
    Soooo has anyone found out yet how to either
    - change newlib's stdout pointer to your own FILE*
    - redirect printf, puts etc. without recompiling the whole of devkitARM
    ?

    I've looked around the newlib sources for a bit, but haven't found a function that could do either. (at least now I know where the stdout pointer is located)
    I assume it would be possible to get hold of the default stdout structure and rewrite its contents, but I'm keeping that as the last resort.
     
  8. YourNerdyJoe

    YourNerdyJoe Member

    Newcomer
    2
    Jul 18, 2014
    United States
    I found this way back when I was doing gba homebrew. If you look in his stdio-0.1.tar.gz you'll see he modifies functions like _write_r which I believe are called by printf and other functions in newlib.
    Maybe you can do something like this for 3DS.
     
  9. Steveice10

    Steveice10 GBAtemp Maniac

    Member
    9
    Jul 19, 2009
    United States

    I usually just override printf, etc by defining it to my own function that calls svcPrintDebugString. Useful for printing debug to a console when testing in an emulator.
     
  10. Helreizer543

    Helreizer543 Member

    Newcomer
    1
    Nov 24, 2014
    United States
    what IDE's are you guys using? just curious I've been using NP++ and getting tired of looking at it.
     
  11. shinyquagsire23

    shinyquagsire23 SALT/Sm4sh Leak Guy

    Member
    13
    Nov 18, 2012
    United States
    Las Vegas
    gedit, only because I'm too lazy to learn vim or whatever else everyone likes. Plus I've got a good assembly syntax highlighter in there so that helps a lot.
     
  12. Steveice10

    Steveice10 GBAtemp Maniac

    Member
    9
    Jul 19, 2009
    United States

    JetBrains CLion early access.
     
  13. minexew

    minexew ayy lmao

    Member
    3
    Mar 16, 2013
    Yeah, that still involves recompiling newlib though.

    I might actually end up doing something this awful, thanks for the idea.
     
  14. jasonmbrown

    jasonmbrown Member

    Newcomer
    2
    Sep 11, 2010
    Canada
    Im almost Finished a really Crappy homebrew version of space invaders, If anyone wants to check out the first version of it. I uploaded it below. No source for the moment.

    Keys are as follows
    R Trigger = Reset level
    A Button Fires Bullet
    Start Resets
    Circle Pad Left Or Right Moves you.

    Theres No Game over yet so you cant actually die. Its my first time coding anything in C So I dont think its 2 bad. Uses pixel Collision which is a little bit buggy. Gimme some feed back :D (I am Trying to make it Very configurable but im going to have to double check all my math, and im having trouble with larger sprites (invaders). I coded Mostly From scratch, With the exception of the fonts, which I grabbed from a github somewhere that has the entire unicode system pre converted to a nice and easy "bits" format (each 8x8 sprite only uses 8 char variables) Il get the link later when i upload the source

    Left in a really Dumb Bug, Fixed it now though. Gonna figure out why Its lagging so much. Enjoy!...
    Edit:OOps didnt actually update the fixed File.. Reupped

    Just a heads up Some stuff thats broken with it, The invaders teleport so if your shooting between them you probably wont ever hit them. *its pixel collision based as well so you will notice lag the more bullets you spam out, im going to optomize the pixel collision as best i can* Bullets are only 1 pixel but im going to make them a bit bigger (although im not sure how much bigger)

    I do plan on having a small menu and a level editor by the first version, but i have to get my code for loading different "sprites" to work correctly.


    Does anyone Have a built version of citra emulator?.. (current github version isnt building?)
     

    Attached Files:

  15. 2Hack

    2Hack HYPiavelli

    Member
    11
    Nov 26, 2014
    Canada
    Underground
    Pixels could use a little beefing up, but I'm not seeing any abnormal lag. Space invaders was initially supposed to be slow then speed up as sprites were removed, making it go at the intended speed.

    There are areas where shots will go straight through without hitting anyone regardless, but thats obviously because you're teleporting them rather than moving them side to side.

    Also you forgot to mention,

    L+R+START+SELECT = Exit game.
     
  16. jasonmbrown

    jasonmbrown Member

    Newcomer
    2
    Sep 11, 2010
    Canada
    Actually its just Start lol. Also I fixed A Major part of the lag that was happening, thats what v01b is lol... (I stoped it looping through every bullet including the non existant ones) Before I did the collision detection it was running WAY faster... so im gonna have to do something about that!
     
  17. 2Hack

    2Hack HYPiavelli

    Member
    11
    Nov 26, 2014
    Canada
    Underground
    Haha Yeah I think I should get to sleep. I always try the l-r-start-select combo first.
     
  18. StapleButter

    StapleButter 'New Member' registered since 2009. Fuck yea.

    Member
    9
    Dec 5, 2009
    France
    If you want to draw non-trivial shapes, you'd be better off using the GPU I guess.
     
    Cyan likes this.
  19. Blueie

    Blueie GBAtemp Regular

    Member
    2
    Apr 30, 2013
    Argentina
    Quick question: Still no file manager for 3DS?
     
  20. Abcdfv

    Abcdfv What comes around goes around.

    Member
    5
    Dec 24, 2013
    United States
    Not that I've seen
     
  21. Cyan

    Cyan GBATemp's lurking knight

    Global Moderator
    22
    Oct 27, 2002
    France
    Engine room, learning
    it depends what you mean by manager.
    copy/delete/rename?

    There are homebrew to mount SD and browse the files and folders.
    But no renamer yet I think.
    It could be useful to be able to rename files, to manage different Launcher.dat or multiple savegame files. (a savegame manager homebrew would be great)


    Look at SDbrowser, by lectem.
    http://wiki.gbatemp.net/wiki/List_of_3DS_homebrew_applications


    If you want to edit your files without removing the SD card, you can use FTBrony.
    it supports RNFR and RNTO commands, but maybe renaming is not working? git readme has this mention : rename syscall is broken?
    instead transfer to computer, rename on computer, transfer again and delete old one.
     
Loading...