home *** CD-ROM | disk | FTP | other *** search
/ ticalc.org / ticalc_org_rev_b.iso / archives / 82 / asm / source / crash / hours.asm < prev    next >
Encoding:
Assembly Source File  |  2001-07-01  |  7.7 KB  |  533 lines

  1. .include crash82.inc
  2. .db "School Rooms, Jesse Keane",0
  3. #DEFINE    OneRoom    $871A
  4. #DEFINE TwoRoom    $850F
  5. #DEFINE    ThreeRoom    $8787
  6. #DEFINE    FourRoom    $842D
  7. #DEFINE    FiveRoom    $860C
  8. #DEFINE    SixRoom    $8490
  9. #DEFINE    SevenRoom    $887F
  10. #DEFINE    EightRoom    $8321
  11. StartOfProggie:
  12.     ROM_CALL(CLEARLCD)
  13.     ld    hl,$0000
  14.     ld    (CURSOR_POS),hl
  15.     ld    hl,Hours
  16.     res    3,(iy+05)
  17.     ROM_CALL(D_ZT_STR)
  18.     ld    hl,$0800
  19.     ld    (CURSOR_POS),hl
  20.     ld    hl,(OneRoom)
  21.     ROM_CALL(D_HL_DECI)
  22.     ld    hl,$0801
  23.     ld    (CURSOR_POS),hl
  24.     ld    hl,(TwoRoom)
  25.     ROM_CALL(D_HL_DECI)
  26.     ld    hl,$0802
  27.     ld    (CURSOR_POS),hl
  28.     ld    hl,(ThreeRoom)
  29.     ROM_CALL(D_HL_DECI)
  30.     ld    hl,$0803
  31.     ld    (CURSOR_POS),hl
  32.     ld    hl,(FourRoom)
  33.     ROM_CALL(D_HL_DECI)
  34.     ld    hl,$0804
  35.     ld    (CURSOR_POS),hl
  36.     ld    hl,(FiveRoom)
  37.     ROM_CALL(D_HL_DECI)
  38.     ld    hl,$0805
  39.     ld    (CURSOR_POS),hl
  40.     ld    hl,(SixRoom)
  41.     ROM_CALL(D_HL_DECI)
  42.     ld    hl,$0806
  43.     ld    (CURSOR_POS),hl
  44.     ld    hl,(SevenRoom)
  45.     ROM_CALL(D_HL_DECI)
  46.     ld    hl,$0807
  47.     ld    (CURSOR_POS),hl
  48.     ld    hl,(EightRoom)
  49.     ROM_CALL(D_HL_DECI)
  50. Wait_4_Key:
  51.     call GET_KEY
  52.     cp    $09
  53.     jp    z,MainMenu
  54.     jr    Wait_4_Key
  55. Hours:
  56. .db "1st Hour        "
  57. .db "2nd Hour        "
  58. .db "3rd Hour        "
  59. .db "4th Hour        "
  60. .db "5th Hour        "
  61. .db "6th Hour        "
  62. .db "7th Hour        "
  63. .db "8th Hour", 0
  64. MainMenu:
  65.     ROM_CALL(CLEARLCD)
  66.     ld    hl,Main_Menu
  67.     call Menu
  68.     cp    1
  69.     jp    z,Edit1
  70.     cp    2
  71.     jp    z,Edit2
  72.     cp    3
  73.     jp    z,Edit3
  74.     cp    4
  75.     jp    z,Edit4
  76.     cp    5
  77.     jp    z,Edit5
  78.     cp    6
  79.     jp    z,Edit6
  80.     cp    7
  81.     jp    z,Edit7
  82.     cp    8
  83.     jp    z,Edit8
  84.     ret
  85. .include menurout.asm
  86. Main_Menu:
  87. .db 9
  88. .db "   Choose One",0
  89. .db "Edit Hour One",0
  90. .db "Edit Hour Two",0
  91. .db "Edit Hour Three",0
  92. .db "Edit Hour Four",0
  93. .db "Edit Hour Five",0
  94. .db "Edit Hour Six",0
  95. .db "Edit Hour Seven",0
  96. .db "Edit Hour Eight",0
  97. .db "Return to CrASH",0
  98.  
  99. Edit1:
  100.     ROM_CALL(CLEARLCD)
  101. LoopOne:
  102.     ld    hl,$0800
  103.     ld    (CURSOR_POS),hl
  104.     ld    hl,(OneRoom)
  105.     ROM_CALL(D_HL_DECI)
  106.     ld    hl,$0000
  107.     ld    (CURSOR_POS),hl
  108.     ld    hl,RoomNum
  109.     ROM_CALL(D_ZT_STR)
  110. Loop:
  111.     call GET_KEY
  112.     cp    $04
  113.     jr    z,OneUp
  114.     cp    $01
  115.     jr    z,OneDown
  116.     cp    $03
  117.     jr    z,OneRight
  118.     cp    $02
  119.     jp    z,OneLeft
  120.     cp    $09
  121.     jp    z,StartOfProggie
  122.     jr    Loop
  123. OneUp:
  124.     ld    hl,(OneRoom)
  125.     inc    hl
  126.     ld    (OneRoom),hl
  127.     jr    LoopOne
  128. OneDown:
  129.     ld    hl,(OneRoom)
  130.     dec    hl
  131.     ld    (OneRoom),hl
  132.     jr    LoopOne
  133. OneRight:
  134.     ld    hl,(OneRoom)
  135.     ld    a,10
  136. LoopOneRight:
  137.     inc    hl
  138.     dec    a
  139.     cp    0
  140.     ld    (OneRoom),hl
  141.     jp    z,LoopOne
  142.     jr    LoopOneRight
  143. OneLeft:
  144.     ld    hl,(OneRoom)
  145.     ld    a,10
  146. LoopOneLeft:
  147.     dec    hl
  148.     dec    a
  149.     cp    0
  150.     ld    (OneRoom),hl
  151.     jp    z,LoopOne
  152.     jr    LoopOneLeft
  153. Edit2:
  154.     ROM_CALL(CLEARLCD)
  155. LoopTwo:
  156.     ld    hl,$0800
  157.     ld    (CURSOR_POS),hl
  158.     ld    hl,(TwoRoom)
  159.     ROM_CALL(D_HL_DECI)
  160.     ld    hl,$0000
  161.     ld    (CURSOR_POS),hl
  162.     ld    hl,RoomNum
  163.     ROM_CALL(D_ZT_STR)
  164. Loop2:
  165.     call GET_KEY
  166.     cp    $04
  167.     jr    z,TwoUp
  168.     cp    $01
  169.     jr    z,TwoDown
  170.     cp    $03
  171.     jr    z,TwoRight
  172.     cp    $02
  173.     jp    z,TwoLeft
  174.     cp    $09
  175.     jp    z,StartOfProggie
  176.     jr    Loop2
  177. TwoUp:
  178.     ld    hl,(TwoRoom)
  179.     inc    hl
  180.     ld    (TwoRoom),hl
  181.     jr    LoopTwo
  182. TwoDown:
  183.     ld    hl,(TwoRoom)
  184.     dec    hl
  185.     ld    (TwoRoom),hl
  186.     jr    LoopTwo
  187. TwoRight:
  188.     ld    hl,(TwoRoom)
  189.     ld    a,10
  190. LoopTwoRight:
  191.     inc    hl
  192.     dec    a
  193.     cp    0
  194.     ld    (TwoRoom),hl
  195.     jp    z,LoopTwo
  196.     jr    LoopTwoRight
  197. TwoLeft:
  198.     ld    hl,(TwoRoom)
  199.     ld    a,10
  200. LoopTwoLeft:
  201.     dec    hl
  202.     dec    a
  203.     cp    0
  204.     ld    (TwoRoom),hl
  205.     jp    z,LoopTwo
  206.     jr    LoopTwoLeft
  207. Edit3:
  208.     ROM_CALL(CLEARLCD)
  209. LoopThree:
  210.     ld    hl,$0800
  211.     ld    (CURSOR_POS),hl
  212.     ld    hl,(ThreeRoom)
  213.     ROM_CALL(D_HL_DECI)
  214.     ld    hl,$0000
  215.     ld    (CURSOR_POS),hl
  216.     ld    hl,RoomNum
  217.     ROM_CALL(D_ZT_STR)
  218. Loop3:
  219.     call GET_KEY
  220.     cp    $04
  221.     jr    z,ThreeUp
  222.     cp    $01
  223.     jr    z,ThreeDown
  224.     cp    $03
  225.     jp    z,ThreeRight
  226.     cp    $02
  227.     jp    z,ThreeLeft
  228.     cp    $09
  229.     jp    z,StartOfProggie
  230.     jr    Loop3
  231. ThreeUp:
  232.     ld    hl,(ThreeRoom)
  233.     inc    hl
  234.     ld    (ThreeRoom),hl
  235.     jr    LoopThree
  236. ThreeDown:
  237.     ld    hl,(ThreeRoom)
  238.     dec    hl
  239.     ld    (ThreeRoom),hl
  240.     jr    LoopThree
  241. ThreeRight:
  242.     ld    hl,(ThreeRoom)
  243.     ld    a,10
  244. LoopThreeRight:
  245.     inc    hl
  246.     dec    a
  247.     cp    0
  248.     ld    (ThreeRoom),hl
  249.     jp    z,LoopThree
  250.     jr    LoopThreeRight
  251. ThreeLeft:
  252.     ld    hl,(ThreeRoom)
  253.     ld    a,10
  254. LoopThreeLeft:
  255.     dec    hl
  256.     dec    a
  257.     cp    0
  258.     ld    (ThreeRoom),hl
  259.     jp    z,LoopThree
  260.     jr    LoopThreeLeft
  261. Edit4:
  262.     ROM_CALL(CLEARLCD)
  263. LoopFour:
  264.     ld    hl,$0800
  265.     ld    (CURSOR_POS),hl
  266.     ld    hl,(FourRoom)
  267.     ROM_CALL(D_HL_DECI)
  268.     ld    hl,$0000
  269.     ld    (CURSOR_POS),hl
  270.     ld    hl,RoomNum
  271.     ROM_CALL(D_ZT_STR)
  272. Loop4:
  273.     call GET_KEY
  274.     cp    $04
  275.     jr    z,FourUp
  276.     cp    $01
  277.     jr    z,FourDown
  278.     cp    $03
  279.     jp    z,FourRight
  280.     cp    $02
  281.     jp    z,FourLeft
  282.     cp    $09
  283.     jp    z,StartOfProggie
  284.     jr    Loop4
  285. FourUp:
  286.     ld    hl,(FourRoom)
  287.     inc    hl
  288.     ld    (FourRoom),hl
  289.     jr    LoopFour
  290. FourDown:
  291.     ld    hl,(FourRoom)
  292.     dec    hl
  293.     ld    (FourRoom),hl
  294.     jr    LoopFour
  295. FourRight:
  296.     ld    hl,(FourRoom)
  297.     ld    a,10
  298. LoopFourRight:
  299.     inc    hl
  300.     dec    a
  301.     cp    0
  302.     ld    (FourRoom),hl
  303.     jp    z,LoopFour
  304.     jr    LoopFourRight
  305. FourLeft:
  306.     ld    hl,(FourRoom)
  307.     ld    a,10
  308. LoopFourLeft:
  309.     dec    hl
  310.     dec    a
  311.     cp    0
  312.     ld    (FourRoom),hl
  313.     jp    z,LoopFour
  314.     jr    LoopFourLeft
  315. Edit5:
  316.     ROM_CALL(CLEARLCD)
  317. LoopFive:
  318.     ld    hl,$0800
  319.     ld    (CURSOR_POS),hl
  320.     ld    hl,(FiveRoom)
  321.     ROM_CALL(D_HL_DECI)
  322.     ld    hl,$0000
  323.     ld    (CURSOR_POS),hl
  324.     ld    hl,RoomNum
  325.     ROM_CALL(D_ZT_STR)
  326. Loop5:
  327.     call GET_KEY
  328.     cp    $04
  329.     jr    z,FiveUp
  330.     cp    $01
  331.     jr    z,FiveDown
  332.     cp    $03
  333.     jp    z,FiveRight
  334.     cp    $02
  335.     jp    z,FiveLeft
  336.     cp    $09
  337.     jp    z,StartOfProggie
  338.     jr    Loop5
  339. FiveUp:
  340.     ld    hl,(FiveRoom)
  341.     inc    hl
  342.     ld    (FiveRoom),hl
  343.     jr    LoopFive
  344. FiveDown:
  345.     ld    hl,(FiveRoom)
  346.     dec    hl
  347.     ld    (FiveRoom),hl
  348.     jr    LoopFive
  349. FiveRight:
  350.     ld    hl,(FiveRoom)
  351.     ld    a,10
  352. LoopFiveRight:
  353.     inc    hl
  354.     dec    a
  355.     cp    0
  356.     ld    (FiveRoom),hl
  357.     jp    z,LoopFive
  358.     jr    LoopFiveRight
  359. FiveLeft:
  360.     ld    hl,(FiveRoom)
  361.     ld    a,10
  362. LoopFiveLeft:
  363.     dec    hl
  364.     dec    a
  365.     cp    0
  366.     ld    (FiveRoom),hl
  367.     jp    z,LoopFive
  368.     jr    LoopFiveLeft
  369. Edit6:
  370.     ROM_CALL(CLEARLCD)
  371. LoopSix:
  372.     ld    hl,$0800
  373.     ld    (CURSOR_POS),hl
  374.     ld    hl,(SixRoom)
  375.     ROM_CALL(D_HL_DECI)
  376.     ld    hl,$0000
  377.     ld    (CURSOR_POS),hl
  378.     ld    hl,RoomNum
  379.     ROM_CALL(D_ZT_STR)
  380. Loop6:
  381.     call GET_KEY
  382.     cp    $04
  383.     jr    z,SixUp
  384.     cp    $01
  385.     jr    z,SixDown
  386.     cp    $03
  387.     jp    z,SixRight
  388.     cp    $02
  389.     jp    z,SixLeft
  390.     cp    $09
  391.     jp    z,StartOfProggie
  392.     jr    Loop6
  393. SixUp:
  394.     ld    hl,(SixRoom)
  395.     inc    hl
  396.     ld    (SixRoom),hl
  397.     jr    LoopSix
  398. SixDown:
  399.     ld    hl,(SixRoom)
  400.     dec    hl
  401.     ld    (SixRoom),hl
  402.     jr    LoopSix
  403. SixRight:
  404.     ld    hl,(SixRoom)
  405.     ld    a,10
  406. LoopSixRight:
  407.     inc    hl
  408.     dec    a
  409.     cp    0
  410.     ld    (SixRoom),hl
  411.     jp    z,LoopSix
  412.     jr    LoopSixRight
  413. SixLeft:
  414.     ld    hl,(SixRoom)
  415.     ld    a,10
  416. LoopSixLeft:
  417.     dec    hl
  418.     dec    a
  419.     cp    0
  420.     ld    (SixRoom),hl
  421.     jp    z,LoopSix
  422.     jr    LoopSixLeft
  423. Edit7:
  424.     ROM_CALL(CLEARLCD)
  425. LoopSeven:
  426.     ld    hl,$0800
  427.     ld    (CURSOR_POS),hl
  428.     ld    hl,(SevenRoom)
  429.     ROM_CALL(D_HL_DECI)
  430.     ld    hl,$0000
  431.     ld    (CURSOR_POS),hl
  432.     ld    hl,RoomNum
  433.     ROM_CALL(D_ZT_STR)
  434. Loop7:
  435.     call GET_KEY
  436.     cp    $04
  437.     jr    z,SevenUp
  438.     cp    $01
  439.     jr    z,SevenDown
  440.     cp    $03
  441.     jp    z,SevenRight
  442.     cp    $02
  443.     jp    z,SevenLeft
  444.     cp    $09
  445.     jp    z,StartOfProggie
  446.     jr    Loop7
  447. SevenUp:
  448.     ld    hl,(SevenRoom)
  449.     inc    hl
  450.     ld    (SevenRoom),hl
  451.     jr    LoopSeven
  452. SevenDown:
  453.     ld    hl,(SevenRoom)
  454.     dec    hl
  455.     ld    (SevenRoom),hl
  456.     jr    LoopSeven
  457. SevenRight:
  458.     ld    hl,(SevenRoom)
  459.     ld    a,10
  460. LoopSevenRight:
  461.     inc    hl
  462.     dec    a
  463.     cp    0
  464.     ld    (SevenRoom),hl
  465.     jp    z,LoopSeven
  466.     jr    LoopSevenRight
  467. SevenLeft:
  468.     ld    hl,(SevenRoom)
  469.     ld    a,10
  470. LoopSevenLeft:
  471.     dec    hl
  472.     dec    a
  473.     cp    0
  474.     ld    (SevenRoom),hl
  475.     jp    z,LoopSeven
  476.     jr    LoopSevenLeft
  477. Edit8:
  478.     ROM_CALL(CLEARLCD)
  479. LoopEight:
  480.     ld    hl,$0800
  481.     ld    (CURSOR_POS),hl
  482.     ld    hl,(EightRoom)
  483.     ROM_CALL(D_HL_DECI)
  484.     ld    hl,$0000
  485.     ld    (CURSOR_POS),hl
  486.     ld    hl,RoomNum
  487.     ROM_CALL(D_ZT_STR)
  488. Loop8:
  489.     call GET_KEY
  490.     cp    $04
  491.     jr    z,EightUp
  492.     cp    $01
  493.     jr    z,EightDown
  494.     cp    $03
  495.     jp    z,EightRight
  496.     cp    $02
  497.     jp    z,EightLeft
  498.     cp    $09
  499.     jp    z,StartOfProggie
  500.     jr    Loop8
  501. EightUp:
  502.     ld    hl,(EightRoom)
  503.     inc    hl
  504.     ld    (EightRoom),hl
  505.     jr    LoopEight
  506. EightDown:
  507.     ld    hl,(EightRoom)
  508.     dec    hl
  509.     ld    (EightRoom),hl
  510.     jr    LoopEight
  511. EightRight:
  512.     ld    hl,(EightRoom)
  513.     ld    a,10
  514. LoopEightRight:
  515.     inc    hl
  516.     dec    a
  517.     cp    0
  518.     ld    (EightRoom),hl
  519.     jp    z,LoopEight
  520.     jr    LoopEightRight
  521. EightLeft:
  522.     ld    hl,(EightRoom)
  523.     ld    a,10
  524. LoopEightLeft:
  525.     dec    hl
  526.     dec    a
  527.     cp    0
  528.     ld    (EightRoom),hl
  529.     jp    z,LoopEight
  530.     jr    LoopEightLeft
  531. RoomNum:
  532. .db "Room",0
  533.     ret