diff options
author | 2023-09-17 09:41:35 -0400 | |
---|---|---|
committer | 2023-09-17 09:43:06 -0400 | |
commit | 676e44ca955121808828ddc7a8a024dc721f682c (patch) | |
tree | 64ca682d6e9dc0a752339f39f1900cc3b3c50fdb /src/lib/formats/apridisk.cpp | |
parent | 2f7b1f05c72e568032930e7ceba2db0b4cb63e1a (diff) |
imageutl.h: Retire pick_integer_[bl]e and place_integer_[bl]e in favor of the simpler functions in multibyte.h
* multibyte.h: Add constexpr for getters and noexcept for all functions
Diffstat (limited to 'src/lib/formats/apridisk.cpp')
-rw-r--r-- | src/lib/formats/apridisk.cpp | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/src/lib/formats/apridisk.cpp b/src/lib/formats/apridisk.cpp index 529b98ec2e8..03a7cb81bdd 100644 --- a/src/lib/formats/apridisk.cpp +++ b/src/lib/formats/apridisk.cpp @@ -10,9 +10,10 @@ #include "apridisk.h" -#include "imageutl.h" - #include "ioprocs.h" +#include "multibyte.h" + +#include "osdcore.h" // osd_printf_error apridisk_format::apridisk_format() @@ -69,19 +70,19 @@ bool apridisk_format::load(util::random_read &io, uint32_t form_factor, const st uint8_t sector_header[16]; io.read_at(file_offset, sector_header, 16, actual); - uint32_t type = pick_integer_le(§or_header, 0, 4); - uint16_t compression = pick_integer_le(§or_header, 4, 2); - uint16_t header_size = pick_integer_le(§or_header, 6, 2); - uint32_t data_size = pick_integer_le(§or_header, 8, 4); + uint32_t type = get_u32le(§or_header[0]); + uint16_t compression = get_u16le(§or_header[4]); + uint16_t header_size = get_u16le(§or_header[6]); + uint32_t data_size = get_u32le(§or_header[8]); file_offset += header_size; switch (type) { case APR_SECTOR: - uint8_t head = pick_integer_le(§or_header, 12, 1); - uint8_t sector = pick_integer_le(§or_header, 13, 1); - uint8_t track = (uint8_t) pick_integer_le(§or_header, 14, 2); + uint8_t head = sector_header[12]; + uint8_t sector = sector_header[13]; + uint8_t track = (uint8_t) get_u16le(§or_header[14]); track_count = std::max(track_count, int(unsigned(track))); head_count = std::max(head_count, int(unsigned(head))); @@ -103,7 +104,7 @@ bool apridisk_format::load(util::random_read &io, uint32_t form_factor, const st { uint8_t comp[3]; io.read_at(file_offset, comp, 3, actual); - uint16_t length = pick_integer_le(comp, 0, 2); + uint16_t length = get_u16le(&comp[0]); if (length != SECTOR_SIZE) { |