First measure the voltage at the starter solenoid, large red cable when cranking to see if it stays at 12V or drops. If it is dropping you probable have a loose or dirty battery connection, this includes the negative cable connection to the engine block. Another issue could be a bad battery switch.
Take the voltage reading, check the cables and report your findings.
1997 2400 SCR
5.7 Vortec / Bravo 2