{"id":132,"date":"2005-07-23T17:31:02","date_gmt":"2005-07-23T09:31:02","guid":{"rendered":"http:\/\/tmp.xujiwei.com\/blog\/?p=132"},"modified":"2010-01-29T13:03:21","modified_gmt":"2010-01-29T05:03:21","slug":"menuetos-hotcats-0-1-code-comments","status":"publish","type":"post","link":"https:\/\/xujiwei.com\/blog\/2005\/07\/menuetos-hotcats-0-1-code-comments\/","title":{"rendered":"[MenuetOS] HotCats 0.1 \u4ee3\u7801\u5206\u6790"},"content":{"rendered":"<div class=\"post-content\">\n<p>\u7528\u6765\u5728MEOS\u91cc\u6293\u53d6\u5c4f\u5e55\uff0c\u4e0d\u8fc7\u8fd9\u4e2a\u7248\u672c\u5e76\u4e0d\u5b8c\u5584\u3002<\/p>\n<p>\u5728\u8fd9\u4e2a\u7248\u672c\u91cc\uff0c\u7a0b\u5e8f\u6240\u7528\u7684\u65b9\u6cd5\u662f\u626b\u63cf\u5c4f\u5e55\u4e0a\u7684\u70b9\u7136\u540e\u518d\u5199\u5230\u7f13\u5b58\u6700\u540e\u5199\u5230\u6587\u4ef6\uff0c\u8fd9\u6837\u5c31\u4f1a\u5bfc\u81f4\u901f\u5ea6\u5f88\u6162\u3002<\/p>\n<p>BMP\u683c\u5f0f\u6587\u6863\u53ef\u4ee5\u53bb\u6211\u7684\u7f51\u7edc\u786c\u76d8\u4e0b\u8f7d<a rel=\"external\" href=\"http:\/\/osdev.ys168.com\">http:\/\/osdev.ys168.com<\/a><\/p>\n<p><span style=\"color: #008000;\">;=======================================<\/span><\/p>\n<p><span style=\"color: #008000;\">;\u00a0\u00a0\u00a0\u00a0HotCats<\/span><\/p>\n<p><span style=\"color: #008000;\">;\u00a0\u00a0\u00a0\u00a0Ver\u00a0:\u00a00.1<\/span><\/p>\n<p><span style=\"color: #008000;\">;\u00a0\u00a0\u00a0\u00a0BLOG:\u00a0<a rel=\"external\" href=\"http:\/\/hotheart.go.3322.org\">http:\/\/hotheart.go.3322.org<\/a><\/span><\/p>\n<p><span style=\"color: #008000;\">;=======================================<\/span><\/p>\n<p>bits\u00a032<\/p>\n<p>org\u00a0\u00a0\u00a0\u00a00x0<\/p>\n<p><span style=\"color: #ff00ff;\">db<\/span> <span style=\"color: #808080;\">'MENUET01'<\/span> <span style=\"color: #008000;\">;\u00a08\u00a0byte\u00a0id<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> 0x01\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0header\u00a0version<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> START\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0start\u00a0of\u00a0code<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> I_END\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0size\u00a0of\u00a0image<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> 0x300000\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0memory\u00a0for\u00a0app<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> 0xffff\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0esp<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> 0x0\u00a0,\u00a00x0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0I_Param\u00a0,\u00a0I_Icon<\/span><\/p>\n<p>START:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0start\u00a0of\u00a0execution<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">eax<\/span>,14\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0\u83b7\u53d6\u5c4f\u5e55\u5206\u8fa8\u7387<\/span><\/p>\n<p><span style=\"color: #0000d0;\">int<\/span> 0x40<\/p>\n<p><span style=\"color: #0000d0;\">xor<\/span> <span style=\"color: #ff0000;\">ebx<\/span>,<span style=\"color: #ff0000;\">ebx<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">bx<\/span>,<span style=\"color: #ff0000;\">ax<\/span><\/p>\n<p><span style=\"color: #0000d0;\">shr<\/span> <span style=\"color: #ff0000;\">eax<\/span>,16<\/p>\n<p><span style=\"color: #0000d0;\">inc<\/span> <span style=\"color: #ff0000;\">eax<\/span> <span style=\"color: #008000;\">;\u00a0X\u00a0size<\/span><\/p>\n<p><span style=\"color: #0000d0;\">inc<\/span> <span style=\"color: #ff0000;\">ebx<\/span> <span style=\"color: #008000;\">;\u00a0Y\u00a0size<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> [scr_x],<span style=\"color: #ff0000;\">eax<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> [scr_y],<span style=\"color: #ff0000;\">ebx<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> [img_w],<span style=\"color: #ff0000;\">eax<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> [img_h],<span style=\"color: #ff0000;\">ebx<\/span><\/p>\n<p><span style=\"color: #0000d0;\">imul<\/span> <span style=\"color: #ff0000;\">ebx<\/span><\/p>\n<p><span style=\"color: #0000d0;\">imul<\/span> <span style=\"color: #ff0000;\">eax<\/span>,3\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0image\u00a0data\u00a0size<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> [img_s],<span style=\"color: #ff0000;\">eax<\/span><\/p>\n<p><span style=\"color: #0000d0;\">add<\/span> <span style=\"color: #ff0000;\">eax<\/span>,0x36\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0BMP\u00a0header\u00a0size<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> [imgf_s],<span style=\"color: #ff0000;\">eax<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> [f_s],<span style=\"color: #ff0000;\">eax<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">esi<\/span>,bminfo\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0fill\u00a0the\u00a0header<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">edi<\/span>,filestart<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ecx<\/span>,0x36\/4<\/p>\n<p><span style=\"color: #0000d0;\">cld<\/span><\/p>\n<p><span style=\"color: #0000d0;\">repz<\/span> <span style=\"color: #0000d0;\">movsd<\/span><\/p>\n<p><span style=\"color: #0000d0;\">call<\/span> draw_window\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0draw\u00a0the\u00a0window<\/span><\/p>\n<p>still:<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">eax<\/span>,10\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0wait\u00a0here\u00a0for\u00a0event<\/span><\/p>\n<p><span style=\"color: #0000d0;\">int<\/span> 0x40<\/p>\n<p><span style=\"color: #0000d0;\">cmp<\/span> <span style=\"color: #ff0000;\">eax<\/span>,1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0redraw\u00a0request\u00a0?<\/span><\/p>\n<p><span style=\"color: #0000d0;\">je<\/span> red<\/p>\n<p><span style=\"color: #0000d0;\">cmp<\/span> <span style=\"color: #ff0000;\">eax<\/span>,2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0key\u00a0in\u00a0buffer\u00a0?<\/span><\/p>\n<p><span style=\"color: #0000d0;\">je<\/span> key<\/p>\n<p><span style=\"color: #0000d0;\">cmp<\/span> <span style=\"color: #ff0000;\">eax<\/span>,3\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0button\u00a0in\u00a0buffer\u00a0?<\/span><\/p>\n<p><span style=\"color: #0000d0;\">je<\/span> button<\/p>\n<p><span style=\"color: #0000d0;\">jmp<\/span> still<\/p>\n<p>red:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0redraw<\/span><\/p>\n<p><span style=\"color: #0000d0;\">call<\/span> draw_window<\/p>\n<p><span style=\"color: #0000d0;\">jmp<\/span> still<\/p>\n<p>key:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0key<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">eax<\/span>,2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0just\u00a0read\u00a0it\u00a0and\u00a0ignore<\/span><\/p>\n<p><span style=\"color: #0000d0;\">int<\/span> 0x40<\/p>\n<p><span style=\"color: #0000d0;\">jmp<\/span> still<\/p>\n<p>button:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0button<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">eax<\/span>,17\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0get\u00a0id<\/span><\/p>\n<p><span style=\"color: #0000d0;\">int<\/span> 0x40<\/p>\n<p><span style=\"color: #0000d0;\">cmp<\/span> <span style=\"color: #ff0000;\">ah<\/span>,1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0button\u00a0id=1\u00a0?<\/span><\/p>\n<p><span style=\"color: #0000d0;\">jne<\/span> .cmdcap<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">eax<\/span>,-1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0close\u00a0this\u00a0program<\/span><\/p>\n<p><span style=\"color: #0000d0;\">int<\/span> 0x40<\/p>\n<p>.cmdcap:<\/p>\n<p><span style=\"color: #0000d0;\">cmp<\/span> <span style=\"color: #ff0000;\">ah<\/span>,cmdcap\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0is\u00a0the\u00a0Capture\u00a0button\u00a0?<\/span><\/p>\n<p><span style=\"color: #0000d0;\">jne<\/span> .cmdsave<\/p>\n<p><span style=\"color: #0000d0;\">call<\/span> capall\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0capture\u00a0the\u00a0whole\u00a0screen<\/span><\/p>\n<p><span style=\"color: #0000d0;\">jmp<\/span> still<\/p>\n<p>.cmdsave:<\/p>\n<p><span style=\"color: #0000d0;\">cmp<\/span> <span style=\"color: #ff0000;\">ah<\/span>,cmdsave\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0is\u00a0the\u00a0save\u00a0button<\/span><\/p>\n<p><span style=\"color: #0000d0;\">jne<\/span> .end<\/p>\n<p><span style=\"color: #0000d0;\">call<\/span> savefile\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0save\u00a0the\u00a0file<\/span><\/p>\n<p><span style=\"color: #0000d0;\">jmp<\/span> still<\/p>\n<p>.end:<\/p>\n<p><span style=\"color: #0000d0;\">jmp<\/span> still<\/p>\n<p><span style=\"color: #008000;\">;\u00a0\u00a0\u00a0*********************************************<\/span><\/p>\n<p><span style=\"color: #008000;\">;\u00a0\u00a0\u00a0*******\u00a0\u00a0WINDOW\u00a0DEFINITIONS\u00a0AND\u00a0DRAW\u00a0********<\/span><\/p>\n<p><span style=\"color: #008000;\">;\u00a0\u00a0\u00a0*********************************************<\/span><\/p>\n<p>draw_window:<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">eax<\/span>,12\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0function\u00a012:tell\u00a0os\u00a0about\u00a0windowdraw<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ebx<\/span>,1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a01,\u00a0start\u00a0of\u00a0draw<\/span><\/p>\n<p><span style=\"color: #0000d0;\">int<\/span> 0x40<\/p>\n<p><span style=\"color: #008000;\">;\u00a0DRAW\u00a0WINDOW<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">eax<\/span>,0<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ebx<\/span>,[scr_x]<\/p>\n<p><span style=\"color: #0000d0;\">sub<\/span> <span style=\"color: #ff0000;\">ebx<\/span>,win_w+5<\/p>\n<p><span style=\"color: #0000d0;\">imul<\/span> <span style=\"color: #ff0000;\">ebx<\/span>,65536<\/p>\n<p><span style=\"color: #0000d0;\">add<\/span> <span style=\"color: #ff0000;\">ebx<\/span>,win_w<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ecx<\/span>,[scr_y]<\/p>\n<p><span style=\"color: #0000d0;\">sub<\/span> <span style=\"color: #ff0000;\">ecx<\/span>,win_h+25<\/p>\n<p><span style=\"color: #0000d0;\">imul<\/span> <span style=\"color: #ff0000;\">ecx<\/span>,65536<\/p>\n<p><span style=\"color: #0000d0;\">add<\/span> <span style=\"color: #ff0000;\">ecx<\/span>,win_h<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">edx<\/span>,0x03ffffff<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">esi<\/span>,0x40ffffff<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">edi<\/span>,0x00ffffff<\/p>\n<p><span style=\"color: #0000d0;\">int<\/span> 0x40<\/p>\n<p><span style=\"color: #008000;\">;\u00a0WINDOW\u00a0LABEL<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">eax<\/span>,4\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0function\u00a04\u00a0:\u00a0write\u00a0text\u00a0to\u00a0window<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ebx<\/span>,8*65536+8\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0[x\u00a0start]\u00a0*65536\u00a0+\u00a0[y\u00a0start]<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ecx<\/span>,0x10ddeeff\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0font\u00a01\u00a0&amp;\u00a0color\u00a0(\u00a00xF0RRGGBB\u00a0)<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">edx<\/span>,labelt\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0pointer\u00a0to\u00a0text\u00a0beginning<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">esi<\/span>,labellen-labelt\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0text\u00a0length<\/span><\/p>\n<p><span style=\"color: #0000d0;\">int<\/span> 0x40<\/p>\n<p><span style=\"color: #008000;\">;\u00a0Button\u00a0Capture<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">eax<\/span>,8<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ebx<\/span>,10*65536+40<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ecx<\/span>,(win_h-10-14)*65536+14<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">edx<\/span>,cmdcap<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">esi<\/span>,0xaabbcc<\/p>\n<p><span style=\"color: #0000d0;\">int<\/span> 0x40<\/p>\n<p><span style=\"color: #008000;\">;\u00a0Button\u00a0Save<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">eax<\/span>,8<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ebx<\/span>,(10+40+10)*65536+40<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ecx<\/span>,(win_h-10-14)*65536+14<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">edx<\/span>,cmdsave<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">esi<\/span>,0xaabbcc<\/p>\n<p><span style=\"color: #0000d0;\">int<\/span> 0x40<\/p>\n<p><span style=\"color: #008000;\">;\u00a0Button\u00a0Text<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">eax<\/span>,4\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0function\u00a04\u00a0:\u00a0write\u00a0text\u00a0to\u00a0window<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ebx<\/span>,18*65536+(win_h-10-14+4)<span style=\"color: #008000;\">;\u00a0[x\u00a0start]\u00a0*65536\u00a0+\u00a0[y\u00a0start]<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ecx<\/span>,0x00444444\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0font\u00a01\u00a0&amp;\u00a0color\u00a0(\u00a00xF0RRGGBB\u00a0)<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">edx<\/span>,btext\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0pointer\u00a0to\u00a0text\u00a0beginning<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">esi<\/span>,btexte-btext\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0text\u00a0length<\/span><\/p>\n<p><span style=\"color: #0000d0;\">int<\/span> 0x40<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">eax<\/span>,12\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0function\u00a012:tell\u00a0os\u00a0about\u00a0windowdraw<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ebx<\/span>,2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a02,\u00a0end\u00a0of\u00a0draw<\/span><\/p>\n<p><span style=\"color: #0000d0;\">int<\/span> 0x40<\/p>\n<p><span style=\"color: #0000d0;\">ret<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">eax<\/span>,47\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0display\u00a0the\u00a0screen\u00a0size<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ebx<\/span>,4*65536<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ecx<\/span>,[scr_x]<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">edx<\/span>,120*65536+30<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">esi<\/span>,0x0<\/p>\n<p><span style=\"color: #0000d0;\">int<\/span> 0x40<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">eax<\/span>,47<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ebx<\/span>,4*65536<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ecx<\/span>,[scr_y]<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">edx<\/span>,120*65536+40<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">esi<\/span>,0x0<\/p>\n<p><span style=\"color: #0000d0;\">int<\/span> 0x40<\/p>\n<p>capall:<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">edi<\/span>,imgarea<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ecx<\/span>,[scr_y]<\/p>\n<p><span style=\"color: #0000d0;\">cld<\/span><\/p>\n<p>.nextline:<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ebx<\/span>,<span style=\"color: #ff0000;\">ecx<\/span><\/p>\n<p><span style=\"color: #0000d0;\">dec<\/span> <span style=\"color: #ff0000;\">ebx<\/span><\/p>\n<p><span style=\"color: #0000d0;\">imul<\/span> <span style=\"color: #ff0000;\">ebx<\/span>,[scr_x]<\/p>\n<p><span style=\"color: #0000d0;\">push<\/span> <span style=\"color: #ff0000;\">ecx<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ecx<\/span>,[scr_x]<\/p>\n<p>.capline:<\/p>\n<p><span style=\"color: #0000d0;\">push<\/span> <span style=\"color: #ff0000;\">edi<\/span><\/p>\n<p><span style=\"color: #0000d0;\">push<\/span> <span style=\"color: #ff0000;\">ebx<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">eax<\/span>,35\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0get\u00a0pixel<\/span><\/p>\n<p><span style=\"color: #0000d0;\">int<\/span> 0x40<\/p>\n<p><span style=\"color: #0000d0;\">stosd<\/span><\/p>\n<p><span style=\"color: #0000d0;\">pop<\/span> <span style=\"color: #ff0000;\">ebx<\/span><\/p>\n<p><span style=\"color: #0000d0;\">pop<\/span> <span style=\"color: #ff0000;\">edi<\/span><\/p>\n<p><span style=\"color: #0000d0;\">inc<\/span> <span style=\"color: #ff0000;\">ebx<\/span><\/p>\n<p><span style=\"color: #0000d0;\">add<\/span> <span style=\"color: #ff0000;\">edi<\/span>,3<\/p>\n<p><span style=\"color: #0000d0;\">loop<\/span> .capline<\/p>\n<p><span style=\"color: #0000d0;\">pop<\/span> <span style=\"color: #ff0000;\">ecx<\/span><\/p>\n<p><span style=\"color: #0000d0;\">loop<\/span> .nextline<\/p>\n<p>.end:<\/p>\n<p><span style=\"color: #0000d0;\">ret<\/span><\/p>\n<p>savefile:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0save\u00a0the\u00a0file<\/span><\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">eax<\/span>,58<\/p>\n<p><span style=\"color: #0000d0;\">mov<\/span> <span style=\"color: #ff0000;\">ebx<\/span>,fileinfo<\/p>\n<p><span style=\"color: #0000d0;\">int<\/span> 0x40<\/p>\n<p><span style=\"color: #0000d0;\">ret<\/span><\/p>\n<p><span style=\"color: #008000;\">;\u00a0DATA\u00a0AREA<\/span><\/p>\n<p>win_w\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #ff00ff;\">equ<\/span> 250<\/p>\n<p>win_h\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #ff00ff;\">equ<\/span> 50<\/p>\n<p>cmdcap\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #ff00ff;\">equ<\/span> 2<\/p>\n<p>cmdsave\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #ff00ff;\">equ<\/span> 3<\/p>\n<p>filestart\u00a0\u00a0\u00a0\u00a0<span style=\"color: #ff00ff;\">equ<\/span> 0x20000<\/p>\n<p>imgarea\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #ff00ff;\">equ<\/span> filestart+0x36<\/p>\n<p>scr_x\u00a0\u00a0\u00a0\u00a0<span style=\"color: #ff00ff;\">dd<\/span> 0<\/p>\n<p>scr_y\u00a0\u00a0\u00a0\u00a0<span style=\"color: #ff00ff;\">dd<\/span> 0<\/p>\n<p>zoom\u00a0\u00a0\u00a0\u00a0<span style=\"color: #ff00ff;\">dd<\/span> 2<\/p>\n<p>fileinfo:<\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> 1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a01=WRITE<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> 0x0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0not\u00a0used<\/span><\/p>\n<p>f_s\u00a0\u00a0<span style=\"color: #ff00ff;\">dd<\/span> 800*600*3+0x36\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0bytes\u00a0to\u00a0write<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> filestart\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0source\u00a0data\u00a0pointer<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> 0x10000\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0work\u00a0area\u00a0for\u00a0os\u00a0-\u00a016384\u00a0bytes<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">db<\/span> <span style=\"color: #808080;\">'\/HD\/1\/TEST.BMP'<\/span>,0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0ASCIIZ\u00a0dir\u00a0&amp;\u00a0filename<\/span><\/p>\n<p>btext:\u00a0\u00a0<span style=\"color: #ff00ff;\">db<\/span> <span style=\"color: #808080;\">'\u00a0Cat\u00a0\u00a0\u00a0\u00a0\u00a0Save\u00a0\u00a0'<\/span><\/p>\n<p>btexte:<\/p>\n<p>labelt:<\/p>\n<p><span style=\"color: #ff00ff;\">db<\/span> <span style=\"color: #808080;\">'HotCats\u00a00.1\u00a0-\u00a0HotHeart\u00a0HotWorks\u00a02005'<\/span><\/p>\n<p>labellen:<\/p>\n<p>bminfo:<\/p>\n<p><span style=\"color: #ff00ff;\">db<\/span> <span style=\"color: #808080;\">'BM'<\/span> <span style=\"color: #008000;\">;\u00a00000-0001\u00a0\u4f4d\u56fe\u6807\u5fd7<\/span><\/p>\n<p>imgf_s\u00a0\u00a0\u00a0\u00a0<span style=\"color: #ff00ff;\">dd<\/span> 800*600*3+0x36\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a00002-0005\u00a0\u6587\u4ef6\u5927\u5c0f<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> 0x0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a00006-0009\u00a0\u4fdd\u7559<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">db<\/span> 0x36,0x0,0x0,0x0<span style=\"color: #008000;\">;\u00a0000A-000D\u00a0\u6587\u4ef6\u5934\u4fe1\u606f\u5757\u5927\u5c0f,\u56fe\u50cf\u63cf\u8ff0\u4fe1\u606f\u5757\u7684\u5927\u5c0f,\u56fe\u50cf\u989c\u8272\u8868\u7684\u5927\u5c0f,\u4fdd\u7559(\u4e3a01)<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> 0x28\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0000E-0011\u00a0\u56fe\u50cf\u63cf\u8ff0\u4fe1\u606f\u5757\u7684\u5927\u5c0f\uff0c\u5e38\u4e3a28H\u3002<\/span><\/p>\n<p>img_w\u00a0\u00a0\u00a0\u00a0<span style=\"color: #ff00ff;\">dd<\/span> 800\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a00012-0015\u00a0\u00a0\u00a0\u00a0\u56fe\u50cf\u5bbd\u5ea6\u3002<\/span><\/p>\n<p>img_h\u00a0\u00a0\u00a0\u00a0<span style=\"color: #ff00ff;\">dd<\/span> 600\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a00016-0019\u00a0\u00a0\u00a0\u00a0\u56fe\u50cf\u9ad8\u5ea6\u3002<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dw<\/span> 0x1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0001A-001B\u00a0\u00a0\u00a0\u00a0\u56fe\u50cf\u7684plane\u603b\u6570\uff08\u6052\u4e3a1\uff09\u3002<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dw<\/span> 24\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0001C-001D\u00a0\u00a0\u00a0\u00a0\u6570\u636e\u538b\u7f29\u65b9\u5f0f\uff08\u6570\u503c\u4f4d0\uff1a\u4e0d\u538b\u7f29\uff1b1\uff1a8\u4f4d\u538b\u7f29\uff1b2\uff1a4\u4f4d\u538b\u7f29\uff09\u3002<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> 0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0001E-0021\u00a0\u00a0\u00a0\u00a0\u8bb0\u5f55\u50cf\u7d20\u7684\u4f4d\u6570\uff0c\u5f88\u91cd\u8981\u7684\u6570\u503c\uff0c\u56fe\u50cf\u7684\u989c\u8272\u6570\u7531\u8be5\u503c\u51b3\u5b9a\u3002<\/span><\/p>\n<p>img_s\u00a0\u00a0\u00a0\u00a0<span style=\"color: #ff00ff;\">dd<\/span> 800*600*3\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a00022-0025\u00a0\u00a0\u00a0\u00a0\u56fe\u50cf\u533a\u6570\u636e\u7684\u5927\u5c0f\u3002<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> 0x0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a00026-0029\u00a0\u00a0\u00a0\u00a0\u6c34\u5e73\u6bcf\u7c73\u6709\u591a\u5c11\u50cf\u7d20\uff0c\u5728\u8bbe\u5907\u65e0\u5173\u4f4d\u56fe\uff08.DIB\uff09\u4e2d\uff0c\u6bcf\u5b57\u8282\u4ee500H\u586b\u5199\u3002<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> 0x0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0002A-002D\u00a0\u00a0\u00a0\u00a0\u5782\u76f4\u6bcf\u7c73\u6709\u591a\u5c11\u50cf\u7d20\uff0c\u5728\u8bbe\u5907\u65e0\u5173\u4f4d\u56fe\uff08.DIB\uff09\u4e2d\uff0c\u6bcf\u5b57\u8282\u4ee500H\u586b\u5199\u3002<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> 0x0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a0002E-0031\u00a0\u00a0\u00a0\u00a0\u6b64\u56fe\u50cf\u6240\u7528\u7684\u989c\u8272\u6570\uff0c\u5982\u503c\u4e3a0\uff0c\u8868\u793a\u6240\u6709\u989c\u8272\u4e00\u6837\u91cd\u8981\u3002<\/span><\/p>\n<p><span style=\"color: #ff00ff;\">dd<\/span> 0x0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #008000;\">;\u00a00032-0035\u00a0\u672a\u7528<\/span><\/p>\n<p>I_END:<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u7528\u6765\u5728MEOS\u91cc\u6293\u53d6\u5c4f\u5e55\uff0c\u4e0d\u8fc7\u8fd9\u4e2a\u7248\u672c\u5e76\u4e0d\u5b8c\u5584\u3002 \u5728\u8fd9\u4e2a\u7248\u672c\u91cc\uff0c\u7a0b\u5e8f\u6240\u7528\u7684\u65b9\u6cd5\u662f &hellip;<\/p>\n<p class=\"read-more\"><a href=\"https:\/\/xujiwei.com\/blog\/2005\/07\/menuetos-hotcats-0-1-code-comments\/\">\u7ee7\u7eed\u9605\u8bfb &raquo;<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[5],"tags":[80,88,89],"_links":{"self":[{"href":"https:\/\/xujiwei.com\/blog\/wp-json\/wp\/v2\/posts\/132"}],"collection":[{"href":"https:\/\/xujiwei.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/xujiwei.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/xujiwei.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/xujiwei.com\/blog\/wp-json\/wp\/v2\/comments?post=132"}],"version-history":[{"count":0,"href":"https:\/\/xujiwei.com\/blog\/wp-json\/wp\/v2\/posts\/132\/revisions"}],"wp:attachment":[{"href":"https:\/\/xujiwei.com\/blog\/wp-json\/wp\/v2\/media?parent=132"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/xujiwei.com\/blog\/wp-json\/wp\/v2\/categories?post=132"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/xujiwei.com\/blog\/wp-json\/wp\/v2\/tags?post=132"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}