Programvara

Link: http://insar.stanford.edu/~lharcke/programming/

Det finns ett överflöd av stora program ute som upphovsmännen och upphovsrättsinnehavarna göras fritt tillgängliga för slutanvändarna. Snarare än att upprepa insats, jag försöker att använda standardiserade verktyg när det är möjligt. Ibland, det inte är något som riktigt passar räkningen. Här är några udda verktyg som du kan hitta att komma väl till pass om du inte kan få en mer allmänt verktyg för att göra jobbet snabbt och effektivt.


Kalender konvertering

Mycket av NASA och den kommersiella satellit-branschen fungerar från dag datum året snarare än month/day datum för sekvensering lanserar, schemaläggning spårning faciliteter, och andra uppdrag planering av verksamheten. När de som är direkt involverade i planering på en regelbunden basis, är det brukligt att bära runt på en “evig kalender”, som är ett enda ark papper som innehåller den omräkningstabell. Ena sidan har den gemensamma år tabell 1 till 365, och den andra sidan har skottår tabell från och med den 1 366. Kalkylblad lätt att hantera denna typ av konvertering.

den Dag på året för HP 32SII

Som jag ofta finner mig själv utan en “evig kalender” eller kalkylprogram, men med min Hewlett-Packard 32SII programmerbara räknare, jag skrev ett program för räknaren som utför konverteringen. Programmet implementerar ekvationer från boken Astronomiska Algoritmer av Jean Meeus. Meeus attribut framåt konvertering algoritm U.S. Naval Observatory, och den omvända konvertering till en egen korrespondent i Nederländerna.

Julian dag nummer i Perl

På en stationär dator, som används för långsiktig planering och analys av data, mer komplett Julian dag nummer gemensamma system inom astronomi är praktiskt. Detta Perl-skript sitter på ~/bin och konverterar mellan Gregorianska datum i kalendern och Julianska dag nummer med hjälp av tre olika algoritmer. En algoritm som kan omvandla bråktal dagar, dvs timmar, minuter, och sekunder, om alternativt anges på kommandoraden.

 

PCLNFSS – LaTeX 2e style-filer för PCL-teckensnitt

 

En uppsättning av style-filer för att använda standard 45 skalbara typsnitt i ROM av alla PCL 5e eller senare avancerade skrivare. Detta paket måste användas med dviljk eller liknande DVI till PCL-drivrutin för att generera PCL från DVI-filen som producerar LaTeX.

Att göra lista:

  • Bättre användardokumentation.
  • Skapa *.fd – filer för T1 – kodning. För närvarande endast på OT1 – kodning stöds.
  • Förbättra namngivning av *.stil – paket för att undvika namespace kollisioner med andra vanliga typsnitt paket.
  • om menyer.karta – filen som levereras med teTeX är tillräckligt bra, eller om en separat pclfonts.karta – fil ska finnas med PCLNFSS. Det är några exempel på *.karta filer i src/ – katalog med resten av Karl Berry virtuella font generera program.
  • Virtuella matematik teckensnitt en la PSNFSS.
  • Euro symbol stöd.
  • karaktären statistik och kerning tabeller är baserade på värden från tagged font mått (TFM) filer som ingår på LaserJet 4 utvecklaren CD-ROM-skivan. Observera: detta är inte samma filer som TeX font metriska filer, vilket också använda den TFM förlängning. Uppdaterad statistik och kerning tabeller för TrueType-ROM-teckensnitt i nyare PCL-produkter skall vara tillgängliga från någonstans. (Överraskande, kerning tabeller ingår inte i TrueType-filer på användarens CD-ROM-skivan som levereras med skrivare. Kerningtabeller är i den binära drivrutinen någonstans.) Dessa nyare statistik bör ingå i paketet.

Xcms Resurser

Några människor har behov av för exakt färgåtergivning på sitt skrivbord, och de flesta driva sina visas i okalibrerat RGB-läge, eller övertagna-kalibrering sRGB-läge. En display färg hanterings-API: n har byggts i X Window-Systemet eftersom X11R5, men dokumentationen är spridda över hela X-distribution, och är sällan med i XFree86-distributioner. Programvaran är mycket svårt att använda utan ordentlig dokumentation. Lyckligtvis, det finns många dokumentation arkiv som är tillgängliga. Här är en insamling för att hjälpa den avslappnade Xcms programmerare.

Retro Design

Ibland, av en eller annan anledning, kan du finna det nödvändigt eller ens roligt att arbeta med föråldrad utrustning. Som Kyrkan är Gissningar visas för att vara sant, så behöver vi inte helt kasta bort det arbete som i det förflutna när vi får en ny maskin.

 

Institute for Advanced Study i 40-bitars arkitektur

I 1945, och samtidigt samarbeta med Eckert och Mauchly på Moore School of Electrical Engineering vid University of Pennsylvania, von Neumann skrev Första utkast till en rapport om EDVAC. Detta dokument beskrivs den logiska strukturen i en 32-bit, bit-seriell arkitektur, och definieras begreppet lagrade program elektroniska datorn. Ett år senare, 1946, Burks och Goldstine, som nyligen hade flyttat till Institute for Advanced Study för att gå med i von Neumann dator ansträngning, publicerade Inledande diskussion av den logiska konstruktionen av en elektronisk databehandling instrumentet
von Neumann som tredje författare. Detta Burks, Goldstine, och von Neumann rapport beskrivs ett 40-bit, bit-asynkron parallell arkitektur. De flesta moderna datorer härstammar från denna andra rapport. Konstruktionen är känd som Princeton eller IAS arkitektur, för att skilja det från Harvard arkitektur Aiken Markera jag. von Neumann samlat ett team på IAS för att bygga maskinen som beskrivs i rapporten. De rapporter IAS Elektroniska Dator Projektet har spridits, vilket resulterar i konstruktion och installation av liknande maskiner på sex andra institutioner: Argonne National Laboratory (AVIDAC), Oak Ridge National Laboratory (ORACLE), Los Alamos National Laboratory (GALNING), University of Illinois (ILLIAC), Ballistiska Research Laboratory på Aberdeen (ORDVAC), och RAND Corporation (JOHNNIAC) [JOHNNIAC är för närvarande på utställningen på Computer History Museum i Mountain View, Kalifornien]. ORDVAC och ILLIAC byggdes vid University of Illinois, och sedan ORDVAC levererades till Aberdeen Proving Ground. ORACLE och AVIDAC byggdes vid Argonne, och då ORACLE levererades till Oak Ridge.

En slående skillnad mellan 1946 Burks, Goldstine, och von Neumann rapport och modern arkitektur manualer är avsaknaden av maskinen kod, eller instruktion layout. I dag nya arkitekturer är simulerade på befintliga maskiner, så de instruktioner som är klara och dokumenterade innan hårdvara genomförandet påbörjas. Den Elektroniska Datorn projektgruppen i IAS inte har en maskin som simulerar deras föreslagna arkitekturen. Den faktiska instruktioner som slutfördes under genomförandet. IAS maskin gick på linje 1952. Vaga beskrivningar av genomförda instruktion som publicerades i den öppna litteraturen av Estrin under maskinens första verksamhetsår. I 1954, Goldstine, Pomerene och Smith publicerade Slutliga rapporten om den fysiska förverkligandet av en elektronisk databehandling instrumentet, som listar de instruktioner som genomförs i IAS maskinen.

Som den faktiska undervisningen kodning släpptes inte förrän åtta år efter den ursprungliga rapporten, varje tillämpning av IAS 40 bitars arkitektur hade en unik och oförenligt instruktionsuppsättning. Länkarna nedan leder till handlingar som innehåller instruktionen ange kodning för varje särskilt genomförandet av arkitektur.

  • IAS
  • ILLIAC
  • JOHNNIAC
  • GALNING (Obs: Los Alamos begränsar elektronisk tillgång till vissa myndigheter. URL-adressen kommer att fungera om din byrå på den godkända listan. Om URL-adressen inte fungerar för dig, papper kopia av den tekniska rapporten LA-1725 “GALNING” som finns i samlingarna på Univ. av Chicago, Univ. i Pennsylvania, och Linda Hall Library of Science & Teknik i Kansas City.)
  • ORDVAC

Andra resurser för 40-bitars IAS arkitektur maskiner är:

Disassembler för IBM 704

IBM 704 var den första kommersiellt tillgängliga vetenskapliga dator med en hårdvara som flyttal aritmetisk enhet och sätta standarden för vetenskaplig programmering på 1950-talet. Det är fortfarande intressant i dag av flera anledningar, för det första, dess kvardröjande inflytande på programmeringsspråk struktur, och för det andra, dess användare och programmering verktyg som utvecklats och distribueras av att gemenskapen.

BIL, CDR assembler subrutiner är kända exemplen Lisp historia. För notering av dessa två subrutiner, se att Skriva och felsöka Program av Steve Russell (MIT AI Lab Memo MÅL-6). Fortran har utvecklats som den vetenskapliga programmeringsspråk för 704, och många av gränserna för fast-form källkoden input-format är på grund av egenheter 704 arkitektur. Den 36-bit ord maskinen kan bara ladda två binära ord från en puch kort rad i minnet, vilket motsvarade 72 kolumner av en standard 80 kolumnen row. 704 används 6 bitars BCD teckenkodning, med 6 tecken till ett ord. Eftersom maskinen var ordet hanteras, inte karaktär upp, att det är meningsfullt att begränsa etiketter och variabelnamn till 6 tecken. Därför etiketter och fortsättning karaktär gjorde upp de första 6 kolumner av en input-kort, och variabelnamn var begränsade till 6 tecken. 704 tre index register och bristen på indirekt adressering gjort flerdimensionella arrayer dominerande data struktur.

704 resulterade i den första datorn user group, DELA, bildar i södra Kalifornien flygindustrin (moderna inkarnationen). DELA medlemmar utvecklat en gemensam assembler, DELA församlingens program eller SAP, för utbyte av subrutiner och program bibliotek. Stora mängder DELA mjukvara finns fortfarande i maskinläsbar form, tack vare Paul Pierce är diligence. Den första band i AKTIEN kodbasen, som består av assembler och bibliotek subrutiner med anor från 1955-1957, troligen utgör de äldsta maskinläsbart, samhället utvecklat system i tillvaron. IBM: s kommersiella vetenskapliga assembler (Fortran II Montering Program, eller FAP) var modellerad efter SAP.

IBM: s uppföljning av scientific computing system, röret logik 709 och transistor-logik 7030 (STRETCH), 7090 och 7094, mest balanserade binär kompatibilitet med 704. DELA gick på att designa ett helt operativsystem för IBM 709 (ANDEL Operativsystem, förkortat SOS) [Skal, D. L., et al. Andelen 709 System. (sex artiklar). Journal of the ACM, Vol. 6, Nr 2, 1959, s. 123-155]. För System/360, IBM slutligen bröt hardware compatibility och gick med en emulering lösning för äldre vetenskapliga tillämpningar.

ANDELEN program distribueras huvudsakligen i BCD källa form, men några av de rutiner som finns i kolumn binärt format. Den disassembler kommer att konvertera 160 byte av standard input, vilket motsvarar en kolumn binära kort bild, till läsbar form. Den disassembler först skriver ut en ASCII-representation av hålen på kortet, följt av binära demontering.

Relaterade länkar:


Atlas – en 1103A emulator för UNIX-system

Atlas är en emulator för Univac Vetenskapliga 1103A. Förutom att genomföra alla 41 grundläggande instruktioner för CPU, inklusive upprepa (RPjnw), Atlas simulerar även program för att avbryta funktionen. Emulatorn körs som en interaktiv, kommandoraden program och tolkar binära 1103A maskinen kod som lagras i simulerade core/drum-minne. Faciliteter som tillhandahålls av emulering inkluderar direkt inmatning av maskinkod i oktal form, brytpunkter, demontering, och manuella steg felsökning. Simulerade input/output-enheter ingår ett papper tejp läsare, ett papper tejp hålslag, och en elektronisk skrivmaskin.

Emulatorn är skrivet i C och bör vara bärbar till ett stort antal UNIX-system. Det kräver en kompilator som stöder två C99-tillägg till C89 standard: 64 bitars heltal (osignerade för länge) och C++ -stil kommentarer (//). Emulatorn för närvarande körs på Linux (gcc eller Intel cc för IA-32), SunOS (Solen cc eller gcc för SPARC), och Darwin (gcc för PowerPC).


GRUNDLÄGGANDE detokenizers för HP Series 80 och Integrerad personliga datorer

En emeritus medlem av institutionen fakulteten kom runt en dag med en 3,5″ floppy disk full av GRUNDLÄGGANDE program från Hewlett-Packard Integrerad Dator. 1985 är Integrerad PC var den sista i en rad av persondatorer som produceras av Corvallis, Oregon uppdelning av HP som var mest kända för att utveckla den handhållna programmerbar kalkylator produkter från mitten av 1970-talet till mitten av 1990-talet. Den tidigare Serie 80 skrivbordsdatorer, ca 1980-83, som används för anpassad HP 8-bitars mikrokontroller som ursprungligen utformats för räknaren marknaden, och att starta upp direkt in i en GRUNDLÄGGANDE tolk via ROM som gjorde många 8-bitars-datorer från den eran. Integrerad PC som används av en 16-bit Motorola 68000 och startat upp i UNIX (HP-UX-5.x) från en ganska stor 512mb ROM. Den Tekniska grundpaket för IPC har utformats för att vara kompatibel källa med Series 80 GRUNDLÄGGANDE.

Integrerad PC-formaterad 77 cylindrar på en disk. Jag kunde använda en vanlig diskett-enhet på en DATOR som kör Red Hat Linux, setfdprm(8), och följande /etc/fdprm – post till dd disketten till en skivavbild.

# HP Integrerad Dator
hpipc 1386 9 2 77 0 0x2A 0x02 0xDF 0x50

Disk image generation:

setfdprm /dev/fd0 hpipc
dd bs=9k count=77 if=/dev/fd0 of=disk.img -

En gång i form av en disk, Peter Johnson ‘ s IPC verktyg sammanställs på en HP 9000/782 (C240) PA-RISC arbetsstationer som kör Debian Linux användes för att extrahera enskilda filer från Integrerad PC: s hierarkiska filsystemet. Någon big endian maskinen skulle ha arbetat med Peter ‘ s verktyg, som ursprungligen utvecklades på SPARC-kör Solaris.

Som med de flesta mikrodator GRUNDLÄGGANDE tolkar från 1980-talet, Integrerad PC: s Tekniska GRUNDLÄGGANDE kunde SPARA – program i ASCII-källa form, eller SPARA dem i den inre binära (“tokenized format som används av tolk. Över 130 program på disk, endast två var SPARAd som ASCII. Lastning hastighet och kompakthet i den binära (“tokenized format gjorde det logiska valet för arkivändamål.

Två av programmen på hårddisken arkiverades i både ASCII och binära (“tokenized format. Med hjälp av dessa två program, och en beskrivning av den ursprungliga HP-85 GRUNDLÄGGANDE format [N. A. Bruk, H. C. Russell, K. R. Henscheid, “Enhanced BASIC Språket för en Personlig Dator” Hewlett-Packard Tidning, Vol. 31, Nr 7, juli 1980, s. 26]. följande detokenizers skrevs.

Dessa GRUNDLÄGGANDE tolkar används en omvänd polsk notation (RPN) syntax internt för varje rad i källfilen. Den detokenized utgång presenteras i en utförlig RPN med en token per rad, snarare än i infix notation med flera symboliska mynt per linje. Den opcodes förändrats som BASIC-tolken genomgick en översyn och anpassning till varje ny maskin, så opcodes visas i en version av detokenizer inte nödvändigtvis visas i andra versioner. Som typ av tillgängliga program på disk var matematiska stället för i/O-relaterade, många av i/O-operationskoder är inte känt. Den detokenizers är långt ifrån fullständig, men ger nog utgång för att kunna läsa koden och kommentarer, och port program för att infix notation språk på en modern plattform.

Nyare versioner av tolk för den senare modellen maskiner var inte klarar av att läsa tokenized binärt format från tidigare modeller. Koden migration metod som stöds av HP var genom ASCIISPARAoch gör så här.


Mjuk font converter för VT200-serien terminaler

Mitt enda hem design och utrustning för över ett decennium var en Digital Equipment Corporation VT220 – kompatibel terminal (en GraphOn 230) som är ansluten till ett modem. Som 8-bitars teckenuppsättning kom i bruk i mitten av 1990-talet, hårdvara terminal började visa sina begränsningar. Detta Perl-program konverterar en vanlig 6×10 X Window System font i Bitmap-Distribution-Format (BDF) DEC sixel grafik och hämtar den övre sidan till terminalen. Terminalen kan sedan användas med någon av standarden ISO Latin 8-bitars teckenuppsättning.