-------------------------------------------------------------------------
      DSC61 : SC61860 DISASSEMBLER for DOS (Rev 0.15)
  MS-DOS5.0/VMS-DOS6.2/VPC98DOS6.2/Dosbox
    (QZE12045@nifty.com)
URL       http://hd61700.yukimizake.net/SC61860/
-------------------------------------------------------------------------
DSC61Ƃ
 SC61860ptAZuDOSłłB
 ̓t@CɃOt@Cl[gȂȊOWin32łƂقړłB
 W16rbgDOSœ삷̂ŁAWin32łƔr(G~[^܂)lX
 vbgtH[œłƎv܂B
 t[\tgłBDɎgĂB]ڂRłBî薳ۏ؂łj


(1)SC61860̃T|[gقƂǂ̖߂tAZu\łB
  (T|[gĂȂ߂Ǝv܂EE)
(2)ȉ̊gqtH[}bgǂݍނƂ\łB
   .PBF (PBFt@C)
   .BAS (BASIC DATA`)
   .HEX (PJ HEX`)
   .DMP (SC61_v`BPJ HEX`Ɠ)
   .TXT (ASCII` AhX/`FbNTȂ)
   .BIN (oCit@C)
   .BMP (Windowsrbg}bvt@C--mN(2F)摜̂ݑΉ)
   LȊO̊gq̃t@Cw肵ꍇAoCi(*.bin)ʂƂď܂B
(3)NpXɂJR*/JP*/CAL/CALL߃x͋yсALIDP߂ɑ΂
   f[^GA͂s܂Bi/S /DIvVwɂĎsj
   ͂ɂo͂郉xtH[}bg͈ȉ̒ʂłB
    START ---- sJnAhX
    LBL ---- JR/JPߗpx
    MDL ---- CAL/CALLߗpx
    DAT ---- LIDP߂ȂƏLȊO16bitIyhpf[^x
    ( --- Yx̒`ꂽԒn)
(4)L/S,/Dɂ͂ɂĔGÁADB߃tH[}bg̃Xg
   ܂B̋@\ɂA\[X𖳂Ă܂st@CA
   قڎŏC邱Ƃ\ƂȂ܂Bi_Ȏ܂j
(5)DSC61ƓtH_symbol.hƌ̂̃t@CƁA
   V{ǂݍނƂo܂B
   iVXep̌Œ胊\[XtAZuʂɔfł܂j
   ́AHD61EQU߂ƓłB
   ^߂ƂāA#if`#else`#endifg܂B
   Symbol.hǂݍݒɃG[ꍇAȍ~̃V{
   ǂݍ݂𒆎~āAtAZuJn܂B
(6)jjbNo͂ƓɁAߎs͗p̃Rgo͂ł܂B
   (/CIvVw莞j
(7)ǂݍ񂾃t@CetH[}bgɕϊ鎖\łB
   T|[go̓tH[}bǵAȉ̒ʂłB
   EPBF`iBAS/HEX̕ϊɗpj
   EBAS`iPBF/HEX̕ϊɗpj
   EoCi`(BIN)
   Erbg}bv`(BMP)
   EDB`iAZuDBߌ`łj
   EPJ HEX`(PJf HEX`)
   EINTEL HEX`(8rbg)

A[JCue
Readme.txt --- ̃t@Cł
DSC61.exe ----- HD61700tAZust@C
Symbol.h ----- V{`t@CTv

N@
DOS̃R}hvvgňȉs܂B

>DSC61 [t@C.gq] [IvV(/S /D /C /NC /B /DB /BMP /MONO /P /BAS /PJ /HEX /NTAB /IMG)ȗ][Enter]

sƋtAZuʂ.lstt@C(܂͕ϊʂ.pbf/.bas/.bin/.bmp/.hex/.hx)ɏo͂܂B

̓t@C`
ȉ̃tH[}bgp\łB
ʕsȃt@Cw肵ꍇAoCi(*.bin)ʂƂď܂B
   .PBF (PBFt@C)
   .BAS (BASIC DATA`)
   .HEX (PJ HEX`)
   .DMP (SC61_v`BPJ HEX`Ɠ)
   .TXT (ASCII` AhX/`FbNTȂ)
   .BIN (oCit@C)
   .BMP (Windowsrbg}bvt@C--mN(2F)摜̂ݑΉ)

et@C`́AgqŔʂ邽߁AԈ̂ł͐ǂݍ߂܂B
et@C`Ɗgq́Aȉ̒ʂłB
(1) *.PBF --- PBF`BHD61/BinToPbfo͌`łB
  SẴAhX߁A/ADRw͕svłB

(2) *.BAS --- BASIC DATA`i16i2 `FbNTtj
  BASIC DATA`łB
     1000 DATA D162389377AB02D6,F8
     1010 DATA 40D512D600D402D6,A9
                   :
  AhXȂ߁A/ADRIvV [JnAhX] [sAhX]  ̏
  AhXw肵ĂKv܂B
   j DSC61 sample.bas /s /adr 0xD000 0xD018

(3) *.HEX / *.DMP --- PJ HEX`iAhX/16i2 `FbNTtj
  PJ HEX`Ƃ́Aȉ̂悤PJɌfڂĂHEX`w܂B
  AhX/f[^/`FbNT̋؂́AR[:]܂́AJ}[,]AXy[Xg܂B
     2A65 6200C0D6001C2E77,B9
     2A6D 7C2AD16200FFD600,AE
                :
  /ADRIvV [sAhX] w肷邱Ƃ\łBi/ADR ȗ\łj
   j DSC61 sample.hex /s /adr 0xC018

(4) *.TXT --- ASCII`iAhX/`FbNTj
  TXT́Aȉ̂悤Ƀf[^eASCII`ɂȂĂt@CłB
  f[^݂̂ŁAAhX/`FbNT͎Ă܂B
     40D512D600D402D6
     20E502D8D6409513
            :
     D600E602D620F702
   /ADRIvV [JnAhX] [sAhX] w肵ĂKv܂B
   j DSC61 sample.txt /s /adr 0xD000 0xD018

(5) *.BIN --- oCi`
  L(1)`(4)́AASCII`łAoCi`̓f[^̂̂łB
  f[^݂̂ŁAAhX/`FbNT͎Ă܂̂ŁA /ADRIvV 
  [JnAhX] [sAhX]  ̏ŃAhXw肵ĂKv܂B
   j DSC61 sample.bin /s /d /adr 0xC000 0xC018

(6) *.BMP --- rbg}bv`
   Windowsrbg}bv摜`łB
   p\Rō쐬摜PBFtH[}bgɕϊă|PRŗp鎖ł܂B
   ǂݍ݂̓mN(QF)tH[}bg̉摜̂݉\łB
   ǂݍ߂摜TCYɓɐ͂܂񂪁ACASIO|PRł̗plƁA
   192~32܂́A192~64̂ꂩŉ^p̂ł֗ł傤B
   ꉞAOS2`ΉĂ܂A܂莎ĂȂ̂ŁAȂׂWindows`
   BMP摜𗘗pĂB(Photoshop ElementsōOS2`BMPł̂݊mF)
   /ADRIvV [JnAhX] [sAhX] w肷邱Ƃ\łA
   ȗĂG[Ƃ͂Ȃ܂B(AhXȗ0Ԓni[܂)

IvV̐
(1)tAZupIvV
/S  ---- sJnAhXw肳ĂꍇÃAhX
         ߉͂Jn܂B
/D  ---- L/SIvVw莞LDW/PRE߂ɑ΂f[^GA
         ͂{܂B
         (/DPƂł͎g܂B/SƕpKv܂j
/C  ---- ߎsRgo͂܂B
         ͎ɂpB
/NC ---- tAZuɃAhXyуR[h̏o͂s܂B
         \[X̂ݏo͂܂Bi\[XCpłj
/AC ---- /NCƓŋtAZu܂A"AhX+R[h+"Rgŏo͂܂B
/LO ---- ߌꏑoONɂB
         ߒ͈͓̔Œ`ꂽxQƗLԂ̂̂ꍇAEQU^߂
         ux EQU ߌ擪AhXx+ItZbglv`ŃXgɏo͂B
/NTAB -- Xgo͂TABgp܂BftHgTAB=8ŏo͂܂B
/IMG --- SA^߂ɂoCiw肵̈AGPRINT`̃mNrbg}bv
         t@Cɏo͂Bt@C͑ΏۃAhX"x.bmp"܂́A
         "ImgAhX.bmp"ƂȂB

̓ASY͂ȂKȂ̂Ȃ̂ŁAmɃR[hGAƃf[^GA
łƂ͌܂B肭sȂ\܂B
BIOS̗̏lȖ߃R[hƃf[^GA݂R[hɂ/DIvV
SgȂƎvǂłB

(2)f[^ϊpIvV
 /P  ---- ͂ꂽt@CPBF`ŏo͂܂B
 /BAS --- ͂ꂽt@CBAS(BASIC DATA)`ŏo͂܂B
 /DB ---- ͂ꂽt@CDB߃tH[}bgŏo͂܂B
          /NCIvVƂ̕p\łB
 /B  ---- ͂ꂽt@CoCi`ŏo͂܂B
          o͂t@C̊gq.binƂȂ܂B
 /BMP (JnAhX)  ---- ͂ꂽt@Crbg}bv`(192~32/192~64)
          o͂܂Bo͂t@C̊gq.bmpƂȂ܂B
          /bmp [JnAhX] ƂƁA̕AhXrbg}bv쐻܂B
          JnAhX́A10i܂16i(擪0xtjw肪\łB
          ʂ̃XN[VbgB̂ɎgĂB
     ij>DSC61 Graphic.pbf /bmp 0xC210
 /MONO (JnAhX)  ---- ͂ꂽt@Crbg}bv`(192~32/192~64)
          o͂܂Bo͂t@C̊gq.bmpƂȂ܂B
          /BMPƂقړłAo͂摜LCDʕɂȂ܂B
          (X~}ZBpbgF͂ȂKłB)
 /PJ ---- ͂ꂽt@CPJ HEXtH[}bg(gq.hex/.hx)ŏo͂܂B
 /HEX --- ͂ꂽt@CINTEL HEXtH[}bg(gq.hex/.hx)ŏo͂܂B
          ̓t@C̊gq.hexꍇAo̓t@C̊gq.hxƂ܂B

f[^ϊp̃IvVIƁAtAZu͍s킸I܂B
܂Af[^ϊpIvV𕡐w肵ꍇAŌɎw肵IvV̂ݗLƂȂ܂B

(3)AhXwpIvV
 /ADR (AhX1j (AhX2) ---- BAS/HEX/BIN/TXT`̃t@CǂݍނƂɁA
         tAZuJnAhX^sJnAhXw肵܂B
         EsJnAhX͏ȗł܂B
         E͂PJ HEXt@C̎́AsJnAhX̂ݎwł܂B
         E͂PBFt@Cɂ͖܂B
 (1) oCit@C(source.bin)ɑ΂āA擪AhX$2000A
     sJnAhX$2010w肷B
  >DSC61 source.bin /adr 0x2000 0x2010 [Enter]
 (2) PJ HEXt@C(source.hex)ɑ΂āAsJnAhX$2010w肷B
  >DSC61 source.hex /adr 0x2010 [Enter]

Symbol.h̗pɂ
\[Xt@CƓtH_symbol.hƌ̂̃t@CƁAV{
ǂݍނƂo܂BiVXep̌Œ胊\[XtAZuʂɔfł܂j
Symbol.hǂݍݒɃG[ꍇAȍ~̃V{̓ǂݍ݂𒆎~āA
tAZuJn܂B

pł鏑͉L̒ʂłB
(1)EQU
   [LABEL(:)] EQU [l](܂ LABEL/)
 @\  錾ꂽxɑ΂āAIyh̐l^܂Bx錾͏ȗł܂B
       Iyhl̓x⎮pł܂Apɒl肵ĂKv܂B
       AEQU߂ɌAxɂR':'͏ȗ\łB

(2)IF`ELSE`ENDIF
  IF (!)[]
       << LqP >>
      (ELSE
       << LqQ >>)
      ENDIF
      (ELSE`<<Lq2>>)͏ȗ\łB
 @\  if߂̃Iyh1̒l^(=0ȊO)Ȃ΁ALqPL(else`endif܂ł
       LqQ𖳌)܂Bɂ́AZq![]ltɂ]pł܂B
       i!Zq̗D揇ʂ͒PZqƊʂ̊ԂłBj
       ɂ̓xw\łApɒlm肵ĂKv܂B
       IF`ELSE`ENDIF̃lXeBO\łB(255x܂)

(3)INCLUDE
   INCLUDE(t@C)
 @\  Iyh1̊ʓɋLqꂽt@CAZuɑgݍ݂܂B
       AZu͂̕Ƥ\[Xt@C̃AZu𒆎~ĤINCLUDE
       w肳ꂽt@CAZu܂Bwt@C̃AZuA
       \[Xt@C̃AZuĊJ܂B
       INCLUDẼlXeBO256x܂ŉ\łBOPENꂽINCLUDEt@C
       ċAIȌĂяosƁA"Invalid Include File Name"G[ƂȂ܂B

(4)SA
   ([LABEL:]) SA(W/S/B) [l1] (,[l2]) (,[l3]) (;Rg())
 @\  Iyh̐l1`l2͈̔͂f[^GAƂċtAZuɓo^܂B
       [l3]ꍇÄ敝Ȃǂ̏wł܂BႦLEDTP̂悤192byte̕
       [NAGȀꍇASymbol.hɈȉ̗̂悤ɓo^ĂƁA
       tAZuXg̏o͂[obt@{*Y+X] ̂悤ȕ\L\łB
 ()
         LEDTP: SA  $6343,$6642,192  ;LCD\hbgobt@

       ʂSA(Ȃ)ASAW(DWŏo)ASAS(o)ASAB(oCi=2io)̗lɋLq܂B
       ꂼ̎ʂŃAZuʂlsto͂wł܂̂ŁA͌ɔ[N
       SAw肵Ăƃ[N̈̐ɕ֗łB
       
       eIyhl̓x⎮pł܂Apɒl肵ĂKv܂B
       ܂Ax錾ȗ\SA^߂̂ݓo^\łȀꍇARg
       tAZuʂɔf܂B(Rg\̓x錾ɕRÂĂ邽߁j
       
       /imgIvVwsƁASAB(oCi=2io)ɂĒ`ꂽ̈GPRINT`
       摜t@CƂďo͂܂B
       o͂̓mN(2F)rbg}bv`ŁAxw肪΃t@C"x.BMP"
       ƂAxw肪ꍇ́A"img+AhX.BMP"ƂȂ܂B
       c8bitŃrbg}bv܂Ä敝̎w肪΁A̕Ő܂Ԃ摜Ƃ
       o͂܂B

DSC61Jɂ́Aȉ̃TCg̓eQlɂĂ܂B
1. YASM61860 KOBAYASHI, Hiroyuki
   ( https://www.oit.ac.jp/rd/labs/kobayashi-lab/~yagshi/old_web/misc/pocketcom/yasm.html )
   ( https://www.oit.ac.jp/labs/rd/rssrv/kobayashi-lab/~yagshi/old_web/misc/pocketcom/sc61860op.html )
2.uSC61860 (aka ESR-H) Instruction Setvutz82
   ( https://github.com/utz82/SC61860-Instruction-Set )
3.uCASE1(SET)/CASE2(CASE)TCNvEnri
   ( http://cmpslv3.stars.ne.jp/Pc1251/Enr51cpu.htm )

 ӎ
ĴƂȂMiyura܁AIYS/IXSRgo͂ĉYANAGIDA܁A
TCN͎@̒āE쌟؁EoO񍐂ȂǁA
܂(https://x.com/mauri_shippo)
F܂ɊӂB

 
Rev : 0.01  2006.10.13  ŏ̃o[WB
Rev : 0.02  2006.10.16  CASE1/CASE2ΉBBMPo͂SC`ɏCB
                        ߎsRgo(/C IvV)ǁB
Rev : 0.03  2006.11.07  RgCBCASE2fR[hCB*.DMPǉB
                        R[h`FbNCB
Rev : 0.04  2006.12.24  ʕsȃt@C*.binʂƂ悤ɏCB
Rev : 0.04  2009.02.12  RpC{BUPXk(EBXoX^[듮삷邽)
                        o[Wԍ͕ύXB
Rev : 0.05  2009.11.20  IYS/IXSRgo͂(By YANAGIDA)
Rev : 0.06  2021.07.11  PBF`o͂CB(t@CŏIɃJ}̂C)
                        "unsigned long""unsigned short"w"unsigned int"ɓB
                        ÂRpC(DOS)pɎgĂ܂ŋ߂linuxnRpCƂ
                        낵ȂƂ̎ŏC܂B
Rev : 0.07  2021.08.25  CASE1/CASE2o͂SC61ƂB
Rev : 0.08  2022.05.01  SA^߂ɑΉBxRgóAGA͋@\𓋍ځB
                        Intel HEXo(/hex)w莞ChecksumCB
                        /imgIvVǉBSA^߂ɂoCiw肵̈
                        GPRINT`̃rbg}bvɏo͂B
Rev : 0.08a 2022.05.01  /imgIvVCBo[Wԍ͓łB
Rev : 0.09  2023.06.18  SASw莞Ƀ_vf[^o͂錏̏C
                        symbol.hǂݍݎinclude^߂ɑΉB
                        /ACIvVwǉB/NCƓl̏A"AhX+R[h+" 
                        Rgŏo͂B
                        Symbol.hǂݍݒ̃x`G[́A[jO\ďpB
                        l̃xEQU`ꍇɃ[jO\ǉB
Rev : 0.10  2024.01.12  SAWw莞̃GfBȀCB
                        /acw莞̕R[ho͂CB
                        LP/LIDP߂̃xSAwDƂB
Rev : 0.11  2025.06.25  xo^̃JEgCB
                        /c IvVFMVMDCBNOPT,TSMARgǉB
Rev : 0.12  2025.08.12  sTCN(Ql2A3)tAZuʂɏo͂悤ɂB
                        LIIH(0x72)/HALT(0x7b)/CPID(0xd7)߂ǉB(Ql2)
                        SC@ł悭閽ߕ(LIB/LIA/CLRACAL)oDATʂ̃x
                        o^悤ɂB
Rev : 0.13  2026.04.12  LFs̃eLXgǂݍ݂̉ǁB
Rev : 0.14  2026.05.24  /LOIvVwǉBߌꏑoāAߒ͈͓̔Œ`ꂽ
                        xQƗLԂ̂̂ꍇAߌ+ItZbglEQU^߂Xgo͂B
Rev : 0.15  2026.06.13  x16B
                        SC@ł悭閽ߕ(LIB/ADIA/SBIACAL)oDATʂ̃x
                        o^悤ɂB
                        LIDPoALIDLoꍇɁADPAhXʂXVDATʂ
                        xo^悤ɂB
