Skip to content

Commit

Permalink
Change smsutils functions to use definitions to the original symbol
Browse files Browse the repository at this point in the history
This will make it easier to change it out to use sysclib when it is ready
  • Loading branch information
uyjulian committed Jun 26, 2021
1 parent e2b5b61 commit 72c0cb0
Show file tree
Hide file tree
Showing 11 changed files with 41 additions and 29 deletions.
3 changes: 3 additions & 0 deletions modules/iopcore/cdvdfsv/cdvdfsv-internal.h
Expand Up @@ -19,7 +19,10 @@
#include <cdvdman.h>

#include "cdvdman_opl.h"

#include "smsutils.h"
#define memcpy mips_memcpy
#define memset mips_memset

extern void cdvdfsv_register_scmd_rpc(SifRpcDataQueue_t *rpc_DQ);
extern void cdvdfsv_register_ncmd_rpc(SifRpcDataQueue_t *rpc_DQ);
Expand Down
8 changes: 4 additions & 4 deletions modules/iopcore/cdvdfsv/ncmd.c
Expand Up @@ -131,7 +131,7 @@ static inline void cdvd_readee(void *buf)
sectors_to_read = r->sectors;
bytesent = 0;

mips_memset((void *)curlsn_buf, 0, 16);
memset((void *)curlsn_buf, 0, 16);

readee.pdst1 = (void *)r->buf;
eeaddr_64b = (void *)(((u32)r->buf + 0x3f) & 0xffffffc0); // get the next 64-bytes aligned address
Expand Down Expand Up @@ -202,7 +202,7 @@ static inline void cdvd_readee(void *buf)

if (!flag_64b) {
if (sectors_to_read == r->sectors) // check that was the first read. Data read will be skewed by readee.b1len bytes into the adjacent sector.
mips_memcpy((void *)readee.buf1, (void *)fsvRbuf, readee.b1len);
memcpy((void *)readee.buf1, (void *)fsvRbuf, readee.b1len);

if ((sectors_to_read == nsectors) && (readee.b1len)) // For the last sector read.
size_64bb = size_64b - 64;
Expand All @@ -223,7 +223,7 @@ static inline void cdvd_readee(void *buf)
} while ((flag_64b) || (sectors_to_read));

//At the very last pass, copy readee.b2len bytes from the last sector, to complete the alignment correction.
mips_memcpy((void *)readee.buf2, (void *)(fsvRbuf + size_64b - readee.b2len), readee.b2len);
memcpy((void *)readee.buf2, (void *)(fsvRbuf + size_64b - readee.b2len), readee.b2len);
}

*(int *)buf = bytesent;
Expand Down Expand Up @@ -367,7 +367,7 @@ static inline void rpcNCmd_cdreadDiskID(void *buf)
{
u8 *p = (u8 *)buf;

mips_memset(p, 0, 10);
memset(p, 0, 10);
*(int *)buf = sceCdReadDiskID((unsigned int *)&p[4]);
}

Expand Down
4 changes: 2 additions & 2 deletions modules/iopcore/cdvdman/cdvdman.c
Expand Up @@ -231,7 +231,7 @@ static int cdvdman_read(u32 lsn, u32 sectors, void *buf)
sectors -= nsectors;
nbytes = nsectors << 11;

mips_memcpy(buf, cdvdman_buf, nbytes);
memcpy(buf, cdvdman_buf, nbytes);

buf = (void *)(buf + nbytes);
}
Expand Down Expand Up @@ -476,7 +476,7 @@ static int cdvdman_writeSCmd(u8 cmd, const void *in, u16 in_size, void *out, u16
if (out_size > i)
out_size = i;

mips_memcpy((void *)out, (void *)rdbuf, out_size);
memcpy((void *)out, (void *)rdbuf, out_size);

SignalSema(cdvdman_scmdsema);

Expand Down
2 changes: 1 addition & 1 deletion modules/iopcore/cdvdman/device-hdd.c
Expand Up @@ -70,7 +70,7 @@ void DeviceInit(void)
DelayThread(2000);
}

mips_memcpy(cdvdman_partspecs, apaHeader.part_specs, sizeof(cdvdman_partspecs));
memcpy(cdvdman_partspecs, apaHeader.part_specs, sizeof(cdvdman_partspecs));

cdvdman_settings.common.media = apaHeader.discType;
cdvdman_settings.common.layer1_start = apaHeader.layer1_start;
Expand Down
5 changes: 4 additions & 1 deletion modules/iopcore/cdvdman/internal.h
Expand Up @@ -2,7 +2,6 @@
#ifndef __CDVDMAN_INTERNAL__
#define __CDVDMAN_INTERNAL__

#include "smsutils.h"
#include "dev9.h"
#include "oplsmb.h"
#include "smb.h"
Expand Down Expand Up @@ -30,6 +29,10 @@

#include <defs.h>

#include "smsutils.h"
#define memcpy mips_memcpy
#define memset mips_memset

#ifdef __IOPCORE_DEBUG
#define DPRINTF(args...) printf(args)
#define iDPRINTF(args...) Kprintf(args)
Expand Down
8 changes: 4 additions & 4 deletions modules/iopcore/cdvdman/ioops.c
Expand Up @@ -91,7 +91,7 @@ void cdvdman_fs_init(void)

DeviceFSInit();

mips_memset(&cdvdman_fdhandles[0], 0, MAX_FDHANDLES * sizeof(FHANDLE));
memset(&cdvdman_fdhandles[0], 0, MAX_FDHANDLES * sizeof(FHANDLE));

cdvdman_searchfile_init();

Expand Down Expand Up @@ -233,7 +233,7 @@ static int cdrom_close(iop_file_t *f)

DPRINTF("cdrom_close\n");

mips_memset(fh, 0, sizeof(FHANDLE));
memset(fh, 0, sizeof(FHANDLE));
f->mode = 0; //SCE invalidates FDs by clearing the open flags.

SignalSema(cdrom_io_sema);
Expand Down Expand Up @@ -272,7 +272,7 @@ static int cdrom_read(iop_file_t *f, void *buf, int size)
rpos += nbytes;

sceCdSync(0);
mips_memcpy(buf, &cdvdman_fs_buf[offset], nbytes);
memcpy(buf, &cdvdman_fs_buf[offset], nbytes);
buf += nbytes;
}

Expand Down Expand Up @@ -301,7 +301,7 @@ static int cdrom_read(iop_file_t *f, void *buf, int size)
rpos += nbytes;

sceCdSync(0);
mips_memcpy(buf, cdvdman_fs_buf, nbytes);
memcpy(buf, cdvdman_fs_buf, nbytes);
}
}

Expand Down
5 changes: 4 additions & 1 deletion modules/iopcore/cdvdman/ioplib_util.c
Expand Up @@ -9,7 +9,10 @@
#include <sysclib.h>

#include "ioplib_util.h"

#include "smsutils.h"
#define memcpy mips_memcpy
#define memset mips_memset

#ifdef __IOPCORE_DEBUG
#define DPRINTF(args...) printf(args)
Expand Down Expand Up @@ -246,7 +249,7 @@ static int Hook_ReferModuleStatus(int id, ModuleStatus_t *status)

mod = checkFakemodById(id, modulefake_list);
if (mod != NULL) {
mips_memset(status, 0, sizeof(ModuleStatus_t));
memset(status, 0, sizeof(ModuleStatus_t));
strcpy(status->name, mod->name);
status->version = mod->version;
status->id = mod->id;
Expand Down
2 changes: 1 addition & 1 deletion modules/iopcore/cdvdman/ncmd.c
Expand Up @@ -146,7 +146,7 @@ int sceCdReadDiskID(unsigned int *DiskID)
if (i == 5)
*((u16 *)DiskID) = (u16)0xadde;
else
mips_memcpy(DiskID, cdvdman_settings.common.DiscID, 5);
memcpy(DiskID, cdvdman_settings.common.DiscID, 5);

return 1;
}
10 changes: 5 additions & 5 deletions modules/iopcore/cdvdman/scmd.c
Expand Up @@ -175,7 +175,7 @@ int sceCdRI(u8 *buf, u32 *stat)
if (stat)
*stat = (u32)rdbuf[0];

mips_memcpy((void *)buf, (void *)&rdbuf[1], 8);
memcpy((void *)buf, (void *)&rdbuf[1], 8);

return 1;
}
Expand All @@ -200,7 +200,7 @@ static int cdvdman_readMechaconVersion(u8 *mname, u32 *stat)
*stat = rdbuf[0] & 0x80;
rdbuf[0] &= 0x7f;

mips_memcpy(mname, &rdbuf[0], 4);
memcpy(mname, &rdbuf[0], 4);

return 1;
}
Expand All @@ -216,20 +216,20 @@ int sceCdRM(char *m, u32 *stat)
r = cdvdman_readMechaconVersion(rdbuf, stat);
if ((r == 1) && (0x104FE < (rdbuf[3] | (rdbuf[2] << 8) | (rdbuf[1] << 16)))) {

mips_memcpy(&m[0], "M_NAME_UNKNOWN\0\0", 16);
memcpy(&m[0], "M_NAME_UNKNOWN\0\0", 16);
*stat |= 0x40;
} else {
wrbuf[0] = 0;
cdvdman_sendSCmd(0x17, wrbuf, 1, rdbuf, 9);

*stat = rdbuf[0];
mips_memcpy(&m[0], &rdbuf[1], 8);
memcpy(&m[0], &rdbuf[1], 8);

wrbuf[0] = 8;
cdvdman_sendSCmd(0x17, wrbuf, 1, rdbuf, 9);

*stat |= rdbuf[0];
mips_memcpy(&m[8], &rdbuf[1], 8);
memcpy(&m[8], &rdbuf[1], 8);
}

return 1;
Expand Down
19 changes: 11 additions & 8 deletions modules/iopcore/cdvdman/smb.c
Expand Up @@ -14,15 +14,18 @@
#include <intrman.h>
#include <sifman.h>

#include "smsutils.h"
#include "oplsmb.h"
#include "smb.h"
#include "cdvd_config.h"

#include "smsutils.h"
#define memcpy mips_memcpy
#define memset mips_memset

#define USE_CUSTOM_RECV 1

//Round up the erasure amount, so that memset can erase memory word-by-word.
#define ZERO_PKT_ALIGNED(hdr, hdrSize) mips_memset((hdr), 0, ((hdrSize) + 3) & ~3)
#define ZERO_PKT_ALIGNED(hdr, hdrSize) memset((hdr), 0, ((hdrSize) + 3) & ~3)

/* Limit the maximum chunk size of receiving operations, to avoid triggering the congestion avoidance algorithm of the SMB server.
This is because the IOP cannot clear the received frames fast enough, causing the number of bytes in flight to grow exponentially.
Expand Down Expand Up @@ -129,7 +132,7 @@ int OpenTCPSession(struct in_addr dst_IP, u16 dst_port)
opt = 1;
plwip_setsockopt(sock, IPPROTO_TCP, TCP_NODELAY, (char *)&opt, sizeof(opt));

mips_memset(&sock_addr, 0, sizeof(sock_addr));
memset(&sock_addr, 0, sizeof(sock_addr));
sock_addr.sin_addr = dst_IP;
sock_addr.sin_family = AF_INET;
sock_addr.sin_port = htons(dst_port);
Expand Down Expand Up @@ -318,8 +321,8 @@ int smb_NegotiateProtocol(char *SMBServerIP, int SMBServerPort, char *Username,
server_specs.MaxBufferSize = NPRsp->MaxBufferSize;
server_specs.MaxMpxCount = NPRsp->MaxMpxCount;
server_specs.SessionKey = NPRsp->SessionKey;
mips_memcpy(server_specs.EncryptionKey, &NPRsp->ByteField[0], NPRsp->KeyLength);
mips_memcpy(server_specs.PrimaryDomainServerName, &NPRsp->ByteField[NPRsp->KeyLength], sizeof(server_specs.PrimaryDomainServerName));
memcpy(server_specs.EncryptionKey, &NPRsp->ByteField[0], NPRsp->KeyLength);
memcpy(server_specs.PrimaryDomainServerName, &NPRsp->ByteField[NPRsp->KeyLength], sizeof(server_specs.PrimaryDomainServerName));
strncpy(server_specs.Username, Username, sizeof(server_specs.Username));
server_specs.Username[sizeof(server_specs.Username) - 1] = '\0';
strncpy(server_specs.Password, Password, sizeof(server_specs.Password));
Expand Down Expand Up @@ -366,7 +369,7 @@ int smb_SessionSetupAndX(u32 capabilities)
if (server_specs.SecurityMode == SERVER_USER_SECURITY_LEVEL) {
password_len = server_specs.PasswordLen;
// Copy the password accordingly to auth type
mips_memcpy(&SSR->ByteField[offset], &server_specs.Password[(AuthType << 4) + (AuthType << 3)], password_len);
memcpy(&SSR->ByteField[offset], &server_specs.Password[(AuthType << 4) + (AuthType << 3)], password_len);
// fill SSR->AnsiPasswordLength or SSR->UnicodePasswordLength accordingly to auth type
if (AuthType == LM_AUTH)
SSR->AnsiPasswordLength = password_len;
Expand Down Expand Up @@ -455,7 +458,7 @@ int smb_TreeConnectAndX(char *ShareName)
if (server_specs.SecurityMode == SERVER_SHARE_SECURITY_LEVEL) {
password_len = server_specs.PasswordLen;
// Copy the password accordingly to auth type
mips_memcpy(&TCR->ByteField[offset], &server_specs.Password[(AuthType << 4) + (AuthType << 3)], password_len);
memcpy(&TCR->ByteField[offset], &server_specs.Password[(AuthType << 4) + (AuthType << 3)], password_len);
}
TCR->PasswordLength = password_len;
offset += password_len;
Expand All @@ -468,7 +471,7 @@ int smb_TreeConnectAndX(char *ShareName)
// Add share name
offset += setStringField((char *)&TCR->ByteField[offset], ShareName);

mips_memcpy(&TCR->ByteField[offset], "?????\0", 6); // Service, any type of device
memcpy(&TCR->ByteField[offset], "?????\0", 6); // Service, any type of device
offset += 6;

TCR->ByteCount = offset;
Expand Down
4 changes: 2 additions & 2 deletions modules/iopcore/cdvdman/streaming.c
Expand Up @@ -231,7 +231,7 @@ static int ReadSectors(int maxcount, void *buffer)
if (SectorsToCopy > maxcount)
SectorsToCopy = maxcount;
if (SectorsToCopy > 0) {
mips_memcpy(buffer, cdvdman_stat.StreamingData.StIOP_bufaddr + cdvdman_stat.StreamingData.StReadPtr * 2048, SectorsToCopy * 2048);
memcpy(buffer, cdvdman_stat.StreamingData.StIOP_bufaddr + cdvdman_stat.StreamingData.StReadPtr * 2048, SectorsToCopy * 2048);
ptr += SectorsToCopy * 2048;
cdvdman_stat.StreamingData.StReadPtr += SectorsToCopy;
if (cdvdman_stat.StreamingData.StReadPtr >= cdvdman_stat.StreamingData.StBufmax)
Expand All @@ -246,7 +246,7 @@ static int ReadSectors(int maxcount, void *buffer)
if (SectorsToCopy > maxcount - result)
SectorsToCopy = maxcount - result;
if (SectorsToCopy > 0) {
mips_memcpy(ptr, cdvdman_stat.StreamingData.StIOP_bufaddr + cdvdman_stat.StreamingData.StReadPtr * 2048, SectorsToCopy * 2048);
memcpy(ptr, cdvdman_stat.StreamingData.StIOP_bufaddr + cdvdman_stat.StreamingData.StReadPtr * 2048, SectorsToCopy * 2048);
cdvdman_stat.StreamingData.StReadPtr += SectorsToCopy;
if (cdvdman_stat.StreamingData.StReadPtr >= cdvdman_stat.StreamingData.StBufmax)
cdvdman_stat.StreamingData.StReadPtr = 0;
Expand Down

0 comments on commit 72c0cb0

Please sign in to comment.