From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.5 required=5.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI autolearn=ham autolearn_force=no version=3.4.4 Received: from minnie.tuhs.org (minnie.tuhs.org [50.116.15.146]) by inbox.vuxu.org (Postfix) with ESMTP id D18562555E for ; Sat, 25 May 2024 17:57:50 +0200 (CEST) Received: from minnie.tuhs.org (localhost [IPv6:::1]) by minnie.tuhs.org (Postfix) with ESMTP id 9D62B43AE7; Sun, 26 May 2024 01:57:45 +1000 (AEST) Received: from mail-ot1-x335.google.com (mail-ot1-x335.google.com [IPv6:2607:f8b0:4864:20::335]) by minnie.tuhs.org (Postfix) with ESMTPS id C20AA43AE7 for ; Sun, 26 May 2024 01:57:40 +1000 (AEST) Received: by mail-ot1-x335.google.com with SMTP id 46e09a7af769-6f8e287fa3eso142307a34.2 for ; Sat, 25 May 2024 08:57:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1716652660; x=1717257460; darn=tuhs.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=I0/CwHdQPwEPav9rRbzzamdx475BpyhGH5nJRYNVCTw=; b=fwPdXJSAj+zxgwpDkahg1UtLVWTUee7TKFdsZF2etoDGsYkIiK+GBpBBspoxHYR0bu kyRcSbE+Z345JGzDQgxtSlWXbhCEbVtxPuHNxIScFYRbYyWvBcRfe6sZ6KDqcYYG33rH +kjxk155UU9TkgZs/SoEKuRvKRMFXl8H7s3cWbyusHOV9LHwjXuUFV8jZv10iC3ftJK0 NTK/hm4yunzJ+J/vIzQdMmWIPZEHUVfuQyCgMj763oPHtTep1CP4OPjadd2Z4aUBycgV KeaDyCbBKdubrkI4yKJ5LZV+VTahInNZ5FUqq6w6gPxn92arLfZ9IWfNy0yiTpoB9FGz il1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1716652660; x=1717257460; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=I0/CwHdQPwEPav9rRbzzamdx475BpyhGH5nJRYNVCTw=; b=di0opLT0j/NUJ2tOhsfUaFLqZYoQlFsiw8x9T5oz5NVtQ044/p4CzzDTiVZA8jyAPf tB4OZ4+bysuRNMM+VrnoGhG3mK6W3yF3wchK9qTQp8rWvnLQliOKXkUfhbxImUzdXkPh 9gSsXEleDPNWsLUWsVzp/pHOHVoh+mt4ZcVWSEXcsX+Y8h9tZZjghFs/+eIiOoOfkvig 6LgMdlu9OAXM0nEwhn8Hx4SuU2/DCnr8FvSgQJ/jEc/2ALTecBJqC0k+HbDuVPXE2x5X cL5vMbfG+tiH6dlzfTorUsupcldiggQxA6LRV5f9JFhVGI4KIZfCSjAUs9q6jXGw7WMm 7bJQ== X-Gm-Message-State: AOJu0YyhKVWbG6rwhSozPz/m7zhCDbL+m/VmVQzPVX6gGvmwymhUB+PC zBJIzPYvlL4uvC34S+OqpFYck3DoWn60trjPAiAkXkriYLAsJe4U X-Google-Smtp-Source: AGHT+IELCcDRRRS/ziDwTPH5dLozfTWdxJ2iXwEiaZgCs4QpE2Iie5zyNHlMsX2R5rztwyG2PEknRw== X-Received: by 2002:a9d:6246:0:b0:6f1:2485:6d7e with SMTP id 46e09a7af769-6f8d0b9258cmr4752831a34.36.1716652659614; Sat, 25 May 2024 08:57:39 -0700 (PDT) Received: from illithid (ip68-12-97-90.ok.ok.cox.net. [68.12.97.90]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-6f8d0e0abaesm815930a34.48.2024.05.25.08.57.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 25 May 2024 08:57:39 -0700 (PDT) Date: Sat, 25 May 2024 10:57:37 -0500 From: "G. Branden Robinson" To: Clem Cole Message-ID: <20240525155737.bwmngdyf4qnj4avv@illithid> References: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="tqcyehzst4m75lsr" Content-Disposition: inline In-Reply-To: Message-ID-Hash: BVUAMF7Q5KATVGQIJAUJH27L7TLSUOAQ X-Message-ID-Hash: BVUAMF7Q5KATVGQIJAUJH27L7TLSUOAQ X-MailFrom: g.branden.robinson@gmail.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: TUHS main list X-Mailman-Version: 3.3.6b1 Precedence: list Subject: [TUHS] Re: Was curses ported to Seventh Edition Unix? List-Id: The Unix Heritage Society mailing list Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: --tqcyehzst4m75lsr Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hi Clem, At 2024-05-25T11:40:13-0400, Clem Cole wrote: > It was never needed to be ported -- it was developed on V7. > It was released in comp.sources.unix volume1 as pcurses This bit conflicts with other accounts. Here's what I have in draft. HISTORY 4BSD (1980) introduced curses, implemented largely by Kenneth C. R. C. Arnold, who organized the terminal abstraction and screen management features of Bill Joy=E2=80=99s vi(1) editor into a library. That system ran only on the VAX architecture; curses saw a port to 2.9BSD (1983) for the PDP=E2=80=9011. System V Release 2 (SVr2, 1984) significantly revised curses and replaced the termcap portion thereof with a different API for terminal handling, terminfo. System V added form and menu libraries in SVr3 (1987) and enhanced curses with color support in SVr3.2 later the same year. SVr4 (1989) brought the panel library. pcurses by distinction was, by the accounts I have, a later effort by Pavel Curtis to clone SVr2 curses by taking BSD curses and replacing its termcap bits with a reimplementation terminfo. This was apparently done for licensing reasons, as BSD code was free ("as in freedom") and System V certainly was not. The pcurses 0.7 tarball I have contains a document, doc/manual.tbl.ms, which starts as follows. Note the 2nd and 3rd paragraphs. =2Epo +.5i =2ETL The Curses Reference Manual =2EAU Pavel Curtis =2ENH Introduction =2ELP Terminfo is a database describing many capabilities of over 150 different terminals. Curses is a subroutine package which presents a high level screen model to the programmer, while dealing with issues such as terminal differences and optimization of output to change one screenfull of text into another. =2ELP Terminfo is based on Berkeley's termcap database, but contains a number of improvements and extensions. Parameterized strings are introduced, making it possible to describe such capabilities as video attributes, and to handle far more unusual terminals than possible with termcap. =2ELP Curses is also based on Berkeley's curses package, with many improvements. The package makes use of the insert and delete line and character features of terminals so equipped, and determines how to optimally use these features with no help from the programmer. It allows arbitrary combinations of video attributes to be displayed, even on terminals that leave ``magic cookies'' on the screen to mark changes in attributes. > That said, I believe late volumes have nervous updates. I'm gathering data for another paragraph of that "History" section now. The long and short of it seems to be that: BSD curses, besides getting ported to many platforms, begat pcurses. pcurses begat PCCurses, PDCurses, and ncurses. PCCurses died. PDCurses went dormant, begat PDCursesMod, and roused from its slumber. ncurses, after a long period of erratic early administration that seemed more concerned with seizing celebrity status for its developers (one of whom was more single-minded and successful at this goal than the other) than with software development, has been maintained with a steady hand over 25 years. There also exists NetBSD curses, which wasn't developed ex nihilo but I'm not sure yet what origin it forked from. Regards, Branden --tqcyehzst4m75lsr Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEh3PWHWjjDgcrENwa0Z6cfXEmbc4FAmZSCmoACgkQ0Z6cfXEm bc4VBg//ervb7dTcfUnJQpHCyVEiYuCL/LUln+PhUVqJ+9wbOA1QohP1Pc3hJtc5 zlw8wAgAzYvt0CVFIu8Wew4kT6rBSlPthySRwndIziHeClMV5H3cWi9qys0Q2JWV l5S8j8bgISfFcMtLuWV2WP3U7gu/LvNP6126STaKy6L1b2IopF1l1iezAbv5ZD4X cHVxGgkrnOkZzubCmBxI3phYfQOM4lmSAtZNZkDHGQHZW2afNMRNfjl+Ku8pq7jb 5+zRryKbbUAAHaSlUqKxI7JkYby1rHRguLhnzSjlLA4kTfCUjPkZ1AJqP7K9uooc GHvwafKwWrIazFEBDEKkpPuYoSeGAxjG1nirNpWvIWIpHchY1cy9Ykp3PvmS+ea5 znYhuA+bz5jqNNczYTMRH3rZk2/Fq8bystnsWh9Oqyqckb1Sf/EZx7RKcgjwL3Am 6K/qLj/0XeCypwH+x9uQFfytx97PCDKXwzTR1iWq7giJBkkx6KWkUgjYAZYqKbBA kFoK/Nn9TCcO1ljdCNDMPsbYCEitPgOmbytMYmHWxiGYdLWbMLaZJdyM+BUTL55C rOATlOZcPOjp0tlaHMTscyeHzq1uan8qTUek3FZbt4bo8ifjXO3beqPPRuB4c6Oh ttMOz2lWhNROL8k7pGTAJSKFMRcouIYHA5WpFdWpksCBDSb4EWk= =rMKp -----END PGP SIGNATURE----- --tqcyehzst4m75lsr--