haribote | Haribote OS for Linux/gcc

 by   tyfkda C Version: Current License: Non-SPDX

kandi X-RAY | haribote Summary

kandi X-RAY | haribote Summary

haribote is a C library. haribote has no bugs, it has no vulnerabilities and it has low support. However haribote has a Non-SPDX License. You can download it from GitHub.

Haribote OS for Linux/gcc
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              haribote has a low active ecosystem.
              It has 10 star(s) with 0 fork(s). There are 2 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 0 open issues and 1 have been closed. On average issues are closed in 18 days. There are no pull requests.
              It has a neutral sentiment in the developer community.
              The latest version of haribote is current.

            kandi-Quality Quality

              haribote has 0 bugs and 0 code smells.

            kandi-Security Security

              haribote has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              haribote code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              haribote has a Non-SPDX License.
              Non-SPDX licenses can be open source with a non SPDX compliant license, or non open source licenses, and you need to review them closely before use.

            kandi-Reuse Reuse

              haribote releases are not available. You will need to build from source code and install.
              Installation instructions, examples and code snippets are available.
              It has 28 lines of code, 3 functions and 1 files.
              It has low code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of haribote
            Get all kandi verified functions for this library.

            haribote Key Features

            No Key Features are available at this moment for haribote.

            haribote Examples and Code Snippets

            No Code Snippets are available at this moment for haribote.

            Community Discussions

            Trending Discussions on haribote

            QUESTION

            Using BIOS INT 13h, ah=42h to read from USB
            Asked 2018-Apr-20 at 20:17

            I am using BIOS and want to make a self made operation system.

            I am using the LBA method (int 0x13, ah=0x42) and successfully made it work on QEMU. But, when I let it work on a real PC, it does not work. It can only read 512bytes from USB.

            When I used int 0x10 to show the problem, I finally figured out the problem. The memory does not move to referenced memory at all. My code is written below.

            ...

            ANSWER

            Answered 2018-Apr-20 at 18:53
               [bits 16]
            [ORG 0x7c00]
                    ;; BPB Structure                                                                                                                     
            JMP     entry           ;BS_jmpBoot
            NOP                                                                                                  
            BS_OEMName      DB "HARIBOTE"
            BPB_BytsPerSec  DW 0x0200
            BPB_SecPerClus  DB 0x01
            BPB_RsvdSecCnt  DW 0x0001
            BPB_NumFATs     DB 0x02
            BPB_RootEntCnt  DW 0x0000
            BPB_TotSec16    DW 0x0000
            BPB_Media       DB 0xf8
            BPB_FATSz16     DW 0x0000
            BPB_SecPerTrk   DW 0xffff
            BPB_NumHeads    DW 0x0001
            BPB_HiDDSec     DD 0x00000000
            BPB_TotSec32    DD 0x00ee5000
            BPB_FATSz32     DD 0x000000ed
            BPB_ExtFlags    DW 0x0000
            BPB_FSVer       DW 0x0000
            BPB_RootClus    DD 0x00000000
            BPB_FSInfo      DW 0x0001
            BPB_BkBootSec   DW 0x0000
                    times   12      DB 0    ;BPB_Reserverd                                                                                               
            BS_DrvNum       DB 0x80
            BS_Reserved1    DB 0x00
            BS_BootSig      DB 0x29
            BS_VolID        DD 0xa0a615c
            BS_VolLab       DB "ISHIHA BOOT"
            BS_FileSysType  DB "FAT32   "
            
            
            
            entry:  
                CLI
            
                    MOV AX, 0
                    MOV DS, AX
                MOV SS, AX
                    MOV ES, AX
                    MOV BX, AX
                MOV CX, AX
                MOV SP, 0x7c00
            prepare:
                STI
                MOV [drv], DL
                    CMP     DL, 0x80
                    JB      unsupported    ; HDD系デバイスでなければエラー
            
                MOV AH, 0x0e
                MOV AL, [drv]
                MOV BX, 0
                INT 0x10
            
                mov ah, 0x41                ; Set Function 0x41
                    mov word bx, 0x55aa          
                    int 0x13                   ; Call Interupt
                    jc unsupported        ; If Extentions aren't Supported, Jump
            
            
            
            
                    xor ax, ax
                    add ax, 1                   ; clear carry flag
                XOR EDI, EDI
            
                MOV AH, 0x45
                MOV AL, 0x01
                MOV DL, 0x80
                INT 0x13
            
                MOV AX, 0
                MOV DS, AX
            
            loop:
                MOV CL, 0
            retry:
                PUSH DS
                PUSHAD
                    MOV DL, [drv]
                    MOV AH, 0x42
                MOV AL, 0x00
                    MOV SI, DAPS
                    INT 0x13
                    JNC next
            
                    ADD CL, 1
                    MOV DL, 0x80 
                    MOV AH, 0x00
                    INT 0x13
                    CMP CL, 6
                    JAE error
                    JMP retry
            next:
            
                XOR EAX, EAX
                XOR EBX, EBX
                XOR ECX, ECX
            
                ADD EDI, 1
                MOV ECX, lba0
                MOV [ECX], EDI
            
                XOR EAX, EAX
                XOR ECX, ECX
                XOR EBP, EBP
            
                MOV AX, [addr]
                MOV ECX, addr
                MOV EBX, segm
                ADD AX, 0x200
                ADC BP, 0
                SHL BP, 12
                ADD BP, [segm]
                MOV [EBX], BP
            
            
                MOV [ECX], AX
                MOV [EBX], BP
            
                CMP EDI, 0x16a
                JB loop
            
                MOV ECX, 0xc200
                JMP check
            interrupt:
                MOV EAX, 0x0000
                MOV EBX, EAX
                MOV EDX, EAX
                MOV EBP, EAX
                MOV ESI, EAX
                MOV EDI, EAX
            
                MOV CH, 10
                MOV [0x0ff0], CH
            
                MOV ECX, EAX
                    JMP 0x0000:0xc200
            error:
                POPAD
                POP DS
                    MOV     SI,msg
            putloop:
                    MOV     AL,[SI]
                    ADD     SI,1            
                    CMP     AL,0
                    JE      fin
                    MOV     AH,0x0e         
                    MOV     BX,0       
                    INT     0x10           
                    JMP     putloop
            fin:
                    HLT                     
                    JMP     fin            
            msg:
                    DB      0x0a, 0x0a      
                    DB      "load error"
                    DB      0x0a            
                    DB      0
            msg1:
                    DB      0x0a, 0x0a      
                    DB      "not supported"
                    DB      0x0a            
                    DB      0
            
            unsupported:
                MOV SI, msg1
                JMP putloop
            
            drv:    DB 0x80
            DAPS:   DB 0x10               ; Size of Structure (16 bytes, always this for DAPS)
                    DB 0                  ; Always 0
                    DB 1                  ; Number of Sectors to Read (1x512)
                    DB 0                  ; Always 0 
            addr:   DW 0x8000             ; Target Location for Reading To (0x8000 = 0x0800:0x0000)  
            segm:   DW 0x0000             ; Page Table (0, Disabled)
            lba0:   DD 1                  ; Read from 2nd block (code I want to load)
                DD 0                  ; Large LBAs, dunno what this does
            check:
                MOV AH, 0x0e
                MOV AL, [ECX]
                ADD AL, 48
                MOV BX, 0
                INT 0x10
                ADD ECX, 1
                CMP ECX, 0xc400
                JNE  check
            
                JMP interrupt
            
            
                    RESB    0x01fe-($-$$)       
                    DW 0AA55h
            

            Source https://stackoverflow.com/questions/49886949

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install haribote

            Type make in the root directory. Burn image into CD, or run disk image using PC emulator (e.g. VirtualBox).
            Type make in the root directory
            haribote.iso is created
            Burn image into CD, or run disk image using PC emulator (e.g. VirtualBox)

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/tyfkda/haribote.git

          • CLI

            gh repo clone tyfkda/haribote

          • sshUrl

            git@github.com:tyfkda/haribote.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link