что то не так:((

Тема в разделе "WASM.BEGINNERS", создана пользователем giskar, 2 авг 2007.

  1. giskar

    giskar New Member

    Публикаций:
    0
    Регистрация:
    2 авг 2007
    Сообщения:
    43
    Привет. Помогите пжалста,товарищи асмоведы, начинающему. У меня горе, код не асмится. Вот код:
    Код (Text):
    1. model small
    2.  
    3. stack 100h
    4.  
    5. delay makro time
    6.      local ext,iter
    7.      push cx
    8.      mov cx,time
    9.      
    10. exit:
    11.      push cx
    12.      mov cx,5000
    13.      
    14. iter:
    15.      loop iter
    16.      pop cx
    17.      loop ext
    18.      pop cx
    19.  
    20. endm
    21.  
    22. .data
    23. tonelow dw 2651
    24. cnt db 0
    25. temp dw ?
    26.  
    27. .code
    28. main:
    29.      mov ax,@data
    30.      mov ds,ax
    31.      mov ax,0
    32.      
    33. go:
    34.    mov al,0B6h
    35.    out 43h,al
    36.    in al,61h
    37.    or al,3
    38.    out 61h,al
    39.    
    40.    mov cx,2083
    41.    
    42. musicup:
    43.         mov ax,tonelow
    44.         out 42h,al
    45.         xchg al,ah
    46.         out 42h,al
    47.         add tonelow,1
    48.         delay 1
    49.         mov dx,tonelow
    50.         mov temp,dx
    51.         loop musicup
    52.        
    53.         mov cx,2083
    54.        
    55. musicdown:
    56.           mov ax,temp
    57.           out 42h,al
    58.           mov al,ah
    59.           out 42h,al
    60.           sub temp,1
    61.           delay 1
    62.           loop musicdown
    63.          
    64. nosound:
    65.         in al,61h
    66.         and al,0FCh
    67.         out 61h,al
    68.         mov dx,2651
    69.         mov tonelow,dx
    70.         inc cnt
    71.        
    72.         cmp cnt,5
    73.         jne go
    74.        
    75. exit:
    76.      mov ax,4C00h
    77.      int 21h
    78.    
    79. end main
    Это прога из Юрова, кто не узнал. Она при ассемблировании выдаёк кучу ошибок, непонятно почему. Ассемблирую МASM-ом так: ml.exe w.asm /AT . Подскажите что не так. Заранее спасибо.
     
  2. rmn

    rmn Well-Known Member

    Публикаций:
    0
    Регистрация:
    23 ноя 2004
    Сообщения:
    2.347
    .model
    .stack
     
  3. censored

    censored New Member

    Публикаций:
    0
    Регистрация:
    5 июл 2005
    Сообщения:
    1.615
    Адрес:
    деревня "Анонимные Прокси"
    rmn, это тут роли не играет :)

    1. /AT не надо;
    2. delay makro time (надо macro);
    3. В макросе exit (надо ext).

    !!ВНИМАТЕЛЬНЕЕ!!
     
  4. giskar

    giskar New Member

    Публикаций:
    0
    Регистрация:
    2 авг 2007
    Сообщения:
    43
    Спасибо большое, всё работает, а точку перед model small и stack 100h всё таки надо ставить.