@database MCControl.guide
@master MCControl.guide
@$VER: 1.52 (21.10.00)
@author "Guido Mersmann"
@(c) "Guido Mersmann"
@index Index
@smartwrap

@macro MS "@{par}@{jcenter}@{FG SHINE}$1@{par}@{JLeft}@{FG TEXT}"
@macro MH "@{par}@{jcenter}@{FG HIGHLIGHT}$1@{par}@{JLeft}@{FG TEXT}"
@macro MC "@{par}@{jcenter}@{FG SHINE}$1@{par}@{JLeft}@{FG TEXT}"

@node "Main" "MCControl"
@{JCenter}
@{code}
@{FG HIGHLIGHT}MCControl  V1.52

(C) Guido Mersmann in 1997-2000@{FG TEXT}

MCControl IS A MAILWARE PRODUCT

READ THE DISTRIBUTION SECTION FOR INFORMATION ON DISTRIBUTION

@{FG SHINE}Contents
----------@{FG TEXT}
@{"           Introduction           " link "Introduction"}
@{"        System Requirements       " link "SystemRequirements"}
@{"           Feature List           " link "FeatureList"}
@{"           Distribution           " link "Distribution"}
@{"          How To Install          " link "HowToInstall"}
@{"            MCControl             " link "MCControl"}
@{"            MCDatabase            " link "MCDB"}
@{"       The required Hardware      " link "Hardware"}
@{"        MemoryCard test list      " link "CardTest"}
@{"        Supported Filetypes       " link "SupportedFileTypes"}
@{"        The SGP file format       " link "SGPFile"}
@{"               FAQS               " link "FAQS"}
@{"             History              " link "History" 999}
@{"              Future              " link "Future"}
@{"             Bug List             " link "Buglist"}
@{"              Thanx               " link "Thanx"}
@{"            The Author            " link "Author"}
@{"      ****   WANTED   ****        " link "WANTED"}
@{"    My other amiga projects!      " link "OtherPrgs"}
@endnode
@node "Introduction" "Introduction"

@{MS "Introduction"}

MCControl is a tool for all PSX owners. Itīs a hard and software project to read and write your
memory cards.


So there is no need to buy new bigger memory cards. Just one card is needed to store all your save
games.


MCControl allows to import savegames from internet, so youīll get access to features and stages
youīve never been before.

@endnode
@node "Systemrequirements" "Systemrequirements"

@{MS "System requirements"}

MCControl (should work) works on all Amigas with OS 2.0 or higher.


The @{b}gtdrag.library V3.2+@{ub} is required if you want to use the drag and drop features. I
suggest to use this library, because the only other way to move save games between windows is to
save and reload. @{b}The gtdrag.library requires OS3.x+ and a 68020 or better!@{ub}


A PSX and a MemoryCard should be around, too! (-8


You need a @{"DexDrive" link "FAQSDexDrive"}, a @{"PSXPort" link "FAQSPSXPort"} or you must build a
special @{"hardware" link "Hardware"}!


   That`s all!
@endnode
@node "Featurelist" "Features"

@{MS "Features"}

  ° 100% Assembler@{par}

  ° Load and save the following files: MCD, VGS, GME, PSM, PSX, MEM@{par}

  ° Special hardware versions for @{"parallel" link "HardPara"} and @{"disk port" link "HardDisk"}.@{par}

  ° @{"DexDrive Support" link "FAQSDexDrive"}@{par}

  ° @{"PSXPort Support" link "FAQSDexDrive"}@{par}

  ° Very quick MemoryCard access! (Internal Caching)@{par}

  ° Open as much virtual MemoryCards as you need.@{par}

  ° Dragīn Drop allows to move save games very easy between virtual MemoryCards.@{par}

  ° A @{"save game converter" link "Patc"} allows to use any international save game!@{par}

  ° A @{"save game manipulator" link "Patc"} to reach stages you never saw before!@{par}

  ° XPK support@{par}

  ° Locale support@{par}

@endnode
@node "Distribution" "Distribution"

@{MS "Distribution"}

This program should be published on every public medium, as long as all files in the archive are
unchanged. If this medium is a CD I expect a free copy. (AminetCDs excluded)


@{b}Blittersoft is allowed to sell this archive within their @{"PSXPort" link "FAQSPSXPort"}
packet!@{ub}


@{b}MCControl is Mailware.@{ub}


I expect from everybody, who uses MCControl regularly, to send me an email or postcard. I think this
does not hurt anybody, and I will have more fun to integrate new features. In addition to that itīs
possible to insert your EMail address into my MCControl mailing list. So youīll get access to pre
releases and additional information about MCControl.


@{b}I am not liable for injures or data loss caused by MCControl or the
@{"hardware" link "hardware"}. The use of MCControl is on your own responsibility !!!@{ub}

@endnode
@node "HowToInstall" "How to install MCControl"

@{MS "How to install MCControl"}

Please use the original @{b}system installer@{ub} for installation. This allows to create a memory
and hard disk optimized installation.


Well, its also possible to drag the MCControl drawer onto your hard disk, but - as I said above -
you are wasting hard disk and memory.


Thats all!


Donīt forget to build the @{"CardReader" link "Hardware"}!! (-8

@endnode
@node "History" "History"

 @{MS "History"}

This text is telling the story of MCControl like a diary.

 @{MC "V0.10"}

First beta demo version.

 @{MC "V0.11"}

Many internal changes.

 @{MC "V0.12"}

Painted some pictures to illustrate how to build the reader. (Thanks to @{b}Janne Lumikanta@{ub} for
the original pictures)

 @{MC "V0.13"}

Manual enhancement.

 @{MC "V0.14"}

Online help implemented.

 @{MC "V0.15"}

Some catalog fixes.

 @{MC "V0.16"}

Fixed some gadget positions.

 @{MC "V0.17"}

First official Aminet Version!

 @{MC "V0.18"}

BUGFIX: Fixed frame calculation!@{par}
BUGFIX: Shit! The frame caching wasnīt working correct! -> No read/write on some frames at the end
of the card!@{par}
FEATURE: Added parallel port allocation.

 @{MC "V0.19"}

FEATURE: Dragīn Drop implemented! Now it is possible to copy single game savings.@{par}
CHANGED: The window title is now more useful.@{par}
New @{"MemoryCard test" link "Cardtest"} Chapter included.@{par}
FEATURE: New file Support: @{"#?.PSX" link "SupportedFileTypes"}

 @{MC "V0.20"}

BUGFIX: Forgot to load Card Data before saving to disk!@{par}
CHANGED: The process window now opens only if needed!@{par}
CHANGED: Menu layout!@{par}
BUGFIX: Many small internal fixes!@{par}
BUGFIX: Extensions .vgs and .gme are now correct!

 @{MC "V0.21"}

BUGFIX: fixed memory loss!

 @{MC "V0.22 - 0.98"}

Many (many many) internal changes. Almost every card handle routine changed, but it was worth. Now
all possible errors should be captured and most of the routines are likeable.

 @{MC "V0.99"}

FEATURE: @{"Delete" link "MenuMultGaDe"} and @{"UnDelete" link "MenuMultGaUD"} implemented.

 @{MC "V1.00"}

First true Aminet Version

 @{MC "V1.01"}

FEATURE: XPK support for card files!

 @{MC "V1.02"}

FEATURE: XPK support for PSX files!

 @{MC "V1.03"}

BUGFIX: Sometimes the wrong directory block was updated when writing to card.

 @{MC "V1.04"}

FEATURE: Added new (cool) settings window! GadTools only! So why using MUI or an other GUI library!

 @{MC "V1.05"}

Many catalog changes!

 @{MC "V1.06"}

BUGFIX: Card select doesn`t work when using @{"download card" link "MultDoCa"}

 @{MC "V1.07"}

FEATURE: Shell support! Now it is possible to read and write a card by using Shell. (Requested by
Alessandro Zummo)

 @{MC "V1.08"}

Some documentation fixes.

 @{MC "V1.09"}

Some catalog changes

 @{MC "V1.10"}

Offical Aminet Version

 @{MC "V1.11"}

CHANGED: Load card is now more logical and easier to use (for me giggle giggle (-8 )

 @{MC "V1.12"}

CHANGED: No longer XPK compression when exporting files.@{par}
BUGFIX: Fixed window resizing bug that caused program crashes. (reported by Timo Hegemann)@{par}
CHANGED: Replaced the old directory routine by a new better one. No the directory should be less
confusing.@{par}
FEATURE: TV Mode added!

 @{MC "V1.13"}

CHANGED: Extension handling.@{par}
BUGFIX: #?.PSX loader fixed.@{par}
BUGFIX: Delete file marked the wrong block as modified.

 @{MC "V1.14"}

FEATURE: Save game converter!@{par}
FEATURE: About window added!

 @{MC "V1.15"}

BUGFIX: Fixed MungWall Hit!@{par}
CHANGED: Read/Write frame routines are now maximum save! There shouldnīt be any damaged card memory
areas when timing isnīt correct.

 @{MC "V1.16"}

CHANGED: Menu dis/enable added.@{par}
BUGFIX: (SGP) Move command is now able to access the last 7 blocks of a save game.@{par}
BUGFIX: Fixed the schematics. (Thanks to Zeljko Vulinovic)@{par}
FEATURE: @{"quick format" link "MenuMultCaFQ"}

 @{MC "V1.17"}

CHANGED: About Requester!@{par}
BUGFIX: Removed 68000 crashes!@{par}
CHANGED: Card timing is now system independant! This is done via system speed. The new behaviour
allows to specify exact delay values for different cards.

 @{MC "V1.18"}

BUGFIX: Sony Cards are working again! (reported by Juergen Ofner)

 @{MC "V1.19"}

BUGFIX: Fixed @{"settings window" link "Sett"} size.@{par}
FEATURE: Abort button during card access!

 @{MC "V1.20"}

FEATURE: save game name => default save name (requested by Timo Hegemann)@{par}
BUGFIX: Fixed stupid @{"download card" link "MultDoCa"} bug!

 @{MC "V1.21"}

FEATURE: @{"New card configuration method" link "Sett"}.@{par}
FEATURE: Automatic card detection implemented.@{par}
FEATURE: @{"New preferences menu" link "MenuSett"}.

 @{MC "V1.22"}

BUGFIX: @{"Save Card" link "MenuSettSaCa"} is now creating a correct default file name.@{par}
FEATURE:Added some default cards, to make auto detection much easier.@{par}
FEATURE:Added some save game converter. (Thanks to Andrea Favini)@{par}
BUGFIX: Multi slot support is now 100% working. (Reported by Zeljko Vulinovic and Andrea Favini)@{par}
FEATURE: Its no longer possible to drag free entries. (Thanks to Axel Doerfler for the GTDrag
feature!)@{par}
BUGFIX: The preferences window allows to specify the maximum of 4 Slots.@{par}
FEATURE: @{"Delete all" link "MenuMultGaDA"} and @{"Undelete all" link "MenuMultGaUA"} implemented.
(Requested by Jürgen Ofner)@{par}
BUGFIX: Gadgets in a new window were sized wrong. (reported by Timo Hegemann)@{par}
BUGFIX: Double click handling in settings window is now correct. (reported by Timo Hegemann)

 @{MC "V1.23"}

BUGFIX: Fixed fout slot mode! (reported by Zeljko Vulinovic)@{par}
BUGFIX: Forgot to implement the english version of the @{"SGP file" link "SGPFile"} documentation.

 @{MC "V1.24"}

FEATURE: MultiPage support implemented.@{par}
FEATURE: New @{"card settings" link "Card"} window.

 @{MC "V1.25"}

FEATURE: Export directory (ASCII) (requested by Werner Ammann)@{par}
CHANGED: Some small optimizations.@{par}
BUGFIX: MultiPage support fixed (reported by Zeljko Vulinovic)

 @{MC "V1.26"}

FEATURE: Separate write delays to allow fast writing on slow cards.@{par}
BUGFIX: Fixed some @{"card settings" link "Card"} bugs.@{par}
BUGFIX: Fixed a problem with the @{"SUPPORT" link "PatcSupport"} command. (reported by Brice
Terzaghi)@{par}
FEATURE: Added some save game patches. (Thanks to Brice Terzaghi)@{par}
FEATURE: New franįais catalog! (Thanks to Brice Terzaghi)@{par}
FEATURE: Region/ProductID Output in directory list.@{par}
FEATURE: DEL / Backspace keys are deleting/undeleting files.@{par}
BUGFIX: Fixed the spaces in filename problem of some save games.@{par}
BUGFIX: Fixed the window busy bug when using the save game patcher. (Reported by Brice Terzaghi)@{par}
FEATURE: Complete @{"#?.mem support" link "SupportedFileTypes"}!

 @{MC "V1.27"}

BUGFIX: Edit card gadget was disabled when opening the settings window even if there was a personal
card.@{par}
BUGFIX: The auto generated file names for save games were 3 chars to long. (Dos limit)

 @{MC "V1.28"}

CHANGED: Found a new way to code a save game name. It seems to be very rare (see
Example.mcd=>Worms). Now all these games should look good, too.@{par}
CHANGED: @{"FAQ update" link "FAQSRegion"}.@{par}
FEATURE: New function allows to @{"save all save games" link "MenuMultGaAL"} at once.@{par}
BUGFIX: During saving name fragments of prior saved games were saved, too! Not a real problem, but
not very nice (PC like).

 @{MC "V1.29"}

BUGFIX: Its was not possible to save the window position of the @{"Card Settings Window" link "Card"} and the @{"Main Window" link "Mult"}! (Reported by Brice Terzaghi)

 @{MC "V1.30"}

FEATURE: New driver system for different card reader hardware. Now it is possible to create a driver
for @{b}any@{ub} hardware.@{par}
BUGFIX: Forgot to disable save all menu when there is no file on memory card!

 @{MC "V1.31"}

CHANGED: Card reader driver system.@{par}
FEATURE: The @{"card editor" link "Card"} gadgets are depending on the current driver.@{par}
BUGFIX: Fixed a directory bug that produced unusable, free blocks.@{par}
FEATURE: RamCard driver and source added for development information. The driver itself is only
useful for playing with MCControl without owning a card reader.@{par}
FEATURE: Menu and gadget disabling is now depending on driver module!

 @{MC "V1.32"}

FEATURE: Now you are able to select the GUI Font.

 @{MC "V1.33"}

BUGFIX: Fixed the settings window! MCControl was unable to store the card settings. (reported by
Zeljko Vulinovic)

 @{MC "V1.34"}

FEATURE: @{"DexDrive" link "FAQSDexDrive"} Support!!!@{par}
CHANGED: Reworked the whole internal driver control!@{par}
FEATURE: Module_DirectFrame and Module_DirectPage support! (New driver feature)@{par}
BUGFIX: After canceling the settings window the driver wasnīt canceled.@{par}
FEATURE: @{"Device selector" link "SettDevi"}!

 @{MC "V1.35"}

BUGFIX: Fixed a small frame read/write bug that caused an error when no driver module was loaded!@{par}
FEATURE: Reworked the @{"SGP Window" link "Patc"}! No cheat patches are possible!@{par}
FEATURE: Spanish translation included! (Thanks to Victor M. Gutiérrez)@{par}
BUGFIX: Fixed some MCM error messages and added the timer.device failed to open message!@{par}
BUGFIX: Fixed some error in the MCM documentation!@{par}
FEATURE: New and cheat enhanced SGP Files for Spyro, Spyro2, ApeEscape and Wild9!@{par}
FEATURE: Turbo read and write! Increases the speed of most actions by the factor 1000 depending on
the mass of changes! (-8@{par}
BUGFIX: Fixed window sizing bug of the main window!@{par}
BUGFIX: Many documentation bugs removed!

 @{MC "V1.36"}

BUGFIX: Fixed SGP command @{"checksumm" link "PatcChecksum"}!@{par}
FEATURE: New SGP command: @{"Tool" link "PatcTool"}!@{par}
FEATURE: SGP/SGT Patch for Pitfall3D included!@{par}
FEATURE: SGP Patch for Ruff&Tumble included!@{par}
FEATURE: Some new @{"SGP Strings" link "PatcGadget"} included!

 @{MC "V1.37"}

FEATURE: Installer/deinstaller script included!@{par}
BUGFIX: MCControl is now Y2K fixed! :) Just kidding! Happy new year!!!@{par}
FEATURE: New MCControl versions for OS2.1 and OS3.x!@{par}
FEATURE: Some code optimizations!@{par}
BUGFIX: Some fixes on the DexDrive.mcm & DexDriveDemo.mcm@{par}
BUGFIX: Fixed some documentation bugs within the modules.doc

 @{MC "V1.38"}

FEATURE: Added new how to @{"build picture" link "/pictures/MCR_ParallelPortEasy.ilbm/Main"} for people with
less or no electronic experience.@{par}
BUGFIX: The installer script is able to copy the pictures and the current language preselects the
catalogs and docs.@{par}
BUGFIX: Some fixes on the DexDrive.mcm & DexDriveDemo.mcm@{par}
FEATURE: MCM Drivers are now loaded on first use and not on startup. This means no more "No
compatible Hardware found" requesters when starting MCControl if no DexDrive is connected.
(Requested by me! Each time this fuc?§"#?....@{par}
FEATURE: The installer script now contains a spanisch translation. (Thanks to Victor M. Gutiérrez)@{par}
BUGFIX: The settings menu wasnīt working correct when the module setting changed during the
operation.@{par}
CHANGED: Removed the useless card type and slot selector. Even if the option is selected the gadgets
wonīt apear anymore.@{par}
FEATURE: Added MCM flag for multi slot support. Thats the reason for the updated standard driver
(nothing more).@{par}
BUGFIX: The auto generated file name for save games werenīt 100% DOS conform. (reported by Michael
Jaccoud)@{par}
BUGFIX: The unit selection contained a but that sometimes, depending on the used device caused
MCControl to use Unit 0. (reported by Danny Hamon)@{par}
CHANGED: SGP slots are now auto numbering. (suggested by Brice Terzaghi)@{par}
FEATURE: Dragging is only possible, if more than one window is open. (more logic) In addition to
that the select bar of the source window isnīt flipping anymore.@{par}
FEATURE: Added SGP files for Breath of Fire III and Syphon Filter.

 @{MC "V1.39"}

FEATURE: Multi select support for save game loading!@{par}
FEATURE: New MemoryCard @{"CleanUp" link "MenuMultCaCU"} function!@{par}
FEATURE: Added @{"CheckBox" link "PatcChec"} and @{"Integer" link "PatcInte"} SGP Gadgets!@{par}
FEATURE: Some new @{"address options" link "SGPFile"} (B,W,L,&)@{par}
FEATURE: Added SGP for Azure Dreams and MediEvil!@{par}
FEATURE: Patch window is now looking cool!@{par}
FEATURE: Added and changed some menu hotkeys!@{par}
FEATURE: SGP for Oddworld: Abe`s Exoddus included.

 @{MC "V1.40"}

BUGFIX: DirectFrame and DirectPage mode didnīt support multi slot reader!@{par}
FEATURE: Added PSXPort.mcm and MCControl.mcm.@{par}
BUGFIX: Small fix on the settings window!@{par}
BUGFIX: Old driver versions caused MCControl always to crash!@{par}
FEATURE: New error messages for MC modules implemented.@{par}
FEATURE: New DirectRaw driver mode replaces old byte mode!@{par}
FEATURE: HARDWARE CHANGE! Just a little additional bridge between POut (12) and Ack (10) on the
Amiga connector! The old version stays full compatible. This IRQ-Bridge allows to handle card as
fast as possible and minimizes the processor usage.@{par}
FEATURE: Driver info in @{"settings window" link "Sett"}@{par}
BUGFIX: The @{"CleanUp" link "MenuMultCaCU"}-function only accessed the last used slot!@{par}
BUGFIX: MCControl wasnīt able to make 1:1 copies of memory cards and nobody found this bug!
(reportet by Guido Mersmann ((-8 )@{par}
BUGFIX: Now all driver specific functions are available before the first card access!@{par}
BUGFIX: A bug within the menu disabling may caused problems in other parts of the problem.@{par}
UPDATE: Used new OnlineHelp module. Thats the reason why the docs drawer is called help. This is
more system like and the amigaguide.library takes care of finding the docs.@{par}
FEATURE: New savety requester! (Requested by Brice Terzaghi)@{par}
UPDATE: New OS3.5 Icons.

 @{MC "V1.41"}

BUGFIX: Fixed the busy pointer when using @{"save all" link "MenuMultGaAL"}.@{par}
FEATURE: PSX images will be used as @{"save game icons" link "SettIcon"}. Donīt tell me the icons
are boring! You need at 16 unused colors on your workbench to view one perfect colored icon. A 16
Bit or better screen mode is the only way to view all icons in best quality! Remember: The
playstation memorycard manager is working on a screen with 65536 colors! The color problem is one of
the reasons, why there are no icons within the listview.@{par}
FEATURE: Added option "overwrite all files" to the @{"save all" link "MenuMultGaAL"} function.@{par}
FEATURE: Default icon support: Just create "def_PSXSaveGame.info" and "def_PSXMemoryCard.info"@{par}
CHANGED: Moved some gadgets within the @{"settings window" link "Sett"}.@{par}
BUGFIX: Removed enforcer hit! (during opening settings window) (reported by Brice Terzaghi)@{par}
BUGFIX: Hello DexDrive users! Any one detected that it was impossible to select a new serial device!
(reported by Guido Mersmann (-8)

 @{MC "V1.42"}

CHANGED: Complete new and better directory creation.@{par}
FEATURE: New @{"playstation game database (MCDatabase)" link "MCDB"}.@{par}
FEATURE: New regions (DEU, FRA, ESP, SVE, ..) included! For this
@{"optional feature" link "SettDBRe"} the new MCDatabase is used.@{par}
FEATURE: The game names @{"can be replaced" link "SettDBNa"} by the names delivered by MCDatabase.@{par}
FEATURE: Now itīs @{"possible to add" link "SettLink"} region and produkt id for link blocks.@{par}
CHANGED: Rearranged the MCControl drawer. The bonus drawer contains all additional data, that isnīt
required when using MCControl!@{par}
FEATURE: New small data base program allows to modify and add data base entrys.@{par}
FEATURE: The save game patcher is using the new @{"data base" link "MCDB"}, too!@{par}
FEATURE: The name position within the directory is @{"now free" link "SettDirM"}, too!@{par}
FEATURE: Now its possible to change the number of retries on read errors.@{par}
BUGFIX:: (Shit the first for this release) Fixed some multipage setup bugs. (Big brrr to Zeljko
Vulinovic (-8 )@{par}
FEATURE: Now @{"its possible" link "SettDBSN"} to use the database names as filename!

 @{MC "V1.43"}

FEATURE: Added around 1000 (!!!) new games to the database! Now there are 1446 game within the
@{"PSX Games database" link "MCDB"}!@{par}
BUGFIX: Forgot to update the gadgets after reopen the mult windows (Reported by Zeljko Vulinovic)@{par}
FEATURE: If all games are in @{"data base" link "MCDB"} then the no space is reserved for flag
output in directory!

 @{MC "V1.44"}

CHANGED: Some manual changes!@{par}
FEATURE: Added ShakeHands 30 Block default card. (Thanks to Miljkovic Miroslav)@{par}
REMOVED: Removed the 3.6V reader documentation!

 @{MC "V1.45"}

FEATURE: New function to @{"repair" link "MenuMultCaRp"} MemoryCards!@{par}
BUGFIX: Changed some missing or wrong gadget shortcuts!@{par}
FEATURE: New @{"optional" link "SettShPG"} gadgets for page flipping!@{par}
BUGFIX: Fixed a problem with the multi card reader setup gadget.

 @{MC "V1.46"}

FEATURE: New @{"MCControlIRQBridge.mcm" link "SettDriv"} driver.

 @{MC "V1.47"}

BUGFIX: There was a bug during the icon creation, so each second pixel got lost! (reported by Brice
Terzaghi)@{par}
BUGFIX: MCControl crashed on 68000, because the internal directory structure contained data starting
with an odd adress! (reported by Timo Ronkko)@{par}
FEATURE: New portuguese catalogs! (Thanks to Raul Silva)

 @{MC "V1.48"}

CHANGED: Some manual changes!@{par}
BUGFIX: Some catalog fixes.@{par}
FEATURE: Database update. (Now there are 1468 entries)@{par}
FEATURE: New option to @{"set the file comment" link "SettFiNo"}. (Requested by Stefano Pucino)@{par}
CHANGED: Settings window! Moved some gadgets from the misc section to the hardware section. Now, it
looks much more logic.@{par}
FEATURE: The menu item @{"save card" link "MenuSettSaCa"} in the @{"settings window" link "Sett"}
will be deactivated, if required!@{par}
FEATURE: Special binary version for OS3.5!

@{MC "V1.49"}

CHANGED: Reformatted the whole manual, to look more professional. If the guide looks stupid, then
youīre using an old version of the AmigaGuide.library or an incompatible replacment tool like
PowerGuide.@{par}
BUGFIX: When saving link-blocks MCControl used the wrong name. (reported by Markus Surm)@{par}
BUGFIX: Multi slot reader with none or only one card within the personal card list, caused a gadget
positioning error within the main window! (reported be Rainer Meisel)@{par}
FEATURE: Again a little database update! (Thanks to Markus Surm)

@{MC "V1.50"}

FEATURE: New hardware type can be connected to the @{"disk port" link "FAQSDiskPort"}!
Thanks to Ivan Budjak for the nice idea! Why it wasnīt my idea in the first place? (-8@{par}
FEATURE: Added new pictures for the disk port hardware.@{par}
CHANGED: Reworked the parallel port driver and changed the names, so there is no MCControl.mcm
anymore! This was confusing. Now there is only a parallel and a disk port version with an additional slow
version for each port. I created a classic version for the parallel port to stay compatible with
hardware release 1 (no IRQ-Bridge)!@{par}
CHANGED: Renamed manual pictures!

@{MC "V1.51"}

FEATURE: New games in database.@{par}
CHANGED: Manual update.

@{MC "V1.52"}

FEATURE: New games in database.@{par}
CHANGED: Manual update.



@endnode
@node "Future" "Future"

@{MS "Future"}

 ° I donīt know. (-8 Your wishes are welcome.

@endnode
@node "Buglist" "Buglist"

@{MS "Buglist"}

 ° Currently there are no known bugs.
@endnode
@node "Thanx" "Thanx"

@{MS "Thanx"}

 ° Many many thanks to @{b}Janne Lumikanta@{ub}! He initiated the PSX MemoryCard reader project. Most
of the pictures used within this project were made by him and only adjusted by me!


 ° Thanks to @{b}Joseph Fenton@{ub} for his information about MemoryCard timing and of course for his
PSXPort!


 ° Thanks to all the guys lending me games and memory cards for testing.


 ° Thanks to @{b}Brice Terzaghi@{ub}, @{b}Victor M. Gutiérrez@{ub} and @{b}Raul Silva@{ub} for the
translations.


 ° Thanks to @{b}Timo Hegemann@{ub}! He found a lot of bugs and he often told me how to make
MCControl much better.


 ° Thanks to @{b}Zeljko Vulinovic@{ub} for extrem beta testing! (-8


 ° Many thanks to @{b}Dmitry Shishkin@{ub} for the @{"ShineR project" link "FAQSShineR"}!


 ° Many thanks to all the people spending money.

@endnode
@node "Author" "The Author"

@{MS "The Author"}

If you find bugs please report them, so that I can correct these bugs in the next version.


Any ideas and suggestions are welcome, too.
@{code}


   @{"Guido    Mersmann" link "/Pictures/Author.jpg/Main"}
   Glatzer Straße 12
   48477     Hörstel
             Germany

   INTERNET: geit\@gmx.de   <- If you see a "\\" then ignore that character!
   FIDONET : 2:2449/246.15
@endnode
@node "OtherPrgs" "Other programs!"

@{MS "Other programs!"}
@{MS "BoulderDäsh        [game/jump/boulderdaesh.lha]"}

Clone of the original Boulderdäsh for Amiga. It is the only version running faster on Amiga than the
original. It looks and behaves like the original. I was asked, where the C64 is. (-8 And all this on
a 68000 without Fastmem.

@{MS "SimpleCat          [dev/misc/simplecat.lha]"}

This tool is for programmers and user. Using this program you can change catalogs of programs with
your favourite text editor in the easiest way. These programs must include a CS file. Search for it
in the archive of the catalogs drawer.

@{MS "Afind              [util/misc/afind.lha]"}

With this program you can search for programs on your Aminet CDs in the easiest way. It is the same
than the original tool on the CD, but here you can use AminetCDs and AminetSets mixed. So you are
not forced to search for a program on the first 5 Aminet CDs, that is on AminetSet1 Disk b.

@{MS "AView              [util/misc/aview.lha]"}

AView is a great multiview enhancement/replacement! It is working like Multiview, but you are able
to specify a special viewer/player for each file type.

@{MS "Guideformat        [text/edit/guideformat.lha]"}

GuideFormat is a simple tool. It is easy to format text blocks, even if there are "links" or other
guide commands in.

@{MS "GuideCheck         [text/edit/guidecheck.lha]"}

GuideCheck is a tool, that allows to check an entire guide file and discovers all errors!

@{MS "SiedlerBoot        [game/patch/siedlerboot.lha]"}

This allows to start the Settlers direct via CD and save the scores on HD. There is no hard disk
install required. SiedlerBoot requires the "Amiga Plus Sonderheft 9" cover CDROM.

@{MS "Execute64          [misc/emu/execute64.lha]"}

Execute64 allows to transfer file direct into the C64 and to start them. This allows to play games
an use the Amiga a big file server.

@{MS "R                  [util/cli/r.lha]"}

"R" creates a GUI for each DOS Programm. This allows you to use DOS commands even if you arenīt very
good in reading templates.

@{MS "DVBControl         [comm/misc/dvbcontrol.lha]"}

DVBControl is a software project for the Nokia MediaMaster (D-Box) and DVB2000 firmware. It allows
to update firmware, edit channel settings and much more. So if you are using DVB2000 and an Amiga
DVBcontrol is your only choise!

@{MS "MCControl          [hard/hack/mccontrol.lha]"}

MCControl (MemoryCard Control) is a card reader for Playstation MemoryCards. It requires a little
selfmade hardware (~$5) and the free software!

@{MS "VBRControl         [util/sys/vbrcontrol.lha]"}

VBRControl moves the processor vector base to fastram. This is increasing system speed.

@{MS "AvailCPU           [util/sys/availcpu.lha]"}

AvailCPU is a little program that shows the CPU usage by using the PowerLED!

@{MS "TrackDisplayClock  [util/time/trackdisplaycl.lha]"}

A hardware track display is very useful, if you need it! The most time this type of hardware is only
good for lighting up the room! This will be changed when using TrackDisplayClock! TrackDisplayClock
displays the system time on your track display! Its cool, its useful and of cource the time is
always in visual range. Delete all programs using screens, windows or icons to display the time and
of course donīt forget to remove your noclick tool! TrackDisplayClock is doing all these jobs and
your system will be faster than before! (-8

@endnode
@node "Hardware" "The CardReader Specifications!"

@{MS "The CardReader Specifications!"}

@{MS "Commercal and compatible card reader:"}

@{jcenter}@{"DexDrive" link "FAQSDexDrive"}


@{jcenter}@{"PSXPort" link "FAQSPSXPort"}

@{MS "Selfmade reader:"}

@{jcenter}@{"ShineR" link "FAQSShineR"}


@{jcenter}@{"Disk port card reader" link "HardDisk"} (my favorite)


@{jcenter}@{"Parallel port card reader" link "HardPara"}

@endnode
@node "HardDisk" "The CardReader Specifications - Disk Port Reader"
@toc "Hardware"

@{MS "The CardReader Specifications - Disk Port Reader"}

Before you start to create your own hardware take a @{"look" link "/Pictures/MCR_Photo1.ilbm/Main"} on
@{b}Timo Hegemanns@{ub} version. Itīs pretty good. @{"Here" link "/Pictures/MCR_Photo2.ilbm/Main"} another photo without card.
My version is build direct into a normal SUB-D plug.@{par}

First there is the MemoryCard connector! You need an old slot (old PC main board we do not destroy
any amiga boards!!) or an 5 1/4" floppy disk connector. This slot must be modified. This is shown by a
little @{"picture" link "/Pictures/BuildConnector.ilbm/Main"}. The only way to avoid sewing is to
get a damaged PSX or @{"MultiTap" link "FAQSMultiTap"} and extract the slots there.@{par}

If this is the first time you build a hardware, or you simply donīt understand what to do, then take
a look on his @{"picture" link "/pictures/MCR_DiskPortEasy.ilbm/Main"}! Just place your parts on your
table and connect them like shown!@{par}

This picture shows how to build the @{"disk port version" link "/Pictures/MCR_DiskPort.ilbm/Main"} and
here you can see how to build a @{"multi slot version!" link "/Pictures/MCR_DiskPortMulti.ilbm/Main"}.@{par}

The pictures alone should allow you to build the interface. If you are not sure just read on for
further @{"information" link "HardAdditional"}.
@endnode
@node "HardPara" "The CardReader Specifications - Parallel Port Reader"
@toc "Hardware"

@{MS "The CardReader Specifications - Parallel Port Reader"}

Before you start to create your own hardware take a @{"look" link "/Pictures/MCR_Photo1.ilbm/Main"} on
@{b}Timo Hegemanns@{ub} version. Itīs pretty good. @{"Here" link "/Pictures/MCR_Photo2.ilbm/Main"} another photo without card.
My version is build direct into a normal SUB-D plug.@{par}

First there is the MemoryCard connector! You need an old slot (old PC main board we do not destroy
any amiga boards!!) or an 5 1/4" floppy disk connector. This slot must be modified. This is shown by a
little @{"picture" link "/Pictures/BuildConnector.ilbm/Main"}. The only way to avoid sewing is to
get a damaged PSX or @{"MultiTap" link "FAQSMultiTap"} and extract the slots there.@{par}

If this is the first time you build a hardware, or you simply donīt understand what to do, then take
a look on his @{"picture" link "/pictures/MCR_ParallelPortEasy.ilbm/Main"}! Just place your parts on your
table and connect them like shown!

@{MS "External Power Supply"}

The parallel port reader requires an @{"external power supply" link "FAQSExternalV"}, but there should at least
one arround to use for a while (DiscMan, Walkman, Mobile, Dart board, ...).@{par}

This picture shows how to build the @{"parallel port version" link "/Pictures/MCR_ParallelPort.ilbm/Main"} and
here you can see how to build a @{"multi slot version!" link "/Pictures/MCR_DiskPortMulti.ilbm/Main"}.@{par}

The pictures alone should allow you to build the interface. If you are not sure just read on for
further @{"information" link "HardAdditional"}.

@endnode
@node "HardAdditional" "The CardReader Specifications - Additional Information"
@toc "Hardware"

@{MS "The CardReader Specifications - Additional Information"}

              Memory Card Connector@{par}
         ______________________________@{par}
        |                              |@{par}
        | [#][#][#]  [#][#][#]  [#][#] |   (front view)@{par}
        |______________________________|@{par}
 pin No.   9  7  6    5  4  3    2  1@{par}


   pin  signal@{par}
   No.   name  direction  logic      function@{par}
   -----------------------------------------------------------------------@{par}
   1    DAT      in      positive   Serial Output data(open drain)@{par}
   2    CMD      out     positive   Serial Command data@{par}
   3    +7V      -       -          +7.6V CD-ROM Drive Power@{par}
   4    GND      -       -          Signal Ground@{par}
   5    +3V      -       -          +3.5V System Power@{par}
   6    SEL-     out     negative   pad/memory select@{par}
   7    CLK-     out     negative   Serial Clock@{par}
   9    ACK-     in      negative   Acknowledge(open drain)@{par}
   -----------------------------------------------------------------------@{par}

As you can see the MemoryCard needs two different voltages. I know this is not allways true, but I
checked out four 15 block cards and 3 of them need 7.6V. This voltage requires an @{"external powersupply" link "FAQSExternalV"},
so why not create a full compatible card reader!


@{b}The LM317 is a standard element. The additional characters can be ignored. You can use a LM317T
as well as a LM317Q oder LM317LZ.@{ub}


                   .-----.@{par}
                   |LM   |  1 - Adjust@{par}
   text side of    |317  |  2 - Out@{par}
   LM317           |     |  3 - In@{par}
                   `+-+-+ī@{par}
                    | | | @{par}
                   1 2 3  @{par}

      .-------.               3.6V (pin 5)   |    7.6V (pin 3)@{par}
---in-| LM317 |-+-out---      R1    R2       |    R1    R2@{par}
      `---+---ī |             270   470      |    270   1370@{par}
          |     R1            330   560      |    330   1680@{par}
      adj |     |             390   680      |    390   2000@{par}
          `-----+             470   820      |    470   2400@{par}
                |             560    1k      |    560   2800@{par}
                R2                           |@{par}
                |                            |@{par}
                |                            |@{par}
              GROUND@{par}

For more information of LM317 check www.national.com and get correct PDF-files.


@{b}@{"External powersupply" link "FAQSExternalV"} voltage should be about 9V-18V if you want to get
7.6V.@{ub}

@endnode
@node "FAQS" "Questions, Solutions and Tips!"
@{MS "Questions, Solutions and Tips!"}
@{code}
   @{b}Playstation and their equipment:@{ub}
   @{"What is a Playstation?" link "FAQSPlaystation"}
   @{"What is a MemoryCard?" link "FAQSMemoryCard"}
   @{"What is a MultiTap?" link "FAQSMultiTap"}
   @{"What is the MemoryCard capacity?" link "FAQSMemoryCardSpace"}
   @{"What is a Region or Productcode?" link "FAQSRegion"}
   @{"Where can I get save games?" link "FAQSSGWhere"}
   @{"Can I use PS2 MemoryCards with MCControl?" link "FAQSPS2MemoryCards"}

   @{b}The selfmade hardware:@{ub}
   @{"What hardware changes were made since V1.40?" link "FAQSHardUpdate"}
   @{"What are the external power supply specifications?" link "FAQSExternalV"}
   @{"What is the Disk Port Hardware?" link "FAQSDiskPort"}
   @{"Why my Diskport-Reader isnīt working?" link "FAQSDiskPortNW"}

   @{b}Other card reader supported by MCControl:@{ub}
   @{"What is a DexDrive" link "FAQSDexDrive"}
   @{"What is PSXPort?" link "FAQSPSXPort"}
   @{"What is a ShineR" link "FAQSShineR"}

   @{b}About using MCControl:@{ub}
   @{"The PSX says my card isnīt formated, but...! Why?" link "FAQSFormat"}
   @{"Why it is required to include languages into the MCdatabase?" link "FAQSDBLanguages"}

   @{b}Personal questions:@{ub}
   @{"How do you look like?" link "/Pictures/Author.jpg/MAIN"}
   @{"What PSX games do you own?" link "FAQSMyGames"}
   @{"What PSX controller do you own?" link "FAQSMyCtrl"}
   @{"What card reader do you own?" link "FAQSMyReader"}

@endnode
@node "FAQSPlaystation" "FAQ: What is a Playstation?"
@toc "FAQS"

@{MS "What is a Playstation?"}

Well, a Playstation is a game system developed by Sony!


If you donīt know this, why are you reading this manual? (-8

@endnode
@node "FAQSMemoryCard" "FAQ: What is a MemoryCard?"
@toc "FAQS"

@{MS "What is a MemoryCard?"}

A MemoryCard is a storage device for @{"Playstation" link "FAQSPlaystation"} game scores.

@endnode
@node "FAQSMultiTap" "FAQ: What is a MultiTap?"
@toc "FAQS"

@{MS "What is a MultiTap?"}

A MultiTap is a multi player adapter for @{"Playstation" link "FAQSPlaystation"}.


Each MultiTap contains 4 pad and 4 @{"MemoryCard" link "FAQSMemoryCard"} connectors. So, when using
two MultiTaps you are able to connect 8 Controller and 8 MemoryCards to one playstation.


You are also able to use MultiTap and all it features on your amiga system, by using the
@{"PSXPort" link "FAQSPSXPort"} hardware.

@endnode
@node "FAQSMemoryCardSpace" "FAQ: What is the MemoryCard capacity?"
@toc "FAQS"

@{MS "What is the MemoryCard capacity?"}

If we trust some magazins and MemoryCard manuals, then you can store 1 @{b}mega byte@{ub} on a 15
block MemoryCard.


@{b}This is wrong!@{ub}


A MemoryCard can hold 1 @{b}mega bit@{ub} or 128KB!


   1 MegaBit = 1048576 Bit


   1048576 Bit / 8 = 131072 Byte


   131072 Byte / 1024 = 128 KiloByte


One MemoryCard block contains 8KB! We have 15 blocks. The last block contains the directory of the
card and some reserved data!

@endnode
@node "FAQSRegion" "What is a Region or Productcode?"
@toc "FAQS"

@{MS "What is a Region or Productcode?"}

Well, each game is developed with special feature of the region. Every one knows that a US game
isnīt working on an european Playstation. To make this work every game becomes an unique code for
this region.


   Example:


   BESLES-00463@{par}
   ------------@{par}
   0123456789ab@{par}

   0     The "B" is constant.@{par}
   1     Region of the developer.@{par}
   2     The "S" is constant.@{par}
   3     "L" Licence@{par}
         "C" Computer Sony products only.@{par}
         So 234 on an european sony game results "Sony Computer Europe" or@{par}
         on a licenced game "Sony Licence Europe"@{par}
   4     The Game is only working on Playstations for this region.@{par}
   5     "S" Software@{par}
         "D" Demo (a PSX demo software)@{par}
         "H" Hardware (controller, memory cards, multitaps, light guns)@{par}
   6     Separator, constant, "-"@{par}
   789ab Number of the game (the licence number). Games may have differend@{par}
          numbers for different regions (4).@{par}

A geman developer for example would get BESLUS-12345 as product id for the US version of a game. The
european id of the same game may look like this BESLES-22222.


Save games may contain 8 additional chars to separate types of save games for the same game. Its
correct to save these 8 bytes are the file name.


   "BESLES-22222Records "@{par}
   "BESLES-22222Settings"@{par}

The easiest way to get those IDs is to open the @{"save game patcher" link "Patc"}! Youīll find the
ID in the @{"ProductID" link "PatcProd"} Gadget! The first 12 characters represent the complete
product id followed by 8 bytes of file name, if available.

@endnode
@node "FAQSSGWhere" "Where can I get save games?"
@toc "FAQS"

@{MS "Where can I get save games?"}

The best games site I found on the net. If you donīt find it on GameSages then It donīt exists.
Walkthroughs, cheats, tips, tricks and save games for every system: "http://sages.ign.com/"


Then there is VideoGameStrategies. These are the guys who developed the @{".VGS" link "SupportedFileTypes"}
format: "http://vgstrategies.miningco.com/games/vgstrategies/library/save/bl_savepsx.htm"


Cheats and game faqs for all systems and nearly all games are available at:
"http://www.GameFAQS.com" ("/Console/PSX/")

@endnode
@node "FAQSPS2MemoryCards" "Can I use PS2 MemoryCards with MCControl?"
@toc "FAQS"

@{MS "Can I use PS2 MemoryCards with MCControl?"}

No, the connector is the same, but protocol and internal setup of these cards is 100% different. I
think the standard MCControl card reader will be compatible.


In the first case PS2 support requires documentation, PS2 hardware, your support and my time.


Generaly its absolut possible to create MCControl2 for the PS2!

@endnode
@node "FAQSHardUpdate" "FAQ: What hardware changes were made since V1.40?"
@toc "FAQS"

@{MS "What hardware changes were made since V1.40?"}

Well, the standard hardware changed a little with MCControl version 1.40, but itīs not required to
make the following modifications, MCControl stays full compatible even when using the old hardware.


Why you should change the hardware?


Well, the new hardware version consumes less CPU power during card access and the card reading speed
depents on the speed of the used card.


What is required to modify the old version?


Itīs just one little wire! A bridge (connection) between Pin 10 and Pin 12 on the Amiga-connector. I
called it @{b}IRQ Bridge@{ub}, because this wire creates a bridge to the IRQ connector of the Amiga
parallel port.


Thats all!

@endnode
@node "FAQSExternalV" "FAQ: What are the external power supply specifications?"
@toc "FAQS"

@{MS "What are the external power supply specifications?"}

The external power supply voltage should be about 9V-18V! The exact voltage isnīt important because
the LM317 is creating always the correct value by using the resistors.


The power supply should be able to output more than 200mA! The output of a playstation itself isnīt
more than 100mA per powerline, but the LM317 circuits are consuming some energy, too! If you are
only using 15 block cards then 100mA should be enough!


@{b}Do not use power supplies with less than 100mA! They may work, but they are producing much heat
and may burn out!@{ub}


If the power supply isnīt able to supplie enough power, it may happen, that your card isnīt working
or must be read much slower than normal. Timo Hegemann is using a normal NoName card, but when using
a 9V Battery instead of an external power supply the card turns into a very slow card!

@endnode
@node "FAQSDiskPort" "FAQ: What is the Disk Port Hardware?"
@toc "FAQS"

@{MS "What is the Disk Port Hardware?"}

The @{"disk port hardware" link "HardDisk"} is identicaly to the standard @{"parallel port version" link "HardPara"}. The
only difference is that the reader is connected to the disk port and not to the parallel port.

@{MS "The good things:"}

There is no need of an external power supply, because there is a 12V line on the disk port you can
use.


You parallel port stays free!


@{MS "The bad things:"}

The disk access will be shut down, because MCControl is using the hardware! @{b}This problem will be
fixed, soon!@{ub}


The disk port reader causes trouble with Index-line driven disk formats like PC-Disk. These disks
arenīt working, when as long the card reader is connected! Itīs possible to avoid this by
disconnecting the /WProt line (pin 14) off your disk port connector. This makes your reader 100%
disk drive compatible. The only side effect is, that you may (depending on memory card) loose the
multi page support.

@endnode
@node "FAQSDiskPortNW" "FAQ: Why my Diskport-Reader isnīt working?"
@toc "FAQS"

@{MS "Why my Diskport-Reader isnīt working?"}

Well, its not possible to make a proper diagnose from a distance, but if your reader supports the
required voltages and all lines are connected right and without cross connections, then your problem
seems to be the Konfiguration.@{par}

Each slot of your reader is handled like a disk drive. Normaly there is already one diskdrive, so
slot1 (df0:) is already in use and the first external drive is DF1: (Slot2)! On bigger Amigas the
first external Drive is DF2 (Slot3), because DF1 is locked for internal usage.@{par}

A500, A600, A1200: Your first external Drive is DF1:@{par}
A1000, A2000, A3000, A4000: Your first external Drive is DF2:@{par}

Use the following Shell/CLI commands to setup the disk port reader: x means the drive number of your
card reader. (1 for df1, 2 for df2, ...)@{par}

SetENV MCCSlotOffset x@{par}
copy env:MCCSlotOffset to ENVARC:@{par}

@endnode
@node "FAQSDexDrive" "FAQ: What is a DexDrive?"
@toc "FAQS"

@{MS "What is a DexDrive?"}

A DexDrive is a commercial version of a MemoryCard reader. You should be able to buy one in your
favorite Game Shop.


You want to see it right now? @{"Click here" link "/Pictures/DexDrive.ilbm/Main"}!


Attention: @{b}Itīs coming with a 9 pin serial plug, so you may require an adapter to connect it
with a 25 pin serial port.@{ub}


The included driver is shareware and only able to read MemoryCards! This is done, because I spend a
lot of time to debug the protocol and I was forced to buy a DexDrive. If you want a full version
send @{"me" link "Author"} 10 DM and youīll get the full working driver. I think this isnīt very
much!

@endnode
@node "FAQSPSXPort" "FAQ: What is PSXPort?"
@toc "FAQS"

@{MS "What is a PSXPort?"}

PSXPort is a hardware developed by @{b}Joseph Fenton@{ub}!


This hardware allows to use Playstation hardware on your amiga. So youīre able to play your amiga
games with a PSX Controller.


If you want to use @{"MemoryCards" link "FAQSMemoryCard"} youīll also require a
@{"MultiTap" link "FAQSMultiTap"}, because the PSXPort comes with a controller port.

@endnode
@node "FAQSShineR" "FAQ: What is the ShineR Project?"
@toc "FAQS"

@{MS "What is the ShineR Project?"}

Well, this is a hardware created by @{b}Dmitry Shishkin@{ub}. Technicaly this hardware works like a
@{"DexDrive" link "FAQSDexDrive"}, because a processor handles the communication between MemoryCard
and Amiga.


For more information take a look into the Aminet archive: @{b}hard/hack/ShineR.lha@{ub}

@endnode
@node "FAQSFormat" "FAQ: The PSX says my card isnīt formated, but...! Why?"
@toc "FAQS"

@{MS "The PSX says my card isnīt formated, but...! Why?"}

  ... MCControl is able to access the card without any problems.


Well, this is a very rare problem. The reason is, that the first frames of a MemoryCard indicates
the status. If these frames are invalid the playstation is reporting that the card is unformated.


MCControl ignores these frames and if the card is unformated then the directory contains only
invalid entries!


Fixing this problem is very easy: Use the @{"repair" link "MenuMultCaRp"} feature!

@endnode
@node "FAQSDBLanguages" "Why it is required to include languages into the MCdatabase?"
@toc "FAQS"

@{MS "Why it is required to include languages into the MCDatabase?"}

Well, this isnīt easy to explain! First lets say european games arenīt equal in each country.


In our days each game is a multimedia event, which is using sampled voices, videos and music. The
support of only one language may be enough to fill up an entire CDROM, so its required to make
different versions for all required languages.


Examples are "Heart of Darkness", "Breath of Fire III", "Tomb Raider 1-4" and the Oddworld games.
These games exist in an german only version. Same is done for the most used european languages.


Sony is handling each new languaged version as a new game and the @{"product id" link "FAQSRegion"}
is different even if the game name is the same! Each game is using it product id to recognize its
save game, so the german save game for "Heart of Darkness" isnīt working with the franįais version
and vice vesa.


Itīs not possible to find out what sub region (Well, I call it sub region) only by scanning the
@{"product id" link "FAQSRegion"}! So all these games get the region "EUR" for european!


Now back to the data base. Normaly it would be enough to specify an "EUR" or a sub region ("DEU",
"FRA", ...), but if you want find out if your game is a german only version you must start the game
and see for your self. Why not entering each language? In the most cases there less than 6 languages
available.


Maybe the languages will be used for another feature, too, so why doing the job right the first
time!

@endnode
@node "FAQSMyGames" "What PSX games do you own?"
@toc "FAQS"

@{MS "What PSX games do you own?"}

Well, here is my PSX game list. If you want to sell (gifts are also welcome) any game take a look
into my @{"want to buy list" link "wanted"}.


I added my personal vote for each game. 6 "+" are maximum and for a brilliant game. One "+" is just
a good game with a few dislikes. @{b}Itīs my personal meaning, so this may be different to your
opinion!@{ub}
@{code}

   Arcadeīs Greatest Hits - The Atari Collection 2  ++
   Azure Dreams                                     ++++++
   Blaze & Blade                                    ++++
   Breath of Fire III                               ++++++
   Bubble Bobble also Featuring Rainbow Islands     ++++
   Centipede                                        +++
   Colin MacRae Rally                               ++++
   Everybodyīs Golf                                 ++++++
   Final Fantasy VIII                               +++++
   Frogger                                          ++
   Heart of Darkness                                ++++++
   Live Wire!                                       +++
   MediEvil                                         +++
   Mighty Hits Special                              ++++
   Monkey Hero                                      ++++
   Monsterseed                                      +
   Nanotek Warrior                                  +
   Oddworld: Abe`s Exoddus                          +++++
   Oddworld: Abe`s Oddysee                          ++++
   Pitfall 3D: Byond the Jungle                     ++
   Point Blank2                                     ++++
   Populous - The Beginning                         +++
   Psybadek                                         +++
   Racing Simulation 2                              ++
   Ruff & Tumble (aka 40 Winks)                     ++++++
   S.C.A.R.S                                        ++++
   Sentient                                         +
   Sentinel Returns                                 +
   Speed Freaks                                     +++++
   Spot goes to Hollywood                           +
   Team Buddies                                     ++++++
   The Adventures of Alundra                        ++++++
   Tiger Woods 99                                   ++
   Time Crisis                                      ++
   TOCA Touring Car Championship                    +++
   Tomb Raider 3                                    ++
   Virtual Pool                                     ++
   Wild 9                                           +++
   Worms                                            ++++

@endnode
@node "FAQSMyCtrl" "What PSX Controller do you own?"
@toc "FAQS"

@{MS "What PSX Controller do you own?"}

Here is a list of my @{"Playstation" link "FAQSPlaystation"} Hardware:
@{code}

   Sony Dual Shock 1 Controller
   Gamester LMP digital Pad (no additional features)
   Naki Digital Pad (transparent blue, auto fire, slow mode)
   Naki Digital Pad (transparent brown, auto fire, slow mode)
   Just! Digital Pad (auto fire, slow mode)
   Just! Digital Pad (auto fire, slow mode)
   Namco G-Con 45 Light Gun
   JoyTech Jordan GP Racing Wheel II

@endnode
@node "FAQSMyReader" "What card reader do you own?"
@toc "FAQS"

@{MS "What card reader do you own?"}

The first reader was a standard selfmade reader. I build it direct into an Sub-D 25 plug. This
reader is used in conjunction with a small adapter to make it disk port compatible.


Then I bought a @{"DexDrive" link "FAQSDexDrive"} to make my project available for everyone, because
there is no need to build a hardware.


At last there is my PSXPort cable. Well, I donīt own a @{"MultiTap" link "FAQSMultiTap"}, so its
impossible to use a MemoryCard with it, but my selfmade Reader is compatible to the PSXPort software
and @{"BoulderDäsh" link "OtherPrgs"} works perfect with a PSX Controller! (-8

@endnode
@node "WANTED" "WANTED !!!!"

@{MS "Wanted !!!"}

I am searching the following games for my PlayStation:

   Bubble Bobble2@{par}
   Dance Dance Revolution@{par}
   Ghoul Panic@{par}
   Kula World@{par}
   Point Blank@{par}
   Rescue Shots@{par}

If you wanna sell one or more of these games, then let me know! Other offers are welcome!


Just a small warning: Under normal circumstances I only buy games for a maximum of 30DM. Just
try to sell your games in a second hand shop and youīll realize that my price is quite good. I just
setup my personal limit and in the most cases there is no way to break this limit! The most games I
@{"own" link "FAQSMyGames"} were much cheaper. Some of them were new games sold by a local game
store for a price within my limit.

@endnode
@node "CardTest" "All MemoryCard checked with MCControl"

@{MS "All MemoryCard checked with MCControl"}

This card test @{u}is not@{uu} valid for @{"DexDrive" link "FAQSDexDrive"} and the @{"Shiner Project" link "FAQSShineR"},
because these readers are using an own processor so there shouldnīt be any timing problem.


If one of your MemoryCards is not listed here, than let me know your results.
@{code}

   MemoryCard                 Blocks Status          Tested by
  -------------------------------------------------------------------------

   Atomic                        15    Ok            Andrea Favini
   Blaze                         15    Not working   Different People
   Blaze 24Mb MegaMemory        360    Ok            MegaByte
   DataFlash 120                120    Ok            Zeljko Vulinovic
   GameMedia                     15    Ok            Timo Hegemann
   Gamester                      15    Ok            Guido Mersmann
   Joytech                       15    Ok            Janne Lumikanta
   Logic3  (PS490G Grey)         15    Ok            Raul Silva
   MemoryCardPlus               120    Ok            Zeljko Vulinovic
   Naki                          15    Not working   Zeljko Vulinovic
   Shakehand                     30    Ok            Miljkovic Miroslav
   Sony Blue                     15    Ok            Timo Hegemann
   Sony Grey (Old)               15    Ok            Guido Mersmann
   TopWay 8mega                 120    Not working   Miljkovic Miroslav
   Tosa                          15    Ok            Guido Mersmann

@endnode
@node "SupportedFileTypes" "This is a list of all files that can be used with MCControl"

@{MS "This is a list of all files that can be used with MCControl"}

Well the first PSX MemoryCard Software was designed for PCs and PCs are stupid! So they created many
formats for the same shit, because there is no reason for creating a special format.

@{MS "MCD - Real MemoryCard Image"}

This is a 1:1 card read out! It is the best format for storing complete MemoryCards, because its
easy to detect and it is small.


If you own other save game types, then send me two files of each type!

@{MS "GME - Game file"}

This file contains a complete MemoryCard!


This is the most stupid card image file type! Its a MCD File using an 3904 Byte header! Most of this
Bytes are unused. Even the name is stupid, because this file may contain the storage of up to 15
games.


I was told that these additional bytes are used to contain special information about the MemoryCard
and each block. Well, I scanned around 100 files and all of them are only using the general
MemoryCard information, so there will no MCControl support for these additional information.


Even some PC tools are not able to write these files correctly! I own some files that are longer
than a standard game file. After scanning the file I found the problem. They just saved to much
data, so youīll find windows specific strings behind the real image.

@{MS "VGS - Video Game Strategies"}

This file contains a complete MemoryCard!


This format is performing a small header with informations about reading the file. Well, quite
useless! It was IMHO created by an organisation named "Video Game Strategies". Youīll find them in
internet.

@{MS "PSM"}

This file contains a complete MemoryCard!


Itīs equal to the MCD format and is used to store MP3 player skins. This is done, because the skin
files arenīt in PSX format.

@{MS "PSX - Playstation Game File"}

These files contain the savings created by one game. This may be one block, or more.


This format is great for holding only one saved game.


@{b}Attention: There are damaged (patched) files around. These files arenīt working with MCControl,
because important data is missing! If you use AmigaDos and "type Filename hex" you will see, that
these files contain a small message, where you get a working version! Donīt do this! Get a serious
source for PSX save games and do not support such "We spread damaged files to powerup our homepage"
suckers!@{ub}

@{MS "MEM - Memory File"}

This format is the most stupid save game format. It requires two (2!!) different files for holding
only one save game. Together these two files are nearly equal to the PSX file.


I think someone decided to create this format for saving programming time. I strongly suggest not to
use this file format, because it doubles the chance to loose data and it requires more disk space.

@endnode

@node "MCControl" "The Windows of MCControl"

@{MS "The Windows of MCControl"}

You can save any window position and size. Just move/resize the windows and use the
@{"settings window" link "Sett"} to save the new setup.


Keyboard: "CRTL ESC" minimizes/maximizes any windows.


Keyboard: "ESC" is closing any window by @{u}aborting@{uu} action.


Keyboard: "HELP" opens this manual! If the mouse pointer is above a gadget the documentation of this
gadget will be opened. In the other case the window specific documentation will be opened.
@{code}

   @{"The Main Window" link "Mult"}
   @{"The Preferences" link "Sett"}
   @{"The Card Preferences" link "Card"}
   @{"The About Window" link "Abou"}
   @{"The Save Game Converter" link "Patc"}


   There is also a @{"DOS Template" link "DOSTemplate"}!

@endnode

@node "Mult" "MCControl - The Main Window"
@Toc "MCControl"

@{MS "The Main Window"}

Main window isnīt correct at all, because you are able to open as much windows as you want. But if
you close all you quit MCControl.


Each window contains an independent virtual MemoryCard. This Card can be loaded, saved or even be a
readout of a real MemoryCard.


@{b}All functions (even the @{"format routines" link "MenuMultCaFQ"}) are accessing the virtual card
buffer only! The only way to @{"(over)write" link "MultUpCa"} the real card is protected by a savety
requester!@{ub}


Donīt forget to read about the @{"Menu" link "MenuMult"}!
@{code}

   @{b}Gadgets@{ub}
  ---------

   @{"Type" link "MultCaTy"}
   @{"Slot" link "MultCaSl"}

   @{"Page: -10" link "MultP10D"}
   @{"Page: -1" link "MultP01D"}
   @{"Page: +1" link "MultP01U"}
   @{"Page: +10" link "MultP10U"}

   @{"Directory" link "MultDire"}

   @{"Read Directory" link "MultRDir"}

   @{"Download Card" link "MultDoCa"}
   @{"Upload Card" link "MultUpCa"}

@endnode
@node "MultDire" "MCControl - Hauptfenster/Verzeichnis"
@toc "Mult"

@{MS "Verzeichnis"}

This Gadget is views all MemoryCard files. First two flags and than, depending on your
@{"configuration" link "Sett"}, the game name, the product ID and the region!


   - Block free (may be recovered)@{par}
   U Block in use@{par}
   L Block link (part of a multi block file)@{par}
   I Entry damaged.@{par}

   * This game isnīt present within MCControls database.@{par}

@{b}Please @{"enable" link "SettDirM"}, if not already visible, the product ID and use the menu
entry "MemoryCard/Export/ASCII" to save the directory as a text file. This file should be sent to
@{"me" link "Author"}, because I can add this game to the database. I would be very nice, if you add
the languages available within the game.@{ub}

@endnode
@node "MultRDir" "MCControl - The Main Window/Read Directory"
@toc "Mult"

@{MS "Read Directory"}

This is the fastes way to take a look on the contents of the current inserted memory card.

@endnode
@node "MultCaTy" "MCControl - The Main Window/Type"
@toc "Mult"

@{MS "Type"}

@{b}This button is only visible if youīve defined more than one
@{"personal card" link "SettYour"}.@{ub}


This gadgets allows to activate the special configuration for the current card.

@endnode
@node "MultCaSl" "MCControl - The Main Window/Card"
@toc "Mult"

@{MS "Card"}

@{b}This button is only visible if you have selected a multi slot reader by using the
@{"preferences" link "Sett"} gadget @{"reader typ" link "SettNuSl"}.@{ub}


This gadget selects the card slot for all read/write actions of this window.

@endnode
@node "MultP10D" "MCControl - The Main Window/Page: -10"
@toc "Mult"

@{MS "Page: -10"}

@{b}This button is only visible if the @{"selected driver" link "SettDriv"} supports multipage cards
and the buttons are enabled within the @{"GUI settings" link "SettShPG"}!@{ub}


The card jumps 10 pages back.

@endnode
@node "MultP01D" "MCControl - The Main Window/Page: -1"
@toc "Mult"

@{MS "Page: -1"}

@{b}This button is only visible if the @{"selected driver" link "SettDriv"} supports multipage cards
and the buttons are enabled within the @{"GUI settings" link "SettShPG"}!@{ub}


The next card page of your MemoryCard will be activated.

@endnode
@node "MultP01U" "MCControl - The Main Window/Page: 1"
@toc "Mult"

@{MS "Page: 1"}

@{b}This button is only visible if the @{"selected driver" link "SettDriv"} supports multipage cards
and the buttons are enabled within the @{"GUI settings" link "SettShPG"}!@{ub}


The previous card page of your MemoryCard will be activated.

@endnode
@node "MultP10U" "MCControl - The Main Window/Page: +10"
@toc "Mult"

@{MS "Page: +10"}

@{b}This button is only visible if the @{"selected driver" link "SettDriv"} supports multipage cards
and the buttons are enabled within the @{"GUI settings" link "SettShPG"}!@{ub}


The card jumps 10 pages forward.

@endnode
@node "MultDoCa" "MCControl - The Main Window/Download Card"
@toc "Mult"

@{MS "Download Card"}

This button forces the reading the whole MemoryCard.

@endnode
@node "MultUpCa" "MCControl - Hauptfenster/Upload Card"
@toc "Mult"

@{MS "Upload Card"}

This gadget is updating all modified blocks, or just writes the whole card.

@endnode

@node "MenuMult" "MCControl - The Main Window/Menu"
@toc "Mult"
@{MS "The Main Menu"}
@{code}
    @{b}Project@{ub}

    @{"New Window" link "MenuMultNWin"}
    @{"Preferences..." link "MenuMultPref"}
    @{"About..." link "MenuMultAbou"}
    @{"Quit" link "MenuMultQuit"}

    @{b}MemoryCard@{ub}

    @{"Load..." link "MenuMultCaLo"}
    @{"Save..." link "MenuMultCaSa"}
    @{"Export..." link "MenuMultCaEx"}
    @{"Read Directory" link "MenuMultCaDi"}
    @{"Download Card" link "MenuMultCaDo"}
    @{"Upload Card" link "MenuMultCaUp"}
    @{"Complete Format" link "MenuMultCaFo"}
    @{"Speed Format" link "MenuMultCaFQ"}
    @{"Clean Up" link "MenuMultCaCU"}
    @{"Repair" link "MenuMultCaRp"}
    @{"Previous Card Page" link "MenuMultCaPr"}
    @{"Next Card Page" link "MenuMultCaNe"}

    @{b}Save Games@{ub}

    @{"Load..." link "MenuMultGaLo"}
    @{"Save..." link "MenuMultGaSa"}
    @{"Save All..." link "MenuMultGaAL"}
    @{"Export..." link "MenuMultGaEx"}
    @{"Delete File" link "MenuMultGaDe"}
    @{"Undelete File" link "MenuMultGaUD"}
    @{"Delete all Files" link "MenuMultGaDA"}
    @{"Undelete all Files" link "MenuMultGaUA"}
    @{"Patch File..." link "MenuMultGaCo"}
@endnode
@node "MenuMultNWin" "The Main Menu/Project/New Window"
@toc "MenuMult"

@{MS "Project/New Window"}

Opens a new virual MemoryCard window!

@endnode
@node "MenuMultPref" "The Main Menu/Project/Preferences..."
@toc "MenuMult"

@{MS "Project/Preferences..."}

This item opens the @{"preferences" link "Sett"} window!

@endnode
@node "MenuMultABou" "The Main Menu/Project/About..."
@toc "MenuMult"

@{MS "Project/About..."}

Hui! The @{"about window" link "Abou"} opens!

@endnode
@node "MenuMultQuit" "The Main Menu/Project/Quit"
@toc "MenuMult"

@{MS "Project/Quit"}

This item is quiting MCControl!

@endnode
@node "MenuMultCaLo" "The Main Menu/MemoryCard/Load..."
@toc "MenuMult"

@{MS "MemoryCard/Load..."}

Here you can load complete memory card images.

@endnode
@node "MenuMultCaSa" "The Main Menu/MemoryCard/Save..."
@toc "MenuMult"

@{MS "MemoryCard/Save..."}

Here you can save a memory card image. The @{"Fileformat" link "SupportedFileTypes"} is #?.MCD and
the result may be @{"compressed" link "SettXPKP"}.

@endnode
@node "MenuMultCaEx" "The Main Menu/MemoryCard/Export..."
@toc "MenuMult"

@{MS "MemoryCard/Export..."}

Here you can save a memory card image. The @{"Fileformat" link "SupportedFileTypes"} can be
specified by the submenu.


@{b}MCControl is not compressing files for export.@{ub}

@endnode
@node "MenuMultCaDi" "The Main Menu/MemoryCard/Read Directory"
@toc "MenuMult"

@{MS "MemoryCard/Read Directory"}

MCControl is only reading the directory.

@endnode
@node "MenuMultCaDo" "The Main Menu/MemoryCard/Download Card"
@toc "MenuMult"

@{MS "MemoryCard/Download Card"}

MCControl is reading the complete card into the window buffer.

@endnode
@node "MenuMultCaUp" "The Main Menu/MemoryCard/Upload Card"
@toc "MenuMult"

@{MS "MemoryCard/Upload Card"}

This item is updating all modified blocks, or just writes the whole card.

@endnode
@node "MenuMultCaFo" "The Main Menu/MemoryCard/Complete Format"
@toc "MenuMult"

@{MS "MemoryCard/Complete Format"}

The window buffer will be initialized like an empty MemoryCard.


You should use this function only to remove any sign of prior usage. If you just want to clear a
card for reusing with your PSX than use the much faster @{"speed format" link "MenuMultCaFQ"}
function instead!

@endnode
@node "MenuMultCaFQ" "The Main Menu/MemoryCard/Speed Format"
@toc "MenuMult"

@{MS "MemoryCard/Speed Format"}

The window buffer will be initialized like an empty MemoryCard.


This operation is very simular to the @{"complete format" link "MenuMultCaFQ"}! The only difference
is the amount of erased data.


The speed format option is only formating the 15 directory frames instead of writing all 1024
Frames.

@endnode
@node "MenuMultCaCU" "The Main Menu/MemoryCard/CleanUp"
@toc "MenuMult"

@{MS "MemoryCard/CleanUp"}

The MemoryCard buffer will be cleaned by this option.


If you use your MemoryCard you delete or upload files. The directory looks unclean, because multi
block saving are separated all over the card.


In addition to that the deleted save games are physicaly present. Thatīs the reason why you can
@{"undelete" link "MenuMultGaUD"} them! After cleaning the MemoryCard they are completely wiped out
and if the @{"compression" link "SettXPKP"} mode is enabled the results are much better.

@endnode
@node "MenuMultCaRp" "The Main Menu/MemoryCard/Repair"
@toc "MenuMult"

@{MS "MemoryCard/Repair"}

Well, @{"sometimes" link "FAQSFormat"} the Playstation is reporting your card is unformatted or
something like that! This may cause by inserting/removing during card access or even by inserting
while the Playstation is switched on. @{"DexDrive" link "FAQSDexDrive"} user may damage the first
card frames by sending modem commands into the Dex. This happened here a couple of times, when I
forgot to replace the @{"DexDrive" link "FAQSDexDrive"} by a modem. )-8


This funktion repairs any of the first 64 frames of your card, including the directory, so damaged
entries @{b}may@{ub} be visible and working again!


There is no magic behind this routine. The most frames are containing constant values, so these
frames will be restored to their default.


@{b}Make sure that you @{u}disabled@{uu} the @{"quick access" link "SettQwik"} function before
writing back your card. You should enable the @{"quick access" link "SettQwik"} again, to protect
the first frames and to speedup your card access.@{ub}

@endnode
@node "MenuMultCaPr" "The Main Menu/MemoryCard/Previous Card Page"
@toc "MenuMult"

@{MS "MemoryCard/Previous Card Page"}

This function activates the previous card page of your MemoryCard.

@endnode
@node "MenuMultCaNe" "The Main Menu/MemoryCard/Next Card Page"
@toc "MenuMult"

@{MS "MemoryCard/Next Card Page"}

This function activates the next card page of your MemoryCard.

@endnode
@node "MenuMultGaLo" "The Main Menu/SaveGames/Load..."
@toc "MenuMult"

@{MS "SaveGames/Load..."}

Here you can load a saved game file.

@endnode
@node "MenuMultGaSa" "The Main Menu/SaveGames/Save..."
@toc "MenuMult"

@{MS "SaveGames/Save..."}

Here you can save the @{"selected" link "MultDire"} game file. The @{"Fileformat" link "SupportedFileTypes"}
is #?.PSX and the result may be @{"compressed" link "SettXPKP"}.

@endnode
@node "MenuMultGaAL" "The Main Menu/SaveGames/Save all..."
@toc "MenuMult"

@{MS "SaveGames/Save All..."}

Here you can save all files of the current memory card. If a filename already exists, then you can
choose the way to proceed.


The @{"Fileformat" link "SupportedFileTypes"} is #?.PSX and the result may be @{"compressed" link "SettXPKP"}.

@endnode
@node "MenuMultGaEx" "The Main Menu/SaveGames/Export..."
@toc "MenuMult"

@{MS "SaveGames/Export..."}

Here you can save a single game file. The @{"Fileformat" link "SupportedFileTypes"} can be specified
by the submenu.


@{b}MCControl is not compressing files for export.@{ub}

@endnode
@node "MenuMultGaDe" "The Main Menu/SaveGames/DeleteFile"
@toc "MenuMult"

@{MS "SaveGames/Delete File"}

The @{"selected" link "MultDire"} game file will be deleted.


@{b}The DEL key has the same effect@{ub}

@endnode
@node "MenuMultGaUD" "The Main Menu/SaveGames/Undelete File"
@toc "MenuMult"

@{MS "SaveGames/Undelete File"}

The @{"selected" link "MultDire"} game file will be undeleted.


   @{b}The BACKSPACE key has the same effect@{ub}

@endnode
@node "MenuMultGaDA" "The Main Menu/SaveGames/Delete all Files"
@toc "MenuMult"

@{MS "SaveGames/Delete All Files"}

All game files will be deleted. It is possible to @{"undelete all" link "MenuMultGaUA"} files or
just @{"one by one" link "MenuMultGaUD"}.

@endnode
@node "MenuMultGaUA" "The Main Menu/SaveGames/Undelete all Files"
@toc "MenuMult"

@{MS "SaveGames/Undelete all Files"}

Undelete all games files of the current memory card.

@endnode
@node "MenuMultGaCo" "The Main Menu/SaveGames/Patch File"
@toc "MenuMult"

@{MS "SaveGames/Patch File"}

The @{"selected" link "MultDire"} game file will be loaded into the @{"save game patcher" link "Patc"}!

@endnode

@node "Sett" "MCControl - Preferences"
@toc "Mult"
@{MS "Preferences"}

This window allows to configurate MCControl. This window also contains a @{"menu" link "MenuSett"}.
@{code}

    Communication
   ---------------

   @{"Driver" link "SettDriv"}
   @{"Driver info" link "SettInfo"}
   @{"Device" link "SettDevi"}
   @{"Retries" link "SettRetr"}
   @{"Multi Card Reader" link "SettNuSl"}
   @{"Quick Access" link "SettQwik"}

   @{"Your Cards" link "SettYOUR"}
   @{"Default Cards" link "SettDefa"}
   @{"Edit Card" link "SettEdit"}

    GUI
   -----

   @{"GUI Font" link "SettFont"}
   @{"Directory" link "SettDirM"}
   @{"Names from Database" link "SettDBNa"}
   @{"Regions from Database" link "SettDBRe"}
   @{"Filenames from Database" link "SettDBSN"}
   @{"Link Block Information" link "SettLink"}
   @{"Show Page Gadgets" link "SettShPG"}

    XPK
   -----

   @{"XPK Compression" link "SettXPKP"}
   @{"XPK Method" link "SettXPKM"}

    Miscellaneus
   --------------

   @{"Set Filenote" link "SettFiNo"}
   @{"Icon mode" link "SettIcon"}

    Other
   ------

   @{"Use" link "SettOkOk"}
   @{"Save" link "SettSave"}
   @{"Cancel" link "SettCanc"}

@endnode
@node "SettDriv" "MCControl - Preferences/Driver"
@toc "Sett"

@{MS "Driver"}

This gadget specifies the hardware used for reading MemoryCards.@{par}

If you build my @{"parallel port" link "HardPara"} hardware then @{b}"ParallelPort.mcm"@{ub} is the right
driver. If there are any problems, then try the slower version named @{b}"ParallelPortSlow.mcm"@{ub}! If
MCControl reports that there is no compatible hardware found, then your hardware based on the first
version. Use the @{b}"ParallelPortClassic.mcm"@{ub} driver or @{"update" link "FAQSHardUpdate"} you hardware
(very simple)!@{par}

If your reader is designed to work on the @{"disk port" link "HardDisk"}, then you should use the "DiskPort.mcm"! Again,
if there are any problems, then try the slower version @{b}"DiskPortSlow.mcm"@{ub} for slower timing.@{par}

The @{"DexDrive.mcm" link "FAQSDexDrive"} is a driver for the commercial @{"DexDrive" link "FAQSDexDrive"}!@{par}

The @{"PSXPort.mcm" link "FAQSPSXPort"} is a driver for the commercial PSXPort hardware.@{par}

The 30 Block (MultiPage) RamCard driver (@{b}"RamCard.mcm"@{ub}) is only an example for development. There
for the sourcecodes are included. This driver may be useful if you want to use MCControl without a
card reader hardware. I use it for programming MCControl without the need of reading and writing
real memorycards.

@endnode
@node "SettInfo" "MCControl - Preferences/Driver info"
@toc "Sett"

@{MS "Driver info"}

This gadget shows information about the current driver.

@endnode
@node "SettDevi" "MCControl - Preferences/Device"
@toc "Sett"

@{MS "Device"}

@{b}Depending on the used @{"driver" link "SettDriv"} this gadget may not be available.@{ub}


Some driver allow to specify the connector for the device. This is can be done by using this gadget!
The value behind the device name specifies the connector number of the IO-Card (aka. unit).
@{code}

   Examples:

   serial.device,0
   vectortex001.device,4

@endnode
@node "SettRetr" "MCControl - Preferences/Retries"
@toc "Sett"

@{MS "Retries"}

This gadgets specifies the number of retries before aborting card access.

@endnode
@node "SettNuSl" "MCControl - Preferences/Number of Slots"
@toc "Sett"

@{MS "Number of Slots"}

@{b}Depending on the used @{"driver" link "SettDriv"} this gadget may not be available.@{ub}


This gadget allows to select the number of card reader slots your hardware is supporting!

@endnode
@node "SettQwik" "MCControl - Preferences/Quick Access"
@toc "Sett"

@{MS "Quick Access"}

The quick access is done by skipping some MemoryCard parts during read and write actions.


These part are reserved and normaly contain no special data.

@endnode
@node "SettYour" "MCControl - Preferences/Your Cards"
@toc "Sett"

@{MS "Your Cards"}

Use this list to specify all memory cards you own. Just use the @{"default card list" link "SETTDEFA"}
to drag all your cards into this gadget.


Use the @{"edit card" link "SettEdit"} button to modify card name and multipage settings.


@{b}As long as this gadget is empty MCControl is using the default card specifications.@{ub}


@{b}If you are not able to use the gtdrag.library (e.g. you are using OS2.0) it is required to move
the entries via double click@{ub}

@endnode
@node "SettDefa" "MCControl - Preferences/Default cards"
@toc "Sett"

@{MS "Default Cards"}

This list contains all pre defined cards. Just drag all needed cards to
@{"your personal list" link "SETTYOUR"}.


All cards draged into this gadget will be deleted.


@{b}If you are not able to use the gtdrag.library (e.g. you are using OS2.0) it is required to move
the entries via double click@{ub}

@endnode
@node "SettEdit" "MCControl - Preferences/Edit Card"
@toc "Sett"

@{MS "Edit Card"}

This gadgets opens the @{"card editor" link "Card"}.

@endnode
@node "SettXPKP" "MCControl - Preferences/XPK Compression"
@toc "Sett"

@{MS "XPK Compression"}

This gadget enables the automatic compression during file save.


@{b}The automatic decompression is always working!@{ub}

@endnode
@node "SettXPKM" "MCControl - Preferences/XPK Method"
@toc "Sett"

@{MS "XPK Method"}

This gadget specifies the compression method! Consult your XPK manual for further information.


Its not required to change the method. I made several tests and in the most cases NUKE got the best
results.

@endnode
@node "SettFont" "MCControl - Preferences/Font"
@toc "Sett"

@{MS "GUI Font"}

This gadget allows to specify a new GUI Font. The screen font is used if this font isnīt available.

@endnode
@node "SettDirM" "MCControl - Preferences/Directory"
@toc "Sett"

@{MS "Directory"}

Here you can select the sequence of the memory card directory!

@endnode
@node "SettDBNa" "MCControl - Preferences/Names from Database"
@toc "Sett"

@{MS "Names from Database"}

An active switch forces MCControl to use fake names instead of the original (and sometimes ugly)
save game names!


@{b}The save game must be in the MCDatabase. If its not present MCControl is falling back to the
real name of the save game.@{ub}


@{b}This feature is only cosmetic! There wonīt by any data changes, even when moving a samegame from
one card to another.@{ub}

@endnode
@node "SettDBRe" "MCControl - Preferences/Regions from Database"
@toc "Sett"

@{MS "Regions from Database"}

An active switch forces MCControl to output detailed regions for european games.


This is very useful because a save game of a german game isnīt working on with a frensh game!


@{b}The save game must be in the MCDatabase. If its not present MCControl is falling back to the
global region of the save game.@{ub}

@endnode
@node "SettDBSN" "MCControl - Preferences/Filenames from Database"
@toc "Sett"

@{MS "Filenames from Database"}

Normaly the save game file names are take from the PSX file itself. By using this switch MCControl
takes the default file name from database.


@{b}The save game must be in the MCDatabase. If its not present MCControl is falling back to the
real name of the save game.@{ub}

@endnode
@node "SettShPG" "MCControl - Preferences/Show Page Gadgets"
@toc "Sett"

@{MS "Show Page Gadgets"}

@{b}This gadget is only available, if the @{"selected driver" link "SettDriv"} supports multi page
cards.@{ub}


This switch allows to activate additional multipage gadgets.

@endnode
@node "SettLink" "MCControl - Preferences/Link Block Information"
@toc "Sett"

@{MS "Link Block Information"}

By default this switch is disabled, because the directory is easier to read. Some guys wanted this
feature - so here it is.


Well, if this switch is off then no region or product id will be shown behind the link block.


If you turn it on, the file entry of a link block looks exactly like the head of the same save game.


Thats all! I suggest to let this switch off, because the data is already present and why filling up
the listview with useless dupes?

@endnode
@node "SettFiNo" "MCControl - Preferences/Set File Note"
@toc "Sett"

@{MS "Set File Note"}

This switch allows to set the file comment.


MCControl is using the name that isnīt present within the file name. Sounds stupid, but it isnīt!


Example:


Here "@{"Filenames from Database" link "SettDBSN"}" is activ:


   MonkeyHero.psx               828 ----rwed Today      22:01:54 : Monkey     0:39


And now its off:


   Monkey0_39.psx               828 ----rwed Today      22:01:54 : Monkey Hero

@endnode
@node "SettIcon" "MCControl - Preferences/Icon Mode"
@toc "Sett"

@{MS "Icon Mode"}

@{b}This feature is only available when using AmigaOS V3.5 and up!@{ub}


This gadget allows to specify the icon creation mode. There are four methods:


   Save 1:1     - 16*16 pixel, Store the images like they are!@{par}
   Save 2:2     - 32*32 pixel, Double X and Y.@{par}
   Save 2:1     - 32*16 pixel, Double X only.@{par}
   No Icons     - Disables icon creation!@{par}

Note: The system default icons are named "def_PSXMemoryCard.info" and "def_PSXSaveGame.info"!


The icon mode only effects MemoryCard icons when icon creation is disabled. Any other setup will
cause the usage of the default icon. If no default PSXMemoryCard icon is available the default
project icon will be used.

@endnode
@node "SettOkOk" "MCControl - Preferences/Use"
@toc "Sett"

@{MS "Use"}

   This button confirms all changes and closes the window.

@endnode
@node "SettSave" "MCControl - Preferences/Save"
@toc "Sett"

@{MS "Save"}

This button confirms all changes, saves the preferences to disk and closes the window.

@endnode
@node "SettCanc" "MCControl - Preferences/Cancel"
@toc "Sett"

@{MS "Cancel"}

All changes are lost.

@endnode

@node "Card" "MCControl - Card Preferences"
@toc "Mult"

@{MS "Card Preferences"}
@{code}
This window allows to configurate MCControl cards.

   @{"Name" link "CardCaNa"}

   MultiPage Settings.

   @{"MultiPage Start" link "CardMPSt"}
   @{"MultiPage Next" link "CardMPUp"}
   @{"MultiPage Previous" link "CardMPDn"}
   @{"MultiPage End" link "CardMPEn"}

   @{"Use" link "CardOkOk"}
   @{"Cancel" link "CardCanc"}

@endnode
@node "CardCaNa" "MCControl - Card Preferences/Name"
@toc "Card"

@{MS "Name"}

Here you can specify the name of your card.

@endnode
@node "CardMPSt" "MCControl - Card Preferences/MultiPage Start"
@toc "Card"

@{MS "MultiPage Start"}

@{b}Depending on the used @{"driver" link "SettDriv"} this gadget may not be available.@{ub}


This gadget specifies a @{b}key sequence@{ub}! These keys are always used first during page
selection.


Examples:


Pressing START and L1, hold for 2 seconds, release L1 and wait for 1/4s:


   START L1 2s -L1 -1/4s


Release START and wait for 3 and a half second:


   -START -1s -2s -1/2s


Pressing buttons will be always done before releasing them, so "-START L1 START -L1" is equal to
"START L1 -START -L1"!


The timing isnīt completly free. Allowed commands are: 2s, 1s, 1/2s, 1/4s, 1/8s and 1/16s


These timings are used @{b}after@{ub} pressing keys! To delay @{b}after@{ub} releasing keys init the
time command with a "-" like for releasing keys as shown above.


@endnode
@node "CardMPUp" "MCControl - Card Preferences/MultiPage Up"
@toc "Card"

@{MS "MultiPage Up"}

@{b}Depending on the used @{"driver" link "SettDriv"} this gadget may not be available.@{ub}


This gadget specifies a @{b}key sequence@{ub}! These keys are only used during the page up command
and may be looped if more than 1 page is flipped at once.


   Examples:


Pressing START and L1, hold for 2 seconds, release L1 and wait for 1/4s:


   START L1 2s -L1 -1/4s


Release START and wait for 3 and a half second:


   -START -1s -2s -1/2s


Pressing buttons will be always done before releasing them, so "-START L1 START -L1" is equal to
"START L1 -START -L1"!


The timing isnīt completly free. Allowed commands are: 2s, 1s, 1/2s, 1/4s, 1/8s and 1/16s


These timings are used @{b}after@{ub} pressing keys! To delay @{b}after@{ub} releasing keys init the
time command with a "-" like for releasing keys as shown above.

@endnode
@node "CardMPDn" "MCControl - Card Preferences/MultiPage Down"
@toc "Card"

@{MS "MultiPage Down"}

@{b}Depending on the used @{"driver" link "SettDriv"} this gadget may not be available.@{ub}


This gadget specifies a @{b}key sequence@{ub}! These keys are only used during the page down command
and may be looped if more than 1 page is flipped at once.


   Examples:


Pressing START and L1, hold for 2 seconds, release L1 and wait for 1/4s:


   START L1 2s -L1 -1/4s


Release START and wait for 3 and a half second:


   -START -1s -2s -1/2s


Pressing buttons will be always done before releasing them, so "-START L1 START -L1" is equal to
"START L1 -START -L1"!


The timing isnīt completly free. Allowed commands are: 2s, 1s, 1/2s, 1/4s, 1/8s and 1/16s


These timings are used @{b}after@{ub} pressing keys! To delay @{b}after@{ub} releasing keys init the
time command with a "-" like for releasing keys as shown above.

@endnode
@node "CardMPEn" "MCControl - Card Preferences/MultiPage End"
@toc "Card"

@{MS "MultiPage End"}

@{b}Depending on the used @{"driver" link "SettDriv"} this gadget may not be available.@{ub}


This gadget specifies a @{b}key sequence@{ub}! These keys are only always used after any page
command.


Examples:


Pressing START and L1, hold for 2 seconds, release L1 and wait for 1/4s:


   START L1 2s -L1 -1/4s


Release START and wait for 3 and a half second:


   -START -1s -2s -1/2s


Pressing buttons will be always done before releasing them, so "-START L1 START -L1" is equal to
"START L1 -START -L1"!


The timing isnīt completly free. Allowed commands are: 2s, 1s, 1/2s, 1/4s, 1/8s and 1/16s


These timings are used @{b}after@{ub} pressing keys! To delay @{b}after@{ub} releasing keys init the
time command with a "-" like for releasing keys as shown above.

@endnode
@node "CardOkOk" "MCControl - Card Preferences/Save"
@toc "Card"

@{MS "Use"}

This button confirms all changes and closes the window.

@endnode
@node "CardCanc" "MCControl - Card Preferences/Cancel"
@toc "Card"

@{MS "Cancel"}

All changes are lost.

@endnode

@node "MenuSett" "MCControl - The Preferences Window/The Preferences Menu"
@toc "Mult"

@{MS "The Preferences Menu"}
@{code}
    @{b}Project@{ub}

    @{"Open..." link "MenuSettOpen"}
    @{"Save" link "MenuSettSave"}
    @{"SaveAs..." link "MenuSettSaAs"}

    @{b}Edit@{ub}

    @{"Reset To Default" link "MenuSettDefa"}
    @{"Last Saved" link "MenuSettLaSa"}
    @{"Last Used" link "MenuSettLaUs"}
    @{"Save Card..." link "MenuSettSaCa"}

@endnode
@node "MenuSettOpen" "MCControl - The Preferences Menu/Project/Open..."
@toc "MenuSett"

@{MS "Open..."}

This item allows to load a prefs file.

@endnode
@node "MenuSettSave" "MCControl - The Preferences Menu/Project/Save"
@toc "MenuSett"

@{MS "Save"}

This item allows to save the prefs file.

@endnode
@node "MenuSettSaAs" "MCControl - The Preferences Menu/Project/SaveAs..."
@toc "MenuSett"

@{MS "SaveAs..."}

This item allows to save the prefs file under a given name.

@endnode
@node "MenuSettDefa" "MCControl - The Preferences Menu/Edit/Reset to Default"
@toc "MenuSett"

@{MS "Reset To Default"}

The preferences window will be reseted to the internal defaults.

@endnode
@node "MenuSettLaSa" "MCControl - The Preferences Menu/Edit/Last Saved"
@toc "MenuSett"

@{MS "Last Saved"}

This menu point forces a reload of the last @{"saved" link "SettSave"} preferences.

@endnode
@node "MenuSettLaUs" "MCControl - The Preferences Menu/Edit/Last Used"
@toc "MenuSett"

@{MS "Last Used"}

This menu item forces the preferences window to come up with the last used settings. It works like
@{"aborting" link "SettCanc"} and reopening the preferences window.

@endnode
@node "MenuSettSaCa" "MCControl - The Preferences Menu/Edit/Save Card..."
@toc "MenuSett"

@{MS "Save Card..."}

Here you can save a single card profile. If you specify the "DefaultCards/" directory the new card
will be used as default card.

@endnode

@node "Abou" "MCControl - About"
@toc "Mult"

@{MS "About"}

This window i showing the version of MCControl and my name.


During startup this window opens automaticaly to pay tribute to me. (-8


@{b}If you deserve it then Iīll tell you how to remove this window!@{ub}

@{code}
   @{b}Gadgets@{ub}
  ---------

   @{"Ok" link "AbouOkOk"}


@endnode
@node "AbouOkOk" "MCControl - About/Ok"
@toc "Abou"

@{MS "Ok"}

The about window shuts down. Using the ESC or RETURN key has the same effect.

@endnode

@node "Patc" "MCControl - The Save Game Patcher"
@toc "MCControl"

@{MS "The Save Game Patcher"}

This window allows to patch save games.


@{b}The number of options depends on the @{"#?.SGP file" link "SGPFile"}.@{ub}
@{code}

   @{b}Gadgets@{ub}
  ---------

   @{"Name" link "PatcName"}
   @{"Author" link "PatcAutr"}
   @{"Select ID" link "PatcSeID"}
   @{"ProductID" link "PatcProd"}
   @{"Convert" link "PatcOkOk"}
   @{"Cancel" link "PatcCanc"}
@endnode
@node "PatcName" "MCControl - The Save Game Patcher/Name"
@toc "Patc"

@{MS "Name"}

Here you can see the name of the game to patch.

@endnode
@node "PatcAutr" "MCControl - The Save Game Patcher/Author"
@toc "Patc"

@{MS "Author"}

The guy shown here created the SGP file.

@endnode
@node "PatcSeID" "MCControl - The Save Game Patcher/SelectID"
@toc "Patc"

@{MS "SelectID"}

Here you can select the @{"region id" link "FAQSRegion"} for your game version. The selected ID will
be copied into @{"ProductID" link "PatcProd"} gadget!


@{b}The number of supported regions are depending on the @{"#?.SGP file" link "SGPFile"}.@{ub}

@endnode
@node "PatcProd" "MCControl - The Save Game Converter/ProductID"
@toc "Patc"

@{MS "ProductID"}

The ProductID of the save game will be overwritten by this ID! This gadget allows to patch the ID
manualy!

@endnode
@node "PatcOkOk" "MCControl - The Save Game Patcher/Patch"
@toc "Patc"

@{MS "Patch"}

The save game will be patched.

@endnode
@node "PatcCanc" "MCControl - The Save Game Patcher/Cancel"
@toc "Patc"

@{MS "Cancel"}

Aborts convertation.

@endnode

@node "SGPFile" "The SGP File Format"
@toc "MCControl"

@{MS "The SGP File Format"}

@{b}General:@{ub}


The patch commandos work like DOS commands. If you want an argument containing a space, then it is
required to use "".


Every time numbers are required you are able to specify them decimal or hexadecimal! Hexadecimal
numbers can be defined by a leading "$" character!


By default all commands are working in the byte @{b}access mode@{ub}! This means every read or write
access will be only one byte wide and not more. To change this behaviour use a leading "B" (1 Byte),
"W" (2 Bytes) or "L" (4 Bytes)!


In addition to that, its also possible to specify a @{b}mask@{ub}, to change only some or even only
one bit. Just put a mask behind the address offset leaded by a "&"!


In the command specifications youīll find an "A" if the argument supports setup an @{b}access
mode@{ub} and a "M" for @{b}mask@{ub} support.


   Examples:


   Access two bytes ($4001/$4002):


   W$4001


@{b}Remember: INTEL like, the first byte will be read as low byte and the second as high byte.@{ub}


   Access four bytes ($23e,$23f,$240,$241) and the masking of $7f.


   L$023e&7f

   Here are all currently supported commands:
@{code}

   @{"SUPPORT" link "PatcSupport"}
   @{"NAME" link "PatcGameName"}
   @{"Author" link "PatcAuthorName"}
   @{"Version" link "PatcVersion"}
   @{"Gadget" link "PatcGadget"}
   @{"Checksum" link "PatcChecksum"}
   @{"Tool" link "PatcTool"}

@endnode
@node "PatcSupport" "The SGP File Format - SUPPORT"
@toc "SGPFile"

@{MS "Support"}

 Template:


   Support EUR/K,ENG/K,GER=DEU/K,FRA/K,SPA=ESP/K,ITA/K,SWE/K,DCH/K,US/K,ASIA/K,JAP/K


 Function:


This command must be specified! It contains all @{"region" link "FAQSRegion"} product codes for the
game.


How to get these @{"Product codes" link "FAQSRegion"}? Very easy! Just take the .PSX file, open a
DOS window and type "Type savegamename.psx hex". At the beginning of the dump youīll find a string
starting with "B". This is exactly what wie need. Just must deliver this complete string to the
support command.


If an ID contains spaces if required to enclose it into quotation marks.


   Examples:


   SUPPORT EUR "BESCES-01078BOMBER  " US "BASLUS-00680BOMBER  " JAP "BISLPS-01155BOMBER  "@{par}
   SUPPORT EUR BESLES-00486TOMBRAID US BASLUS-00152TOMBRAID@{par}
   SUPPORT EUR "BESLES-00720TOMB2" US "BASLUS-00437TOMB2"@{par}

Its not always required to specify the complete ID string. ("BESCES-00808GMEDAT01",
"BASLUS-00707GMEDAT03") As you can see the @{"file name" link "FAQSRegion"} of this game is
different. The contents is compatible. This is made by games using a whole block for saving the data
for one player. The next player gets a different number. Sometimes the filename is equal to the
player name. To convert such save game its required to setup this command line:


   SUPPORT EUR BESCES-00808 US BASLUS-00707


All bytes after these IDs stay unchanged.

@endnode
@node "PatcGameName" "The SGP File Format - NAME"
@toc "SGPFile"

@{MS "Name"}

 Template:


   Name Name/A


 Function:


This command is required! It contains the name of the game. This name will be shown later in the
@{"patch window" link "Patc"}


The name should be correct and readable. Do not use upper case or lower case at all.
"HEARDOFDAKNESS" is wrong! "Heart of Darkness" is fine!
@{code}

 Examples:

   NAME "Tomb Raider II"
   NAME "Colin McRae Rally"
   NAME "Spyro The Dragon"

@endnode
@node "PatcAuthorName" "The SGP File Format - AUTHOR"
@toc "SGPFile"

@{MS "Author"}

 Template:


  Author Name/A


 Function:

This command is required! It contains the name of the author of the converter. This name will be
shown later in the @{"patch window" link "Patc"}

@{code}
   Examples:

   NAME "Testy Testman"
   NAME "Guido Mersmann"

@endnode
@node "PatcVersion" "The SGP File Format - VERSION"
@toc "SGPFile"

@{MS "VERSION"}

 Template:


   VERSION String/A


 Function:


This command is required! It contains an amiga standard version string.
@{code}

 Example:

   VERSION $VER: HeartOfDarkness.SGP 1.00 (13.06.99)

@endnode
@node "PatcGadget" "The SGP File Format - GADGET"
@toc "SGPFile"

@{MS "GADGET"}

If you use one of the following words for the gadget name there will be an automatic translation
into your language! (If a catalog for your language exists)


   Normal Gadgets:


   "Level", "Lives", "Money", "Gold", "Ammo", "Coins", "Pieces",  "Stars", "Energy", "FullEnergy", "AllWeapons" and "AllKeys"


   Barlabel:


   "Slot" (The slot entries will be auto numbered)


   @{"Slider" link "PatcSlid"}@{par}
   @{"Integer" link "PatcInte"}@{par}
   @{"Checkbox" link "PatcChec"}@{par}
   @{"Barlabel" link "PatcBarl"}@{par}

@endnode
@node "PatcSlid" "The SGP File Format - GADGET/Slider"
@toc "PatcGadget"

@{MS "Slider"}
@{code}

This gadget allows to insert a slider gadget!

 Template:

  TYPE/A/K,NAME/A/K,MIN/A/K,MAX/A/K,ADDRESS/A/K

 Inputs:

  TYPE:       Must be SLIDER!
  NAME:       Here you can specify the gadgets name. If you use one of the
              pre defined @{"words" link "PatcGadget"} the  gadget  name  will  be  automatic
              translated into your language!
  MIN:        Minimum value!
  MAX:        Maximum value!
  ADDRESS: AM Location within the PSX file!
@endnode
@node "PatcInte" "The SGP File Format - GADGET/Integer"
@toc "PatcGadget"

@{MS "Integer"}
@{code}

   This gadget allows to insert a integer gadget!

 Template:

  TYPE/A/K,NAME/A/K,MIN/A/K,MAX/A/K,ADDRESS/A/K

 Inputs:

  TYPE:       Must be INTEGER!
  NAME:       Here you can specify the gadgets name. If you use one of the
              pre defined @{"words" link "PatcGadget"} the  gadget  name  will  be  automatic
              translated into your language!
  MIN:        Minimum value!
  MAX:        Maximum value!
  ADDRESS: AM Location within the PSX file!

@endnode
@node "PatcChec" "The SGP File Format - GADGET/Checkbox"
@toc "PatcGadget"

@{MS "Checkbox"}
@{code}

   This gadget allows to insert a checkbox gadget!

 Template:

  TYPE/A/K,NAME/A/K,OFF/A/K,ON/A/K,ADDRESS/A/K

 Inputs:

  TYPE:       Must be CHECKBOX!
  NAME:       Here you can specify the gadgets name. If you use one of the
              pre defined @{"words" link "PatcGadget"} the  gadget  name  will  be  automatic
              translated into your language!
  OFF:        Value to write into ADDRESS if switch is deactivated!
  ON:         Value to write into ADDRESS if switch is activated!
  ADDRESS: AM Location within the PSX file!

@endnode
@node "PatcBarl" "The SGP File Format - GADGET/Barlabel"
@toc "PatcGadget"

@{MS "Barlabel"}
@{code}

   This gadget allows to insert a titled bar!

 Template:

  TYPE/A/K,NAME/A/K

 Inputs:

  TYPE:    Must be BARLABEL!
  NAME:    Here you can specify the barlabels name. If you use one of the
           pre defined @{"words" link "PatcGadget"} the gadget name will be automatic
           translated into your language!

  
@endnode
@node "PatcChecksum" "The SGP File Format - CHECKSUM"
@toc "SGPFile"

@{MS "CHECKSUM"}

Many save games require no checksum and may be manipulated very easy! If you donīt understand how
this command is working then skip ist. You need knowledge of programming and a lot of experience to
do the right. Just playing around makes no sense.


 Template:


   START/K/A,END/K/A,DEST/K/A,ADD/K,SUB/K,EOR/K,ADDCARRY/K,SUBCARRY/K,STARTVALUE/K


 Function:


This command calculates the checkum of a specified area within the save game. This sounds easier
than it is! It will never possible to implement all possible checksum combinations.


Why there is a checksum? Well, programmers of games are saving time by calculating all data by a
specific formula. This will be checked during save game loading and if its not correct the game is
reporting the savegame is defect or empty. The reason is very easy. For example its possible to
collect a maximum of 99 coins. Why should the programmer take care of a value bigger than 99? During
the display operation no further check is done. A patched (or just damaged) save game may cause a
game to crash. A nice side effect is that the game is working a little faster, because there are no
savety checks.


I implemented this command to cheat the game by recalculation the checksum!


 Inputs:


  START      A Offset of the first byte of the checksum area.@{par}
  END          Offset of the first byte after the checksum area.@{par}
  DEST       A Offset of the checksum@{par}
  ADD        A Add values@{par}
  SUB        A Sub values@{par}
  EOR        A EOR values@{par}
  ADDCARRY   A Value to add on carry. (default=0)@{par}
  SUBCARRY   A Value to subtact on carry. (default=0)@{par}
  STARTVALUE   Start value for ADD, SUB and EOR mode (default=0)@{par}

 Examples:


  CHECKSUMM START L$1000 END $2000 DEST L$1004 ADD L0 ADDCARRY W1


Activates a four byte read mode from address $1000 (START L$1000) to $2000 (END $2000) and added
with a 32 bit add (ADD L0). Each carry overflow one is added to the lower word (ADDCARRY W1). The
result will be stored within the four bytes beginning at address $1004 (DEST L$1004).


  CHECKSUM Start L$023A End $6036 Dest L$023A EOR L0


Four byte read mode (START L$023a) and four byte eor (EOR L0) of each value until $6036 is reached
(END $6036). The result will be stored from $023a to $023d (DEST L$023a).


  CHECKSUM Start B$0236 End $0836 Dest W$07de Add W0 SUBCarry B1


Byte by byte Mode (START B$0236). Add bytes word wise (Add W0) and subtract one for each carry
overflow (SUBCarry B1). Destination for the checksum is the word starting at $7de (Dest W$07de).

@endnode
@node "PatcTool" "The SGP File Format - TOOL"
@toc "SGPFile"

@{MS "TOOL"}

Many save games require no checksum and may be manipulated very easy, but some are very complex or
contain a special checksumm. For this games I implemented the tool command!


 Template:


  FileName/A


 Function:


This command is running an @{"external program" link "SGTFile"} to patch the savegame.


 Inputs:


FileName:  Name of the @{"SGT File" link "SGTFile"} without path!! The SGT File must be located
within "Patches/SGT/" drawer!

@endnode
@node "SGTFile" "The SGT File Format"
@toc "SGPFile"

@{MS "The SGT File Format"}

SGT files are standard DOS Executables with a little header! For more information about the file
format consult the documentation @{"Bonus/Developer/SGT/SGT.doc" link "//Bonus/Developer/SGT/SGT.doc/MAIN"}

@endnode

@node "MCDB" "MCControl - MCDatabase"

@{MS "MCDatabase"}

MCDatabase is a little tool to create the MCDatabase.prefs stored in MCControls prefs drawer.


Why this data base? Until now it worked fine!


Yes, and its still working without, but the database contains additional information on Playstation
games. These information are used to make the usage of MCControl much easier!


   Example:


   "GC  1 WILLY   JUNGO      28:19"


Which game is this? I think you had the same problem before this a few of your games. By activating
the @{"special option" link "SettDBNa"} MCControl is using the name in the database instead of the
name delivered by the save game itself. The result looks like this:


   "Guardian's Crusade"


Much better I think!


The same happens when japanise games are using japanise letters to view the game name on
Playstation. This data chaos isnīt readable when using MCControl. By using the database "GCI i V" is
automaticaly converted into "Dead or Alive"!
@{code}

   @{"Introduction" link "MCDBIntr"}
   @{"The File Format" link "MCDBForm"}
   @{"Compiling the Database" link "MCDBComp"}
@endnode
@node "MCDBIntr" "MCDatabase - Introduction"
@toc "MCDB"

@{MS "Introduction"}

The format of the database wasnīt easy to invent. It should be fast and flexible to use for every
one. Thats why I decided to create a text based source format, which will be compiled into a new or
an existing database file. This allows me to change the real database format every day, without any
compatibly problems.


The databse can be found in the MCControl prefs drawer by the name "MCDatabase.prefs". Its the
normal IFF-PREF format.


By using the MCDatabase tool you are able to add new and modify existing games.


Itīs just required to create a test file by using any text editor. This file contains all
information for any game you want to change. These are the game names, game product ids and all
languages available within the the games. This text file is the key. Itīs irrelevant what format the
data base is using in the future, this text file stays valid forever and the only thing to do is to
complile the data into the database.

@endnode
@node "MCDBForm" "MCDatabase - The File Format"
@toc "MCDB"

@{MS "The File Format"}

Well, the file format is a simple text file. The first line must contain a comment and will no be
parsed. Beginning with the second line each line represents one game.


Each game line is parsed by using this normal dos template:


   "NAME/A,PRODUCTID/A,DEU/S,ENG/S,FRA/S,ESP/S,SVE/S,ITA/S,JAP/S,NED/S"


 Example:


;This is the first line and ignored by the parser!!!@{par}
"Ruff & Tumble (40 Winks)" SLES-01939 DEU@{par}
"S.C.A.R.S." SLES-01286 DEU ENG FRA ESP ITA@{par}

Important is that the game name is placed within quotation marks, like required for filenames
containing spaces. If the product id contains spaces, then here quotation marks are required, too!


The languages are the languages available within the game. If there is no language selection then
just specify the automaticaly used language.


Please @{b}always@{ub} specify @{"all languages" link "FAQSDBLanguages"}. If a language isnīt
available in my dos template, then let me know and Iīll implement this language. Without specifing
the languages MCControl isnīt able to view IDs like "DEU" or "FRA"!

@endnode
@node "MCDBComp" "MCDatabase - Compiling the Database"
@toc "MCDB"

@{MS "Compiling the Database"}

The required tool can be found in the "Bonus/MCDatabase"-drawer of your MCControl installation.


You are allowed to specify 3 arguments:


   DIFF/A,TO/A,FROM:


   DIFF    : Name of your text file containing the database changes.@{par}
   TO      : This is the destination name of the new/updated database!@{par}
   FROM    : Here you can specify an old data base as input. This is@{par}
              required when changing an existing data base. If nothing@{par}
              is specified here, then a complete new data base will be@{par}
              created containing only the games specified in your text@{par}
              file (DIFF).@{par}

   Examples:


@{b}I used MC: for the MCControl drawer, just to make the examples easier@{Ub}


Create a new data base containing all games specified in New.txt!


MCDDatabase t:New.txt t:MCDatabase.prefs


Change the delivered data base:


MCDDatabase t:New.txt t:MCDatabase.prefs MC:Prefs/MCDatabase.prefs


The old data base will be loaded and changed by the information specified in t:New.txt. After this
the data base is stored in the "T:" drawer.


@{b}Its possible to overwrite the database direct, but on a failure (e.g. a wrong ID caused
MCDatabase to overwrite an other game instead of creating a new one!) you may damage other data base
entries. Thats the reason why destination (TO) and source (FROM) should be different!@{ub}

@endnode

@node "DOSTemplate" "Using MCControl DOS Only"

@{MS "Using MCControl DOS Only"}

   @{"READ/K" link "ARG_READ"},@{"WRITE/K" link "ARG_WRITE"},@{"SLOT/N" link "ARG_SLOT"},@{"PROGRESS/S" link "ARG_PROGRESS"}

@endnode
@node "ARG_READ" "The DOS Arguments - Read/K"
@toc "DOSTemplate"

@{MS "Read/K"}

Here you can specify the filename to save the MemoryCard as. The file format is @{"MCD" link "SupportedFileTypes"}!

@endnode
@node "ARG_WRITE" "The DOS Arguments - Write/K"
@toc "DOSTemplate"

@{MS "Write/K"}

This gadget specifies the filename of the card image to store on MemoryCard. Any memory card file
format is valid, as long its holding a complete card!


@{b}It is possible to use @{"Read" link "ARG_READ"} and Write arguments together! In this case first
the MemoryCard is read and then overwritten by the new data.@{ub}

@endnode
@node "ARG_SLOT" "The DOS Arguments - Slot/N"
@toc "DOSTemplate"

@{MS "Slot/N"}

Here you can select the slot number for read/write action!

@endnode
@node "ARG_PROGRESS" "The DOS Arguments - Progress/S"
@toc "DOSTemplate"

@{MS "Progress/S"}

This switch enables the progress bar for reading and writing!

@endnode

@node "Index" "MCControl - Index"
@{code}

 #

 @{"#?.MCD files" link "SupportedFileTypes"}
 @{"#?.MEM files" link "SupportedFileTypes"}
 @{"#?.PSX files" link "SupportedFileTypes"}
 @{"#?.SGP files" link "SGPFile"}
 @{"#?.SGT files" link "SGTFile"}
 @{"#?.VGS files" link "SupportedFileTypes"}

 *

 @{"****   WANTED   ****" link "WANTED"}

 A

 @{"About window" link "Abou"}
 @{"Author" link "PatcAutr"}

 B

 @{"Bonus/Developer/SGT/SGT.doc" link "//Bonus/Developer/SGT/SGT.doc/MAIN"}
 @{"BoulderDäsh" link "OtherPrgs"}
 @{"Bug List" link "Buglist"}

 C

 @{"Card Settings Window" link "Card"}
 @{"CardReader" link "Hardware"}
 @{"Clean Up" link "MenuMultCaCU"}
 @{"Compiling the Database" link "MCDBComp"}
 @{"Complete Format" link "MenuMultCaFo"}
 @{"Compression" link "SettXPKP"}
 @{"Configuration" link "Sett"}

 D

 @{"Database" link "MCDB"}
 @{"Default Cards" link "SettDefa"}
 @{"Delete all Files" link "MenuMultGaDA"}
 @{"Delete File" link "MenuMultGaDe"}
 @{"Device selector" link "SettDevi"}
 @{"DexDrive Support" link "FAQSDexDrive"}
 @{"DexDrive" link "FAQSDexDrive"}
 @{"Distribution" link "Distribution"}
 @{"Download card" link "MultDoCa"}
 @{"Driver Info" link "SettInfo"}
 @{"Driver" link "SettDriv"}

 E

 @{"Edit Card" link "SettEdit"}
 @{"External Power Supply" link "FAQSExternalV"}

 F

 @{"FAQS" link "FAQS"}
 @{"Feature List" link "FeatureList"}
 @{"Filenames from Database" link "SettDBSN"}
 @{"Future" link "Future"}

 G

 @{"GUI Font" link "SettFont"}
 @{"GUI settings" link "SettShPG"}
 @{"GuideFormat" link "OtherPrgs"}

 H

 @{"Hardware" link "Hardware"}
 @{"History" link "History" 999}
 @{"How To Install" link "HowToInstall"}

 I

 @{"Icon mode" link "SettIcon"}
 @{"Introduction" link "Introduction"}
 @{"Introduction - MCDatabase" link "MCDBIntr"}
 @{"IRQ-Bridge" link "FAQSHardUpdate"}

 L

 @{"Link Block Information" link "SettLink"}

 M

 @{"Main Window" link "Mult"}
 @{"MCControl" link "MCControl"}
 @{"MCControlIRQBridge.mcm" link "SettDriv"}
 @{"MCD" link "SupportedFileTypes"}
 @{"MCDatabase" link "MCDB"}
 @{"MemoryCard test list" link "CardTest"}
 @{"MemoryCard - information about" link "FAQSMemoryCard"}
 @{"Multi Card Reader" link "SettNuSl"}
 @{"MultiPage End" link "CardMPEn"}
 @{"MultiPage Next" link "CardMPUp"}
 @{"MultiPage Previous" link "CardMPDn"}
 @{"MultiPage Start" link "CardMPSt"}
 @{"MultiTap - information about" link "FAQSMultiTap"}
 @{"My other amiga projects!" link "OtherPrgs"}

 N

 @{"Names from Database" link "SettDBNa"}
 @{"New Window" link "MenuMultNWin"}
 @{"Next Card Page" link "MenuMultCaNe"}

 O

 @{"Own games" link "FAQSMyGames"}

 P

 @{"Page: +1" link "MultP01U"}
 @{"Page: +10" link "MultP10U"}
 @{"Page: -1" link "MultP01D"}
 @{"Page: -10" link "MultP10D"}
 @{"Patch File..." link "MenuMultGaCo"}
 @{"Patch window" link "Patc"}
 @{"Personal card" link "SettYour"}
 @{"Picture: Author" link "/Pictures/Author.jpg/Main"}
 @{"Picture: Build connector" link "/Pictures/BuildConnector.ilbm/Main"}
 @{"Picture: DexDrive" link "/Pictures/DexDrive.ilbm/Main"}
 @{"Picture: Disk Port - Easy to build" link "/pictures/MCR_DiskPortEasy.ilbm/Main"}
 @{"Picture: Disk Port - Multi Slot Hardware" link "/Pictures/MCR_DiskPortMulti.ilbm/Main"}
 @{"Picture: Disk Port - Standard Circuit" link "/Pictures/MCR_DiskPort.ilbm/Main"}
 @{"Picture: Parallel Port - Easy to build" link "/pictures/MCR_ParallelPortEasy.ilbm/Main"}
 @{"Picture: Parallel Port - Multi Slot Hardware" link "/Pictures/MCR_ParallelPortMulti.ilbm/Main"}
 @{"Picture: Parallel Port - Standard Circuit" link "/Pictures/MCR_ParallelPort.ilbm/Main"}
 @{"Picture: Photo 1" link "/Pictures/MCR_Photo1.ilbm/Main"}
 @{"Picture: Photo 2" link "/Pictures/MCR_Photo2.ilbm/Main"}
 @{"Playstation game database (MCDatabase)" link "MCDB"}
 @{"Playstation - information about" link "FAQSPlaystation"}
 @{"Preferences" link "Sett"}
 @{"Previous Card Page" link "MenuMultCaPr"}
 @{"Product codes - information about" link "FAQSRegion"}
 @{"Product id - information about" link "FAQSRegion"}
 @{"PSX Games database" link "MCDB"}
 @{"PSXPort Support" link "FAQSDexDrive"}
 @{"PSXPort - information about" link "FAQSPSXPort"}
 @{"PSXPort.mcm" link "FAQSPSXPort"}

 Q

 @{"Quick access" link "SettQwik"}
 @{"Quick format" link "MenuMultCaFQ"}

 R

 @{"Read Directory" link "MultRDir"}
 @{"Region id - information about" link "FAQSRegion"}
 @{"Regions from Database" link "SettDBRe"}
 @{"Repair memory card" link "MenuMultCaRp"}
 @{"Retries" link "SettRetr"}

 S

 @{"Save all save games" link "MenuMultGaAL"}
 @{"Save Card" link "MenuSettSaCa"}
 @{"Save game converter" link "Patc"}
 @{"Save game icons" link "SettIcon"}
 @{"Save game manipulator" link "Patc"}
 @{"Save game patcher" link "Patc"}
 @{"Select ID" link "PatcSeID"}
 @{"Selected driver" link "SettDriv"}
 @{"Set Filenote" link "SettFiNo"}
 @{"Set the file comment" link "SettFiNo"}
 @{"Settings window" link "Sett"}
 @{"SGP file" link "SGPFile"}
 @{"SGP Strings" link "PatcGadget"}
 @{"SGP Window" link "Patc"}
 @{"SGT File" link "SGTFile"}
 @{"Shiner  Project" link "FAQSShineR"}
 @{"ShineR project" link "FAQSShineR"}
 @{"ShineR - information about" link "FAQSShineR"}
 @{"Show Page Gadgets" link "SettShPG"}
 @{"Speed Format" link "MenuMultCaFQ"}
 @{"Supported Filetypes" link "SupportedFileTypes"}
 @{"System Requirements" link "SystemRequirements"}

 T

 @{"Thanx" link "Thanx"}
 @{"The About Window" link "Abou"}
 @{"The Author" link "Author"}
 @{"The Card Preferences" link "Card"}
 @{"The MCDB File Format" link "MCDBForm"}
 @{"The Main Window" link "Mult"}
 @{"The Preferences" link "Sett"}
 @{"The PSX says my card isnīt formated, but...! Why?" link "FAQSFormat"}
 @{"The required Hardware" link "Hardware"}
 @{"The Save Game Converter" link "Patc"}
 @{"The SGP file format" link "SGPFile"}

 U

 @{"Undelete all Files" link "MenuMultGaUA"}
 @{"Undelete File" link "MenuMultGaUD"}
 @{"Upload Card" link "MultUpCa"}

 W

 @{"Want to buy list" link "wanted"}
 @{"What are the external power supply specifications?" link "FAQSExternalV"}
 @{"What card reader do you own?" link "FAQSMyReader"}
 @{"What hardware changes were made since V1.40?" link "FAQSHardUpdate"}
 @{"What is a DexDrive" link "FAQSDexDrive"}
 @{"What is a MemoryCard?" link "FAQSMemoryCard"}
 @{"What is a MultiTap?" link "FAQSMultiTap"}
 @{"What is a Playstation?" link "FAQSPlaystation"}
 @{"What is a Region or Productcode?" link "FAQSRegion"}
 @{"What is a ShineR" link "FAQSShineR"}
 @{"What is PSXPort?" link "FAQSPSXPort"}
 @{"What is the MemoryCard capacity?" link "FAQSMemoryCardSpace"}
 @{"What PSX controller do you own?" link "FAQSMyCtrl"}
 @{"What PSX games do you own?" link "FAQSMyGames"}
 @{"Where can I get save games?" link "FAQSSGWhere"}
 @{"Why it is required to include languages into the MCdatabase?" link "FAQSDBLanguages"}
 @{"Why my Diskport-Reader isnīt working?" link "FAQSDiskPortNW"}

 X

 @{"XPK Compression" link "SettXPKP"}
 @{"XPK Method" link "SettXPKM"}

 Y

 @{"Your Cards" link "SettYOUR"}
 @{"Your personal list" link "SETTYOUR"}

@endnode

