المضلعات عالم آخر: IBM PC

ترجمة المقالة الرابعة في سلسلة من Fabien Sanglard ، هذه المرة عن منفذ World World على كمبيوتر IBM .


لمدة ثلاثة عقود ، سيطرت شركة IBM بهدوء على سوق الحاسبات المركزية. عندما بلغت مبيعات الحواسيب الصغيرة 150 مليون دولار في عام 1979 ، قرر عملاق أرمونكا الإفراج عن نفسه. مقارنة بالمنافسين مثل Hewlett-Packard (HP) و Texas Instruments (TI) و Tandy و Data General ، قامت IBM بكل شيء بشكل مختلف لتميزها.




سلسلة مقالات


  1. المضلعات عالم آخر .
  2. المضلعات عالم آخر: أميغا 500 .
  3. المضلعات عالم آخر: Atari ST .
  4. المضلعات عالم آخر: IBM PC.
  5. المضلعات عالم آخر: سيجا جينيسيس .

آي بي إم الكمبيوتر


, , , , , IBM . , CPU, Intel PC DOS 1.0 Microsoft.


, . , , .


IBM PC 36 , BIOS IBM, , .

— Wikipedia (IBM_Personal_Computer#History)


IBM 12 1981 5150. Intel 8088 (4,77 ) 16 MDA, . , 40 000 . IBM «».


IBM , , , . 1983 Compaq « IBM » «Compaq Portable». . IBM , MCA. , IBM .




IBM « » , , . 1991 , , TGA, EGA, VGA. (Beeper, AdLib, SoundBlaster Disney Sound Source).


«IBM PC Compatible», « » « » . , , .


«» 1991 - Intel 386 16 2 AdLib. Atari ST, DMA, Blit, /HDD.




1981 1991 . MDA CGA , TGA/EGA, VGA.


                              
    --------------------------------------------------------------
      MDA       Monochrome Display Adapter              1981
      CGA       Color Graphics Adapter                  1981
      TGA       Tandy Graphics Adapter                  1984
      EGA       Enhanced Graphics Adapter               1985
      VGA       Video Graphics Array                    1987


TGA/EGA 2- (6 ).





VGA 6 (18 ).





300 , . , BIOS . , , 19 .


                         RAM/VRAM  VRAM (KiB)
-------------------------------------------------------------------------------
0h,1h      MDA         360 x 400        16            B8000              16
2h,3h      MDA         720 x 400        16            B8000              16
4h,5h      CGA         320 x 200         4            B8000              16
6h         CGA         640 x 200         2            B8000              16
7h         MDA         720 x 400         2            B0000              16
8h         TGA         160 x 200                      B0000              64
9h         TGA         320 x 200        16            B0000              64
Ah         TGA         640 x 200        16            B0000              64
Bh         ---         ---------        --            -----              --
Ch         ---         ---------        --            -----              --
Dh         EGA         320 x 200        16            A0000             128
Eh         EGA         640 x 200        16            A0000             128
Fh         EGA         640 x 350         2            A0000             128
10h        EGA         640 x 350        16            A0000             128
11h        VGA         640 x 480         2            A0000             256
12h        VGA         640 x 480        16            A0000             256 
13h        VGA         320 x 200       256            A0000             256

320x200, , 16 , VM Another World. , , .


Tandy


, , TGA, Tandy, IBM. «PCjr» 1984 , Apple II/Commodore 64, CGA. Tandy «Tandy 1000» . Tandy «» IBM, «»[1] «» PCjr.


MDA/CGA/EGA/VGA , TGA : 8h, 9h Ah. «Another World», , 9h 320200 16 . VRAM (8x16) 128 , « »[2].


9h Atari ST, .


, VRAM. , 4- [3].




EGA VGA . 320x200 16 9h. VRAM, .


, Amiga, , , . . 9h , 4- .


VGA VRAM (256 4x64 ), EGA (128 4x32 ), Another World. VGA (6 / 2 /), .






Amiga Atari ST, . .


. . . , , , Amiga Blitter. 9h.


char far * VGA = ( byte far *) 0xA0000000L ;  
#define SC_MAPMASK  0x02
#define SC_INDEX    0x03c4
#define SC_DATA     0x03c5

void selectBank(uint_8 bank) {
  outp(SC_INDEX , SC_MAPMASK );
  outp(SC_DATA , 1 << bank );
}  

void ClearScreen() {
  for(int y =0 ; y < 200 ; y ++) {
    for(int x =0; x < 160 ; x ++) {
      selectBank(x % 4);
      VGA[x + y * 200] = 0;
    }
  }
}

1991 5fps[4]. , . , , 10 [5].


void ClearScreen() {
  for(int x =0; x < 160 ; x ++) {
    selectBank (x % 4);
    for(int y =0 ; y < 200 ; y ++) {
      VGA[x + y * 200] = 0;
    }
  }
}

. Wolfenstein 3D , , HUD, , 72% , 11 386SX 16 .


Another World PC


TGA/EGA/VGA, Another World . , , , .


, Delphine Software.


, Atari Amiga. 286 24 .


, , .


PC DOS C. Atari ST Amiga 68000 asm. . , 100% x86 asm.

1991 PnP. , CONFIG.EXE, .





CONFIG.DAT. ANOTHER.EXE, .


TGA


TGA . 9h 320x200 16 6- . 4- 2- LSR . .


«». , (TGA 16), .













, , 6- . Atari ST, , TGA .


EGA


EGA Dh. , TGA, EGA 6- . VGA.


VGA


VGA . , 13h 4 . , VGA- EGA Dh. 6- , 18-, 13h. Dh, , , Amiga.


Amiga ( TGA/EGA).


TL;DR: TGA/EGA/VGA


. 6 TGA/EGA Amiga VGA. TGA 9h. EGA/VGA Dh.


DRAWN FILL


Atari ST, . . .


, «Le monde en tique» , . EGA/VGA, .


, , . , .



, 4 . .


, . 8- 24 , .


COPY


COPY FB. VRAM , , , VRAM RAM VRAM .


«Mode X Marks the Latch»[6]. EGA/VGA . , . «» .


, , .



BKGD VRAM , COPY FB 4- .



, « » . , DOS .


EGA/VGA , VRAM VRAM. , EGA/VGA, .


. Amiga «Sound Tracker» , . Amiga ST , . . «buzzer» , AdLib, FM. PCM, , , Sound Blaster Gravis UltraSound.


, IRQ ( 80 100 8000 , ). , 8000 , - . «- » , . , PC Buzzer AdLib PCM .

. , .


: Interplay ( 20 ). , ( 3 – 15)[7].



Delphine Software. , Atari ST Amiga (320x200 16 ), Intel 286 10MHz 640 : TGA, EGA VGA[8].



  1. Tandy Graphics Adapter Incompatibilities.
  2. TGA has 3 rows of 8 64kx4 DRAM. The four is the 128k upgrade.
  3. IBM PCjr Technical Reference.
  4. Game Engine Black Book: Wolfenstein 3D clearScreen.
  5. Game Engine Black Book: Wolfenstein 3D p 127.
  6. Mode X Marks the Latch
  7. Another World, a.k.a. Out of this World — Versions of a Classic.
  8. Mobygames, Another World DOS Box.


All Articles