100 A=&H6000 110 READ D$ 120 IF D$<>"X" THEN POKE A,VAL("&H"+D$):A=A+1:GOTO 110 130 PRINT "CHK309 - PROCESSOR CHECK PROGRAM." 140 PRINT "TYPE: "; 150 EXEC &H6000 160 IF PEEK(&H601A)=63 THEN PRINT "6309/6309E." ELSE PRINT "6809/6809E." 170 END 180 DATA BD,60,12,27,07,86,3F,B7 190 DATA 60,1A,20,05,86,44,B7,60 200 DATA 1A,39,34,06,10,43,E1,61 210 DATA 35,86,00,X 300 REM 以下は入力不要. 310 REM 開始番地6000hを変更する場合は、100、150、160行を変更し、 320 REM さらに下記のアセンブルリストのCHK309、VERのアドレスを計算する. 330 REM JSR、STAのオペランドの値が変わるので、180〜210行のDATA文の当該箇所を変更する. 340 REM 350 REM 6000 BD6012 JSR CHK309 360 REM 6003 2707 BEQ STEP1 370 REM 6005 863F LDA #63 380 REM 6007 B7601A STA VER 390 REM 600A 2005 BRA STEP2 400 REM 600C 8644 STEP1 LDA #68 410 REM 600E B7601A STA VER 420 REM 6011 39 STEP2 RTS 430 REM 6012 3406 CHK309 PSHS D 440 REM 6014 1043 FDB $1043 450 REM 6016 E161 CMPB 1,S 460 REM 6018 3586 PULS D,PC 470 REM 601A 00 VER FCB $00