MCPcopy Create free account
hub / github.com/PCSX2/pcsx2 / DEV9read16

Function DEV9read16

pcsx2/DEV9/DEV9.cpp:897–936  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

895}
896
897u16 DEV9read16(u32 addr)
898{
899 if (!EmuConfig.DEV9.EthEnable && !EmuConfig.DEV9.HddEnable)
900 return 0;
901
902 if (addr >= ATA_DEV9_HDD_BASE && addr < ATA_DEV9_HDD_END)
903 {
904 return dev9.ata->Read(addr, 16);
905 }
906 // Note, ATA regs within range of addresses used by Speed
907 if (addr >= SPD_REGBASE && addr < SMAP_REGBASE)
908 {
909 // speed
910 return SpeedRead(addr, 16);
911 }
912 if (addr >= SMAP_REGBASE && addr < FLASH_REGBASE)
913 {
914 // smap
915 return smap_read16(addr);
916 }
917 if ((addr >= FLASH_REGBASE) && (addr < (FLASH_REGBASE + FLASH_REGSIZE)))
918 {
919 return static_cast<u16>(FLASHread32(addr, 2));
920 }
921
922 u16 hard = 0;
923 switch (addr)
924 {
925 case DEV9_R_REV:
926 //hard = 0x0030; // expansion bay
927 //DevCon.WriteLn("DEV9: DEV9_R_REV 16bit read %x", dev9.irqmask);
928 hard = 0x0032;
929 return hard;
930
931 default:
932 hard = dev9Ru16(addr);
933 Console.Error("DEV9: Unknown 16bit read at address %lx value %x", addr, hard);
934 return hard;
935 }
936}
937
938u32 DEV9read32(u32 addr)
939{

Callers 3

iopMemRead16Function · 0.85
_ext_memRead16Function · 0.85
_HwRead_16or32_Page1Function · 0.85

Calls 5

SpeedReadFunction · 0.85
smap_read16Function · 0.85
FLASHread32Function · 0.85
ReadMethod · 0.45
ErrorMethod · 0.45

Tested by

no test coverage detected