4D Sports Driving Car Editor 3.4 (III)
======================================

CarEdit3 is a simple, old-school DOS editor for Stunts/4DSD vehicles.

Installation
------------

Simply copy the CAREDIT3.EXE to the game directory or subdirectory.

Usage
-----

Start the EXE to manage your garage (i.e., the list of car files in the
directory) and edit the corresponding RES files. Note that all available 
keyboard hints are at the bottom of each screen/window.

Features
--------

Some of the more useful features of CarEdit3 include:
- Garage: Copy, rename or delete entire cars with spare car management
in a convenient way
- Engine: Advanced power-curve editing (single values or entire areas)
- Gears:  RPM/velocity diagram and gear ratio equalizer
- Misc:   Other car parameters (wheel coordinates, grip, dimensions, etc)
- Texts:  Automatic correction of length/offsets in RES files on save
- GFX:    Change movable dash element position coordinates (exc. gears)
- Configuration:  change CarEdit3 startup settings.

History
-------

CarEdit3.4 Added Configuration settings screen, Garage improvements with 
Spare Car subfolder support. More information on Gear and parameters on
Misc screens.

CarEdit3.3.1 Bug fixing on GFX screen.

CarEdit3.3 Read the CAR*.RES file resources in any order, for
compatibility with different editors.

CarEdit3.2 Add Spare Car "library" for better handle of limited default
car list.

CarEdit3.1 Making a more complete RES filer editor tool, with granted
permission from the original author.

CarEdit3 is a nostalgia-induced rewrite of an old, lost love (CarEdit2).
CarEdit2 was created in the late 90ies, never published, and used by two
people in the world (estimated) (thus doubling the success of CarEdit1).
While the source code might still exist on some abandoned floppy disk in
the basement, I needed an excuse for spending some time programming the
way I did two decades ago.

Maturity
--------

CarEdit3 is currently beta software; it has not been tested extensively.
The editor works fine and, as of this writing, there are no known bugs.
The rendering has not been optimized yet, resulting in intense flickering
for certain operations (most notably while editing the power curve).
This might be the next thing to work on.

Source Tree
-----------

CAREDIT3.PAS is the core program. It contains the RES file data
management as well as the rendering and input-handling functionality for
all screens. I may very soon split the latter part into one unit per
screen, though...

The `*PRO.PAS` units consist of utility functions that were easy to
extract from the core program. The suffix PRO reflects the immense
professionality required from any other user since there is no
documentation at all.

Releases
--------

### 2014-06-21

First release on the stunts.hu forum

### 2014-06-22 (dm_s1e6)

- Maximum amount of cars in garage increased to 32;
- New hint regarding accuracy added to the engine screen;
- More helpful RPM lines added to the RPM/velocity graph;
- BGI driver now linked into the EXE (thanks, dreadnaut!)

### 2021-05-24 (v. 3.1, zapper)

Add several information and handling of parameters over RES file:
- Garage:
   Handling of unpacked car files now possible;
- Engine:
   Visible torque raw value at corresponding RPM;
- Gears:
  - Number of gears affects shown rows in velocities table.
  - Added RPM value on reference column values (RPMbounds);
- Misc:
  - Edit car dimensions and colision parameters showing
    summary of it's actual size referenced to shape "car1".
  - Edit wheels coordinates parameters showing summary of
    conversion to shape "car1" coordinate values;
- GFX:
  - Edit number of positions and their coordinates on
    steering wheel dot, rev and speed instruments.
  - Steering shows right "read only" symetric dot positions.
  - Rev/Speedometer change number of positions and their
    correspondent cordinates with RPM values.
  - Speedometer digital to analog convertion and vice-versa
    (first 3 positions are shared between both types).

### 2021-06-02 (v. 3.2, zapper)

New Spare Cars "library" (on ".\SpareCar\" directory) with
44 slot car capacity:
- Allow the backup(copy) of default cars list to spare cars
  list;
- Allow get(copy) a spare car into default car list;
- Fix copy/rename/delete operation on car with unpacked files.

### 2023-01-08 (v. 3.3, Duplode)

Read the CAR*.RES resources in any order:
- The file is converted to the "standard" resource order (simd,
  edes, gsna, gnam), compatible with CarBlaster and CarEdit 3.2,
  upon loading. Saving converts the file to the "standard" order.
- RES file restrictions: the header must be consistent, the four
  mandatory resources must be present and the only ones in the
  file, simd must have the correct length of 776 bytes, and the
  last byte of each text resource must be its only null character.

### 2024-06-06 (v. 3.3.1, zapper)

Bug fixing:
- GFX Rev Meter edit coordinate Y values.

### 2024-08-05 (v. 3.4, zapper)

New CONFIGURATION screen for changing program settings:
- Video driver (640x480 "SVGA 256 color" or "VGA 16 color").
- Car directory path (game's car files relative to Caredit3 execution
  path).
- Spare cars path (spare car root path relative to Caredit3); 

Garage screen improvements:
- Car list navigation, identification of limit of 32 game cars and 
  validation all manage operations.
- Spare car list with folders and subfolders navigation (<42 per level),
  subfolder creation only on spare car root path and spare cars listing
  up to 512 entries (FAT16 file per folder limit) with paging suport 
  showing subfolders always on top.

Gears screen reorganization and added real data approximation in order
 to help adjusting gear ratio values.
	
Misc screen with added information and editable car data for:
- Real data approximation on car dimensions.
- Validation on wheel coordinate values.
- Custom mod parameters for color needle values (SVGA 256 color 
  video mode required see all game's 256 color palette). 
  Download "Stunts 1.1 Mod 1.0" SKIDMCGA.EXE file from Stunts Forum:
  http://forum.stunts.hu/index.php?topic=3810.msg82375#msg82375

### 2024-09-12 (v. 3.4.1, zapper)

Misc improvements:
- Wheel coordinate value can be edited as signed negative value (using 
  two's complement) with Enter key or alternatively as signed CAR1
  relative value (using negative 1:64 conversion) with Insert key.