Is your car running poorly even though it won't rev past 3000 rpms?

Any misfires?

Since a P28 is OBD1, is your check engine light on? If it is, do you know how to pin it to flash the light for DTCs?

Also, P28s has VTEC a switch, what type of engine do you have?

General question to assist you finding your issue(s).

Usually, when you cannot rev past a specfic RPM with a drive-by-cable, you're ECU is either retarding spark or fuel delivery...in essence, as Homer stated, keeping from killing itself.

I'd start with a fuel pressure test...if pressure is dropping at 3000 rpms, something is telling it to do that.