Advertisement
PolskiWisnia

NextUI 2.0 Startup

Mar 20th, 2023 (edited)
774
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.23 KB | None | 0 0
  1. local function s(...) return sleep(...) end
  2. local function aw(...) 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.  
  21. args = {...}
  22. speakerPresent = 0
  23. local w, h = term.getSize()
  24.  
  25. function nilToBrak(str)
  26.     if str == nil then str = "Brak" end
  27.     return str
  28. end
  29.  
  30. function findPeripherals()
  31.     peripherals = {}
  32.    
  33.     peripherals[1] = nilToBrak(peripheral.getType("top"))
  34.     peripherals[2] = nilToBrak(peripheral.getType("bottom"))
  35.     peripherals[3] = nilToBrak(peripheral.getType("left"))
  36.     peripherals[4] = nilToBrak(peripheral.getType("right"))
  37.     peripherals[5] = nilToBrak(peripheral.getType("front"))
  38.     peripherals[6] = nilToBrak(peripheral.getType("back"))
  39.  
  40.     return peripherals
  41. end
  42.  
  43. peripherals = findPeripherals()
  44. for i=1,6 do
  45.     if peripherals[i] == "speaker" then speakerPresent = i end
  46. end
  47.  
  48. function bsod(powod)
  49.     sbc(colors.blue)
  50.     tc()
  51.     sbc(colors.blue)
  52.     stc(colors.white)
  53.     ac = w/2
  54.     scp(ac-2,3)
  55.     sbc(colors.white)
  56.     stc(colors.black)
  57.     p("NextUI")
  58.     sbc(colors.blue)
  59.     stc(colors.white)
  60.     scp(1,6)
  61.     p[[System NextUI napotkal problem i musial zostac zatrzymany. Jesli widzisz ten ekran po raz pierwszy poczekaj na ponowny       rozruch komputera, jednakze jesli blad bedzie sie powtarzal byc moze konieczna bedzie naprawa systemu NextUI. Aby jej dokonac   uruchom Program Instalacyjny NextUI oraz postepuj z jego wskazowkami.
  62.     Trwa zbieranie informacji na temat Bledu STOP]]
  63.     if speakerPresent ~= 0 then
  64.         speaker = peripheral.find("speaker")
  65.         speaker.playNote("chime")
  66.         s(0.5)
  67.         speaker.playNote("chime")
  68.         s(0.5)
  69.         speaker.playNote("chime")
  70.         s(0.5)
  71.         speaker.playNote("chime")
  72.         s(0.5)
  73.         speaker.playNote("chime")
  74.         end
  75.     s(4)
  76.     p("Nazwa bledu: ", powod)
  77.     p("")
  78.     p("")
  79.     s(10)
  80.     re()
  81. end
  82.  
  83. sbc(colors.black)
  84. tc()
  85. sbc(colors.black)
  86. scp(1,1)
  87. sbc(colors.gray)
  88. stc(colors.white)
  89. sp("NextUI 2.0")
  90. if speakerPresent ~= 0 then
  91. scp(1,3)
  92. sp("Loading sound extension...")
  93. speaker = peripheral.find("speaker")
  94. speaker.playNote("chime")
  95. s(0.1)
  96. speaker.playNote("bass")
  97. s(0.1)
  98. speaker.playNote("guitar")
  99. end
  100. scp(1,5)
  101. sp("Booting into NextExplorer...")
  102.  
  103. shell.setDir("/")
  104. if pcall(shell.run("/os/main/menu")) then
  105.     r("/os/main/menu")
  106. else
  107.     if pcall(shell.run("/os/main/menu.backup")) then
  108.         r("/os/main/menu")
  109.     else
  110.         bsod("NextKernel General Error")
  111.     end
  112. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement