Image Map Image Map
Results 1 to 8 of 8

Thread: PDP11 RT-11 Fortran 77 V5.0 writing to serial ports?

  1. #1

    Default PDP11 RT-11 Fortran 77 V5.0 writing to serial ports?

    Been trying to do this for a couple of days with no luck so wonder if someone can help me please.?

    I have a PDP11/73 running RT-11 5.3. (RT11XM.SYS).
    I am using a M8043 DLV11-J four port serial card (i.e. channels 0 to 3) with the console connected to Channel 3.
    From Fortran 77 I have no problem writing to the console as it is LU 5 i.e.

    WRITE( 5, * ) 'TEST'
    END

    My question is how do I write to a different serial port? e.g. if I want to send text to rs232 channel 0, 1 or 2?

  2. #2
    Join Date
    Jun 2012
    Location
    UK - Worcester
    Posts
    3,973

    Default

    First things first.

    Are your other serial ports on the DLV11-J available to RT-11?

    If not - they can't be used until they are.

    LUN 5 is the 'standard' terminal (TT input) and LUN 7 is the 'standard' terminal (TT output). Or it is on the version of the RT-11 FORTRAN manual I am reading at any rate! Your system my be different.

    I can re-assign a LUN to any device I like (by the monitor command):

    .ASSIGN LP 7

    Before executing your FORTRAN code.

    See the manual http://bitsavers.trailing-edge.com/w...s%20Manual.pdf on page 3-1.

    There is also an ASSIGN system routine to allow you to change the LUN assignments at runtime. See page B-2.

    Dave

  3. #3
    Join Date
    Nov 2014
    Location
    Chicagoland
    Posts
    241

    Default

    Quote Originally Posted by TasKiNG View Post
    Been trying to do this for a couple of days with no luck so wonder if someone can help me please.?

    I have a PDP11/73 running RT-11 5.3. (RT11XM.SYS).
    I am using a M8043 DLV11-J four port serial card (i.e. channels 0 to 3) with the console connected to Channel 3.
    From Fortran 77 I have no problem writing to the console as it is LU 5 i.e.

    WRITE( 5, * ) 'TEST'
    END

    My question is how do I write to a different serial port? e.g. if I want to send text to rs232 channel 0, 1 or 2?
    I'm mostly an Fortran IV RT-11 programmer, my F77 experience was under RSX-11M+. But here are some things to consider.

    The basic RT-11 OS build only had support for the console terminal. If you did a SYSGEN you could include multi-terminal support. Even then, the support didn't to my recollection define a device handler (e.g. TT1:, TT2: ). So I don't believe there was any way for the F77 OTS (object time system) to use the normal file open routines to access the extra terminals. You would have to code custom MACRO-11 subroutines to access the EMT's (.MTPRNT, .MTIN) for those terminals.

    If you are trying to drive a serial printer or plotter device, most of the time I used a serial handler (LS: ) or wrote one myself (HP: ). You can then open the device and sent output to them from Fortran OTS. You have to assign the device handler to a specific port on the the DLV11-J, but most handlers support a SET command to specify the CSR and Vector for the serial line.

  4. #4
    Join Date
    Jun 2012
    Location
    UK - Worcester
    Posts
    3,973

    Default

    There does seem to be references to multi-terminal support via the XL driver.

    See the RT-11 System Internals manual Chapter 4.

    Unfortunately, I don't think it is as nice or easy as you think to switch terminals like you think it is...

    Dave

  5. #5

    Default

    Thanks Dave and wa2flq,

    I checked and the LS device is installed.
    Copying a file to LS, outputted to port 0 so I assigned LU7 to LS and can now send to it from my fortran program.

    Daver2: This has allowed me to communicate with my SBD card on a different serial port so I can still use my VT510 for editing

    Cheers

    Dave

  6. #6
    Join Date
    Jun 2012
    Location
    UK - Worcester
    Posts
    3,973

    Default

    I guessed as much!

    I must try and find my SBD DMA driver for you. I will have it on a disk somewhere.

    It is not for a DEC operating system - but the underlying implementation is the important thing...

    Dave

  7. #7

    Default

    Thanks Dave,

    I've found the SB.SYS driver on one of my floppies. What I am after is the fortran GGS library for DMA control.
    I've almost written a GGS fortran library for serial control and it's working quite well :-
    sbd_colour_lr.jpg

    Would still be interested to see your driver code though.

    Dave

  8. #8
    Join Date
    Nov 2014
    Location
    Chicagoland
    Posts
    241

    Default

    Quote Originally Posted by daver2 View Post
    There does seem to be references to multi-terminal support via the XL driver.

    See the RT-11 System Internals manual Chapter 4.

    Unfortunately, I don't think it is as nice or easy as you think to switch terminals like you think it is...

    Dave
    I had forgotten about the XL handler. It should be able to perform input and output to a serial line.

    Jerry

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •