2023年3月12日日曜日

SBC6808を作ってみる Rev.5



SBCバス対応のCPU68☓☓基板を作ってみた。先達に敬意を表して、#SBC6808 と名付けてJLCPCBに発注。これで VIDEO DISPLAY BOARD SBC6845 を試験するつもり。

この基板はMC68B02搭載


                                      【当BLOGのファイル置き棚のリンク先】


1. PCの環境と条件
 ★PC:
 windows に次のコマンドをインストール:
  msdos.exe  MS-DOS Player
  X6801.exe  Arcpitのクロス・アセンブラ
  Tera Term       ターミナル エミュレータ
  Xgpro v8.33  Universal Programmer TL866 II PLUSの書き込みソフト
  

     ★当Blogで使用したROMと道具

     ・ROM(32KB)
        - ATMEL AT28C256 15PU
     ・プログラムをSBCに送り込むための端末として
        - ターミナルソフト Tera Term を動作させるWindowsPC
        - PCとSBCを接続するUSB-シリアル変換基板とケーブル
     ★当Blogで使用したMC6808
    •  購入したMC6808はpin 35をプルアップしないと正常に動かない。つまり、中身はMC6802か?
     ★SBCシリーズ基板の入手:
      SBC-BUS Rev.02 (ORANGE pico)
          SBC6808 基板作成用データ

     ★参照記事:
      「電脳伝説さん」の【ホームページ】
          「Ryuさん」の  rrretrocompute!  

    2.試作したSBC6808基板
        ★CPUクロックは8MHz。VIDEO DISPLAY BOARD SBC6845にBus経由で供給。
      ★ROMはSBC6802 plus Busと同じ
      ★NTB(NAKAMOZU TINY BASIC) と SWTBUG,TBUGが動作中



     3. 仕様変更、バグ修正の上、完成したSBC6808基板

      ★「Ryuさん」の仕様から変更したところ

      • BusにCPUclock(8MHz)を出力し、SBC6845に供給(サイクルスティール用)
      • MC68B02とMC6808のどちらでも使用可能
      • デバッグ時にROMがR/Wできるようにジャンパーを追加(不揮発性RAM DS1230Y対応)

      ★MC6850の通信Rate:9600 baud





     4. NTBを走らせる





    BASICPRO;sosu keisan を走らせた

    10 REM  *** SOSU KEISAN *************
    11 REM  * ADD LINE NO.15 ’18/08/21 **
    15 %0=¥+1
    20 F. A=5 TO 995 S.6:%0(A)=0:%0(A+2)=0:N.A
    30 F. A=5 TO 31 S.2:IF%0(A) N.A
    40 F. B=2*A TO 1000 S.A:%0(B)=1:N.B
    50 N.A
    80 P.:C.7;
    90 P."## 1000 MADE NO SOSU ##"
    100 P.U.**2,U.**3,
    110 F.A=5 TO995 S.6
    115 IF%0(A)=0 P.U.**A,
    120 IF%0(A+2)=0 P.U.**A+2,
    130 N.A

    BASICPRO;EXP no keisan
    10 *********************************
    20 *   EXP no keisan   100 keta    *
    30 *     BY   Haruo Yamashita      *
    40 *********************************
    50 %0=\+1:K=100:L=51:N=71
    60 F.I=1TOL:%0(I)=0
    70 N.I
    80 %0(0)=1
    100 DO
    110 F.I=0/1 TOL
    120 %0(I)=(%0(I)+K*MOD)/N
    130 N.I
    140 N=N-1:%0(0)=%0(0)+1
    150 U.N=0
    200 REM TYPE OUT
    210 P."  EXP=";%0(0);"."
    220 F.I=1TOL-1
    230 P.%0(I)/10;" ";MOD;" ";
    240 IFMOD(I,5)=0 P." ";
    250 IFMOD(I,10)=0 P.
    260 N.I

    BASICPRO; π no keisan
    10 ********************************
    20 *     PI no keisan             *
    30 *    N.T.B   H.YAMASHITA       *
    40 ********************************
    60 G.400

    100 REM DIV[%1=%1/M]
    110 F.I=0/1 TOL
    120 %1(I)=(%1(I)+K*MOD)/M
    130 N.I
    140 RET
    150 REM DIV[%2=%1/N]
    160 F.I=0/1 TOL
    170 %2(I)=(%1(I)+K*MOD)/N
    180 N.I
    190 RET
    200 REM ADD[%0=%0+%2]
    210 C=0
    220 F.I=L TO0 S.-1
    240 W=%0(I)+%2(I)+C:C=0:IFW>=K W=W-K:C=1
    250 %0(I)=W
    260 N.I
    270 RET
    300 REM SUB[%0=%0-%2]
    310 C=0

    320 F.I=L TO0 S.-1
    340 W=%0(I)-%2(I)-C:C=0:IFW<0 W=W+K:C=1
    350 %0(I)=W
    360 N.I
    370 RET
    400 REM MAIN PROGRAM
    410 IN."  KETASU =100*D   D= "D
    420 L=50*D+1:S=145*D:T=45*D
    430 K=100:Z=2*L+2:%0=\+1:%1=%0+Z:%2=%1+Z
    500 F.I=0TO3*L+2:%0(I)=0
    510 N.I
    520 N=1:M=5*5:%1(0)=16*5
    530 DO
    540 REM 1 [+]
    550 GOS.100:GOS.150:GOS.200:N=N+2
    570 REM [-]
    580 GOS.100:GOS.150:GOS.300:N=N+2
    590 U.N>=S
    600 F.I=0TO2*L+1:%1(I)=0
    610 N.I
    620 N=1:M=239:%1(0)=4*239
    630 DO
    640 REM 2 [-]
    650 GOS.100:GOS.100:GOS.150:GOS.300:N=N+2
    670 REM 2 [+]
    680 GOS.100:GOS.100:GOS.150:GOS.200:N=N+2
    690 U.N>=T
    700 REM TYPE OUT
    710 CLR:CU.(0,0):P."  PI = ";%0(0);"."
    720 F.I=1TOL-1
    730 P.%0(I)/10;" ";MOD;" ";
    740 IFMOD(I,5)=0 P."  ";
    750 IFMOD(I,10)=0 P.
    760 N.I
    770 P." TOTAL ";100*D;" KETA."

    5. NAKAMOZU TINY BASIC ROMでできること


    6. 電大版TinyBASIC を走らせる。

            このTB2KD110.zip をダウンロードして解凍する。
     SBC6808をリセットした後
    L コマンドで TB2KD.S を流し込み、









    J  0100 で


    READY
    #
    となればOK


    0 件のコメント:

    コメントを投稿

    SBC6808を作ってみる Rev.5 SBC バス対応のCPU68☓☓基板を作ってみた。先達に敬意を表して、 #SBC6808 と名付けてJLCPCBに発注。 これで V IDEO DISPLAY BOARD SBC6845 を試験するつもり。 この基板はMC68B02搭...