why ? because i'd like to have a MIPS board to toy with, directly in assembly and C, without having to fight with the magic of what SONY has put inside her Mask Rom.
I'd like to have only the SIO support and nothing else except the PAD.
I have desoldered the PSOne bios and wire soldered all the bios pinout to a DIP socket in where to put a an Eprom Emulator, which is an equipment i can use to run my code.
The question is what do you suggest to put into this bareboard piece of firmware in order to initialize the hardware in a so called "early bootstrap" ?
This topic is useful for SIO (C code inside)
This site is providing useful toolchain and BSP code (C code inside)
replacing the bios with a custom piece of bareboard firmware
replacing the bios with a custom piece of bareboard firmware
Last edited by legacy on September 6th, 2013, 1:04 am, edited 4 times in total.
About the PAD ... it may be it is similar to SPI, it is not clear to me how it works, but it may be it could be used to attach an SPI-ethernet board to be used with UDP/IP in order to have a faster upload/download.
This topic is about CPU-SIO-PAD
This topic is about CPU-SIO-PAD
i could look for the Yamon (1) source code in order to write an extremely easy and essential earlyboot ? what do you think ?
(1) it is the firmware used in Atlas and Malta boards, developed by MIPS inc
I've got an Atlas board, it is MIPS32-r2, while PSX is MIPS-R3K ...
(1) it is the firmware used in Atlas and Malta boards, developed by MIPS inc
I've got an Atlas board, it is MIPS32-r2, while PSX is MIPS-R3K ...
OK, today i desoldered an other playstation bios, i am pretty ready for the eprom emulator
could someone suggest me a bit of early boot assembler ? just the first things the R3000 should do in order to be pretty initialized.
could someone suggest me a bit of early boot assembler ? just the first things the R3000 should do in order to be pretty initialized.
-
Administrator Verified
- Admin / PSXDEV
- Posts: 2691
- Joined: Dec 31, 2012
- I am a: Shadow
- PlayStation Model: H2000/5502
Development Console: SCPH-5502 with 8MB RAM, MM3 Modchip, PAL 60 Colour Modification (for NTSC), PSIO Switch Board, DB-9 breakout headers for both RGB and Serial output and an Xplorer with CAETLA 0.34.
PlayStation Development PC: Windows 98 SE, Pentium 3 at 400MHz, 128MB SDRAM, DTL-H2000, DTL-H2010, DTL-H201A, DTL-S2020 (with 4GB SCSI-2 HDD), 21" Sony G420, CD-R burner, 3.25" and 5.25" Floppy Diskette Drives, ZIP 100 Diskette Drive and an IBM Model M keyboard.
PlayStation Development PC: Windows 98 SE, Pentium 3 at 400MHz, 128MB SDRAM, DTL-H2000, DTL-H2010, DTL-H201A, DTL-S2020 (with 4GB SCSI-2 HDD), 21" Sony G420, CD-R burner, 3.25" and 5.25" Floppy Diskette Drives, ZIP 100 Diskette Drive and an IBM Model M keyboard.
Thanks, i am also studying yaboot, pretty sources for R3000, too
Well, about Sony R3000, it is little endian, is it possible to set it as big endian ? I mean, really possible ? Never tested ? Just because if it is possible i can use the same toolchain i am using for Atlas board (MIPS32-rev2, configured as bigendian)Everything You Have Always Wanted to Know about the Playstation
But Were Afraid to Ask.
[...]
The R3000A is configured for litle-endian byte order and defines a word as 32-bits, a half-word, as 16-bits, and a byte as 8-bits.
The Status register contains all the major status bits ...
status.RE Reverse Endianness. The R3000A allows the system to determine the byte ordering convention for the Kernel mode, and the default setting for user mode, at reset time. If this bit is cleared, the endianness
defined at reset is used for the current user task. If this bit is set, then the user task will operate with the opposite byte ordering convention from that determined at reset. This bit has no effect on kernel mode.
i think it is not correct, from what i read in the handbook, if you set the RE you change the whole Endianness, in both kernel and userland.This bit has no effect on kernel mode.
-
TriMesh Verified
- PSX Aptitude
- Posts: 230
- Joined: Dec 20, 2013
- PlayStation Model: DTL-H1202
- Location: Hong Kong
I don't know how the PSX handles it, but on the embedded MIPS CPUs I've used in the past, the RE bit only applies to user mode.legacy wrote:i think it is not correct, from what i read in the handbook, if you set the RE you change the whole Endianness, in both kernel and userland.
If you wanted to change the default endianness of the system, you had to move a jumper on the evaluation board and reflash the boot PROM. The endian select was one of the CPU mode bits, which were (on that specific CPU) programmed by driving certain high-order data bus bits either high or low while reset was active.
I don't think there is anything similar on the PSX CPU.
Who is online
Users browsing this forum: No registered users and 3 guests