----------------------------------------------------------------

CAEFLASH.EXE using InpOut32
Copyright (C) 2023-2024 Dr.Hell

origin: caeflash.com version 1.03 (c)1999-2000 K-Comm.
usage : caeflash [switch] <RomImageFile|FcdFile>
        caeflash <-T|-B <FileName1[,FileName2]>>
switch: -P<[mode] port(dec)>|<[mode] hwtype(dec),portadr(hex)>
            specify port address in sending flasher
            mode    = A:Normal B:PC9821 (def = A)
            port    = 0-3:CommsLink(300,310,320,330) ,4-6:ExStand(LPT1,2,3)
                      7-9:FreeWing(LPT1,2,3)         ,10-12:XLink(LPT1,2,3)
                      13-15:XLinkJP(LPT1,2,3)        (def = 2)
            hwtype  = 0:CommsLink 1:ExStand 2:FreeWing 3:XLink 4:XLinkJP
            portadr = Port Address
        -PS<[mode] port(dec)>|<[mode] hwtype(dec),portadr(hex)>
            specify port address in sending rom image
            (def = specified value with -P)
        -XT
            FLASHER is sent by using XT protocol.
        -B <FileName1[,FileName2]>
            Create backup file.
        -T
            Only writing test.
func. : Witing ROM image to EEP-ROM of PS-PAR(G.S.),PS-XT(XPlorer)

----------------------------------------------------------------

XLBAU.EXE (X-Link Backup & Update) using InpOut32
Copyright (C) 2023-2024 Dr.Hell

func. : Backup/Update PS-PAR(G.S.) using PS-XT(XPlorer)+X-Link

<BACKUP>

(1) Connect PC (parallel port) and XT connected to PS1.
(2) Power off PS1.
(3) Start XLBAU.EXE.
(4) Power on PS1 and send flasher to PS1.
(5) Replace XT and PAR with power on.
(6) Press L1+R1+R2 to let flasher backup PAR. (read EEP-ROM and write RAM(PS1))
(7) Replace PAR and XT with power on.
(8) Receive RAM(PS1) where EEP-ROM image exists and save file.

<UPDATE>

(1) Connect PC (parallel port) and XT connected to PS1.
(2) Power off PS1.
(3) Start XLBAU.EXE.
(4) Power on PS1 and send flasher to PS1.
(5) Send EEP-ROM image file to RAM(PS1).
(6) Replace XT and PAR with power on.
(7) Press L1+R1+L2 to let flasher update PAR. (read RAM(PS1) and write EEP-ROM)

<CONTROL>

1111-SB-1F060030 00000003
|||| |~ |~~~~~~~ |~~~~~~~
|||| |  |        +----------- data for command
|||| |  +-------------------- address for command
|||| +----------------------- command (LBU,LHU,LW,SB,SH,SW)
|||+------------------------- 0 = skip, 1 = write 1F060000-1F07FFFF <= 800E0000-800FFFFF
||+-------------------------- 0 = skip, 1 = write 1F040000-1F05FFFF <= 800C0000-800DFFFF
|+--------------------------- 0 = skip, 1 = write 1F020000-1F03FFFF <= 800A0000-800BFFFF
+---------------------------- 0 = skip, 1 = write 1F000000-1F01FFFF <= 80080000-8009FFFF

push left/right = move cursor
push up/down = incease/decrease value
push circle = execute command
push square = toggle PAL/NTSC
push L1+R1+R2 = backup = read 1F000000-1F07FFFF and write 80080000-800FFFFF
push L1+R1+L2 = update = read 80080000-800FFFFF and write 1F000000-1F07FFFF

----------------------------------------------------------------

XLBAU.EXE using InpOut32
Copyright (C) 2023-2024 Dr.Hell

usage : xlbau <portadr> <protocol> <load> <filename>
        xlbau D010 C S BACKUP.ROM

        portadr = parallel port address for X-Link
            ex. 378, 3BC, D010

        protocol = initial protocol for sending flasher
            C: Caetla
            X: XT(XPlorer)

        load = load/save EEP-ROM image
            L: load
            S: save

        filename = name of EEP-ROM image file

func. : Backup/Update PS-PAR(G.S.) using PS-XT(XPlorer)+X-Link

----------------------------------------------------------------

XLLOAD.EXE using InpOut32
Copyright (C) 2023-2024 Dr.Hell

usage : xlload <portadr> <addr> <filename>
        xlload D010 80080000 EEPROM.IMG

        portadr = parallel port address for X-Link
            ex. 378, 3BC, D010

        addr = address of target

        filename = name of target file

func. : Upload data using flasher(XLBAU)+PS-XT(XPlorer)+X-Link

----------------------------------------------------------------

XLSAVE.EXE using InpOut32
Copyright (C) 2023-2024 Dr.Hell

usage : xlsave <portadr> <addr> <size> <filename>
        xlsave D010 BFC00000 80000 OSROM.IMG

        portadr = parallel port address for X-Link
            ex. 378, 3BC, D010

        addr = address of target

        size = size of target

        filename = name of target file

func. : Download data using flasher(XLBAU)+PS-XT(XPlorer)+X-Link

----------------------------------------------------------------

tbV[ʂ̑@

<CONTROL>

1111-SB-1F060030 00000003
|||| |~ |~~~~~~~ |~~~~~~~
|||| |  |        +----------- data for command
|||| |  +-------------------- address for command
|||| +----------------------- command (LBU,LHU,LW,SB,SH,SW)
|||+------------------------- 0 = skip, 1 = write 1F060000-1F07FFFF <= 800E0000-800FFFFF
||+-------------------------- 0 = skip, 1 = write 1F040000-1F05FFFF <= 800C0000-800DFFFF
|+--------------------------- 0 = skip, 1 = write 1F020000-1F03FFFF <= 800A0000-800BFFFF
+---------------------------- 0 = skip, 1 = write 1F000000-1F01FFFF <= 80080000-8009FFFF

E{^ = J[\̈ړ

㉺{^ = l̑

{^ = PAL/NTSC؂ւ

Z{^ = R}h̎s

	Ⴆ

	1111-SB-1F060030 00000003

	ƕ\ĂƂɉƁAAhX 1F060030 ɃoCg(8rbg) 03 

	1111-LHU-1F060030 00000003

	ƕ\ĂƂɉƁAAhX 1F060030 n[t[h(16rbg)œǂݍށB00000003 ̂Ƃ́ǍʂɕςB


{^ = |[g̊Ď~^ĊJ

	wʒ[q̃foCX𔲂Ƃ́AŊĎ~ĂłȂƁAt[Y̋ꂪ̂ŗv

L1+R1+R2

	PIÖ̗ł 1F000000-1F07FFFF ǂݍ
	RAM̗̈ł 80080000-800FFFFF ɕۑ

L1+R1+L2

	t 80080000-800FFFFF ̓e 1F000000-1F07FFFF ɏ

܂

<obNAbv>
X-TERMINATORgAXLBAU.EXE ɂătbV[PS1ɑ荞
{^Ń|[gĎ~
wʃfoCXPAR ɐ؂ւ
L1+R1+R2  PIOC[W RAM ɃobNAbv
wʃfoCXX-TERMINATOR ɐ؂ւ
{^Ń|[gĎĊJ
XSAVE.EXE(PIOC[W)RAM ̈ PC ɓ]

<Abvf[g>
X-TERMINATORgAXLBAU.EXE ɂătbV[PS1ɑ荞
XLOAD.EXE PIOC[W RAM ̈ɓ]
{^Ń|[gĎ~
wʃfoCXPAR ɐ؂ւ
L1+R1+L2(PIOC[W[hꂽ)RAM ̈PIOɏ

<BIOS̃obNAbv>
X-TERMINATORgAXLBAU.EXE ɂătbV[PS1ɑ荞
XSAVE.EXEŃAhX BFC00000  80000 oCgPCɓ]

----------------------------------------------------------------

PIÖ̗ 1F000000 - 1F7FFFFF łA
̗̈SĂLȂ킯ł͂܂B
ڑfoCXɂĈقȂ܂B

[̕\ 1111- ́APIÖ̗4Ƃ
ǂ̈̕XLbv邩\Ă܂B

Ԃ̖ʂƂȂ̂ŁAȂ΂̂܂܂ŗǂłB
