復活!CP/M ワンボードマイコンでCP/Mを!
CP/MがTK−80互換のワンボードマイコンの上で復活します
ND80ZVとMYCPU80の上でCP/Mが走ります!
[第36回]
●cpm22.z80のバグ(2)
前回からの続きです。
下のCHECKSUMルーチンにはバグがあります。
どこにバグがあるか、おわかりになりますでしょうか? 
というところまでが、前回のお話でした。
|                      	;
                      	;   Compute the check-sum for the directory buffer. Return
                      	; integer sum in (A).
                      	;
  C8FA  0E80          	CHECKSUM: LD	C,128		;length of buffer.
  C8FC  2AC0D1        		LD	HL,(DIRBUF)	;get its location.
  C8FF  AF            		XOR	A		;clear summation byte.
  C900  C600          	CHKSUM1:ADD	A,M		;and compute sum ignoring carries.
  C902  23            		INC	HL
  C903  0D            		DEC	C
  C904  C200C9        		JP	NZ,CHKSUM1
  C907  C9            		RET	
 | 
| 2043 CHKSUM1:ADD A,M ;and compute sum ignoring carries. 2168 SBC A,M ;set carry if no more names. 3340 SBC A,M 3348 SBC A,M | 

| 2043 CHKSUM1:ADD A,(HL) ;and compute sum ignoring carries. 2168 SBC A,(HL) ;set carry if no more names. 3340 SBC A,(HL) 3348 SBC A,(HL) | 


 
