ZX Review #7-8-9-10
08 ноября 1997

Retro - 40 best procedures: Remove the block of the program.

<b>Retro</b> - 40 best procedures: Remove the block of the program.
 7. PROCEDURES FOR PROCESSING PROGRAMS


  7.1. Removing the block program


  Length: 42

  Number of variables: 2

  Checksum: 5977

  Purpose: This program removes the block BASIC-programs, which 
lies between the lines defined by the user. 

  Variables:

     Name: start line no

     Length: 2

     Cell: 23296

     Comment: The number of first
lines to be removed.

     Name: end line no

     Length: 2

     Cell: 23298

     Comment: The last line number to be removed.

  Calling the program:

     RANDOMIZE USR address

  Error control: if they have
The following errors, then the procedure stops without deleting 
rows BASIC-programs: 

  - If the last line number
less than the first line number;

  - If between the two strings have a program in BASIC;

  - If one line numbers
or both are 0.

  Comment: This program is rather slow to remove
a large block of software
lines, but, nevertheless, to work with it still more convenient 
than deleting rows manually. 

  Do not enter a line number greater than 9999.


   LISTING machine code
Assembly label number to VVODA147.


        LD HL, (23296) 42 0 91

        LD DE, (23298) 237 91 February 1991

        LD A, H 124

        OR L 181

        RET Z 200

        LD A, D 122

        OR E 179

        RET Z 200

        PUSH DE 213

        CALL 6510 205 110 1925

        EX (SP), HL 227

        INC HL 35

        CALL 6510 205 110 1925

        POP DE 209

        AND A 167

        SBC HL, DE 237 82

        RET Z 200

        RET C 216

        EX DE, HL 235
NXT_CH: LD A, D 122

        OR E 179

        RET Z 200

        PUSH DE 213

        PUSH HL 229

        CALL 4120 205 24 16

        POP HL 225

        POP DE 209

        DEC DE 1927

        JR NXT_CH 24243
2

  How it works:

  In a pair of registers HL and DE are loaded starting and 
ending row numbers, respectively. These

values ​​are checked and, if one or both of them equal to 0, 
the program returns to BASIC. 

  It then calls the subroutine
ROM at 6510 - it returns the address in memory,
with which to begin the first
line. The same routine is then called again to determine the 
address character, standing ENTER after the final string.


  In a couple of registers placed HL difference between these 
two addresses, and If this value is 0 or

negative, the program returns to BASIC.

  The contents of register pair HL
copied to the DE for use DE as a counter. If
count is 0, then the work procedure is completed, and if not,
a routine is called ROM
located at 4120,
which deletes a single character.
After that - back to NXT_CH.






Other articles:

TR-DOS for beginners - The end.

Computer novella - Prince of Persia.

Computer novella - Laser team (the game Laser Squad).

Crossing Dragon - Game Rapscallion.

Crossing Dragon - Playing The Runes of Zendos.

Crossing Dragon - Playing The Saga.

Crossing Dragon - Game Witch's Cauldron.

Crossing Dragon - Create Adventyuru. Review of the editors.

Crossing Dragon - Create a dictionary to Adventyurnoy game.

Program, which we choose - The possible consequences of using undocumented commands.

Program, which we choose - About noticed irregularities in some programs and suggestions for future versions.

Program, which we choose - A proposal to all the authors of software, printers, memory dump. Programmers protect discs from being copied.

Program, which we choose - A few suggestions to improve the assembly.

Program, which we choose - Suggestions for refining ZX Word v2.5.

Program, which we choose - The "Spectrum emulator" v1.2.

Program, which we choose - What could want in a perfect assembly.

Retro - 40 best procedures: Copying data in memory.

Retro - 40 best procedures: Exchange token.

Retro - 40 best procedures: Determination addresses BASIC string.

Retro - 40 best procedures: Determination of the length of BASIC programs.

Retro - 40 best procedures: Determination of the amount of free memory.

Retro - 40 best procedures for: Search and replace strings.

Retro - 40 best procedure: Find the string.

Retro - 40 best procedures: Search for the string.

Retro - 40 best procedures: the list of variables.

Retro - 40 best procedures: an increase and up the screen.

Retro - 40 best treatments: Removal of REM-strings.

Retro - 40 best procedures: Remove the block of the program.

Expert Tips - Game Fredloader.

Expert Tips - Game Robin of Sherwood: The Touchstones of Rhianon.

Expert Tips - Game Scorpions: Die Machines.

Expert Tips - Game Terropods.

page iS-DOS - Description of system restarts IS DOS.

Forum - An algorithm for recognizing characters.

Forum - Time undocumented command processor Z80.

Forum - The concept of a high-color screen resolution.

Forum - A few Pokes to a game. Program Hacman96.

Forum - As for the new DOS and BIOS settings for the Spectrum.

Forum - Multicolor program on any computer model. Using the 2 nd screen Multicolor'a. Demonstration of the text. Electronic journals.

Forum - Project ZX Config.

Forum - Improve Art Studio. Ideas on file compression.

Forum - ZX Spectrum emulator for IBM. About the hexadecimal system. Program ZX-Stars. Oddities in the Elita

Forum - The effects on the curb and Multicolor.

reader-reader - ZX Spectrum 128 - new opportunities, new challenges.

reader-reader - With 'Light'. Spectrum and expert system.

reader-reader - The printer driver for the Scorpion.

reader-reader - Print numbers in different number systems.

reader-reader - Programming arcade game with scrolling screen.

reader-reader - The procedure for printing labels assembler XAS to monitor debugger STS 4.3.

Studies - attribute scrolling text. "Gasilka" screen. A simplified version of the procedure, "Curtain". Procedure is enriched with pictures. Procedure display images on the points.

Studies - Graphic effect "color bars".

Studies - Driver screen printing 64 characters per line.

Studies - Set of protective boot.

Studies - Address to the drive mode IM 2. Working with non-standard disc format.

Studies - Print the character, magnified by 8 times. The program "pouring" screen. The procedure for screen-saver on the points. Clear screen in Terminator'e. Search strings in memory. System character set conversion.

Studies - Program - cataloger of disks.

Studies - Program the output values of the amplitude channel music. coprocessor on the curb.

Studies - Program the output image.

Studies - The program plugs sprite.

Studies - Cleanup of the specified window screen.

Studies - The program sort the array in ascending order. The procedure for filling the screen specified attribute. Procedure display pictures. The effect of moving towards the stars. "Shower", coming from the upper left corner of the screen. The procedure of "shedding" pictures on the pixel lines. The program of "pulling" the picture at an angle of 45 degrees. Three procedures "Scroll".

Studies - The printing of numbers.

Studies - The procedure for drawing a character with attributes.

Studies - The procedure for display pictures. Fade-OUT effect (picture goes beyond the edge of the screen). Visual effect "Fountain." Fade-OUT effect, mimicking the TV off. Procedure "Ignition" pictures. The program continuously drawing a picture.

Studies - The procedure for drawing a line.

Studies - The procedure for making optimal symbol table.

Studies - scrolling lines of text in the specified window. Attribute scroller. Diagonal scrolling.

Studies - sprite scroller. Procedure display screen.

Studies - Short procedure indicating the amplitude channel music. coprocessor. Way to subtract a constant from a register pair HL.

Studies - The formula for calculating the day of the week.


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Similar articles:
BIRTHDAY - Happy Birthday SECTOR, MEGAVOLT.
Entry - Warning! A contest for the best entry for our newspaper.
Miscellaneous - Advertisement - motor trade and not only.
Iron - KAY: ZX Spectrum Ttransformer.

В этот день...   23 November