Code Monkey home page Code Monkey logo

dsidl's Introduction

Hi .o/

I'm Pk11, see pk11.us for more about me. I mainly work on homebrew apps for the Nintendo DS(i), sometimes the 3DS, and websites related to that.

GitHub only lets you pin 6 repos so here's some more 'pins':

I link the upstream repo in cases where my contributions are PRs and my own fork in cases where I have created a fork without the intention of my changes being merged upstream.

NTM
Forked from JeffRuLz/TMFH
NAND Title Manager for DSi
C, GPLv3
dsi-camera
A simple example homebrew app that can use the DSi's cameras
C, Unlicense
pk11.us
Pk11's website
HTML/Markdown, MIT
DS-Homebrew/nds-bootstrap
Boot an nds file
C, GPLv3
NitroHax3DS
Forked from ahezard/NitroHax3DS
NitroHax cheat tool for Nintendo DS games, ported to Nintendo DSi / 3DS and modified to load from a usrcheat.dat database
C++, GPLv3
RocketRobz/hiyaCFW
World's FIRST Nintendo DSi CFW!
C, GPLv3
cfw-guide/dsi.cfw.guide
A complete Nintendo DSi homebrew guide, from stock to HiyaCFW.
Markdown, MIT
bad-apple-html
Bad Apple!! in pure HTML (no CSS or JS)
HTML, GPLv3
discord-sms-bot
Bridges a Discord channel to SMS
JavaScript, MIT
art
Various non-code projects of mine, including profile pictures, 3D animations, music, and such
CC0

dsidl's People

Contributors

epicpkmn11 avatar merith-tk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

dsidl's Issues

Document max length restrictions

Any idea on the maximum payload size?

I can successfully download a qr code with a URL that has 138 bytes (7-bit US-ASCII characters)this requires a json wrapper payload of 143-146 bytes.

I tried to adapt the 2nd example in https://github.com/Epicpkmn11/dsidl/wiki/Scripting with a destination filename but failed to read the QR code when the URL is 138 bytes. EDIT this is with https://github.com/Epicpkmn11/dsidl/releases/tag/v0.1.1

I think this means a limit of ~150 bytes. Thoughts?

Be great to get this documented.

[feature] allow QR to point to an `.setup.json` address

basically, the thought process is that it can be used to point to an "setup.json" rather than an normal file

kinda like

{
  "dsidl" : {
    "files" : [
      "/data/config.txt" : "http://example.com/data/config.txt",
      "/program.nds" : "http://example.com/data/program.nds",
    ]
  }
}

where it then prompts the user that this is an multi-download QR, and then were they want this data saved (select for all or for single file at an time)

[Improvement] Better icon and name(?)

Just opening this up incase anyone has ideas, dsidl could definitely use a better icon as the one it has right now is just something I drew on my trackpad in GIMP and animated moving down lol

For the name, I think dsidl is alright. It's short and decently fun to say (I just say all the letters, dee es ai dee el), but I would also be open to better name suggestions as well

[bug] Cannot download folders using advanced `dsidl:src` format

{ "dsidl:src" : "https://cdn.merith.xyz/dsi/_test_dir_/dsidl.json" }
{"dsidl":1,"script":{"root-file.txt":{"url":"https://cdn.merith.xyz/dsi/_test_dir_/root-file.txt"},"subfolder/subfile.txt":{"url":"https://cdn.merith.xyz/dsi/_test_dir_/subfolder/subfile.txt"}}}

errors downloading subfolder/subfile.txt

Change parsing filename to header

I made a small program so send files to DSi using this app (Here is repo) and ran into a problem, DSi Downloader gets filename not from header but from link's end (Problem is described in repo's readme under Bugs section)

[Bug] Long filenames from QR do not scroll

QR codes in which the file name is rather long (such as the one attached below) don't allow you to scroll the text to see the beginning of the filename when setting a name, you can only see the end of it, so you kind of have to type it blind.

image

Fails to start camera

It's stuck at "Starting camera..." and with verbose logging on it's the same.
Im running hiyaCFW/unlaunch with TWImenu++ on the DSi XL.

[bug] dsidl:src does not prompt user where to store the files if path is not provided

qr.json

{
	"dsidl:src": "https://cdn.merith.xyz/test.dsidl.json"
}

dsidl:src

{
	"dsidl": 1,
	"script": {
		"dsidl-merith.dsi": "https://github.com/Merith-TK/dsidl/releases/download/release-test/dsidl.dsi"
	}
}

it will download dsidl-merith.dsi to sd:/ rather than prompting user,

I feel as if this functionality should prompt user where to store files if one of the strings does not start with an /
so that way if an file is required to be at / due to hardcoding, but the program itself doesnt nessecarily need to be stored at / it could be stored elsewhere
so this could be the format

{
	"dsidl": 1,
	"script": {
		"program.nds": "https://example.com/program.nds",
		"/program.config": "https://example.com/program.config"
	}
}

Path selection cuts off trailing slash before the filename

I seem to have run into a bug that cuts off the trailing slash before the filename in any directory that isn't root. In the attached image, I am trying to download a file into my "Homebrew" folder. This occurs every time I try to download.

PXL_20240115_221625889 RAW-01 COVER

Thanks for the great program!

[Feature] Pre-downloading

Since downloading larger files (such as videos) may take a longer time to download, it would be nice if there were a prompt (or just doing it by default) to download it to a temp folder prior to choosing a directory & filename, then renaming & moving it to the chosen directory once it's done downloading, saving the user a bit of time (especially if they have a very specific naming structure and such).

[Feature] Manual url input

I haven't had much success with QR recognition off of phone screen, so it got me thinking.

Requesting option to just input url via touch keyboard.
Now the tool can work as a wget too.

[bug] doesn't work without logging activated

In my experience, when I hold select and start dsidl, it takes some time but eventually it works and I can use the application, but if i don't it just doesn't connect and nothing happens, even the wifi indicator doesn't blink at all.

tested on dsi xl, wpa2 psk

[improvement] Add "yes to all" functionality

image
{ "dsidl:src" : "https://cdn.merith.xyz/dsi/microlua/dsidl.json" }

Yes I am aware I am blatantly rehosting microlua 4.7.2, its what I am using to test an auto generator for dsidl:src json files
as it stands it asks for every single file, which in that QR code, is 54 files, which as it currently works, I have to tap yes 54 times,

[feature] [unlikely] allow advanced format to contain text data

basically, for the advanced format, instead of linking to an specific file (which repeated connections and downoading for small files slows down)
Instead allow up to say... 8kb of text to be inside the advanced json as an text string rather than the url string (url takes priority)

[improvement] QR Code outline not at optimal position

in my testing, the QR Code outline boarder is not in the optimal position for scanning an QR code when lined up perfectly,

the outer corners of the QR code need to match the inner corners of the template,

it it possible that maybe it is grabbing the overlay on the image as well?

[improvement] Alter dsidl:src scheme to be an bit more verbose if possible

the idea is that we should alter the scheme to allow preventing downloading already existing files, provided an hash is provided (something basic like an md5?)

proposed altered format

{
	"dsidl": 1,
	"script": {
		"/program.nds": {
			"url": "https://github.com/Merith-TK/dsidl/releases/download/release-test/dsidl.dsi",
			"hash" : "2480be6feacb4c14564ca4922abfd852" // again, md5 hash
			"overwrite": false // if hash matches, dont overwrite
		},
		"/program.config": {
			"url": "https://example.com/program.config",
			"overwrite": false // in this case, if file matches, do not overwrite
		}
	}
}

if hash does not match, re-download the file,
this can save time should someone use the dsidl:src format for multiple files,

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.