Commit Graph

71 Commits

Author SHA1 Message Date
Matt Nadareski
b23710c814 Consolodate the key variables since there's no need for separate ones. 2016-05-15 13:45:41 -07:00
Matt Nadareski
c723033273 Implement continue/ignore flag for software lists 2016-05-15 13:23:29 -07:00
Matt Nadareski
5448d86cc2 This caused more issues than before. Commenting out for the time being until a better solution is found. 2016-05-15 12:17:11 -07:00
Matt Nadareski
c5564a3219 [doc] minor logging update 2016-05-14 20:50:50 -07:00
Matt Nadareski
9f0f9bda94 dataarea didn't work, let's try offset 2016-05-14 19:41:07 -07:00
Matt Nadareski
f3b3b4c915 Fix new SL dats
New SL dats have the size in the dataarea tag and NOT the rom tag. This should fix the issues from that.
2016-05-14 14:59:40 -07:00
Matt Nadareski
741af21e72 [doc] update actual key definition 2016-05-13 22:53:17 -07:00
Matt Nadareski
e06701f08b [doc] remove old sorting algorithm because it's not useful anymore 2016-05-13 16:55:58 -07:00
Matt Nadareski
5f7252349c Wrong direction on logic. 2016-05-13 16:52:01 -07:00
Matt Nadareski
a10592ebf3 Maybe fixes the issue with source/system sorting? 2016-05-13 16:50:45 -07:00
Matt Nadareski
e5ebc52129 Second experimental attempt at improving merges 2016-05-13 16:18:50 -07:00
Matt Nadareski
6f1f65aedb Revert "Experimental flip of values"
This reverts commit 1b3cbf6796.
2016-05-13 16:17:03 -07:00
Matt Nadareski
1b3cbf6796 Experimental flip of values 2016-05-13 15:43:26 -07:00
Matt Nadareski
6f025b3dfa Undo part of a previous change because of sorting issues 2016-05-13 12:41:06 -07:00
Matt Nadareski
ec228fc499 Slight rearrangement, Some issues popped up with ordering 2016-05-13 12:16:03 -07:00
Matt Nadareski
f463f3b767 @tractivo: change comparison to better match uniqueness
He brought this to my attention because somehow some items are getting compared by CRC only. This is wrong on a lot of levels, but this should be a step in the right direction.
2016-05-13 10:13:46 -07:00
Matt Nadareski
56c4a4b47c Add code to check for SHA-1 only situations with proper sorting 2016-05-12 10:25:20 -07:00
Matt Nadareski
5224b1dabe Change merging because blank CRCs can lead to problems 2016-05-11 15:02:33 -07:00
Matt Nadareski
c2b1cebe37 Invert the logic so that it actually makes sense 2016-05-11 12:08:17 -07:00
Matt Nadareski
2844bac565 Take advantage of new enum ordering 2016-05-11 10:57:00 -07:00
Matt Nadareski
382f74afaa An attempt to make diffing work the way I think it should
Basically, if a rom is a duplicate, it can be a duplicate within a system or source or across system or source, and by hash alone or by all data matching. The four combinations make an enum now and the diff function is the only one that uses them right now. If we're in dedup mode, we want to check hashes only in diff. Otherwise, we want to check against ones that match all information. This  needs field testing.
2016-05-10 20:55:51 -07:00
Matt Nadareski
d649988a04 Some hex hashes are short and need to be padded 2016-05-10 18:20:27 -07:00
Matt Nadareski
e7ede7cca2 Even more fun with zero-byte files 2016-05-06 13:12:00 -07:00
Matt Nadareski
a7f97cc419 More 0-byte file shennanigans 2016-05-06 12:56:02 -07:00
Matt Nadareski
ced41c5cde Add skip on nodump 2016-05-06 10:59:05 -07:00
Matt Nadareski
53cfcd19ed Fix "-" crc, md5, and sha1 hashes 2016-05-06 10:53:42 -07:00
Matt Nadareski
411115083d Make merging more robust 2016-05-03 23:59:32 -07:00
Matt Nadareski
51dbb6cf8f [doc] update comment 2016-05-02 15:30:39 -07:00
Matt Nadareski
dcf5aa7071 Forgot the other Parse 2016-05-02 14:08:50 -07:00
Matt Nadareski
690d17f9b5 Take care of hex-hashes 2016-05-02 14:02:43 -07:00
Matt Nadareski
842ab5f39d Reduce the number of steps 2016-04-29 11:49:23 -07:00
Matt Nadareski
586488296b Forgot to add fix from DB iteration of code 2016-04-28 17:13:16 -07:00
Matt Nadareski
e9a9ddad6a Make keys more selective 2016-04-28 16:41:23 -07:00
Matt Nadareski
0897f39c52 Mono doesn't like a missing DTD 2016-04-28 13:04:32 -07:00
Matt Nadareski
fa519036ad Remove all traces of the outdated DB merge/import 2016-04-28 12:43:56 -07:00
Matt Nadareski
ae2b8fd44d Add more code for dictionary based merging 2016-04-28 11:31:35 -07:00
Matt Nadareski
a202dc3dbb More changes to enable Dictionary merging 2016-04-28 11:06:27 -07:00
Matt Nadareski
8aea894aed Fix non-deduped merging in DB-based version 2016-04-28 10:40:45 -07:00
Matt Nadareski
6d67512258 Add dictionary-based Parse for future use 2016-04-28 10:37:33 -07:00
Matt Nadareski
ed193d1f1e Remove commented code 2016-04-27 21:53:54 -07:00
Matt Nadareski
a6536fd65e Fix some finicky XML DATs and how the name is read 2016-04-27 21:27:41 -07:00
Matt Nadareski
820097a2ec Rename since this is a permanent method now 2016-04-27 20:57:05 -07:00
Matt Nadareski
18369e89df More code changes to accustom diff and AB 2016-04-27 16:57:03 -07:00
Matt Nadareski
0d22715fa4 Remove unnecessary switch 2016-04-27 11:54:27 -07:00
Matt Nadareski
40b7d64303 Fix standard merging; dedupe still broken 2016-04-27 11:44:14 -07:00
Matt Nadareski
e450eebfd7 Stage 2 changes for using in-mem database
This change makes it mostly functional, having a way to both parse and merge in one step and output from the database. The issue is that the output from Parse2 doesn't match Parse OR Parse + Merge. Duplicates don't seem to be added in the first case and there are a differing number of roms in the second.
2016-04-27 01:10:24 -07:00
Matt Nadareski
bce1cc5839 Add stage 1 changes for better merging
The new merging process is both parse and merge in one step using an in-memory database. The next steps are to get the data in this database and write it out properly.
2016-04-27 00:53:15 -07:00
Matt Nadareski
f8ed865eaa Replace Parse with mature second iteration
This code for parsing needed to be changed because of large file handling. XmlTextReader ended up being the best solution that doesn't crash at 500 MB in. A side effect of this change is that the code for processing a given DAT is very minimal now. The entire sub-block for SL-specific DAT info doesn't need to exist anymore. Small-scale tests have given 1:1 results with previous versions but further testing is needed for large files to make sure no data is lost.
2016-04-25 01:59:09 -07:00
Matt Nadareski
994a03826f Add version 1 of XmlTextReader-based parsing
This is currently borken for reasons that I don't 100% understand. It needs to be tested further with a basic DAT to see why it doesn't seem to get every ROM.
2016-04-25 00:30:50 -07:00
Matt Nadareski
77b1512bff [doc] add notes for future work 2016-04-25 00:27:27 -07:00