Body #07
25 июня 1997 |
|
PUSH HL - The procedure for the withdrawal point.
PUSH HL (C) SATSOFT PHN 270-72-36 Today I continued HEADINGS Codenamed 'PUSH HL' and Bring to your attention a very simple procedure for deriving POINT ON THE SCREEN: ; OUT POINT ORG 40000 LD D, 10; x coordinate LD E, 11, Y coordinate LD A, # AF; CALCULATION OF ADDRESSES TO COORDINATES SUB E RET C LD E, A AND A RRA SCF RRA AND A RRA XOR E AND # F8 XOR E LD H, A LD A, D RLCA RLCA RLCA XOR E AND # C7 XOR E RLCA RLCA LD L, A Now we know the Segment number, series, columns and LINES. ALL OF THESE Data stored in the register pair 'HL'. TK THIS LINE IN Familiarity has 8 pixels, and SHOULD INCLUDE ONLY ONE , SO SHOULD GET ANY BIT want to include. In fact, his number is determined by the modulo COORDINATES FOR X 8, A computes this balance - BY MASKING OF FIVE bits. But the fact that the coordinates X CHANGES LEFT TO RIGHT, IE 0,1,2,3 ,..., 175, and the number of bits in Bytes FOUND APPROPRIATE LINE GOING THE OTHER WAY, IE 7,6,5 ,..., 0.POETOMU TO DO CONVERSION. IN CASE 'A' Enter a number '# FE' (11.11111 million), and then make ROTATION This byte N +1 times, where N - Modulo X ON 8. LD A, D; x coordinate AND # 07; MASKING LD B, A; remainder of dividing x by 8 INC B; +1 LD A, # FE; PUT BYTE 11111110 LOOP RRCA; ROTATION N +1 TIMES DJNZ LOOP LD B, # FF; INVERSION TO SEAL POINT WAS BLACK XOR B; ON WHITE LD B, A; REMEMBER IN CASE 'B' LD A, (HL); B 'A' in Georgia VALUE OF SCREEN OR B; including the required BIT LD (HL), A; GEORGIA SCREEN RESULTS RET; OUT OF PROCEDURE:) Command instead of 'OR B' CAN BE USED 'XOR B' AND SEAL TO BE PERFORMED BY XOR'U. The idea is, everything should be understandable, since PROGRAM IS VERY SIMPLE AND TO HER IN ADDITION providing extra Number of comments. WRITE ABOUT ALL THAT YOU ARE INTERESTED TO assembler SOUND PREDELAH.PRISYLAYTE their programs, and I'll definitely (!) Publish.
Other articles:
Similar articles:
В этот день... 23 November