1
0
Fork 0
mirror of https://github.com/ctruLua/ctruLua.git synced 2025-10-27 16:39:29 +00:00
Commit graph

128 commits

Author SHA1 Message Date
Reuh
b4ceb200ea Added gfx.linedRectangle and gfx.linedCircle 2016-04-29 17:55:59 +02:00
Firew0lf
707b1a451e Added the ctr.uds lib (3DS-to-3DS wireless communication), Added a function to add ssl certificates for HTTP contexts, Minor documentation update.
The UDS lib is completely untested, because I only have 1 3DS.
2016-04-26 14:44:18 +02:00
Reuh
f554f53a47 ctr.time() returns a negative value; updated documentation and sprite.lua 2016-04-25 21:02:32 +02:00
Reuh
2504fc90f1 Merge branch 'master' of https://github.com/ctruLua/ctruLua 2016-04-25 19:43:38 +02:00
Reuh
d0fb704205 Added hotspot arguments when drawing rotated textures
Did related changes to sprite.lua and cleaned stuff.

I had to add a function to sf2dlib to make this work, so a make build-sf2dlib is required. Also, we should probably send this change to the original sf2dlib repository...
2016-04-25 19:43:09 +02:00
Reuh
ac47b1d981 Added missing documentation in texture.load 2016-04-24 18:21:21 +02:00
Reuh
4d1e3ec455 Improved map:draw a lot, fixed GC issues with ctr.map, changed some things internally
map:draw should be faster and more flexible.
2016-04-22 16:45:56 +02:00
Reuh
358b68c643 Renamed item.fileSize to item.size in fs.list() return value, enabled 3D in the editor, added a lot of missing documentation
For the return values, I followed this rule: if the fuction returns true on success, it should return false, error on error; for every other case it should return nil, error on error.

Also, who doesn't want to edit code in 3D ? The line depth depends on the indentation level.
2016-04-22 13:42:59 +02:00
Reuh
347e480d5a Moved ctr.gfx.set|getTextSize to ctr.gfx.font.set|getSize, added missing documentation to font:width
Started working again on the editor
2016-04-21 21:51:45 +02:00
Firew0lf
b798818e99 Fixed the ROMFS, Removed some fields in fs.list(), Updated sftdlib
fs.list() now returns a table with tables containing the fields "name", "fileSize", and "isDirectory"
2016-04-16 13:24:03 +02:00
Firew0lf
6b65df0b8e Fixed some documentation, added some things to sockets, "Fixed" the ROMFS
The romfs is still not working, but it works better.
2016-04-13 16:19:25 +02:00
Firew0lf
e7ff54d58c Added SSL support to sockets, Added console/stdout support, Removed apt.init/apt.shutdown, Added some SSL options to httpc
The console can __not__ be used with gfx.start() on a screen. You don't have to gfx.render() while print()ing, but you should do it when you are in the main loop.
The SSL sockets don't work with Citra.
2016-04-10 01:47:52 +02:00
Firew0lf
eae356ce80 Added the :save() method to textures, Added support for some image formats
The new image formats are loaded with stb_image, and the textures are saved with stb_image_write.
https://github.com/nothings/stb
You can now load GIFs (not animated), PSD, TGA, HDR, PIC and PNM.
The texture loading still uses sfil for JPEG, PNG, and BMP. You can force the use of stbi by loading with
the "type" argument in texture.load() set to 242 (or anything 5<x<250, but 242 is a good value).
The :save() formats are PNG and BMP only.
2016-03-26 16:49:23 +01:00
Reuh
6143341760 Fixed audio looping when using streaming
Also made sure the chunk size is lower or equal the total file size.
2016-03-24 18:07:41 +01:00
Reuh
4c9bdf75fa Unload streaming data when stopping audio
Forgot some memory freeing, sorry.
2016-03-23 20:16:20 +01:00
Reuh
04eb578892 Updated audio example 2016-03-23 19:53:46 +01:00
Reuh
6ac83ca6df Added streaming support to ctr.audio
Currently runs in the main thread because I can't get it to work on another thread.

You will need to call audio.update() each frame to make audio streaming work.
2016-03-23 19:50:10 +01:00
Firew0lf
5107f0277c Updated sf2dlib, added a "thickness" argument to lines (warning: break some old lines), Added WIP render targets, Added arguments (main file and root path)
You'll need to update some of your codes if you used lines with colors, or you'll have some ... Nice line effects.
2016-03-22 21:48:52 +01:00
Firew0lf
e5467b663d Added ctr.root, close #7, changed the max path length to 1024
ctr.root is not exactly the path to ctruLua.3dsx minus the file name, but is equivalent with HBL and $
(other launchers may work too, and it works perfectly with Citra), and is "romfs:/" if romfs is enabl$
2016-03-12 23:14:42 +01:00
Firew0lf
6a9fbbb133 Added ":addTrustedRootCA()" to the httpc contexts, close #8, Added some values in ctr.
I didn't test :addTrustedRootCA(), but it's just a simple string-to-char+size function.
2016-03-12 19:57:59 +01:00
Reuh
9db21c7831 Added gfx.scissor
Note: doesn't work on citra but it does on real hardware.
2016-03-09 16:13:06 +01:00
Firew0lf
e84ab0e3b2 Added functions to set/get the default text size, closes #4 2016-02-24 21:48:28 +01:00
Firew0lf
a380f09a34 Updated httpc.c to the latest ctrulib, fixed the cfgu example.
The name is still buggy, can't find why.
2016-02-24 14:46:11 +01:00
Firew0lf
499bfa99a3 ADDED THREAD ! Minor changes on other libs.
To communicate with a thread, use sockets on localhost, this should work.
Or use the return code, or the "last error", but that's crappy.
For the return code, just `return <number>`; only works with integers.
2016-01-17 12:18:39 +01:00
Firew0lf
ca22cf1558 Added ctr.mic, Added a function to get a µs counter value.
Didn't test ctr.mic.
2016-01-05 19:41:25 +01:00
Reuh
e7c9a60d61 Alphabetical sorting in openfile.lua 2015-12-31 15:54:10 +01:00
Firew0lf
e10a101a4a Added some examples, fixed a typo 2015-12-31 15:41:09 +01:00
Reuh
b87b2676e6 gfx.GFX_TOP, gfx.GFX_BOTTOM, gfx.GFX_LEFT, gfx.GFX_RIGHT -> gfx.TOP, gfx.BOTTOM, gfx.LEFT, gfx.RIGHT
Also commented and moved tests/audio to examples/audio because the code is quite clean, and we lack examples.
2015-12-30 19:15:46 +01:00
Reuh
73b5c55133 gfx.startFrame -> gfx.start and gfx.endFrame -> gfx.stop 2015-12-30 18:19:13 +01:00
Reuh
07d5316d72 Changed map format to CSV, added ability to load maps from a Lua table 2015-12-30 14:51:51 +01:00
Reuh
e39fcc6c7b Added Tremor Ogg decoder, removed libvorbis from Makefile. OGG audio working perfectly.
Tremor is extremly similar to libogg but only uses integers (and doesn't provide an encoder). The playing problem with libvorbis was probably a float-precision related issue.

No need for make build-all.
2015-12-29 17:25:34 +01:00
Firew0lf
b4f5365e96 Rolled back to RAM by default for textures (not working on hardware) 2015-12-28 20:57:03 +01:00
Reuh
7359512ebe Merge branch 'master' of https://github.com/ctruLua/ctruLua
Merge with master
2015-12-27 19:59:55 +01:00
Reuh
bda9de4d1c ADDED AUDIO! WAV working perfectly
Added libogg, libvorbis and libvorbisfile to 3ds_portlibs. You will need to compile thems using make build-portlibs. Opening OGG files works but they play badly.

Added a very simple error handler in main.lua

Added audio example.

Renamed isGfxInitialised to isGfxInitialized.

Did you know? The audio module is the longest ctrµLua module.
2015-12-27 19:54:58 +01:00
Firew0lf
fe894820a2 The ctr.news library should now be bug-free !
Untested, but checked 3 times with citra, and everything matches the doc.
Warning: there is no check of any kind, so don't put weird stuff as arguments.
2015-12-24 23:58:16 +01:00
Firew0lf
bebfa8b72d Merge branch 'master' of https://github.com/Firew0lf/ctruLua 2015-12-24 18:45:40 +01:00
Firew0lf
5c4da69997 Added the ctr.apt library, tweaked ctr.news a bit, fixed a typo in cfgu.c 2015-12-24 18:44:22 +01:00
Reuh
716c42b849 Fixed keyboard and editor colors 2015-12-24 13:15:00 +01:00
Firew0lf
2e782ed9ea Updated to the latest ctrulib, Fixed some minor bugs.
Working with citra, untested on real hardware but should be OK.
IR should now work.
Let's add some 3D drawing and sound now !
2015-12-14 23:11:45 +01:00
Firew0lf
b4d025d602 Updated the sf2dlib and sftdlib; Added the gfx.color.hex() function; Added the New3DS CPU mode control.
As the color order of the sf2dlib changed, you have to change it in your code, or use the color.hex() function.
To fix the problems, just change "0xRRGGBBAA" to "0xAABBGGRR".
Also, the shader compiler changed to Picasso, so you'll need it in order to compile.
https://github.com/fincs/picasso
2015-12-09 23:14:23 +01:00
Reuh
4acd13de9b Close socket on GC 2015-10-25 18:56:39 +01:00
Reuh
e6e99f59c4 In ctr.fs: automatically select archive when using absolute paths without archive prefix; fs.list should work with RomFS 2015-10-25 17:01:26 +01:00
Reuh
095308732c Documented ctr.gfx.color 2015-10-25 12:33:44 +01:00
Reuh
3b8d56de63 Documented ctr.fs 2015-10-25 12:22:58 +01:00
Reuh
d015918d22 Ignore the sdmc: prefix in fs.list; added missing space on some strings for the null-termination 2015-10-25 12:03:21 +01:00
Reuh
0efdc23576 Moved library path modifications to main.lua, made all paths relative
The library path can now be easlily modified.

Instead of always launching /3ds/ctruLua/main.lua, ctruLua will now launch the main.lua in the current directory (the ctruLua.3dsx directory when launched with HBL).

On citra, this will be the root of the sdmc directory.
2015-10-25 11:08:27 +01:00
Firew0lf
81f8edb25d Added UDP sockets functions (untested, like 80% of my code)
I didn't find a server/protocol to test the UDP sockets, so I didn't test.
Also, there's no built-in "pseudo-connected" mode, you have to manage it in your code.
2015-10-24 22:03:09 +02:00
Reuh
8e94add9a6 Fixed documentation of socket:connect 2015-10-24 13:34:53 +02:00
Firew0lf
3aeb5b3534 Fixed te cam lib, added some field for the documentation, added setFrameRate 2015-10-24 12:08:03 +02:00
Reuh
09ea79bc86 Added line receiving to socket:receive and changed *a to a
Added l and L. Removed the starting * of *a, because it isn't used in Lua 5.3 io lib.
2015-10-24 11:12:10 +02:00