Jump to content
  • Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal

joserobjr

Members
  • Content Count

    5
  • Joined

  • Last visited

Posts posted by joserobjr

  1. I've been trying and searching about it without success...

    I have a computer with 2 GPUs and 2 screens, I'm trying to use the primary GPU and screen to render a GUI and the second pair to show the application log.

    I also tried to copy the term lib in attempt to have a parallel term, but term2.write still writes to the main screen...

    This is what I have so far:

    local term2
    
    local primaryGpu = component.gpu
    local primaryScreen = component.screen
    ---@type component.gpu
    local secondaryGpu
    ---@type component.screen
    local secondaryScreen
    
    for gpuAddr in pairs(component.list("gpu")) do
        if not component.isPrimary(gpuAddr) then
            for screenAddr in pairs(component.list("screen")) do
                if not component.isPrimary(screenAddr) then
                    ---@type component.gpu
                    local gpu = component.proxy(gpuAddr)
                    ---@type component.screen
                    local screen = component.proxy(screenAddr)
                    screen.turnOn()
                    gpu.bind(screenAddr, true)
                    beep()
                    secondaryGpu = gpuAddr
                    secondaryScreen = screenAddr
    
                    component.setPrimary("gpu", secondaryGpu)
                    component.setPrimary("screen", secondaryScreen)
                    print("Second monitor?")
                    component.setPrimary("gpu", primaryGpu)
                    component.setPrimary("screen", primaryScreen)
    
                    --[[term2 = require("copied_term")
                    term2.bind(gpu, screen)
                    term2.setCursor(1,1)
                    term2.setCursorBlink(true)
                    term2.clear()
                    term2.write("Screen loaded. Uptime: "..uptime())
                    ]]--
                end
            end
        end
    end

     

    Do you have any idea?

  2. I'm writing an advanced mining robot on a server that I play and I want to sell it to other players, I've been working on it many hours in 2 weeks so I really want to receive a reward for it on the server. I'll be selling robots ready to go and dedicated for my software, I'm planning to release the source code in future but until there I don't want to see pirated floppy disks being sold cheaper :P

     

    I thought about fleshing an EEPROM or running it directly on init.lua (I don't really need the OpenOS to execute the software, it's independent) but other players could easily steal the EEPROM on a crafting grid or could steal the HD using an disassembler.

     

    What can I do? Any Idea?

     

     

    --- Edit:

    I've got an idea!

    I can use a mix of EEPROM with obfuscated code, a HD in unmanaged mode with fragmented data and obfuscated codes and component ID checks. So the EEPROM won't work without that specific HD and the code won't be readable by humans, the HD won't work without the EEPROM, each EEPROM and HD pairs will be unique and linked to each other, the scripts will require original components (HDs, GPU, wireless, etc) to run. I think that will be enough to protect the original source but I'm still open for ideas :P

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.