home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 2 / FFMCD02.bin / new / dev / asm / tbsource / simcc / simccheat.bak < prev    next >
Encoding:
Text File  |  1993-12-21  |  25.2 KB  |  1,279 lines

  1. ***********************************************
  2. *                                             *
  3. *              (C)opyright 1991               *
  4. *                                             *
  5. *             by  Tomi Blinnikka              *
  6. *                                             *
  7. *             SimCity 1.1  Cheat              *
  8. *                                             *
  9. * Version 0.00a - 0.99a  18/4/1991            *
  10. *                                             *
  11. * BUGS: Didn't work through DOS               *
  12. *                                             *
  13. * Version 1.00  19/4/1991                     *
  14. *                                             *
  15. * BUGS: No WB Stuff + some font stuff         *
  16. *                                             *
  17. * Version 1.01  26-27/4/1991                  *
  18. *                                             *
  19. * BUGS: No font stuff + WB Stuff didn't work  *
  20. *       from directories                      *
  21. *                                             *
  22. * Version 1.02  27-29/4/1991                  *
  23. *                                             *
  24. * BUGS: Doesn't work with CShell          *
  25. *                                             *
  26. * Version 1.03  30/4/1991              *
  27. *                                             *
  28. * BUGS: Still little problems with CShell     *
  29. *                                             *
  30. * Version 1.04  01/5/1991              *
  31. *                                             *
  32. * BUGS: Unknown                      *
  33. *                                             *
  34. * Version 1.05  02/5/1991              *
  35. *                                             *
  36. * BUGS: Unknown                      *
  37. *                                             *
  38. * Version 1.06  18/5/1991              *
  39. *                                             *
  40. * BUGS: No PoC DOS support              *
  41. *       No PoC 2,3,4 player support           *
  42. *                                             *
  43. * Version 1.07  27/5/1991              *
  44. *                                             *
  45. * BUGS: No PoC/OilImp/Oil Imperium DOS sup-   *
  46. *    port                      *
  47. *       No PoC 2, 3, 4 player support         *
  48. *                                             *
  49. ***********************************************
  50.  
  51.     INCLUDE    "JMPLibs.i"
  52.     INCLUDE    "exec/types.i"
  53.     INCLUDE    "libraries/dos.i"
  54.     INCLUDE    "libraries/reqbase.i"
  55.     INCLUDE "workbench/startup.i"
  56.     INCLUDE    "intuition.i"
  57.  
  58.     INCLUDE    "dos.xref"
  59.     INCLUDE    "intuition.xref"
  60.     INCLUDE    "exec.xref"
  61.     INCLUDE    "gfx.xref"
  62.  
  63.     INCLUDE    "FH1:Language/WF/SimCC/SimCC2.0.i"
  64.  
  65.     XREF    Help
  66.     XREF    HWin1
  67.  
  68.     XDEF    _IntuitionBase
  69.     XDEF    _GfxBase
  70.     XDEF    MenusOff
  71.     XDEF    MenusOn
  72.     XDEF    Kick
  73.     XDEF    YOffset
  74.     XDEF    Topaz
  75.     XDEF    NoWin
  76.     XDEF    CheckIDCMP
  77.     XDEF    ClearMSGs
  78.     XDEF    Window1IDCMP
  79.     XDEF    wd_RPort
  80.  
  81.         section    SimCityCheat,CODE
  82.  
  83. Start:        move.l    a0,SCCAddress        ;Get SimCity filename
  84.         move.l    d0,SCCLength        ;Get length
  85.  
  86.         move.l    #0,a1
  87.         lib    Exec,FindTask
  88.         move.l    d0,SCCTask
  89.         move.l    d0,a4
  90.  
  91.         move.l    pr_CLI(a4),d0
  92.         bne    Start1
  93.         jsr    WBStart
  94.  
  95. Start1:        openlib    Dos,ShutDown
  96.  
  97.         lib    Dos,Output
  98.         move.l    d0,_stdout
  99.  
  100.         move.l    pr_CLI(a4),d0
  101.         beq    WBInput
  102.  
  103. ;CLI Inputs
  104.  
  105.         move.l    SCCAddress(pc),a0
  106.         move.l    SCCLength(pc),d0
  107.         clr.b    -1(a0,d0.l)        ;add null to end of filename
  108.  
  109.         cmp.b    #160,(a0)
  110.         beq    StartMain
  111.         cmp.b    #$0a,(a0)
  112.         beq    StartMain
  113.         cmp.b    #$0d,(a0)
  114.         beq    StartMain
  115.         tst.b    (a0)
  116.         bne    GotFileName
  117.         jmp    StartMain
  118.  
  119. WBStart:    lea.l    pr_MsgPort(a4),a0
  120.         lib    Exec,WaitPort
  121.         lea.l    pr_MsgPort(a4),a0
  122.         flib    Exec,GetMsg
  123.         move.l    d0,WBMsg
  124. WBStart1:    rts
  125.  
  126. GotFileName:    move.w    #1,Mode
  127.         cmp.b    #"?",(a0)
  128.         beq    CommandLineHelp
  129.         lea.l    FRFile(pc),a1
  130.         jsr    CopyText
  131.         tst.l    d0
  132.         bne    ShutDown
  133.         lea.l    FRFile(pc),a0
  134.         move.l    a0,d1
  135.         move.l    #MODE_OLDFILE,d2
  136.         lib    Dos,Open
  137.         move.l    d0,SCCFile
  138.         bne    DOSCheat
  139.         jsr    SCCNotOpen
  140.         jmp    ShutDown
  141.  
  142. ;Copies filename from one place to another
  143. ;Handles CShell and quotes
  144. ;
  145. ;INPUTS
  146. ;------
  147. ;a0 = Source
  148. ;a1 = Destination
  149. ;
  150. ;RETURNS
  151. ;-------
  152. ;d0 = #$00 if everything OK
  153. ;d0 = #$ff if need to goto ShutDown
  154. ;
  155. ;DEFAULTS
  156. ;--------
  157. ;a0 = SCCAddress from DOS
  158. ;a1 = FRFile     from DOS
  159. ;
  160.  
  161. CopyText:    cmp.b    #'"',(a0)
  162.         beq    Quotes
  163. CopyTText:    move.b    (a0)+,(a1)+
  164.         cmp.b    #'"',(a0)
  165.         beq    Quotes
  166.         cmp.b    #$20,(a0)
  167.         beq    CopyTText1
  168.         cmp.b    #160,(a0)
  169.         beq    CopyTText1
  170.         cmp.b    #$0a,(a0)
  171.         beq    CopyTText1
  172.         cmp.b    #$0d,(a0)
  173.         beq    CopyTText1
  174.         cmp.b    #$00,(a0)
  175.         bne    CopyTText
  176. CopyTText1:    clr.b    (a1)
  177.         clr.l    d0
  178.         rts
  179. Quotes:        add.l    #1,a0
  180. Quotes1:    move.b    (a0)+,(a1)+
  181.         cmp.b    #$00,(a0)
  182.         beq    MismatchQuotes
  183.         cmp.b    #160,(a0)
  184.         beq    MismatchQuotes
  185.         cmp.b    #$0a,(a0)
  186.         beq    MismatchQuotes
  187.         cmp.b    #$0d,(a0)
  188.         beq    MismatchQuotes
  189.         cmp.b    #'"',(a0)
  190.         bne    Quotes1
  191. Quotes2:    clr.b    (a1)
  192.         clr.l    d0
  193.         rts
  194. MismatchQuotes:    print    <"***Break",13,10,"Mismatched quotes",13,10>
  195.         move.l    #$ff,d0
  196.         rts
  197.  
  198. ;WB Inputs, start with opening NIL:
  199.  
  200. WBInput:    lea.l    NILName(pc),a0
  201.         move.l    a0,d1
  202.         move.l    #MODE_NEWFILE,d2
  203.         lib    Dos,Open
  204.         move.l    d0,NILFile
  205.         beq    ShutDown
  206.         move.l    NILFile(pc),_stdout
  207.  
  208.         move.l    #$00,d1
  209.         flib    Dos,CurrentDir
  210.         move.l    d0,OldLock
  211.         move.l    WBMsg(pc),a2
  212.         move.l    sm_NumArgs(a2),ArgsLeft
  213.         move.l    sm_ArgList(a2),ArgList
  214.  
  215. WBInputIn:    sub.l    #1,ArgsLeft
  216.         add.l    #8,ArgList
  217.         cmp.l    #$00,ArgsLeft
  218.         beq    WBInputOut
  219.  
  220. WBInput1:    move.l    ArgList(pc),a0
  221.         move.l    wa_Name(a0),d1
  222.         move.l    d1,a1
  223.         tst.b    (a1)
  224.         bne    WBInput2
  225. WBInput1.1:    move.l    ArgList(pc),a0
  226.         move.l    wa_Lock(a0),d1
  227.         beq    WBInputIn
  228.         lib    Dos,CurrentDir
  229.         move.l    #$00,FRDir
  230.         jmp    WBInputIn
  231.  
  232. WBInput2:    move.l    d1,a0
  233.         lea.l    FRFile(pc),a1
  234. WBInput2.1:    move.b    (a0)+,(a1)+
  235.         cmp.b    #$00,(a0)
  236.         bne    WBInput2.1
  237.         clr.b    (a1)
  238.         jmp    WBInput1.1
  239.  
  240. WBInputOut:    move.l    FRDir(pc),a0
  241.         lea.l    FRPathName(pc),a1
  242.         cmp.b    #$00,(a0)
  243.         beq    WBInputOut1.1
  244. WBInputOut1:    move.b    (a0)+,(a1)+
  245.         cmp.b    #$00,(a0)
  246.         bne    WBInputOut1
  247. WBInputOut1.1:    lea.l    FRFile(pc),a0
  248. WBInputOut2:    move.b    (a0)+,(a1)+
  249.         cmp.b    #$00,(a0)
  250.         bne    WBInputOut2
  251.         clr.b    (a1)
  252.  
  253. StartMain:    move.w    #0,Mode
  254.         moveq.l    #2,d0
  255.         openlib    Req,NoReq
  256.         openlib    Intuition,NoInt
  257.         openlib    Gfx,NoGfx
  258.  
  259. ;test for 2.0
  260.  
  261.         move.l    _IntuitionBase(pc),a6
  262.         move.w    $14(a6),d0
  263.         cmp.w    #36,d0
  264.         bcs    StartWin1
  265.  
  266. ;under 2.0
  267.         move.w    #$01,Kick
  268.         move.l    #$00,a0
  269.         flib    Intuition,LockPubScreen
  270.         move.l    d0,PubScreen
  271.         beq    NoPub
  272.  
  273. ;Get DragBar size
  274.  
  275.         move.w    #40,Win1YSize
  276.         move.l    d0,a0
  277.         move.b    $1e(a0),d0
  278.         move.w    #$00,Win1ZoomY
  279.         move.b    d0,Win1ZoomY+1
  280.         add.b    d0,Gad1YPos+1
  281.         move.b    d0,YOffset
  282.  
  283. ;use new OpenWindow (OpenWindowTagList)
  284.  
  285.         lea.l    NewWindow1(pc),a0
  286.         lea.l    Win1TagList(pc),a1
  287.         flib    Intuition,OpenWindowTagList
  288.         move.l    d0,Window1
  289.         beq    NoWin
  290.         move.l    #$00,a0
  291.         move.l    PubScreen(pc),a1
  292.         flib    Intuition,UnlockPubScreen
  293.         move.l    #$00,PubScreen
  294.         jmp    AddMenu1
  295.  
  296. ;under 1.3
  297.  
  298. StartWin1:    move.w    #$00,Kick
  299.         add.w    #10,Gad1YPos
  300.         lea.l    NewWindow1(pc),a0
  301.         lib    Intuition,OpenWindow
  302.         move.l    d0,Window1
  303.         beq    NoWin
  304.  
  305. ;Add Menus to Window1
  306.  
  307. AddMenu1:    move.l    Window1(pc),a0
  308.         move.l    wd_RPort(a0),Win1RP
  309.         lea.l    Menu1(pc),a1
  310.         flib    Intuition,SetMenuStrip
  311.  
  312. ;Add gadget
  313.  
  314.         lea.l    AmountGad1(pc),a1
  315.         move.l    Window1(pc),a0
  316.         move.l    #$00,d0
  317.         flib    Intuition,AddGadget
  318.  
  319. ;Refresh gad list
  320.  
  321.         lea.l    AmountGad1(pc),a0
  322.         move.l    Window1(pc),a1
  323.         move.l    #$00,a2
  324.         flib    Intuition,RefreshGadgets
  325.  
  326. ;Activate string gad
  327.  
  328.         lea.l    AmountGad1(pc),a0
  329.         move.l    Window1(pc),a1
  330.         move.l    #$00,a2
  331.         flib    Intuition,ActivateGadget
  332.  
  333. Window1IDCMP:    move.l    Window1(pc),a0
  334.         jsr    CheckIDCMP
  335.         cmp.l    #CLOSEWINDOW,d2
  336.         beq    ShutDown
  337.         cmp.l    #VANILLAKEY,d2
  338.         beq    VanillaKeys
  339.         cmp.l    #RAWKEY,d2
  340.         beq    RawKeys
  341.         cmp.l    #MENUPICK,d2
  342.         beq    Win1Menus
  343.         cmp.l    #MOUSEBUTTONS,d2
  344.         beq    ActivateGad
  345.         jmp    Window1IDCMP
  346.  
  347. VanillaKeys:    cmp.w    #$1b,d3
  348.         beq    ShutDown
  349.         cmp.w    #"q",d3
  350.         beq    ShutDown
  351.         cmp.w    #"Q",d3
  352.         beq    ShutDown
  353.         jmp    Window1IDCMP
  354. RawKeys:    cmp.w    #$5f,d3
  355.         beq    Help
  356.         jmp    Window1IDCMP
  357.  
  358. ActivateGad:    cmp.l    #IECODE_LBUTTON,d3
  359.         bne    ActivateGadOut
  360. ActivateGad1:    lea.l    AmountGad1(pc),a0
  361.         move.l    Window1(pc),a1
  362.         move.l    #$00,a2
  363.         lib    Intuition,ActivateGadget
  364. ActivateGadOut:    jmp    Window1IDCMP
  365.  
  366. Win1Menus:    jsr    MenuNull
  367.         cmp.l    #$00,d6
  368.         beq    DoMenu1
  369.         cmp.l    #$01,d6
  370.         beq    DoMenu2
  371.         jmp    Window1IDCMP
  372. DoMenu1:    cmp.l    #$00,d5
  373.         beq    GetN
  374.         cmp.l    #$01,d5
  375.         beq    Help
  376.         cmp.l    #$02,d5
  377.         beq    About
  378.         cmp.l    #$03,d5
  379.         beq    ShutDown
  380.         jmp    Window1IDCMP
  381. DoMenu2:    cmp.l    #$00,d5
  382.         beq    DM2.1
  383.         jmp    Window1IDCMP
  384. DM2.1:        cmp.l    #$00,d4
  385.         beq    DM2.1.1
  386.         cmp.l    #$01,d4
  387.         beq    DM2.1.2
  388.         cmp.l    #$02,d4
  389.         beq    DM2.1.3
  390.         cmp.l    #$03,d4
  391.         beq    DM2.1.4
  392.         cmp.l    #$04,d4
  393.         beq    DM2.1.5
  394.         cmp.l    #$05,d4
  395.         beq    DM2.1.6
  396.         cmp.l    #$06,d4
  397.         beq    DM2.1.7
  398.         cmp.l    #$07,d4
  399.         beq    DM2.1.8
  400.         cmp.l    #$08,d4
  401.         beq    DM2.1.9
  402.         cmp.l    #$09,d4
  403.         beq    DM2.1.10
  404.         jmp    Window1IDCMP
  405. DM2.1.1:    move.w    #$00,Game
  406.         jmp    SimAmount1
  407. DM2.1.2:    move.w    #$01,Game
  408.         jmp    PoCAmount1
  409. DM2.1.3:    move.w    #$02,Game
  410.         jmp    PoCAmount1
  411. DM2.1.4:    move.w    #$03,Game
  412.         jmp    PoCAmount1
  413. DM2.1.5:    move.w    #$04,Game
  414.         jmp    PoCAmount1
  415. DM2.1.6:    move.w    #$05,Game
  416.         jmp    OilAmount1
  417. DM2.1.7:    move.w    #$06,Game
  418.         jmp    OilAmount1
  419. DM2.1.8:    move.w    #$07,Game
  420.         jmp    OilAmount1
  421. DM2.1.9:    move.w    #$08,Game
  422.         jmp    OilAmount1
  423. DM2.1.10:    move.w    #$09,Game
  424.         jmp    RRTAmount1
  425.  
  426. GetN:        cmp.w    #$00,Game
  427.         beq    SimCheckAmount        ;SimCity
  428.         cmp.w    #$01,Game
  429.         beq    PoCCheckAmount        ;Ports of Call
  430.         cmp.w    #$02,Game
  431.         beq    PoCCheckAmount
  432.         cmp.w    #$03,Game
  433.         beq    PoCCheckAmount
  434.         cmp.w    #$04,Game
  435.         beq    PoCCheckAmount
  436.         cmp.w    #$05,Game
  437.         beq    OilCheckAmount        ;Oil Imperium
  438.         cmp.w    #$06,Game
  439.         beq    OilCheckAmount
  440.         cmp.w    #$07,Game
  441.         beq    OilCheckAmount
  442.         cmp.w    #$08,Game
  443.         beq    OilCheckAmount
  444.         cmp.w    #$09,Game
  445.         beq    RRTCheckAmount        ;RailRoad Tycoon
  446.         jmp    Window1IDCMP
  447.  
  448. SimCheckAmount:    lea.l    GetSimName(pc),a5
  449.         cmp.l    #16777216,AmountInt
  450.         bcs    GetN0.1
  451.         move.l    Window1(pc),a0
  452.         move.l    $2e(a0),a0
  453.         lib    Intuition,DisplayBeep
  454. SimAmount1:    move.l    Window1(pc),a0
  455.         lea.l    WindowTitle1(pc),a1
  456.         move.l    #-1,a2
  457.         lib    Intuition,SetWindowTitles
  458.         move.l    Window1(pc),a0
  459.         lea.l    AmountGad1(pc),a1
  460.         lib    Intuition,RemoveGadget
  461.         move.l    #$31363737,AmountBuf
  462.         move.l    #$37323135,AmountBuf+4
  463.         move.w    #$0000,AmountBuf+8
  464.         move.l    #16777215,AmountInt
  465.         jsr    RefreshGad
  466.         tst.l    WBMsg
  467.         bne    SimAmount2
  468.         lea.l    SimDiskName(pc),a0
  469.         lea.l    FRDir(pc),a1
  470.         jsr    CopyText
  471.         lea.l    SimDiskName(pc),a0
  472.         lea.l    FRPathName(pc),a1
  473.         jsr    CopyText
  474. SimAmount2:    jmp    ActivateGad1
  475.  
  476. PoCCheckAmount:    lea.l    GetPoCName(pc),a5
  477.         cmp.l    #$7fffff00,AmountInt
  478.         bcs    GetN0.1
  479.         move.l    Window1(pc),a0
  480.         move.l    $2e(a0),a0
  481.         lib    Intuition,DisplayBeep
  482. PoCAmount1:    move.l    Window1(pc),a0
  483.         lea.l    WindowTitle2(pc),a1
  484.         move.l    #-1,a2
  485.         lib    Intuition,SetWindowTitles
  486.         move.l    Window1(pc),a0
  487.         lea.l    AmountGad1(pc),a1
  488.         flib    Intuition,RemoveGadget
  489.         move.l    #$32313437,AmountBuf
  490.         move.l    #$34383333,AmountBuf+4
  491.         move.w    #$3931,AmountBuf+8
  492.         move.l    #$7ffffeff,AmountInt
  493.         jsr    RefreshGad
  494.         tst.l    WBMsg
  495.         bne    PoCAmount2
  496.         lea.l    PoCDiskName(pc),a0
  497.         lea.l    FRDir(pc),a1
  498.         jsr    CopyText
  499.         lea.l    PoCDiskName(pc),a0
  500.         lea.l    FRPathName(pc),a1
  501.         jsr    CopyText
  502. PoCAmount2:    jmp    ActivateGad1
  503.  
  504. OilCheckAmount:    lea.l    GetOilName(pc),a5
  505.         cmp.l    #2147483648,AmountInt
  506.         bcs    GetN0.1
  507.         move.l    Window1(pc),a0
  508.         move.l    $2e(a0),a0
  509.         lib    Intuition,DisplayBeep
  510. OilAmount1:    move.l    Window1(pc),a0
  511.         lea.l    WindowTitle3(pc),a1
  512.         move.l    #-1,a2
  513.         lib    Intuition,SetWindowTitles
  514.         move.l    Window1(pc),a0
  515.         lea.l    AmountGad1(pc),a1
  516.         flib    Intuition,RemoveGadget
  517.         move.l    #$32313437,AmountBuf
  518.         move.l    #$34383336,AmountBuf+4
  519.         move.w    #$3437,AmountBuf+8
  520.         move.l    #$7fffffff,AmountInt
  521.         jsr    RefreshGad
  522.         tst.l    WBMsg
  523.         bne    OilAmount2
  524.         lea.l    OilDiskName(pc),a0
  525.         lea.l    FRDir(pc),a1
  526.         jsr    CopyText
  527.         lea.l    OilDiskName(pc),a0
  528.         lea.l    FRPathName(pc),a1
  529.         jsr    CopyText
  530. OilAmount2:    jmp    ActivateGad1
  531.  
  532. RRTCheckAmount:    lea.l    GetRRTName(pc),a5
  533.         cmp.l    #32768,AmountInt    ;Max Amount+1
  534.         bcs    GetN0.1
  535.         cmp.b    #$2d,AmountBuf        ;Check for negative number
  536.         bne    RRTAmount0.1
  537.         cmp.l    #$FFFF8001,AmountInt
  538.         bcc    GetN0.1
  539. RRTAmount0.1:    move.l    Window1(pc),a0
  540.         move.l    $2e(a0),a0
  541.         lib    Intuition,DisplayBeep
  542. RRTAmount1:    move.l    Window1(pc),a0
  543.         lea.l    WindowTitle4(pc),a1
  544.         move.l    #-1,a2
  545.         lib    Intuition,SetWindowTitles
  546.         move.l    Window1(pc),a0
  547.         lea.l    AmountGad1(pc),a1
  548.         flib    Intuition,RemoveGadget
  549.         move.l    #$33323736,AmountBuf
  550.         move.w    #$3700,AmountBuf+4
  551.         move.l    #$7fff,AmountInt
  552.         jsr    RefreshGad
  553.         tst.l    WBMsg
  554.         bne    OilAmount2
  555.         lea.l    RRTDiskName(pc),a0
  556.         lea.l    FRDir(pc),a1
  557.         jsr    CopyText
  558.         lea.l    RRTDiskName(pc),a0
  559.         lea.l    FRPathName(pc),a1
  560.         jsr    CopyText
  561. RRTAmount2:    jmp    ActivateGad1
  562.  
  563. GetN0.1:    jsr    MenusOff
  564.         move.l    #FRQABSOLUTEXYM+FRQLOADINGM,d5
  565.         jsr    FileRequester
  566.         tst.l    d0
  567.         beq    GetNOut
  568.  
  569.         lea.l    FRPathName(pc),a1
  570.         move.l    a1,d1
  571.         cmp.b    #$00,(a1)
  572.         beq    GetNOut
  573.         move.l    #MODE_OLDFILE,d2
  574.         lib    Dos,Open
  575.         move.l    d0,SCCFile
  576.         bne    GetN1
  577.         jsr    FileError
  578.         jmp    GetNOut
  579.  
  580. GetN1:        jsr    MenusOff
  581.         move.l    Window1(pc),a0
  582.         lea.l    Cheat?Txt(pc),a1
  583.         lea.l    OKTxt(pc),a2
  584.         lea.l    CancelTxt(pc),a3
  585.         move.l    #$00,d0
  586.         move.l    #$00,d1
  587.         move.l    #$100,d2
  588.         move.l    #$40,d3
  589.         lib    Intuition,AutoRequest
  590.         cmp.l    #00,d0
  591.         beq    GetN1.1
  592.         jsr    TestFile
  593. GetN1.1:    jsr    MenusOn
  594.     
  595. GetN2:        move.l    SCCFile(pc),d1
  596.         lib    Dos,Close
  597.         move.l    #$00,SCCFile
  598.  
  599. GetNOut:    jsr    MenusOn
  600.         jmp    Window1IDCMP
  601.  
  602. RefreshGad:    move.l    Win1RP(pc),a1        ;clear page
  603.         move.l    #$00,d0
  604.         move.l    _GfxBase,a6
  605.         jsr    _LVOSetAPen(a6)
  606.         move.l    Win1RP(pc),a1
  607.         move.l    #$05,d0
  608.         move.l    #$0b,d1
  609.         add.b    YOffset(pc),d1
  610.         move.l    #298,d2
  611.         move.l    #30,d3
  612.         add.b    YOffset,d3
  613.         jsr    _LVORectFill(a6)
  614.         cmp.w    #$9,Game
  615.         bne    RefreshGad1
  616.         move.l    Win1RP(pc),a0
  617.         lea.l    RRTSpecialTxt(pc),a1
  618.         move.l    #$00,d0
  619.         move.l    #$00,d1
  620.         move.b    YOffset(pc),d1
  621.         lib    Intuition,PrintIText
  622. RefreshGad1:    move.l    Window1(pc),a0
  623.         lea.l    AmountGad1(pc),a1
  624.         move.l    #$00,d0
  625.         lib    Intuition,AddGadget
  626.         lea.l    AmountGad1(pc),a0
  627.         move.l    Window1(pc),a1
  628.         move.l    #$00,a2
  629.         flib    Intuition,RefreshGadgets
  630.         rts
  631.  
  632. FileRequester:    move.l    a5,FRTitle
  633.         move.l    d5,FRFlags
  634.         lea.l    FileRequest1(pc),a0
  635.         lib    Req,FileRequester
  636. FROut:        rts
  637.  
  638. About:        jsr    MenusOff
  639.         move.l    Window1(pc),a0
  640.         lea.l    AboutTxt1(pc),a1
  641.         move.l    #$00,a2        ;positive text
  642.         lea.l    OKTxt(pc),a3    ;a bit the wrong way around but...
  643.         move.l    #$00,d0
  644.         move.l    #$00,d1
  645.         move.l    #$134,d2
  646.         move.l    #$50,d3
  647.         lib    Intuition,AutoRequest
  648.         jsr    MenusOn
  649.         jmp    Window1IDCMP
  650.  
  651. Finished:    move.l    Window1(pc),a0
  652.         lea.l    FinitoTxt1(pc),a1
  653.         move.l    #$00,a2        ;positive text
  654.         lea.l    OKTxt(pc),a3    ;a bit the wrong way around but...
  655.         move.l    #$00,d0
  656.         move.l    #$00,d1
  657.         move.l    #$90,d2
  658.         move.l    #$40,d3
  659.         lib    Intuition,AutoRequest
  660.         rts
  661.  
  662. TestFile:    cmp.w    #$00,Game
  663.         beq    TestForCity
  664.         cmp.w    #$01,Game
  665.         beq    TestForPoC
  666.         cmp.w    #$02,Game
  667.         beq    TestForPoC
  668.         cmp.w    #$03,Game
  669.         beq    TestForPoC
  670.         cmp.w    #$04,Game
  671.         beq    TestForPoC
  672.         cmp.w    #$05,Game
  673.         beq    TestForOil
  674.         cmp.w    #$06,Game
  675.         beq    TestForOil
  676.         cmp.w    #$07,Game
  677.         beq    TestForOil
  678.         cmp.w    #$08,Game
  679.         beq    TestForOil
  680.         cmp.w    #$09,Game
  681.         beq    TestForRRT
  682.         rts
  683. TestForCity:    move.l    SCCFile(pc),d1
  684.         move.l    #65,d2
  685.         move.l    #-1,d3
  686.         lib    Dos,Seek
  687.         move.l    SCCFile(pc),d1
  688.         lea.l    FileBuf(pc),a0
  689.         move.l    a0,d2
  690.         move.l    #$04,d3
  691.         flib    Dos,Read
  692.         tst.l    d0
  693.         bne    TestForCity1    
  694.         jsr    FileError
  695.         rts
  696. TestForCity1:    move.l    FileBuf(pc),d0
  697.         cmp.l    #$43495459,d0
  698.         bne    TestForCity2
  699.         jsr    CheatGame
  700.         rts
  701. TestForCity2:    cmp.w    #1,Mode
  702.         beq    TestForCity3
  703.         move.l    Window1(pc),a0
  704.         lea.l    WrongTxt1(pc),a1
  705.         lea.l    OKTxt(pc),a2
  706.         lea.l    CancelTxt(pc),a3
  707.         move.l    #$00,d0
  708.         move.l    #$00,d1
  709.         move.l    #$100,d2
  710.         move.l    #$40,d3
  711.         lib    Intuition,AutoRequest
  712.         cmp.l    #00,d0
  713.         beq    Seek_Out
  714.         jsr    CheatGame
  715.         rts
  716. TestForCity3:    print    <"***Break",13,10,"This is not a SimCity city-file, exiting!",13,10>,_stdout
  717. Seek_Out:    rts    
  718.  
  719. TestForPoC:    move.l    SCCFile(pc),d1
  720.         move.l    #00,d2
  721.         move.l    #-1,d3
  722.         lib    Dos,Seek
  723.         move.l    SCCFile(pc),d1
  724.         lea.l    FileBuf(pc),a0
  725.         move.l    a0,d2
  726.         move.l    #$04,d3
  727.         flib    Dos,Read
  728.         tst.l    d0
  729.         bne    TestForPoC1    
  730.         jsr    FileError
  731.         rts
  732. TestForPoC1:    move.l    FileBuf(pc),d0
  733.         cmp.l    #$52444b20,d0
  734.         bne    TestForCity2
  735.         jsr    CheatGame
  736.         rts
  737.  
  738. TestForOil:    move.l    SCCFile(pc),d1
  739.         move.l    #00,d2
  740.         move.l    #-1,d3
  741.         lib    Dos,Seek
  742.         move.l    SCCFile(pc),d1
  743.         lea.l    FileBuf(pc),a0
  744.         move.l    a0,d2
  745.         move.l    #$0a,d3
  746.         flib    Dos,Read
  747.         tst.l    d0
  748.         bne    TestForOil1    
  749.         jsr    FileError
  750.         rts
  751. TestForOil1:    lea.l    FileBuf(pc),a0
  752.         cmp.l    #"Blac",(a0)
  753.         bne    TestForCity2
  754.         cmp.l    #$6b20476f,4(a0)
  755.         bne    TestForCity2
  756.         cmp.w    #"ld",8(a0)
  757.         bne    TestForCity2
  758.         jsr    CheatGame
  759.         rts
  760.  
  761. TestForRRT:    move.l    SCCFile(pc),d1
  762.         move.l    #13072,d2
  763.         move.l    #-1,d3
  764.         lib    Dos,Seek
  765.         move.l    SCCFile(pc),d1
  766.         lea.l    FileBuf(pc),a0
  767.         move.l    a0,d2
  768.         move.l    #$04,d3
  769.         flib    Dos,Read
  770.         tst.l    d0
  771.         bne    TestForRRT1    
  772.         jsr    FileError
  773.         rts
  774. TestForRRT1:    lea.l    FileBuf(pc),a0
  775.         cmp.l    #$302d342d,(a0)
  776.         bne    TestForCity2
  777.         jsr    CheatGame
  778.         rts
  779.  
  780. CheatGame:    cmp.w    #$00,Game        ;Sim
  781.         beq    CheatCity
  782.         cmp.w    #$01,Game        ;PoC
  783.         bne    CheatGame1
  784.         move.l    #103,d2
  785.         jmp    CheatPoC
  786. CheatGame1:    cmp.w    #$02,Game
  787.         bne    CheatGame2
  788.         move.l    #103,d2
  789.         jmp    CheatPoC
  790. CheatGame2:    cmp.w    #$03,Game
  791.         bne    CheatGame3
  792.         move.l    #103,d2
  793.         jmp    CheatPoC
  794. CheatGame3:    cmp.w    #$04,Game
  795.         bne    CheatGame4
  796.         move.l    #103,d2
  797.         jmp    CheatPoC
  798. CheatGame4:    cmp.w    #$05,Game        ;Oil
  799.         bne    CheatGame5
  800.         move.l    #7495,d2
  801.         jmp    CheatOil
  802. CheatGame5:    cmp.w    #$06,Game
  803.         bne    CheatGame6
  804.         move.l    #8545,d2
  805.         jmp    CheatOil
  806. CheatGame6:    cmp.w    #$07,Game
  807.         bne    CheatGame7
  808.         move.l    #9595,d2
  809.         jmp    CheatOil
  810. CheatGame7:    cmp.w    #$08,Game
  811.         bne    CheatGame8
  812.         move.l    #10645,d2
  813.         jmp    CheatOil
  814. CheatGame8:    cmp.w    #$09,Game        ;RRT
  815.         bne    CheatGame9
  816.         move.l    #14152,d2
  817.         jmp    CheatRRT
  818. CheatGame9:    rts
  819.  
  820.  
  821. CheatCity:    move.l    SCCFile(pc),d1
  822.         move.l    #3108,d2
  823.         move.l    #-1,d3
  824.         lib    Dos,Seek
  825.         move.l    SCCFile(pc),d1
  826.         lea.l    AmountInt(pc),a0
  827.         move.l    a0,d2
  828.         move.l    #$04,d3
  829.         flib    Dos,Write
  830.         cmp.w    #1,Mode
  831.         bne    CheatCity1
  832.         print    <"Your city now has $16, 777 215.",13,10>,_stdout
  833.         rts
  834. CheatCity1:    jsr    Finished
  835.         rts
  836.  
  837. CheatPoC:    move.l    SCCFile(pc),d1
  838.         move.l    #-1,d3
  839.         lib    Dos,Seek
  840.         move.l    SCCFile(pc),d1
  841.         lea.l    AmountInt(pc),a0
  842.         move.l    a0,d2
  843.         move.l    #$04,d3
  844.         flib    Dos,Write
  845.         jsr    Finished
  846.         rts
  847.  
  848. CheatOil:    move.l    SCCFile(pc),d1
  849.         move.l    #-1,d3
  850.         lib    Dos,Seek
  851.         move.l    SCCFile(pc),d1
  852.         lea.l    AmountInt(pc),a0
  853.         move.l    a0,d2
  854.         move.l    #$04,d3
  855.         flib    Dos,Write
  856.         jsr    Finished
  857.         rts
  858.  
  859. CheatRRT:    move.l    SCCFile(pc),d1
  860.         move.l    #-1,d3
  861.         lib    Dos,Seek
  862.         move.l    SCCFile(pc),d1
  863.         move.l    AmountInt(pc),d2
  864.         swap    d2
  865.         move.l    d2,AmountInt
  866.         lea.l    AmountInt(pc),a0
  867.         move.l    a0,d2
  868.         move.l    #$02,d3
  869.         flib    Dos,Write
  870.         jsr    Finished
  871.         rts
  872.  
  873. DOSCheat:    jsr    TestFile
  874.         jmp    ShutDown
  875.  
  876. NoReq:        print    <"You need req.library ver.2.5 or higher!",13,10>,_stdout
  877.         jmp    ShutDown
  878. NoInt:        print    <"Can't open intuition.library!",13,10>,_stdout
  879.         jmp    ShutDown
  880. NoGfx:        print    <"Can't open graphics.library!",13,10>,_stdout
  881.         jmp    ShutDown
  882. NoWin:        print    <"Can't open Window!",13,10>,_stdout
  883.         jmp    ShutDown
  884. NoPub:        print    <"Can't lock PubScreen!",13,10>,_stdout
  885.         jmp    ShutDown
  886.  
  887. ShutDown:    tst.l    PubScreen
  888.         beq    ShutDown9000
  889.         move.l    #$00,a0
  890.         move.l    PubScreen(pc),a1
  891.         lib    Intuition,UnlockPubScreen
  892.         move.l    #$00,PubScreen
  893.  
  894. ShutDown9000:    tst.l    SCCFile
  895.         beq    ShutDown8000
  896.         move.l    SCCFile(pc),d1
  897.         lib    Dos,Close
  898.         move.l    #$00,SCCFile
  899. ShutDown8000:    tst.l    NILFile
  900.         beq    ShutDown6000
  901.         move.l    NILFile(pc),d1
  902.         lib    Dos,Close
  903.         move.l    #$00,NILFile
  904. ShutDown6000:    tst.l    HWin1
  905.         beq    ShutDown5000
  906.         move.l    HWin1(pc),a0
  907.         jsr    ClearMSGs
  908.         move.l    #$00,HWin1
  909. ShutDown5000:    tst.l    Window1
  910.         beq    ShutDown4000
  911.         move.l    Window1(pc),a0
  912.         lib    Intuition,ClearMenuStrip
  913.         move.l    Window1(pc),a0
  914.         jsr    ClearMSGs
  915.         move.l    #$00,Window1
  916.         
  917. ShutDown4000:
  918. ShutDown3000:    tst.l    _ReqBase
  919.         beq    ShutDown2001
  920.         lea.l    FileRequest1(pc),a0
  921.         lib    Req,PurgeFiles
  922.  
  923. ;Check if launched from WB
  924.  
  925. ShutDown2001:    move.l    SCCTask,a4
  926.         move.l    pr_CLI(a4),d0
  927.         beq    ShutDownWB
  928.  
  929. ShutDown2000:    closlib    Dos
  930.         closlib    Req
  931.         closlib    Intuition
  932.         closlib    Gfx
  933.  
  934. ShutDownOut:    move.l    #RETURN_OK,d0
  935.         rts
  936.  
  937. ShutDownWB:    move.l    SCCTask(pc),a4
  938.         lib    Exec,Forbid
  939.         move.l    WBMsg(pc),a1
  940.         flib    Exec,ReplyMsg
  941.         move.l    OldLock(pc),d1
  942.         lib    Dos,CurrentDir
  943.         jmp    ShutDown2000
  944.  
  945.         INCLUDE    "FH1:Language/WF/SimCC/DosError.i"
  946.         INCLUDE    "FH1:Language/WF/SimCC/SCCCommandLineHelp.i"
  947.     
  948. MenusOn:    lea.l    Menu1(pc),a1
  949.         move.l    Window1(pc),a0
  950.         lib    Intuition,SetMenuStrip
  951.         rts
  952.  
  953. MenusOff:    move.l    Window1(pc),a0
  954.         lib    Intuition,ClearMenuStrip
  955.         rts
  956.  
  957. MenuNull:    move.l    d3,d6    
  958.                 
  959.         ror.l    #5,d6    
  960.         lsr.l    #8,d6    
  961.         lsr.l    #8,d6
  962.         lsr.l    #8,d6
  963.         lsr.l    #3,d6
  964.  
  965.         move.l    d3,d5
  966.  
  967.         ror.l    #5,d5    
  968.         ror.l    #6,d5    
  969.         lsr.l    #8,d5
  970.         lsr.l    #8,d5
  971.         lsr.l    #8,d5
  972.         lsr.l    #2,d5
  973.                 
  974.         move.l    #$00,d4
  975.         move.w    d3,d4
  976.         lsr.l    #5,d4
  977.         lsr.l    #6,d4
  978.         rts
  979.  
  980. CheckIDCMP:    move.l    $4,a6            ;made this a SubRoutine...
  981.         move.l    $56(a0),a2        ;Give it the window structure in a0
  982.         move.l    #0,d1
  983.         move.b    $0f(a2),d1
  984.         move.l    #0,d0
  985.         bset.l    d1,d0
  986.         jsr    _LVOWait(a6)    
  987.     
  988. GetMsg1:    move.l    a2,a0    
  989.         jsr    _LVOGetMsg(a6)
  990.         tst.l    d0
  991.         beq    GetMsg2
  992.     
  993.         move.l    d0,a1 
  994.         move.l    $14(a1),d2        ;answers with Class in d2,
  995.         move.w    $18(a1),d3        ;Code in d3 and
  996.         move.w    $1a(a1),a4        ;Qualifier in a4
  997.         move.l    $1c(a1),a5        ;IAddress in a5
  998.         jsr    _LVOReplyMsg(a6)
  999.         jmp    GetMsg1
  1000. GetMsg2:    move.l    #-1,d0
  1001.         rts
  1002.  
  1003. ClearMSGs:    move.l    a0,d0            ;Give it the window structure in a0
  1004.         tst.l    d0
  1005.         beq    ClearMsg3
  1006.         move.l    a0,a3
  1007.         lib    Exec,Forbid
  1008.         move.l    $56(a3),a2
  1009. ClearMsg1:    move.l    a2,a0    
  1010.         lib    Exec,GetMsg
  1011.         tst.l    d0
  1012.         beq    ClearMsg2
  1013.         move.l    d0,a1 
  1014.         flib    Exec,ReplyMsg
  1015.         jmp    ClearMsg1
  1016. ClearMsg2:    move.l    a3,a0
  1017.         lib    Intuition,CloseWindow
  1018.         lib    Exec,Permit
  1019. ClearMsg3:    rts
  1020.  
  1021.         ds.l    0
  1022.  
  1023. ;--------------------Structures------------------
  1024.  
  1025. ;Display stuff
  1026.  
  1027. Window1        dc.l    0
  1028. Win1RP        dc.l    0
  1029. PubScreen    dc.l    0
  1030. YOffset        dc.b    8,0
  1031.  
  1032. ;Library stuff (well what's needed anymore)
  1033.  
  1034.         libnames
  1035.  
  1036. ;Task stuff
  1037.  
  1038. SCCTask        dc.l    0
  1039.  
  1040. ;WB Stuff
  1041.  
  1042. WBMsg        dc.l    0
  1043. ArgList        dc.l    0
  1044. ArgsLeft    dc.l    0
  1045. OldLock        dc.l    0
  1046.  
  1047. ;File stuff
  1048.  
  1049. _stdout        dc.l    0
  1050. SCCAddress    dc.l    0
  1051. SCCLength    dc.l    0
  1052. SCCFile        dc.l    0
  1053. FileBuf        dc.l    $ffffffff
  1054. NILName:    dc.b    "NIL:",0
  1055.         dc.b    "VER$: SimCheat 1.07",0
  1056.         ds.l    0
  1057. NILFile:    dc.l    0
  1058.  
  1059. ;req.lib stuff/requester stuff
  1060.  
  1061.         INCLUDE    "FH1:Language/WF/SimCC/SCCFileRequester.i"
  1062.  
  1063. ;Other stuff XIV
  1064.  
  1065. Mode        dc.w    0        ;0=Intuition, 1=dos
  1066. Kick        dc.w    0        ;0=1.3, 1=2.0+
  1067.  
  1068. ;0 = SimCity
  1069. ;
  1070. ;1 = PoC Player #1
  1071. ;2 = PoC Player #2
  1072. ;3 = PoC Player #3
  1073. ;4 = PoC Player #4
  1074. ;
  1075. ;5 = Oil Player #1
  1076. ;6 = Oil Player #2
  1077. ;7 = Oil Player #3
  1078. ;8 = Oil Player #4
  1079. ;9 = RailRoad Tycoon
  1080.  
  1081. Game        dc.w    0
  1082.  
  1083. ;Texts, Part I
  1084.  
  1085. SCCName        dc.b    "SimCity 1.1 cheat by Tomi Blinnikka",0
  1086. PoCName        dc.b    "Ports of Call cheat by Tomi Blinnikka",0
  1087. GetSimName    dc.b    "Get SimCity city filename...",0
  1088. GetPoCName    dc.b    "Get Ports of Call game filename...",0
  1089. GetOilName    dc.b    "Get Oil Imperium game filename...",0
  1090. GetRRTName    dc.b    "Get RailRoad Tycoon game filename...",0
  1091. PositiveText1    dc.b    "Yes",0
  1092. NegativeText1    dc.b    "No",0
  1093.         ds.l    0
  1094.  
  1095. ;Font thing
  1096.  
  1097. Topaz        dc.l    FontName
  1098.         dc.w    8
  1099.         dc.b    0
  1100.         dc.b    0
  1101. FontName    dc.b    "topaz.font",0
  1102.         ds.l    0
  1103.  
  1104. ;New screen & new window structures
  1105.  
  1106. NewWindow1    dc.w    200,31            ;X,Y POS
  1107.         dc.w    302            ;WIDTH
  1108. Win1YSize    dc.w    43            ;HEIGHT
  1109.         dc.b    0,1            ;PENS
  1110.         dc.l    MOUSEBUTTONS+CLOSEWINDOW+VANILLAKEY+RAWKEY+MENUPICK    ;IDCMP FLAGS
  1111.         dc.l    WINDOWDRAG+WINDOWDEPTH+WINDOWCLOSE+ACTIVATE    ;FLAGS
  1112.         dc.l    0,0            ;GADGETS, CHECKMARK
  1113.         dc.l    WindowTitle1        ;TITLE
  1114.         dc.l    0            ;SCREEN ADDRESS
  1115.         dc.l    0            ;BITMAP            
  1116.         dc.w    192
  1117.         dc.w    11,300,43        ;MINIMUM SIZE
  1118.         dc.w    WBENCHSCREEN        ;TYPE
  1119.  
  1120. Win1TagList    dc.l    WA_AutoAdjust,0
  1121.         dc.l    WA_InnerWidth,300
  1122.         dc.l    WA_InnerHeight,30
  1123.         dc.l    WA_Zoom,Win1ZoomXY
  1124.         dc.l    TAG_DONE,0
  1125.  
  1126. Win1ZoomXY    dc.w    0,20,192
  1127. Win1ZoomY    dc.w    11
  1128.  
  1129. WindowTitle1    dc.b    "SimCity cheat",0
  1130. WindowTitle2    dc.b    "Ports of Call cheat",0
  1131. WindowTitle3    dc.b    "Oil Imperium cheat",0
  1132. WindowTitle4    dc.b    "RailRoad Tycoon cheat",0
  1133.         ds.l    0
  1134.  
  1135. ;Gadget structures
  1136.  
  1137.         INCLUDE "FH1:Language/WF/SimCC/SCCGads.i"
  1138.         
  1139. ;Now for all the imagery and borders etc.
  1140.  
  1141. GadgetBorder1    dc.w    -1        ;Initial offsets from the origin
  1142.         dc.w    -2        ;LeftEdge and TopEdge
  1143.         dc.b    1,2        ;Pens
  1144.         dc.b    1        ;Draw Mode
  1145.         dc.b    5        ;Line Count (XY)
  1146.         dc.l    BorderXY1    ;XY's
  1147.         dc.l    0        ;Next Border
  1148.         dc.b    0
  1149.         ds.l    0
  1150. BorderXY1    dc.w    0,0
  1151.         dc.w    90,0        
  1152.         dc.w    90,11
  1153.         dc.w    0,11
  1154.         dc.w    0,0
  1155.         dc.b    0
  1156.         ds.l    0
  1157.  
  1158. ;Menus
  1159.  
  1160.         INCLUDE    "FH1:Language/WF/SimCC/SCCMenus.i"
  1161.  
  1162. ;Texts, Part II
  1163.  
  1164. AboutTxt1:    dc.b    3,1            ;PENS
  1165.         dc.w    0            ;MODE
  1166.         dc.w    10,10            ;LEFT+TOPEDGE
  1167.         dc.l    Topaz            ;FONT
  1168.         dc.l    AboutText1        ;TEXT
  1169.         dc.l    AboutTxt2        ;NEXTTEXT
  1170.         ds.l    0
  1171.         
  1172. AboutTxt2:    dc.b    3,1            ;PENS
  1173.         dc.w    4            ;MODE
  1174.         dc.w    10,20            ;LEFT+TOPEDGE
  1175.         dc.l    Topaz            ;FONT
  1176.         dc.l    AboutText2        ;TEXT
  1177.         dc.l    AboutTxt3        ;NEXTTEXT
  1178.         ds.l    0
  1179.  
  1180. AboutTxt3:    dc.b    3,1            ;PENS
  1181.         dc.w    4            ;MODE
  1182.         dc.w    10,30            ;LEFT+TOPEDGE
  1183.         dc.l    Topaz            ;FONT
  1184.         dc.l    AboutText3        ;TEXT
  1185.         dc.l    AboutTxt4        ;NEXTTEXT
  1186.         ds.l    0
  1187.  
  1188. AboutTxt4:    dc.b    3,1            ;PENS
  1189.         dc.w    4            ;MODE
  1190.         dc.w    10,50            ;LEFT+TOPEDGE
  1191.         dc.l    Topaz            ;FONT
  1192.         dc.l    AboutText4        ;TEXT
  1193.         dc.l    0            ;NEXTTEXT
  1194.         ds.l    0
  1195.  
  1196. AboutText1:    dc.b    "SimCity 1.1 cheat program v.1.07",0
  1197.         ds.l    0                          
  1198. AboutText2:    dc.b    "               by",0
  1199.         ds.l    0
  1200. AboutText3:    dc.b    "         Tomi Blinnikka",0
  1201.         ds.l    0
  1202. AboutText4:    dc.b    "        (C)opyright 1991",0
  1203.         ds.l    0
  1204.  
  1205. FinitoTxt1:    dc.b    3,1            ;PENS
  1206.         dc.w    4            ;MODE
  1207.         dc.w    10,20            ;LEFT+TOPEDGE
  1208.         dc.l    Topaz            ;FONT
  1209.         dc.l    FinitoText1        ;TEXT
  1210.         dc.l    0            ;NEXTTEXT
  1211.         ds.l    0
  1212. FinitoText1:    dc.b    "Finished.",0
  1213.         ds.l    0
  1214.  
  1215. OKTxt:        dc.b    3,1            ;PENS
  1216.         dc.w    0            ;MODE
  1217.         dc.w    6,3            ;LEFT+TOPEDGE
  1218.         dc.l    Topaz            ;FONT
  1219.         dc.l    OKText1            ;TEXT
  1220.         dc.l    0            ;NEXTTEXT
  1221.         ds.l    0
  1222. OKText1:    dc.b    "OK",0
  1223.         ds.l    0
  1224. CancelTxt:    dc.b    3,1            ;PENS
  1225.         dc.w    0            ;MODE
  1226.         dc.w    6,3            ;LEFT+TOPEDGE
  1227.         dc.l    Topaz            ;FONT
  1228.         dc.l    CancelText1        ;TEXT
  1229.         dc.l    0            ;NEXTTEXT
  1230.         ds.l    0
  1231. CancelText1:    dc.b    "CANCEL!",0
  1232.         ds.l    0
  1233.  
  1234. Cheat?Txt:    dc.b    3,1            ;PENS
  1235.         dc.w    4            ;MODE
  1236.         dc.w    10,10            ;LEFT+TOPEDGE
  1237.         dc.l    Topaz            ;FONT
  1238.         dc.l    CheatText1        ;TEXT
  1239.         dc.l    0            ;NEXTTEXT
  1240.         ds.l    0
  1241.  
  1242. CheatText1:    dc.b    "Cheat on this file?",0
  1243.         ds.l    0                          
  1244.  
  1245. WrongTxt1:    dc.b    3,1            ;PENS
  1246.         dc.w    4            ;MODE
  1247.         dc.w    10,10            ;LEFT+TOPEDGE
  1248.         dc.l    Topaz            ;FONT
  1249.         dc.l    FWrongText1        ;TEXT
  1250.         dc.l    0            ;NEXTTEXT
  1251.         ds.l    0
  1252.  
  1253. FWrongText1:    dc.b    "Incorrect file! Try anyway?",0
  1254.         ds.l    0
  1255.  
  1256. Win1Txt1:    dc.b    1,2            ;PENS
  1257.         dc.w    0            ;MODE
  1258.         dc.w    -16,-18            ;LEFT+TOPEDGE
  1259.         dc.l    Topaz            ;FONT
  1260.         dc.l    Win1Text1        ;TEXT
  1261.         dc.l    0            ;NEXTTEXT
  1262.         ds.l    0
  1263. Win1Text1:    dc.b    "Amount of money?",0
  1264.         ds.l    0
  1265.  
  1266. RRTSpecialTxt:    dc.b    1,2            ;PENS
  1267.         dc.w    0            ;MODE
  1268.         dc.w    205,21            ;LEFT+TOPEDGE
  1269.         dc.l    Topaz            ;FONT
  1270.         dc.l    RRTSText1        ;TEXT
  1271.         dc.l    0            ;NEXTTEXT
  1272.         ds.l    0
  1273. RRTSText1:    dc.b    "000",0
  1274.         ds.l    0
  1275.  
  1276. ;        section    SCC_ChipStuff,DATA,CHIP
  1277.  
  1278.         END
  1279.