71 lines
3.3 KiB
Plaintext
71 lines
3.3 KiB
Plaintext
This is a simple memory viewer for the PlayStation.
|
|
It shows you what is contained at the desired memory addresses in a way similar to that of hex editors.
|
|
|
|
Obviously it is not as straigthforward to use as similar programs for general purpose computers because the PlayStation lacks a keyboard.
|
|
Also, *remember* that reading certain memory areas will crash the PlayStation hardware, and if that happens the only thing you can do is to reset the console.
|
|
See "Surefire Areas" below for areas which surely won't crash your hardware.
|
|
|
|
At start, the memory viewer will begin viewing memory at 0x80000000 (start of RAM),
|
|
the resolution will be 640x240 (low-res) and the Go-Address will be 0x80000000.
|
|
|
|
Terms:
|
|
Go-Address The address that will be used for the
|
|
"jump-to address" operation
|
|
|
|
Control:
|
|
UP Decrease current address by 0x10
|
|
DOWN Increase current address by 0x10
|
|
LEFT Decrease current address by 0x100
|
|
RIGHT Increase current address by 0x100
|
|
|
|
L1 Move to previous location in Go-Address
|
|
R1 Move to next location in Go-Address
|
|
L2 Move to first location in Go-Address
|
|
CROSS Increase nibble at current Go-Address location
|
|
CIRCLE Decrease nibble at current Go-Address location
|
|
|
|
START Jump to Go-Address,
|
|
i.e. make the Go-Address the current address
|
|
|
|
SELECT Switch between hi-res and low-res mode
|
|
Hi-res mode: 640x480
|
|
Low-res mode: 640x240 (default)
|
|
|
|
Surefire areas:
|
|
0x80000000-0x801fffff PlayStation RAM (2 megabytes)
|
|
0xbfc00000-0xbfc7ffff PlayStation BIOS ROM (512 kilobytes)
|
|
|
|
Example of setting a Go-Address and jumping:
|
|
|
|
Imagine that the current go-address is 0x80000000 and we want to jump to 0xC001D00D.
|
|
NOTE: A nibble is 4-bits long, and each digit in a hexadecimal number is a nibble.
|
|
|
|
- Move to the first location in Go-Address -> L2
|
|
- Increase the nibble at current Go-Address location until it is 0xC
|
|
-> as its current value is 0x8, due to the current go-address being 0x80000000,
|
|
press CROSS 4 times
|
|
>> after this operation, the current address is 0xC0000000
|
|
- Move to the next location in Go-Address -> R1
|
|
- The nibble at this location is already 0x0, so move to the next location -> R1
|
|
>> after this operation, the current address is 0xC0000000
|
|
- The nibble at this location is already 0x0, so move to the next location -> R1
|
|
>> after this operation, the current address is 0xC0000000
|
|
- Increase the nibble at current Go-Address location until it is 0x1
|
|
-> as its current value is 0x0, press CROSS once
|
|
>> after this operation, the current address will be 0xC0010000
|
|
- Move to the next location in Go-Address -> R1
|
|
- Increase the nibble at current Go-Address location until it is 0xD
|
|
-> as its current value is 0x0, press CROSS 13 times
|
|
>> after this operation, the current address will be 0xC001D000
|
|
- Move to the next location in Go-Address -> R1
|
|
- The nibble at this location is already 0x0, so move to the next location -> R1
|
|
>> after this operation, the current address is 0xC001D000
|
|
- The nibble at this location is already 0x0, so move to the next location -> R1
|
|
>> after this operation, the current address is 0xC001D000
|
|
- Increase the nibble at current Go-Address location until it is 0xD
|
|
-> as its current value is 0x0, press CROSS 13 times
|
|
>> after this operation, the current address will be 0xC001D00D
|
|
- Jump to Go-Address -> START
|
|
>> The current address is now 0xC001D00D
|
|
|