Spectrofon #17
01 февраля 1996 |
|
System - discussion of the pressing issues of standardization Spectrum-compatible computers.
C & C T E M A The proposed lower material lifts, In our opinion, a very interesting topic. Pass the word to our correspondents from Kharkov. Jemmini: In a nutshell the problem. Us quite amazed at the number of programs from Russia, which focuses only on "Pentagon" and not for anything else. These products are in most cases looks very bad on branded machines and machines with separate field memories. One gets the impression that this is not for SPECCY write, but for some unknown reason and What! Maybe the standard was already not SPECCY, and its home-grown equivalent? One In short, I beg you, pick up this painful question in his journal, for Once your log can here something to help! (C) Jemmini 'Metallica "Slow" MEMORY SPECCY ... Many of them are permanently left in past, some transformirova were, some were born from "mon Stry "... (From the preface to the book Rodionova) ATTENTION! Through the magazine "SPECTROFON" We want to appeal to all programmers and hackers that may not her own fault, forgot or did not know one very important Property SPECCY, which we try tell. Jemmini: Before I begin to expound the essence of the problem, I want to note one difference in the sea sovdepovskih schemes. There are two implementation: a common field of memory and a split. The first is "The Pentagon" LENINGRAD-1, 2 "," Baltika ", etc. Representatives of the second implementation is "Krasnodar", "Kharkiv", "MOSKVA-48" and ... Corporate SPECCY! In corporate SPECCY, video controller for reading data, there is a "lock" clock, going to the CPU. Thus stopping the processor is implemented on time- information from RAM to the screen. As is known, SPECCY video memory is measured in pages RAM with the numbers 5 and 7. Therefore, the video controller makes the choice of data is from this memory location. But SPECCY arranged so that these pages are from pages 4 and 6, one block. Only the sake of convenience I'll call him a block of video memory (hereinafter referred to OHR). Jobs VWP because of references to it slowed down the video controller, namely by 25% (The fact that the treatment "cover" two clock cycles out of every eight). This slowdown in certain cases may affect the operation of the computer in general, and on the last speed affects the frequency dependence requests the CPU to the OHR. I note that most of its value This frequency is reached for sample codes teams from the said memory. Therefore, for to minimize accesses to the VWP, a rational place in the data. It for data and apply this memory. One of the severe cases is the one when placed in the VWP program. With this placement, performance on this segment of the program falls on the fourth. But not even that made me write the real message, but something less obvious but no less serious and unpleasant! AND these troubles are related to the habit of many homegrown ...- soft'ov set to register interrupt vectors I a number, indicating that this unfortunate OHR. This lining leads to an even more tragic results. As I've written a program fragment caught in the VWP, loses 25% of the speed, but If there comes a table of interrupts that The whole machine becomes slower by 25%! Not delving into the reasons why I say what this leads. No, the car did not explode and did not hang, and all-but everything stopped "Stowed in the interruption," as adopted to speak with programmers. But this is not all and not even the worst when it would seem, and well enough. The trouble begins with the boot from a disk - DOS can not read drive! Indeed, its rate of rotation remains the former, and the speed DOS fallen almost 25% in resulting in all the time delay were wrong! Error reading and I was there to tell you how many prog respond to this ... It is worth noting that the above "Property" does not depend on the mode interrupt! As a solution to this problem, we recommend that all programmers be installed in I register values in the range from # 00 to # 3F, and from # 80 to # BF. In this setup, overlap occurs. You can also install a range of up to # C0 # FF, provided that the current in the vast majority of pages are not owned by the VWP. In the case of the values from # 40 to # 7F, the interrupt vector will always point to the OHR, which will inevitably lead to a loss of speed. Dear colleagues from Russia! Did you has only "Pentagon"? Can not you see how to do all firms, as Poles have done (they have been branded machines!), and finally, as is done in all known SATISFACTION and INSULT? Maybe you're just not paying attention, and yet there all with this in mind: the block of video memory - the data, the rest of memory - a program. And you have companies will not find, so I register it with the values from # 40 to # 7F. What about the situation in Ukraine I can assure you that the machines with a separate field of memory is plenty. And judging by the publications in the journal "SPECTROFON" in Russia similar machines also available. Jemmini 'Metallica: All who read these lines! Take into account the above and do not be lazy on When you work with DOS in case I bring # 3F, and RAM to install interrupt table so that it does not hit the block of memory! And we can only hope that those who admit such mistakes, the more they will not do that our story will be useful to all of you, dear sinkleristy. Bye! Matviychuk MV (Jemminisoft) 310066, Kharkov, trans. Progressive, d.28, kv.1 tel.: (0572) 98-81-35 Grebennik VA (Metallica) 310091, Kharkov, ul.Tankopiya, 5, kv.44 tel.: (0572) 90-45-24 * "S": It should be noted that this problem in detail all the three volumes of "Programming in machine code and assembly language" published "Inforkomom" in 1993. But since this edition is now turned into discharge a rarity, information Kharkov programmers certainly cause of interest. Once again I draw your attention to the fact that I hit the register in the range from # 40 to # 7F slowing your computer is NOT DEPEND ON Interrupt mode! In each machine cycle Command Z-80 refers to the memory cell addressable register I, displaying it in the senior eight bits address bus and activating the line of inquiry memory MREQ. This is interpreted as the ULA address to the OHR, leading to conflict with the controller display regardless of the mode interrupt. However, we also do not recommend the use of register values I from # 00 to # 3F for the second treatment interruption, as with the table of cut falls in the ROM that on computers with an unstable system bus data leads to unpredictable results. Apparently, the optimum will use the I register of range from # 80 to # BF.
Other articles:
Similar articles:
В этот день... 21 November