Fixed some minor bugs (problems with autostart, duplicate machine IDs, etc)

This commit is contained in:
Jeff Parsons 2015-02-05 13:25:55 -08:00 committed by jeffpar
commit 3069d317c6
164 changed files with 7277 additions and 934 deletions

View file

@ -2,6 +2,8 @@
---
by Dan Illowsky and Michael Abrash (1984)
Check out the [Live Demos](demos/) we've created from this classic text.
![Page 1](../static/Graphics_for_the_IBM_PC/thumbs/Graphics_for_the_IBM_PC 1.jpeg "link:/modules/shared/templates/pdf.html?url=/pubs/pc/programming/Graphics_for_the_IBM_PC/pages/Graphics_for_the_IBM_PC 1.pdf&page=1&total=320:200:260")
![Page 2](../static/Graphics_for_the_IBM_PC/thumbs/Graphics_for_the_IBM_PC 2.jpeg "link:/modules/shared/templates/pdf.html?url=/pubs/pc/programming/Graphics_for_the_IBM_PC/pages/Graphics_for_the_IBM_PC 2.pdf&page=2&total=320:200:260")
![Page 3](../static/Graphics_for_the_IBM_PC/thumbs/Graphics_for_the_IBM_PC 3.jpeg "link:/modules/shared/templates/pdf.html?url=/pubs/pc/programming/Graphics_for_the_IBM_PC/pages/Graphics_for_the_IBM_PC 3.pdf&page=3&total=320:200:260")

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,62 @@
Selected Live Demos from [Graphics for the IBM PC](../)
---
All of the machine demos below are halted by default. Click the machine's "Run" button to start it running.
From [Page 46](/modules/shared/templates/pdf.html?url=/pubs/pc/programming/Graphics_for_the_IBM_PC/pages/Graphics_for_the_IBM_PC 48.pdf&page=48&total=320):
> **A KALEIDOSCOPE PROGRAM**
> Let's run a program that will show you some of what
> BASIC can do on the IBM PC. This program produces a
> changing kaleidoscope display and is shown in Listing 2-3.
> Type it precisely as shown. If you make any mistakes, use
> the editing capabilities of BASIC discussed above to make
> corrections. Remember to type NEW to clear any previous
> programs out of memory before typing the new program.
> Enter RUN to execute the program, noting the wide
> range of colors available on the IBM PC. A typical display
> is shown in [Fig. 4](/modules/shared/templates/pdf.html?url=/pubs/pc/programming/Graphics_for_the_IBM_PC/pages/Graphics_for_the_IBM_PC%20164.pdf&page=164&total=320)
> in the color photograph section. Note that good effects
> can be produced with only a few program
> lines thanks to the power of Advanced BASIC.
[Embedded IBM PC](machine.xml "PCjs:xt-cga-256k-1::::02-03.json")
From [Page 58](/modules/shared/templates/pdf.html?url=/pubs/pc/programming/Graphics_for_the_IBM_PC/pages/Graphics_for_the_IBM_PC 60.pdf&page=60&total=320):
> **Medium-Resolution Color Selection**
> Every color available on the PC can be displayed in
> medium-resolution graphics mode, but, unfortunately,
> only in certain combinations. The background color (that
> is, the color to which the screen and border default and
> which graphics are typically set against) can be any of the
> 16 colors available on the PC, as shown in [Table 4-1](/modules/shared/templates/pdf.html?url=/pubs/pc/programming/Graphics_for_the_IBM_PC/pages/Graphics_for_the_IBM_PC%2061.pdf&page=61&total=320).
> The other three colors available at any one time consist of one
> of two sets. The sets are called palettes because, like
> painters' palettes, each is a group of colors from which the
> PC artist may choose to work.
> Palette number 0 contains green, red, and brown, which
> are colors 1,2, and 3, respectively (Table 4-2). (Many
> monitors will display yellow rather than brown.) These colors
> look excellent on an RGB monitor (see Fig. 5A in the color
> photograph section), but, unfortunately, often tend to look
> rather muddy on a television.
> Palette number 1 contains cyan, magenta, and white,
> which are, respectively, colors 1, 2, and 3 (Table 4-2).
> Cyan is a light blue, and magenta is a light red. These colors
> aren't as vivid on an RGB monitor as those in the other
> palette (See [Fig. 5B](/modules/shared/templates/pdf.html?url=/pubs/pc/programming/Graphics_for_the_IBM_PC/pages/Graphics_for_the_IBM_PC%20164.pdf&page=164&total=320)
> in the color photograph section), and
> can look somewhat washed out if screen brightness is
> high. However, the colors in palette 1 look just about as
> good on a television as on an RGB monitor, and because
> white appears much sharper on a television than any
> other color, this palette is the palette of choice for television
> work. (The same is true of any composite monitor.)
[Embedded IBM PC](machine.xml "PCjs:xt-cga-256k-2::::04-01.json")

View file

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<fdc id="fdcNEC" automount='{A:{name:"PC-DOS 2.00 (Disk 1)",path:"/disks/pc/dos/ibm/2.00/PCDOS200-DISK1.json"}, B:{name:"BASIC Programs",path:"/api/v1/dump?dir=/pubs/pc/programming/Graphics_for_the_IBM_PC/programs"}}' pos="left" padleft="8px" padbottom="8px">
<control type="list" binding="listDrives"/>
<control type="list" binding="listDisks">
<disk path="">None</disk>
<manifest ref="/disks/pc/dos/ibm/1.00/manifest.xml" disk="*"/>
<manifest ref="/disks/pc/dos/ibm/1.10/manifest.xml" disk="*"/>
<manifest ref="/disks/pc/dos/ibm/2.00/manifest.xml" disk="*"/>
<manifest ref="/disks/pc/games/microsoft/adventure/manifest.xml" disk="*"/>
<manifest ref="/apps/pc/1981/visicalc/manifest.xml" disk="*"/>
<disk path="/api/v1/dump?dir=/pubs/pc/programming/Graphics_for_the_IBM_PC/programs">BASIC Programs</disk>
</control>
<control type="button" binding="loadDrive" padright="8px">Download</control>
<control type="description" binding="descDisk" padright="8px"/>
<control type="file" binding="mountDrive"/>
</fdc>

View file

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.1/machine.xsl"?>
<machine id="ibm5160" class="pc" border="1" width="980px" pos="center" style="background-color:#FAEBD7">
<name pos="center">IBM PC XT (Model 5160), CGA, 256Kb, 10Mb Drive</name>
<computer id="xt-cga-256k" name="IBM PC XT" resume="1"/>
<ram id="ramLow" addr="0x00000" test="false"/>
<rom id="romHDC" addr="0xc8000" size="0x2000" file="/devices/pc/hdc/ibm-xebec-1982.json"/>
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
<video ref="/devices/pc/video/video-cga-960.xml"/>
<keyboard id="keyboard" padleft="8px">
<control type="button" binding="esc">ESC</control>
<control type="button" binding="ctrl-c">CTRL-C</control>
</keyboard>
<cpu id="cpu8088" model="8088" autostart="true" pos="left" padleft="8px">
<control type="button" binding="run">Run</control>
<control type="button" binding="setSpeed">Fast</control>
<control type="description" binding="speed" padleft="8px">Stopped</control>
</cpu>
<fdc ref="/pubs/pc/programming/Graphics_for_the_IBM_PC/demos/basic.xml" pos="right"/>
<debugger id="debugger"/>
<panel ref="/devices/pc/panel/wide.xml"/>
<hdc id="hdcXT" drives='[{name:"10Mb Hard Disk",type:3}]'/>
<chipset id="chipset" model="5160" sw1="01001001"/>
</machine>

View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.1/machine.xsl"?>
<machine id="ibm5160" class="pc" border="1" width="980px" pos="center" style="background-color:#FAEBD7">
<name pos="center">IBM PC XT (Model 5160), CGA, 256Kb, 10Mb Drive</name>
<computer id="xt-cga-256k" name="IBM PC XT"/>
<ram id="ramLow" addr="0x00000" test="false"/>
<rom id="romHDC" addr="0xc8000" size="0x2000" file="/devices/pc/hdc/ibm-xebec-1982.json"/>
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
<video ref="/devices/pc/video/video-cga-960.xml"/>
<keyboard id="keyboard" padleft="8px">
<control type="button" binding="esc">ESC</control>
<control type="button" binding="ctrl-c">CTRL-C</control>
</keyboard>
<cpu id="cpu8088" model="8088" autostart="false" pos="left" padleft="8px">
<control type="button" binding="run">Run</control>
<control type="button" binding="setSpeed">Fast</control>
<control type="description" binding="speed" padleft="8px">Stopped</control>
</cpu>
<fdc ref="/pubs/pc/programming/Graphics_for_the_IBM_PC/demos/basic.xml" pos="right"/>
<hdc id="hdcXT" drives='[{name:"10Mb Hard Disk",type:3}]'/>
<chipset id="chipset" model="5160" sw1="01001001"/>
</machine>

View file

@ -0,0 +1,20 @@
100 REM Kaleidoscope program
110 REM This program is inspired by material appearing in
120 REM The Apple II Reference Manual, January 1978, p. 55
130 KEY OFF:WIDTH 40:SCREEN 0,1:COLOR 7,0,0:LOCATE ,,0:CLS
140 LOCATE 25,11:PRINT "PRESS ANY KEY TO EXIT";
150 FOR L=4 TO 40:FOR I=1 TO 12:FOR J=0 TO 11
160 K=I+J:COLOR (J*4/(I+2)+L) MOD 16,0
170 LOCATE K,I+9:PRINT CHR$(219)
180 LOCATE I,K+9:PRINT CHR$(219)
190 LOCATE 24-I,33-K:PRINT CHR$(219)
200 LOCATE 24-K,33-I:PRINT CHR$(219)
210 LOCATE I,33-K:PRINT CHR$(219)
220 LOCATE 24-K,I+9:PRINT CHR$(219)
230 LOCATE K,33-I:PRINT CHR$(219)
240 LOCATE 24-I,K+9:PRINT CHR$(219)
250 IF INKEY$<>"" THEN 280
260 NEXT J:NEXT I:NEXT L
270 GOTO 150
280 COLOR 7,0,0:CLS
290 END

View file

@ -0,0 +1,21 @@
100 REM Program to demonstrate palettes 0 and 1
110 REM in medium-resolution graphics mode.
120 SCREEN 1,0:CLS:KEY OFF 'Set screen
130 COLOR 0 'Black background
140 REM Do palette 0 first
150 COLOR, 0 'Select palette 0
160 REM Draw circles in colors 1, 2, and 3
170 CIRCLE(80,100),30,1:PAINT STEP(0,0),1
180 CIRCLE(160,100),30,2:PAINT STEP(0,0),2
190 CIRCLE(240,100),30,3:PAINT STEP(0,0),3
200 REM Label screen
210 LOCATE 22,17:PRINT "PALETTE 0"
220 LOCATE 24,9:PRINT "PRESS ANY KEY TO CONTINUE";
230 A$=INKEY$:IF A$="" THEN 230
240 REM Palette 1
250 COLOR, 1 'Select palette 1
260 LOCATE 22,17:PRINT "PALETTE 1"
270 LOCATE 24,9:PRINT "PRESS ANY KEY TO CONTINUE";
280 A$=INKEY$:IF A$="" THEN 280
290 COLOR 0,1:CLS
300 END

View file

@ -0,0 +1 @@
The programs have been reproduced from "Graphics for the IBM PC", (C) 1984 by Dan Illowsky and Michael Abrash.

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.0/manifest.xsl"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.1/manifest.xsl"?>
<manifest type="document">
<title>PC Programming Guides</title>
<document href="http://bitsavers.trailing-edge.com/pdf/ibm/pc/dos/6172220_DOS_1.0_Jan82.pdf">

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.0/manifest.xsl"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.1/manifest.xsl"?>
<manifest type="document">
<title>IBM 5150 Manuals</title>
<source href="http://minuszerodegrees.net">minuszerodegrees.net</source>

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.0/manifest.xsl"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.1/manifest.xsl"?>
<manifest type="document">
<title>IBM 5160 Technical Reference (April 1983)</title>
<source href="http://retroarchive.org">retroarchive.org</source>

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.0/manifest.xsl"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.1/manifest.xsl"?>
<manifest type="document">
<title>IBM 5170 Installation and Setup (March 1984)</title>
<source href="http://minuszerodegrees.net">minuszerodegrees.net</source>

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.0/manifest.xsl"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.1/manifest.xsl"?>
<manifest type="document">
<title>IBM 5170 Technical Reference</title>
<source href="http://minuszerodegrees.net">minuszerodegrees.net</source>

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.0/manifest.xsl"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.1/manifest.xsl"?>
<manifest type="document">
<title>IBM Enhanced Graphics Adapter</title>
<source href="http://minuszerodegrees.net">minuszerodegrees.net</source>

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.0/manifest.xsl"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.1/manifest.xsl"?>
<manifest type="document">
<title>PS/2 Technical Reference</title>
<document href="http://bitsavers.trailing-edge.com/pdf/ibm/pc/ps2/Personal_System_2_Hardware_Interface_Technical_Reference_May88.pdf">

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.0/manifest.xsl"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.1/manifest.xsl"?>
<manifest type="document">
<title>Intel 80286 References</title>
<document href="https://archive.org/download/bitsavers_intel80286287ProgrammersReferenceManual1987_27505703/210498-005_80286_and_80287_Programmers_Reference_Manual_1987.pdf">

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.0/manifest.xsl"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.1/manifest.xsl"?>
<manifest type="document">
<title>OS/2 1.0 Programmer's Toolkit</title>
<version>1.0</version>

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.0/manifest.xsl"?>
<?xml-stylesheet type="text/xsl" href="/versions/pcjs/1.17.1/manifest.xsl"?>
<manifest type="document">
<title>Microsoft Windows Software Development Kit</title>
<version>2.0</version>