نمایش نتایج 1 تا 6 از 6

نام تاپیک: خطا در رفتن به مُد گرافیکی در Emu8086

  1. #1

    خطا در رفتن به مُد گرافیکی در Emu8086

    با سلام دوستان
    یه سوالی داشتم. موقعی که میخام تو Emu8086 برم تو مُد گرافیکی، وقتی وقفشو صدا میزنم، وقتی میخام مثلا یه پیکسلو روشن کنم، خطا میده میگه نمیتونه به مُد گرافیکی بره. مشکلش چیه؟
    این پیغامو میده:
    set_VIDEO_MODE: unsupported video mode: 4h
    the emulator is halted.
    از تابع 0 وقفه ی 10h واسه این کار استفاده میکنم:

    MOV AH,0
    MOV AL,12H
    INT 10H

    MOV CX,200
    MOV DX,200
    MOV AL,4
    MOV BH,0
    INT 10H

  2. #2

    نقل قول: خطا در رفتن به مُد گرافیکی در Emu8086

    برای رسم پیکسل باید تابع 0cH استفاده کنید،کافیه در خط چهارم mov ah,0ch قرار بدین
    موفق باشی

  3. #3

    نقل قول: خطا در رفتن به مُد گرافیکی در Emu8086

    شرمنده تایپک قدیمی رو بالا میارم ولی منم همین مشکل رو دارم

    ; multi-segment executable file template.

    data segment
    ; add your data here!

    ends

    stack segment
    dw 128 dup(0)
    ends

    code segment
    start:
    ; set segment registers:
    mov ax, data
    mov ds, ax
    mov es, ax

    ; add your code here
    mov al,04h
    mov ah,0
    int 10h

    mov cx,300
    mov dx,100
    mov ah,0ch
    mov bh,0
    mov al,3
    int 10h
    ; output string at ds:dx


    ends

    end start ; set entry point and stop the assembler.

    مقع اجرا پیغام زیر رو میده

    set_VIDEO_MODE: unsupported video mode: 4h
    not graphical mode!
    use this code to set graphics mode:
    mov ah, 0
    mov al, 13h
    int 10h


    خوش داره میگه از 13h استفاده کنم ولی من می خوام یا از 4 یا 12h استفاده کنم
    ویندوز x64 7

  4. #4
    کاربر جدید آواتار pr0tector
    تاریخ عضویت
    شهریور 1391
    محل زندگی
    ایران
    پست
    22

    نقل قول: خطا در رفتن به مُد گرافیکی در Emu8086

    کامپایلر Eme8086 توابع 4h و 12h رو پشتیبانی نمیکنه ، اما بجاش شما میتونید از کد زیر برای تغییر مد مونیتور استفاده کنید

    mov al, 13h
    mov ah, 0
    int 10h ; set graphics video mode.
    mov al, 1100b
    mov cx, 10
    mov dx, 20
    mov ah, 0ch
    int 10h ; set pixel


    AL = pixel color
    CX = column.
    DX = row.

    برای آشنایی بیشتر به Help نرم افزار Emu8086 و یا وبسایتش مراجعه کنید.

  5. #5

    نقل قول: خطا در رفتن به مُد گرافیکی در Emu8086

    با سلام
    دوستان در مورد emu باید عرض کنم که بعضی از وقفه ها رو کلا نمیشناسه برای دیدن این وقفه می تونید به قسمت help برنامه برید بعد به قسمت Short List of Supported Interrupt Functions و بعد وقفه مورد نظر رو انتخاب کنید مثلا INT 10h/00h
    که وقفه 10 شامل اطلاعات زیر است:
    INT 10h / AH = 0 - set video mode.
    input:
    AL = desired video mode.

    these video modes are supported:

    00h - text mode. 40x25. 16 colors. 8 pages.

    03h - text mode. 80x25. 16 colors. 8 pages.

    13h - graphical mode. 40x25. 256 colors. 320x200 pixels. 1 page.
    example: mov al, 13h mov ah, 0 int 10h

  6. #6

    نقل قول: خطا در رفتن به مُد گرافیکی در Emu8086

    راهی برای استفاده وجود نداره ؟

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •