You will need to scan the engine control module for failure codes.
You could be dealing with a crankshaft position sensor malfunction. There is a Technical Service Bulletin that has been released by GM about this issue.
With this particular issue, the check engine light will not come on but it will store a crankshaft position sensor failure code. Here is the information on the service bulletin below:
File In Section: 06 - Engine/Propulsion System
Bulletin No.: 00-06-04-014
Date: April, 2000
No, Hard, or Slow Start, Backfire or "Kickback" During
Crank/Start, "Grinding" or Unusual Noises During Crank, DTC P0338
(Replace Crankshaft Position Sensor)
1999-2000 Cadillac Escalade
1995-2000 Chevrolet and GMC SIT Models
1996-2000 Chevrolet and GMC C/K, M/L, G, P Models
1996-2000 Oldsmobile Bravada
with 4.3 L, 5.0 L, 5.7 L or 7.4 L Engine
(VINs W, X, M, R, J RPOs L35, LF6, L30, L31, L29)
Some customers may comment on one or more of the following conditions:
|^||Backfire during crank/start|
|^||"Kickback" during crank/start|
|^||"Slow" or "hard" start/crank|
|^||"Grinding" or unusual noises during crank/start|
|^||Cracked or broken engine block at the starter boss|
|^||Broken starter drive housing|
|^||Broken starter ring gear on flywheel|
|^||Any combination of the above |
A condition may exist that allows the crankshaft position sensor to command up to 50 extra degrees of spark advance during engine cranking only. This in turn exposes the engine to higher than normal cylinder pressures which may result in an inoperative condition to the starter drive housing, the engine flywheel starter ring gear, or the engine block at the outside edge of the starter boss.
Inspect for a stored powertrain DTC code P0338. This DTC will NOT illuminate the "Service Engine Soon" light. If this code is stored, the Crankshaft Position Sensor, P/N 10456607, MUST be replaced and the remaining components inspected for damage (engine block at the starter boss, the starter drive housing, and the engine flywheel starter ring gear).
Notice : When DTC code P0338 is set, failure to replace the Crankshaft Position Sensor could result in repeated inoperative conditions of the starter or flywheel.
Important : Some flywheel wear is normal; broken or missing teeth and/or cracks, are not normal.