PolskiWisnia

Microcraft Bootloader

Feb 26th, 2020
171
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.07 KB | None | 0 0
  1. local function s(...) return sleep(...) end
  2. local function w(...) return write(...) end
  3. local function p(...) return print(...) end
  4. local function tw(...) return term.write(...) end
  5. local function scp(...) return term.setCursorPos(...) end
  6. local function sbc(...) return term.setBackgroundColor(...) end
  7. local function stc(...) return term.setTextColor(...) end
  8. local function tc(...) return term.clear(...) end
  9. local function tcl(...) return term.clearLine(...) end
  10. local function r(...) return shell.run(...) end
  11. local function sp(...) return textutils.slowPrint(...) end
  12. local function sw(...) return textutils.slowWrite(...) end
  13. local function fse(...) return fs.exists(...) end
  14. local function pul(...) return paintutils.loadImage(...) end
  15. local function pud(...) return paintutils.drawImage(...) end
  16. local function pfb(...) return paintutils.drawFilledBox(...) end
  17. local function su(...) return os.shutdown(...) end
  18. local function re(...) return os.reboot(...) end
  19. local function pdp(...) return paintutils.drawPixel(...) end
  20. local w, h = term.getSize()
  21. function boot()
  22. tc()
  23. sbc(colors.black)
  24. tc()
  25. sbc(colors.black)
  26. stc(colors.white)
  27. scp(1,2)
  28. p("MineCore Bootloader")
  29. p("(c) 2020 Microcraft")
  30. scp(1,3)
  31. p("Bootloader version: 1.0")
  32. p("Free HDD space: ", fs.getFreeSpace("/"))
  33. scp(1,5)
  34. textutils.slowPrint("Searching for bootable media...")
  35. s(1)
  36. os()
  37. end
  38.  
  39. function timer()
  40. scp(1,h)
  41. sbc(colors.gray)
  42. stc(colors.white)
  43. write("NextUI will be booted in 10 seconds.")
  44. s(1)
  45. scp(1,h)
  46. sbc(colors.gray)
  47. stc(colors.white)
  48. write("NextUI will be booted in 9 seconds. ")
  49. s(1)
  50. scp(1,h)
  51. sbc(colors.gray)
  52. stc(colors.white)
  53. write("NextUI will be booted in 8 seconds. ")
  54. s(1)
  55. scp(1,h)
  56. sbc(colors.gray)
  57. stc(colors.white)
  58. write("NextUI will be booted in 7 seconds. ")
  59. s(1)
  60. scp(1,h)
  61. sbc(colors.gray)
  62. stc(colors.white)
  63. write("NextUI will be booted in 6 seconds. ")
  64. s(1)
  65. scp(1,h)
  66. sbc(colors.gray)
  67. stc(colors.white)
  68. write("NextUI will be booted in 5 seconds. ")
  69. s(1)
  70. scp(1,h)
  71. sbc(colors.gray)
  72. stc(colors.white)
  73. write("NextUI will be booted in 4 seconds. ")
  74. s(1)
  75. scp(1,h)
  76. sbc(colors.gray)
  77. stc(colors.white)
  78. write("NextUI will be booted in 3 seconds. ")
  79. s(1)
  80. scp(1,h)
  81. sbc(colors.gray)
  82. stc(colors.white)
  83. p("NextUI will be booted in 2 seconds. ")
  84. s(1)
  85. scp(1,h)
  86. sbc(colors.gray)
  87. stc(colors.white)
  88. p("NextUI will be booted in 1 second . ")
  89. s(1)
  90. scp(1,h)
  91. sbc(colors.gray)
  92. stc(colors.white)
  93. p("NextUI will now boot.               ")
  94. s(1)
  95. r("/os/.next")
  96. end
  97.  
  98. function os()
  99. tc()
  100. pfb(1,1,w,1,colors.gray)
  101. pfb(1,h,w,h,colors.gray)
  102. ac = w/2
  103. scp(ac-10,1)
  104. stc(colors.white)
  105. p("MICROCRAFT BOOTLOADER")
  106. parallel.waitForAny(timer, wybor)
  107. end
  108.  
  109. pfb(3, 4, 13, 6, colors.orange)
  110. scp(3,5)
  111. stc(colors.white)
  112. p("NextUI")
  113. pfb(27, 4, 37, 6, colors.cyan)
  114. scp(27,5)
  115. stc(colors.white)
  116. p("MineCore")
  117. pfb(15, 4, 25, 6, colors.green)
  118. scp(15,5)
  119. stc(colors.white)
  120. p("BIOS")
  121. pfb(39, 4, 49, 6, colors.red)
  122. scp(39,5)
  123. stc(colors.white)
  124. p("Minedows")
  125. sbc(colors.black)
  126. local event, click, x, y = os.pullEvent("mouse_click")
  127. if x>2 and x<14 and y>3 and y<7 then r("/os/.next") end
Add Comment
Please, Sign In to add comment