[DOWNLOAD] PSXSERIAL

Downloadable items hosted by PSXDEV admins are within this forum.
Forum rules
Do not post any new topics here. You can reply in the existing topics, but do not create new ones. If you do they will be moved or deleted.
User avatar
Shadow
Verified
Admin / PSXDEV
Admin / PSXDEV
Posts: 2670
Joined: Dec 31, 2012
PlayStation Model: H2000/5502
Discord: Shadow^PSXDEV

[DOWNLOAD] PSXSERIAL

Post by Shadow » July 17th, 2013, 10:38 pm


[center]PSXSERIAL - Version 1.4[/center]
115200 BAUD HARDCODED AND READY TO RUN
Special thanks goes out to Jihad of HITMEN, Type 79, Shendo and Dax.
PSXSERIAL is based off of the .NET version of Jihad/HITMEN SEND.EXE with permission from Shendo.

This tool is a lite replacement to SIOCONS and works with Windows 64-bit systems.
I have designed it to feel and look more like Sony's development environment.
Use these tools with your FTDI, and don't use HITMEN's old loader (SEND.EXE) anymore.

If you don't know how to build the hardware and wire the cable, the PSXSERIAL hardware will hopefully be for sale soon in the PSXDEV.NET store. If you know how to wire it, the FTDI only requires TX, RX and GND. Nothing else. TX goes to TX, and RX goes to RX respectively (because in my case the FTDI inverts the transmit lines).

Instructions on how to use the tools and software are included within the ZIP and are also noted below.
If you need any help, wish to report a glitch, bug, problem or want to send advice to improve PSXSERIAL, please let me know by replying below with your message :mrgreen:

Return to PSXSERIAL Assembler Jumps: http://www.psxdev.net/forum/viewtopic.php?f=41&t=373

Reported Bugs in V1.0
You can only upload PS-EXE's that are up to 1.6MB in file size.
If you try to upload more that that, the PSX will simply crash with a black screen.
I should mention that while polygons are being used for the black boxes around the text, the coloured bars are not.
This will be improved in Version 1.1 as polygons will be used instead of a TIM for the background.


Reported Bugs in V1.1
FAIL. You couldn't upload anything at all with this version :shock:
I added to the compiler -O3 for the third level of optimisation, and this caused it to stop working.


Reported Bugs in V1.2
Any received data triggers the screen to go blank.
I will look into this and try to push V1.3 out.


Reported Bugs in V1.3
If you return back using '__asm__("j 0x801ECD94");', it still says "RECEIVING DATA FROM PC" on the screen instead of "STANDING BY...". No big deal or anything. It still works fine, but it can be misleading for some.
The Net Yaroze DTL-S3050 cable does not work with this version, nor any previous versions.


Reported Bugs in V1.4
If you return back using '__asm__("j 0x801ECD94");', it still says "RECEIVING DATA FROM PC" on the screen instead of "STANDING BY...". No big deal or anything. It still works fine, but it can be misleading for some.

NOTE: Ensure you overwrite any old software with the newer versions.
EG: The PlayStation CD-ROM PS-EXE of PSXSERIAL.EXE V1.1 is not compatible with the Win32 EXE of PSXSERIAL.EXE V1.0, and vice versa.

Latest:
Download PSXSERIAL V1.4

Old:
Download PSXSERIAL V1.0
Download PSXSERIAL V1.1
Download PSXSERIAL V1.2
Download PSXSERIAL V1.3

Code: Select all

==================================================
 PC PSXSERIAL.EXE Version 1.2
 PlayStation SERIAL.EXE Version 1.3
 Copyright (C) 2013-2016 PSXDEV.net
--------------------------------------------------
 Thanks: Jihad of HITMEN, Shendo, Type 79 and Dax

 http://psxdev.net/
==================================================

==================================================
Instructions:
--------------------------------------------------
Burn 'PSXSERIAL.ISO' to a CD-ROM and boot it on
your PlayStation 1 (swap trick or modchip).

Once loaded, you should see coloured bars with the
title and version number, website and a date code
followed by the text 'STANDING BY...'. The
PlayStation is now ready for communication with
your PC.

Next, place your desired PS-EXE to be uploaded in
the same directory as 'PSXSERIAL.EXE'

Now run 'PSXSERIAL.EXE' on your PC using a command
prompt window. It would be a good idea to copy and
paste a command console to this folder for easier
use during development.

Now type "PSXSERIAL.EXE MAIN.EXE COM1" to upload
the file 'MAIN.EXE' over 'COM1' to your
PlayStation 1. This example string will only work
if your PS-EXE is called 'MAIN.EXE' and your
PlayStation is connected to Communications Port 1
(COM1).
==================================================

==================================================
Notes
--------------------------------------------------
The date code swaps the order accordingly with
your PlayStation 1 region, so it is different for
others.

EG: Japan = 20130717
EG: Europe = 07172013

Future versions will check the PlayStation BIOS
for the region for more accuracy.
==================================================

==================================================
Help
--------------------------------------------------
If you need any help, or wish to report a glitch,
bug, problem or want to send advice to improve
PSXSERIAL, please contact us at
[[email protected]].
==================================================
Image
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.

Type 79
Verified
Active PSXDEV User
Active PSXDEV User
Posts: 61
Joined: Sep 18, 2012
Location: Finland

Post by Type 79 » July 30th, 2013, 12:59 am

Usefull for background?

Code: Select all

#include <sys/types.h>
#include <libetc.h>
#include <libgte.h>
#include <libgpu.h>
#include <libgs.h>

#define DISPLAY_MODE  MODE_NTSC
#define SCREEN_WIDTH	320
#define SCREEN_HEIGHT	240
#define ORDERING_TABLE_LENGTH 5
#define MAX_NO_PACKETS  3000

GsOT OT[2];
GsOT_TAG  OrderingTable[2][1<<ORDERING_TABLE_LENGTH];
PACKET GPUOutputPacket[2][(MAX_NO_PACKETS * 24)];

unsigned char currentBuffer;

GsBOXF		myBox[8];

void initSystem(void);
void display(void);
void initBoxes(void);
void drawBoxes(void);

int main()
{
    initSystem();
    initBoxes();

    while(1)
    {
        drawBoxes();
        display();
    }
}

void initBoxes(void)
{
    int i;

    myBox[0].w=SCREEN_WIDTH/8;
    myBox[0].h=SCREEN_HEIGHT;
    myBox[0].x=0;
    myBox[0].y=0;

    for(i=1; i<8; i++)
    {
        myBox[i]=myBox[0];
        myBox[i].x=i*myBox[0].w;
    }

    myBox[0].r=myBox[0].g=myBox[0].b=255;
    myBox[1].r=myBox[1].g=255; myBox[1].b=0;
    myBox[2].r=0; myBox[2].g=myBox[2].b=255;
    myBox[3].g=255; myBox[3].r=myBox[3].b=0;
    myBox[4].r=myBox[4].b=255; myBox[4].g=0;
    myBox[5].r=255; myBox[5].g=myBox[5].b=0;
    myBox[6].r=myBox[6].g=0; myBox[6].b=255;
    myBox[7].r=myBox[7].g=myBox[7].b=0;
}

void drawBoxes(void)
{
    int i;

    for(i=0; i<8; i++)
    {
        GsSortBoxFill(&myBox[i],&OT[currentBuffer],1);
    }
}

void initSystem(void)
{
    SetVideoMode(DISPLAY_MODE);
    GsInitGraph(SCREEN_WIDTH, SCREEN_HEIGHT,GsNONINTER|GsOFSGPU,0,0);
    GsDefDispBuff(0,0,0,SCREEN_HEIGHT);

    OT[0].length = ORDERING_TABLE_LENGTH;
    OT[1].length = ORDERING_TABLE_LENGTH;
    OT[0].org=OrderingTable[0];
    OT[1].org=OrderingTable[1];

    GsClearOt(0,0,&OT[0]);
    GsClearOt(0,0,&OT[1]);

    currentBuffer=GsGetActiveBuff();
    GsSetWorkBase((PACKET*)GPUOutputPacket[currentBuffer]);
}

void display(void)
{
    DrawSync(0);
    VSync(0);
    GsSwapDispBuff();
    GsSortClear(0,0,255,&OT[currentBuffer]);
    GsDrawOt(&OT[currentBuffer]);
    currentBuffer=GsGetActiveBuff();
    GsSetWorkBase((PACKET*)GPUOutputPacket[currentBuffer]);
    GsClearOt(0, 0, &OT[currentBuffer]);
}
colorboxes.psx
You do not have the required permissions to view the files attached to this post.

User avatar
Shadow
Verified
Admin / PSXDEV
Admin / PSXDEV
Posts: 2670
Joined: Dec 31, 2012
PlayStation Model: H2000/5502
Discord: Shadow^PSXDEV

Post by Shadow » July 31st, 2013, 3:57 pm

Very useful :D
I will update the code soon and make it V1.1.
Thank you :)
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.

User avatar
Shadow
Verified
Admin / PSXDEV
Admin / PSXDEV
Posts: 2670
Joined: Dec 31, 2012
PlayStation Model: H2000/5502
Discord: Shadow^PSXDEV

Post by Shadow » August 3rd, 2013, 7:44 pm

Okay. I have updated it to version 1.1.
PS-EXE size difference is 140KB (198KB for v1.0 and 58KB for v1.1).
The load address has also been changed to allow bigger PS-EXE's to be uploaded.
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.

mrhaboobi
Active PSXDEV User
Active PSXDEV User
Posts: 59
Joined: Nov 18, 2012

Post by mrhaboobi » August 5th, 2013, 12:49 pm

Just wondering why you are replacing sicons? ( well i mean the CD side of things? ). whats wrong with the old PSX boot disk? ( or different ).

Would love a GUI version of the tool, and the ability to batch script multiple files etc..

Tell me more about your new cable, im specifically interested in PSONE compatibility.

Have you considered something like this in the PSONE side

UB232R

http://www.ftdichip.com/Support/Documen ... UB232R.pdf

User avatar
Shadow
Verified
Admin / PSXDEV
Admin / PSXDEV
Posts: 2670
Joined: Dec 31, 2012
PlayStation Model: H2000/5502
Discord: Shadow^PSXDEV

Post by Shadow » August 5th, 2013, 2:11 pm

Well you can load our SERIAL.EXE (PS-EXE) into an Action Replay' EEPROM for example, and boot up into development mode a lot quicker than it is to actually wait for the disc to boot up. The currently released cracked Yaroze boot disc is also incorrectly mastered, and takes even longer to boot up because I believe that the PSX is waiting for read timeouts to occur to skip over until it can get an error correction done on a track that works.

I was planning to have a feature that would let you upload to a chosen address. Though, it is easier to just include the files needed in your PS-EXE using includes.
It is better to avoid a big PS-EXE so that you can fit more of the uploaded PS-EXE into RAM before running out.
This is why the coloured bars idea works the best and a GUI wont do well.

The PSXSERIAL adaptor is nothing more than an FTDI. You just need TX, RX and GND.
The hardware will be made for people who are not good with soldering and don't know what they need to do.
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.

danhans42
BANNED
BANNED
Posts: 330
Joined: Nov 28, 2012

Post by danhans42 » August 5th, 2013, 7:07 pm

I prefer SIOCONS myself. You dont need to reboot the console everytime you upload code. It also provides debugging facilities and scripting.

The Yaroze boot disc is easily fixed back up with the scene tools already available and boots up very very quickly, although you dont need to reboot it.

Alternatively, you can use COMBINE if you want to use the Yaroze SDK with any other tool. You just need to copy LIBPS.EXE from the Yaroze boot disc and you are good to go.

mrhaboobi
Active PSXDEV User
Active PSXDEV User
Posts: 59
Joined: Nov 18, 2012

Post by mrhaboobi » August 5th, 2013, 8:24 pm

danhans42 wrote:I prefer SIOCONS myself. You dont need to reboot the console everytime you upload code. It also provides debugging facilities and scripting.

The Yaroze boot disc is easily fixed back up with the scene tools already available and boots up very very quickly, although you dont need to reboot it.

Alternatively, you can use COMBINE if you want to use the Yaroze SDK with any other tool. You just need to copy LIBPS.EXE from the Yaroze boot disc and you are good to go.
yup I tend to agree. my version of the disk is fixed and boots instantly.. But id be keen to see this new loader progressed and ui added to allow you to select files etc ..

User avatar
Shendo
Verified
C Programming Expert
C Programming Expert
Posts: 250
Joined: Mar 21, 2012
I am a: Programmer
Motto: Never settle
PlayStation Model: SCPH-7502
Discord: ShendoXT
Location: Croatia, EU

Post by Shendo » August 5th, 2013, 8:33 pm

I unfortunately never got SIOCONS working properly because it needs handshaking lines also (in addition to tx/rx).

However, because of LIBPS.EXE taking space in memory your EXEs cannot be larger then 500 KB,
with PSXSERIAL limit is about 1.8 MB.

You don't have to reset the console either, you can just jump back to the loader via __asm__("j 0x801EA678");
There is also benefit of using it on x64 bit Windows, now that we got a new build of send.exe :D
Dev console: SCPH-7502, FreePSXBoot, CH340 serial cable.

danhans42
BANNED
BANNED
Posts: 330
Joined: Nov 28, 2012

Post by danhans42 » August 5th, 2013, 8:53 pm

Yeah, the x64 limitation is a bit of a bind, I have to run the compiler and SIOCONS under DOSBOX. There is source code available for SIOCONS, a port for newer builds of linux and windows would be very very handy.

Is the source for the playstation side of HITSERIAL available?

Dan

User avatar
Shadow
Verified
Admin / PSXDEV
Admin / PSXDEV
Posts: 2670
Joined: Dec 31, 2012
PlayStation Model: H2000/5502
Discord: Shadow^PSXDEV

Post by Shadow » August 5th, 2013, 9:15 pm

I have got the source to HITSERIAL. Jihad said I could release it with his permission :)
I will do it soon and link it here (and send you a PM Dan). Shendo's version is a lot more simplistic though to use.
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.

danhans42
BANNED
BANNED
Posts: 330
Joined: Nov 28, 2012

Post by danhans42 » August 5th, 2013, 9:20 pm

Great stuff,

Simple functions such as printf redirection is th eonly thing that really keeps me using siocons.

User avatar
Shadow
Verified
Admin / PSXDEV
Admin / PSXDEV
Posts: 2670
Joined: Dec 31, 2012
PlayStation Model: H2000/5502
Discord: Shadow^PSXDEV

Post by Shadow » August 5th, 2013, 10:33 pm

The printf command works once you have AddSIO() enabled.
You just need TX, RX and GND connected to your PC and a terminal running to see your debugging text.
No need for SIOCONS to do that :)
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.

danhans42
BANNED
BANNED
Posts: 330
Joined: Nov 28, 2012

Post by danhans42 » August 5th, 2013, 10:55 pm

Cool Ill give it a try, I use printf, getchar etc with hardware experimenting as it makes life easier.

mrhaboobi
Active PSXDEV User
Active PSXDEV User
Posts: 59
Joined: Nov 18, 2012

Post by mrhaboobi » August 6th, 2013, 7:42 am

danhans42 wrote:Cool Ill give it a try, I use printf, getchar etc with hardware experimenting as it makes life easier.
Danhans, any idea of this would have worked for your mod?

http://www.ftdichip.com/Support/Documen ... UB232R.pdf


Also Shadow what would be great is some tutorials on getting different configurations of envirnoments set up. either using your tool, or Hitserial or sicons etc.

Im a little confused as to why CTS and RTS are not needed? i thought they were required..

User avatar
Shadow
Verified
Admin / PSXDEV
Admin / PSXDEV
Posts: 2670
Joined: Dec 31, 2012
PlayStation Model: H2000/5502
Discord: Shadow^PSXDEV

Post by Shadow » August 6th, 2013, 5:17 pm

We don't need CTS and RTS because we're not handshaking. Just transmitting the data and receiving the data 'as it is', so there is still room for data corruption to occur.
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.

danhans42
BANNED
BANNED
Posts: 330
Joined: Nov 28, 2012

Post by danhans42 » August 6th, 2013, 7:39 pm

mrhaboobi wrote:
danhans42 wrote:Cool Ill give it a try, I use printf, getchar etc with hardware experimenting as it makes life easier.
Danhans, any idea of this would have worked for your mod?

http://www.ftdichip.com/Support/Documen ... UB232R.pdf


Also Shadow what would be great is some tutorials on getting different configurations of envirnoments set up. either using your tool, or Hitserial or sicons etc.

Im a little confused as to why CTS and RTS are not needed? i thought they were required..
Hi, no that one wont work.

To use SIOCONS you need a USB module that provides 3.3v inputs/outputs but it needs to have CTS, RTS, DTR and DSR. That module is missing the DSR and DTR pins and is 5v

mrhaboobi
Active PSXDEV User
Active PSXDEV User
Posts: 59
Joined: Nov 18, 2012

Post by mrhaboobi » August 7th, 2013, 1:29 pm

So whats funny is dans says we need CTS and RTS but shadow you said we dont.. is that just because of sicons?

User avatar
Shadow
Verified
Admin / PSXDEV
Admin / PSXDEV
Posts: 2670
Joined: Dec 31, 2012
PlayStation Model: H2000/5502
Discord: Shadow^PSXDEV

Post by Shadow » August 7th, 2013, 5:18 pm

You just need to wire TX, RX and GND. That's all you need for HITMENS SEND.EXE, SHENDOS SEND.EXE and PSXDEVS PSXSERIAL.EXE.

For SIOCONS, you need TX, RX, CTS, RTS, DTR, DSR and GND. Handshaking is performed with SIOCONS, and it is a pain to get working correctly on modern machines. I did get it working in the end with two MAX232's and inverter based off of Robins serial cable, but it wasn't practical. That's why we made it just use TX, RX and GND, while Shendo reverse engineered the protocol to replicate it. Jihad then gave me the source code for their SEND.EXE which I have released here on the forums using his permission.
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.

mrhaboobi
Active PSXDEV User
Active PSXDEV User
Posts: 59
Joined: Nov 18, 2012

Post by mrhaboobi » August 7th, 2013, 6:30 pm

I havefound some other options for boards

http://www.ebay.com.au/itm/FT232-USB-UA ... 3a7c2e66f1

http://www.ebay.com.au/itm/FT232RL-USB- ... 19df72e557

http://www.ebay.com.au/itm/USB-RS232-TT ... 2a27d509df

I prefer the mini usb, so will look into getting one of these, they all seem to expose all ports.

Could you tell me a bit more about the handshaking issue? Dans used a 74hc244 to filter the crap, would this be needed with the above modules aswell. I was keen on sicons as its what im used to with an older set up. The rewritten sends might be good enough, are they able to be used with the debugger etc that if one offer with sicons, sicons has a lot of different options which would be good to see emulated with a newer system that uses TF, RX and GND only..

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest