Mercurial > hg > Members > kono > nitros9-code
view level1/modules/dwcheck.asm @ 2763:c03464c24b14
Fixed a minor typo in the arcadepak's makefile related to DriveWire3 and Becker.
Updated makefile with new option nightlytest. Run option is "make nightlytest".
You also need to test environment variable TESTSSHDIR and TESTSSHSERVER before using it.
Also updated the nightly option so if the SOURCEUSER environment variable is not set it will report it.
author | drencor-xeen |
---|---|
date | Wed, 16 Jan 2013 17:33:46 -0600 |
parents | 660cc987e18d |
children |
line wrap: on
line source
IFNE 1 * Checksum routine - D returns as the sum of all bytes of the sector * Entry: X = address of sector * Exit : D = checksum value DoCSum equ * clr ,-s clra clrb c2@ addb ,x+ adca #0 dec ,s bne c2@ leas 1,s * exg a,b do endian conversion to match Server's checksum rts * Weak but fast CRC Computation Routine * Entry: X = address of sector * Exit : D = crc value *DoCRC equ * * IFNE H6309 * clrd * clre *CRC2 eord ,x++ * ince * bpl CRC2 * ELSE * clr ,-s * clra * clrb *CRC2 eora ,x+ * eorb ,x+ * inc ,s * bpl CRC2 * leas 1,s * ENDC * exg a,b do endian conversion to match PC's CRC * rts ELSE * CCITT CRC-16 Computation Routine * * Provided by Tim Lindner - 02/12/2003 * * Entry: X = address of sector * Exit : D = crc value *CRC16 equ * * IFNE H6309 * clrd * clre * ELSE * clra * clrb * pshs b save as counter of 256 bytes * ENDC *CRCLP eora ,x+ * IFNE H6309 * lsld * ELSE * lslb * rola * ENDC * bcc CRCLp0 * IFNE H6309 * eord #$1021 * ELSE * eora #$10 * eorb #$21 * ENDC *CRCLp0 equ * * IFNE H6309 * lsld * ELSE * lslb * rola * ENDC * bcc CRCLp1 * IFNE H6309 * eord #$1021 * ELSE * eora #$10 * eorb #$21 * ENDC *CRCLp1 equ * * IFNE H6309 * lsld * ELSE * lslb * rola * ENDC * bcc CRCLp2 * IFNE H6309 * eord #$1021 * ELSE * eora #$10 * eorb #$21 * ENDC *CRCLp2 equ * * IFNE H6309 * lsld * ELSE * lslb * rola * ENDC * bcc CRCLp3 * IFNE H6309 * eord #$1021 * ELSE * eora #$10 * eorb #$21 * ENDC *CRCLp3 equ * * IFNE H6309 * lsld * ELSE * lslb * rola * ENDC * bcc CRCLp4 ** IFNE H6309 ** eord #$1021 * ELSE * eora #$10 * eorb #$21 * ENDC *CRCLp4 equ * * IFNE H6309 * lsld * ELSE * lslb * rola * ENDC * bcc CRCLp5 * IFNE H6309 * eord #$1021 * ELSE * eora #$10 * eorb #$21 * ENDC *CRCLp5 equ * * IFNE H6309 * lsld * ELSE * lslb * rola * ENDC * bcc CRCLp6 * IFNE H6309 * eord #$1021 * ELSE * eora #$10 * eorb #$21 * ENDC *CRCLp6 equ * * IFNE H6309 * lsld * ELSE * lslb * rola * ENDC * bcc CRCLp7 * IFNE H6309 * eord #$1021 * ELSE * eora #$10 * eorb #$21 * ENDC *CRCLp7 equ * * IFNE H6309 * dece * ELSE * dec ,s * ENDC * bne CRCLp * IFEQ H6309 * leas 1,s eat counter on stack * ENDC * rts * * ENDC * * calculate CCITT CRC 16 * input: X - Address of block * Block is assumed to be 256 bytes * output: D - 16 bit CRC * uses: X, D, CC, and two bytes of stack DoCRC equ * IFNE H6309 clre clrd nextbyte ldf #8 eora ,x+ nextbit lsld bcc loop eord #$1021 loop decf bne nextbit dece bne nextbyte rts ELSE clra clrb pshs y,b nextbyte ldy #8 eora ,x+ nextbit lslb rola bcc loop eora #$10 eorb #$21 loop leay -1,y bne nextbit dec ,s bne nextbyte leas 1,s puls y,pc ENDC ENDC