User Tag List

Показано с 141 по 150 из 178

Тема: 64х48 - 8 цветов на точку.

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #11

    Регистрация
    10.01.2010
    Адрес
    Смоленская обл.
    Сообщений
    559
    Спасибо Благодарностей отдано 
    188
    Спасибо Благодарностей получено 
    199
    Поблагодарили
    101 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от DragonsLord Посмотреть сообщение
    А научи конверить из ZXASM в sjasm. А то мне надо уже сильно.
    Ага люблю учить тому чего сам не умею )) Хотя тут наука то не велика на самом деле. Возни только много без конвертера ))

    Во первых перекодируем ZASMовские исходники в обычный текст без упаковки пробелов. Я делал средствами самого ZASMа и вытаскивал на ПЦ. Если файл был сильно большой для конверсии - делил пополам.

    Во вторых уже на ПЦ переписываем макросы засма в макросы ужасма )))

    Пример:

    ZASM



    Код:
    MACROS_MAC_INCLUDED
    ;ISR_ENTER OLD_SP,JUMP_ADR,ISR_SP
    ISR_ENTER MACRO:EX (SP),HL:LD (=1),HL:EX (SP),HL:INC SP,SP:LD (=2),SP
              LD SP,=3:PUSHA:EXX:EXA:PUSHA:PUSH IX,IY:LD A,(PAGE):PUSH AF:ENDM
    ;ISR_LEAVE
    ISR_LEAVE MACRO:POP AF:CALL LKL:POP IY,IX:POPA:EXX:EXA:POPA:ENDM
    GETA    MACRO:DEC SP:POP AF:ENDM
    NEGHL   MACRO:XOR A:SUB L:LD L,A:SBC A,H:SUB L:LD H,A:ENDM
    NEGDE   MACRO:XOR A:SUB E:LD E,A:SBC A,D:SUB E:LD D,A:ENDM
    NEGBC   MACRO:XOR A:SUB C:LD C,A:SBC A,B:SUB C:LD B,A:ENDM
    STA     MACRO:LD (HL),A:INC HL:ENDM
    STDE    MACRO:LD (HL),E:INC HL:LD (HL),D:INC HL:ENDM
    STBC    MACRO:LD (HL),C:INC HL:LD (HL),B:INC HL:ENDM
    STB     MACRO:LD (HL),=1:INC HL:ENDM
    STW     MACRO:STB =1:STB =1.h:ENDM
    LODBC   MACRO:LD C,(HL):INC HL:LD B,(HL):INC HL:ENDM
    LODDE   MACRO:LD E,(HL):INC HL:LD D,(HL):INC HL:ENDM
    LODA    MACRO:LD A,(HL):INC HL:ENDM
    GENASN  MACRO:LD D,=1.h:CALL GENASN_:ENDM
    GENXX   MACRO:LD D,=1.h:CALL GENXX_:ENDM
    INISIN  MACRO:LD D,=1.h:CALL INISIN_:ENDM
    PUSHA   MACRO:PUSH AF,BC,DE,HL:ENDM
    POPA    MACRO:POP HL,DE,BC,AF:ENDM
    POPLD   MACRO:POP HL:LD (#2222),HL:ENDM
    DEPSCRA MACRO:LD HL,=1:LD DE,=2:LD BC,=3:SCF:CALL _DEPSCR:ENDM
    DEPSCR  MACRO:LD HL,=1:LD DE,=2:LD BC,=3:OR A:CALL _DEPSCR:ENDM
    LDHLDE  MACRO:LD H,D:LD L,E:ENDM
    LDDEHL  MACRO:LD D,H:LD E,L:ENDM
    LDCOUNT MACRO:LD BC,=1.b*256+((=1.b+255).h)+=1.h:ENDM
    LOOP    MACRO:DJNZ =1:DEC C:JRNZ =1:ENDM
    [свернуть]

    SjASMplus может и с ошибками ))


    Код:
    MACROS_MAC_INCLUDED
    
      MACRO PUSHA                : PUSH AF,BC,DE,HL : ENDM
      MACRO POPA                 : POP HL,DE,BC,AF : ENDM
    
    ;ISR_ENTER OLD_SP,JUMP_ADR,ISR_SP               
      MACRO  ISR_ENTER  OLD_SP_, JUMP_ADR_, ISR_SP_
                           EX (SP),HL : LD (OLD_SP_),HL : EX (SP),HL : INC SP: INC SP : LD (JUMP_ADR_),SP
                           LD SP,ISR_SP_ : PUSH AF : EXX : EXA : PUSHA : PUSH IX,IY : LD A,(PAGE) : PUSH AF           
       ENDM             
                     
    ;ISR_LEAVE
      MACRO ISR_LEAVE            : POP AF : CALL LKL : POP IY,IX : POPA : EXX : EXA : POPA : ENDM
      MACRO GETA                 : DEC SP : POP AF : ENDM
      MACRO NEGHL                : XOR A : SUB L : LD L,A : SBC A,H : SUB L : LD H,A : ENDM
      MACRO NEGDE                : XOR A : SUB E : LD E,A : SBC A,D : SUB E : LD D,A : ENDM
      MACRO NEGBC                : XOR A : SUB C : LD C,A : SBC A,B : SUB C : LD B,A : ENDM
      MACRO STA                  : LD (HL),A : INC HL : ENDM
      MACRO STDE                 : LD (HL),E : INC HL : LD (HL),D : INC HL : ENDM
      MACRO STBC                 : LD (HL),C : INC HL : LD (HL),B : INC HL : ENDM
      MACRO STB  b1              : LD (HL),b1 : INC HL : ENDM
      MACRO STW  w1              : STB low w1 : STB high w1 : ENDM
      MACRO LODBC                : LD C,(HL) : INC HL : LD B,(HL) : INC HL : ENDM
      MACRO LODDE                : LD E,(HL) : INC HL : LD D,(HL) : INC HL : ENDM
      MACRO LODA                 : LD A,(HL) : INC HL : ENDM
      MACRO GENASN  h1           : LD D, high h1 : CALL GENASN_ : ENDM
      MACRO GENXX   h1           : LD D, high h1 : CALL GENXX_ : ENDM
      MACRO INISIN  h1           : LD D, high h1 : CALL INISIN_ : ENDM
    
      MACRO POPLD                : POP HL : LD (#2222),HL : ENDM
      MACRO DEPSCRA  a1, a2 ;, a3  :
                                   LD HL,a1 : LD DE,a2 ; : LD BC,a3 : 
                                   SCF : CALL _DEPSCR : ENDM
      MACRO DEPSCR  a1, a2 ;, a3   :
                                   LD HL,a1 : LD DE,a2 ; : LD BC,a3 :
                                   OR A : CALL _DEPSCR : ENDM
      MACRO LDHLDE               : LD H,D : LD L,E : ENDM
      MACRO LDDEHL               : LD D,H : LD E,L : ENDM
      MACRO LDCOUNT  a1          : LD BC, ( low a1 )*256+( high (( low a1 )+255)+(high a1) :ENDM
      MACRO LOOP   retadr        : DJNZ retadr : DEC C : JRNZ retadr : ENDM
    [свернуть]

    Тут есть моменты:
    1) Ужасм не умеет постопределений, поэтому скажем POPA, PUSHA надо вытащить вверх.
    2) .h , .b и т.п. выполняются через функции high и low
    3) Да х.з.


    В третьих - условная компиляция.
    У ужасма используется раздельное поле адресов меток и определений и те условия которые ZASM использует для меток - SjASMplus будет пытаться применить для определений. Более того аналог условия существования метки появился только в чешской версии ужасма 1.18.2

    ZASM
    Код:
            IFNDEF PG0
            INCLUDE "E:PAGES.asm"
            ENDIF
    SjASMplus 1.18.2

    Код:
           IFN exist PG0
           INCLUDE "PAGES.asm"
           ENDIF
    Ну и в четвёртых ручками подправляем засмовские сокращённые мнемоники в человеческий вид. ))

    А да ещё забыл - в начало основного файла добавить device zxspectrum128 а в конец сохранение файла в нужном формате ))
    Последний раз редактировалось Dart Alver; 07.04.2021 в 18:01.

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Есть ли у вас цвет на точку?
    от alone в разделе Изображение
    Ответов: 96
    Последнее: 02.05.2013, 23:04
  2. Ответов: 70
    Последнее: 17.03.2008, 16:24

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •