• PIP

    From Paul Richards@21:1/5 to All on Thu Dec 16 12:53:50 2021
    Using CP/M 2.2

    Given two user areas on drive A with filea.txt in user area 1 how do I
    PIP filea.txt to A0>?


    filea.txt ?

    Thanks

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Steven Hirsch@21:1/5 to Paul Richards on Wed Dec 15 22:29:21 2021
    On 12/15/21 8:53 PM, Paul Richards wrote:
    Using CP/M 2.2

    Given two user areas on drive A with filea.txt in user area 1 how do I PIP filea.txt to A0>?


    From memory (and this may be CP/M 3 specific):

    pip a:=files.txt [g1]


    filea.txt ?

    Thanks

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Tony Nicholson@21:1/5 to Steven Hirsch on Thu Dec 16 14:29:49 2021
    On Thursday, December 16, 2021 at 2:29:27 PM UTC+11, Steven Hirsch wrote:
    On 12/15/21 8:53 PM, Paul Richards wrote:
    Using CP/M 2.2

    Given two user areas on drive A with filea.txt in user area 1 how do I PIP filea.txt to A0>?

    From memory (and this may be CP/M 3 specific):

    pip a:=files.txt [g1]


    filea.txt ?

    In article <spe67g$u1t$1@gioia.aioe.org>, Paul Richards writes:
    Using CP/M 2.2

    Given two user areas on drive A with filea.txt in user area 1 how do I
    PIP filea.txt to A0>?


    filea.txt ?

    In a more general sense, CP/M 2 can be tricky when trying to copy files into a user
    area where there are no files. I suggest you look at one of the utility programs
    like SWEEP (aka NSWP207) that you'll find at

    http://cpmarchives.classiccmp.org/cpm/Software/rlee/B/BAMDUA/097/

    It provides menu-like file manipulation (including copying between user areas).

    Using just CP/M 2 provided utilities, you'll need PIP in the current user area (unless you're using one of the enhanced console command replacements
    that can load programs from user area 0).

    The following example will copy a file from user area 0 into an empty user area 1 -

    stat pip.com

    Recs Bytes Ext Acc
    58 8k 1 R/O B:PIP.COM
    Bytes Remaining On A: 420k

    user 1
    pip
    * <------- hit Return here to exit from PIP

    save 29 pip.com

    Now theres a copy of PIP in user area 1 - where 29 is the number of 256-byte pages and is equal to the number of 128-byte records (58) - rounded up by 1 if this is odd. This works because there is still a copy of PIP loaded into memory.

    dir
    A: PIP COM
    pip a:=a:filea.txt[g0r

    dir
    A: PIP COM : FILEA TXT


    The file is now copied to user area 1.

    The PIP option G specifies the user area to copy from, and R means if it is set with SYS attribute then copy it too.

    Tony

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Tony Nicholson@21:1/5 to Tony Nicholson on Thu Dec 16 14:32:53 2021
    On Friday, December 17, 2021 at 9:29:50 AM UTC+11, Tony Nicholson wrote:
    Now theres a copy of PIP in user area 1 - where 29 is the number of 256-byte pages and is equal to the number of 128-byte records (58)

    Arghhhh... add here "divided by 2"

    - rounded up by 1 if
    this is odd. This works because there is still a copy of PIP loaded into memory.

    Tony

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Paul Richards@21:1/5 to Tony Nicholson on Fri Dec 17 10:48:09 2021
    On 17/12/2021 9:29 am, Tony Nicholson wrote:
    On Thursday, December 16, 2021 at 2:29:27 PM UTC+11, Steven Hirsch wrote:
    On 12/15/21 8:53 PM, Paul Richards wrote:
    Using CP/M 2.2

    Given two user areas on drive A with filea.txt in user area 1 how do I PIP >>> filea.txt to A0>?

    From memory (and this may be CP/M 3 specific):

    pip a:=files.txt [g1]


    filea.txt ?

    In article <spe67g$u1t$1@gioia.aioe.org>, Paul Richards writes:
    Using CP/M 2.2

    Given two user areas on drive A with filea.txt in user area 1 how do I
    PIP filea.txt to A0>?


    filea.txt ?

    In a more general sense, CP/M 2 can be tricky when trying to copy files into a user
    area where there are no files. I suggest you look at one of the utility programs
    like SWEEP (aka NSWP207) that you'll find at

    http://cpmarchives.classiccmp.org/cpm/Software/rlee/B/BAMDUA/097/

    It provides menu-like file manipulation (including copying between user areas).

    Using just CP/M 2 provided utilities, you'll need PIP in the current user area
    (unless you're using one of the enhanced console command replacements
    that can load programs from user area 0).

    The following example will copy a file from user area 0 into an empty user area 1 -

    stat pip.com

    Recs Bytes Ext Acc
    58 8k 1 R/O B:PIP.COM
    Bytes Remaining On A: 420k

    user 1
    pip
    * <------- hit Return here to exit from PIP

    save 29 pip.com

    Now theres a copy of PIP in user area 1 - where 29 is the number of 256-byte pages and is equal to the number of 128-byte records (58) - rounded up by 1 if
    this is odd. This works because there is still a copy of PIP loaded into memory.

    dir
    A: PIP COM
    pip a:=a:filea.txt[g0r

    dir
    A: PIP COM : FILEA TXT


    The file is now copied to user area 1.

    The PIP option G specifies the user area to copy from, and R means if it is set
    with SYS attribute then copy it too.

    Tony

    Tony - thanks for the explanation.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Paul Richards@21:1/5 to Steven Hirsch on Fri Dec 17 10:47:32 2021
    On 16/12/2021 2:29 pm, Steven Hirsch wrote:
    On 12/15/21 8:53 PM, Paul Richards wrote:
    Using CP/M 2.2

    Given two user areas on drive A with filea.txt in user area 1 how do I
    PIP filea.txt to A0>?


    From memory (and this may be CP/M 3 specific):

    pip a:=files.txt [g1]


    filea.txt ?

    Thanks

    Thanks Steven. Just what I was looking for.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Paul Richards@21:1/5 to All on Sun Dec 26 10:01:37 2021
    I am using the SIMH/AltairZ80 simulator running CP/M 2.2

    There are a couple of questions I have for which I have not been able to
    find the answers and I hope someone can provide them.

    Say I have MSCOBOL and I want to write some source code to compile it. I
    don't want to use ED so I unload MSCOBOL and load WordStar which I use
    to type the source code and save it on the WS disk. My question is how
    do I transfer the source code from the WS disk to the COBOL disk for compilation?

    I assume that I can use W.COM to transfer the code from WS to an
    external file/directory and them R.COM to transfer on to the COBOL disk.
    I am not sure how to specify the external directory in 'the host
    environment'.

    Given that my directory structure is C:/SIMH/AltairZ80/, I then load WS
    and write something e.g. SAMPLE.TXT. Should I set up a TEMP directory
    e.g. C:/SIMH/AltairZ80/TEMP? This is what I get:

    write sample.txt [t] /temp
    WRITE?



    Following the examples given with WRITE.COM I get a similar result:

    write sample.txt
    WRITE?



    So I am not sure how to Write to, and Read from, 'the host environment'.

    I'd welcome an explanation :-)

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Udo Munk@21:1/5 to Paul Richards on Sun Dec 26 02:55:08 2021
    Paul Richards schrieb am Sonntag, 26. Dezember 2021 um 00:01:42 UTC+1:
    Given that my directory structure is C:/SIMH/AltairZ80/, I then load WS
    and write something e.g. SAMPLE.TXT. Should I set up a TEMP directory
    e.g. C:/SIMH/AltairZ80/TEMP? This is what I get:

    write sample.txt [t] /temp
    WRITE?

    The name of the executable is w.com and not write.com, so try
    w sample.txt

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Paul Richards@21:1/5 to Udo Munk on Mon Dec 27 11:16:02 2021
    On 26/12/2021 9:55 pm, Udo Munk wrote:
    Paul Richards schrieb am Sonntag, 26. Dezember 2021 um 00:01:42 UTC+1:
    Given that my directory structure is C:/SIMH/AltairZ80/, I then load WS
    and write something e.g. SAMPLE.TXT. Should I set up a TEMP directory
    e.g. C:/SIMH/AltairZ80/TEMP? This is what I get:

    write sample.txt [t] /temp
    WRITE?

    The name of the executable is w.com and not write.com, so try
    w sample.txt

    Udo

    Thank you. A silly error on my part. w sample.txt puts the file in the altairz80 folder.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)