CP/M 2 sources updated - CP/M

This is a discussion on CP/M 2 sources updated - CP/M ; at ftp://ftp.unix4fun.org/z80pack/ William Collis contributed a patch, that reproduces ASM 2.0 from the 1.4 sources. This patch is included and the ASM 2.0 binary build from the sources is identical to ASM 2.0 on binary CP/M 2 disks in Internet ...

+ Reply to Thread
Results 1 to 6 of 6

Thread: CP/M 2 sources updated

  1. CP/M 2 sources updated

    at ftp://ftp.unix4fun.org/z80pack/

    William Collis contributed a patch, that reproduces ASM 2.0 from the 1.4
    sources. This patch is included and the ASM 2.0 binary build from the
    sources is identical to ASM 2.0 on binary CP/M 2 disks in Internet archives.

    The patch CPM22APN.02 applied to the patched sources describes 2
    patches: one reverses function of rubout and backspace keys, the other
    makes both keys working identical. So far the first patch had been
    applied, but on some systems (Windows) the backspace key sends CNTL-H
    instead of rubout causing problems. Now the second patch is applied.

    The bootable disk with the ISIS build tools already includes the new
    kernel. Other bootable disks will be updated sometime without further
    notice. Also the 1.4 assembler was replaced with the 2.0 assembler,
    other disks still including the 1.4 version will be updated sometime too.

    The submit scripts so far used filename cpm64.com for a CP/M 2 system
    image. This has been changed to cpm64.sys, the file isn't executable.

    Enjoy,
    Udo Munk
    --
    The real fun is building it and then using it...

  2. Re: CP/M 2 sources updated

    Hello, Udo!

    > The patch CPM22APN.02 applied to the patched sources describes 2
    > patches: one reverses function of rubout and backspace keys, the other
    > makes both keys working identical. So far the first patch had been
    > applied, but on some systems (Windows) the backspace key sends CNTL-H
    > instead of rubout causing problems. Now the second patch is applied.


    Just one question, to clarify your message.

    BackSpace (BS) 08H is an ASCII control character.

    RUBOUT is not. (It was the label of a key on the ASR-33 Teletype.)

    So, what do you mean by "RUBOUT"?

    I have an ASR-33 Teletype, that's why I spotted your mixing.

    (Just by coincidence, I published a WS4UTF article, the 4 April 2008
    on the comp.os.cpm Newsgroup, dealing with the character set of the
    ASR-33 TTY. If you re-read it, you will notice that BS did not exist,
    then.)

    (What you tell about BackSpace / RUBOUT is also deal with in CP/M
    Plus, in the SCB.)

    Just to make it more clear to Newbies, maybe you could use DEL (7FH)
    instead of RUBOUT?

    Yours Sincerely,
    Mr. Emmanuel Roche, France


  3. Re: CP/M 2 sources updated

    Mr Emmanuel Roche, France wrote:

    >>The patch CPM22APN.02 applied to the patched sources describes 2
    >>patches: one reverses function of rubout and backspace keys, the other
    >>makes both keys working identical. So far the first patch had been
    >>applied, but on some systems (Windows) the backspace key sends CNTL-H
    >>instead of rubout causing problems. Now the second patch is applied.


    > Just one question, to clarify your message.


    > BackSpace (BS) 08H is an ASCII control character.


    > RUBOUT is not. (It was the label of a key on the ASR-33 Teletype.)


    More commonly known as DELete.

    > So, what do you mean by "RUBOUT"?


    > I have an ASR-33 Teletype, that's why I spotted your mixing.


    When punching paper tape from the keyboard offline, one can
    correct mistakes by backspacing the tape and typing RUBOUT
    (or DELETE, X'FF') over them. That works if systems ignore
    them on input.

    > (Just by coincidence, I published a WS4UTF article, the 4 April 2008
    > on the comp.os.cpm Newsgroup, dealing with the character set of the
    > ASR-33 TTY. If you re-read it, you will notice that BS did not exist,
    > then.)


    Well, it may have existed but the ASR33 printing mechanism
    can't do it.

    > (What you tell about BackSpace / RUBOUT is also deal with in CP/M
    > Plus, in the SCB.)


    > Just to make it more clear to Newbies, maybe you could use DEL (7FH)
    > instead of RUBOUT?


    As far as I know, it was DEC that started using DEL for delete
    instead of BS.

    -- glen


  4. Re: CP/M 2 sources updated

    Mr Emmanuel Roche, France schrieb:
    > Hello, Udo!
    >
    >> The patch CPM22APN.02 applied to the patched sources describes 2
    >> patches: one reverses function of rubout and backspace keys, the other
    >> makes both keys working identical. So far the first patch had been
    >> applied, but on some systems (Windows) the backspace key sends CNTL-H
    >> instead of rubout causing problems. Now the second patch is applied.

    >
    > Just one question, to clarify your message.
    >
    > BackSpace (BS) 08H is an ASCII control character.
    >
    > RUBOUT is not. (It was the label of a key on the ASR-33 Teletype.)
    >
    > So, what do you mean by "RUBOUT"?


    With that I mean what DRI means.

    ----- start of CPM22APN.02 -----
    CP/M V2.2
    Application Note 02, 2/20/82
    Reversing the BACKSPACE and RUBOUT Key Functions and
    Making RUBOUT Identical to BACKSPACE

    Copyright 1982 by Digital Research
    CP/M is a registered trademark of Digital Research.
    DDT and SID are trademarks of Digital Research.
    Compiled November 1982


    Applicable products and version numbers: CP/M V2.1 and V2.2

    Program: BDOS

    In the following code segment procedures, addresses
    given are
    hexadecimal offsets from the base of the CP/M system. The
    CCP is
    usually located at 980H but can be located at A00H if a
    two-sector
    boot is used.

    You can assemble the patch for your size memory system.
    The
    cpmbase equals the BDOS entry point address at locations 6
    and 7
    in the base page of memory minus 806H. You must change this
    entry
    point address when you load DDT or SID . Under DDT or
    SID,
    follow the jump at location 5 until an address is found
    with a
    least significant digit of 6. In the following
    example, the
    cpmbase would be E506H-806H or DD00H.


    0005 JMP CD00
    CD00 JMP D3A4
    D3A4 XTHL
    D3A5 SHLD E452
    D3A8 XTHL
    D3A9 JMP E506


    Procedure to reverse the BACKSPACE and RUBOUT key functions:

    Patch into the SYSGEN or MOVCPM image exactly as you
    would
    patch in a new version of your BIOS, using the DDT i
    command
    followed by the DDT r command. You can use the same
    offset as
    your custom BIOS and install the following code:


    cpmbase equ ? ;subtrack 806h from address at
    location 6

    org cpmbase + 0A02h

    cpi 7fh ;was cpi 08h

    org cpmbase + 0A16h

    cpi 08h ;was cpi 7fh

    Or, you can install the above procedure directly into
    MOVCPM
    if you have MOVCPM.COM on your system disk. The patch is
    applied
    automatically to any size system that you build using
    MOVCPM.
    Make a back-up copy of MOVCPM.COM before using DDT to
    make the
    following changes:


    A>ddt movcpm.com
    DDT VERS 2.2
    NEXT PC
    2700 0100
    -l1402
    1402 CPI 08
    1404 JNZ 0A16
    1407 MOV A,B
    1408 ORA A
    1409 JZ 09EF
    140C DCR B
    140D LDA 0B0C
    1410 STA 0B0A
    1413 JMP 0A70
    1416 CPI 7F
    1418 JNZ 0A26
    -s1403
    1403 08 7f
    1404 C2 .
    -s1417
    1417 7f 8
    1418 C2 .
    -g0

    A>save 38 movcpm1.com


    Use the new program MOVCPM1.COM in place of MOVCPM.COM.
    The
    BACKSPACE and RUBOUT key functions are reversed for any
    CP/M
    system generated with MOVCPM1.COM.

    Procedure to make RUBOUT identical to BACKSPACE:

    Before you install this patch, the code at cpmbase +
    0A1Bh
    should read:

    mov a,b
    ora a
    jz cpmbase + 09EFh
    mov a,m
    dcr b
    dcx h
    jmp cpmbase + 0AA9h




    Patch into the SYSGEN or MOVCPM image exactly as you
    would
    patch in a new version of your BIOS, using the DDT i
    command
    followed by the DDT r command. Use the same offset as your
    custom
    BIOS and install the following code:


    cpmbase equ ?
    ;
    ;
    org cpmbase + 0A1Bh
    ;
    mvi a,8h
    jmp cpmbase + 0A07h
    end


    Or, you can install the above procedure directly into
    MOVCPM
    if you have MOVCPM.COM on your system disk. The
    patch is
    installed automatically in any size system that you build
    using
    MOVCPM. Make a back-up copy of MOVCPM.COM before using
    DDT to
    make the following changes.

    A>ddt movcpm.com
    DDT VERS 2.2
    NEXT PC
    2700 0100
    -l141b
    141B MOV A,B
    141C ORA A
    141D JZ 09EF
    1420 MOV A,M
    1421 DCR B
    . . .

    -a141b
    141B mvi a,8
    141D jmp a07
    1420 .
    -g0

    A>save 38 movcpm1.com


    Use the new program MOVCPM1.COM in place of MOVCPM.COM.
    The
    RUBOUT and BACKSPACE key functions are identical in any
    CP/M
    system generated with MOVCPM1.COM.

    Licensed users are granted the right to include
    these
    modifications in CP/M V2.2 software.
    ----- end of CPM22APN.02 -----

    Source shows that the key sending 07FH is meant, use The Source Luke.

    > I have an ASR-33 Teletype, that's why I spotted your mixing.


    That key was labeled RUB, RUBOUT, DEL, ERASE, <---, even worse on some
    terminals it is labeled BS while it won't send a BS.

    > (Just by coincidence, I published a WS4UTF article, the 4 April 2008
    > on the comp.os.cpm Newsgroup, dealing with the character set of the
    > ASR-33 TTY. If you re-read it, you will notice that BS did not exist,
    > then.)
    >
    > (What you tell about BackSpace / RUBOUT is also deal with in CP/M
    > Plus, in the SCB.)


    All DRI OS's later than CP/M 1.4 deal with that in some way.

    > Just to make it more clear to Newbies, maybe you could use DEL (7FH)
    > instead of RUBOUT?


    I don't know what is displayed on the Newbies rubout key, and it might
    look pretty interesting on Asian keyboards for Europeans ;-)

    >
    > Yours Sincerely,
    > Mr. Emmanuel Roche, France
    >


    Enjoy,
    Udo Munk
    --
    The real fun is building it and then using it...

  5. Re: CP/M 2 sources updated

    In article <08df1321-784e-4fcf-9284-19537494c752@f63g2000hsf.googlegroups.com>,
    "Mr Emmanuel Roche, France" writes:
    > Hello, Udo!
    >
    >> The patch CPM22APN.02 applied to the patched sources describes 2
    >> patches: one reverses function of rubout and backspace keys, the other
    >> makes both keys working identical. So far the first patch had been
    >> applied, but on some systems (Windows) the backspace key sends CNTL-H
    >> instead of rubout causing problems. Now the second patch is applied.

    >
    > Just one question, to clarify your message.
    >
    > BackSpace (BS) 08H is an ASCII control character.
    >
    > RUBOUT is not. (It was the label of a key on the ASR-33 Teletype.)
    >
    > So, what do you mean by "RUBOUT"?


    RUBOUT is usally synonomous with DEL 0x7F in ACII
    It has all the bits turned on and on the Teletype it punched all the
    holes across the tape effectively "rubing out" the any character that
    had been punched in previously. It goes back to BAUDOT a precursor
    of ASCII in the teletype world.

    >
    > I have an ASR-33 Teletype, that's why I spotted your mixing.
    >
    > (Just by coincidence, I published a WS4UTF article, the 4 April 2008
    > on the comp.os.cpm Newsgroup, dealing with the character set of the
    > ASR-33 TTY. If you re-read it, you will notice that BS did not exist,
    > then.)


    Originally, in the teletype world, BS was a mechanical function of the
    tape punch use din conjunction with RUBOUT to correct mistakes.

    >
    > (What you tell about BackSpace / RUBOUT is also deal with in CP/M
    > Plus, in the SCB.)
    >
    > Just to make it more clear to Newbies, maybe you could use DEL (7FH)
    > instead of RUBOUT?


    Looks like you already knew all that.

    --
    Bill Gunshannon | de-moc-ra-cy (di mok' ra see) n. Three wolves
    billg999@cs.scranton.edu | and a sheep voting on what's for dinner.
    University of Scranton |
    Scranton, Pennsylvania | #include

  6. Re: CP/M 2 sources updated

    Hello, Udo!

    > > So, what do you mean by "RUBOUT"?

    >
    > With that I mean what DRI means.
    >
    > ----- start of CPM22APN.02 -----
    > * * * * * * * * * * * * * * * * * *CP/M * V2.2
    > * * * * * * * * * * * * * * * Application Note 02, 2/20/82
    > * * * * * * * * * Reversing the BACKSPACE and RUBOUT KeyFunctions and
    > * * * * * * * * * * * * * Making RUBOUT Identical to BACKSPACE


    Now, I understand. It is not the first time that I noticed that DRI
    used the name "RUBOUT" in its doc. It is what the Americans call
    "legacy", since Gary Kildall used an ASR-33 Teletype when he booted CP/
    M for the first time. (Among my stuff, I even have a picture of his
    system in the Naval Postgraduate School. The picture is small, and
    fuzzy from the photocopy, but you clearly see an ASR-33 Teletype. So,
    since it was the keyboard that he used, it was natural for him to use
    the name "RUBOUT", despite publishing ASCII code charts.)

    Yours Sincerely,
    Mr. Emmanuel Roche, France

+ Reply to Thread