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

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

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

Simply copy the CAREDIT3.EXE to the game directory.

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 the keyboard hints
at the bottom of each screen/window.

Features
--------

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

History
-------

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.
