Giter VIP home page Giter VIP logo

toshiecosed / luma3ds_rosalinasmilehook Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 0.0 3.57 MB

SmileBasic KEY: 'RDVNV3AJ' Attempting to hook into SmileBasic via Rosalina menus. Ram read/write, networking, debug, create SmileBasic Ram-based Network Stack. SmileNet 2.0 is GO

License: GNU General Public License v3.0

Makefile 5.23% C 87.32% C++ 2.91% Assembly 1.73% Python 0.24% Objective-C 2.57%
3ds cfw fork hacky luma3ds nintendo rosalinafork smilebasic smilenet

luma3ds_rosalinasmilehook's People

Contributors

toshiecosed avatar

Watchers

 avatar  avatar  avatar

luma3ds_rosalinasmilehook's Issues

Issue relating to UTF8 string interpretation between 3ds and PC side

Utf8 or utf16 formatted strings by their character code when pulled out of the user created array
within SmileBasic into the SmileNet thread do not seem to translate correctly to their corresponding characters on the PC side, this is only one of a few issues to look into.

https://github.com/ToshieCosed/Luma3DS_RosalinaSmileHook/blob/master/sysmodules/rosalina/source/petithookthread.c#L172
This line is where the issue would occur, normally you want to capture index 270 to 270+255 into a sendbuffer from the SmileNet side, and send it to the pc, using u32 *magicoffset as the start address and treat it as a u32 array. I have functions that grab that see get_value or write_sendbuffr in petithookthread.c

See the PC side Commit for the PC side code here: https://github.com/ToshieCosed/SmileNet-2.0-Pc-Test/blob/master/TCPIP_TEST/Program.cs#L174
That is where the recieve buffer on the PC side tries to interprete the UTF8 string.
Even when the string is formatted as outgoing on the pc side into utf8, and then sent over to SmileNet, the corresponding injection works correctly or seems to, but when sending the string back to the pc side using the recieve buffer as the send buffer, the characters not generated by SmileBasic's ASC('char') feature seem to be mis interpreted. I don't know why this is.

Additionaly using sprintf(sendbuffer, "The value of magicoffset is (%p) and value is (%i)", magicoffset, value) seems to cause strings from the Rosalina heap (in the Rosalina Menu) to actually get sent across the send buffer when sending the send_buffer in this way. That is also very strange, and the Rosalina heap should not be accessed when magicoffset is referenced, unless I mis understand some C. magicoffset is an address pointer.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.