OSéçº
æ¦è¦ æ¬è¨äºã¯Berkley Socket ã®æ´å²ãéçºå½åã®è¨è¨ã«èå³ãæã¡èª¿ã¹ãéã®ã¡ã¢ã§ãã 調ã¹ãã㨠Berkley Socketã¯BSD4.2ã®ã¿ã¤ãã³ã°ã§Bill Joyã«ããè¨è¨ã»å®è£ ãããããã§ããBill Joyãéçºã«è³ãã¾ã§ã®çµç·¯ã¯ãUnixèå¤å¦ãã§è©³ãã解説ããã¦ãã¾â¦
harib04a: ãã¼ã³ã¼ãã®åå¾ DAY6ã§ä½ã£ãããã¼ãã¼ãå ¥åæã®å²ãè¾¼ã¿å¦çãæ¹åãã¦ããã int.c - ä¿®æ£å void inthandler21(int *esp) /* PS/2ãã¼ãã¼ãããã®å²ã込㿠*/ { struct BOOTINFO *binfo = (struct BOOTINFO *) ADR_BOOTINFO; boxfill8(binâ¦
harib03a:ã½ã¼ã¹ã³ã¼ãåå² ã½ã¼ã¹ã³ã¼ãã®åå²ããã¦ããã ããªã®ã§çç¥ harib03b: Makefileã®ã«ã¼ã«ã®ä¸è¬è¦åå Makefile ã®ä¸è¬è¦åã«ã¤ãã¦ããããããªãã»ã©ãªè©±ã ãã©èªãã°å¤§ä½ç解ã§ããã®ã§èªãã ãã§ã è¦ããã«ãMakefileã®ã«ã¼ã«ã«ã¯ã¤ã«ãã«â¦
harib02a bootpack.cã®ããã®å¦çã void HariMain(void) { char *vram; int xsize, ysize; init_palette(); vram = (char *) 0xa0000; xsize = 320; ysize = 200; 以ä¸ã®ããã«æ¸ãæãã£ãã void HariMain(void) { char *vram; int xsize, ysize; short *â¦
harib00a ; ãã£ã¹ã¯ãèªã MOV AX,0x0820 MOV ES,AX MOV CH,0 ; ã·ãªã³ã0 MOV DH,0 ; ããã0 MOV CL,2 ; ã»ã¯ã¿2 MOV AH,0x02 ; AH=0x02 : ãã£ã¹ã¯èªã¿è¾¼ã¿ MOV AL,1 ; 1ã»ã¯ã¿ MOV BX,0 MOV DL,0x00 ; ãã©ã¤ãçªå·0x00 = Aãã©ã¤ã INT 0x13 ; ãã£ã¹â¦
harib01a ç»é¢ã«åºåãè¡ãããã«ã naskfunc.nasã«ä»¥ä¸ã®é¢æ°ã追å ããã ã¡ã¢ãªçªå°ãæå®ãã¦æ¸ãè¾¼ãã®ãç®çã¨ã®ã㨠_write_mem8: ; void write_mem8(int addr, int data); MOV ECX,[ESP+4] ; [ESP+4]ã«addrãå ¥ã£ã¦ããã®ã§ãããECXã«èªã¿è¾¼ã MOV â¦
æ²é¡ã®æ¬ã«å¾ã£ã¦ãã¥ã¼ããªã¢ã«ãé²ãããã¨ãããã°ã«ãªãã¾ãã 2018å¹´ã®æ£æã§çµãããªãã£ãã®ã§ã次ã¯GWã«ãã£ã¬ã³ã¸ããã Ref: å種ãã¼ã¿ããã¦ã³ãã¼ãå¯è½ãªå ¬å¼ãã¼ã¸ å 人ã®æ¹ã®Blog ç°å¢æ§ç¯ Refã®ãã¼ã¸ãåèã«é²ãã¦ãã Windows10ã§ãã Câ¦
DAY1 ãã¤ããªãã¡ã¤ã«èªä½ã¯2é²æ°ã ããããã§ã¯åé·ã«ãªãã®ã§ã 以ä¸ã®ããã«2é²æ°â16é²æ°ã«å¤æãããã¨ã§æ å ±éãæ¸ããã¦ãã DBå½ä»¤ : data byteå½ä»¤ããã¡ã¤ã«ã®å 容ã1byteã ãç´æ¥æ¸ããæååãæ¸ãããï¼ PRESSå½ä»¤ : reserve byte ãå¼æ° x bytâ¦