home *** CD-ROM | disk | FTP | other *** search
/ Millennium Time Capsule / AC2000.BIN / disks / ac10disk / atozbook / m.txt < prev    next >
Text File  |  1998-06-10  |  128KB  |  2,693 lines

  1.                              "The Atari A to Z"
  2.                               by Mark S Baines
  3.                       Copyright (c) 1998 Mark S Baines
  4.                              All Rights Reserved
  5.  
  6.  
  7.        YOU MUST READ "READ_ME.NOW" BEFORE YOU LOOK AT ANY OF THIS FILE
  8. *****************************************************************************
  9.  
  10.  
  11. M
  12.  
  13.  
  14. m
  15. Milli.
  16.  
  17.  
  18. M
  19. Mega.
  20.  
  21.  
  22. MACCEL.PRG
  23. An official freeware Atari patch program which accelerates the mouse cursor 
  24. movement on the screen and also includes a screen blanker or saver. There are 
  25. various versions, MACCEL3 being the latest. It has to be noted that this 
  26. program creates a nonstandard cookie jar ID thus breaking Atari's own rules 
  27. for them. There are better mouse accelerators and screen savers but MACCEL is 
  28. compact. The program runs from the AUTO folder or from the Desktop to 
  29. configure it.
  30.  
  31.  
  32. Machine
  33. Synonymous with computer.
  34.  
  35.  
  36. Machine code
  37. Synonymous with assembly code and the object code compiled or assembled for a 
  38. particular computer.
  39.  
  40.  
  41. Machine independent
  42. A language, technique, format or device capable of being used with or on 
  43. computers of different type.
  44.  
  45.  
  46. Machine instruction
  47. A machine code instruction.
  48.  
  49.  
  50. Machine language
  51. The binary instructions that a computer understands and uses.
  52.  
  53.  
  54. Machine-oriented language
  55. An assembly language.
  56.  
  57.  
  58. Machine-readable
  59. A form that can be translated by machine into computer bit-patterns, such as 
  60. magnetic media and MICR documents.
  61.  
  62.  
  63. Macro
  64. In a language or some applications, a word or key sequence that generates a 
  65. string of characters or instructions that perform a particular task. In a word 
  66. processor, for instance, the key combination [Alt-A] may be set up to enter 
  67. the user's address.
  68.  
  69.  
  70. Magnetic disk
  71. See Disk.
  72.  
  73.  
  74. Magnetic tape
  75. A storage medium consisting of plastic tape with a magnetizable coating, now 
  76. rarely used as main storage except in digital cassette form for backup 
  77. storage.
  78.  
  79.  
  80. Magnetizable surface
  81. A thin coating of magnetizable particles, such as ferric oxide, bound on a 
  82. substrate, such as Mylar, plastic or aluminium.
  83.  
  84.  
  85. Magnetizable surface recording
  86. The use of a magnetizable surface to receive, store and output data in bit-
  87. pattern form. Data is written to the surface by read/write heads that are 
  88. coils in which the direction of the electric current can be reversed. Changes 
  89. in this direction change the orientation of the magnetizable particles on the 
  90. recording surface in a pattern representing the bit-patterns of the data to be 
  91. stored. In most systems it is not the direction of the particles which is 
  92. significant but the spacing in-between the changes or flux transitions. The 
  93. line along which these transitions occur is called a track. In reading, these 
  94. flux transitions cause temporary currents to flow in the coil of the head 
  95. which are analysed to determine their data significance. There are a number of 
  96. coding methods for representing data.
  97.  
  98.  
  99. Magneto-optical
  100. A term used to describe erasable optical storage devices. Data is recorded on 
  101. the disk surface using a laser beam to produce a tiny area of reverse 
  102. magnetism. The data is read by a low-power laser beam where the reverse 
  103. magnetism causes a slight change in the reflectivity of the disk surface. The 
  104. effect is reversible so that multiple writes and reads can be made as with a 
  105. normal disk. Data can be stored at high densities of around 600 Mb per double-
  106. sided 5.25 inch optical disk.
  107.  
  108.  
  109. Magnify
  110. To increase the size of an image.
  111.  
  112.  
  113. Mailbox
  114. A storage location on multi-user systems and networks for passing private 
  115. messages and data from one user to another.
  116.  
  117.  
  118. Mail merge
  119. A word processor function of producing many copies of a letter from a single 
  120. copy and merging into it, usually from a separate list or a database, a series 
  121. of addresses and other data thus making each letter personalized. As well as 
  122. addresses, other text material can be merged into the standard letter, perhaps 
  123. from an accounts program, invoice or club membership database.
  124.  
  125.  
  126. Main entry point
  127. The place where execution begins in a program.
  128.  
  129.  
  130. Mainframe
  131. A large general-purpose computer with extensive processing, I/O and storage 
  132. capabilities as opposed to a mini or microcomputer, although the distinction 
  133. is increasingly becoming obscure.
  134.  
  135.  
  136. Main processor unit
  137. The CPU.
  138.  
  139.  
  140. Main program
  141. The principal program in a group of related programs.
  142.  
  143.  
  144. Main sequence
  145. The sequence of instructions that is the body of the program to which control 
  146. returns after branching.
  147.  
  148.  
  149. Main storage
  150. That addressable storage of a computer system directly accessible to the CPU 
  151. (and not part of it) without using input/output channels. It is usually 
  152. semiconductor memory such as RAM and ROM.
  153.  
  154.  
  155. Maintenance
  156. The activity of altering programs and data to reflect changing procedures and 
  157. needs and of documenting those changes. Also, keeping hardware in an 
  158. operational condition.
  159.  
  160.  
  161. MAKEFAST.PRG
  162. An official freeware Atari program which will set the fastload bit on any 
  163. executable file on disk. This will result in the slightly faster loading of 
  164. these programs. It is a very simple program and does everything from alerts 
  165. setting or clearing the fastload bit or checking the state of it. There are 
  166. other programs now available that can set the various program header flags 
  167. most of which seem to be called PRGFLAGS! See Fastload bit.
  168.  
  169.  
  170. Malfunction
  171. A fault, usually in hardware.
  172.  
  173.  
  174. Malloc
  175. A GEMDOS function which allocates a block of memory from the GEMDOS free 
  176. memory pool to the program making the call. See Forty folder bug.
  177.  
  178.  
  179. Management information system - MIS
  180. Programs and techniques designed to provide management with timely data as an 
  181. aid to decision making.
  182.  
  183.  
  184. Manipulate
  185. To change the form of data or to perform operations on it.
  186.  
  187.  
  188. Mantissa
  189. The fractional part of a number. See Floating point.
  190.  
  191.  
  192. Manual
  193. An operation performed by hand or a product's operational documentation.
  194.  
  195.  
  196. Map
  197. To establish a one-to-one relationship between the entities of different sets. 
  198. Also, a list of data units and their locations in storage, as in a 'file or 
  199. memory map'.
  200.  
  201.  
  202. Marginal
  203. Unstable and error-prone equipment likely to fail.
  204.  
  205.  
  206. Mark
  207. A representation of data in an optically detectable non-character form, such 
  208. as a pencil line in a box. Also, a 1-bit used in transmission of data.
  209.  
  210.  
  211. Mask
  212. A pattern of bits that is used to control which bits of input are to be 
  213. included in output. Typically, it is a string containing a 1-bit in each bit 
  214. position where the input is to be moved to output and a 0-bit where it is not. 
  215. This principle, for instance, determines which foreground object is displayed 
  216. against a background on a graphics screen, such as the Desktop icons.
  217.  
  218.  
  219. Masked
  220. Sometimes synonymous with disabled.
  221.  
  222.  
  223. Mass storage
  224. Any large storage, typically hard disks and tape over 200 Megabytes, directly 
  225. accessible to the computer - usually a mainframe or mini. This term is 
  226. becoming increasingly redundant.
  227.  
  228.  
  229. Master file
  230. That file that is the most up-to-date and authoritative in a system where 
  231. multiple copies and generations of files exist. Also, the original, purchased 
  232. commercial software disks rather than their backup copies.
  233.  
  234.  
  235. Match
  236. Comparing items in order to locate those with the same attributes.
  237.  
  238.  
  239. Matrix
  240. An arrangement of items in rows and columns and, possibly, planes each being 
  241. identified by its coordinates, such as an array or grid for forming dot matrix 
  242. characters.
  243.  
  244.  
  245. Matrix character
  246. A dot matrix character or character constructed of line segments, as in a LED 
  247. display.
  248.  
  249.  
  250. Matrix printer
  251. See Dot matrix printer.
  252.  
  253.  
  254. Mb, MB, Mbyte
  255. MegaByte.
  256.  
  257.  
  258. MC1377P
  259. On the ST, a Motorola 1377P chip is used to convert the SHIFTER's RGB signals 
  260. and the GLUE's sync signals to a composite video output in PAL or NTSC format. 
  261. This signal is fed to the monitor socket where it can be used to drive a 
  262. monitor. The signal is also fed to a UHF modulator which converts it into a 
  263. UHF TV signal. The 1377P also receives a 4.433 MHz colour subcarrier signal 
  264. from a crystal oscillator which is phase locked with the main 32 MHz crystal. 
  265. This eliminates colour drifting. See Modulator, RGB.
  266.  
  267.  
  268. MC146818A
  269. The Motorola Real-Time Clock chip with RAM on the TT. See Real-time clock.
  270.  
  271.  
  272. MC56001
  273. The Motorola DSP chip as fitted to the Falcon030. The 56001 utilizes seven 
  274. internal buses, of which three are 16-bit address buses and the others are 24-
  275. bit data buses. One address bus is used for program instruction fetches and 
  276. the other two are used for the X and Y operand fetches from on-chip or 
  277. external RAM. In this way the DSP can pre-fetch the next instruction at the 
  278. same time as it performs the current instruction on two operands which are 
  279. both fetched simultaneously. Three data buses are assigned to program, X 
  280. operand, and Y operand, and the fourth is a general purpose data bus. On-chip 
  281. there is 32 x 24-bit words of bootstrap ROM, 512 x 24-bit words of program RAM 
  282. and two areas of 256 x 24-bit RAM - one assigned to the X bus and one to the Y 
  283. bus. The X bus also has a 256 x 24-bit ROM which is preprogrammed with 
  284. positive Mu-law and A-law companding tables (useful in telecommunications) and 
  285. the Y bus has a similar sized ROM preprogrammed with a full four quadrant 24-
  286. bit sine table. The X, Y and program RAM areas may be expanded off-chip up to 
  287. 64 K x 24-bits each. There is a flexible 47-pin I/O expansion port and two 
  288. other ports providing another 24 I/O pins if required although these are 
  289. configurable. The host interface is via a byte-wide full duplex parallel port 
  290. with full DMA support. The full duplex serial synchronous/asynchronous 
  291. communications interface can communicate at up to 2.5 Mbps and a second 
  292. synchronous serial interface is provided for inter-chip communications. Each 
  293. interface has its own (maskable) interrupt vector addresses. The heart of the 
  294. DSP consists of an ALU, an AGU (address generator) and the program controller.
  295.  
  296. Speed is rated at 10.25 MIPS. It can execute a 1,024-point complex fast 
  297. Fourier transform in 3.23 milliseconds. The instruction set consists of 62 
  298. MCU-like instruction mnemonics, many being similar to MC68000 family 
  299. mnemonics. A hardware DO loop instruction and a repeat (REP) instruction are 
  300. also available. See DSP.
  301.  
  302.  
  303. MC68000
  304. The Motorola MC68000 16-bit microprocessor has a 32-bit internal and 16-bit 
  305. external data bus, with a 24-bit address bus enabling its direct linear access 
  306. to 16 Mb of memory. The usual clock frequency is 8 MHz as fitted to the ST 
  307. range although 12 and 16 MHz varieties exist. The Mega STE has a 16 MHz 68000 
  308. and third party upgrades can push the speed to 36 MHz giving a practical speed 
  309. increase of three times over an 8 MHz ST. The 68000 has eight 32-bit data 
  310. registers and seven 32-bit address registers. There are two 32-bit stack 
  311. pointers, one 32-bit program counter and a 16-bit status register. Its name 
  312. derives from the fact that it consists of around 68,000 transistors.
  313.  
  314. The MC68000 features 56 basic instructions where operations can be based on 
  315. bits, bytes, words or long words. There are two modes of operation, 'user' and 
  316. 'supervisor', the former checking for an operation's memory access ensuring 
  317. the program is keeping out of the protected memory thus preventing its 
  318. possible corruption. The latter allows access to this memory but requires a 
  319. conscious effort on the part of the programmer to do so. The 68000 can control 
  320. both synchronous and asynchronous devices and it reserves the first 1,024 
  321. bytes where the exception table is located. Most early 68000s are housed in a 
  322. 64-pin DIL package although lately they appear in the square 68-pin PLCC 
  323. sockets and are powered through +5 V and 0 V pins. CMOS varieties are 
  324. available.
  325.  
  326.  
  327. MC68020
  328. Launched in 1984, the Motorola 68020 never featured in any Atari computers. It 
  329. is a full 32-bit device capable of addressing 4 Gb of memory like the 68030. 
  330. It has a greatly enhanced instruction set, an on-chip 256-byte instruction 
  331. cache and an interface for floating point coprocessors, such as the MC68882. 
  332. Pipelining was introduced to speed up some operations which handles up to 
  333. three instructions at once by splitting their execution into three stages.
  334.  
  335.  
  336. MC68030
  337. The Motorola 68030 microprocessor was launched in 1987 and is fitted in the TT 
  338. and Falcon030 running at 32 MHz in the TT and 16 MHz in the Falcon. It is 
  339. reputed to consist of 300,000 transistors. Apart from its faster clock speed, 
  340. it is superior to the 68000 in having a full 32-bit data bus, a 32-bit address 
  341. bus (giving a direct, linear memory space of 4 Gb), internal data and 
  342. instruction caches (256 bytes each), pipelining, dynamic bus sizing (access to 
  343. odd as well as even addresses), a more efficient microcode and hardware memory 
  344. protection and management enabling safe and efficient multitasking. Burst mode 
  345. transfers of data allows the reading of four 32-bit long words in just five 
  346. clock cycles and the internal architecture allows data and instructions to 
  347. move within the chip on separate buses concurrently.
  348.  
  349.  
  350. MC68040
  351. Launched in 1990, this Motorola processor was not used by Atari. It is rated 
  352. at 29 MIPS with a 33 MHz clock and contains 1.2 million transistors. The 
  353. internal data and instruction caches are now 4 K each (which Motorola claim to 
  354. have a 99% hit rate) and burst mode writes are also available. It can operate 
  355. at 32 MHz or faster (40 MHz is the fastest available at the time of writing) 
  356. and has an integrated FPU on-chip delivering 3.5 MFLOPS. Extensive pipelining 
  357. and the hard wiring of certain key operations result in an average execution 
  358. time of 1.25 clock cycles per instruction compared to 1.9 for an Intel 80486. 
  359. Up to fourteen operations can be processed at once. The FPU can perform three 
  360. activities at once in parallel with the integer unit which can perform six 
  361. operations at once and the internal caches have their own memory management 
  362. units giving the 68040 extensive parallelism capabilities.
  363.  
  364. Unlike the MC68020 and MC68030 processors, the MC68040 does not support 
  365. dynamic bus sizing and expects the referenced device to be able to accept the 
  366. requested access width. Blocks of memory which must be contiguous, such as 
  367. code storage or program stacks, must be 32 bits wide.
  368.  
  369.  
  370. MC68050
  371. The release of this chip was supposed to have been in 1992 but Motorola 
  372. decided to drop it in favour of waiting for the 68060 in 1994. The reason for 
  373. this is unclear although it is likely that Motorola didn't see a market for it 
  374. when the 68060 was so near to finishing. The 68050 was also not fast enough to 
  375. compete with the Intel Pentium (P5 or 80586 as it was originally known) which 
  376. was soon to emerge.
  377.  
  378. The 68050 was to have the facility of connecting several in parallel with each 
  379. other. This was carried forward to include a new series of MMU chips and slave 
  380. processors.
  381.  
  382.  
  383. MC68060
  384. The 68060 was released in 1994 and is a 32-bit processor with a superscalar, 
  385. pipelined architecture which means it can perform two instructions per clock 
  386. cycle. It has a 64-bit data bus, a 32-bit address bus and 32-bit registers. It 
  387. has more than two million transistors, using a 0.5 micron, triple-layer metal, 
  388. 3.3 volt process in a static design. Performance will be 3.5 times that of the 
  389. 25 MHz 68040, or about 46 SPECmarks, 100 MIPS and 12 MFLOPS according to 
  390. Motorola although these may well be based on very optimized tests. Byte 
  391. magazine claims about 77 MIPS.
  392.  
  393. Separated in the 68060 are instruction caches and data caches; instruction 
  394. fetch pipelines (with four-stage instruction processor, a physically-mapped 8 
  395. K instruction cache with four-way self associative, a virtually mapped 256-
  396. entry branch cache and a FIFO instruction buffer), and operand execution 
  397. pipelines (with four-stage operand processor, a physically mapped 8 K data 
  398. cache with 4-way interleaving and a 4-entry, 32-bit write buffer).
  399.  
  400. The floating point unit - implemented in the execution stage of the operand 
  401. execution pipeline - is compatible with the 68040 FPU programming model. 
  402. Floating point execution times range from 1-24 cycles. The 68060 superscalar 
  403. dispatch algorithm can execute 50 to 60 percent of integer code instructions 
  404. as pairs with existing compilers.
  405.  
  406. The 68060 comes in a 68040-style package with a similar external bus and runs 
  407. at 50 MHz and 66 MHz.
  408.  
  409.  
  410. MC6850
  411. See ACIA.
  412.  
  413.  
  414. MC68851
  415. Motorola memory management processor which is the basis of the MMU chip on the 
  416. ST and TT.
  417.  
  418.  
  419. MC68881
  420. Motorola floating point coprocessor. Originally fitted to some TTs and 
  421. standard on a Mega STE and optional on a Falcon030. Also optional on a Mega ST 
  422. with the SFP004 expansion board. The MC68881 appears as a peripheral 
  423. input/output port in the memory map of the Mega ST and STE as the MC68000 CPU 
  424. does not support coprocessors, which makes the operation of the MC68881 
  425. slower, but still faster than if one wasn't fitted. The MC68030 can properly 
  426. support a coprocessor. See FPU and SFP004.
  427.  
  428.  
  429. MC68882
  430. Motorola floating point coprocessor, fitted to the TT as standard and optional 
  431. on the Mega STE and Falcon. It is essentially the same as a MC68881 but 
  432. performs its calculations about 1.5 times faster than it. See MC68881, FPU.
  433.  
  434.  
  435. MC68901
  436. See MFP 68901.
  437.  
  438.  
  439. MC68LC040
  440. This is basically a Motorola 68040 without the FPU, thus making it cheaper 
  441. than a 68040 but just as fast for non-floating point operations, which only a 
  442. few programs support on the ST-Falcon anyway.
  443.  
  444.  
  445. MCA
  446. Micro Channel Architecture. The expansion bus connector developed by IBM on 
  447. the PS/2 range of computers allowing for daughter boards to be plugged into 
  448. the motherboard. The royalty imposed on this design caused other manufacturers 
  449. to develop the more widespread EISA system.
  450.  
  451.  
  452. MCGA
  453. Multi-Colour Graphics Array. A screen display system used on some IBM PS/2 
  454. computers to provide CGA graphics made necessary because the PS/2 range used 
  455. analogue monitors and CGA was designed for RGB TTL monitors.
  456.  
  457.  
  458. MCU
  459. Memory Control Unit. Atari custom chip in the STE and TT which works like the 
  460. ST MMU and GLUE chips and replaces them on the motherboard. It comes as a 144-
  461. pin gullwing surface mounted device. The MCU controls the memory, ROM access, 
  462. floppy clock selection, real-time clock access and video sync generation. The 
  463. 68030 of the TT and Falcon030 does its own memory management and protection so 
  464. many of the functions of the ST's MMU are not needed although separate MMUs 
  465. are required for each expansion board of memory. See GLUE, MMU.
  466.  
  467.  
  468. MDA
  469. Monochrome Display Adaptor. An early form of screen display used by IBM PC 
  470. compatibles capable of displaying 80 x 25 text displays using a character 
  471. matrix of 9 x 14 dots. It is hardly used any more.
  472.  
  473.  
  474. Mean
  475. Synonymous with average.
  476.  
  477.  
  478. Media conversion
  479. Transcription of data from one storage medium to another, say from tape to 
  480. disk.
  481.  
  482.  
  483. Medium
  484. A physical means used to represent data for storage or transfer, such as the 
  485. magnetizable surface of a disk.
  486.  
  487.  
  488. Medium scale integration - MSI
  489. Semiconductor devices with ten to a hundred gates per chip.
  490.  
  491.  
  492. Medium resolution
  493. The ST's four colour display of 640 x 200 pixels.
  494.  
  495.  
  496. Medium speed
  497. A data transmission speed of between 2,400 and 4,800 bits per second.
  498.  
  499.  
  500. Mega - M
  501. Prefix meaning one million (10^6).
  502.  
  503.  
  504. Megabyte - MB, Mb, Mbyte
  505. A 'computer million' (2^20) or 1,048,576 bytes.
  506.  
  507.  
  508. MegaFile 20
  509. Atari 20 Mb hard disk drive in a Mega ST type case.
  510.  
  511.  
  512. MegaFile 30
  513. Atari 30 Mb hard disk drive in a Mega ST type case, using RLL encoding with a 
  514. transfer rate of 5 Mbits per second and an average access time of 65 ms.
  515.  
  516.  
  517. MegaFile 44
  518. Atari 44 Mb removable cartridge drive based on a SyQuest mechanism in a Mega 
  519. ST type case.
  520.  
  521.  
  522. MegaFile 60
  523. Atari 60 Mb hard disk drive in a Mega ST type case using RLL encoding with a 
  524. transfer rate of 5 Mbits per second and an average access time of 65 ms.
  525.  
  526.  
  527. Megahertz - MHz
  528. A frequency of one million (10^6) cycles per second.
  529.  
  530.  
  531. Mega ST
  532. Atari's 'three-box' version of the ST with separate keyboard, BLiTTER, real-
  533. time clock and internal MC68000 bus connector for a single expansion card. 
  534. Running with an 8 MHz MC68000 processor, it is now dated compared to its 
  535. companions and was replaced by the Mega STE in 1991/2.
  536.  
  537.   Table M1: Mega ST Specification
  538.  
  539.   Processor          8 MHz MC68000
  540.                      8 MHz BLiTTER
  541.                      DMA
  542.   Bus                16-bit external data, 32-bit internal data, 24-bit
  543.                      address
  544.   RAM                1, 2 or 4 Mb
  545.   ROM                2 or 6 sockets providing 192 K of ROM space
  546.   Floppy Disk Drive  3.5" double-sided double density 720 K
  547.   Input/Output       MIDI in and out (5-pin DIN)
  548.                      Monitor port (13-pin DIN) for ST monochrome or colour
  549.                      monitors
  550.                      Parallel printer port
  551.                      Serial port from MFP 68901 (25-pin DB)
  552.                      External floppy disk (14-pin DIN)
  553.                      Atari ACSI connector with DMA (19-pin DB)
  554.                      ST compatible cartridge port (128 K)
  555.                      Keyboard input
  556.                      Internal bus expansion port (64-pin)
  557.   Video              Colour palette of 512 colours
  558.                      320 x 200 x 16 colours ST low resolution
  559.                      640 x 200 x 4 colours ST medium resolution
  560.                      640 x 400 monochrome ST high resolution
  561.                      Text display 80 columns (high resolution) or 40 columns
  562.                      (low resolution) x 25 lines
  563.   Sound              3 channel PSG sound
  564.                      Total MIDI compatibility
  565.   Keyboard           Separate QWERTY keyboard, 95 keys, numeric keypad, 10
  566.                      function keys, cursor keys, ST joystick (9-pin DB) and ST
  567.                      mouse (9-pin DB) ports
  568.   Mouse              128 dpi 2 button
  569.   Real-Time Clock    Battery backed
  570.   Power              Internal PSU
  571.   Operating System   TOS 1.2 with GEM Desktop in ROM (upgradeable to TOS 1.4)
  572.  
  573.  
  574. Mega STE
  575. Development of the STE into a 'three-box' design based on the TT case but in 
  576. Atari 'grey'. It is very similar to a TT using a 16 MHz 68000 CPU with 32 K 
  577. RAM cache (instead of a MC68030), a BLiTTER and an optional 16 MHz 68881 
  578. floating point coprocessor. It has the ST's video resolutions. The MC68000 can 
  579. be optionally switched to 8 MHz for backwards compatibility and the RAM cache 
  580. turned off. Like the TT, it has a LAN interface, three serial ports, VME and 
  581. ACSI ports in addition to the STE's stereo sound output sockets. Memory is 1, 
  582. 2 or 4 Mb with a 48 Mb or 80 Mb built-in hard disk (optional on 1 Mb version) 
  583. and a TV modulator is a surprise addition. TOS 2 is used with the NewDesk 
  584. Desktop. It does not have the Mega ST 68000 internal expansion bus and the 
  585. STE's digital/analogue controller ports. The Mega STE replaced the Mega ST and 
  586. is seen to fill the small business and serious home enthusiast niche.
  587.  
  588.   Table M2: Mega STE Specification
  589.  
  590.   Processor          16 MHz MC68000 32 K RAM Cache (switchable to 8 MHz)
  591.                      16 MHz MC68881 FPU (optional)
  592.                      8 MHz BLiTTER
  593.                      DMA
  594.   Bus                16-bit external data, 32-bit internal data, 24-bit
  595.                      address
  596.   RAM                1, 2 or 4 Mb
  597.   ROM                2 sockets providing 256 K of ROM space
  598.   Hard Disk Drive    Internal SCSI 48 Mb or 80 Mb (optional with 1 Mb, sizes
  599.                      change with availability)
  600.   Floppy Disk Drive  3.5" double-sided high density 1.44 Mb
  601.   Input/Output       MIDI in and out (5-pin DIN)
  602.                      Monitor port (13-pin DIN) for ST monochrome or colour
  603.                      monitors
  604.                      RF modulator output for TV (colour resolutions only)
  605.                      Parallel printer port
  606.                      2 asynchronous serial ports from two MFP 68901 (9-pin DB)
  607.                      1 high-speed SCC serial port (9-pin DB)
  608.                      SCC LAN with DMA (8-pin mini-DIN)
  609.                      Atari ACSI with DMA
  610.                      External floppy disk drive interface
  611.                      ST compatible cartridge port (128 K)
  612.                      Separate keyboard interface
  613.                      2 stereo sound output RCA-style phono sockets
  614.                      Internal VME card slot (A24/D16 and A16/D16 slave only)
  615.   Video              Colour palette of 4,096 colours
  616.                      320 x 200 x 16 colours ST low resolution
  617.                      640 x 200 x 4 colours ST medium resolution
  618.                      640 x 400 monochrome ST high resolution
  619.                      80 column text display (40 in low resolution)
  620.                      Colour modes 50-60 Hz, monochrome 71.4 Hz
  621.   Sound              Total MIDI compatibility
  622.                      Stereo 8-bit PCM DMA sound (STE compatible)
  623.                      3 channel PSG sound (ST compatible)
  624.                      Internal mono speaker (which can be disabled)
  625.   Keyboard           Separate QWERTY keyboard, 95 keys, numeric keypad, 10
  626.                      function keys, cursor keys, mouse port (9-pin DB),
  627.                      joystick port (9-pin DB)
  628.   Mouse              128 dpi 2 button
  629.   Real-Time Clock    Battery backed RTC with 50 bytes of non-volatile RAM
  630.   Power              Internal PSU
  631.   Operating System   TOS 2.0x with GEM and NewDesk Desktop in ROM
  632.  
  633.  
  634. Member
  635. A unit that makes up a group. In a hierarchy, an element that is lower or 
  636. controlled by another, as in databases where records are members of files.
  637.  
  638.  
  639. Memory
  640. A medium or device capable of receiving, retaining and outputting data in 
  641. binary form, often used to refer to semiconductor memory such as RAM or ROM.
  642.  
  643.  
  644. Memory cell
  645. A single bit-sized storage cell.
  646.  
  647.  
  648. Memory form definition block - MFDB
  649. A VDI programming data structure concerned with VDI raster operations (screen 
  650. graphics).
  651.  
  652.  
  653. Memory map - ST/STE
  654. The first 2,048 ($00000000-$000007FF) bytes of ST memory are reserved for the 
  655. exception vectors and system variables. The first eight bytes of the ROM are 
  656. shadowed at the start of RAM for the reset stack pointer and program counter. 
  657. This area along with I/O space at $00FF8000 is protected for supervisor 
  658. references only. Accessing supervisor protected areas while in the user state 
  659. will result in a bus error. Writing to this area or any ROM location will also 
  660. result in a bus error. The following is a map of ST/STE memory (including Mega 
  661. ST and Mega STE). Addresses are in hexadecimal.
  662.  
  663.   Table M3: General Memory Map - ST/STE
  664.  
  665.   Address     Use
  666.   00000000    ROM    Supervisor stack pointer
  667.   00000004    ROM    Program counter
  668.   00000008    RAM    Exception vectors
  669.   00000400    RAM    System variables
  670.   00000800    RAM    Main RAM start
  671.   003FFFFF    RAM    End of maximum physical RAM space
  672.   00400000    RAM    May be used by hardware developers
  673.   00A00000    VME/   Mega STE VME A24:D16 address space or additional
  674.   00DEFFFF    RAM    ST compatible RAM or I/O space for Mega STE
  675.   00C00000    RAM    Expansion bus memory (Mega ST)
  676.   00CFFFFF    RAM    End of expansion bus memory (Mega ST)
  677.   00DF0000    VME/   Mega STE VME A16:D16 address space or additional
  678.   00DFFFFF    RAM    ST compatible RAM or I/O space for Mega STE
  679.   00E00000    ROM    Main system ROM space for TOS 1.6 onwards
  680.   00EFFFFF    ROM    End of system ROM space for TOS 1.6 onwards
  681.   00F00000           reserved
  682.   00FA0000    ROM    Cartridge ROM space
  683.   00FC0000    ROM    Main system ROM space for TOS 1.0-1.4
  684.   00FEFFFF    ROM    End of system ROM space for TOS 1.0-1.4
  685.   00FF0000           reserved
  686.   00FF8001    I/O    Memory controller register
  687.   00FF8002           unassigned
  688.   00FF8200    I/O    Video controller registers
  689.   00FF8266           unassigned
  690.   00FF8600    I/O    ACSI DMA and FDC registers
  691.   00FF860E           unassigned
  692.   00FF8800    I/O    Programmable sound chip registers
  693.   00FF8804           unassigned
  694.   00FF8900    I/O    STE DMA sound registers
  695.   00FF8922    I/O    STE MICROWIRE registers
  696.   00FF8926           unassigned
  697.   00FF8960    I/O    Mega STE real-time clock registers
  698.   00FF8964           unassigned
  699.   00FF8A00    I/O    BLiTTER registers
  700.   00FF8A3E           unassigned
  701.   00FF8C80    I/O    Mega STE SCC ports registers
  702.   00FF8C88           unassigned
  703.   00FF8E00    I/0    Mega STE VME system control unit (SCU) registers
  704.   00FF8E10           unassigned
  705.   00FF8E21    I/O    Mega STE cache/processor control
  706.   00FF8E22           unassigned
  707.   00FF9200    I/O    Mega STE configuration switches
  708.   00FF9200    I/O    STE extended joystick controllers registers
  709.   00FF9224           unassigned
  710.   00FFFA00    I/O    MFP 68901 registers
  711.   00FFFA30           unassigned
  712.   00FFFA40    I/O    Mega ST/Mega STE 68881 FPU peripheral registers
  713.   00FFFA54           unassigned
  714.   00FFFC00    I/O    Keyboard and MIDI ACIA registers
  715.   00FFFC20    I/O    Mega ST real-time clock registers
  716.   00FFFC40           unassigned
  717.   00FFFFFF           End of address space
  718.  
  719.  
  720. Memory map I/O - ST/STE
  721. The ST/STE input/output space is at $00FF8000 to $00FFFFFF. Accessing reserved 
  722. I/O addresses will result in a bus error. The following is a map of ST/STE I/O 
  723. space, where RW = Read/Write, RO = Read Only, WO = Write Only, 'x' marks a 
  724. valid bit position in the byte or word and '-' marks an unused bit which is 
  725. always assumed to have a value of zero. Each address shows a word or sixteen 
  726. bits, the even (high) byte being on the left and the odd (low) byte on the 
  727. right. Addresses are in hexadecimal.
  728.  
  729.   Table M4: Memory Controller Register
  730.   FF8000   RW   ---- ---- ---- xxxx   Memory configuration
  731.                                       Bank0    Bank1
  732.                                0000   128 K    128 K
  733.                                0001   128 K    512 K
  734.                                0010   128 K    2 Mb
  735.                                0011   Reserved
  736.                                0100   512 K    128 K
  737.                                0101   512 K    512 K
  738.                                0110   512 K    2 Mb
  739.                                0111   Reserved
  740.                                1000   2 Mb     128 K
  741.                                1001   2 Mb     512 K
  742.                                1010   2 Mb     2 Mb
  743.                                1011   Reserved
  744.                                11xx   Reserved
  745.  
  746.   Table M5: ST Video Controller Registers
  747.   FF8200   RW   ---- ---- xxxx xxxx   Video base high
  748.   FF8202   RW   ---- ---- xxxx xxxx   Video base low
  749.   FF8204   RO   ---- ---- xxxx xxxx   Video address counter high
  750.   FF8206   RO   ---- ---- xxxx xxxx   Video address counter middle
  751.   FF8208   RO   ---- ---- xxxx xxxx   Video address counter low
  752.   FF820A   RW   ---- --xx ---- ----   Video sync mode
  753.                        ||___________  External/internal sync
  754.                        |____________  50/60 Hz field rate
  755.   FF8240   RW   ---- -xxx -xxx -xxx   Palette colour 0 and border
  756.                        |    |    ||_  Inverted/normal monochrome
  757.                        |    |    |__  Blue
  758.                        |    |_______  Green
  759.                        |____________  Red
  760.   to
  761.   FF825E   RW   ---- -xxx -xxx -xxx   Palette colour 15
  762.   FF8260   RW   ---- --xx ---- ----   Shift mode
  763.                        00             320 x 200, 4 planes
  764.                        01             640 x 200, 2 planes
  765.                        10             640 x 400, 1 plane
  766.                        11             Reserved
  767.   FF827E   R/W  ---- -xx- ---- ----   Stacy display state
  768.                       ||____________  Display on/off
  769.                       |_____________  Backlight on/off
  770.  
  771.   Table M6: STE Video Controller Registers
  772.   FF8200   RW   ---- ---- --xx xxxx   Video base high
  773.   FF8202   RW   ---- ---- xxxx xxxx   Video base middle
  774.   FF8204   RW   ---- ---- xxxx xxxx   Video address counter high
  775.   FF8206   RW   ---- ---- xxxx xxxx   Video address counter middle
  776.   FF8208   RW   ---- ---- xxxx xxxx   Video address counter low
  777.   FF820A   RW   ---- --xx ---- ----   Sync mode
  778.                        ||___________  External/internal sync
  779.                        |____________  50/60 Hz field rate
  780.   FF820C   RW   ---- ---- xxxx xxxx   Video base low
  781.   FF820E   RW   ---- ---- xxxx xxxx   LINEWID register
  782.   FF8240   RW   ---- 0321 0321 0321   Palette colour 0 and border
  783.                       |    |    | |_  Inverted/normal monochrome
  784.                       |    |    |___  Blue
  785.                       |    |________  Green
  786.                       |_____________  Red
  787.   to
  788.   FF825E   RW   ---- 0321 0321 0321   Palette colour 15
  789.   FF8260   RW   ---- --xx ---- ----   Shift mode
  790.                        00             320 x 200, 4 planes
  791.                        01             640 x 200, 2 planes
  792.                        10             640 x 400, 1 plane
  793.                        11             Reserved
  794.   FF8264   RW   ---- ---- ---- xxxx   HSCROLL register
  795.  
  796.   Table M7: ACSI DMA and FDC Registers
  797.   FF8600        ---- ---- ---- ----   Reserved
  798.   FF8602        ---- ---- ---- ----   Reserved
  799.   FF8604   RW   ---- ---- xxxx xxxx   FDC access/sector count
  800.   FF8606   RO   ---- ---- ---- -xxx   DMA status
  801.                                 |||_  Error status
  802.                                 ||__  Sector count zero status
  803.                                 |___  Data request inactive status
  804.   FF8606   WO   ---- ---x xxxx xxx-   DMA mode control
  805.                         | |||| |||__  A0
  806.                         | |||| ||___  A1
  807.                         | |||| |____  HDC/FDC register select
  808.                         | ||||______  Sector count register select
  809.                         | ||0         Reserved
  810.                         | ||________  Disable/enable DMA
  811.                         | |_________  FDC/HDC access
  812.                         |___________  Write/read
  813.   FF8608   RW   ---- ---- xxxx xxxx   DMA base and counter high
  814.   FF860A   RW   ---- ---- xxxx xxxx   DMA base and counter middle
  815.   FF860C   RW   ---- ---- xxxx xxxx   DMA base and counter low
  816.  
  817.   Table M8: Programmable Sound Chip Registers
  818.   FF8800   RO   xxxx xxxx ---- ----   PSG read data
  819.                 |||| ||||             I/O port B
  820.                 ||||_||||___________  Parallel interface data
  821.   FF8800   WO   ---- xxxx ---- ----   PSG register select
  822.                      ||||___________  Register number
  823.                      0000             Channel A fine tune
  824.                      0001             Channel A coarse tune
  825.                      0010             Channel B fine tune
  826.                      0011             Channel B coarse tune
  827.                      0100             Channel C fine tune
  828.                      0101             Channel C coarse tune
  829.                      0110             Noise generator control
  830.                      0111             Mixer control - I/O enable
  831.                      1000             Channel A amplitude
  832.                      1001             Channel B amplitude
  833.                      1010             Channel C amplitude
  834.                      1011             Envelope period fine tune
  835.                      1100             Envelope period coarse tune
  836.                      1101             I/O port A select (output only)
  837.                      1111             I/O port B select
  838.   FF8802   WO   xxxx xxxx ---- ----   PSG write data
  839.                 |||| ||||             I/O port A
  840.                 |||| ||||___________  Floppy side 0/side 1 select
  841.                 |||| |||____________  Floppy drive 0 select
  842.                 |||| ||_____________  Floppy drive 1 select
  843.                 |||| |______________  RS-232 request to send
  844.                 ||||________________  RS-232 data terminal ready
  845.                 |||_________________  Printer port STROBE
  846.                 ||__________________  General purpose output
  847.                 |___________________  Reserved
  848.                 |||| ||||             I/O port B
  849.                 ||||_||||___________  Parallel interface data
  850.  
  851.   Table M9: STE DMA Sound Control Registers
  852.   FF8900   RW   ---- ---- ---- --xx   Sound DMA control
  853.                                  00   Sound DMA disabled
  854.                                  01   Sound DMA enabled
  855.                                  11   Enabled, repeat frame forever
  856.   FF8902   RW   ---- ---- --xx xxxx   Frame base address high
  857.   FF8904   RW   ---- ---- xxxx xxxx   Frame base address middle
  858.   FF8906   RW   ---- ---- xxxx xxxx   Frame base address low
  859.   FF8908   RO   ---- ---- --xx xxxx   Frame address counter high
  860.   FF890A   RO   ---- ---- xxxx xxxx   Frame address counter middle
  861.   FF890C   RO   ---- ---- xxxx xxxx   Frame address counter low
  862.   FF890E   RW   ---- ---- --xx xxxx   Frame end address high
  863.   FF8910   RW   ---- ---- xxxx xxxx   Frame end address middle
  864.   FF8912   RW   ---- ---- xxxx xxxx   Frame end address low
  865.   FF8920   RW   ---- ---- x--- --xx   Sound mode control
  866.                                  00   6,258 Hz sample rate
  867.                                  01   12,517 Hz sample rate
  868.                                  10   25,033 Hz sample rate
  869.                                  11   50,066 Hz sample rate
  870.                           0           Stereo mode
  871.                           1           Mono mode
  872.  
  873.   Table M10: STE MICROWIRE Registers
  874.   FF8922   RW   xxxx xxxx xxxx xxxx   MICROWIRE data register
  875.   FF8924   RW   xxxx xxxx xxxx xxxx   MICROWIRE mask register
  876.  
  877.   Table M11: Mega STE Real-Time Clock Registers
  878.   FF8960   RW   ---- ---- xxxx xxxx   Address register
  879.   FF8962   RW   ---- ---- xxxx xxxx   Data register
  880.  
  881.   Table M12: BLiTTER Registers
  882.   FF8A00   RW   xxxx xxxx xxxx xxxx   Half-tone RAM row 0
  883.   to
  884.   FF8A1E   RW   xxxx xxxx xxxx xxxx   Half-tone RAM row 15
  885.   FF8A20   RW   xxxx xxxx xxxx xxxx   Source X increment
  886.   FF8A22   RW   xxxx xxxx xxxx xxxx   Source Y increment
  887.   FF8A24   RW   ---- ---- xxxx xxxx   Source address high
  888.   FF8A26   RW   xxxx xxxx xxxx xxx0   Source address low
  889.   FF8A28   RW   xxxx xxxx xxxx xxxx   Endmask 1
  890.   FF8A2A   RW   xxxx xxxx xxxx xxxx   Endmask 2
  891.   FF8A2C   RW   xxxx xxxx xxxx xxxx   Endmask 3
  892.   FF8A2E   RW   xxxx xxxx xxxx xxxx   Destination X increment
  893.   FF8A30   RW   xxxx xxxx xxxx xxxx   Destination Y increment
  894.   FF8A32   RW   ---- ---- xxxx xxxx   Destination address high
  895.   FF8A34   RW   xxxx xxxx xxxx xxx0   Destination address low
  896.   FF8A36   RW   xxxx xxxx xxxx xxxx   X-count
  897.   FF8A38   RW   xxxx xxxx xxxx xxxx   Y-count
  898.   FF8A3A   RW   ---- --xx             Half-tone operation (HOP)
  899.                        00             All 1-bits
  900.                        01             Half-tone RAM
  901.                        10             Source
  902.                        11             Source and half-tone RAM
  903.   FF8A3B   RW             ---- xxxx   Logical operation (OP)
  904.                                0000   All 0-bits
  905.                                0001   Source AND destination
  906.                                0010   Source AND NOT destination
  907.                                0011   Source
  908.                                0100   NOT source AND destination
  909.                                0101   Destination
  910.                                0110   Source XOR destination
  911.                                0111   Source OR destination
  912.                                1000   NOT source AND NOT destination
  913.                                1001   NOT source XOR destination
  914.                                1010   NOT destination
  915.                                1011   Source OR NOT destination
  916.                                1100   NOT source
  917.                                1101   NOT source OR destination
  918.                                1110   NOT source OR NOT destination
  919.                                1111   All 1-bits
  920.   FF8A3C   RW   xxx- xxxx xx-- xxxx   Configuration
  921.                 |||  |||| ||   ||||_  SKEW
  922.                 |||  |||| ||________  No final source read (NFSR)
  923.                 |||  |||| |_________  Force extra source read (FXSR)
  924.                 |||  ||||___________  Line number
  925.                 |||_________________  SMUDGE
  926.                 ||__________________  HOG
  927.                 |___________________  Busy
  928.  
  929.   Table M13: Mega STE SCC Ports
  930.   FF8C80   RW   ---- ---- xxxx xxxx   SCC A control
  931.   FF8C82   RW   ---- ---- xxxx xxxx   SCC A data
  932.   FF8C84   RW   ---- ---- xxxx xxxx   SCC B control
  933.   FF8C86   RW   ---- ---- xxxx xxxx   SCC B data
  934.  
  935.   Table M14: Mega STE VME System Control Unit (SCU) Registers
  936.   FF8E00   RW   ---- ---- xxxx xxx-   System interrupt mask
  937.   FF8E02   RO   ---- ---- xxxx xxxx   System interrupt state
  938.   FF8E04   RW   ---- ---- ---- ---x   System interrupter
  939.                                   1   Generate interrupt
  940.   FF8E06   RW   ---- ---- ---- ---x   VME interrupter
  941.                                   1   Generate interrupt VME IRQ3
  942.   FF8E08   RO   ---- ---- xxxx xxxx   General purpose register 1
  943.   FF8E0A   RO   ---- ---- xxxx xxxx   General purpose register 2
  944.   FF8E0C   RW   ---- ---- xxxx xxx-   VME interrupt mask
  945.   FF8E0E   RO   ---- ---- xxxx xxxx   VME interrupt state
  946.  
  947.   Table M15: Mega STE Cache and Processor Control
  948.   FF8E20   RW   ---- ---- ---- --xx   Cache/processor control register
  949.  
  950.   Table M16: Mega STE Configuration Switches
  951.   FF9200   RW   xxxx xxxx ---- ----
  952.  
  953.   Table M17: STE Game Controllers Registers
  954.   FF9200   RW   ---- xxxx ---- ----   Joystick fire buttons
  955.                      3210             Controller port number
  956.   FF9202   RW   xxxx xxxx xxxx xxxx   Joystick directions
  957.                 UDLR UDLR UDLR UDLR
  958.                 Joy3 Joy1 Joy2 Joy0   Joystick 1 and 3 are RO
  959.   FF9210   RO   ---- ---- xxxx xxxx   Paddle 0 X  Fire buttons as for
  960.                                                   joysticks
  961.   FF9212   RO   ---- ---- xxxx xxxx   Paddle 0 Y  Triggers are JOY 0 left and
  962.                                                   right
  963.   FF9214   RO   ---- ---- xxxx xxxx   Paddle 1 Y
  964.   FF9216   RO   ---- ---- xxxx xxxx   Paddle 1 X
  965.   FF9220   RO   ---- --xx xxxx xxxx   Light gun/pen X
  966.   FF9222   RO   ---- --xx xxxx xxxx   Light gun/pen Y
  967.  
  968.   Table M18: MFP 68901 Registers
  969.   FFFA00   RW   ---- ---- xxxx xxxx   General purpose I/O GPIP
  970.   FFFA02   RW   ---- ---- xxxx -xxx   Active edge AER
  971.                           ||||  |||_  Centronics busy
  972.                           ||||  ||__  RS-232 carrier detect
  973.                           ||||  |___  RS-232 clear to send
  974.                           ||||______  Keyboard/MIDI interrupt
  975.                           |||_______  FDC/HDC interrupt
  976.                           ||________  RS-232 ring indicator
  977.                           |_________  Monochrome monitor detect
  978.   FFFA04   RW   ---- ---- xxxx xxxx   Data direction DDR
  979.   FFFA06   RW   ---- ---- xxxx xxxx   Interrupt enable A IERA
  980.                           |||| ||||_  Timer B (HBlank counter)
  981.                           |||| |||__  Sender error
  982.                           |||| ||___  Sender buffer empty
  983.                           |||| |____  Receive buffer empty
  984.                           ||||______  Receive buffer full
  985.                           |||_______  Timer A (DMA sound counter)
  986.                           ||________  RS-232 ring indicator
  987.                           |_________  Monochrome monitor detect
  988.   FFFA08   RW   ---- ---- xxxx xxxx   Interrupt enable B IERB
  989.                           |||| ||||_  Centronics busy
  990.                           |||| |||__  RS-232 carrier detect
  991.                           |||| ||___  RS-232 clear to send
  992.                           |||| |____  BitBLT complete
  993.                           ||||______  Timer D (baud rate generator)
  994.                           |||_______  Timer C (200 Hz system clock)
  995.                           ||________  Keyboard/MIDI interrupt
  996.                           |_________  FDC/HDC interrupt
  997.   FFFA0A   RW   ---- ---- xxxx xxxx   Interrupt pending A IPRA
  998.                                       mapping as for IERA
  999.   FFFA0C   RW   ---- ---- xxxx xxxx   Interrupt pending B IPRB
  1000.                                       mapping as for IERB
  1001.   FFFA0E   RW   ---- ---- xxxx xxxx   Interrupt in-service A ISRA
  1002.                                       mapping as for IERA
  1003.   FFFA10   RW   ---- ---- xxxx xxxx   Interrupt in-service B ISRB
  1004.                                       mapping as for IERB
  1005.   FFFA12   RW   ---- ---- xxxx xxxx   Interrupt mask A IMRA
  1006.                                       mapping as for IERA
  1007.   FFFA14   RW   ---- ---- xxxx xxxx   Interrupt mask B IMRB
  1008.                                       mapping as for IERB
  1009.   FFFA16   RW   ---- ---- ---- x---   Vector VR
  1010.                                0      Automatic end-of-interrupt
  1011.                                1      Software end-of-interrupt
  1012.   FFFA18   RW   ---- ---- ---- xxxx   Timer A control TACR
  1013.                                0000   Timer stop
  1014.                                0001   Delay mode, divide by 4
  1015.                                0010   Delay mode, divide by 10
  1016.                                0011   Delay mode, divide by 16
  1017.                                0100   Delay mode, divide by 50
  1018.                                0101   Delay mode, divide by 64
  1019.                                0110   Delay mode, divide by 100
  1020.                                0111   Delay mode, divide by 200
  1021.                                1000   Event count mode
  1022.                                1001   Pulse extension mode
  1023.                                1001   Pulse extension mode, divide by 4
  1024.                                1010   Pulse extension mode, divide by 10
  1025.                                1011   Pulse extension mode, divide by 16
  1026.                                1100   Pulse extension mode, divide by 50
  1027.                                1101   Pulse extension mode, divide by 64
  1028.                                1110   Pulse extension mode, divide by 100
  1029.                                1111   Pulse extension mode, divide by 200
  1030.   FFFA1A   RW   ---- ---- ---- xxxx   Timer B control TBCR
  1031.                                       mapping as for TACR
  1032.   FFFA1C   RW   ---- ---- -xxx -xxx   Timers C and D control TCDCR
  1033.                            000        Timer C stop
  1034.                            001        Timer C delay mode, divide by 4
  1035.                            010        Timer C delay mode, divide by 10
  1036.                            011        Timer C delay mode, divide by 16
  1037.                            100        Timer C delay mode, divide by 50
  1038.                            101        Timer C delay mode, divide by 64
  1039.                            110        Timer C delay mode, divide by 100
  1040.                            111        Timer C delay mode, divide by 200
  1041.                                 000   Timer D stop
  1042.                                 001   Timer D delay mode, divide by 4
  1043.                                 010   Timer D delay mode, divide by 10
  1044.                                 011   Timer D delay mode, divide by 16
  1045.                                 100   Timer D delay mode, divide by 50
  1046.                                 101   Timer D delay mode, divide by 64
  1047.                                 110   Timer D delay mode, divide by 100
  1048.                                 111   Timer D delay mode, divide by 200
  1049.   FFFA1E   RW   ---- ---- xxxx xxxx   Timer A data TADR
  1050.   FFFA20   RW   ---- ---- xxxx xxxx   Timer B data TBDR
  1051.   FFFA22   RW   ---- ---- xxxx xxxx   Timer C data TCDR
  1052.   FFFA24   RW   ---- ---- xxxx xxxx   Timer D data TDDR
  1053.   FFFA26   RW   ---- ---- xxxx xxxx   Sync character SCR
  1054.   FFFA28   RW   ---- ---- xxxx xxx-   USART control UCR
  1055.                           |||| |||__  Parity
  1056.                           |||| ||___  Even/odd parity
  1057.                           |||0 0      Synchronous
  1058.                           |||0 1      1 stop, 1 start bits
  1059.                           |||1 0      1 stop, 1.5 start bits
  1060.                           |||1 1      1 stop, 2 start bits
  1061.                           |00         8 bits
  1062.                           |01         7 bits
  1063.                           |10         6 bits
  1064.                           |11         5 bits
  1065.                           |_________  Clock divide by 16
  1066.   FFFA2A   RW   ---- ---- xxxx xxxx   Receiver status RSR
  1067.                           |||| ||||_  Receiver enable
  1068.                           |||| |||__  Synchronous strip enable
  1069.                           |||| ||___  Match/character in progress
  1070.                           |||| |____  Search/break detect
  1071.                           ||||______  Frame error
  1072.                           |||_______  Parity error
  1073.                           ||________  Overrun error
  1074.                           |_________  Buffer full
  1075.   FFFA2C   RW   ---- ---- xxxx xxxx   Transmitter status TSR
  1076.                           |||| ||||_  Transmitter enable
  1077.                           |||| |||__  Low bit
  1078.                           |||| ||___  High bit
  1079.                           |||| |____  Break
  1080.                           ||||______  End of transmission
  1081.                           |||_______  Auto-turnaround
  1082.                           ||________  Underrun error
  1083.                           |_________  Buffer empty
  1084.   FFFA2E   RW   ---- ---- xxxx xxxx   USART data UDR
  1085.  
  1086.   Table M19: Mega ST/Mega STE 68881 FPU Peripheral Registers
  1087.   FFFA40   RW   xxxx xxxx xxxx xxxx   FPCIR status register
  1088.   FFFA42   RW   xxxx xxxx xxxx xxxx   FPCTL control register
  1089.   FFFA44   RW   xxxx xxxx xxxx xxxx   FPSAV save register
  1090.   FFFA46   RW   xxxx xxxx xxxx xxxx   FPREST restore register
  1091.   FFFA48   RW   xxxx xxxx xxxx xxxx   FPOPR operation register
  1092.   FFFA4A   RW   xxxx xxxx xxxx xxxx   FPCMD command register
  1093.   FFFA4C   RW   xxxx xxxx xxxx xxxx   FPRES reserved
  1094.   FFFA4E   RW   xxxx xxxx xxxx xxxx   FPCCR condition code register
  1095.   FFFA50   RW   xxxx xxxx xxxx xxxx   FPOP operand register high
  1096.   FFFA52   RW   xxxx xxxx xxxx xxxx   FPOP operand register low
  1097.   FFFA54   RW   xxxx xxxx xxxx xxxx   FPSLCT select register
  1098.   FFFA56   RW   xxxx xxxx xxxx xxxx   reserved
  1099.   FFFA58   RW   xxxx xxxx xxxx xxxx   FPIADR instruction address high
  1100.   FFFA5A   RW   xxxx xxxx xxxx xxxx   FPIADR instruction address low
  1101.   FFFA5C   RW   xxxx xxxx xxxx xxxx   FPOADR operand address high
  1102.   FFFA5E   RW   xxxx xxxx xxxx xxxx   FPOADR operand address low
  1103.  
  1104.   Table M20: ACIA Registers
  1105.   FFFC00   RW   xxxx xxxx ---- ----   Keyboard ACIA control
  1106.   FFFC02   RW   xxxx xxxx ---- ----   Keyboard ACIA data
  1107.   FFFC04   RW   xxxx xxxx ---- ----   MIDI ACIA control
  1108.   FFFC06   RW   xxxx xxxx ---- ----   MIDI ACIA data
  1109.  
  1110.   Table M21: Mega ST Real-Time Clock Registers
  1111.   FFFC20   RW   ---- ---- xxxx xxxx   Bank 0: seconds (ones 0-9)
  1112.                                       Bank 1: clock output frequency
  1113.                                 000   Open-collector CLKOUT
  1114.                                 001   16,384 Hz
  1115.                                 010   1,024 Hz
  1116.                                 011   128 Hz
  1117.                                 100   16 Hz
  1118.                                 101   1 Hz
  1119.                                 110   1/60 Hz
  1120.                                 111   Open-collector CLKOUT
  1121.   FFFC22   RW   ---- ---- xxxx xxxx   Bank 0: seconds (tens 0-5)
  1122.                                       Bank 1: reset seconds
  1123.   FFFC24   RW   ---- ---- xxxx xxxx   Bank 0: minutes (ones 0-9)
  1124.                                       Bank 1: alarm minutes (ones 0-9)
  1125.   FFFC26   RW   ---- ---- xxxx xxxx   Bank 0: minutes (tens 0-5)
  1126.                                       Bank 1: alarm minutes (tens 0-5)
  1127.   FFFC28   RW   ---- ---- xxxx xxxx   Bank 0: hours (ones 0-9)
  1128.                                       Bank 1: alarm hours (ones 0-9)
  1129.   FFFC2A   RW   ---- ---- xxxx xxxx   Bank 0: hours (tens 0-2 for 24 hour mode
  1130.                                       or 0-1 for 12 hour mode)
  1131.                                       bit 1 set = pm, bit 1 not set = am
  1132.                                       Bank 1: alarm hours as bank 0
  1133.   FFFC2C   RW   ---- ---- xxxx xxxx   Bank 0: days (0-6, Sunday = 0)
  1134.                                       Bank 1: alarm days as bank 0
  1135.   FFFC2E   RW   ---- ---- xxxx xxxx   Bank 0: date (ones 0-9)
  1136.                                       Bank 1: alarm date as bank 0
  1137.   FFFC30   RW   ---- ---- xxxx xxxx   Bank 0: date (tens 0-3)
  1138.                                       Bank 1: alarm date as bank 0
  1139.   FFFC32   RW   ---- ---- xxxx xxxx   Bank 0: months (ones 0-9)
  1140.                                       Bank 1: not used
  1141.   FFFC34   RW   ---- ---- xxxx xxxx   Bank 0: months (tens 0-1)
  1142.                                       Bank 1: bit 1 set = 24 hour mode
  1143.   FFFC36   RW   ---- ---- xxxx xxxx   Bank 0: years (ones 0-9) since 1980
  1144.                                       Bank 1: leap year register (0-3)
  1145.   FFFC38   RW   ---- ---- xxxx xxxx   Bank 0: years (tens 0-9)
  1146.                                       Bank 1: not used
  1147.   FFFC3A   RW   ---- ---- ---- xx-x   Mode register
  1148.                                || |_  Bank select
  1149.                                ||___  Alarm on/off
  1150.                                |____  Clock start/stop
  1151.   FFFC3C   RW   ---- ---- xxxx xxxx   Test register
  1152.   FFFC3E   RW   ---- ---- xxxx xxxx   Reset register
  1153.                                ||||_  Alarm reset
  1154.                                |||__  Clock reset
  1155.                                ||___  16 Hz alarm pulse
  1156.                                |____  1 Hz alarm pulse
  1157.  
  1158.  
  1159. Memory map - TT/Falcon
  1160. An ST compatible image resides at address $00000000 with another at $FF000000. 
  1161. The first $800 (2,048) bytes of RAM ($00000008-$000007FF or $FF000008-
  1162. $FF0007FF in the image) are reserved for the exception vectors and system 
  1163. variables. The first eight bytes of the ROM are shadowed at the start of RAM 
  1164. for the reset stack pointer and program counter. This area along with I/O 
  1165. space at $00FF8000 is protected for supervisor references only. Accessing 
  1166. supervisor protected areas while in the user state will result in a bus error. 
  1167. Writing to this area or any ROM location will also result in a bus error. The 
  1168. full ROM resides at the memory location $00E00000-$00EFFFFF with an image at 
  1169. $FFE00000-$FFEFFFFF. The following is a map of TT/Falcon memory as seen by the 
  1170. MC68030. Addresses are in hexadecimal.
  1171.  
  1172.   Table M22: General Memory Map - TT/Falcon
  1173.  
  1174.   Address     Use
  1175.   00000000    ROM    Supervisor stack pointer
  1176.   00000004    ROM    Program counter
  1177.   00000008    RAM    Exception vectors
  1178.   00000400    RAM    System variables
  1179.   00000800    RAM    Main ST RAM start
  1180.   009FFFFF    RAM    End of maximum physical ST RAM space
  1181.   00A00000           Falcon030 RAM space, reserved on TT
  1182.   00E00000    ROM    Main system ROM space
  1183.   00F00000           reserved TT I/O
  1184.   00FA0000    ROM    Cartridge ROM space
  1185.   00FC0000           reserved
  1186.   00FF8001    I/O    Memory controller register
  1187.   00FF8002           unassigned
  1188.   00FF8006    I/O    Falcon hardware configuration registers
  1189.   00FF8008           unassigned
  1190.   00FF8200    I/O    Video controller registers
  1191.   00FF82C4           unassigned
  1192.   00FF8400    I/O    TT palette registers
  1193.   00FF8600    I/O    ACSI DMA and FDC registers
  1194.   00FF860E           unassigned
  1195.   00FF8700    I/O    TT SCSI DMA control registers
  1196.   00FF8716           unassigned
  1197.   00FF8780    I/O    TT SCSI controller registers
  1198.   00FF8790           unassigned
  1199.   00FF8800    I/O    Programmable sound chip registers
  1200.   00FF8804           unassigned
  1201.   00FF8900    I/O    DMA sound control registers
  1202.   00FF8922    I/O    TT MICROWIRE registers
  1203.   00FF8926           unassigned
  1204.   00FF8930    I/O    Falcon DSP/DMA controller registers
  1205.   00FF8944           unassigned
  1206.   00FF8960    I/O    TT real-time clock and NVRAM registers
  1207.   00FF8964           unassigned
  1208.   00FF8A00    I/O    Falcon BLiTTER registers
  1209.   00FF8A3E           unassigned
  1210.   00FF8C00    I/O    TT SCC DMA control registers
  1211.   00FF8C16           unassigned
  1212.   00FF8C80    I/O    SCC ports registers
  1213.   00FF8C88           unassigned
  1214.   00FF8E00    I/O    TT VME system control unit (SCU) registers
  1215.   00FF8E10           unassigned
  1216.   00FF9200    I/O    TT configuration switches
  1217.   00FF9200    I/O    Falcon extended joystick controllers registers
  1218.   00FF9224           unassigned
  1219.   00FF9800    I/O    Falcon VIDEL palette registers
  1220.   00FF9C00           unassigned
  1221.   00FFA000    I/O    TT main board peripheral expansion
  1222.   00FFA200    I/O    Falcon DSP host interface
  1223.   00FFA208           unassigned
  1224.   00FFFA00    I/O    TT MFP-ST 68901 registers
  1225.   00FFFA30           unassigned
  1226.   00FFFA80    I/O    TT MFP-2 68901 registers
  1227.   00FFFAB0           unassigned
  1228.   00FFFC00    I/O    Keyboard and MIDI ACIA registers
  1229.   00FFFC20    I/O    unassigned
  1230.   00FFFFFF           End of I/O address space
  1231.   01000000    RAM    Start of TT fast RAM
  1232.   01FFFFFF    RAM    End TT RAM space
  1233.   02000000           reserved
  1234.   FE000000    VME    TT VMEbus A24/D16 addressable area
  1235.   FEFF0000    VME    TT VMEbus A16/D16 addressable area
  1236.   FF000000           ST shadow image of $0-$00FFFFFF
  1237.   FFFFFFFF           End of address space
  1238.  
  1239.  
  1240. Memory map I/O - TT/Falcon
  1241. The TT/Falcon input/output space is at $00FF8000 to $00FFFFFF with an image at 
  1242. $FFFF8000. Accessing reserved I/O addresses will result in a bus error. The 
  1243. following is a map of TT I/O space where RW = Read/Write, RO = Read Only, WO = 
  1244. Write Only, 'x' marks a valid bit position in the byte or word and '-' marks 
  1245. an unused bit which is always assumed to have a value of zero. Each address 
  1246. shows a word or sixteen bits, the even (high) byte being on the left and the 
  1247. odd (low) byte on the right. Addresses are in hexadecimal.
  1248.  
  1249.   Table M23: Memory Controller Register
  1250.   FF8000   RW   ---- ---- ---- xxxx   As Table 4
  1251.  
  1252.   Table M24: Falcon Hardware Configuration Register
  1253.   FF8006   RW   xx-- ---- --x- -x-x   Monitor type
  1254.                 00          |         ST monochrome and compatible
  1255.                 01          |         ST colour and compatible
  1256.                 10          |         VGA and multisync monitors
  1257.                 11          |         TV
  1258.                             |         Falcon clock control
  1259.                             |     0   68030 8 MHz
  1260.                             |     1   68030 16 MHz
  1261.                             |   0     BLiTTER 8 MHz
  1262.                             |   1     BLiTTER 16 MHz
  1263.                             |_______  STE bus emulation (0 = on)
  1264.  
  1265.   Table M25: Video Controller Registers
  1266.   FF8200   RW   ---- ---- xxxx xxxx   Video base high
  1267.   FF8202   RW   ---- ---- xxxx xxxx   Video base middle
  1268.   FF8204   RO   ---- ---- xxxx xxxx   Video address counter high
  1269.   FF8206   RO   ---- ---- xxxx xxxx   Video address counter middle
  1270.   FF8208   RO   ---- ---- xxxx xxxx   Video address counter low
  1271.   FF820A   RW   ---- --xx             Video sync mode
  1272.                        ||___________  External/internal sync
  1273.                        |____________  50/60 Hz field rate
  1274.   FF820B   WO             0000 0000   Reserved
  1275.   FF820C   RW   ---- ---- xxxx xxxx   Video base low
  1276.   FF820E   RW   xxxx xxxx xxxx xxxx   Line width (TT odd byte only)
  1277.   FF8210   RW   xxxx xxxx xxxx xxxx   Falcon line width
  1278.   FF8240   RW   ---- 0321 0321 0321   ST palette colour 0 and border
  1279.                       |    |    | |_  Inverted/normal monochrome
  1280.                       |    |    |___  Blue
  1281.                       |    |________  Green
  1282.                       |_____________  Red
  1283.   to
  1284.   FF825E   RW   ---- 0321 0321 0321   ST palette colour 15
  1285.   FF8260   RW   ---- --xx ---- ----   ST shift mode
  1286.                        00             320 x 200 x 4 planes
  1287.                        01             640 x 200 x 2 planes
  1288.                        10             640 x 400 x 1 plane
  1289.                        11             Reserved
  1290.   FF8262   RW   x--x -xxx ---- xxxx   TT shift mode
  1291.                 |  |           ||||_  ST palette bank
  1292.                 |  |________________  Hyper mono mode
  1293.                 |___________________  Sample and hold (smear) mode
  1294.                       000             320 x 200 x 4 planes
  1295.                       001             640 x 200 x 2 planes
  1296.                       010             640 x 400 x 1 plane
  1297.                       100             640 x 480 x 4 planes
  1298.                       110             1280 x 960 x 1 plane
  1299.                       111             320 x 480 x 8 planes
  1300.   FF8264   RW   ---- ---- ---- xxxx   Horizontal scroll
  1301.   FF8266   RW   ---- -x-x -xxx ----   Falcon SPSHIFT control
  1302.                       | |  |||______  256-colour mode
  1303.                       | |  ||_______  Internal/external vertical sync
  1304.                       | |  |________  Internal/external horizontal sync
  1305.                       | |___________  True-colour mode
  1306.                       |_____________  2-colour mode
  1307.   FF8280   R0   xxxx xxxx xxxx xxxx   Falcon horizontal hold counter
  1308.   FF8282   RW   xxxx xxxx xxxx xxxx   Falcon HHT synchro
  1309.   FF8284   RW   xxxx xxxx xxxx xxxx   Falcon HBB end of line
  1310.   FF8286   RW   xxxx xxxx xxxx xxxx   Falcon HBE start of line
  1311.   FF8288   RW   xxxx xxxx xxxx xxxx   Falcon HDB left overscan
  1312.   FF828A   RW   xxxx xxxx xxxx xxxx   Falcon HDE right overscan
  1313.   FF828C   RW   xxxx xxxx xxxx xxxx   Falcon HSS synchro
  1314.   FF828E   RW   xxxx xxxx xxxx xxxx   Falcon HFS
  1315.   FF8290   RW   xxxx xxxx xxxx xxxx   Falcon HEE
  1316.   FF82A0   RO   xxxx xxxx xxxx xxxx   Falcon vertical frequency counter
  1317.   FF82A2   RW   xxxx xxxx xxxx xxxx   Falcon VFT synchro
  1318.   FF82A4   RW   xxxx xxxx xxxx xxxx   Falcon VBB end of image
  1319.   FF82A6   RW   xxxx xxxx xxxx xxxx   Falcon VBE start of image
  1320.   FF82A8   RW   xxxx xxxx xxxx xxxx   Falcon VDB top overscan
  1321.   FF82AA   RW   xxxx xxxx xxxx xxxx   Falcon VDE bottom overscan
  1322.   FF82AC   RW   xxxx xxxx xxxx xxxx   Falcon VSS synchro
  1323.   FF82C2   RW   ---- ---- ---- -xxx   Falcon VCO video control
  1324.                                 |||_  Line doubling
  1325.                                 ||__  Interlace mode
  1326.                                 |___  Halve pixel width
  1327.   FF8400   RW   ---- 3210 3210 3210   TT palette colour 0
  1328.                       |    |    | |_  Inverted/normal monochrome
  1329.                       |    |    |___  Blue
  1330.                       |    |________  Green
  1331.                       |_____________  Red
  1332.   to
  1333.   FF85FE   RW   ---- 3210 3210 3210   TT palette colour 255
  1334.  
  1335.   Table M26: ACSI DMA and FDC Registers
  1336.   FF8600        ---- ---- ---- ----   As Table M7
  1337.  
  1338.   Table M27: TT SCSI DMA Control Registers
  1339.   FF8700   RW   ---- ---- xxxx xxxx   DMA pointer upper
  1340.   FF8702   RW   ---- ---- xxxx xxxx   DMA pointer upper-middle
  1341.   FF8704   RW   ---- ---- xxxx xxxx   DMA pointer lower-middle
  1342.   FF8706   RW   ---- ---- xxxx xxxx   DMA pointer lower
  1343.   FF8708   RW   ---- ---- xxxx xxxx   Byte count upper
  1344.   FF870A   RW   ---- ---- xxxx xxxx   Byte count upper-middle
  1345.   FF870C   RW   ---- ---- xxxx xxxx   Byte count lower-middle
  1346.   FF870E   RW   ---- ---- xxxx xxxx   Byte count lower
  1347.   FF8710   RO   xxxx xxxx xxxx xxxx   Data residue register high
  1348.   FF8712   RO   xxxx xxxx xxxx xxxx   Data residue register low
  1349.   FF8714   RW   ---- ---- xx-- --xx   Control register
  1350.                           ||      0   DMA direction in from port
  1351.                           ||      1   DMA direction out to port
  1352.                           ||     0    DMA enable off
  1353.                           ||     1    DMA enable on
  1354.                           ||________  Byte count zero read-only
  1355.                           |_________  Bus error during DMA read-only
  1356.  
  1357.   Table M28: TT SCSI Controller Registers
  1358.   FF8780   RW   ---- ---- xxxx xxxx   Data
  1359.   FF8782   RW   ---- ---- xxxx xxxx   Initiator command
  1360.   FF8784   RW   ---- ---- xxxx xxxx   Mode
  1361.   FF8786   RW   ---- ---- xxxx xxxx   Target command
  1362.   FF8788   RW   ---- ---- xxxx xxxx   ID select/SCSI control
  1363.   FF878A   RW   ---- ---- xxxx xxxx   DMA start/DMA status
  1364.   FF878C   RW   ---- ---- xxxx xxxx   DMA target receive/input data
  1365.   FF878E   RW   ---- ---- xxxx xxxx   DMA initiator receive/reset
  1366.  
  1367.   Table M29: Programmable Sound Chip Registers
  1368.   FF8800   RO   xxxx xxxx ---- ----   PSG read data
  1369.                 |||| ||||             I/O port B
  1370.                 ||||_||||___________  Parallel interface data
  1371.   FF8800   WO   ---- xxxx ---- ----   PSG register select
  1372.                      ||||___________  Register number
  1373.                      0000             Channel A fine tune
  1374.                      0001             Channel A coarse tune
  1375.                      0010             Channel B fine tune
  1376.                      0011             Channel B coarse tune
  1377.                      0100             Channel C fine tune
  1378.                      0101             Channel C coarse tune
  1379.                      0110             Noise generator control
  1380.                      0111             Mixer control - I/O enable
  1381.                      1000             Channel A amplitude
  1382.                      1001             Channel B amplitude
  1383.                      1010             Channel C amplitude
  1384.                      1011             Envelope period fine tune
  1385.                      1100             Envelope period coarse tune
  1386.                      1101             I/O port A (output only)
  1387.                      1111             I/O port B
  1388.   FF8802   WO   xxxx xxxx ---- ----   PSG write data
  1389.                 |||| ||||             I/O port A
  1390.                 |||| ||||___________  Floppy side 0/side 1 select
  1391.                 |||| |||____________  Floppy drive 0 select
  1392.                 |||| ||_____________  Falcon printer port SELECT
  1393.                 |||| |______________  MFP-ST request to send
  1394.                 ||||________________  MFP-ST data terminal ready
  1395.                 |||_________________  Printer port STROBE
  1396.                 ||__________________  Speaker disable = 0
  1397.                 |___________________  LAN select = 0
  1398.                 |||| ||||             I/O port B
  1399.                 ||||_||||___________  Parallel interface data
  1400.  
  1401.   Table M30: DMA Sound Control Registers
  1402.   FF8900   RW   ---- xxxx x-xx --xx   Sound DMA control
  1403.                      |||| | ||   00   Sound DMA disabled
  1404.                      |||| | ||   01   Sound DMA enabled
  1405.                      |||| | ||   11   Enabled, repeat frame forever
  1406.                      |||| | ||        Falcon only:
  1407.                      |||| | ||______  Record enable
  1408.                      |||| | |_______  Repeat record
  1409.                      |||| 0           Playback register select
  1410.                      |||| 1           Record register select
  1411.                      ||||___________  MFP-16 interrupt at playback end
  1412.                      |||____________  MFP-16 interrupt at record end
  1413.                      ||_____________  Timer A interrupt at playback end
  1414.                      |______________  Timer A interrupt at record end
  1415.   FF8902   RW   ---- ---- xxxx xxxx   Frame base address high
  1416.   FF8904   RW   ---- ---- xxxx xxxx   Frame base address middle
  1417.   FF8906   RW   ---- ---- xxxx xxxx   Frame base address low
  1418.   FF8908   RW   ---- ---- xxxx xxxx   Frame address counter high
  1419.   FF890A   RW   ---- ---- xxxx xxxx   Frame address counter middle
  1420.   FF890C   RW   ---- ---- xxxx xxxx   Frame address counter low
  1421.   FF890E   RW   ---- ---- xxxx xxxx   Frame end address high
  1422.   FF8910   RW   ---- ---- xxxx xxxx   Frame end address middle
  1423.   FF8912   RW   ---- ---- xxxx xxxx   Frame end address low
  1424.   FF8920   RW   --xx --xx xx-- --xx   Sound mode control
  1425.                                  00   Falcon deactivate DMA transfer
  1426.                                  00   TT 6,258 Hz sample rate
  1427.                                  01   12,517 Hz sample rate
  1428.                                  10   25,033 Hz sample rate
  1429.                                  11   50,066 Hz sample rate
  1430.                           00          8-bit stereo mode
  1431.                           01          Falcon 16-bit stereo mode
  1432.                           10          8-bit mono mode
  1433.                        00             Falcon play 1 track
  1434.                        01             Falcon play 2 tracks
  1435.                        10             Falcon play 3 tracks
  1436.                        11             Falcon play 4 tracks
  1437.                   00                  Falcon monitor track 0
  1438.                   01                  Falcon monitor track 1
  1439.                   10                  Falcon monitor track 2
  1440.                   11                  Falcon monitor track 3
  1441.  
  1442.   Table M31: TT MICROWIRE Registers
  1443.   FF8922   RW   xxxx xxxx xxxx xxxx   As Table M10
  1444.  
  1445.   Table M32: Falcon DSP/DMA Controller Registers
  1446.   FF8930   RW   --x- -xxx xxxx xxxx   DMA crossbar output select
  1447.                         |    | |  |   DMA output:
  1448.                         |    | |  |_  Handshake enable = 0
  1449.                         |    | |00    25.175 MHz clock
  1450.                         |    | |01    External clock
  1451.                         |    | |10    32 MHz clock
  1452.                         |    | |____  DSP/DMA handshaking DMA in = 0
  1453.                         |    |        DSP output:
  1454.                         |    |______  Handshake enable = 0
  1455.                         |  00         25.175 MHz clock
  1456.                         |  01         External clock
  1457.                         |  10         32 MHz clock
  1458.                         | 0           DSP tristate
  1459.                         | 1           DSP connected to matrix
  1460.                         |             External input:
  1461.                         |___________  Handshake enable = 0
  1462.                       00              25.175 MHz clock
  1463.                       01              External clock
  1464.                       10              32 MHz clock
  1465.                                       ADC input:
  1466.                   0                   Internal 25,175 MHz clock
  1467.                   1                   External clock
  1468.   FF8932   RW   -xx- -xxx xxxx xxxx   DMA crossbar input select
  1469.                         |    | |  |   DMA input:
  1470.                         |    | |  |_  Handshake enable = 0
  1471.                         |    | |00    DMA output
  1472.                         |    | |01    DSP output
  1473.                         |    | |10    External input
  1474.                         |    | |11    ADC input
  1475.                         |    | |____  DSP/DMA handshaking DSP out = 0
  1476.                         |    |        DSP input:
  1477.                         |    |______  Handshake enable = 0
  1478.                         |  00         DMA output
  1479.                         |  01         DSP output
  1480.                         |  10         External input
  1481.                         |  11         ADC input
  1482.                         | 0           DSP tristate
  1483.                         | 1           DSP connected to matrix
  1484.                         |             External output:
  1485.                         |___________  Handshake enable = 0
  1486.                       00              DMA output
  1487.                       01              DSP output
  1488.                       10              External input
  1489.                       11              ADC input
  1490.                                       DAC output:
  1491.                  00                   DMA output
  1492.                  01                   DSP output
  1493.                  10                   External input
  1494.                  11                   ADC input
  1495.   FF8934   RW   ---- xxxx             Frequency divider external sync
  1496.                      ||||___________  0-15 0 = STE compatible mode
  1497.   FF8935   RW             ---- xxxx   Frequency divider internal sync
  1498.                                0000   STE compatible mode
  1499.                                0001   CLK50K 49,170 Hz
  1500.                                0010   CLK33K 32,780 Hz
  1501.                                0011   CLK25K 24,585 Hz
  1502.                                0100   CLK20K 19,668 Hz
  1503.                                0101   CLK16K 16,390 Hz
  1504.                                0110   CLK14K 14,049 Hz (CODEC invalid)
  1505.                                0111   CLK12K 12,292 Hz
  1506.                                1000   CLK11K 10,927 Hz (CODEC invalid)
  1507.                                1001   CLK10K 9,834 Hz
  1508.                                1010   CLK09K 8,940 Hz (CODEC invalid)
  1509.                                1011   CLK08K 8,195 Hz
  1510.                                1100   CLK07K 7,565 Hz (CODEC invalid)
  1511.                                1101   CLK07K 7,024 Hz (CODEC invalid)
  1512.                                1110   CLK06K 6,556 Hz (CODEC invalid)
  1513.                                1111   CLK06K 6,146 Hz (CODEC invalid)
  1514.   FF8936   RW   ---- --xx             Record tracks select
  1515.                        00             Record 1 track
  1516.                        01             Record 2 tracks
  1517.                        10             Record 3 tracks
  1518.                        11             Record 4 tracks
  1519.   FF8937   RW             ---- --xx   CODEC input source
  1520.                                  ||_  ADC/DAC input = 1
  1521.                                  |__  Multiplexer input = 1
  1522.   FF8938   RW   ---- --xx             CODEC ADC input
  1523.                         0             Right microphone channel
  1524.                         1             Right PSG channel
  1525.                        0              Left microphone channel
  1526.                        1              Left PSG channel
  1527.   FF8939   RW             xxxx xxxx   Channel input amplifier gain
  1528.                           |||| ||||   (steps of +1.5 dB)
  1529.                           |||| ||||_  Right channel 0-15
  1530.                           ||||______  Left channel 0-15
  1531.   FF893A   RW   ---- xxxx xxxx ----   Channel output amp attenuation
  1532.                      |||| ||||        (steps of -1.5 dB)
  1533.                      |||| ||||______  Right channel 0-15
  1534.                      ||||___________  Left channel 0-15
  1535.   FF893C   RW   ---- --xx ---- ----   CODEC status
  1536.                        ||___________  Right channel overflow
  1537.                        |____________  Left channel overflow
  1538.   FF8940   RW   ---- ---- ---- -xxx   GPIO data direction
  1539.                                   0   Read data from GP0
  1540.                                   1   Write data to GP0
  1541.                                  0    Read data from GP1
  1542.                                  1    Write data to GP1
  1543.                                 0     Read data from GP2
  1544.                                 1     Write data to GP2
  1545.   FF8942   RW   ---- ---- ---- -xxx   GPIO data pins
  1546.                                 |||_  GP0
  1547.                                 ||__  GP1
  1548.                                 |___  GP2
  1549.  
  1550.   Table M33: TT Real-Time Clock and NVRAM Registers
  1551.   FF8960   RW   ---- ---- xxxx xxxx   As Table M11
  1552.  
  1553.   Table M34: Falcon BLiTTER Registers
  1554.   FF8A00   RW   xxxx xxxx xxxx xxxx   As Table M12
  1555.  
  1556.   Table M35: TT SCC DMA Control Registers
  1557.   FF8C00   RW   ---- ---- xxxx xxxx   DMA pointer upper
  1558.   FF8C02   RW   ---- ---- xxxx xxxx   DMA pointer upper-middle
  1559.   FF8C04   RW   ---- ---- xxxx xxxx   DMA pointer lower-middle
  1560.   FF8C06   RW   ---- ---- xxxx xxxx   DMA pointer lower
  1561.   FF8C08   RW   ---- ---- xxxx xxxx   Byte count upper
  1562.   FF8C0A   RW   ---- ---- xxxx xxxx   Byte count upper-middle
  1563.   FF8C0C   RW   ---- ---- xxxx xxxx   Byte count lower-middle
  1564.   FF8C0E   RW   ---- ---- xxxx xxxx   Byte count lower
  1565.   FF8C10   RO   xxxx xxxx xxxx xxxx   Data residue register high
  1566.   FF8C12   RO   xxxx xxxx xxxx xxxx   Data residue register low
  1567.   FF8C14   RW   ---- ---- xx-- --xx   Control register
  1568.                           ||      0   DMA direction in from port
  1569.                           ||      1   DMA direction out to port
  1570.                           ||     0    DMA enable off
  1571.                           ||     1    DMA enable on
  1572.                           ||________  Byte count zero read-only
  1573.                           |_________  Bus error during DMA read-only
  1574.  
  1575.   Table M36: SCC Ports
  1576.   FF8C80   RW   ---- ---- xxxx xxxx   As Table 12
  1577.  
  1578.   Table M37: TT VME System Control Unit (SCU) Registers
  1579.   FF8E00   RW   ---- ---- xxxx xxx-   As Table 14
  1580.  
  1581.   Table M38: TT Configuration Switches
  1582.   FF9200   RW   xxxx xxxx ---- ----
  1583.  
  1584.   Table M39: Falcon Game Controllers Registers
  1585.   FF9200   RW   ---- xxxx ---- ----   As Table M17
  1586.  
  1587.   Table M40: Falcon VIDEL Palette Registers
  1588.   FF9800   RW   5432 10-- 5432 10--   Palette colour 0
  1589.                 |||| ||   ||||_||___  Green 0-63
  1590.                 ||||_||_____________  Red 0-63
  1591.   FF9802   RW   ---- ---- 5432 10--   Blue 0-63
  1592.   to
  1593.   FF9BFC   RW   5432 10-- 5432 10--   Palette colour 255
  1594.                 |||| ||   ||||_||___  Green 0-63
  1595.                 ||||_||_____________  Red 0-63
  1596.   FF9BFE   RW   ---- ---- 5432 10--   Blue 0-63
  1597.  
  1598.   Table M41: Falcon DSP Host Interface Registers
  1599.   FFA200   RW   xxxx x-xx             Host interrupt control
  1600.                 |  | |                Host mode data transfers
  1601.                 |  | |                Interrupt mode:
  1602.                 |  | | 00             No interrupts (polling)
  1603.                 |  | | 01             RXDF request (interrupt)
  1604.                 |  | | 10             TXDE request (interrupt)
  1605.                 |  | | 11             RXDF and TXDE request (interrupts)
  1606.                 |  | |                DMA mode:
  1607.                 |  | | 00             No DMA
  1608.                 |  | | 01             DSP to host request (RX)
  1609.                 |  | | 10             Host to DSP request (TX)
  1610.                 |  | | 11             Undefined (illegal)
  1611.                 |  | |______________  Host flag 0
  1612.                 |  |________________  Host flag 1
  1613.                 |00                   Interrupt mode (DMA off)
  1614.                 |01                   24-bit DMA mode
  1615.                 |10                   16-bit DMA mode
  1616.                 |11                   8-bit DMA mode
  1617.                 |___________________  INIT bit
  1618.   FFA201   RW             x--x xxxx   Command vector
  1619.                           |  |_||||_  Host vector 0-31
  1620.                           |_________  Handshake
  1621.   FFA202   RW   xx-x xxxx             Host interrupt status register ISR
  1622.                 || | ||||___________  ISR receive data full RXDF
  1623.                 || | |||____________  ISR transmit data empty TXDE
  1624.                 || | ||_____________  ISR transmitter ready TRDY
  1625.                 || | |______________  Host flag 2
  1626.                 || |________________  Host flag 3
  1627.                 ||__________________  ISR DMA status
  1628.                 |___________________  ISR host request
  1629.   FFA203   RW             xxxx xxxx   Interrupt vector register
  1630.   FFA204   RW   xxxx xxxx             DSP word high
  1631.   FFA206   RW   xxxx xxxx xxxx xxxx   DSP word middle and low
  1632.  
  1633.   Table M42: TT MFP-ST 68901 Registers
  1634.   FFFA00   RW   ---- ---- xxxx xxxx   As Table M18
  1635.                                       MFP is present on a Falcon but not used
  1636.                                       for serial communications
  1637.  
  1638.   Table M43: TT MFP-2 68901 Registers
  1639.   FFFA80   RW   ---- ---- xxxx xxxx   General purpose I/O GPIP
  1640.   FFFA82   RW   ---- ---- xxxx -xxx   Active edge AER
  1641.                           ||||  |||_  Centronics busy
  1642.                           ||||  ||__  RS-232 carrier detect
  1643.                           ||||  |___  RS-232 clear to send
  1644.                           ||||______  Keyboard/MIDI interrupt
  1645.                           |||_______  FDC/HDC interrupt
  1646.                           ||________  RS-232 ring indicator
  1647.                           |_________  Monochrome monitor detect
  1648.   FFFA84   RW   ---- ---- xxxx xxxx   Data direction DDR
  1649.   FFFA86   RW   ---- ---- xxxx xxxx   Interrupt enable A IERA
  1650.                           |||| ||||_  Timer B (HBlank counter)
  1651.                           |||| |||__  Sender error
  1652.                           |||| ||___  Sender buffer empty
  1653.                           |||| |____  Receive buffer empty
  1654.                           ||||______  Receive buffer full
  1655.                           |||_______  Timer A (DMA sound counter)
  1656.                           ||________  RS-232 ring indicator
  1657.                           |_________  Monochrome monitor detect
  1658.   FFFA88   RW   ---- ---- xxxx xxxx   Interrupt enable B IERB
  1659.                           |||| ||||_  Centronics busy
  1660.                           |||| |||__  RS-232 carrier detect
  1661.                           |||| ||___  RS-232 clear to send
  1662.                           |||| |____  BitBLT complete
  1663.                           ||||______  Timer D (baud rate generator)
  1664.                           |||_______  Timer C (200 Hz system clock)
  1665.                           ||________  Keyboard/MIDI interrupt
  1666.                           |_________  FDC/HDC interrupt
  1667.   FFFA8A   RW   ---- ---- xxxx xxxx   Interrupt pending A IPRA
  1668.                                       mapping as for IERA
  1669.   FFFA8C   RW   ---- ---- xxxx xxxx   Interrupt pending B IPRB
  1670.                                       mapping as for IERB
  1671.   FFFA8E   RW   ---- ---- xxxx xxxx   Interrupt in-service A ISRA
  1672.                                       mapping as for IERA
  1673.   FFFA90   RW   ---- ---- xxxx xxxx   Interrupt in-service B ISRB
  1674.                                       mapping as for IERB
  1675.   FFFA92   RW   ---- ---- xxxx xxxx   Interrupt mask A IMRA
  1676.                                       mapping as for IERA
  1677.   FFFA94   RW   ---- ---- xxxx xxxx   Interrupt mask B IMRB
  1678.                                       mapping as for IERB
  1679.   FFFA96   RW   ---- ---- ---- x---   Vector VR
  1680.                                0      Automatic end-of-interrupt
  1681.                                1      Software end-of-interrupt
  1682.   FFFA98   RW   ---- ---- ---- xxxx   Timer A control TACR
  1683.                                0000   Timer stop
  1684.                                0001   Delay mode, divide by 4
  1685.                                0010   Delay mode, divide by 10
  1686.                                0011   Delay mode, divide by 16
  1687.                                0100   Delay mode, divide by 50
  1688.                                0101   Delay mode, divide by 64
  1689.                                0110   Delay mode, divide by 100
  1690.                                0111   Delay mode, divide by 200
  1691.                                1000   Event count mode
  1692.                                1001   Pulse extension mode
  1693.                                1001   Pulse extension mode, divide by 4
  1694.                                1010   Pulse extension mode, divide by 10
  1695.                                1011   Pulse extension mode, divide by 16
  1696.                                1100   Pulse extension mode, divide by 50
  1697.                                1101   Pulse extension mode, divide by 64
  1698.                                1110   Pulse extension mode, divide by 100
  1699.                                1111   Pulse extension mode, divide by 200
  1700.   FFFA9A   RW   ---- ---- ---- xxxx   Timer B control TBCR
  1701.                                       mapping as for TACR
  1702.   FFFA9C   RW   ---- ---- -xxx -xxx   Timers C and D control TCDCR
  1703.                            000        Timer C stop
  1704.                            001        Timer C delay mode, divide by 4
  1705.                            010        Timer C delay mode, divide by 10
  1706.                            011        Timer C delay mode, divide by 16
  1707.                            100        Timer C delay mode, divide by 50
  1708.                            101        Timer C delay mode, divide by 64
  1709.                            110        Timer C delay mode, divide by 100
  1710.                            111        Timer C delay mode, divide by 200
  1711.                                 000   Timer D stop
  1712.                                 001   Timer D delay mode, divide by 4
  1713.                                 010   Timer D delay mode, divide by 10
  1714.                                 011   Timer D delay mode, divide by 16
  1715.                                 100   Timer D delay mode, divide by 50
  1716.                                 101   Timer D delay mode, divide by 64
  1717.                                 110   Timer D delay mode, divide by 100
  1718.                                 111   Timer D delay mode, divide by 200
  1719.   FFFA9E   RW   ---- ---- xxxx xxxx   Timer A data TADR
  1720.   FFFAA0   RW   ---- ---- xxxx xxxx   Timer B data TBDR
  1721.   FFFAA2   RW   ---- ---- xxxx xxxx   Timer C data TCDR
  1722.   FFFAA4   RW   ---- ---- xxxx xxxx   Timer D data TDDR
  1723.   FFFAA6   RW   ---- ---- xxxx xxxx   Sync character SCR
  1724.   FFFAA8   RW   ---- ---- xxxx xxx-   USART control UCR
  1725.                           |||| |||__  Parity
  1726.                           |||| ||___  Even/odd parity
  1727.                           |||0 0      Synchronous
  1728.                           |||0 1      1 stop, 1 start bits
  1729.                           |||1 0      1 stop, 1.5 start bits
  1730.                           |||1 1      1 stop, 2 start bits
  1731.                           |00         8 bits
  1732.                           |01         7 bits
  1733.                           |10         6 bits
  1734.                           |11         5 bits
  1735.                           |_________  Clock divide by 16
  1736.   FFFAAA   RW   ---- ---- xxxx xxxx   Receiver status RSR
  1737.                           |||| ||||_  Receiver enable
  1738.                           |||| |||__  Synchronous strip enable
  1739.                           |||| ||___  Match/character in progress
  1740.                           |||| |____  Search/break detect
  1741.                           ||||______  Frame error
  1742.                           |||_______  Parity error
  1743.                           ||________  Overrun error
  1744.                           |_________  Buffer full
  1745.   FFFAAC   RW   ---- ---- xxxx xxxx   Transmitter status TSR
  1746.                           |||| ||||_  Transmitter enable
  1747.                           |||| |||__  Low bit
  1748.                           |||| ||___  High bit
  1749.                           |||| |____  Break
  1750.                           ||||______  End of transmission
  1751.                           |||_______  Auto-turnaround
  1752.                           ||________  Underrun error
  1753.                           |_________  Buffer empty
  1754.   FFFAAE   RW   ---- ---- xxxx xxxx   USART data UDR
  1755.  
  1756.   Table M44: ACIA Registers
  1757.   FFFC00   RW   xxxx xxxx ---- ----   As Table M20
  1758.  
  1759.  
  1760. Memory protection
  1761. The procedures used to prevent the corruption of data in one memory block from 
  1762. the processing of data in another memory block. In multitasking situations, 
  1763. each task or program occupies and uses memory that needs to be isolated from 
  1764. other memory blocks so that one program doesn't overwrite another's data or 
  1765. when one program crashes, that corruption doesn't affect the other programs. 
  1766. On-board memory protection is a feature of the MC68030 thus making MultiTOS 
  1767. safer to run and more successful on a TT than on the ST range.
  1768.  
  1769.  
  1770. Memory Usage Parameter Block - MUPB
  1771. The Operating System Header offset $14 points to the MUPB which has the 
  1772. structure:
  1773.  
  1774.   typedef struct
  1775.   {
  1776.     long gem_magic;           /* Value of $87654321 if GEM present */
  1777.     long gem_end;             /* End address of OS RAM usage       */
  1778.     long gem_entry;           /* Start address of GEM              */
  1779.   } MUPB;
  1780.  
  1781. GEM is only executed at start-up if gem_magic is $87654321.
  1782.  
  1783.  
  1784. Menu
  1785. In an interactive system, a list of items (sometimes hierarchical) with 
  1786. identifiers by which they may be selected by the keyboard or mouse.
  1787.  
  1788.  
  1789. Menu bar
  1790. A GEM application's primary menu consisting of a horizontal list on the screen 
  1791. top row from which vertical lists of items can be pulled for selection. The 
  1792. first item on the left should be the program's name with access to 
  1793. accessories. In MultiTOS this also provides access to the other active 
  1794. programs. The second menu should always be the "File" menu and the third 
  1795. "Edit", followed by an "Options" menu if applicable and any other application-
  1796. specific menus. The last menu item should be "Help".
  1797.  
  1798.  
  1799. Merge
  1800. To combine two sets of data to form a single set, sometimes by re-sorting the 
  1801. order of the items.
  1802.  
  1803.  
  1804. Message
  1805. In communications, a unit of data with addressing and control characters 
  1806. transmitted between computers. Also, a report from the computer to a user.
  1807.  
  1808.  
  1809. Message channel
  1810. The forward channel.
  1811.  
  1812.  
  1813. Metafile
  1814. A standard GEM vector graphics file format with a .GEM extender as produced by 
  1815. programs such as Easydraw. See GEM metafile.
  1816.  
  1817.  
  1818. MetaDOS
  1819. The Atari CD-ROM driver program which Atari released as freeware.
  1820.  
  1821.  
  1822. Metering pulses
  1823. Counted pulses sent at intervals during a telephone call to determine the 
  1824. call's length and charge.
  1825.  
  1826.  
  1827. MFLOPS
  1828. Mega FLoating point OPerations per Second. A measurement of the speed of 
  1829. operation of a FPU in millions of operations per second.
  1830.  
  1831.  
  1832. MFM
  1833. Modified Frequency Modulation. An outdated method of encoding data onto a 
  1834. magnetizable surface, such as floppies and some hard disks, that is similar to 
  1835. FM except that fewer flux transitions are required to encode a given amount of 
  1836. data. It provides around twice the data density of the FM method (single 
  1837. density) and is often referred to as double density recording. This method was 
  1838. used on the original Shugart ST506 hard disks but the RLL method is capable of 
  1839. even greater data density and is more common.
  1840.  
  1841.  
  1842. MFP 68901
  1843. Multi-Function Peripheral 68901. A Motorola 48-pin DIL or 52-pin PLCC packaged 
  1844. chip found in the whole Atari range providing an 8-bit parallel port with each 
  1845. pin independently programmable, a serial interface, four universal system 
  1846. timers and sixteen interrupt sources and includes monochrome monitor detect 
  1847. and parallel printer port busy signals handling. It operates at a speed of 4 
  1848. MHz on the ST and has its own 2.4567 MHz crystal for the serial port. One of 
  1849. its main roles is to control RS-232C I/O on the ST. On the Mega STE and TT 
  1850. there are two MFP controllers, one being compatible with that on the ST and 
  1851. designated MFP-ST. The second (MFP-2) provides another low-speed serial port 
  1852. and more I/O and interrupt pins. Transfer rates of up to 19.2 Kbps can be 
  1853. provided on these ports. Both are 9-pin DB connectors compatible with IBM PC 
  1854. AT. See RS-232C, RS-232 port, Exception vectors.
  1855.  
  1856.  
  1857. MHS
  1858. Message Handling Service. The CCITT name for e-mail.
  1859.  
  1860.  
  1861. MICR
  1862. Magnetic Ink Character Recognition. A technique of reading characters printed 
  1863. in magnetic ink and generating their bit-patterns for computer input. Commonly 
  1864. used for sorting bank cheques.
  1865.  
  1866.  
  1867. Micro
  1868. A microprocessor or usually a microcomputer.
  1869.  
  1870.  
  1871. Micro - µ
  1872. Prefix meaning one millionth (10^-6). Also meaning 'very small'.
  1873.  
  1874.  
  1875. Microcode
  1876. The micro-instructions held in the ROM of a CPU and output to logic gates as a 
  1877. step in executing an instruction. It is this set of microcode that determines 
  1878. what a CPU can do.
  1879.  
  1880.  
  1881. Microcomputer
  1882. Small personal computer with a microprocessor and memory. Typically, a desktop 
  1883. unit with floppy and small hard disk storage and a monitor. The microprocessor 
  1884. may be an 8, 16 or 32-bit device typically from the Intel 80x86 series (or 
  1885. compatible devices) or the Motorola 680x0 series. RAM may be anything from 1 K 
  1886. to 32 Mb or more, although 1 Mb to 4 Mb is usual and the most common operating 
  1887. system is MS-DOS.
  1888.  
  1889.  
  1890. Microfiche
  1891. Photographic film of standard size with a number of frames of microfilm 
  1892. arranged in a grid pattern.
  1893.  
  1894.  
  1895. Microfilm
  1896. High resolution photographic film suitable for recording images with large 
  1897. reductions, typically 42 times. It is mainly used for archival purposes.
  1898.  
  1899.  
  1900. Microfloppy
  1901. A term originally used to describe 3.5 inch floppy disks.
  1902.  
  1903.  
  1904. Microprocessor - MPU
  1905. A single integrated circuit that performs instruction execution and monitor 
  1906. and control functions for an intelligent device such as a computer or modem. 
  1907. It is the CPU of a microcomputer. It typically consists of a ROM to hold the 
  1908. microcode, an instruction register to hold the currently executing 
  1909. instruction, a program counter register to hold the address of the next 
  1910. instruction, an arithmetic and logic unit (ALU), registers for holding 
  1911. addresses, input and output data, small amount of RAM, integral clocks etc.
  1912.  
  1913.  
  1914. MICROWIRE
  1915. The MICROWIRE bus interface was introduced with the STE and provided the 
  1916. interface to the National LMC1992 Volume/Tone Control chip and was intended to 
  1917. be used to interface with other devices. The MICROWIRE bus is a low-level 
  1918. three-wire serial connection and protocol designed to allow multiple devices 
  1919. to be individually addressed by the controller. Two 16-bit read/write 
  1920. registers are provided on the STE, one for the data and the other a mask. Any 
  1921. one-bit in the mask register indicates that the corresponding bit in the data 
  1922. register is valid. Data transmission starts as soon as the data register has 
  1923. been written to, so that the mask register has to be written to first. The 
  1924. devices on the MICROWIRE bus are addressed by a 2-bit address field with the 
  1925. Volume/Tone controller being device %10 binary. The MICROWIRE interface was 
  1926. dropped on the Falcon030.
  1927.  
  1928.  
  1929. MIDI
  1930. Musical Instrument Digital Interface. A high-speed multichannel, serial, data 
  1931. link with up to sixteen devices usually musical instruments or controllers. 
  1932. The ST-Falcon range have MIDI IN and MIDI OUT ports and the operating system 
  1933. supports them with appropriate functions. From the early days of the ST's 
  1934. existence these ports and the introduction of sequencing and score writing 
  1935. software made it a popular choice with musicians and recording studios, and 
  1936. has established a strong dominant niche in this area for the ST.
  1937.  
  1938. The MIDI standard is based on the current loop principle which is not so 
  1939. susceptible to noise, especially with cheap unscreened cable. The transfer 
  1940. rate is 31,250 bps and data is sent as a serial stream of 8-bit words preceded 
  1941. by a 1-bit start bit and a 1-bit stop bit. All MIDI devices are connected 
  1942. together in a chain, the output MIDI socket of one connected to the input 
  1943. socket of the next. This allows all the devices to communicate with each other 
  1944. and the controlling computer, such as the ST. As sixteen devices or channels 
  1945. can be connected to this bus, each data packet is preceded with the channel 
  1946. number of the device it is meant for. Each MIDI IN and OUT port on a ST is 
  1947. coupled to an opto-isolator which prevents any current directly entering the 
  1948. computer from the port. It also converts the current loop signals into the 
  1949. normal TTL levels for the ST. The current loop travels out on pin 4 of the 
  1950. MIDI OUT connector and returns at pin 5 when a device is connected. MIDI IN is 
  1951. reversed where data is received on pin 4 and the loop return is on pin 5. No 
  1952. other pins are connected on MIDI IN but on the MIDI OUT connector pins 1 and 3 
  1953. implement the MIDI THRU function.
  1954.  
  1955.  
  1956. Milli - m
  1957. Prefix meaning one thousandth (10^-3).
  1958.  
  1959.  
  1960. MIME
  1961. Multi-purpose Internet Mail Extensions. A relatively new method in 
  1962. transferring binary files by e-mail, usually over the Internet. MIME compliant 
  1963. programs can convert any attached binary file to its original state, whether 
  1964. sound, an image or another program. See UUENCODE.
  1965.  
  1966.  
  1967. Mini
  1968. Not as small as micro. Also a minicomputer.
  1969.  
  1970.  
  1971. Minicomputer
  1972. A computer between a mainframe and microcomputer in size, capability and cost, 
  1973. the latter being the main differentiating feature. The difference in the raw 
  1974. processing power between minis and micros is increasingly becoming negligible 
  1975. although the former do still have a greater networking and multitasking 
  1976. capability.
  1977.  
  1978.  
  1979. MINIWIN
  1980. MINIWIN.APP is a small program released with MultiTOS that enables .TOS and 
  1981. .TTP programs to be run within a GEM window environment so that they do not 
  1982. take over the whole screen, allowing access to other programs and processes. 
  1983. The window becomes a virtual screen and can be moved and re-sized which will 
  1984. hide some of the program's output. Different fonts and sizes can be installed 
  1985. and the Atari Clipboard is available for cutting and pasting output into other 
  1986. programs. MINIWIN is a simple program and lacks some of the versatility and 
  1987. intelligence of MW. See MW, MultiTOS.
  1988.  
  1989.  
  1990. MiNT
  1991. MiNT Is Not TOS. A freeware operating system written by Canadian Eric Smith 
  1992. for the Atari ST providing some multitasking capabilities to TOS. It allows 
  1993. one GEM program and several TOS programs to multitask on a MC68000 processor 
  1994. and uses many methods, techniques and utilities taken from the UNIX operating 
  1995. system. It also adds interprocess communications features, very simple multi-
  1996. user capabilities and a flexible file system interface that permits loadable 
  1997. file systems and device drivers. In 1991 Atari obtained a licence from Eric 
  1998. Smith to modify it adding memory protection and included the MiNT system into 
  1999. the kernel of MultiTOS so that MiNT now stands for 'MiNT Is Now TOS'. See 
  2000. MultiTOS for a fuller discussion.
  2001.  
  2002.  
  2003. MINT.CNF
  2004. An ASCII text configuration file for MultiTOS loaded at boot-up and used to 
  2005. set some MiNT variables and to execute commands.
  2006.  
  2007. The variable names must be in upper case and no spaces are allowed between 
  2008. them, the '=' character and the following values.
  2009.  
  2010.   Table M45: MiNT Variables in the MINT.CNF File
  2011.  
  2012.   Variable         Meaning
  2013.   INIT=<path>      Execute the AES/GEM file
  2014.                    e.g. INIT=C:\MULTITOS\GEM.SYS
  2015.   GEM=<path>       Execute the AES/GEM file via exec_os vector
  2016.                    e.g. GEM=C:\MULTITOS\GEM.PRG
  2017.   CON=<path>       Redirect console input and output to named file
  2018.                    e.g. CON=U:\DEV\SERIAL1
  2019.   PRN=<path>       Redirect printer output to named file
  2020.                    e.g. PRN=I:\OUTPUT.LST
  2021.   DEBUG_LEVEL=<n>  Set MiNT debugging level (0-4, 0 = default)
  2022.                    e.g. DEBUG_LEVEL=1
  2023.   DEBUG_DEVNO=<n>  Set BIOS device number to receive debug messages
  2024.                    e.g. DEBUG_DEVNO=1
  2025.   SLICES=<n>       Set number of 20 ms times slices given to process
  2026.                    (default is 2) e.g. SLICES=3
  2027.   MAXMEM=<n>       Set maximum memory a process can grab in kilobytes
  2028.                    (default is unlimited) e.g. MAXMEM=2048
  2029.   BIOSBUF=<Y/N>    Enable/disable BIOS optimizations
  2030.                    e.g. BIOSBUF=Y
  2031.  
  2032. The command names must be in lower case with a single space between the 
  2033. command and the following argument.
  2034.  
  2035.   Table M46: Commands recognized in the MINT.CNF File
  2036.  
  2037.   Command          Meaning
  2038.   echo             Display a string on the screen
  2039.                    e.g. echo MiNT is configured
  2040.   cd               Change the GEMDOS default directory
  2041.                    e.g. cd c:\multitos
  2042.   ren              Rename a file
  2043.                    e.g. ren c:\cpx\env.cpx c:\cpx\env.cpz
  2044.   exec             Execute a program
  2045.                    e.g. exec c:\utils\uis_iii.prg
  2046.   setenv           set up an environment variable
  2047.                    e.g. setenv clipbrd=c:\clipbrd
  2048.   alias            Create an alias drive
  2049.                    e.g. alias z: u:\c\mint
  2050.   sln              Create a symbolic link on drive U:
  2051.                    e.g. sln c:\mint\bin u:\bin
  2052.  
  2053. The setenv can be set either in the MINT.CNF or the GEM.CNF file. They are 
  2054. usually best set in the latter. See MultiTOS, MiNT, GEM.CNF
  2055.  
  2056.  
  2057. MiNT errors
  2058. These error codes are the same as those for the GEMDOS errors.
  2059.  
  2060.  
  2061. Mintshel
  2062. Mintshel is a simple CLI shell that can be used as MultiTOS's and MiNT's 
  2063. initial shell (i.e. on the INIT= line of MINT.CNF in earlier versions of 
  2064. MultiTOS), and/or as the shell that runs in MW windows (specified on the SHELL 
  2065. line in MW.CNF). This shell is useful mainly because it knows all about MiNT, 
  2066. and supplies redirection, job control (backgrounding) and true pipes.
  2067.  
  2068.  
  2069. MiNT signals
  2070. Signals are messages sent to a process that are interpreted and acted upon 
  2071. accordingly. They normally stop the execution of that program.
  2072.  
  2073.   Table M47: MiNT Signals
  2074.  
  2075.   Name        No   Meaning
  2076.   SIGNULL      0   Dead signal, no effect
  2077.   SIGHUP       1   Hang-up signal, terminal no longer valid
  2078.   SIGINT       2   Interrupted by [Cntl-C]
  2079.   SIGQUIT      3   Quit signal [Cntl-\]
  2080.   SIGILL       4   Illegal instruction exception
  2081.   SIGTRAP      5   Single-step trace mode trap
  2082.   SIGABRT      6   Abort signal, lethal internal error
  2083.   SIGPRIV      7   Privilege violation exception
  2084.   SIGFPE       8   Divide by zero exception
  2085.   SIGKILL      9   Kill process, cannot be ignored
  2086.   SIGBUS      10   Bus error exception
  2087.   SIGSEG      11   Address error exception
  2088.   SIGSYS      12   Bad or out-of-range argument to a system call
  2089.   SIGPIPE     13   Broken pipe, has no readers
  2090.   SIGALRM     14   Alarm clock triggered
  2091.   SIGTERM     15   Software termination request
  2092.   SIGURG      16   Urgent condition on I/O channel
  2093.   SIGSTOP     17   Stop signal, not from terminal
  2094.   SIGTSTP     18   Stop signal, from terminal by [Cntl-Z]
  2095.   SIGCONT     19   Continue stopped process
  2096.   SIGCHLD     20   Child stopped or exited
  2097.   SIGTTIN     21   Read by background process
  2098.   SIGTTOU     22   Write by background process
  2099.   SIGIO       23   I/O possible on a descriptor
  2100.   SIGXCPU     24   CPU time exhausted
  2101.   SIGXFSZ     25   File size limited exceeded
  2102.   SIGVTALRM   26   Virtual timer alarm
  2103.   SIGPROF     27   Profiling timer expired
  2104.   SIGWINCH    28   Window size changed
  2105.   SIGUSR1     29   User signal 1
  2106.   SIGUSR2     30   User signal 2
  2107.  
  2108.   Handler returns:
  2109.   SIG_DFL      0   Default signal action
  2110.   SIG_IGN      1   Ignore signal action
  2111.   SIG_ERR     -1   Error return
  2112.  
  2113.  
  2114. MIPS
  2115. Million Instructions Per Second. A measurement of the processing power of a 
  2116. CPU although in practice it, like most benchmark figures, has little useful 
  2117. meaning.
  2118.  
  2119.  
  2120. MIT
  2121. Massachusetts Institute of Technology. A leading centre for technology and 
  2122. scientific research.
  2123.  
  2124.  
  2125. Mixed number
  2126. A number that is not an integer, such as 7.5.
  2127.  
  2128.  
  2129. MMU
  2130. Memory Management Unit. A semiconductor device that manages a CPU's memory 
  2131. requests which may be a separate chip or part of that CPU. Also, an Atari 
  2132. custom chip usually in a square 68-pin PLCC package (it is sometimes surface 
  2133. mounted) providing and controlling the interface between the RAM and other 
  2134. chips including the CPU, SHIFTER and DMA. It specifically handles the memory 
  2135. addressing for them coupling the multiplexed address bus of the RAM with the 
  2136. processor's bus. It also looks after DRAM memory refreshing and helps to 
  2137. produce the video signal with the SHIFTER. A 4 MHz and 8 MHz signal is 
  2138. provided from a 16 MHz clock signal, the latter required for the MC68000. 
  2139. There are several different types for the ST, the 'IMP' one being less stable 
  2140. and cannot handle unequal banks of memory. The '-38' MMU is the better 
  2141. version. On the ST, although the 68000 can address 16 Mb of memory, the design 
  2142. of the MMU restricts this to 4 Mb maximum. Other computers have different MMUs 
  2143. because of the differing memory configurations and requirements of them. The 
  2144. STE MMU a the memory bank allocation problem, which means that 2.5 Mb is 
  2145. impossible. The TT has a MMU for the installed ST RAM on the motherboard and 
  2146. extra ones present on the memory upgrade boards for extra ST RAM or TT RAM.
  2147.  
  2148.  
  2149. Mnemonic
  2150. Something that aids human memory such as the 'Richard Of York Gave Battle In 
  2151. Vain' chant to remember the colours of the rainbow. Also, applied to elements 
  2152. of a programming language, especially assembly code e.g. RTS for Return from 
  2153. Subroutine.
  2154.  
  2155.  
  2156. MNP
  2157. Microcom Networking Protocol. A standard data error-correcting system found in 
  2158. most modern modems (MNP 2, 3 and 4), except that the MNP 5 protocol is 
  2159. concerned with data compression. These were de facto standards for a few years 
  2160. but for all intents and purposes are replaced by the CCITT V.42 standard for 
  2161. error correction and V.42bis for data compression both of which give superior 
  2162. performance.
  2163.  
  2164.  
  2165. Modal
  2166. An operating condition that consists of modes.
  2167.  
  2168.  
  2169. Mode
  2170. An operating condition that is one of two or more such conditions, i.e. 
  2171. command mode and edit mode. A mode exists if at any time you can't get to all 
  2172. of the capabilities of a program without taking some intermediate step. 
  2173. GUI/WIMP applications tend to be amodal (in theory) which is one of their main 
  2174. advantages. See Amodal.
  2175.  
  2176.  
  2177. Modem
  2178. MODulator/DEModulator. A data communications device that modulates and 
  2179. demodulates a carrier wave in order to represent data on a telephone line. 
  2180. When transmitting, it receives data as direct current pulses from a computer 
  2181. or terminal, generates a carrier wave and modulates it to represent data. When 
  2182. receiving, it converts modulations to direct current pulses and passes them to 
  2183. the computer. Most modems also have facilities for varying the speed of 
  2184. transmission, circuit testing, error corrections and data compression.
  2185.  
  2186.  
  2187. Moderator
  2188. A person who regulates a conference, echo or newsgroup for content and style.
  2189.  
  2190.  
  2191. Modify
  2192. To change an item of hardware or software to improve performance or 
  2193. reliability.
  2194.  
  2195.  
  2196. Modular
  2197. Consisting of modules.
  2198.  
  2199.  
  2200. Modular programming
  2201. A programming technique in which the problem, and hence the program, is broken 
  2202. down into logical subdivisions each being coded and tested separately.
  2203.  
  2204.  
  2205. Modulation
  2206. The process of changing a carrier wave in order for it to carry significant 
  2207. data. Also, a way of representing data on a magnetizable surface.
  2208.  
  2209.  
  2210. Modulator
  2211. A device that produces a RF (Radio Frequency) television signal thus allowing 
  2212. the use of a TV as a computer's VDU. On the ST, a Motorola 1377P chip is used 
  2213. to convert the SHIFTER's RGB signals and the GLUE's sync signals to a 
  2214. composite video output in PAL or NTSC format. This signal is fed to the 
  2215. monitor socket where it can be used to drive a monitor. The signal is also fed 
  2216. to a UHF modulator which converts it into a UHF TV signal which is only really 
  2217. acceptable at low resolution, the quality being very poor when compared to a 
  2218. computer monitor.
  2219.  
  2220.  
  2221. Module
  2222. A part of a whole that is capable of separate consideration or use, such as a 
  2223. sequence of instructions written as a unit in a modular program.
  2224.  
  2225.  
  2226. Modula-2
  2227. A high-level language with a modular structure developed from and a successor 
  2228. to Pascal.
  2229.  
  2230.  
  2231. Monadic
  2232. Consisting of, or performed on a single item, such as the logic operator NOT 
  2233. and the monadic expression NOT 2 or -3.
  2234.  
  2235.  
  2236. Monitor
  2237. To check an operation as it is being performed and often applied to a device 
  2238. or program carrying out this function, especially low-level debuggers. Also, 
  2239. applied to operating system routines that perform physical operations, such as 
  2240. inputs and outputs. Also, a CRT visual display device.
  2241.  
  2242.  
  2243. Monochrome
  2244. A display or printed material consisting of one colour on another, usually 
  2245. black on a white background or its reverse.
  2246.  
  2247.  
  2248. Monospaced font
  2249. A typeface consisting of characters of equal width, such as the TOS system 
  2250. fonts and the Courier printer font. See Proportional.
  2251.  
  2252.  
  2253. Most significant bit - MSB
  2254. In a bit-group, the leftmost and highest weighted bit and transmitted last.
  2255.  
  2256.  
  2257. Most significant byte - MSB
  2258. In a group of bytes (a word or long word), the byte that is at the farthest 
  2259. left position having the greatest weight.
  2260.  
  2261.  
  2262. Most significant digit - MSD
  2263. The leftmost and highest weighted digit in a number in a positional 
  2264. representation system, such as the 1 in 125.
  2265.  
  2266.  
  2267. Motherboard
  2268. The main printed circuit board to which other removable boards connect.
  2269.  
  2270.  
  2271. Motorola
  2272. The US company that produces, among others, the MC680x0 series of processors.
  2273.  
  2274.  
  2275. Mouse
  2276. A device with one to three buttons used for controlling a special cursor 
  2277. (normally an arrow pointer) for the manipulation of screen items in GUI/WIMP 
  2278. environments. The mouse is held under the palm of the hand and moved over a 
  2279. flat surface, the mouse cursor making corresponding movements on the screen. 
  2280. The buttons can be used to click on certain graphic or menu items to initiate 
  2281. an action. The Atari mouse has the minimum performance characteristics of a 
  2282. resolution of 100 dpi, a maximum velocity of ten inches per second and a 
  2283. maximum pulse phase error of 50%. It is an optomechanical device consisting of 
  2284. four infra-red photocoupler light beams, two encoder wheels (discs with radial 
  2285. slots in them) and a drive mechanism consisting of two metal rollers attached 
  2286. to the wheels. As the mouse is moved so is the rubber-coated ball inside which 
  2287. moves against the two rollers which in turn move the two encoder wheels whose 
  2288. drive axes are at an angle of 90° to each other. These alternately interrupt 
  2289. the infra-red light beams and the pulses from these are sent to the HD6301 
  2290. informing it about the absolute path travelled on each axis. This scales the 
  2291. data and sends it to the processor to move the mouse pointer on the screen. To 
  2292. work out the direction of movement another two light beams are used on each 
  2293. encoder wheel. They are arranged so that they are not shielded by the wheel at 
  2294. the same time but one shortly after another. The direction is determined by 
  2295. which of the two light beams on each wheel is interrupted first. The left 
  2296. mouse button switch tends to wear with use and can be rejuvenated by placing 
  2297. one or two slips of paper between the switch and the long button extension or 
  2298. by swapping over the right and left microswitches.
  2299.  
  2300.  
  2301. Mouse accelerator
  2302. The Atari mouse normally has a resolution of 128 dpi, that is it has to be 
  2303. moved five inches to move the mouse pointer across a ST high resolution 
  2304. screen. This is normally too low, and a more responsive resolution is about 
  2305. 200-300 dpi. Many programs are available which increase the movement of the 
  2306. mouse pointer on the screen and some will also provide another acceleration 
  2307. effect, where the amount of movement on the screen is proportional to the 
  2308. speed of movement of the mouse. A fast movement of the mouse moves the pointer 
  2309. a long way, whilst careful individual pixel control can still be achieved by 
  2310. moving slowly.
  2311.  
  2312.  
  2313. Mouse mat, mouse pad
  2314. A mat on which to move the mouse providing a smoother action than a desk or 
  2315. table top.
  2316.  
  2317.  
  2318. Mouse pointer
  2319. The small arrow pointer that moves on the screen of a GUI/WIMP program when 
  2320. the mouse is moved. Normally an arrow, the shape may change depending on the 
  2321. activity of the computer. A pointing finger hand, a grabbing flat hand, a busy 
  2322. bee, a vertical bar text cursor and thin, thick and outline cross hairs are 
  2323. available for programmers. Selective use of these icons by a programmer can 
  2324. inform the user as to the program's current operational state. See Bee icon.
  2325.  
  2326.  
  2327. Move
  2328. To read data from one location and to write it to another and then delete the 
  2329. original copy so that only one remains. See Copy.
  2330.  
  2331.  
  2332. Move bar
  2333. The shaded top border of GEM windows which allows the window to be dragged to 
  2334. another position on screen with the mouse.
  2335.  
  2336.  
  2337. MPEG
  2338. Moving Picture Expert Group. An organization set up to decide the technical 
  2339. standard to be adopted for full-screen, full-motion video (FSFMV) on CD-ROM.
  2340.  
  2341.  
  2342. MPU
  2343. Micro-Processor Unit.
  2344.  
  2345.  
  2346. MSB
  2347. Most Significant Bit or Most Significant Byte.
  2348.  
  2349.  
  2350. MS-DOS
  2351. MicroSoft Disk Operating System. The standard operating system for IBM PCs and 
  2352. compatibles based on the original PC-DOS. Version 3.3 is the earliest usable 
  2353. version, version 4 is seriously flawed and versions 5 and 6 have significant 
  2354. improvements. TOS works in a very similar way to MS-DOS sharing many of the 
  2355. same function calls even to the extent of having the same number. The two 
  2356. operating systems are, however, totally incompatible with each other although 
  2357. MS-DOS formatted floppy disks can be read on TOS machines and the TOS format 
  2358. function on TOS 1.4 and above is capable of producing disks readable on MS-
  2359. DOS-based computers.
  2360.  
  2361.  
  2362. MSI
  2363. Medium Scale Integration.
  2364.  
  2365.  
  2366. MTBE
  2367. Mean Time Between Errors. The average time that a computer operates without a 
  2368. system software error.
  2369.  
  2370.  
  2371. MTBF
  2372. Mean Time Between Failures. An indication of reliability of equipment being 
  2373. the average time it operates without a failure.
  2374.  
  2375.  
  2376. MUG
  2377. Multi-User Game. A game capable of being played by many people at once and 
  2378. continually over a period of time and which is accessed by connecting to a BBS 
  2379. or other service via a modem or network.
  2380.  
  2381.  
  2382. Multi
  2383. Prefix meaning 'more than one'.
  2384.  
  2385.  
  2386. Multi-access
  2387. Synonymous with multi-user.
  2388.  
  2389.  
  2390. MULTICS
  2391. MULTiplexed Information and Computing System. A 1960s operating system 
  2392. developed to allow several users access to one mainframe computer at the same 
  2393. time with the computer sharing its time between them. A slimmed down and much 
  2394. developed version of this became UNIX.
  2395.  
  2396.  
  2397. Multimedia
  2398. Although the term means different things to different people and at different 
  2399. times, loosely it is a hypertext document containing many different types of 
  2400. data - text, images, audio and video information. Multimedia is intended to be 
  2401. very user-interactive and user-friendly.
  2402.  
  2403.  
  2404. Multimeter
  2405. A meter that can measure several different electrical values.
  2406.  
  2407.  
  2408. Multipart stationery
  2409. Continuous stationery with multiple sheets interleaved with carbon paper or of 
  2410. carbonless copy paper and used in an impact printer to form multiple copies.
  2411.  
  2412.  
  2413. Multiplexing
  2414. A method of using a single communications channel to carry multiple speech 
  2415. and/or data transmissions simultaneously.
  2416.  
  2417.  
  2418. Multiplexor
  2419. A device that performs multiplexing in a data communications system. Also, an 
  2420. integrated circuit in which multiple input circuits are selectively connected 
  2421. to a single output circuit, usually buffering all signals so that they all 
  2422. eventually pass through.
  2423.  
  2424.  
  2425. Multiprocessor
  2426. A computer system with two or more processors under control of a single 
  2427. operating system. The system may be carrying out parallel processing or may 
  2428. consist of a main computer with one or more specialized auxiliary computers.
  2429.  
  2430.  
  2431. Multiprocessing
  2432. The processing of a multiprocessor, where one or more computer programs or 
  2433. tasks are run simultaneously on one or more processors. The term implies 
  2434. parallel processing.
  2435.  
  2436.  
  2437. Multiprogramming
  2438. A method of computer operation in which two or more application programs are 
  2439. being executed simultaneously by the interleaved allocation of a single set of 
  2440. computer resources. Most systems are interrupt (event) driven. The time during 
  2441. which the instructions of a particular program are being processed is a time 
  2442. slice. The operating system may manage the programming by allocating different 
  2443. time slices to different programs depending on their priorities as set by the 
  2444. user or the program itself. Once each time slice is up, execution control is 
  2445. passed to another program and so on around all the executing programs. 
  2446. MultiTOS operates in this manner as does the multitasking TOS replacement 
  2447. MagiC.
  2448.  
  2449.  
  2450. Multiscan monitor
  2451. A CRT display monitor operating at any of many line and frame frequencies 
  2452. thereby being compatible with all the resolutions of a computer system, such 
  2453. as those on the ST and TT.
  2454.  
  2455.  
  2456. Multisync monitor
  2457. A trademark of NEC and a multiscan monitor.
  2458.  
  2459.  
  2460. Multitasking
  2461. The operation of simultaneously executing a main task and subtasks belonging 
  2462. to the same program that are either interleaved (by a single processor) or 
  2463. executed concurrently (by a multiprocessor).
  2464.  
  2465.  
  2466. MultiTOS
  2467. The pre-emptive multitasking TOS based on the freeware MiNT project and 
  2468. officially introduced on the Falcon030. It essentially provides a 
  2469. multiprogramming environment in protected mode on a MC68030 running GEM and 
  2470. TOS programs under the NewDesk Desktop or any other shell. MultiTOS uses a 
  2471. pre-emptive time slicing system, where each process executes for a small 
  2472. number of clock cycles, interrupted by MiNT which chooses the next process to 
  2473. run and then runs that for a given slice of processor time. Depending on 
  2474. whether processes are running, asleep or waiting, the length of this time 
  2475. slice may vary and the priority of a program can be altered thus increasing 
  2476. its speed of operation although to the detriment of the other processes, of 
  2477. course (see Multiprogramming). Of particular importance is that the system 
  2478. doesn't have to wait for permission from one application before switching to 
  2479. another task, meaning that, for instance, a word processor doesn't have to 
  2480. finish its spell checking first before the user can swap to another program.
  2481.  
  2482. MultiTOS has expanded interprocess communication with drag and drop 
  2483. facilities, so that a file can be dropped onto the window of an open 
  2484. application or a system driver file and be handled appropriately. Many 
  2485. applications can be open at the same time, and visible on the Desktop, and 
  2486. switching between applications or processes can be achieved by selecting their 
  2487. entry from the "Desk" menu underneath the accessories, or by topping the 
  2488. window owned by the process. Active applications place their menu bar across 
  2489. the top of the screen, where having the title of the first menu item (normally 
  2490. "Desk") the name of the program is now a vital necessity. There are no limits 
  2491. (except those of memory and screen space) on the number of open windows. .TOS 
  2492. and .TTP programs can be run from within moveable and re-sizable windows, such 
  2493. as MINIWIN using small system fonts so that they don't take over the whole 
  2494. screen. They also work much faster and more cleanly like this. Depending on 
  2495. the application, some windows can be minimized using the Smaller icon so as 
  2496. not to clutter up the Desktop and background windows can be moved and 
  2497. manipulated easily.
  2498.  
  2499. MultiTOS will also work on a MC68000 machine but without memory protection 
  2500. because the 68000 processor cannot provide those facilities. Memory protection 
  2501. means that a program cannot access and write over the memory belonging to 
  2502. another program or process, but it will not stop programs crashing the system 
  2503. altogether. The 68030 can catch these illegal memory accesses allowing 
  2504. MultiTOS to kill off the process and return its memory to the free memory 
  2505. pool. 68000-based systems suffer badly from this inadequacy.
  2506.  
  2507. Because of its history, many of the utilities, tools and general feel of 
  2508. MultiTOS are very UNIX-like. UNIX is quickly adopting a system of representing 
  2509. everything in an operating system, including all processes, as a file making 
  2510. them easily accessible and allowing for simple piping and other interprogram 
  2511. communication. MultiTOS's pseudo drive U: (for Unified) is an example of this 
  2512. and contains 'files' that represent disk drives, devices, pipes and processes 
  2513. contained in 'directories'. These are not real files, but file access calls 
  2514. can be used to deal with them. In addition to creating a folder for each 
  2515. installed system drive or partition, MiNT also creates the following 
  2516. directories in the root of drive U:
  2517.  
  2518.   Table M48: MultiTOS U: drive folders
  2519.  
  2520.   \DEV        Default and loaded devices
  2521.   \PIPE       System pipes
  2522.   \PROC       System processes
  2523.   \SHM        Shared memory blocks
  2524.  
  2525. The U:\DEV folder contains a list of the BIOS devices, such as the mouse, 
  2526. screen, RS-232 port, printer port, etc. A file could be sent to the modem, for 
  2527. instance, by dropping it on the U:\DEV\AUX file. Devices may be loaded at any 
  2528. time. The following devices are available by default in U:\DEV
  2529.  
  2530.   Table M49: MultiTOS Default Devices
  2531.  
  2532.   CENTR       Centronics (parallel) printer port
  2533.   MODEM1      Modem serial port 1
  2534.   MODEM2      Modem serial port 2
  2535.   SERIAL1     Serial port 1
  2536.   SERIAL2     Serial port 2
  2537.   MIDI        MIDI port
  2538.   KBD         Intelligent keyboard controller
  2539.   PRN         Printer device (usually the parallel port)
  2540.   AUX         Auxiliary terminal (usually the RS-232 port)
  2541.   CON         Current control terminal
  2542.   TTY         Same as CON
  2543.   STDIN       Current file handle 0 (standard input)
  2544.   STDOUT      Current file handle 1 (standard output)
  2545.   STDERR      Current file handle 2 (standard error)
  2546.   CONSOLE     Physical console, the keyboard/screen
  2547.   MOUSE       Mouse (system use only)
  2548.   NULL        A null device (like UNIX's /DEV/NULL)
  2549.   AES_BIOS    AES BIOS device (system use only)
  2550.   AES_MT      AES multitasking device (system use only)
  2551.  
  2552. Alternative device drivers can also be loaded, automatically if they have a 
  2553. .XDD file name extender and found in the root or \MULTITOS folder. Loadable 
  2554. file systems, such as POSIX and ISO 9660 CD-ROM, are also automatically loaded 
  2555. if they have a .XFS extender and found in the same place.
  2556.  
  2557. U:\PIPE contains files which are FIFO queues (e.g. pipes). All files created 
  2558. in U:\PIPE are temporary so that it is erased when the last program using a 
  2559. FIFO closes it. U:\PIPE is usually empty, but will contain items when running 
  2560. a window manager, print spooler or similar programs that use FIFOs or pseudo-
  2561. TTYs for communication, like MINIWIN or MW.
  2562.  
  2563. U:\PROC contains a list of processes. Listing U:\PROC gives information about 
  2564. currently executing processes, such as whether they're running, ready, or 
  2565. waiting, their process ID numbers and the amount of memory they've taken. The 
  2566. 'file name' is the name of the process with the process ID number as the 
  2567. extender. The 'file size' of a process file is the amount of memory that is 
  2568. allocated to it. The 'date/time stamp' reflects how much processor time it has 
  2569. consumed. The current state of a process is shown by the attribute bits of the 
  2570. 'file', most of which are not visible from the Desktop but can be used by 
  2571. programs.
  2572.  
  2573.   Table M50: Attribute Bits for Process 'Files' on U:\PROC
  2574.  
  2575.   Attribute   Process state
  2576.   bit
  2577.   0           Currently running
  2578.   1           Ready to run
  2579.   2           Waiting for an event
  2580.   3           Waiting for I/O
  2581.   4           Zombie (exited and not yet released)
  2582.   5           Terminated and resident (TSR)
  2583.   6           Stopped by a signal
  2584.  
  2585. The 'zombie' state is for processes which have exited, but whose parents 
  2586. haven't yet learned their exit codes. Deleting a U:\PROC 'file' will send a 
  2587. SIGTERM signal to the corresponding process, which will usually result in that 
  2588. process being terminated. It is not possible to delete TSR or zombie 
  2589. processes. See MiNT signals.
  2590.  
  2591. U:\SHM contains the shared memory blocks. With the availability of memory 
  2592. protection applications can share the same blocks of memory as though they 
  2593. were disk files. In this way, simultaneously running programs can share common 
  2594. sections of code or resource details.
  2595.  
  2596. Other drives are accessible on drive U: as directories. U:\C is drive C: so 
  2597. the file C:\MULTITOS\SHOW.PRG is also visible as U:\C\MULTITOS\SHOW.PRG.
  2598.  
  2599. MultiTOS supports Terminate and Stay Resident (TSR) programs and will continue 
  2600. to do so because there are so many of them. However, they are obsolete under a 
  2601. multitasking environment. Many simple ones, such as print spoolers, are 
  2602. designed to provide services in the background and should be rewritten as 
  2603. normal TOS programs. They can check the MiNT cookie to decide if to run as a 
  2604. TSR or as a TOS program. Other TSRs provide extended system services, such as 
  2605. access to unusual types of devices. MultiTOS provides facilities to make this 
  2606. extension easy with device drivers and loadable file systems. Device drivers, 
  2607. such as printer and serial port drivers go into globally accessible memory and 
  2608. MultiTOS makes it visible to GEMDOS and even the BIOS and takes care of read 
  2609. and write requests. Loadable file systems provide access to services by 
  2610. emulating a disk drive. This is useful for accessing drives that use a 
  2611. different format from TOS and MS-DOS, such as CD-ROMs and UNIX disk drives. 
  2612. The MiNT Extendable File System XFS driver supports standard CD-ROM, as well 
  2613. as CD-ROM/XA.
  2614.  
  2615. In a multitasking environment, programs must not allocate large amounts of 
  2616. memory to themselves to the detriment of other programs which are running or 
  2617. to be run. One of the most dangerous system calls is Malloc(-1L) which 
  2618. supplies the size of the largest unallocated block of ST RAM memory in the 
  2619. system. This call isn't reliable because memory can be allocated or freed by 
  2620. another process between the time the system call is made and its value is 
  2621. used. A program should only allocate as much memory as is required by the task 
  2622. in hand and no more. If this Malloc() call fails then the program should try 
  2623. with a smaller block until it gets some memory or the Malloc() call fails 
  2624. entirely. In the future, MultiTOS may incorporate memory block paging or 
  2625. swapping (to and from disk, for instance) and so a Malloc() call may well 
  2626. succeed even if Malloc(-1L) fails. The other use of Malloc(-1L) is to provide 
  2627. the user with the total amount of free memory available. This requires a loop 
  2628. of such calls which means that any other program running under MultiTOS will 
  2629. be unable to allocate memory. An alternative method is provided by MultiTOS 
  2630. using a Dfree() system call to determine the amount of free 'disk space' on 
  2631. the drive U: where U:\PROC is the current directory. This will actually result 
  2632. in information about free and allocated memory being returned.
  2633.  
  2634. During system calls, MultiTOS saves and restores the context which adds 
  2635. significant amounts of time to each system call. Programs making a lot of 
  2636. system calls run very slowly but this can be remedied with certain strategies. 
  2637. Making fewer calls and using functions that do as much work as possible in 
  2638. each call are preferable. Various BIOS functions do little work on each call. 
  2639. Bconout() outputs a single character, whereas a GEMDOS function such as 
  2640. Fwrite() can output thousands on a single call. Replacing BIOS calls with 
  2641. GEMDOS ones will generally speed up any program. GEMDOS functions can also 
  2642. have their input and output redirected to disk files, pipes and other devices 
  2643. and the GEMDOS interface is similar to functions calls in MS-DOS, OS/2 and 
  2644. UNIX making the porting of programs easier.
  2645.  
  2646. Numerous programs, especially those using the AES, do not run entirely 
  2647. successfully under MultiTOS for various reasons. Some try to grab all the 
  2648. available memory, many use modified AES and VDI calls (or even write their own 
  2649. interfaces), lots use undocumented and illegal methods and many have very 
  2650. modal aspects preventing access to other windows, such as only using dialog 
  2651. boxes. However, this situation is improving quickly with the appearance of 
  2652. MagiC and stable releases of MiNT.
  2653.  
  2654. MultiTOS is available for all machines, including 68000-based ones. MiNT is 
  2655. freely available in the public domain. However, a multitasking AES, such as 
  2656. v4.10, is also required to provide the full MultiTOS environment. This is only 
  2657. available commercially and to developers.
  2658.  
  2659.  
  2660. Multi-user
  2661. A computer system that allows simultaneous use by more than one person, often 
  2662. at remote terminals.
  2663.  
  2664.  
  2665. MUPB
  2666. Memory Usage Parameter Block.
  2667.  
  2668.  
  2669. MW
  2670. Multitos Windows. MW.PRG is a program that can be used under MultiTOS which 
  2671. allows multiple MiNT shells to be run in GEM windows under the standard AES. 
  2672. It emulates the VT52 like the ST BIOS. These windows can be moved about on the 
  2673. screen and several can be active, each running a separate task. A small screen 
  2674. font can be used enabling a full-screen TOS program to be run in a small 
  2675. window enabling other parts of the screen to be accessible. Another program 
  2676. called MGR does the same job under MiNT but MW is smaller and using the 
  2677. standard AES means you can run accessories along with MiNT shells. However, 
  2678. there are no graphics. In both cases a program can interrogate a window's size 
  2679. and location and can respond when the user changes the size. MW is based on 
  2680. UW, or UNIX Windows and written by Allan Pratt, but is PD and not a product of 
  2681. Atari Corporation. Production releases of MultiTOS include MINIWIN instead of 
  2682. MW.
  2683.  
  2684.  
  2685. Mylar
  2686. The DuPont trade name for the polyester film used as the substrate in floppy 
  2687. disks and tape.
  2688.  
  2689.  
  2690. M
  2691. 181 entries
  2692. EOF
  2693.