mirror of
https://github.com/N64Recomp/N64ModernRuntime.git
synced 2026-04-22 10:02:08 +00:00
remove byteswap in ultramodern
This commit is contained in:
parent
15ff1c0507
commit
315c69638b
2 changed files with 4 additions and 29 deletions
|
|
@ -227,7 +227,7 @@ extern "C" s32 osPfsDeleteFile(RDRAM_ARG PTR(OSPfs) pfs_, u16 company_code, u32
|
|||
return PFS_ERR_INVALID;
|
||||
}
|
||||
|
||||
extern "C" s32 osPfsReadWriteFile(RDRAM_ARG PTR(OSPfs) pfs_, s32 file_no, u8 flag, int offset, int size_in_bytes, u8* data_buffer) {
|
||||
extern "C" s32 osPfsReadWriteFile(RDRAM_ARG PTR(OSPfs) pfs_, s32 file_no, u8 flag, int offset, int nbytes, u8* data_buffer) {
|
||||
pfs_state_t pak;
|
||||
|
||||
const auto filename = pfs_file_path(file_no);
|
||||
|
|
@ -243,15 +243,12 @@ extern "C" s32 osPfsReadWriteFile(RDRAM_ARG PTR(OSPfs) pfs_, s32 file_no, u8 fla
|
|||
return PFS_ERR_INVALID;
|
||||
}
|
||||
|
||||
std::vector<u8> swap_buffer(size_in_bytes);
|
||||
if (flag == 0) {
|
||||
if (flag == PFS_READ) {
|
||||
pak.file.seekg(offset, std::ios::beg);
|
||||
pak.file.read((char*)swap_buffer.data(), size_in_bytes);
|
||||
ByteSwapCopy(data_buffer, swap_buffer.data(), size_in_bytes);
|
||||
pak.file.read((char*)data_buffer, nbytes);
|
||||
} else {
|
||||
ByteSwapCopy(swap_buffer.data(), data_buffer, size_in_bytes);
|
||||
pak.file.seekp(offset, std::ios::beg);
|
||||
pak.file.write((char*)swap_buffer.data(), size_in_bytes);
|
||||
pak.file.write((const char*)data_buffer, nbytes);
|
||||
}
|
||||
|
||||
pak.file.close();
|
||||
|
|
|
|||
|
|
@ -105,27 +105,5 @@ void pfs_header_read(pfs_header_t& hdr, u8 file_index) {
|
|||
pak.header.close();
|
||||
}
|
||||
|
||||
void Pfs_ByteSwapFile(u8* buffer, size_t size) {
|
||||
uint8_t c0, c1, c2, c3;
|
||||
|
||||
for (size_t i = 0; i < size; i += 4) {
|
||||
c0 = buffer[i + 0];
|
||||
c1 = buffer[i + 1];
|
||||
c2 = buffer[i + 2];
|
||||
c3 = buffer[i + 3];
|
||||
|
||||
buffer[i + 3] = c0;
|
||||
buffer[i + 2] = c1;
|
||||
buffer[i + 1] = c2;
|
||||
buffer[i + 0] = c3;
|
||||
}
|
||||
}
|
||||
|
||||
void ByteSwapCopy(uint8_t* dst, const uint8_t* src, size_t nbytes) {
|
||||
for (size_t i = 0; i < nbytes; i++) {
|
||||
dst[i] = src[i ^ 3];
|
||||
}
|
||||
}
|
||||
|
||||
#endif // __ULTRAMODERN_PFS_HPP__
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue