Open main menu

Difference between revisions of "DEV7 Information"

m
mention v1.10 changelog changes
m (added new Debug Infos for MAC)
m (mention v1.10 changelog changes)
 
(216 intermediate revisions by the same user not shown)
Line 2: Line 2:
*DEV7 was developed by I.C.E Development for [[Coktel Vision]].
*DEV7 was developed by I.C.E Development for [[Coktel Vision]].
*The Development began in the year 2000 (first known version of DEV7)
*The Development began in the year 2000 (first known version of DEV7)
===Contact===
* Stéphane Allégro at stephane.allegro@vup-interactive.com (found in LOADER7.EXE / Dev7VM.EXE)
* Mathieu Legay at mathieu.legay@havas-interactive.com (found in a5c_robot3d.obc)


===Mindscape===
===Mindscape===
Line 15: Line 19:


===Changelog===
===Changelog===
Unknown former version before 1.0.0.0 known as 1.0


1.0.0.0
1.0.0.0
* uses an old Design of the Debug Menu.
* implemented the first Debug Menu.
* implement HTML into the Engine.
* Some 1.0.0.0 EXE's requires the CD at all to start up the Game.
----
----
1.1.0.0
1.1.0.0
* changed the Design of the Debug Menu to run, and also include new Feature for it.
* changed the Design of the Debug Menu to run, and also include new Feature for it.
* Added Error window to DEV7
* Use the first time the Name Dev7VM in the executable not as original name but instead as the name for the Window called: IDD_DEV7VM_ERRORWINDOW
----
----
1.2.0.0
1.2.0.0
Line 27: Line 37:
* a new Uninstaller (UNINST.EXE) is used by 1.2.0.0 aswell.
* a new Uninstaller (UNINST.EXE) is used by 1.2.0.0 aswell.
* Also uses a new UNINST.INF for the uninstalling the Game.
* Also uses a new UNINST.INF for the uninstalling the Game.
* changed VMD file format (previous versions are able to play in VLC or converted into MP3 / MP4 via [https://github.com/DerCodeDev/VMDConverter/releases VMDConverter])
----
----


Line 37: Line 48:
* adds a newer version of msg.def.  
* adds a newer version of msg.def.  
* added [https://wiki.scummvm.org/index.php?title=Atlas#Booster_Code BoosterCode] to some Application Discs.
* added [https://wiki.scummvm.org/index.php?title=Atlas#Booster_Code BoosterCode] to some Application Discs.
* added a Screen if mdo.ini is not found it bring up this Message:"Dev7VM File'MDO.INI' not found !
* implemented a check if mdo.ini exists if not it bring up this Message:"Dev7VM File'MDO.INI' not found !
* added Screen for if you add to the LOADER7.EXE / Dev7VM.EXE a Parameter that is not existing in DEV7 it give you this message:"Dev7VM File'The Parameter you typed in.' not found !
* added Screen for if you add to the LOADER7.EXE / Dev7VM.EXE a Parameter that is not existing in DEV7 it give you this message:"Dev7VM File'The Parameter you typed in.' not found !
* added Screen for if the starting OBC isn't found in the STK File, it gives you then this Message: "No starting OBC specified in file 'Filename of STK'."
* added Screen for if the starting OBC isn't found in the STK File, it gives you then this Message: "No starting OBC specified in file 'Filename of STK'."
* added to the Debug Menu screen written in the left corner on the bottom.
* use as default the icon of DEV7 instead of what the Game wants to use.
* Original Filename of LOADER7.EXE was Dev7VM.EXE in Development of version 1.3.0.0
----
----


Line 55: Line 69:
* D:\developpment\DEV7\loader7\Release\loader7.pdb  (German version Adi 5 1.1.0.0)
* D:\developpment\DEV7\loader7\Release\loader7.pdb  (German version Adi 5 1.1.0.0)
* C:\Base KATEGO\Developpment\DEV7\loader7\Release\loader7.pdb (French version Adiboud'chou la a mer)
* C:\Base KATEGO\Developpment\DEV7\loader7\Release\loader7.pdb (French version Adiboud'chou la a mer)
* C:\AdiGold500\Developpment\DEV7\loader7\Release\loader7.pdb (French version Adi 5 version 5.01)
* D:\sourcesafe\DEV7\loader7\Release\loader7.pdb (French non interactive demo of Adibou 2)
* E:\Development\SourceSafe Bases\Base C\Developpment\DEV7\Loader7\Release\loader7.pdb (Nathan vacances du CE2 vers le CM1 1.00)


===Compiler===
===Compiler===
* As Compiler is Intel(R) C++ Compiler for 32-bit applications in version 5.0.1 Build 010922Z used with Visual Studio 6.0.
* Former versions (1.0.0.0,1.1.0.0,.1.2.0.0 (not the 1.20a release) used standalone Visual Studio 6.0 build 8168)
* DEV7 1.3.0.0 is using various Compiler flags: -I -O2 -Ob2 -G6 -Qvc6 -Qlocation -MT -DWIN32 -c -Fo -D_WINDOWS -Iinclude -DCURE_SOFT_USE_TILETMAP
* Intel Compiler was initially used in version 1.20a of Loader7.exe
* Later versions of LOADER7 used Intel(R) C++ Compiler for 32-bit applications in version 5.0.1 Build 010922Z used with Visual Studio 6.0 build 8168 (SP5) as Compiler.
* OS used to compile DEV7 1.3.0.0 was Windows 2000 Professional (SP2)
* DEV7 1.3.0.0 (1.30, 1.30a, 1.30b) is using various Compiler flags: -I -O2 -Ob2 -G6 -Qvc6 -Qlocation -MT -DWIN32 -c -Fo -D_WINDOWS -Iinclude -DCURE_SOFT_USE_TILETMAP
* DEV7 1.20a used this Compiler flags: DPOLYFILLER_USE_RENDER_555ASM -DPOLYFILLER_USE_RENDER_555C -DPOLYFILLER_USE_RENDER_888
* Older DEV7 version (most likely 1.0.0.0) used the /MAP flag to generate an Loader7.map debug symbol file.
* used CPP files in the Compiler: CVMDDecoder.cpp, C2DSurfaceFill.cpp, C2DSurfaceBitBlt.cpp, AudioDecompressor.cpp, CUREImage.cpp, MUtilsSqrt.cpp, MUtilsMatrix.cpp, MUtilsQuaternion.cpp, AudioCompressor.cpp, mmxMemcpy.cpp, C2DSurfacePixel.cpp, C2DSurfaceCopy.cpp, C2DSurfaceMove.cpp, C2DSurfaceBlend.cpp, AudioAdpcmCodec.cpp, CUREImageQuant.cpp, scanline_ArbitraryTextureAlone.cpp, scanline_Flat.cpp, scanline_Gouraud.cpp, scanline_TextureAffine.cpp, scanline_TextureAffineGouraud.cpp, scanline_TextureCorrected.cpp, scanline_TextureCorrectedGouraud.cpp, scanline_ZBuffer.cpp, MUtils.cpp, CUREImageScale.cpp, ObjectNodeCollide.cpp, OctreeQuant.cpp, OctreeQuantDither.cpp, ModelSphere.cpp, ModelTriangle.cpp, ModelBox.cpp, ModelSphereCollide.cpp, ModelBoxCollide.cpp, ModelTriangleCollide.cpp, OBBTreeCollide.cpp
* used CPP files in the Compiler: CVMDDecoder.cpp, C2DSurfaceFill.cpp, C2DSurfaceBitBlt.cpp, AudioDecompressor.cpp, CUREImage.cpp, MUtilsSqrt.cpp, MUtilsMatrix.cpp, MUtilsQuaternion.cpp, AudioCompressor.cpp, mmxMemcpy.cpp, C2DSurfacePixel.cpp, C2DSurfaceCopy.cpp, C2DSurfaceMove.cpp, C2DSurfaceBlend.cpp, AudioAdpcmCodec.cpp, CUREImageQuant.cpp, scanline_ArbitraryTextureAlone.cpp, scanline_Flat.cpp, scanline_Gouraud.cpp, scanline_TextureAffine.cpp, scanline_TextureAffineGouraud.cpp, scanline_TextureCorrected.cpp, scanline_TextureCorrectedGouraud.cpp, scanline_ZBuffer.cpp, MUtils.cpp, CUREImageScale.cpp, ObjectNodeCollide.cpp, OctreeQuant.cpp, OctreeQuantDither.cpp, ModelSphere.cpp, ModelTriangle.cpp, ModelBox.cpp, ModelSphereCollide.cpp, ModelBoxCollide.cpp, ModelTriangleCollide.cpp, OBBTreeCollide.cpp
* LOADER7.exe / Dev7VM.exe was built for NT version 4.0 and still works without any issues under Windows 11.
* LOADER7.exe / Dev7VM.exe was built for NT version 4.0 and still works without any issues under Windows 11.
Folder structre were the CPP files was stored for the compiling process:
* CVMDDecoder.cpp (stored in .\source\) (Decoder for VMD)
* C2DSurfaceFill.cpp  (stored in .\source\)
* C2DSurfaceBitBlt.cpp (stored in .\source\)
* AudioDecompressor.cpp (stored in .\source\com)
* CUREImage.cpp (stored in .\source\)
* MUtilsSqrt.cpp (stored in .\source\core)
* MUtilsMatrix.cpp (stored in .\source\core)
* MUtilsQuaternion.cpp (stored in .\source\core)
* AudioCompressor.cpp (stored in .\source\)
* mmxMemcpy.cpp (stored in .\source\)
* C2DSurfacePrimitives.cpp (stored in .\source\)
* C2DSurfaceCopy.cpp (stored in .\source\)
* C2DSurfaceMove.cpp (stored in .\source\)
* C2DSurfaceBlend.cpp (stored in .\source\)
* AudioAdpcmCodec.cpp (stored in .\source\) (ADPCM Audio Codec)
* CUREImageQuant.cpp (stored in .\source\com)
* scanline_ArbitraryTextureAlone.cpp (stored in .\source\software\PFillers\)
* scanline_Flat.cpp (stored in .\source\software\PFillers\)
* scanline_Gouraud.cpp (stored in .\source\software\PFillers\)
* scanline_TextureAffine.cpp (stored in .\source\software\PFillers\)
* scanline_TextureCorrected.cpp (stored in .\source\software\PFillers\)
* scanline_TextureCorrectedGouraud.cpp (stored in .\source\software\PFillers\)
* scanline_ZBuffer.cpp (stored in .\source\software\PFillers\)
* CUREImageScale.cpp (stored in .\source\com) (Used for Image Scaling in CURE files)
* ObjectNodeCollide.cpp (stored in .\source\core)
* OctreeQuant.cpp (stored in .\source\com)
* OctreeQuantDither.cpp (stored in .\source\com)
* ModelSphere.cpp (stored in .\source\core)
* ModelTriangle.cpp (stored in .\source\core)
* ModelBox.cpp (stored in .\source\core)
* ModelSphereCollide.cpp (stored in .\source\core)
* ModelBoxCollide.cpp (stored in .\source\core)
* ModelTriangleCollide.cpp (stored in .\source\core)
* OBBTreeCollide.cpp (stored in .\source\core)
Project names of Visual Studio:
* loader7
* DEV7
* Dev7VM_Alone


===CPP Files===
===CPP Files===
* This is List is unrelated to the CPP Files of the Compiler section. Some of the CPP files are from the Mac version.
This List is unrelated to the CPP Files of the Compiler section. Some of the CPP files are from the Mac version.
* Zones.cpp (maybe for Zones from the Debug Menu)
* Zones.cpp (maybe for Zones from the Debug Menu)
* Vcdrom.cpp (This stores the Code for a Virtual CD-Drive)
* Vcdrom.cpp (This stores the Code for a Virtual CD-Drive)
Line 69: Line 131:
* TWindowsProfileParser.cpp
* TWindowsProfileParser.cpp
* TreeINI.cpp
* TreeINI.cpp
* TimerMAC.cpp ()
* TimerMAC.cpp
* Stk.cpp
* Stk.cpp (handles the code for STK21)
* Regions.cpp
* Regions.cpp
* RecordSessionsMAC.cpp (this records the Session how often you started the Game)
* RecordSessionsMAC.cpp (this records the Session how often you started the Game)
* ReadINI.cpp
* ReadINI.cpp (for reading the INI files)
* newfont.cpp
* newfont.cpp (this is used for the LET fonts)
* NetMAC.cpp
* NetMAC.cpp
* MDOTTS.cpp (probably for Text to Speech)
* MDOTTS.cpp (probably for Text to Speech)
Line 80: Line 142:
* MDOReadINI.cpp
* MDOReadINI.cpp
* MDOMemoryMAC.cpp
* MDOMemoryMAC.cpp
* LoadImage.cpp
* LoadImage.cpp (for loading Images (.IMG) files)
* ExeSound.cpp
* ExeSound.cpp
* DrivesMAC.cpp
* DrivesMAC.cpp
Line 94: Line 156:
* DevKey.cpp
* DevKey.cpp
* DevIdle.cpp
* DevIdle.cpp
* DevCFS.cpp
* DevCFS.cpp (contains the main code for CFS)
* DevCall.cpp
* DevCall.cpp (Callbacks for DEV7)
* Dev3dTools.cpp
* Dev3dTools.cpp
* Dev3dAnim.cpp
* Dev3dAnim.cpp
* DebugWindowsMAC.cpp
* DebugWindowsMAC.cpp (Debug Menu of DEV7)
* CelineFileClient.cpp
* CelineFileClient.cpp (this is for the client of CFS)
* TrackMAC.cpp
* TrackMAC.cpp
* UMACSounds.cpp
* DObj.cpp
* LHCodec.cpp (was used to compile St500f22.dll see [https://wiki.scummvm.org/index.php?title=DEV7_Information#Audio_Coder Audio Coder]) (C# version can be found [https://github.com/lightningviper/lightningstools/blob/master/src/F4Utils/Speech/LHCodec.cs here])
* DriveGestion.cpp
===C Files===
* vmd.c (contains the main code for VMD)
* Adapt24.c (found in msg.def)
* more_24.c (found in msg.def)
* more_gr.c (found in msg.def)
* moredbl.c (found in msg.def)
* vesa32.c (found in msg.def)
===Header Files===
*UMacSounds.h
===SourceSafe===
* Visual SourceSafe 6.0 was used for some versions of DEV7.
* Developer RaphaelT used SourceSafe for Adi 5's Fileupdater called CelineFileUpdater (CFS), see Leftovers (Developer)
* SourceSafe was aswell used for storing compiled versions of LOADER7.EXE / Dev7VM.EXE including the Project itself & PDB files. see Debug EXE files
===SmartHeap===
* SmartHeap is an Memory Management Library.
* Version: 5.0
* Year: 1999
* Architecture: x86 (Win32)
* Known as: Memory Management Library for Win32
* Found in: Adibou 3's Applications (HocusPocus/English) (Nature/Sciences)
* Developed by: MicroQuill
* stored in Shw32.dll
===UCL===
* UCL real-time data compression library
* Compilation Options:
**  UCL_BYTE_ORDER=1234
** UCL_UNALIGNED_OK_2
** UCL_UNALIGNED_OK_4
** UCL_DICT_USE_PTR


===Tools===
===Tools===
* GitHub Repository for DEV7 Tools can be found [https://github.com/BJNFNE/DEV7 here]
* GitHub Repository for DEV7 Tools can be found [https://github.com/BJNFNE/DEV7 here]
* [https://github.com/BJNFNE/DEV7/tree/master/LOADER7VC LOADER7VC] shows you which version your LOADER7.exe / Dev7VM.exe is.
* [https://github.com/BJNFNE/DEV7/releases/tag/LOADER7VC LOADER7VC] shows you which version your LOADER7.exe / Dev7VM.exe is.
* [https://github.com/BJNFNE/DEV7/tree/master/DecompOBC DecompOBC] decompiles the OBC Scripts into readable Text.
* [https://github.com/BJNFNE/DEV7/releases/tag/OBCViewer OBCViewer] shows the OBC Scripts in an readable Text.
 
===CFS===
* CFS stands for Celine File Server
** Maybe developed by Céline Leger
 
* Text Files
** LogCfsUpdater.txt (contains the Log about the Update)
 
* CFS files
** update.cfs (contains the main Update that gets recviced from the CFS Server)
** status.cfs
 
* Commands / Parameter
** <ME>ADICelineFileUpdater.exe -CtrlFile <ME>PckC\\Update.cfs
** <ME>ADICelineFileUpdater.exe -Ct (used for continue the Update)
** -ini can be added to use an config (example: -ini ADICelineFileUpdater.ini)
** -work <ME> (<ME> is something like an Path variable, to easier navigate to the files)
 
[Placeholder: not sure how this is called]
** CONNECTION INFO
* DateOfLastConnection (show when the last connection was established to CFS)
* NbPackagesToUpdate
** HEADER
* ValidStatusFileFlag (checks if the Flag for status.cfs is valid)
** CONTENT
* Priority
* Behaviour
* InUpdateMode (is when the Update is in progress)
* TransferState (is maybe for when the Update gets transferred from the Server to the CFS client)
** Directories
* PckCPath (is for the PckC folder)
* OldPath
** General Info
* QuitAndRelanchWhenUpdate (quits the Game / Engine and restart it when the Update is done)
* NbPackagesToUpdate
** ReturnCommand
* CommandFilenameWithPath
* CommandWorkingDir
 
* Callbacks
** Callback.Exec_RetrieveUpdatedFiles
 
* Functions
** MODULE.ExitUpdateExitUpdate()
** Config().UpdateVersionModule (used for check the Version module from the Game.)
 
* CFS were most likely hosted on Windows 2000


===Versions===
===Versions===
* former version in strings known as LOADER version 1.0 (Release 2000)
* 1.0.0.0 (Release 2000) first release of DEV7 (first came out with ADIBOUd' CHOU)
* 1.0.0.0 (Release 2000) first release of DEV7 (first came out with ADIBOUd' CHOU)
* 1.1.0.0 (Release 2001) (came with Adibou presente & ADI5)
* 1.1.0.0 (Release 2001) (came with Adibou presente & ADI5)
* 1.2.0.0 (Release 2001 used until 2002)
* 1.2.0.0 (Release 2001 used until 2002)
* 1.3.0.0 (Release 2002) Latest known Version of DEV7
* 1.3.0.0 (Release 2002) Latest known Version of DEV7
1.2.0.0 different variants:
* loader7.exe Name: Loader 7 Build date: 25.06.2001 13:38:20
* loader7.exe Name: Loader7 v1.20a Build date: 20.02.2002 18:19:06
----
----
1.3.0.0 different variants
1.3.0.0 different variants:
* loader7.exe (Dev7VM.exe) Name: Dev7 VM Build date: 03.07.2002 16:07
* loader7.exe (Dev7VM.exe) Name: Dev7 VM Build date: 03.07.2002 16:07
* loader7.exe (Dev7VM.exe) Name: Dev7 VM v1.30a Build date: 14.08.2002 14:58
* loader7.exe (Dev7VM.exe) Name: Dev7 VM v1.30a Build date: 14.08.2002 14:58
* loader7.exe (Dev7VM.exe) Name: Dev7 VM v1.30b Build date: 29.08.2002 16:04
* loader7.exe (Dev7VM.exe) Name: Dev7 VM v1.30b Build date: 29.08.2002 16:04
----
----
===Leftovers (Developer)===
* C:\Users\RaphaelT\My DEV7\DEV\PckC\Trace.txt (leftover Path in a LOADER7.EXE called DEMO.EXE)
* C:\Users\RaphaelT\SSAFE\Developpment\Servers\Adi5\ADICelineFileUpdater\Debug\ADICelineFileUpdater.exe -ini ADICelineFileUpdater.ini -work <ME>
===CLEANER.BAT===
* CLEANER.BAT's code was discovered in UNINST.EXE (Uninstaller of the Games), the Program was calling the Batch file aswell, but it was never shipped with the Games.
[https://github.com/BJNFNE/DEV7/blob/tools/CLEANER/CLEANER.BAT Code of CLEANER.BAT]


===Icons===
===Icons===
Line 130: Line 289:
*LoaderMDO (Loader7.exe of Adibou'CHOU à la mer)  
*LoaderMDO (Loader7.exe of Adibou'CHOU à la mer)  
*Loader 7 (Loader7.exe of Adibou'CHOU)
*Loader 7 (Loader7.exe of Adibou'CHOU)
*Loader 7 v1.20a
*Loader 7 v1.10a (LOADER7.exe of ADDY5 & Adibou presente)
*Loader 7 v1.10a (LOADER7.exe of ADDY5 & Adibou presente)
* Dev7 VM (LOADER7.exe of Adibou 3 3.10)
*Dev7 VM (LOADER7.exe of Adibou 3 3.10)
*Dev7 VM v1.30a (LOADER7.exe of АНТОШКА 3 3.10)
*Dev7 VM v1.30a (LOADER7.exe of АНТОШКА 3 3.10)
*Dev7 VM v1.30b (LOADER7.exe of Adiboo3 3.10)
*Dev7 VM v1.30b (LOADER7.exe of Adiboo3 3.10)
Line 143: Line 303:
* 1.3.0.0 LOADER7.exe (Originalname Dev7VM.exe)
* 1.3.0.0 LOADER7.exe (Originalname Dev7VM.exe)


===File Infos===
===LOADER7 / Dev7VM EXE Checksum/Size Info===
*LOADER7 (1.2.0.0 German Adiboo3) Filesize:1785928 MD5:b0eb4273c71729ed749cd3003ab99c1e
*LOADER7 (1.2.0.0 German Adiboo3) Filesize:1785928 MD5:b0eb4273c71729ed749cd3003ab99c1e
*LOADER7 (1.3.0.0 German Demo Adibou3 Dev7VM.exe) Filesize:2383940 MD5:0d8f2c8b7da9ae97ad28001332981383
*LOADER7 (1.3.0.0 German Demo Adibou3 Dev7VM.exe) Filesize:2383940 MD5:0d8f2c8b7da9ae97ad28001332981383
Line 150: Line 310:
*LOADER7 (1.1.0.0 French Adibou presente Dessin) Filesize:1785921 MD5:046e0729e6ca966cd0c8017ae7943eaf
*LOADER7 (1.1.0.0 French Adibou presente Dessin) Filesize:1785921 MD5:046e0729e6ca966cd0c8017ae7943eaf
*LOADER7 (1.1.0.0 German Adi 5) Filesize:1785921 MD5:046e0729e6ca966cd0c8017ae7943eaf
*LOADER7 (1.1.0.0 German Adi 5) Filesize:1785921 MD5:046e0729e6ca966cd0c8017ae7943eaf
*LOADER7 (1.0.0.0 German Adiboud'chou a la mer) Filesize:1507405 MD5:95343564215586fe585b8111799f2afe
*LOADER7 (unknown German Adiboud'chou sur la banquise) Filesize:1609800 MD5:56fbfa4e3e7e88555fd4245030a09feb
*DEMO.EXE (French non interactive demo of Adibou 2) Filesize:1503295 MD5:0d9a122651cdbc29f1f67ca91814961d
*loader7 (unknown German ADDY5 Mathe Demo) Filesize:1552461 MD5:407e45dbeff8537de45b80192ff3136f
*loader7 (German version Adiboud'chou dans la jungle et la savane) Filesize:1960099 MD5:dc8742b6fffb217f28b2cc7fb35c6807
*LOADER7 (1.0.0.0 unknown German Adiboud'chou sur la banquise) Filesize:2051539 MD5:0f7ff935416f6f26fc490a8c4fc6b3f5


===File Formats===  
===File Formats===  
Line 161: Line 327:
* INF is storing Configurations like for the Installer / Uninstaller. and storing also some Informations for the Games.
* INF is storing Configurations like for the Installer / Uninstaller. and storing also some Informations for the Games.
* INI is storing also Informations for the Game like mdo.ini or in general INI files that are stored in ITK Files.
* INI is storing also Informations for the Game like mdo.ini or in general INI files that are stored in ITK Files.
* DBF is the database for the Text for Buttons.
* MESH is for the 3D Collision.
* CTRK are used for the rotation.
* CURE is the configuration file for the Mesh files.


===Registry===
===Registry===
Line 228: Line 398:
*OBC was developed in the Year 1999 by MDO (Coktel Vision's Programmer)
*OBC was developed in the Year 1999 by MDO (Coktel Vision's Programmer)
*OBC is also known as Compiled DEV7 object
*OBC is also known as Compiled DEV7 object
*OBC is similar from the beginning to TOT, if OBC and TOT is side by side compared you can see at the beginning that both has a Copyright Year included.
*Each OBC Script contains a unique ID, its created out of the Year (first 4 numbers) then Month (next 2 numbers) the last are not yet sure.
----
* OBC Functions
** DecObcLoadRef() (most likely stands for Decode OBC Load Reference)
----
----
*OBC Script names:
*OBC Script names:
Line 287: Line 462:
* SOUNDTRACK happens when Adibou or his Friend speaks / explains something.
* SOUNDTRACK happens when Adibou or his Friend speaks / explains something.
* LAYERITEMSANIMATION happens when an Animation is playing.
* LAYERITEMSANIMATION happens when an Animation is playing.
===STK21 File Structure===
* STK/files always starts with the version numbersomething like: STK2.1 or STK2.0 (STK2.1 stands for version 2.1 but if it stands like STK2.0 its using version 2.0)
* The rest after the STK2.X is the signature itself.
* The ID is also stored randomly in the STK files (most likely at the end of the file.)


===Debug Menus===
===Debug Menus===
Line 294: Line 474:


===Games===
===Games===
* ADIBOUd' CHOU uses DEV7 (V1.0.0.0)
* ADIBOUd' CHOU uses DEV7 (V1.0.0.0 and former version)
* [[Adibou 3| Adiboo3]] & [[Adibou 3|Adibou3]] uses DEV7 (V1.2.0.0 when you are using Version 3.00 of Adiboo3 / Adibou3 but when you upgrade the Game to Version 3.10 you have V1.3.0.0)
* [[Adibou 3| Adiboo3]] & [[Adibou 3|Adibou3]] uses DEV7 (V1.2.0.0 when you are using Version 3.00 of Adiboo3 / Adibou3 but when you upgrade the Game to Version 3.10 you have V1.3.0.0)
* Addy5 & Adi5 uses DEV7 (V1.1.0.0)
* Addy5 & Adi5 uses DEV7 (V1.1.0.0)
Line 300: Line 480:
* Adibou presente Dessin (V1.1.0.0)
* Adibou presente Dessin (V1.1.0.0)
* Le pays des pierres Magiques (V1.2.0.0)
* Le pays des pierres Magiques (V1.2.0.0)
* Nathan vacances CE2 (V1.20a)
=== Game Internal Versions===
* Adibou 3's Drawing Pad is using beta1.2
===Alpha Games===
* Adibou presente Dessin
** Version 0.90


===SETUP.EXE 2026 Error===
===SETUP.EXE 2026 Error===
Line 310: Line 498:


===SYSTEM.EXE===
===SYSTEM.EXE===
*SYSTEM.EXE is the Copy Protection of the DEV7 Games, [[Coktel Vision]] used back then SecuROM to protect their Games.
*SYSTEM.EXE was later the Copy Protection of the DEV7 Games, [[Coktel Vision]] used back then SecuROM to protect their Games.
Versions:
* Versions:
*SecuROM *new* V4.83.11.0005 used by Adiboo 3 German version (Music Application)
** SecuROM *new* V4.83.11.0005 used by Adiboo 3 German version (Music Application)
*SecuROM *new* V4.83.11.0005 used by Adiboo 3 German version (Nature Application)
** SecuROM *new* V4.83.11.0005 used by Adiboo 3 German version (Nature Application)
*SecuROM *new* V4.00.00.0019 used by Adiboo 3 German version (Read & Count 6 -7 years Application)
** SecuROM *new* V4.00.00.0019 used by Adiboo 3 German version (Read & Count 6 -7 years Application)
*SecuROM *new* V4.00.00.0019 used by Adiboo 3 German version (Read & Count Application)
** SecuROM *new* V4.00.00.0019 used by Adiboo 3 German version (Read & Count Application)
*SecuROM *new* V4.83.11.0005 used by Adiboo 3 German version (English Hocus Pocus Application)
** SecuROM *new* V4.83.11.0005 used by Adiboo 3 German version (English Hocus Pocus Application)
*SecuROM *new* V4.00.00.0019 used by Adibou 3 French version (Read & Count Application)
** SecuROM *new* V4.00.00.0019 used by Adibou 3 French version (Read & Count Application)
*SecuROM *new* V4.68.00.0021 used by Adibou 3 French version (Nature Application)
** SecuROM *new* V4.68.00.0021 used by Adibou 3 French version (Nature Application)
*SecuROM *new* V4.83.11.0005 is used by Adi 5 German version (German Class 7+8 Application)
** SecuROM *new* V4.83.11.0005 is used by Adi 5 German version (German Class 7+8 Application)
*SecuROM *new* V4.83.11.0005 is used by Adi 5 German version (German Class 1+2 Application)
** SecuROM *new* V4.83.11.0005 is used by Adi 5 German version (German Class 1+2 Application)
 
* SYSTEM.EXE is an unlicensed version, The License expired at December 2002.
* Some SYSTEM.EXE's are compressed with Petite.


===Parameter ===
===Parameter ===
Line 401: Line 592:
*Information sourced from AdibouLand.com (Wayback Machine)
*Information sourced from AdibouLand.com (Wayback Machine)
*Supposed to be based on PHP 4.1.
*Supposed to be based on PHP 4.1.
*HTTP version 1.1


Server Connection for AdibouNet:
Server Connection for AdibouNet:
Line 433: Line 625:
----
----
* DEV7 had a Plugin for the WebBrowser called: NPDev7VM in version 1.0.0.8. which got downloaded over a OBC Script: B3I_EM_Download.obc, it was downloaded over cftp.
* DEV7 had a Plugin for the WebBrowser called: NPDev7VM in version 1.0.0.8. which got downloaded over a OBC Script: B3I_EM_Download.obc, it was downloaded over cftp.
* OBC Script downloaded over cftp aswell: cftp://mail.fr.adi5.net:6690/B3I_em (OBC name: B3I_EM_Download.obc)
* type of application is: application/x-loader7-plugin
==AdiSpace==
German:
*[GENERAL]
*Club="http://www.clubadi.de.adiland.com/"
*ParentSpace="http://www.parents.de.adiland.com/"
*ParentRegister="http://www.subscription.de.adiland.com/"
*[Portal]
*NbPortalServer=1
*PortalIp1=portal1.de.adi5.net
*PortalPort1=3100
French:
*[GENERAL]
*Club="http://www.clubadi.fr.adiland.com"
*ParentSpace="http://www.parents.fr.adiland.com"
*ParentRegister="http://www.subscription.fr.adiland.com"
*[Portal]
*NbPortalServer=3
*PortalIp1=portal1.fr.adi5.net
*PortalPort1=3000
*PortalIp2=portal2.fr.adi5.net
*PortalPort2=3000
*PortalIp3=portal3.fr.adi5.net
*PortalPort3=3000


==WebBrowser==
==WebBrowser==
Line 458: Line 677:
*cftp was used for downloading OBC Scripts for AdibouNet.
*cftp was used for downloading OBC Scripts for AdibouNet.


==SpeechCube==
==TTS (Text to Speech)==
*SpeechCube is a TTS client that came with Adibou 3 & Adi 5
* SpeechCube is a TTS client that came with Adibou 3 & Adi 5
 
* Company: ELAN & HAVAS
*Company: ELAN
* Version: 2.1.0.4 ()
*Version: 2.1.0.4
* Year 1999
*Year 1999
* Voices
** DAGMAR16
* TTS Files contains text for the TTS client.
* Handlers:
** MyVoiceHandler
* Callbacks:
** TTSAudioStop: EndSayRobot
* SayTTS shows which tts file is calling for speaking the required Text.
* DLLS:
** SCUBEGUI.DLL (contains the code for the GUI of Speech Cube, including the Text of the Buttons and Dialogs.)
** SPEECHCUBE.DLL (contains an Mutex (SCube Mutex) Debug Infos (pTTSMode->BaseSpeed, pTTSMode->BasePitch) Parameters to SpeechCube (SpeechCube /nogui /autoexit) Server Infos (127.0.0.1))
* SPEECHCUBE.EXE
** PDB: I:\ELAN4406\Project6\scubeserver\Release\SpeechCube.pdb


==Debug Infos from LOADER7.exe==
==Debug Infos from LOADER7.exe==
* vmd.c::ReadFrame()  AssignColorsPtr was deleted by me!!!
* vmd.c::ReadFrame()  AssignColorsPtr was deleted by me!!! (stored in vmd.c)
* vmd.c::ReadFrame()  pBloc->Mode & VMD_GR_PAL ---> code deleted !
* vmd.c::ReadFrame()  pBloc->Mode & VMD_GR_PAL ---> code deleted ! (stored in vmd.c)
* SizeLocked == Imd->oBytes
* SizeLocked == Imd->oBytes (stored in .\source\CVMDDecoder.cpp)
* SizeLocked == SizeBuf
* SizeLocked == SizeBuf (stored in .\source\CVMDDecoder.cpp)
* SizeLocked == BufferSize
* SizeLocked == BufferSize (stored in .\source\CVMDDecoder.cpp)
* SizeLocked == Size
* SizeLocked == Size (stored in .\source\CVMDDecoder.cpp)
* X_SeekCache( Imd->h, 0, SEEK_CUR ) == pInfo->Offset Line 598 .\source\CVMDDecoder.cpp
* X_SeekCache( Imd->h, 0, SEEK_CUR ) == pInfo->Offset (Line 598 .\source\CVMDDecoder.cpp)
* MAX_ALLOC_CHUNK
* MAX_ALLOC_CHUNK
* tre > 0


==Debug Infos from LOADER7 (MAC)==
==Debug Infos from LOADER7 (MAC)==
Line 483: Line 715:
* m_EffectsProcessor.get() != NULL
* m_EffectsProcessor.get() != NULL
* m_Channel.get() != NULL
* m_Channel.get() != NULL
* SizeReaded==SizeBuf
* Size - TotalSize==Imd->SoundRemainder
* Error==LHST_E_OK
* gPckRPath!=NULL (stored in DevCFS.cpp)
==Fonts==
* DEV7 uses LET files as Fonts.
* DEV7 is backwards compatible with all DEV games which using LET files for Fonts.
* You can replace an font if you found out which Font is been used by the Game, and then extract it from an other game like Gobliins 2, then rename the Name of the font to that was the original of DEV7's and copy it into the root directory of the Game.


==Images==
==Images==
* Images are known as IMG1.0.1 / IMG10 (.img Files)
* Images are known as IMG1.0.1 / IMG10 (.img Files)
** There are two known versions of IMG listed here:
** IMG10 = version 1.0
** IMG1.0.1 = version 1.0.1
* they can be displayed via the [[Debug Menu for Dev7Games#Bitmaps_Windows|Debug Menu]]
* they can be displayed via the [[Debug Menu for Dev7Games#Bitmaps_Windows|Debug Menu]]
*some Images are sometimes stored in .TGA Files
* some Images are sometimes stored in .TGA Files (TRUEVISION-XFILE)
* Backgrounds for the specfic Environments are known as BGRD, BGRD is used in the Filename of the IMG Files.
* Backgrounds for the specfic Environments are known as BGRD, BGRD is used in the Filename of the IMG Files.
* Adibou 3 (Drawing Pad) saves your drawings as an JPG file. 500x350 (Path: Adibou3/datas/Av000X/PALETTE)
* To inject custom IMG's into the Game, you have to convert an Picture you would like to use into TGA format, then adjust the Screen resolution of it, and replace the name of the with file for the img. and for .TGA extension replace with .img
==CTRK File Format==
* contains instructions about the Animation.
* Controls like how the Body has to move.
==ModelPaths==
ModelPaths can be found in the EXO files used in the Applications stored in the ITK's. Maker can be the Programname of the Program that was used to create the Models.
* Adibou 3
** Y:\adibou3\maker\France\Models\grid\A\800a\model\
** Y:\adibou3\maker\France\Models\moving\A\1200a\model\
** Y:\adibou3\maker\France\Models\none\A\1500a\model\
** Y:\adibou3\maker\France\Models\drag\E\300E\model\
** Y:\adibou3\maker\France\Models\drag\I\300I\model\
** Y:\adibou3\maker\France\Models\turnstile\D\200D\model\
** Y:\adibou3\maker\France\Models\turnstile\E\200e\model\
** Y:\adibou3\maker\France\Models\click\C\100c\model\
** Y:\adibou3\maker\France\Models\reorder\D\400D\model\
** Y:\adibou3\maker\France\Models\turnstile\F\200F\model\
** Y:\adibou3\maker\France\Models\click\E\100E\model\
** Y:\adibou3\maker\France\Models\click\B\100b\model\
** Y:\adibou3\maker\France\Models\link\B\1000b\model\
** Y:\adibou3\maker\France\Models\drag\B\300b\model\
** Y:\adibou3\maker\France\Models\turnstile\B\200b\model\
** Y:\adibou3\maker\France\Models\drag\F\300f\model\
* Adi 5
** C:\MAKER\France\Models\drag\D\350b\model\
** Y:\ADI5\MAKER\EXE\France\Models\drag\F\350h\model\
** Y:\ADI5\MAKER\EXE\France\Models\turnstile\F\200d\model\
** C:\MAKER\France\Models\turnstile\F\200d\model\
** C:\MAKER 2.21\UK\Models\reorder\A\450a\model\
** C:\MAKER\UK\Models\check field\D\601A\model\
** C:\MAKER\France\Models\drag\F\352h\model\
** Y:\ADI5\MAKER\EXE\France\Models\click\H\101d\model\
** C:\PROGRAM FILES\MAKER\UK\Models\click\D\103c\model\
** E:\MAKER 6\MAKER\UK\Models\keyboard alpha\B\550C\model\
** C:\MAKER\MAKER\UK\Models\check list\A\101I\model\
** C:\MAKER\MAKER\UK\Models\check list\B\101J\model\
** Y:\ADI5\MAKER\EXE\France\Models\drag\F\373h\model\
** C:\MAKER\France\Models\keyboard alpha\C\559b\model\
** C:\MAKER199\UK\Models\reorder\A\450a\model\
** Y:\ADI5\MAKER\EXE\France\Models\drag\F\354h\model\
** Y:\ADI5\MAKER\EXE\France\Models\turnstile\D\201b\model\
** C:\MAKER\France\Models\turnstile\F\201d\model\
** C:\MAKER\France\Models\keyboard alpha\D\550d\model\
** Y:\ADI5\MAKER\EXE\France\Models\reorder\C\451b\model\
** Y:\ADI5\MAKER\EXE\France\Models\reorder\C\450b\model\
** C:\MAKER 2.21\UK\Models\keyboard alpha\D\550d\model\
==MAKER==
* MAKER was an Program that was used to create the Models for Adibou 3 & Adi 5.
* Versions known to exist: 2.21, 6, 1.99
* Langs: French, English(UK)
* Date: 10-03-00
==Paths==
* Adibou 3
** Y:\adibou3\Programmation\virtual_stk\temp.itk\common\B3graf\
** O:\adibou3\programmation\virtual_stk\


==Components==
==Components==
*DEV7 can use DirectX in version 8 if wanted
*DEV7 can use DirectX in version 8 if wanted
*DEV7 uses several DirectX Components: Direct3D, Direct Draw
*DEV7 uses several DirectX Components: Direct3D, Direct Draw
*some of Loader7.exe executables also using QuickTime
*some of Loader7.exe executables also using QuickTime (most likely used for Le pays de magiques to start from Ed4Intro.exe into LOADER7.EXE after the intro clip is done playing.)
* zlib 1.1.3 (for compression)
* UCL (0.91)
* libpng
* MDO Soft Mixer
* Lib Tracker
* Lib CURE
* STL
* SmartHeap (only shipped with Adibou 3's Applications see [[DEV7 Information#SmartHeap|SmartHeap]])
* Fx2D
* TriMesh
* Indeo 3.2 (3.24.15.03)


==DEV7 Editor==
==DEV7 Editor==
*DEV7 Editor can be acessed if you are have the Error Manager opened, just click then on Debug.
* DEV7 Editor can be acessed if you are have the Error Manager opened, just click then on Debug.
*currently the DEV7 Editor cant be opened because it is not found yet.
* currently the DEV7 Editor cant be opened because it is not found yet.
*This Message appers when DEV7 Editor is not found: DEV7 Editor not found ! Check the <PC_DEBUG\Editor> section in your MDO.INI file
* This Message appers when DEV7 Editor is not found: DEV7 Editor not found ! Check the <PC_DEBUG\Editor> section in your MDO.INI file
* DEV7 Editor uses an Mutex called Dev++_Editor_Mutex


==Unused Contents==
==Unused Contents==
Line 504: Line 820:


* Adibou 3 includes also unused Icons.
* Adibou 3 includes also unused Icons.
** Like an Card if you clicked on it, you were gotten to AdibouNet specifcly to your Addressbook.


==Speech Recognition==
==Speech Recognition==
Line 510: Line 827:
*SR was used in Adibou 3 in Hocus Pocus (English Application)
*SR was used in Adibou 3 in Hocus Pocus (English Application)
*AUDMME.DLL is handling the Audio Input, as PCM Device is used WAV Audio Adapter, Default Record Device WAV Audio, Default Playback Device is used by WAV Audio Adapter.
*AUDMME.DLL is handling the Audio Input, as PCM Device is used WAV Audio Adapter, Default Record Device WAV Audio, Default Playback Device is used by WAV Audio Adapter.
*BNF files are also known as Backus-Naur Form


==Trace==
==Trace==
Line 522: Line 840:
* Adi 5 (natively)
* Adi 5 (natively)
*when MU823 should introduces itself the Robot wont say anything and the Game "freezes" but you can return with a right click on the Screen.
*when MU823 should introduces itself the Robot wont say anything and the Game "freezes" but you can return with a right click on the Screen.
** Solution: Make sure that the TTS server is running, after that MU823 can speak properly.
==cknet.dll==
* Also known as: VUIPI CkNet
* Version: 1.0.0.3 (there are also other versions known of CkNet.dll)
Functions:
* CRNet::accept
* CRNet::ListeningThread()
* CRNet::ListeningThread(int)
* CRNet::connect
* CRNet::Send(SData*)
* CRNet::socket
* CRNet::bind
* CRNet::socketUdp
* loads WSOCK.DLL as depencies
==MDOSRLib==
* MDOSRLib is part of the Application Anglais (English) its usage is for the Speech Recognition
* Callbacks
** SmNfocusGrantedCallback
** SmNengineStateCallback
** recognizedPhraseCallback
** recognizedWordCallback
** audioLevelCallback
** utteranceCompletedCallback
** reportEngineErrorCallback
==HTML==
* Template is stored at C:\WINDOWS\Desktop\dochtml\HtmlADI5.dot or C:\dochtml\HtmlADI5.dot
* Generator is Microsoft Word 97
* Content-Type is text/html; charset=windows-1252
==Callbacks==
Here are the Callbacks listed which are not known to the right section.
* NewMovieFromMDOPath
* PrerollMovie
* LoadTrackIntoRam
==TalePlayer==
* TalePlayer is only found in the Cave to play the Storys.
* TalePlayer is used for playing ACA files, that contains the Animation, Sound etc.
* The INI files are storing the Configuration for the ACA files.
==ASclip Player==
* loads first the INI file of the Properties for ASclip Player.
* then Bench is running to create scene3D in a few millisecounds.
* Then it plays the AS file.
* after that it plays the Acts of the AS file.and load all required figures like Adibou etc.
* now in the end if the AS file is finished playing it closes.
==VMD==
* VMDs from older games like from DEV6 or even older like Adibou 1 are compatible with DEV7.
* VMD's from Sierra games are also compatible with DEV7.
* VMD's can be injected by copying an VMD to the root directory of the Game, and rename it from what you wanna replace it with.
* VMD's does need an Field to display the footage of the VMD if the Field does not exist, it plays only the Audio.


==VMD Functions==
==VMD Functions==
Line 602: Line 976:
==CODE4 Functions==
==CODE4 Functions==
* CODE4::autoOpen
* CODE4::autoOpen
* CODE4::logOpen
* Code4::errDefaultUnique
* Code4::errDefaultUnique
==ini_TreeMap Functions==
* ini_TreeMap::exists (used in TreeINI.cpp as ini_TreeMap::exists(i_Tree))
==MaterialManager Functions==
* MaterialManager::lockLightDatas
==CURED3DImage Functions==
* CURED3DImage::CURED3DImage
* CURED3DImage::recurseMakeAreasTextures
==WorldD3DResources Functions==
* WorldD3DResources::createImage
* WorldD3DResources::createTextureImage
==ADI5 Functions==
* A5C_PathFinder::CreatePath
* A5SY_SCOREAPPLI::OnCreate()
* A5SY_SCOREAPPLI::SET_AVATAR_LEVEL
* A5SY_SCOREAPPLI::SET_AVATAR_PATH
* A5SY_SCOREAPPLI::WORK_OUT_SCORE
* A5SY_SCOREAPPLI:::AddIniFileToList
* A5SY_SCOREAPPLI::GET_AVATAR_SCORE
* A5SY_SCOREAPPLI::OnDestroy()
* A5SY_InfosAppli::LoadAppliVar
* A5AS_LoadRct::LoadRctChapInfos
* A5AS_LoadRct::SET_SUBJECT
* A5AS_LoadRct::SET_LEVEL
* A5AS_LoadScore::SET_AVATAR
* A5AS_Resource::SET_AVATAR
* A5AS_Assessment::GetBackDate
* A5AS_LOADSCORE::::SET_SUBJECT
* A5AS_LOADSCORE::::SET_LEVEL
* A5AS_LoadScore::SET_MONTH
* A5AS_LOADSCORE::WORK_OUT_SCORE_ARRAYSKILL
* A5AS_AssessmetMain::FillArraySkills
* A5AS_LOADRCT::LoadSkills
* A5AS_LOADSCORE::SET_SUBJECT
* A5AS_LOADSCORE::SET_LEVEL
* A5AS_LOADSCORE::SET_MOUTH
* A5AS_AssessmetMain::FillArrayClap()
==AS_AnimScriptDatas Functions==
* AS_AnimScriptDatas::GetASDAnim
* AS_AnimScriptDatas::CheckTarget
* AS_AnimScriptDatas::CheckAnim
* AS_AnimScriptDatas::DecodeRowToAct
==B3_GRAF_Board_Manager Functions==
* B3_GRAF_Board_Manager::OnHandle_GetBoardModified
* B3_GRAF_Board_Manager::OnHandle_GetSavelsNew
==BMP Functions==
* bmp256GetPixel()
* bmp256GetColor()
* bmpSetPixel()
* bmpGetPixel()
2,051

edits