?login_element?

Subversion Repositories NedoOS

Rev

Blame | Last modification | View Log | Download | RSS feed

  1.         device pentagon1024
  2.  
  3.  
  4.  
  5. MEM_SLOT0=#37f7
  6. MEM_SLOT1=#77f7
  7. MEM_SLOT2=#b7f7
  8. MEM_SLOT3=#f7f7
  9.  
  10. SPBUF_PAGE0=8
  11. SPBUF_PAGE1=9
  12. SPBUF_PAGE2=10
  13. SPBUF_PAGE3=11
  14.  
  15. SPTBL_PAGE=6
  16.  
  17. CC_PAGE0=12
  18. CC_PAGE1=13
  19. CC_PAGE2=14
  20. SND_PAGE=0
  21. PAL_PAGE=4
  22. GFX_PAGE=16
  23.  
  24. SCR_PAGE1=1
  25. SCR_PAGE3=3
  26. SCR_PAGE5=5
  27. SCR_PAGE7=7
  28. AFX_INIT =#4000
  29. AFX_PLAY =#4003
  30. AFX_FRAME=#4006
  31. PT3_INIT =#4009
  32. PT3_FRAME=#400c
  33.  
  34. IMG_LIST =#1000
  35.  
  36. ;ёьх∙хэш  т SND_PAGE
  37.  
  38. MUS_COUNT=#49fe
  39. SMP_COUNT=#49ff
  40. SFX_COUNT=#5000
  41.  
  42. MUS_LIST =#4a00
  43. SMP_LIST =#4d00
  44. SFX_DATA =#5100
  45.  
  46.  
  47.  
  48.         macro MDebug color
  49.  
  50.         push af
  51.         ld a,color
  52.         out (#fe),a
  53.         pop af
  54.  
  55.         endm
  56.  
  57.         macro MSetShadowScreen
  58.  
  59.         ld a,(_screenActive)
  60.  
  61.         ld bc,MEM_SLOT1
  62.         ld (_memSlot1),a
  63.         out (c),a
  64.  
  65.         ld b,high MEM_SLOT2
  66.         sub 4
  67.         ld (_memSlot2),a
  68.         out (c),a
  69.  
  70.         endm
  71.  
  72.         macro MRestoreMemMap012
  73.  
  74.         ld bc,MEM_SLOT0
  75.         ld a,~CC_PAGE0
  76.         out (c),a
  77.  
  78.         ld b,high MEM_SLOT1
  79.         ld a,~CC_PAGE1
  80.         ld (_memSlot1),a
  81.         out (c),a
  82.  
  83.         ld b,high MEM_SLOT2
  84.         ld a,~CC_PAGE2
  85.         ld (_memSlot2),a
  86.         out (c),a
  87.  
  88.         endm
  89.  
  90.         macro MRestoreMemMap12
  91.  
  92.         ld bc,MEM_SLOT1
  93.         ld a,~CC_PAGE1
  94.         ld (_memSlot1),a
  95.         out (c),a
  96.  
  97.         ld b,high MEM_SLOT2
  98.         ld a,~CC_PAGE2
  99.         ld (_memSlot2),a
  100.         out (c),a
  101.  
  102.         endm
  103.  
  104.  
  105.  
  106.         org #e000
  107.  
  108. begin
  109.         di
  110.         ld sp,begin-1
  111.  
  112.         ;юяЁхфхыхэшх TS
  113.  
  114.         ld bc,#fffd     ;ўшя 0
  115.         out (c),b
  116.         xor a           ;ЁхушёЄЁ 0
  117.         out (c),a
  118.         ld b,#bf        ;чэрўхэшх #bf
  119.         out (c),b
  120.         ld b,#ff        ;ўшя 1
  121.         ld a,#fe
  122.         out (c),a
  123.         xor a           ;ЁхушёЄЁ 0
  124.         out (c),a
  125.         ld b,#bf        ;чэрўхэшх 0
  126.         out (c),a
  127.         ld b,#ff        ;ўшя 0
  128.         out (c),b
  129.         xor a           ;ЁхушёЄЁ 0
  130.         out (c),a
  131.         in a,(c)
  132.         ld (turboSound),a
  133.  
  134.         ;шэшЎшрышчрЎш  чтєъют√ї ¤ЇЇхъЄют, хёыш юэш хёЄ№
  135.  
  136.         ld a,SND_PAGE
  137.         call setSlot1
  138.         ld a,(SFX_COUNT)
  139.         or a
  140.         jr z,.noSfx
  141.         ld hl,SFX_DATA
  142.         call AFX_INIT
  143. .noSfx
  144.         xor a
  145.         call reset_ay
  146.         inc a
  147.         call reset_ay
  148.  
  149.         ;єёЄрэютър яхЁхьхээ√ї
  150.  
  151.         ld a,~1
  152.         ld (_screenActive),a
  153.  
  154.         call poll_mouse_delta
  155.  
  156.         ;єёЄрэютър юсЁрсюЄўшър яЁхЁ√трэшщ
  157.  
  158.         ld a,im2vector/256
  159.         ld i,a
  160.         im 2
  161.         ei
  162.  
  163.         ;ур°хэшх ¤ъЁрэр
  164.  
  165.         halt
  166.         LD A,%10101011  ;ЁрчЁх°хэшх ярышЄЁ√
  167.         ld bc,#bd77
  168.         out (c),a
  169.  
  170.         ld a,2
  171. .fade0
  172.         halt
  173.         halt
  174.         push af
  175.         call _pal_bright
  176.         pop af
  177.         dec a
  178.         cp 255
  179.         jr nz,.fade0
  180.  
  181.         ;юўшёЄър ¤ъЁрэр
  182.  
  183.         ld a,1
  184.         call clearPage
  185.         ld a,3
  186.         call clearPage
  187.         ld a,5
  188.         call clearPage
  189.         ld a,7
  190.         call clearPage
  191.  
  192.         ;Ёхцшь EGA ё ярышЄЁющ
  193.  
  194.         halt
  195.         LD A,%10101000
  196.         ld bc,#bd77
  197.         out (c),a
  198.  
  199.         call _swap_screen
  200.  
  201.         ;єёЄрэютър эюЁьры№эющ  ЁъюёЄш
  202.  
  203.         ld hl,3<<6
  204.         ld (_palBright),hl
  205.         ld a,1
  206.         ld (_palChange),a
  207.         halt
  208.  
  209.         ;єёЄрэютър ърЁЄ√ ярь Єш фы  т√яюыэхэш  ъюфр
  210.         ;ёЄЁрэшЎр т тхЁїэхь юъэх эх ьхэ хЄё , тёхуфр 11
  211.  
  212.         ld a,CC_PAGE0
  213.         call setSlot0
  214.         ld a,CC_PAGE1
  215.         call setSlot1
  216.         ld a,CC_PAGE2
  217.         call setSlot2
  218.  
  219.         jp 0
  220.  
  221.  
  222.  
  223. setActiveScreen
  224.         ld a,(_screenActive)
  225.         xor 2
  226.  
  227.         ld bc,MEM_SLOT1
  228.         ld (_memSlot1),a
  229.         out (c),a
  230.  
  231.         ld b,high MEM_SLOT2
  232.         sub 4
  233.         ld (_memSlot2),a
  234.         out (c),a
  235.  
  236.         ret
  237.  
  238.  
  239.  
  240. setShadowScreen
  241.         MSetShadowScreen
  242.         ret
  243.  
  244.  
  245.  
  246. ;сюыхх с√ёЄЁр  тхЁёш  ldir, ¤ЇЇхъЄштэр яЁш bc>12
  247. ;шч ёЄрЄ№ш эр MSX Assembly Page
  248. ;т юЄышўшх юЄ эюЁьры№эюую ldir яюЁЄшЄ A ш Їыруш
  249.  
  250. _fast_ldir
  251.         xor a
  252.         sub c
  253.         and 63
  254.         add a,a
  255.         ld (.jump),a
  256. .jump=$+1
  257.         jr nz,.loop
  258. .loop
  259.         dup 64
  260.         ldi
  261.         edup
  262.         jp pe,.loop
  263.         ret
  264.  
  265.  
  266.  
  267. _clear_screen
  268.         and 15
  269.         ld l,a
  270.         ld h,high colorMaskTable
  271.         ld e,(hl)
  272.         call setShadowScreen
  273.         ld hl,#4000
  274.         ld (hl),e
  275.         ld de,#4001
  276.         ld bc,#7fff
  277.         call _fast_ldir
  278.         MRestoreMemMap12
  279.         ret
  280.  
  281.  
  282.  
  283. _swap_screen
  284.         push ix
  285.         push iy
  286.  
  287.         ld a,(spritesActive)
  288.         or a
  289.         push af
  290.         jr z,.noSpr0
  291.         call setShadowScreen
  292.         call updateTilesToBuffer
  293.         call prspr
  294. .noSpr0
  295.  
  296.         halt
  297.  
  298.         ld a,(_screenActive)
  299.         xor 2
  300.         ld (_screenActive),a
  301.         ld e,a
  302.  
  303.         ld bc,#0bbe
  304.         in a,(c)
  305.         bit 1,e
  306.         ld d,0
  307.         jr z,$+4
  308.         ld d,8
  309.         and ~8
  310.         or d
  311.         ld bc,#7ffd
  312.         out (c),a
  313.  
  314.         pop af
  315.         jr z,.noSpr1
  316.  
  317.         call setShadowScreen
  318.         call respr
  319.         call updateTilesFromBuffer
  320.         MRestoreMemMap012
  321. .noSpr1
  322.         pop iy
  323.         pop ix
  324.         ret
  325.  
  326.  
  327.  
  328. pal_get_address
  329.         ld h,0
  330.         ld l,a
  331.         add hl,hl
  332.         add hl,hl
  333.         add hl,hl
  334.         add hl,hl
  335.  
  336.         ld bc,MEM_SLOT0
  337.         ld a,~PAL_PAGE
  338.         out (c),a
  339.         ret
  340.  
  341.  
  342.  
  343. _pal_select
  344.         call pal_get_address
  345.  
  346.         ld de,_palette
  347.         ld bc,16
  348.         ldir
  349.  
  350.         ld a,d
  351.         ld (_palChange),a
  352.  
  353.         ld bc,MEM_SLOT0
  354.         ld a,~CC_PAGE0
  355.         out (c),a
  356.         ret
  357.  
  358.  
  359.  
  360. _pal_bright
  361.         cp 7
  362.         jr c,.l1
  363.         ld a,6
  364. .l1
  365.         ld h,a
  366.         ld l,0
  367.         srl h
  368.         rr l
  369.         srl h
  370.         rr l
  371.         ld (_palBright),hl
  372.         ld a,1
  373.         ld (_palChange),a
  374.         ret
  375.  
  376.  
  377.  
  378. _pal_copy
  379.         push de
  380.         call pal_get_address
  381.  
  382.         ld de,palTemp
  383.         ld bc,16
  384.         ldir
  385.  
  386.         ld bc,MEM_SLOT0
  387.         ld a,~CC_PAGE0
  388.         out (c),a
  389.  
  390.         pop de
  391.         ld hl,palTemp
  392.         ld bc,16
  393.         ldir
  394.  
  395.         ret
  396.  
  397.  
  398.  
  399.         include "lib_input.asm"
  400.         include "lib_sound.asm"
  401.         include "lib_tiles.asm"
  402.         include "lib_sprites.asm"
  403.  
  404.  
  405.  
  406. im2handler
  407.         push af
  408.         push bc
  409.         push de
  410.         push hl
  411.         push ix
  412.         push iy
  413.         exa
  414.         exx
  415.         push af
  416.         push bc
  417.         push de
  418.         push hl
  419.  
  420.  
  421.         ld a,(_palChange)
  422.         or a
  423.         jp z,.noPalette
  424.  
  425.         ;шчьхэхэшх ярышЄЁ√
  426.  
  427.         ld de,(_palBright)
  428.         ld a,d
  429.         add a,high palBrightTable
  430.         ld b,a
  431.  
  432.         ld hl,_palette
  433.  
  434. .colId=0
  435.         dup 8
  436.         ld a,.colId
  437.         out (#fe),a
  438.         ld a,(hl)
  439.         add a,e
  440.         ld c,a
  441.         ld a,(bc)
  442.         out (#ff),a
  443.         inc l
  444. .colId=.colId+1
  445.         edup
  446. .colId=0
  447.         dup 8
  448.         ld a,.colId
  449.         out (#f6),a
  450.         ld a,(hl)
  451.         add a,e
  452.         ld c,a
  453.         ld a,(bc)
  454.         out (#ff),a
  455.         inc l
  456. .colId=.colId+1
  457.         edup
  458.  
  459.         ;тюёёЄрэютыхэшх ЎтхЄр сюЁф■Ёр
  460.  
  461.         ld a,(_borderCol)
  462.         ld c,a
  463.         and 7
  464.         bit 3,c
  465.         jr nz,.bright
  466.         out (#fe),a
  467.         jr .palSet
  468. .bright
  469.         out (#f6),a
  470. .palSet
  471.         xor a
  472.         ld (_palChange),a
  473.  
  474. .noPalette
  475.  
  476.  
  477.         ld a,~SND_PAGE
  478.         ld bc,MEM_SLOT1
  479.         out (c),a
  480.  
  481.         ld a,(musicPage)
  482.         or a
  483.         jr z,.noMusic
  484.         ld bc,MEM_SLOT2
  485.         out (c),a
  486.         ld bc,#fffd             ;тЄюЁющ ўшя Turbo Sound
  487.         ld a,#fe                ;хёыш Turbo Sound эхЄ, чтєъш ш ьєч√ър
  488.         out (c),a               ;шуЁр■Є эр юфэюь ўшях, шэрўх эр Ёрчэ√ї
  489.         call PT3_FRAME
  490.         ld a,(turboSound)
  491.         or a
  492.         jr z,.sfx
  493. .noMusic
  494.         ld a,1
  495.         call reset_ay
  496. .sfx
  497.         ld bc,#fffd             ;яхЁт√щ ўшя
  498.         out (c),b
  499.         call AFX_FRAME
  500.  
  501.         poll_mouse
  502.  
  503.         ld a,(_memSlot1)
  504.         ld bc,MEM_SLOT1
  505.         out (c),a
  506.         ld a,(_memSlot2)
  507.         ld bc,MEM_SLOT2
  508.         out (c),a
  509.  
  510.         ;ёў╕Єўшъ ърфЁют
  511.  
  512.         ld hl,_time
  513.         ld b,4
  514. .time1
  515.         inc (hl)
  516.         jr nz,.time2
  517.         inc hl
  518.         djnz .time1
  519. .time2
  520.  
  521.         pop hl
  522.         pop de
  523.         pop bc
  524.         pop     af
  525.         exx
  526.         exa
  527.         pop iy
  528.         pop ix
  529.         pop hl
  530.         pop de
  531.         pop bc
  532.         pop af
  533.         ei
  534.         ret
  535.  
  536.  
  537.  
  538. ;ЄрсышЎ√
  539.  
  540.         align 256
  541. palBrightTable
  542.         db #ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff      ;bright 0
  543.         db #ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff
  544.         db #ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff
  545.         db #ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff,#ff
  546.         db #ff,#ff,#ff,#bf,#ff,#ff,#ff,#bf,#ff,#ff,#ff,#bf,#7f,#7f,#7f,#3f      ;bright 1
  547.         db #ff,#ff,#ff,#bf,#ff,#ff,#ff,#bf,#ff,#ff,#ff,#bf,#7f,#7f,#7f,#3f
  548.         db #ff,#ff,#ff,#bf,#ff,#ff,#ff,#bf,#ff,#ff,#ff,#bf,#7f,#7f,#7f,#3f
  549.         db #df,#df,#df,#9f,#df,#df,#df,#9f,#df,#df,#df,#9f,#5f,#5f,#5f,#1f
  550.         db #ff,#ff,#bf,#fd,#ff,#ff,#bf,#fd,#7f,#7f,#3f,#7d,#ef,#ef,#af,#ed      ;bright 2
  551.         db #ff,#ff,#bf,#fd,#ff,#ff,#bf,#fd,#7f,#7f,#3f,#7d,#ef,#ef,#af,#ed
  552.         db #df,#df,#9f,#dd,#df,#df,#9f,#dd,#5f,#5f,#1f,#5d,#cf,#cf,#8f,#cd
  553.         db #fe,#fe,#be,#fc,#fe,#fe,#be,#fc,#7e,#7e,#3e,#7c,#ee,#ee,#ae,#ec
  554.         db #ff,#bf,#fd,#bd,#7f,#3f,#7d,#3d,#ef,#af,#ed,#ad,#6f,#2f,#6d,#2d      ;bright 3
  555.         db #df,#9f,#dd,#9d,#5f,#1f,#5d,#1d,#cf,#8f,#cd,#8d,#4f,#0f,#4d,#0d
  556.         db #fe,#be,#fc,#bc,#7e,#3e,#7c,#3c,#ee,#ae,#ec,#ac,#6e,#2e,#6c,#2c
  557.         db #de,#9e,#dc,#9c,#5e,#1e,#5c,#1c,#ce,#8e,#cc,#8c,#4e,#0e,#4c,#0c
  558.         db #1f,#5d,#1d,#1d,#8f,#cd,#8d,#8d,#0f,#4d,#0d,#0d,#0f,#4d,#0d,#0d      ;bright 4
  559.         db #3e,#7c,#3c,#3c,#ae,#ec,#ac,#ac,#2e,#6c,#2c,#2c,#2e,#6c,#2c,#2c
  560.         db #1e,#5c,#1c,#1c,#8e,#cc,#8c,#8c,#0e,#4c,#0c,#0c,#0e,#4c,#0c,#0c
  561.         db #1e,#5c,#1c,#1c,#8e,#cc,#8c,#8c,#0e,#4c,#0c,#0c,#0e,#4c,#0c,#0c
  562.         db #ec,#ac,#ac,#ac,#6c,#2c,#2c,#2c,#6c,#2c,#2c,#2c,#6c,#2c,#2c,#2c      ;bright 5
  563.         db #cc,#8c,#8c,#8c,#4c,#0c,#0c,#0c,#4c,#0c,#0c,#0c,#4c,#0c,#0c,#0c
  564.         db #cc,#8c,#8c,#8c,#4c,#0c,#0c,#0c,#4c,#0c,#0c,#0c,#4c,#0c,#0c,#0c
  565.         db #cc,#8c,#8c,#8c,#4c,#0c,#0c,#0c,#4c,#0c,#0c,#0c,#4c,#0c,#0c,#0c
  566.         db #0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c      ;bright 6
  567.         db #0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c
  568.         db #0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c
  569.         db #0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c,#0c
  570.  
  571.         align 256       ;#nn00
  572. scrTable
  573. adr=#4000
  574.         dup 25
  575.         db low adr
  576. adr=adr+(40*8)
  577.         edup
  578.         align 32        ;#nn20
  579. adr=#4000
  580.         dup 25
  581.         db high adr
  582. adr=adr+(40*8)
  583.         edup
  584.  
  585.  
  586.  
  587. setSlot0
  588.         cpl
  589.         ld (_memSlot0),a
  590.         ld bc,MEM_SLOT0
  591.         out (c),a
  592.         ret
  593.  
  594. setSlot1
  595.         cpl
  596.         ld (_memSlot1),a
  597.         ld bc,MEM_SLOT1
  598.         out (c),a
  599.         ret
  600.  
  601. setSlot2
  602.         cpl
  603.         ld (_memSlot2),a
  604.         ld bc,MEM_SLOT2
  605.         out (c),a
  606.         ret
  607.  
  608.  
  609.  
  610. clearPage
  611.         call setSlot1
  612.         ld hl,#4000
  613.         ld de,#4001
  614.         ld bc,#3fff
  615.         ld (hl),l
  616.         jp _fast_ldir
  617.  
  618.  
  619.  
  620.         align 256       ;#nn00
  621. tileUpdateXTable
  622.         dup 8
  623.         db #01,#02,#04,#08,#10,#20,#40,#80
  624.         edup
  625. .x=0
  626.         dup 64
  627.         db .x>>3
  628. .x=.x+1
  629.         edup
  630.  
  631.  
  632.         align 256       ;#nn00
  633. colorMaskTable
  634.         db #00,#09,#12,#1b,#24,#2d,#36,#3f      ;фы  фтєї яшъёхыхщ
  635.         db #c0,#c9,#d2,#db,#e4,#ed,#f6,#ff
  636.         db #00,#01,#02,#03,#04,#05,#06,#07      ;фы  ink
  637.         db #40,#41,#42,#43,#44,#45,#46,#47
  638.         ds 16,0
  639.         db #00,#08,#10,#18,#20,#28,#30,#38      ;фы  paper
  640.         db #80,#88,#90,#98,#a0,#a8,#b0,#b8
  641.  
  642.  
  643.         align 256
  644. _sprqueue
  645. _sprqueue0      ;ЇюЁьрЄ 4 срщЄр эр ёяЁрщЄ, idh,idl,y,x (idh=255 ъюэхЎ ёяшёър)
  646.         ds 256,255
  647. _sprqueue1
  648.         ds 256,255
  649.  
  650.  
  651.         display "Top ",/h,$," (should be <=0xFD00)"
  652.  
  653.  
  654.         org #fd00
  655. tileUpdateMap   ;сшЄютр  ърЁЄр юсэютшт°шїё  чэръюьхёЄ, 64x25 сшЄ
  656.         ds 8*25,0
  657.  
  658.         org #fdfd
  659.         jp im2handler
  660.  
  661.         org #fe00
  662. im2vector
  663.         ds 257,#fd
  664.  
  665. ;яхЁхьхээ√х
  666.  
  667. musicPage               db 0
  668. tileOffset              dw 0
  669. spritesActive   db 0    ;1 хёыш т√тюф ёяЁрщЄют ЁрчЁх°╕э
  670. tileUpdate              db 0    ;1 хёыш т√тюфшышё№ Єрщы√, фы  ёшёЄхь√ юсэютыхэш  Їюэр яюф ёяЁрщЄрьш
  671. palTemp                 ds 16,0
  672. keysPrevState   ds 40,0
  673. turboSound              db 0    ;1 хёыш хёЄ№ TS
  674.  
  675. ;¤ъёяюЁЄшЁєхь√х яхЁхьхээ√х
  676.  
  677.         macro rgb222 b2,g2,r2
  678.         db (((r2&3)<<4)|((g2&3)<<2)|(b2&3))
  679.         endm
  680.  
  681.         align 16
  682. _palette
  683.         rgb222(0,0,0)
  684.         rgb222(0,0,2)
  685.         rgb222(2,0,0)
  686.         rgb222(2,0,2)
  687.         rgb222(0,2,0)
  688.         rgb222(0,2,2)
  689.         rgb222(2,2,0)
  690.         rgb222(2,2,2)
  691.         rgb222(0,0,0)
  692.         rgb222(0,0,3)
  693.         rgb222(3,0,0)
  694.         rgb222(3,0,3)
  695.         rgb222(0,3,0)
  696.         rgb222(0,3,3)
  697.         rgb222(3,3,0)
  698.         rgb222(3,3,3)
  699.  
  700. _memSlot0       db 0
  701. _memSlot1       db 0
  702. _memSlot2       db 0
  703. _borderCol      db 0
  704. _palBright      dw 3<<6
  705. _palChange      db 1
  706. _screenActive   db 0    ;~1 шыш ~3
  707. _mouse_dx       db 0
  708. _mouse_dy       db 0
  709. _mouse_x        db 80
  710. _mouse_y        db 100
  711. _mouse_cx1      db 0
  712. _mouse_cx2      db 160
  713. _mouse_cy1      db 0
  714. _mouse_cy2      db 200
  715. _mouse_btn      db 0
  716. _mouse_prev_dx  db 0
  717. _mouse_prev_dy  db 0
  718. _time           dd 0
  719.  
  720.         export _palette
  721.         export _memSlot0
  722.         export _memSlot1
  723.         export _memSlot2
  724.         export _borderCol
  725.         export _palBright
  726.         export _palChange
  727.         export _sprqueue
  728.         export _screenActive
  729.         export _mouse_dx
  730.         export _mouse_dy
  731.         export _mouse_x
  732.         export _mouse_y
  733.         export _mouse_cx1
  734.         export _mouse_cx2
  735.         export _mouse_cy1
  736.         export _mouse_cy2
  737.         export _mouse_btn
  738.         export _time
  739.  
  740. ;¤ъёяюЁЄшЁєхь√х ЇєэъЎшш
  741.  
  742.         export _pal_select
  743.         export _pal_copy
  744.         export _pal_bright
  745.         export _swap_screen
  746.         export _clear_screen
  747.         export _fast_ldir
  748.  
  749. end
  750.  
  751.         display "Size ",/d,end-begin," bytes"
  752.  
  753.         savebin "startup.bin",begin,end-begin