Changeset 445 in xtideuniversalbios for trunk/Assembly_Library
- Timestamp:
- Aug 29, 2012, 12:59:23 PM (12 years ago)
- google:author:
- krille_n_@hotmail.com
- Location:
- trunk/Assembly_Library
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Assembly_Library/Inc/Emulate.inc
r420 r445 465 465 eSHIFT_IM %1, %2, shr 466 466 %endmacro 467 467 468 %macro eSHL_IM 2 469 %ifdef USE_386 470 %if %2 = 1 471 add %1, %1 ; Same size but faster on 386 and 486. Fails if %1 is a memory operand. 472 %else 473 eSHIFT_IM %1, %2, shl 474 %endif 475 %else 468 476 eSHIFT_IM %1, %2, shl 469 %endmacro 477 %endif 478 %endmacro 479 470 480 %macro eROR_IM 2 471 481 eSHIFT_IM %1, %2, ror 472 482 %endmacro 483 473 484 %macro eROL_IM 2 474 485 eSHIFT_IM %1, %2, rol 475 486 %endmacro 487 476 488 %macro eRCR_IM 2 477 489 eSHIFT_IM %1, %2, rcr 478 490 %endmacro 491 479 492 %macro eRCL_IM 2 480 493 eSHIFT_IM %1, %2, rcl -
trunk/Assembly_Library/Inc/Math.inc
r287 r445 79 79 ALIGN JUMP_ALIGN 80 80 .ShiftNextBit: 81 shlax, 181 eSHL_IM ax, 1 82 82 rcl dx, 1 83 83 loop .ShiftNextBit -
trunk/Assembly_Library/Src/Display/DisplayCursor.asm
r407 r445 3 3 4 4 ; 5 ; XTIDE Universal BIOS and Associated Tools 5 ; XTIDE Universal BIOS and Associated Tools 6 6 ; Copyright (C) 2009-2010 by Tomi Tilli, 2011-2012 by XTIDE Universal BIOS Team. 7 7 ; … … 10 10 ; the Free Software Foundation; either version 2 of the License, or 11 11 ; (at your option) any later version. 12 ; 12 ; 13 13 ; This program is distributed in the hope that it will be useful, 14 14 ; but WITHOUT ANY WARRANTY; without even the implied warranty of 15 15 ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 ; GNU General Public License for more details. 16 ; GNU General Public License for more details. 17 17 ; Visit http://www.gnu.org/licenses/old-licenses/gpl-2.0.html 18 ; 18 ; 19 19 20 20 ; Section containing code … … 72 72 xor dh, dh 73 73 add ax, dx ; Add column offset 74 shlax, 1 ; Convert to WORD offset74 eSHL_IM ax, 1 ; Convert to WORD offset 75 75 add ax, [VIDEO_BDA.wPageOffset] ; AX = Video RAM offset 76 76 mov [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.fpCursorPosition], ax -
trunk/Assembly_Library/Src/Display/DisplayFormat.asm
r376 r445 3 3 4 4 ; 5 ; XTIDE Universal BIOS and Associated Tools 5 ; XTIDE Universal BIOS and Associated Tools 6 6 ; Copyright (C) 2009-2010 by Tomi Tilli, 2011-2012 by XTIDE Universal BIOS Team. 7 7 ; … … 10 10 ; the Free Software Foundation; either version 2 of the License, or 11 11 ; (at your option) any later version. 12 ; 12 ; 13 13 ; This program is distributed in the hope that it will be useful, 14 14 ; but WITHOUT ANY WARRANTY; without even the implied warranty of 15 15 ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 ; GNU General Public License for more details. 16 ; GNU General Public License for more details. 17 17 ; Visit http://www.gnu.org/licenses/old-licenses/gpl-2.0.html 18 ; 18 ; 19 19 20 20 ; Section containing code … … 137 137 .ConvertIndexToFunctionOffset: 138 138 sub bx, .rgcFormatCharToLookupIndex 139 shlbx, 1 ; Shift for WORD lookup139 eSHL_IM bx, 1 ; Shift for WORD lookup 140 140 mov ax, [cs:bx+.rgfnFormatSpecifierParser] 141 141 ret -
trunk/Assembly_Library/Src/Display/DisplayFormatCompressed.asm
r376 r445 6 6 7 7 ; 8 ; XTIDE Universal BIOS and Associated Tools 8 ; XTIDE Universal BIOS and Associated Tools 9 9 ; Copyright (C) 2009-2010 by Tomi Tilli, 2011-2012 by XTIDE Universal BIOS Team. 10 10 ; … … 13 13 ; the Free Software Foundation; either version 2 of the License, or 14 14 ; (at your option) any later version. 15 ; 15 ; 16 16 ; This program is distributed in the hope that it will be useful, 17 17 ; but WITHOUT ANY WARRANTY; without even the implied warranty of 18 18 ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19 ; GNU General Public License for more details. 19 ; GNU General Public License for more details. 20 20 ; Visit http://www.gnu.org/licenses/old-licenses/gpl-2.0.html 21 21 ; … … 194 194 195 195 .process_after_output: 196 shlch,1 ; check high order bits for end of string or space196 eSHL_IM ch,1 ; check high order bits for end of string or space 197 197 jns short DisplayFormatCompressed_ret 198 198 jnc .decode … … 208 208 ; DisplayFormatCompressed_BaseFormatOffset and jump targets (must fit in 256 bytes) 209 209 ; 210 shlch,1 ; setup ch for later testing of null in .process_after_output210 eSHL_IM ch,1 ; setup ch for later testing of null in .process_after_output 211 211 and ax,0001fh ; also clears AH for addition with BX and DX below 212 212 -
trunk/Assembly_Library/Src/Menu/CharOutLineSplitter.asm
r376 r445 3 3 4 4 ; 5 ; XTIDE Universal BIOS and Associated Tools 5 ; XTIDE Universal BIOS and Associated Tools 6 6 ; Copyright (C) 2009-2010 by Tomi Tilli, 2011-2012 by XTIDE Universal BIOS Team. 7 7 ; … … 10 10 ; the Free Software Foundation; either version 2 of the License, or 11 11 ; (at your option) any later version. 12 ; 12 ; 13 13 ; This program is distributed in the hope that it will be useful, 14 14 ; but WITHOUT ANY WARRANTY; without even the implied warranty of 15 15 ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 ; GNU General Public License for more details. 16 ; GNU General Public License for more details. 17 17 ; Visit http://www.gnu.org/licenses/old-licenses/gpl-2.0.html 18 18 ; 19 19 20 20 21 21 ; Section containing code … … 40 40 ; Get last text line column offset to AX 41 41 call MenuLocation_GetMaxTextLineLengthToAX 42 shlax, 1 ; Characters to BYTEs42 eSHL_IM ax, 1 ; Characters to BYTEs 43 43 add ax, dx 44 44 … … 62 62 call MenuLocation_GetTitleBordersTopLeftCoordinatesToAX 63 63 xor ah, ah 64 shlax, 164 eSHL_IM ax, 1 65 65 ret 66 66 … … 82 82 83 83 mov dl, [VIDEO_BDA.wColumns] 84 shldl, 1 ; DX = bytes per row84 eSHL_IM dl, 1 ; DX = bytes per row 85 85 mov ax, di 86 86 div dl ; AL = row index, AH = column index -
trunk/Assembly_Library/Src/Util/Memory.asm
r440 r445 3 3 4 4 ; 5 ; XTIDE Universal BIOS and Associated Tools 5 ; XTIDE Universal BIOS and Associated Tools 6 6 ; Copyright (C) 2009-2010 by Tomi Tilli, 2011-2012 by XTIDE Universal BIOS Team. 7 7 ; … … 10 10 ; the Free Software Foundation; either version 2 of the License, or 11 11 ; (at your option) any later version. 12 ; 12 ; 13 13 ; This program is distributed in the hope that it will be useful, 14 14 ; but WITHOUT ANY WARRANTY; without even the implied warranty of 15 15 ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 ; GNU General Public License for more details. 16 ; GNU General Public License for more details. 17 17 ; Visit http://www.gnu.org/licenses/old-licenses/gpl-2.0.html 18 ; 18 ; 19 19 20 20 ; Section containing code … … 151 151 ; Returns: 152 152 ; AL: Sum of bytes 153 ; ZF: Set if result is zero 154 ; Cleared if result is non-zero 153 155 ; Corrupts registers: 154 156 ; CX 155 157 ;-------------------------------------------------------------------- 158 %ifndef EXCLUDE_FROM_XTIDECFG 156 159 ALIGN JUMP_ALIGN 157 160 Memory_SumCXbytesFromESSItoAL: 158 161 push si 162 dec si 159 163 xor al, al 160 164 ALIGN JUMP_ALIGN 161 165 .AddNextByteToAL: 166 inc si 162 167 add al, [es:si] 163 inc si164 168 loop .AddNextByteToAL 165 169 pop si 166 170 ret 171 %endif -
trunk/Assembly_Library/Src/Util/Sort.asm
r376 r445 7 7 8 8 ; 9 ; XTIDE Universal BIOS and Associated Tools 9 ; XTIDE Universal BIOS and Associated Tools 10 10 ; Copyright (C) 2009-2010 by Tomi Tilli, 2011-2012 by XTIDE Universal BIOS Team. 11 11 ; … … 14 14 ; the Free Software Foundation; either version 2 of the License, or 15 15 ; (at your option) any later version. 16 ; 16 ; 17 17 ; This program is distributed in the hope that it will be useful, 18 18 ; but WITHOUT ANY WARRANTY; without even the implied warranty of 19 19 ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 ; GNU General Public License for more details. 20 ; GNU General Public License for more details. 21 21 ; Visit http://www.gnu.org/licenses/old-licenses/gpl-2.0.html 22 ; 22 ; 23 23 24 24 ; Algorith is from http://www.algolist.net/Algorithms/Sorting/Quicksort … … 62 62 push di 63 63 mov di, cx 64 shlcx, 1 ; Reserve temp and pivot items64 eSHL_IM cx, 1 ; Reserve temp and pivot items 65 65 add cx, BYTE QSORT_PARAMS_size 66 66 eENTER_STRUCT cx
Note:
See TracChangeset
for help on using the changeset viewer.