Commit Graph

  • dd9f10439c Update README for v0.6.0: AACS 2.0 done, open() all drives, .cargo gitignore MattJackson 2026-04-10 09:24:01 -07:00
  • d1f8db93d6 Remove orphaned jar.rs — replaced by labels/ module MattJackson 2026-04-10 09:17:11 -07:00
  • a07b2a85a4 Remove orphaned jar.rs — replaced by labels/ module MattJackson 2026-04-10 09:17:11 -07:00
  • 926939f24b open() works on all drives, AACS 2.0 handshake wired, raw_gc_010c on DriveId MattJackson 2026-04-10 08:48:41 -07:00
  • c3e50f3a2e open() works on all drives, AACS 2.0 handshake wired, raw_gc_010c on DriveId MattJackson 2026-04-10 08:48:41 -07:00
  • 48d70c092c Fix test failures: correct EBML size assertion, fix doc tests MattJackson 2026-04-10 08:23:32 -07:00
  • 5990ec9566 Fix test failures: correct EBML size assertion, fix doc tests MattJackson 2026-04-10 08:23:32 -07:00
  • c14b319212 Fix compiler warnings: remove unused imports and dead code MattJackson 2026-04-10 08:21:55 -07:00
  • 01d26c8e33 Fix compiler warnings: remove unused imports and dead code MattJackson 2026-04-10 08:21:55 -07:00
  • 55b22bfb9d Add design docs for API and MKV muxer architecture MattJackson 2026-04-10 08:19:53 -07:00
  • 70c75ca374 Add design docs for API and MKV muxer architecture MattJackson 2026-04-10 08:19:53 -07:00
  • 48b212c9d2 Add MKV muxer and event system MattJackson 2026-04-10 08:19:40 -07:00
  • 0b014287a3 Add MKV muxer and event system MattJackson 2026-04-10 08:19:40 -07:00
  • 074f21ba58 Refactor error types: replace generic AacsError/DiscError with typed variants MattJackson 2026-04-10 08:19:28 -07:00
  • 24345bc202 Refactor error types: replace generic AacsError/DiscError with typed variants MattJackson 2026-04-10 08:19:28 -07:00
  • 9241d767ee Code audit: fix unused variables, update docs MattJackson 2026-04-10 08:19:01 -07:00
  • ad592d244b Code audit: fix unused variables, update docs MattJackson 2026-04-10 08:19:01 -07:00
  • 65996ade59 Remove SpeedTable, add probe_disc(), named constants, clean architecture MattJackson 2026-04-09 15:16:44 -07:00
  • 5949bcee89 Remove SpeedTable, add probe_disc(), named constants, clean architecture MattJackson 2026-04-09 15:16:44 -07:00
  • 09f5bb7816 Speed table: generic zone-based speed management MattJackson 2026-04-09 13:33:02 -07:00
  • 5c73d9d5a0 Speed table: generic zone-based speed management MattJackson 2026-04-09 13:33:02 -07:00
  • 12a5985a58 Update README: v0.6.0 API, real sample output MattJackson 2026-04-09 13:03:00 -07:00
  • d7d13d2849 Update README: v0.6.0 API, real sample output MattJackson 2026-04-09 13:03:00 -07:00
  • d23632931b Profiles v2: chipset+variant top-level keys, minimal per-drive data MattJackson 2026-04-09 12:50:44 -07:00
  • 81a88dcad0 Profiles v2: chipset+variant top-level keys, minimal per-drive data MattJackson 2026-04-09 12:50:44 -07:00
  • 92e7692779 Bump to v0.6.0 MattJackson 2026-04-09 12:39:50 -07:00
  • 7c8c26af24 Bump to v0.6.0 MattJackson 2026-04-09 12:39:50 -07:00
  • 0c11623666 v0.6.0: Clean API, chipset-keyed profiles, streamlined platform driver MattJackson 2026-04-09 12:38:02 -07:00
  • ae973cb077 v0.6.0: Clean API, chipset-keyed profiles, streamlined platform driver MattJackson 2026-04-09 12:38:02 -07:00
  • b454d100c6 Update profiles: fix data extraction offset MattJackson 2026-04-09 08:37:23 -07:00
  • b1d1a17cfa Update profiles: fix data extraction offset MattJackson 2026-04-09 08:37:23 -07:00
  • 097473d371 Update README and CHANGELOG for v0.5.0 MattJackson 2026-04-09 07:27:10 -07:00
  • 6784829856 Update README and CHANGELOG for v0.5.0 MattJackson 2026-04-09 07:27:10 -07:00
  • 5e3157b18d Fix subtitle language parsing: PGS in audio slots, secondary PG entries MattJackson 2026-04-08 22:41:07 -07:00
  • 7fcbcff6e5 Fix subtitle language parsing: PGS in audio slots, secondary PG entries MattJackson 2026-04-08 22:41:07 -07:00
  • d9c5f7a0d2 Fix read speed: detect kernel max transfer size, fix phantom streams MattJackson 2026-04-08 22:30:08 -07:00
  • ef38a90109 Fix read speed: detect kernel max transfer size, fix phantom streams MattJackson 2026-04-08 22:30:08 -07:00
  • 6456e24bb5 Lock down Platform trait: pub(crate), only init/set_read_speed/is_ready MattJackson 2026-04-08 21:41:57 -07:00
  • 475cfadfc8 Lock down Platform trait: pub(crate), only init/set_read_speed/is_ready MattJackson 2026-04-08 21:41:57 -07:00
  • 0b19154bd3 Clean pipeline: one open, one init, no double-init MattJackson 2026-04-08 21:35:48 -07:00
  • 97407570ed Clean pipeline: one open, one init, no double-init MattJackson 2026-04-08 21:35:48 -07:00
  • ecc6cd9f6b Fix init() hang: make status() non-fatal, single attempt MattJackson 2026-04-08 21:27:34 -07:00
  • 490c597995 Fix init() hang: make status() non-fatal, single attempt MattJackson 2026-04-08 21:27:34 -07:00
  • 71a21b5c6f Fix PGS subtitle misclassified as audio in STN parsing MattJackson 2026-04-08 21:14:39 -07:00
  • c5b0ab3156 Fix PGS subtitle misclassified as audio in STN parsing MattJackson 2026-04-08 21:14:39 -07:00
  • 79b1b4d5b5 Bump to v0.5.0 MattJackson 2026-04-08 20:53:54 -07:00
  • eb4d89b251 Bump to v0.5.0 MattJackson 2026-04-08 20:53:54 -07:00
  • 85b38de4a7 Update profiles.json: 206 drives with complete data MattJackson 2026-04-08 20:51:15 -07:00
  • bb9f996afc Update profiles.json: 206 drives with complete data MattJackson 2026-04-08 20:51:15 -07:00
  • 686bf91bb5 Update profiles.json: 206 drives MattJackson 2026-04-08 20:46:40 -07:00
  • 766ffc70f6 Update profiles.json: 206 drives MattJackson 2026-04-08 20:46:40 -07:00
  • f07f8210c3 Fix variant B firmware upload: MODE SELECT not WRITE_BUFFER MattJackson 2026-04-08 20:40:37 -07:00
  • 91d813ab51 Fix variant B firmware upload: MODE SELECT not WRITE_BUFFER MattJackson 2026-04-08 20:40:37 -07:00
  • 4153d23652 mt1959: separate A/B firmware upload paths MattJackson 2026-04-08 20:35:43 -07:00
  • 3ee0f0cedf mt1959: separate A/B firmware upload paths MattJackson 2026-04-08 20:35:43 -07:00
  • 760bab0893 mt1959.rs: complete platform implementation MattJackson 2026-04-08 20:30:46 -07:00
  • 38ea9d9fd0 mt1959.rs: complete platform implementation MattJackson 2026-04-08 20:30:46 -07:00
  • ce8ddb48bb DriveProfile with all per-drive fields, drive.rs uses init() as single entry MattJackson 2026-04-08 20:15:25 -07:00
  • cfe6c617ae DriveProfile with all per-drive fields, drive.rs uses init() as single entry MattJackson 2026-04-08 20:15:25 -07:00
  • 377cbe0aec Rewrite mt1959.rs: complete platform driver with full profile support MattJackson 2026-04-08 20:11:26 -07:00
  • 617af3db92 Rewrite mt1959.rs: complete platform driver with full profile support MattJackson 2026-04-08 20:11:26 -07:00
  • a4c10887cf Make unlock non-fatal in open_title — BD discs work without it MattJackson 2026-04-08 17:30:09 -07:00
  • 4949199ffc Make unlock non-fatal in open_title — BD discs work without it MattJackson 2026-04-08 17:30:09 -07:00
  • 3fcab4d8d9 Strip to bare minimum for speed test: no calibration, no maintain_speed MattJackson 2026-04-08 15:46:42 -07:00
  • 1b9fe108b8 Strip to bare minimum for speed test: no calibration, no maintain_speed MattJackson 2026-04-08 15:46:42 -07:00
  • f46d9706eb Fix rip: extent LBA offset, u16 truncation, batch reads, read_content MattJackson 2026-04-08 10:12:07 -07:00
  • 1e975d450a Fix rip: extent LBA offset, u16 truncation, batch reads, read_content MattJackson 2026-04-08 10:12:07 -07:00
  • 9ecbf0ada5 Clean warning, AACS 2.0 full handshake + P-256 MattJackson 2026-04-08 08:27:13 -07:00
  • 2d3287da82 Clean warning, AACS 2.0 full handshake + P-256 MattJackson 2026-04-08 08:27:13 -07:00
  • 82746ed592 AACS 2.0: full P-256 handshake, HC2 parsing, stubbed for credentials MattJackson 2026-04-08 08:03:40 -07:00
  • 2732159e4a AACS 2.0: full P-256 handshake, HC2 parsing, stubbed for credentials MattJackson 2026-04-08 08:03:40 -07:00
  • da0eeae6a7 AACS 2.0: P-256 curve, SHA-256 ECDSA, bus decryption pipeline MattJackson 2026-04-07 21:30:09 -07:00
  • 150ec35e91 AACS 2.0: P-256 curve, SHA-256 ECDSA, bus decryption pipeline MattJackson 2026-04-07 21:30:09 -07:00
  • 262f9a7f8d Add keydb updater, update README with labels + multi-lingual + real output MattJackson 2026-04-07 21:21:18 -07:00
  • 188d2d0a5d Add keydb updater, update README with labels + multi-lingual + real output MattJackson 2026-04-07 21:21:18 -07:00
  • ca732d57e7 Bump to v0.4.1 MattJackson 2026-04-07 21:01:31 -07:00
  • 722b5cf56f Bump to v0.4.1 MattJackson 2026-04-07 21:01:31 -07:00
  • f357e0fe26 README: update dep version to 0.4, update architecture MattJackson 2026-04-07 20:57:32 -07:00
  • 4e4a29aeab README: update dep version to 0.4, update architecture MattJackson 2026-04-07 20:57:32 -07:00
  • 976aeb4848 Labels: catch panics — never break disc scan MattJackson 2026-04-07 20:36:26 -07:00
  • dcaaaefdbc Labels: catch panics — never break disc scan MattJackson 2026-04-07 20:36:26 -07:00
  • 2bea69c7d9 Release v0.4.0: labels rewrite, eject, capture fix MattJackson 2026-04-07 20:35:11 -07:00
  • fb139c4758 Release v0.4.0: labels rewrite, eject, capture fix MattJackson 2026-04-07 20:35:11 -07:00
  • 0bb815ca22 Restructure labels: detect-then-parse, named parsers, raw disc data MattJackson 2026-04-07 20:29:44 -07:00
  • 89c127b3b6 Restructure labels: detect-then-parse, named parsers, raw disc data MattJackson 2026-04-07 20:29:44 -07:00
  • aa188751e4 Simplify labels API: one call, labels on streams or nothing MattJackson 2026-04-07 18:46:29 -07:00
  • 8e7778c572 Simplify labels API: one call, labels on streams or nothing MattJackson 2026-04-07 18:46:29 -07:00
  • ba44f7d928 Add labels module: 4 disc file parsers for stream labels MattJackson 2026-04-07 18:42:33 -07:00
  • 7f7a66e039 Add labels module: 4 disc file parsers for stream labels MattJackson 2026-04-07 18:42:33 -07:00
  • 8a95787426 JAR bytecode tracer POC — extract display names from BD-J enum classes MattJackson 2026-04-07 16:54:30 -07:00
  • c6464107ff JAR bytecode tracer POC — extract display names from BD-J enum classes MattJackson 2026-04-07 16:54:30 -07:00
  • aebe6a256b Fix JAR label matching: by language+codec for label format, by index for TextField MattJackson 2026-04-07 16:27:47 -07:00
  • 495ca3aa9f Fix JAR label matching: by language+codec for label format, by index for TextField MattJackson 2026-04-07 16:27:47 -07:00
  • 791b832f25 Rewrite JAR parser: multi-format with TextField support MattJackson 2026-04-07 16:23:14 -07:00
  • 4861a40ec6 Rewrite JAR parser: multi-format with TextField support MattJackson 2026-04-07 16:23:14 -07:00
  • 580ce2277d Add serial_number to DriveId from GET_CONFIG 0x0108 MattJackson 2026-04-07 16:14:55 -07:00
  • d575424651 Add serial_number to DriveId from GET_CONFIG 0x0108 MattJackson 2026-04-07 16:14:55 -07:00
  • 8a556c5c63 Merge JAR labels into streams during Disc::scan() MattJackson 2026-04-07 16:10:43 -07:00
  • 7dd0f6c2dd Merge JAR labels into streams during Disc::scan() MattJackson 2026-04-07 16:10:43 -07:00
  • 520a3f912c Refactor Stream to enum with typed variants (Video, Audio, Subtitle) MattJackson 2026-04-07 16:08:45 -07:00