www.delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2021/11/16/11:45:58

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
X-TCPREMOTEIP: 98.110.213.70
X-Authenticated-UID: jpd AT noqsi DOT com
From: John Doty <jpd AT noqsi DOT com>
Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.120.23.2.7\))
Subject: Re: [geda-user] lepton-netlist spice hierarchy
Date: Tue, 16 Nov 2021 11:44:28 -0500
References: <20211115223137 DOT 6977 DOT qmail AT rahul DOT net>
<9F9BD4AD-8E75-41D6-8EAD-974B0C57977E AT noqsi DOT com>
<20211116005009 DOT 12034 DOT qmail AT rahul DOT net>
To: "conover AT rahul DOT net (John Conover) [via geda-user AT delorie DOT com]" <geda-user AT delorie DOT com>
In-Reply-To: <20211116005009.12034.qmail@rahul.net>
Message-Id: <29531129-EE12-4368-816B-D77BB7767295@noqsi.com>
X-Mailer: Apple Mail (2.3608.120.23.2.7)
Reply-To: geda-user AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: geda-user AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

--Apple-Mail=_7AFEEBA4-07E5-4B6D-961C-D8B413175865
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8



> On Nov 15, 2021, at 7:50 PM, conover AT rahul DOT net (John Conover) [via =
geda-user AT delorie DOT com] <geda-user AT delorie DOT com> wrote:
>=20
>    http://www.johncon.com/john/archive/imm-6.tar.gz =
<http://www.johncon.com/john/archive/imm-6.tar.gz>
>=20
> which is the gEDA sources.
>=20
> Changing the program names to the Lepton equivilents, all works fine,
> except the Spice file, schematic.cir, has only the power supply on the
> top level, schematic.sch.

Well, that=E2=80=99s a complete, complicated project. Can you strip it =
down into a simple test case to ease debugging? Something like:



with a single, embedded component.

Curiously, this works fine in Lepton with spice-sdb, generating:

* lepton-netlist -g spice-sdb sdbbug.sch -o lepton-sdb.cir
*********************************************************
* Spice file generated by lepton-netlist                *
* spice-sdb by SDB                                      *
* provides advanced spice netlisting capability.        *
* Documentation at wiki.geda-project.org/geda:csygas    *
*********************************************************
*=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D  Begin SPICE netlist of main =
design =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
X1 0 Vss PVSS
.end

But, it doesn=E2=80=99t work right in gnetlist: it loses the connections =
to named nets!

* gnetlist -g spice-sdb -o geda-sdb.cir sdbbug.sch
*********************************************************
* Spice file generated by gnetlist                      *
* spice-sdb version 4.28.2007 by SDB --                 *
* provides advanced spice netlisting capability.        *
* Documentation at http://www.brorson.com/gEDA/SPICE/   *
*********************************************************
*=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D  Begin SPICE netlist of main =
design =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
X1 unconnected_pin-1 unconnected_pin-2 PVSS
.end

Versions:=20
gEDA 1.8.2 (g875406c), Ubuntu apt install
Lepton EDA/lepton-netlist 1.9.16.20210731 (git: 13cbc49), compiled from =
git a few months ago

John Doty              Noqsi Aerospace, Ltd.
jpd AT noqsi DOT com




--Apple-Mail=_7AFEEBA4-07E5-4B6D-961C-D8B413175865
Content-Type: multipart/mixed;
	boundary="Apple-Mail=_CEF515E9-672A-4F33-97A2-2C7ADEA5C7AB"


--Apple-Mail=_CEF515E9-672A-4F33-97A2-2C7ADEA5C7AB
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html; =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;" class=3D""><br =
class=3D""><div><br class=3D""><blockquote type=3D"cite" class=3D""><div =
class=3D"">On Nov 15, 2021, at 7:50 PM, <a =
href=3D"mailto:conover AT rahul DOT net" class=3D"">conover AT rahul DOT net</a> (John =
Conover) [via <a href=3D"mailto:geda-user AT delorie DOT com" =
class=3D"">geda-user AT delorie DOT com</a>] &lt;<a =
href=3D"mailto:geda-user AT delorie DOT com" =
class=3D"">geda-user AT delorie DOT com</a>&gt; wrote:</div><br =
class=3D"Apple-interchange-newline"><div class=3D""><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;" class=3D"">&nbsp;&nbsp;&nbsp;</span><a =
href=3D"http://www.johncon.com/john/archive/imm-6.tar.gz" =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;" =
class=3D"">http://www.johncon.com/john/archive/imm-6.tar.gz</a><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;" class=3D""><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;" class=3D""><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;" class=3D"">which is the gEDA =
sources.</span><br style=3D"caret-color: rgb(0, 0, 0); font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none;" class=3D""><br style=3D"caret-color: rgb(0, 0, 0); font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none;" class=3D""><span style=3D"caret-color: rgb(0, 0, 0); font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: =
normal; font-weight: normal; letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: =
none; float: none; display: inline !important;" class=3D"">Changing the =
program names to the Lepton equivilents, all works fine,</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;" class=3D""><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;" class=3D"">except the Spice file, =
schematic.cir, has only the power supply on the</span><br =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none;" class=3D""><span =
style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: =
12px; font-style: normal; font-variant-caps: normal; font-weight: =
normal; letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; =
display: inline !important;" class=3D"">top level, =
schematic.sch.</span><br style=3D"caret-color: rgb(0, 0, 0); =
font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; =
text-decoration: none;" class=3D""></div></blockquote><br =
class=3D""></div><div>Well, that=E2=80=99s a complete, complicated =
project. Can you strip it down into a simple test case to ease =
debugging? Something like:</div><div><br =
class=3D""></div><div></div></body></html>=

--Apple-Mail=_CEF515E9-672A-4F33-97A2-2C7ADEA5C7AB
Content-Disposition: attachment;
	filename=sdbbug.sch
Content-Type: application/octet-stream;
	x-unix-mode=0664;
	name="sdbbug.sch"
Content-Transfer-Encoding: 7bit

v 20210731 2
C -24500 64900 1 0 0 EMBEDDEDPVSS-1.sym
[
B -24300 64900 800 800 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
L -24300 65700 -23500 64900 3 0 0 0 -1 -1
L -24300 64900 -23500 65700 3 0 0 0 -1 -1
P -24500 65300 -24300 65300 1 0 0
{
T -24500 65300 5 10 0 0 0 0 1
pinseq=1
T -24500 65300 5 10 0 0 0 0 1
pinnumber=1
T -24500 65300 5 10 0 0 0 0 1
pintype=pas
T -24500 65300 5 10 0 0 0 0 1
pinlabel=A
}
P -23300 65300 -23500 65300 1 0 0
{
T -23300 65300 5 10 0 0 0 6 1
pinseq=2
T -23405 65345 5 10 0 0 0 0 1
pinnumber=2
T -23300 65300 5 10 0 0 0 6 1
pintype=pas
T -23555 65295 5 10 0 0 0 6 1
pinlabel=B
}
T -23900 65300 9 10 1 1 0 4 1
PVSS
T -24300 65800 8 10 0 1 0 0 1
refdes=X?
T -23000 66600 5 10 0 0 0 0 1
device=PVSS
T -23000 66400 8 10 0 0 0 0 1
model-name=PVSS
T -24400 66200 8 10 0 0 0 0 1
numslots=0
T -23000 66200 8 10 0 1 0 0 1
description=Analog negative rail
T -24400 66000 8 10 0 1 0 0 1
documentation=http://research.kek.jp/people/ikeda/openIP
T -24400 66800 8 10 0 0 0 0 1
symversion=1.0
T -24400 66600 8 10 0 1 0 0 1
author=jpd AT noqsi DOT com
T -24400 66400 8 10 0 0 0 0 1
footprint=none
T -24500 64900 8 10 0 0 0 0 1
dist-license=GPL
T -24500 64900 8 10 0 0 0 0 1
use-license=unlimited
]
{
T -24300 65800 5 10 1 1 0 0 1
refdes=X1
T -23000 66600 5 10 0 0 0 0 1
device=PVSS
T -23000 66400 5 10 0 0 0 0 1
model-name=PVSS
T -24400 66800 5 10 0 0 0 0 1
symversion=1.0
T -24400 66400 5 10 0 0 0 0 1
footprint=none
}
C -24600 65000 1 0 0 gnd-1.sym
N -23300 65300 -23100 65300 4
{
T -23200 65400 5 10 1 1 0 0 1
netname=Vss
}

--Apple-Mail=_CEF515E9-672A-4F33-97A2-2C7ADEA5C7AB
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html; =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;" =
class=3D""><div></div><div><br class=3D""></div><div>with a single, =
embedded component.</div><div><br class=3D""></div><div>Curiously, this =
works fine in Lepton with spice-sdb, generating:</div><div><br =
class=3D""></div><div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 10px; line-height: normal; font-family: Monaco; =
background-color: rgba(255, 255, 255, 0.93);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">* =
lepton-netlist -g spice-sdb sdbbug.sch -o =
lepton-sdb.cir</span></div><div style=3D"margin: 0px; font-stretch: =
normal; font-size: 10px; line-height: normal; font-family: Monaco; =
background-color: rgba(255, 255, 255, 0.93);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">*********************************************************</span=
></div><div style=3D"margin: 0px; font-stretch: normal; font-size: 10px; =
line-height: normal; font-family: Monaco; background-color: rgba(255, =
255, 255, 0.93);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">* Spice file generated by =
lepton-netlist&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
*</span></div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 10px; line-height: normal; font-family: Monaco; =
background-color: rgba(255, 255, 255, 0.93);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">* =
spice-sdb by SDB&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; *</span></div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 10px; line-height: normal; font-family: Monaco; =
background-color: rgba(255, 255, 255, 0.93);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">* =
provides advanced spice netlisting capability.&nbsp; &nbsp; &nbsp; =
&nbsp; *</span></div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 10px; line-height: normal; font-family: Monaco; =
background-color: rgba(255, 255, 255, 0.93);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">* =
Documentation at <a href=3D"http://wiki.geda-project.org/geda:csygas" =
class=3D"">wiki.geda-project.org/geda:csygas</a>&nbsp; &nbsp; =
*</span></div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 10px; line-height: normal; font-family: Monaco; =
background-color: rgba(255, 255, 255, 0.93);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">*********************************************************</span=
></div><div style=3D"margin: 0px; font-stretch: normal; font-size: 10px; =
line-height: normal; font-family: Monaco; background-color: rgba(255, =
255, 255, 0.93);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">*=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
&nbsp; Begin SPICE netlist of main design =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D</span></div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 10px; line-height: normal; font-family: Monaco; =
background-color: rgba(255, 255, 255, 0.93);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">X1 0 =
Vss PVSS</span></div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 10px; line-height: normal; font-family: Monaco; =
background-color: rgba(255, 255, 255, 0.93);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">.end</span></div></div><div><br class=3D""></div><div>But, it =
doesn=E2=80=99t work right in gnetlist: it loses the connections to =
named nets!</div><div><br class=3D""></div><div><div style=3D"margin: =
0px; font-stretch: normal; font-size: 10px; line-height: normal; =
font-family: Monaco; background-color: rgba(255, 255, 255, 0.93);" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">* gnetlist -g spice-sdb -o geda-sdb.cir =
sdbbug.sch</span></div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 10px; line-height: normal; font-family: Monaco; =
background-color: rgba(255, 255, 255, 0.93);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">*********************************************************</span=
></div><div style=3D"margin: 0px; font-stretch: normal; font-size: 10px; =
line-height: normal; font-family: Monaco; background-color: rgba(255, =
255, 255, 0.93);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">* Spice file generated by gnetlist&nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
*</span></div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 10px; line-height: normal; font-family: Monaco; =
background-color: rgba(255, 255, 255, 0.93);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">* =
spice-sdb version 4.28.2007 by SDB -- &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; *</span></div><div style=3D"margin: 0px; =
font-stretch: normal; font-size: 10px; line-height: normal; font-family: =
Monaco; background-color: rgba(255, 255, 255, 0.93);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">* =
provides advanced spice netlisting capability.&nbsp; &nbsp; &nbsp; =
&nbsp; *</span></div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 10px; line-height: normal; font-family: Monaco; =
background-color: rgba(255, 255, 255, 0.93);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">* =
Documentation at <a href=3D"http://www.brorson.com/gEDA/SPICE/" =
class=3D"">http://www.brorson.com/gEDA/SPICE/</a> &nbsp; =
*</span></div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 10px; line-height: normal; font-family: Monaco; =
background-color: rgba(255, 255, 255, 0.93);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">*********************************************************</span=
></div><div style=3D"margin: 0px; font-stretch: normal; font-size: 10px; =
line-height: normal; font-family: Monaco; background-color: rgba(255, =
255, 255, 0.93);" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">*=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
&nbsp; Begin SPICE netlist of main design =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D</span></div><div style=3D"margin: 0px; font-stretch: normal; =
font-size: 10px; line-height: normal; font-family: Monaco; =
background-color: rgba(255, 255, 255, 0.93);" class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D"">X1 =
unconnected_pin-1 unconnected_pin-2 PVSS</span></div><div style=3D"margin:=
 0px; font-stretch: normal; font-size: 10px; line-height: normal; =
font-family: Monaco; background-color: rgba(255, 255, 255, 0.93);" =
class=3D""><span style=3D"font-variant-ligatures: no-common-ligatures" =
class=3D"">.end</span></div><div class=3D""><span =
style=3D"font-variant-ligatures: no-common-ligatures" class=3D""><br =
class=3D""></span></div><div class=3D"">Versions:&nbsp;</div><div =
class=3D"">gEDA 1.8.2 (g875406c), Ubuntu apt install</div><div =
class=3D""><div style=3D"margin: 0px; font-stretch: normal; line-height: =
normal;" class=3D""><span style=3D"font-variant-ligatures: =
no-common-ligatures" class=3D"">Lepton EDA/lepton-netlist =
1.9.16.20210731 (git: 13cbc49), compiled from git a few months =
ago</span></div></div></div><br class=3D""><div class=3D"">
<span class=3D"Apple-style-span" style=3D"border-collapse: separate; =
border-spacing: 0px; font-variant-ligatures: normal; =
font-variant-east-asian: normal; font-variant-position: normal; =
line-height: normal;"><div style=3D"word-wrap: break-word;" =
class=3D""><span class=3D"Apple-style-span" style=3D"border-collapse: =
separate; border-spacing: 0px; color: rgb(0, 0, 0); font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: =
normal; font-variant-caps: normal; font-variant-east-asian: normal; =
font-variant-position: normal; font-weight: normal; letter-spacing: =
normal; line-height: normal; text-indent: 0px; text-transform: none; =
orphans: 2; white-space: normal; widows: 2; word-spacing: 0px;"><p =
style=3D"margin: 0px;" class=3D""><font face=3D"Helvetica" size=3D"3" =
style=3D"font-style: normal; font-variant-caps: normal; font-weight: =
normal; font-size: 12px; line-height: normal; font-family: Helvetica;" =
class=3D"">John Doty<span class=3D"Apple-converted-space">&nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp;<span =
class=3D"Apple-converted-space">&nbsp;</span><span =
class=3D"Apple-converted-tab">&nbsp; &nbsp;<span =
class=3D"Apple-converted-space">&nbsp;</span></span></span>Noqsi =
Aerospace, Ltd.</font></p><p style=3D"margin: 0px;" class=3D""><a =
href=3D"mailto:jpd AT noqsi DOT com" class=3D"">jpd AT noqsi DOT com</a></p><br =
class=3D"Apple-interchange-newline"></span></div></span><br =
class=3D"Apple-interchange-newline">
</div>
<br class=3D""></body></html>=

--Apple-Mail=_CEF515E9-672A-4F33-97A2-2C7ADEA5C7AB--

--Apple-Mail=_7AFEEBA4-07E5-4B6D-961C-D8B413175865--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019