Commit Graph

345 Commits

Author SHA1 Message Date
Jack Andersen 750d23c686 Correct use of constexpr 2016-07-31 18:33:29 -10:00
Jack Andersen cf3dfcddff Use constexpr for evaluating bitwise enums 2016-07-31 10:25:40 -10:00
Jack Andersen 4e61051354 Add missing inttypes.h include 2016-07-02 13:41:15 -10:00
Phillip Stephens aff3349c33 Initial attempt to reimplement ecdsa certificates 2016-06-29 22:20:27 -07:00
Phillip Stephens 99dcef42f1 Remove EC and BN code in preparation due to licensing issues 2016-06-29 17:37:34 -07:00
Jack Andersen 617c121675 GCC compatibility fixes 2016-04-15 10:41:57 -10:00
Jack Andersen 8b2f1a8591 Add ROUND_UP_64 2016-04-03 16:31:25 -10:00
Jack Andersen 50406520ba Some handy macros 2016-04-03 16:26:47 -10:00
Jack Andersen 34d3bd6724 Add ROUND_UP_4 macro 2016-03-30 20:17:05 -10:00
Jack Andersen ae14d51607 YAMLDocReader sequence fix 2016-03-28 11:37:55 -10:00
Phillip Stephens 821e9c505e Add optional 2016-03-25 19:22:04 -07:00
Phillip Stephens b8773b3d4c Add missing takeOwnership behavior 2016-03-19 21:08:23 -07:00
Jack Andersen b791b7e426 Humungous refactor 2016-03-04 13:00:12 -10:00
Jack Andersen a0515fe4aa Squelched DNA_COUNT-referenced fields for smarter YAML handling 2016-03-03 11:42:26 -10:00
Jack Andersen 022142a9ec Initialization bug fix 2016-03-01 15:48:21 -10:00
Jack Andersen 92d4334a74 Streamlined validation object usage 2016-03-01 10:28:42 -10:00
Jack Andersen b317ac9d9f YamlDocWriter simplification 2016-02-29 16:57:53 -10:00
Jack Andersen ca0ff04340 void-pointer for MemoryReader constructor 2016-02-15 19:48:03 -10:00
Jack Andersen 8df75c8f23 Merge branch 'master' of https://github.com/libAthena/Athena 2016-02-03 14:55:02 -10:00
Jack Andersen 4d1c71ba3a Sequence to mapping-val lowering 2016-02-03 14:54:27 -10:00
Phillip Stephens 5984c58f5e Add warning to atSetExceptionHandler 2016-02-03 13:33:08 -08:00
Jack Andersen 09033d90cc YAMLDocReader::getCurNode() 2016-02-02 13:39:47 -10:00
Jack Andersen 80e03dbe12 Ignore unqualified template types in atdna 2016-02-01 18:28:52 -10:00
Jack Andersen cf3739fced YAML emitter/parser ownership refinement 2016-01-04 14:00:12 -10:00
Jack Andersen 9c880813ac Rename YAML methods as read/write overloads 2016-01-03 19:23:38 -10:00
Jack Andersen 96b25087e3 Update utf8proc 2015-12-27 12:38:37 -10:00
Jack Andersen 5f2e294642 More portable iterator->pointer 2015-12-20 12:51:55 -10:00
Jack Andersen a6cfc0aed9 Add increment operator 2015-12-20 11:41:10 -10:00
Jack Andersen be6361e130 Add <string> header 2015-12-20 11:17:12 -10:00
Jack Andersen eb06a6f00b Add handy UTF8Iterator class to utf8proc header 2015-12-20 11:13:32 -10:00
Jack Andersen 27d9fbcad4 Merge branch 'master' of https://github.com/libAthena/Athena 2015-12-06 10:53:14 -10:00
Jack Andersen c195b66939 added releaseRootNode method for advanced YAML usage 2015-12-06 10:52:37 -10:00
Phillip Stephens 028e4323e1 Fix crash when trying to read/write a string with 0 length 2015-12-05 19:37:26 -08:00
Zero-One101 259d2de59a Added an include, fixed a macro 2015-12-01 03:01:29 +00:00
Jack Andersen 87013ab673 Added native wstring fileSize method for Win32 2015-11-30 14:34:26 -10:00
Jack Andersen 9cd4b22c8a Error macro fixes 2015-11-27 12:16:30 -10:00
Jack Andersen 0a4e8c360e Added ability to opt-out of file reader/writer errors 2015-11-22 17:08:48 -10:00
Phillip Stephens b798647e08 [atdna] Enable C++14
[Athena] Add ifndef before ENABLE_BITWISE_ENUM
2015-11-21 20:20:15 -08:00
Jack Andersen cdacc014f3 Added handy bitwise enum enabler macro 2015-11-20 15:11:23 -10:00
Jack Andersen df43b72f8a Minor fix; added PRISize macro 2015-11-14 13:59:10 -10:00
Phillip 63a58265ef Squash MSVC warnings
Unify filename usage
2015-11-13 21:53:13 -08:00
Jack Andersen 21724766ba added file handle accessor for file reader/writer 2015-10-23 12:23:04 -10:00
Jack Andersen e861691480 Merge pull request #38 from libAthena/binary-size
Added binarySize method for DNA
2015-10-17 18:16:51 -10:00
Jack Andersen 8221d6e25a Added binarySize method for DNA 2015-10-17 18:05:35 -10:00
Phillip Stephens 8124d219d9 Fix utility::vsprintf
Fix operator>> (I'm a derp)
2015-10-16 17:25:36 -07:00
Phillip Stephens 1ee7c82d8b Fix GC/Wii linker error
Add example program (Currently only targets wii)
2015-10-16 02:46:18 -07:00
Phillip Stephens 1c0c44938e Fix gc/wii build 2015-10-16 01:07:54 -07:00
Jack Andersen ffca1f1897 writeVal not a template function 2015-10-15 17:06:12 -10:00
Phillip Stephens a753c2e38a Add operator>> to IStreamWriter.hpp 2015-10-15 15:20:50 -07:00
Phillip Stephens 069840a77e Implement atVec*d for atdna 2015-10-15 14:54:42 -07:00
Jack Andersen e6dedd0e6c Added double vector types 2015-10-07 13:50:50 -10:00
Jack Andersen f4716070dd Added built-in DNAType field for YAML classification 2015-09-30 14:37:54 -10:00
Jack Andersen a999744ab6 removed implementation-reliant use of emplace_back 2015-09-27 11:17:11 -10:00
Jack Andersen 4eae909848 Extended bool with endian readers/writers 2015-09-24 14:57:37 -10:00
Phillip Stephens 0762a3bdcc FreeBSD Fixes 2015-09-12 10:25:58 -08:00
Jack Andersen 574038a826 Merge commit '9535' 2015-09-11 13:28:23 -10:00
Jack Andersen 9535778932 added Little/Big suffix method for at[U]Int8 types for consistency 2015-09-11 13:27:28 -10:00
Jack Andersen 89fa92308f Doc updates 2015-09-07 17:02:58 -10:00
Phillip Stephens c241158c7b Remove GPL comments from Athena codebase 2015-09-03 13:05:08 -07:00
Jack Andersen bca146dbfc stripped-down utf8proc added 2015-08-31 11:11:42 -10:00
Phillip Stephens 0de254e846 Fix remaining MESSAGE enums 2015-08-30 22:15:06 -07:00
Jack Andersen e52e9f8dc4 Win32 Macro fixes 2015-08-30 22:13:07 -07:00
Jack Andersen 9b6fea36e3 windows fixes and proper UTF-8 conversion 2015-08-30 22:13:07 -07:00
Jack Andersen 66cb6c982e removed codecvt headers 2015-08-24 20:48:53 -10:00
Jack Andersen a145f337c0 Added ownership flag for memory reader 2015-08-23 13:52:01 -10:00
Phillip Stephens 7464c8e5eb add optional mask parameter to crc32 2015-08-17 02:32:03 -07:00
Jack Andersen 13d545c3fd Added explicit Big/Little method suffix 2015-08-13 16:58:04 -10:00
Jack Andersen dac1dde468 accumulator type change 2015-08-11 13:32:57 -10:00
Jack Andersen f49a6a6e82 Added YAML child node finder 2015-08-08 18:15:07 -10:00
Jack Andersen 9f0cb1327b Added some SFINAE parameters for smart IO templates 2015-08-08 13:25:18 -10:00
Jack Andersen 02e7bb3fc6 Refactored readBytes() and readUBytes() to return std::unique_ptr 2015-08-05 12:41:06 -10:00
Jack Andersen f06afb429c Windows build fixes 2015-08-03 17:42:44 -10:00
Jack Andersen 84591d4260 Added YAML serialization DNA subclass 2015-08-02 18:29:39 -07:00
Jack Andersen 43c317529c AES optimization and aligned SSE allocators 2015-08-02 18:29:39 -07:00
Jack Andersen b38d7533c5 Exception args should be passed as c-string
(it's a compiled literal after-all)
2015-08-02 18:29:39 -07:00
Jack Andersen ac36bb4f4a added support for wchar_t file paths and more stable windows builds 2015-08-02 18:29:38 -07:00
Phillip Stephens d9c4d3b79b Add error state 2015-08-02 18:29:38 -07:00
Phillip Stephens 8ea5071e0f Remove and replace exceptions 2015-08-02 18:29:38 -07:00
Jack Andersen c6a6d3b9c4 renamed read/writeUnicode methods to be more reflective of functionality 2015-07-21 09:04:25 -10:00
Jack Andersen 7442d618e7 Added virtual destructor to IAES 2015-07-15 16:01:37 -10:00
Jack Andersen f3ba8819a4 fixed incomplete-type warnings involving recursively-derived DNA types 2015-07-14 12:57:42 -10:00
Jack Andersen 09e3d33ff2 spelling corrections 2015-07-13 14:39:51 -10:00
Jack Andersen 7ec5a5971a compile-time system endian check 2015-07-12 06:51:04 -10:00
Jack Andersen 55adeec69c windows packaging and CMake adjustments 2015-07-10 16:14:06 -10:00
Phillip Stephens 4f8df65a3d * add atVec2f 2015-07-10 18:45:26 -07:00
Phillip Stephens 8d3524b1f6 Fix sign bug
Prevent blockSize from exceeding file's length
2015-07-09 20:47:56 -07:00
Phillip Stephens a7c180db00 * Add support for cached reads 2015-07-09 20:32:55 -07:00
Jack Andersen 8ca702785c added icons; updated PKGBUILD for CMake 2015-07-08 10:21:50 -10:00
Jack Andersen 44e25e09ca updated MemoryCopyWriter 2015-07-07 20:34:59 -10:00
Jack Andersen ec38ba088e added buffer-copying subclass to MemoryReader/Writer 2015-07-07 20:03:08 -10:00
Jack Andersen 97dfabb265 significant virtual-method refactor to streaming interface 2015-07-07 18:01:13 -10:00
Jack Andersen ce917d4aca Added CMakeLists.txt 2015-07-06 17:23:37 -10:00
Jack Andersen a63da8db2f header-based read/write optimizations 2015-07-02 13:36:17 -10:00
Jack Andersen 2b37765eff nested type ordering fix 2015-06-30 21:50:58 -07:00
Jack Andersen fa016115c2 const buffer pointer for write[U]Bytes 2015-06-30 17:01:04 -10:00
Phillip Stephens a76a3c584a * Revert swapFloat/Double "fixes" 2015-06-30 19:09:35 -07:00
Jack Andersen 7524b1f063 made string and buffer types templates with DNA base; may now be used in Vector 2015-06-25 09:37:31 -10:00
Jack Andersen 071d91a671 more stable atdna type canonicalization; recursive DNA subclassing 2015-06-22 12:52:09 -10:00
Jack Andersen 5a0f2e8ed4 MSVC build fixes 2015-06-19 21:40:15 -07:00
Jack Andersen 2d8aeb70e8 updated doxy comments 2015-06-19 10:44:01 -10:00
Jack Andersen 3dfb001f3d added fixed-length string writing 2015-06-19 10:12:25 -10:00
Jack Andersen 7cdfcab55a lots of new 'atdna' types; travis update 2015-06-18 19:18:39 -10:00
Jack Andersen 2c63768ec4 Added DNA.hpp warning 2015-06-16 16:50:12 -10:00
Jack Andersen fb722a9f5b further updates to atdna 2015-06-16 14:25:48 -10:00
Jack Andersen 0452e34150 initial working reader/writer values 2015-06-15 21:11:56 -10:00
Jack Andersen c09f06b436 working release build of atdna 2015-06-15 16:29:53 -10:00
Jack Andersen dde8ac1a1c initial atdna commit 2015-06-14 16:49:02 -10:00
Phillip Stephens 6a611ef2cc * Fix last commit 2015-05-20 22:41:29 -07:00
Phillip Stephens d5ccf159f7 * Fix Wii/GC Compiling
* Initial FileInfo/Dir APIs
* Get rid of type punning warnings
2015-05-20 22:35:26 -07:00
Phillip Stephens 011496db8b * Fix Wii/GC Compiling
* Finish initial FileInfo/Dir APIs
* Get rid of type punning warnings
2015-05-20 21:58:21 -07:00
Phillip Stephens 29a203522d * Fix merge 2015-05-18 20:36:45 -07:00
Phillip Stephens 6ee11b9a08 * Fix styling 2015-05-18 20:24:56 -07:00
Phillip Stephens 423a9a37d2 Reimplement Exceptions. 2015-05-18 16:38:02 -07:00
Phillip Stephens 01f989c21c Initial API implementation 2015-05-18 14:03:13 -07:00
Antidote a563d65388 * Move MCSlot.hpp to it's proper home 2015-05-17 18:33:35 -07:00
Phillip Stephens 01da3f3871 * Fix pretty function 2015-05-03 20:57:00 -07:00
Phillip Stephens 8386fa54a0 * Add formattedMessage to Exception
* Add missing IStreamWriter::fill implementations in FileWriter
2015-04-30 21:16:18 -07:00
Jack Andersen 7890a1be70 fixed header non-inclusion 2015-04-10 18:20:18 -10:00
Jack Andersen 00771aed2d inlined byte-swapping utilities 2015-04-10 18:12:42 -10:00
Jack Andersen e4f8c2959f lots of new streaming interface additions 2015-04-10 14:04:13 -10:00
Phillip Stephens e4f5c09534 * Fix IStreamReader::*String functions 2015-04-08 11:10:50 -07:00
Jack Andersen b21441cc11 Added OS X filesystem-support 2015-04-04 14:35:32 -10:00
Phillip Stephens 190f1e8c17 * Fix commit
* Fix LZO implementation (use lzo1x_decompress_safe)
2015-03-01 13:22:59 -08:00
Phillip Stephens c28cfbaba6 * Refactor Stream and *Reader classes 2015-03-01 12:42:39 -08:00
Phillip Stephens 68d369554d * Make Stream base functions public 2015-02-21 11:54:46 -08:00
Phillip Stephens 73592e0a86 oops 2015-01-28 22:36:47 -08:00
Phillip Stephens 1abbf80cef * Make streams polymorphic 2015-01-28 22:31:14 -08:00
Phillip Stephens 39f7ed55fc * Add maxlen to readString 2015-01-28 22:20:57 -08:00
Phillip Stephens e868c31253 * Finish modularization 2015-01-24 20:29:08 -08:00
Antidote 097a507bd0 * Visual Studio fixes (requires VS2013 at the minimum) 2014-12-28 20:46:43 -08:00
Antidote f322f1d7e7 * Change Athena::utility::fileSize to use stat64 instead of ftello
* Fix output of ftello64 in win32_largefilewrapper
2014-12-28 14:38:55 -08:00
Phillip Stephens be135d1caa * Start to fill in save related classes
* Fix silly bug in WiiSave
* Fix typos in Utilitiy.*
2014-11-28 19:32:37 -08:00
Phillip Stephens 30bda09849 * Bring .pro up to date
* Add libAthena.pc
* Make installable
2014-09-28 20:33:36 -07:00
Phillip Stephens 6976eda717 * Add configuration for Sakura specific types 2014-09-28 19:32:31 -07:00
Phillip Stephens 8b80f486ad * Change default constructor for BinaryWriter to accept null buffers 2014-09-19 18:16:17 -07:00
Phillip Stephens f92811004f * Added proper tree generation for WiiSave 2014-09-19 04:54:56 -07:00
Phillip Stephens 6187eb3f77 * Fix LZO 2014-09-09 09:53:32 -07:00
Phillip Stephens 2fa715cbbf * Unbreak compression 2014-09-09 09:46:05 -07:00
Phillip Stephens e8fad79134 * Add LZ77 Compression 2014-09-09 09:36:29 -07:00
Phillip Stephens 5a621215de * Refactor compression and utility 2014-09-09 03:19:19 -07:00
Phillip Stephens 814eda3d4c * Fix merge 2014-09-05 14:59:27 -07:00
Phillip Stephens f3e9fb4f70 * Fix build 2014-08-16 18:48:27 -07:00
Phillip Stephens 47054ea881 * Add PHYSFSFileReader class 2014-07-01 20:32:44 -07:00
Phillip Stephens 5a26e21c5b * Fix Athena::utility::fillRandom 2014-06-29 17:26:34 -07:00
Phillip Stephens 3b76c4f02f * Fix ATHENA_NO_SAVES 2014-06-28 08:38:50 -07:00
Phillip Stephens 5f74cdb9ed * Rename datatypes to prevent collision 2014-06-17 21:51:18 -07:00
Phillip Stephens cc71bec5d7 * Fix silly bug 2014-06-02 20:09:40 -07:00
Phillip Stephens 05db171ac4 * Add Variadic arguments to THROW_* macros 2014-05-30 17:40:35 -07:00
Phillip Stephens dfb0ce0b4f * Add fill to Stream 2014-05-15 00:41:54 -07:00
Phillip Stephens a19520ea1e * Add windows specific wrappers 2014-05-14 22:42:20 -07:00
Phillip Stephens da7781f78e * Revert swap* 2014-04-28 19:31:32 -07:00
Phillip Stephens 6150d728a5 * Changed swap* functions to both return, and take a reference
* Fixed writeInt64 in FileWriter
* Fixed ec.cpp on big endian systems
2014-04-25 15:17:52 -07:00
Phillip Stephens b7c359ea40 * Fix FileReader 2014-04-24 19:01:24 -07:00
Phillip Stephens d54dc30cb6 * Remove remaining references to libZelda 2014-04-20 03:28:28 -07:00
Antidote 0429eb57b8 * Remove *.autosave 2014-04-20 03:27:55 -07:00
Antidote ec4167abca * Major rewrite 2014-04-20 02:14:15 -07:00
Antidote 1a389de296 * Generalize ZQuestFile and incremented version major to 2
* Fixed a bug in Stream::writeBit where it wasn't correctly setting the flag
2014-04-18 18:36:46 -07:00
Antidote 77599bad3a Fix non-Qt build 2014-03-21 19:27:29 -07:00
Antidote f77b394c6b Merge branch 'master' of https://github.com/Antidote/libzelda
Conflicts:
	src/SpriteFileReader.cpp
2014-02-26 21:56:01 -08:00
Antidote 966efd3dd2 * Finish refactor 2014-02-26 21:47:39 -08:00
Antidote 304baa45bb * Fixed some bugs 2014-02-26 21:46:26 -08:00
Antidote ebca406d71 * Added progress callback to Binary reader 2014-02-22 00:25:43 -08:00
Antidote 9c38e96403 * Add missing readUByte to stream 2014-02-12 18:55:38 -08:00
Antidote 2731ac3dff * Add InvalidDataException 2014-02-12 14:52:44 -08:00
Antidote 5552a24628 * Add LZO support
* Add qmake include file
2014-02-11 17:39:10 -08:00
Antidote 9c64071bc0 * Remove updateTexture in SpritePart 2014-01-25 21:15:24 -08:00
Antidote 3afe76c70e * Added Sakura Sprite
* Renamed SSFile* and SSQuest to SkywardSword*
2014-01-25 20:56:04 -08:00
Antidote aa5c37856f Added join in zelda::utility 2014-01-25 20:54:36 -08:00
Antidote 3c737226ba * Added DEPRECATED macro 2014-01-14 20:13:26 -08:00
Antidote 164dff3926 * Parsebool 2014-01-11 10:27:29 -08:00
Antidote 428438cf89 * Changed zelda::utility::countChar to use a pointer to lastOccur rather than a reference 2014-01-10 13:13:06 -08:00
Antidote 1e450a6785 * Unknown 2014-01-04 13:56:03 -08:00
Antidote c8b382f754 * Fixed WiiSaveReader/Writer 2013-09-28 08:14:13 -07:00
Antidote 8ad0c00613 * Added Checksums utility namespace 2013-09-11 09:39:20 -07:00
Antidote 740fbd4273 * Working on Wii Port 2013-09-08 20:36:54 -07:00
Antidote baf16a6fbd * Added SkywardSword classes
* Added missing readUBytes function in zelda::io::Stream
2013-07-27 18:42:11 -07:00
Antidote 162d2753dc * Squashed a bug in ZQuestFile
* Moved yaz0Decode to zelda::compression
* Added yaz0Encode (NOT TESTED)
2013-07-26 23:39:03 -07:00
Antidote b7b4df52f3 * Fixed compression code, old code was unreliable and failed at random
(don't use zlib's compress function)
* More refactory work, ready for merge
2013-07-21 20:06:54 -07:00
Antidote d06c96d3aa * Standardized Exception messages
* Added zelda::error namespace
* Moved all Exceptions to zelda::error
* Moved all Read/Write classes to zelda::io
* Added "base" to all classes that inherit from BinaryReader/Writers
* Changed all references to BinaryReader/Writer functions to base for
readability.
2013-07-21 00:49:07 -07:00
Antidote 89151ed3c8 * Fix building 2013-07-20 21:14:33 -07:00
Antidote e86d64e7bb * Fix botched commit (forgot -a) 2013-07-20 20:57:20 -07:00
Antidote 8234d33f0d * Fix botched push 2013-07-20 20:51:26 -07:00
Antidote 49ddbbed16 * Moved WiiImage class to it's own header and source.
* Modified ALTTPFileWriter::calculateChecksum to better match Zelda 3's
routine
* Started documentation for ALTTP Files
2013-03-21 13:20:29 -07:00
Antidote e4cec5788b * Added ALTTP to libzelda
* Added License header
2013-02-16 10:28:30 -08:00
Antidote 2a5f4add1c * Get libzelda compiling 2013-02-15 20:30:51 -08:00
Antidote 24f6a1715a * Merge libwiisave with libzelda 2013-02-15 20:22:16 -08:00
Antidote 1e2065b352 * Fix bug in BinaryReader where it wasn't correctly reading in all the data 2013-01-29 13:46:05 -08:00
Antidote a0e341f5cf * Forgot to implement isOpenForRead/Writing in TextStream
* Changed isOpenForReading/Writing to const int Stream
2013-01-27 12:28:59 -08:00
Antidote 6c5e489f71 * Forgot writeLineAt in TextStream 2013-01-27 12:25:01 -08:00
Antidote 2e53be3baa * Finished adding features to TextStream
* Finished Documentation of TextStream
2013-01-27 12:13:09 -08:00
Antidote f644c7d1a3 * Changed how TextStream works; It's now less derpish and doesn't
produce a corrupted buffer everytime you edit a line.
2013-01-27 08:49:48 -08:00
Antidote 3c8b493014 * Added TextStream, needs documentation but it's functional 2013-01-26 21:57:53 -08:00
Antidote 29b1c842f2 * Completed documentation 2013-01-26 17:19:49 -08:00
Antidote 506556e1ae * Nearly done with the documentation
* Changed BinaryReader/Writer to read and write in 512 byte chunks by
default
2013-01-26 16:13:19 -08:00
Antidote ad0505a501 First Commit 2013-01-26 12:19:24 -08:00