ifinally fix most (all?) layout issue: 2 column layout! - tgtimes - The Gopher Times Err bitreich.org 70 hgit clone git://bitreich.org/tgtimes git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/tgtimes URL:git://bitreich.org/tgtimes git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/tgtimes bitreich.org 70 1Log /scm/tgtimes/log.gph bitreich.org 70 1Files /scm/tgtimes/files.gph bitreich.org 70 1Refs /scm/tgtimes/refs.gph bitreich.org 70 1Tags /scm/tgtimes/tag bitreich.org 70 1README /scm/tgtimes/file/README.md.gph bitreich.org 70 i--- Err bitreich.org 70 1commit 52422671e3a49499d7e840af9a03e1f6df6cd9b0 /scm/tgtimes/commit/52422671e3a49499d7e840af9a03e1f6df6cd9b0.gph bitreich.org 70 1parent 43c62ad11347dd5b2b0a2d58a67da6be23867486 /scm/tgtimes/commit/43c62ad11347dd5b2b0a2d58a67da6be23867486.gph bitreich.org 70 hAuthor: Josuah Demangeon URL:mailto:me@josuah.net bitreich.org 70 iDate: Fri, 22 Apr 2022 20:48:39 +0200 Err bitreich.org 70 i Err bitreich.org 70 ifinally fix most (all?) layout issue: 2 column layout! Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M opus4/article-20h-interview.mw | 2 +- Err bitreich.org 70 i M opus4/article-announce-open-admin-… | 2 +- Err bitreich.org 70 i M opus4/article-bitreich-2022-03-06T… | 2 +- Err bitreich.org 70 i M opus4/article-bitreich-2022-03-07T… | 2 +- Err bitreich.org 70 i M opus4/article-bitreich-2022-03-25T… | 2 +- Err bitreich.org 70 i M opus4/article-bitreich-2022-03-26T… | 2 +- Err bitreich.org 70 i M opus4/article-bitreich-2022-03-27T… | 3 ++- Err bitreich.org 70 i M opus4/article-bitreich-2022-03-29T… | 3 ++- Err bitreich.org 70 i M opus4/article-tgtimes-bbc-reviving… | 2 +- Err bitreich.org 70 i M opus4/article-tgtimes-bistromatik.… | 2 +- Err bitreich.org 70 i M opus4/article-tgtimes-carrying-the… | 2 +- Err bitreich.org 70 i M opus4/article-tgtimes-st-lazare-tr… | 2 +- Err bitreich.org 70 i M opus4/article-tgtimes-what-on-mars… | 2 +- Err bitreich.org 70 i M opus4/article-tmpout-2.mw | 2 +- Err bitreich.org 70 i M opus4/tgtimes4.pdf | 0 Err bitreich.org 70 i M opus4/tgtimes4.txt | 6 ++++-- Err bitreich.org 70 i A opus5/article-tgtimes-fft-hack.mw | 90 +++++++++++++++++++++++++++++++ Err bitreich.org 70 i A opus5/article-tgtimes-maemo-leste-… | 4 ++++ Err bitreich.org 70 i M tmac.w | 19 +++++++++---------- Err bitreich.org 70 i Err bitreich.org 70 i19 files changed, 123 insertions(+), 26 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/opus4/article-20h-interview.mw b/opus4/article-20h-interview.mw /scm/tgtimes/file/opus4/article-20h-interview.mw.gph bitreich.org 70 i@@ -1,6 +1,6 @@ Err bitreich.org 70 i .SH 20h Err bitreich.org 70 i Breaking free from medical devices Err bitreich.org 70 i-.2C 50v Err bitreich.org 70 i+.2C 125v Err bitreich.org 70 i . Err bitreich.org 70 i .PP Err bitreich.org 70 i Unlike most USB gadgets around, medical devices require a specification Err bitreich.org 70 1diff --git a/opus4/article-announce-open-admin-position-in-france.mw b/opus4/article-announce-open-admin-position-in-france.mw /scm/tgtimes/file/opus4/article-announce-open-admin-position-in-france.mw.gph bitreich.org 70 i@@ -1,6 +1,6 @@ Err bitreich.org 70 i .SH announce Err bitreich.org 70 i Linux Sysadmin Job Offer Err bitreich.org 70 i-.2C 12v Err bitreich.org 70 i+.2C 20v Err bitreich.org 70 i . Err bitreich.org 70 i .PP Err bitreich.org 70 i The web is hiring over and over. Err bitreich.org 70 1diff --git a/opus4/article-bitreich-2022-03-06T21-20-12-652045.mw b/opus4/article-bitreich-2022-03-06T21-20-12-652045.mw /scm/tgtimes/file/opus4/article-bitreich-2022-03-06T21-20-12-652045.mw.gph bitreich.org 70 i@@ -1,6 +1,6 @@ Err bitreich.org 70 i .SH 20h Err bitreich.org 70 i 2022-03-06 GangBAN aftermaths Err bitreich.org 70 i-.2C 15v Err bitreich.org 70 i+.2C 11v Err bitreich.org 70 i . Err bitreich.org 70 i .PP Err bitreich.org 70 i This Sunday was a fun one. Err bitreich.org 70 1diff --git a/opus4/article-bitreich-2022-03-07T13-00-00-133769.mw b/opus4/article-bitreich-2022-03-07T13-00-00-133769.mw /scm/tgtimes/file/opus4/article-bitreich-2022-03-07T13-00-00-133769.mw.gph bitreich.org 70 i@@ -1,6 +1,6 @@ Err bitreich.org 70 i .SH Hiltjo Err bitreich.org 70 i sfeed 1.4 released Err bitreich.org 70 i-.2C 50v Err bitreich.org 70 i+.2C 33v Err bitreich.org 70 i . Err bitreich.org 70 i .PP Err bitreich.org 70 i I want to thank all people who gave feedback. Err bitreich.org 70 1diff --git a/opus4/article-bitreich-2022-03-25T18-22-39-498139.mw b/opus4/article-bitreich-2022-03-25T18-22-39-498139.mw /scm/tgtimes/file/opus4/article-bitreich-2022-03-25T18-22-39-498139.mw.gph bitreich.org 70 i@@ -1,6 +1,6 @@ Err bitreich.org 70 i .SH 20h Err bitreich.org 70 i New Bitreich Project: rfcommd Err bitreich.org 70 i-.2C 15v Err bitreich.org 70 i+.2C 13v Err bitreich.org 70 i . Err bitreich.org 70 i .PP Err bitreich.org 70 i There is a new project on bitreich: rfcommd. Err bitreich.org 70 1diff --git a/opus4/article-bitreich-2022-03-26T19-55-05-578948.mw b/opus4/article-bitreich-2022-03-26T19-55-05-578948.mw /scm/tgtimes/file/opus4/article-bitreich-2022-03-26T19-55-05-578948.mw.gph bitreich.org 70 i@@ -1,6 +1,6 @@ Err bitreich.org 70 i .SH 20h Err bitreich.org 70 i Memecache atom feed Err bitreich.org 70 i-.2C 5v Err bitreich.org 70 i+.2C 8v Err bitreich.org 70 i . Err bitreich.org 70 i .PP Err bitreich.org 70 i Thanks to the innovation from the Netherlands, Err bitreich.org 70 1diff --git a/opus4/article-bitreich-2022-03-27T20-00-55-040395.mw b/opus4/article-bitreich-2022-03-27T20-00-55-040395.mw /scm/tgtimes/file/opus4/article-bitreich-2022-03-27T20-00-55-040395.mw.gph bitreich.org 70 i@@ -24,7 +24,8 @@ git://bitreich.org/rfcommd Err bitreich.org 70 i Just attach a serial2bluetooth dongle and some bluetooth dongle in your linux machine, then use the new added filter: Err bitreich.org 70 i . Err bitreich.org 70 i .FS Err bitreich.org 70 i-gopher://bitreich.org/1/scm/rfcommd/commit/9b77ca90e9cf4ca7cd9521e6756dc2b833cdefce.gph Err bitreich.org 70 i+gopher://bitreich.org/1/scm/rfcommd/commit/ Err bitreich.org 70 i+9b77ca90e9cf4ca7cd9521e6756dc2b833cdefce.gph Err bitreich.org 70 i .FE Err bitreich.org 70 i . Err bitreich.org 70 i .PP Err bitreich.org 70 1diff --git a/opus4/article-bitreich-2022-03-29T17-17-55-362953.mw b/opus4/article-bitreich-2022-03-29T17-17-55-362953.mw /scm/tgtimes/file/opus4/article-bitreich-2022-03-29T17-17-55-362953.mw.gph bitreich.org 70 i@@ -7,7 +7,8 @@ Bitreich is always ahead in its structure, organisation and technology. Err bitreich.org 70 i So is our democracy: Err bitreich.org 70 i . Err bitreich.org 70 i .FS Err bitreich.org 70 i-gopher://bitreich.org/1/scm/bitreich-council/commit/f43daad938405d966c158a12b6fcb8f13a9d1868.gph Err bitreich.org 70 i+gopher://bitreich.org/1/scm/bitreich-council/commit/ Err bitreich.org 70 i+f43daad938405d966c158a12b6fcb8f13a9d1868.gph Err bitreich.org 70 i .FE Err bitreich.org 70 i . Err bitreich.org 70 i .PP Err bitreich.org 70 1diff --git a/opus4/article-tgtimes-bbc-reviving-the-radio.mw b/opus4/article-tgtimes-bbc-reviving-the-radio.mw /scm/tgtimes/file/opus4/article-tgtimes-bbc-reviving-the-radio.mw.gph bitreich.org 70 i@@ -1,6 +1,6 @@ Err bitreich.org 70 i .SH tgtimes Err bitreich.org 70 i BBC Reviving the Plain Old Radio Err bitreich.org 70 i-.2C 32v Err bitreich.org 70 i+.2C 31v Err bitreich.org 70 i . Err bitreich.org 70 i .PP Err bitreich.org 70 i BBC, one of the earliest if not the first radio broadcasting ever, Err bitreich.org 70 1diff --git a/opus4/article-tgtimes-bistromatik.mw b/opus4/article-tgtimes-bistromatik.mw /scm/tgtimes/file/opus4/article-tgtimes-bistromatik.mw.gph bitreich.org 70 i@@ -1,6 +1,6 @@ Err bitreich.org 70 i .SH tgtimes Err bitreich.org 70 i Beerware: Hardware for Beer Err bitreich.org 70 i-.2C 20v Err bitreich.org 70 i+.2C 16v Err bitreich.org 70 i . Err bitreich.org 70 i .PP Err bitreich.org 70 i Retreated industrial robot hardware recycled into a bartender. Err bitreich.org 70 1diff --git a/opus4/article-tgtimes-carrying-the-cross.mw b/opus4/article-tgtimes-carrying-the-cross.mw /scm/tgtimes/file/opus4/article-tgtimes-carrying-the-cross.mw.gph bitreich.org 70 i@@ -1,6 +1,6 @@ Err bitreich.org 70 i .SH tgtimes Err bitreich.org 70 i Carrying the Cross Err bitreich.org 70 i-.2C 20v Err bitreich.org 70 i+.2C 19v Err bitreich.org 70 i . Err bitreich.org 70 i .PP Err bitreich.org 70 i Walking on the streets, slowly, slowed-down by carrying a huge Err bitreich.org 70 1diff --git a/opus4/article-tgtimes-st-lazare-transforms.mw b/opus4/article-tgtimes-st-lazare-transforms.mw /scm/tgtimes/file/opus4/article-tgtimes-st-lazare-transforms.mw.gph bitreich.org 70 i@@ -1,6 +1,6 @@ Err bitreich.org 70 i .SH tgtimes Err bitreich.org 70 i St-Lazare's Paris Train Station Err bitreich.org 70 i-.2C 30v Err bitreich.org 70 i+.2C 24v Err bitreich.org 70 i . Err bitreich.org 70 i .PP Err bitreich.org 70 i Ah! The \fISaint Lazare\fR train station. Emblem of the Parisian Err bitreich.org 70 1diff --git a/opus4/article-tgtimes-what-on-mars.mw b/opus4/article-tgtimes-what-on-mars.mw /scm/tgtimes/file/opus4/article-tgtimes-what-on-mars.mw.gph bitreich.org 70 i@@ -1,6 +1,6 @@ Err bitreich.org 70 i .SH tgtimes Err bitreich.org 70 i What really happened on Mars? Err bitreich.org 70 i-.2C 10v Err bitreich.org 70 i+.2C 34v Err bitreich.org 70 i . Err bitreich.org 70 i .PP Err bitreich.org 70 i What can possibly go wrong while sending a device entirely controlled Err bitreich.org 70 1diff --git a/opus4/article-tmpout-2.mw b/opus4/article-tmpout-2.mw /scm/tgtimes/file/opus4/article-tmpout-2.mw.gph bitreich.org 70 i@@ -1,6 +1,6 @@ Err bitreich.org 70 i .SH tmpout Err bitreich.org 70 i TMP.0UT Volume 2 is Out Err bitreich.org 70 i-.2C 10v Err bitreich.org 70 i+.2C 14v Err bitreich.org 70 i . Err bitreich.org 70 i .PP Err bitreich.org 70 i In the sytle of the Phrack online resource, tmp.0ut publishes its Err bitreich.org 70 1diff --git a/opus4/tgtimes4.pdf b/opus4/tgtimes4.pdf /scm/tgtimes/file/opus4/tgtimes4.pdf.gph bitreich.org 70 iBinary files differ. Err bitreich.org 70 1diff --git a/opus4/tgtimes4.txt b/opus4/tgtimes4.txt /scm/tgtimes/file/opus4/tgtimes4.txt.gph bitreich.org 70 i@@ -743,7 +743,8 @@ ____________________________________________________________ Err bitreich.org 70 i [1] Err bitreich.org 70 i git://bitreich.org/rfcommd Err bitreich.org 70 i [2] Err bitreich.org 70 i- gopher://bitreich.org/1/scm/rfcommd/commit/9b77ca90e9cf4ca7cd9521e6756dc2b833cdefce.gph Err bitreich.org 70 i+ gopher://bitreich.org/1/scm/rfcommd/commit/ Err bitreich.org 70 i+ 9b77ca90e9cf4ca7cd9521e6756dc2b833cdefce.gph Err bitreich.org 70 i Err bitreich.org 70 i Err bitreich.org 70 i Err bitreich.org 70 i@@ -928,7 +929,8 @@ ____________________________________________________________ Err bitreich.org 70 i Err bitreich.org 70 i Err bitreich.org 70 i [1] Err bitreich.org 70 i- gopher://bitreich.org/1/scm/bitreich-council/commit/f43daad938405d966c158a12b6fcb8f13a9d1868.gph Err bitreich.org 70 i+ gopher://bitreich.org/1/scm/bitreich-council/commit/ Err bitreich.org 70 i+ f43daad938405d966c158a12b6fcb8f13a9d1868.gph Err bitreich.org 70 i [2] Err bitreich.org 70 i https://lwn.net/Articles/889444/ Err bitreich.org 70 i Err bitreich.org 70 1diff --git a/opus5/article-tgtimes-fft-hack.mw b/opus5/article-tgtimes-fft-hack.mw /scm/tgtimes/file/opus5/article-tgtimes-fft-hack.mw.gph bitreich.org 70 i@@ -0,0 +1,90 @@ Err bitreich.org 70 i+.SH tgtimes Err bitreich.org 70 i+Relics of Fast Fourrier Transform from the past Err bitreich.org 70 i+. Err bitreich.org 70 i+.PP Err bitreich.org 70 i+In 1967, the Kooley-Tukey FFT algorythm (the one we all use now) was written in Fortran. Err bitreich.org 70 i+What the hell were they running it on, and what damned data were they feeding into it?! Err bitreich.org 70 i+. Err bitreich.org 70 i+.DS Err bitreich.org 70 i+ SUBROUTINE FOUR1(DATA,NN,ISIGN) Err bitreich.org 70 i+C THE COOLEY-TUKEY FAST ROURIER TRANSFORM IN USASI BASIC FORTRAN Err bitreich.org 70 i+C TRANSFORM(J) = SUM(DATA(I)+W**((I-1)*(J-1)). WHERE I AND J RUN Err bitreich.org 70 i+C FROM 1 TO NN AND W = EXP(ISIGN*2*PI+SQRT(-1)/NN). DATA IS ONE- Err bitreich.org 70 i+C DIMENSIONAL COMPLEX ARRAY (I.E.: THE REAL AND IMAGINARY PARTS OF Err bitreich.org 70 i+C THE DATA ARE LOCATE IMMEDIATELY ADJACENT IN STORAGE, SUCH AS Err bitreich.org 70 i+C FORTRAN IV PLACES THEM) WHOSE LENGTH NN IS A POWER OF TWO. ISIGN Err bitreich.org 70 i+C IS +1 OR -1, GIVING THE SIGN OF THE TRANSFORM, TRANSFORM VALUES Err bitreich.org 70 i+C ARE RETURNED IN ARRAY DATA, REPLACING THE INPUT DATA. THE TIME IS Err bitreich.org 70 i+C PROPORTIONAL TO N*LOG2(N), RATHER THAN THE USUAL N**2. WRITTEN BY Err bitreich.org 70 i+C NORMAN BRENNER, JUNE 1967, THIS IS THE SHOURTEST VERSION Err bitreich.org 70 i+C OF FFT KNOWN THE THE AUTHOR, AND IS INTENDED MAINLY FOR Err bitreich.org 70 i+C DEMONSTRATION. PROGRAMS FOUR2 AND FOURT ARE AVAILABLE THAT RUN Err bitreich.org 70 i+C TWICE AS FAST AND OPERATE ON MULTIDIMENSIONAL ARRAYS WHOSE Err bitreich.org 70 i+C DIMENSIONS ARE NOT RESTRICTED TO POWERS OR TWO. (LOOKING UP SINES Err bitreich.org 70 i+C AND COSINES IN A TABLE WILL CUT RUNNING TIME OF FOUR1 BY A THIRD.) Err bitreich.org 70 i+C SEE-- IEEE AUDIO TRANSACTIONS (JUNE 1967), SPECIAL ISSUE ON FFT. Err bitreich.org 70 i+ DIMENSION DATA(1) Err bitreich.org 70 i+ N=2*NN Err bitreich.org 70 i+ J=1 Err bitreich.org 70 i+ DO 5 I=1,N,2 Err bitreich.org 70 i+ IF(I-J)1,2,2 Err bitreich.org 70 i+1 TEMPR=DATA(J) Err bitreich.org 70 i+ TEMPI=DATA(J+1) Err bitreich.org 70 i+ DATA(J)=DATA(I) Err bitreich.org 70 i+ DATA(J+1)=DATA(I+1) Err bitreich.org 70 i+ DATA(I)=TEMPR Err bitreich.org 70 i+ DATA(I+1)=TEMPI Err bitreich.org 70 i+2 M=N/2 Err bitreich.org 70 i+3 IF(J-M)5,5,4 Err bitreich.org 70 i+4 J=J-M Err bitreich.org 70 i+ M=M/2 Err bitreich.org 70 i+ IF(M-2)5,3,3 Err bitreich.org 70 i+5 J=J+M Err bitreich.org 70 i+ MMAX=2 Err bitreich.org 70 i+6 IF(MMAX-N)7,9,9 Err bitreich.org 70 i+7 ISTEP=2*MMAX Err bitreich.org 70 i+ DO 8 M=1,MMAX,2 Err bitreich.org 70 i+ THETA=3.1415926535*FLOAT(ISIGN*(M-1))/FLOAT(MMAX) Err bitreich.org 70 i+ WR=COS(THETA) Err bitreich.org 70 i+ WI=SIN(THETA) Err bitreich.org 70 i+ DO 8 I=M,N,ISTEP Err bitreich.org 70 i+ J=I+MMAX Err bitreich.org 70 i+ TEMPR=WR*DATA(J)-WI*DATA(J+1) Err bitreich.org 70 i+ TEMPI=WR*DATA(J+1)+WI*DATA(J) Err bitreich.org 70 i+ DATA(J)=DATA(I)-TEMPR Err bitreich.org 70 i+ DATA(J+1)=DATA(I+1)-TEMPI Err bitreich.org 70 i+ DATA(I)=DATA(I)+TEMPR Err bitreich.org 70 i+8 DATA(I+1)=DATA(I+1)+TEMPI Err bitreich.org 70 i+ MMAX=ISTEP Err bitreich.org 70 i+ GO TO 6 Err bitreich.org 70 i+9 RETURN Err bitreich.org 70 i+ END Err bitreich.org 70 i+.DE Err bitreich.org 70 i+. Err bitreich.org 70 i+.PP Err bitreich.org 70 i+And no, you \fBcannot\fR get the IEEE document because IEEE broke it up into pages and sells each page individually. Err bitreich.org 70 i+. Err bitreich.org 70 i+.DS Err bitreich.org 70 i+"PROGRAMS FOUR2 AND FOURT ARE AVAILABLE THAT RUN Err bitreich.org 70 i+C TWICE AS FAST AND OPERATE ON MULTIDIMENSIONAL ARRAYS WHOSE Err bitreich.org 70 i+C DIMENSIONS ARE NOT RESTRICTED TO POWERS OR TWO." Err bitreich.org 70 i+.DE Err bitreich.org 70 i+. Err bitreich.org 70 i+.PP Err bitreich.org 70 i+But, this code was easy to port because it was small, so, to this day, we use it. Err bitreich.org 70 i+It was ported from Fortran to BASIC, then to C, then to C++ and everything else. Err bitreich.org 70 i+. Err bitreich.org 70 i+.PP Err bitreich.org 70 i+Nobody ever actually understood it, so they didn't fix anything. Err bitreich.org 70 i+You see, Fortran has no bitwise operateors, so alot of the acrobatics Err bitreich.org 70 i+in that code are just doing bitwise operations in regular math. Err bitreich.org 70 i+Its absolutely amazing when you tear it apart. Err bitreich.org 70 i+. Err bitreich.org 70 i+.PP Err bitreich.org 70 i+I got the code from a bad scan of a document off a military ftp site. Err bitreich.org 70 i+What I love, and find halarious, is that this code has been ported and hacked a million times since it was written. Err bitreich.org 70 i+. Err bitreich.org 70 i+.PP Err bitreich.org 70 i+But, from the comments, it, itself, is a hack. Err bitreich.org 70 i+It is a mash up of cooley and tukeys code. Err bitreich.org 70 i+It is a hack, from 1967. Err bitreich.org 70 1diff --git a/opus5/article-tgtimes-maemo-leste-update.mw b/opus5/article-tgtimes-maemo-leste-update.mw /scm/tgtimes/file/opus5/article-tgtimes-maemo-leste-update.mw.gph bitreich.org 70 i@@ -0,0 +1,4 @@ Err bitreich.org 70 i+ Err bitreich.org 70 i+.FS Err bitreich.org 70 i+https://maemo-leste.github.io/maemo-leste-sixteenth-update-november-and-december-2021-january-april-2022.html Err bitreich.org 70 i+.FE Err bitreich.org 70 1diff --git a/tmac.w b/tmac.w /scm/tgtimes/file/tmac.w.gph bitreich.org 70 i@@ -36,7 +36,7 @@ Err bitreich.org 70 i .. Err bitreich.org 70 i . Err bitreich.org 70 i .de #1 \"single-column mode Err bitreich.org 70 i-. #p Err bitreich.org 70 i+. #p 1v \\n($Vu Err bitreich.org 70 i . if \\n($C>1 ' sp \\n(.tu \"run into the trap Err bitreich.org 70 i . ll \\n($Lu Err bitreich.org 70 i . po \\n($Mu Err bitreich.org 70 i@@ -46,25 +46,23 @@ Err bitreich.org 70 i .. Err bitreich.org 70 i . Err bitreich.org 70 i .de #2 \"two-column mode Err bitreich.org 70 i-. #p Err bitreich.org 70 i . ll (\\n($Lu-\\n($Mu)/2u \"decrease line length Err bitreich.org 70 i . mk \"mark this place as top of column Err bitreich.org 70 i . ie \\n(nlu+\\$1>\\n(.pu \{ . Err bitreich.org 70 i-. ch #B -\\n($Mu Err bitreich.org 70 i+. ch #B -\\n($Mu \"span over multiple pages Err bitreich.org 70 i+. nr $c \\$1-\\n(.tu \"height after the next trap is over Err bitreich.org 70 i . \} Err bitreich.org 70 i . el \{ . Err bitreich.org 70 i-. ch #B \\n(nlu+\\$1 Err bitreich.org 70 i+. ch #B \\n(nlu+\\$1 \"enough room before the bottom Err bitreich.org 70 i . \} Err bitreich.org 70 i . nr $C 1 \"1st column begins Err bitreich.org 70 i-. nr $c \\$1 \"set column length Err bitreich.org 70 i .. Err bitreich.org 70 i . Err bitreich.org 70 i .de #B \"bottom of page trap Err bitreich.org 70 i . ie \\n($C=0 \{ . \"no column Err bitreich.org 70 i ' bp Err bitreich.org 70 i ' sp \\n($Mu Err bitreich.org 70 i-. nr $B (-\\n($Mu) Err bitreich.org 70 i-. ch #B \\n($Bu \"reset bottom trap Err bitreich.org 70 i+. ch #B (-\\n($Mu) \"reset bottom trap Err bitreich.org 70 i . \} Err bitreich.org 70 i . el .ie \\n($C=1 \{ . \"1st column ends Err bitreich.org 70 i . nr $C 2 \"2st column begins Err bitreich.org 70 i@@ -75,12 +73,13 @@ Err bitreich.org 70 i . nr $C 1 \"1st column begins Err bitreich.org 70 i . po \\n($Mu Err bitreich.org 70 i . Err bitreich.org 70 i-. ie (\\n(nlu+2v)>(\\n(.pu-\\n($Mu) \{ . Err bitreich.org 70 i+. \"if we are at the bottom of a page Err bitreich.org 70 i+. if (\\n(nlu+2v)>(\\n(.pu-\\n($Mu) \{ . Err bitreich.org 70 i ' bp Err bitreich.org 70 i-' sp \\n($Mu Err bitreich.org 70 i-. mk Err bitreich.org 70 i+. #2 \\n($cu Err bitreich.org 70 i . \} Err bitreich.org 70 i . \} Err bitreich.org 70 i+' sp \\n($Vu Err bitreich.org 70 i .. Err bitreich.org 70 i . Err bitreich.org 70 i .de #E \"expand footnotes Err bitreich.org 70 .