I run into network or security challenges where I can't use tools to connect to my Oracle Database, so I end up having to rely on SQL*Plus to get the source of my PL/SQL code, be it a PACKAGE, PROCEDURE, FUNCTION, or TYPE.

Here you go...

set linesize 200
set pagesize 9000
col text format a200

SELECT text
FROM   all_source
WHERE  owner = 'SCOTT'
AND    name = 'CALCULATE_BONUS'
AND    type = 'PROCEDURE'
ORDER BY line;