[Info-vax] Oberon-2 on VMS

Arne Vajhøj arne at vajhoej.dk
Thu Dec 29 19:54:54 EST 2022


Probably not something in great demand.

:-)

But here it is how to get it working:

1) get Gardens Point Component Pascal (despite the name
    then it is Oberon-2) for JVM version 1.3.16 (that version
    works on VMS Alpha not just VMS Itanium)
2) move to VMS and unpack
3) stuff gpcp.com and gpcpdef.com in the bin dir (files
    are below)
4) @gpcpdef

gpcp.com

$ ctx = f$environment("PROCEDURE")
$ jroot = "/" + f$parse(ctx,,,"DEVICE") - ":"
$ temp = f$parse(ctx,,,"DIRECTORY") - "[" - "]"
$ ix = 0
$ loop:
$    part = f$element(ix, ".", temp)
$    jroot = jroot + "/" + part
$    ix = ix + 1
$    if part .nes. "gpcp-JVM" then goto loop
$ endloop:
$ if f$file("''p2'.cp","rfm") .nes. "STMLF"
$ then
$     write sys$output "Converting ''p2'.cp to RFM:STMLF"
$     convert /fdl="record; format stream_lf" 'p2'.cp 'p2'.cp
$ endif
$ if p1 .eqs. "COMPILE" then java 
"-DCPSYM=.:''jroot'/libs:''jroot'/libs/JvmSystem" -cp .:'jroot' 
"CP.gpcp.gpcp" "''p2'.cp"
$ if p1 .eqs. "RUN" then java 
"-DCPSYM=.:''jroot'/libs:''jroot'/libs/JvmSystem" -cp .:'jroot' 
"CP.''p2'.''p2'" 'p3' 'p4 'p5' 'p6' 'p
7 'p8'
$ exit

gpcpdef.com

$ ctx = f$environment("PROCEDURE")
$ loc = f$parse(ctx,,,"DEVICE") + f$parse(ctx,,,"DIRECTORY")
$ define/nolog gpcpbinpath 'loc'
$ gpcpc :== @gpcpbinpath:gpcp compile
$ gpcp :== @gpcpbinpath:gpcp run
$ exit

Arne





More information about the Info-vax mailing list