User Tag List

Страница 114 из 157 ПерваяПервая ... 110111112113114115116117118 ... ПоследняяПоследняя
Показано с 1,131 по 1,140 из 1564

Тема: Программирование на УКНЦ как?

  1. #1131

    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    374
    Поблагодарили
    311 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    классная шпора-исходник на последнем образе
    Код:
    ;    ПРОГРАММИРОВАНИЕ КЛЮЧЕЙ
    ;    =======================
    
        .MCALL    .EXIT
    
    PKL:    MOV    #TKL,R1
        BR    1$
    
    2$:    TSTB    @#177564
        BPL    2$
        MOVB    R0,@#177566
    1$:    MOVB    (R1)+,R0
        BNE    2$
    
        .EXIT
    
    TKL:
        .ASCII    <33><164><60><60>/*/
        .ASCII    \-KK ZNKT\<15>            ;- К1
        .ASCII    \-EX ZNKT\<15>            ;- К2
        .ASCII    \-ZNKT\<15>            ;- К3
        .ASCII    \- \                ;- К4
        .ASCII    \- \                ;- К5
        .ASCII    \-*\
        .ASCII    <33><164><61><60>/*/
        .ASCII    \-Dir .BAK\<15>            ;- НР/К1
        .ASCII    \-Dir/fu\<15>            ;- НР/К2
        .ASCII    \-Copy/pred (\            ;- НР/К3
        .ASCII    \-).mac SY:\<15>        ;- НР/К4
        .ASCII    \-Del/noq .BAK\<15>        ;- НР/К5
        .ASCII    \-*\
        .ASCII    <33><164><62><60>/*/
        .ASCII    \-\<33>\P\<33>\?wLIST \        ;- УПР/К1
        .ASCII    \-\<33>\P\<33>\?wQUIT\<33>\?M\     ;- УПР/К2
        .ASCII    \-\<33>\P\<33>\?wEDIT \        ;- УПР/К3
        .ASCII    \- \                ;- УПР/К4
        .ASCII    \-\<33>\P\<33>\?wEXIT\<33>\?M\    ;- УПР/К5
        .ASCII    \-*\
        .ASCII    <33><164><63><60>/*/
        .ASCII    \-Dir/bad/fi\<15>        ;- ФИКС/К1
        .ASCII    \-Copy/w/dev SY: DK:\<15>    ;- ФИКС/К2
        .ASCII    \-Del/noq .BAK\<15>        ;- ФИКС/К3
        .ASCII    \-Sq/noq DK:\<15>        ;- ФИКС/К4
        .ASCII    \- \                ;- ФИКС/К5
        .ASCIZ    \-*\
        .EVEN
    
        .END    PKL
    Последний раз редактировалось hobot; 21.09.2019 в 16:39.
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

  2. #1132

    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    374
    Поблагодарили
    311 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    с того же образа "скомпилировал" MUZ.MAC
    Код:
     ! Apxивный paздeл ЖД !            ЛAТ                                          
                                                                                    
                        M У З Ы К A Л Ь Н Ы Й   M A Г A З И Н                       
                        =====================================                       
                                                                                    
                                                                                    
                                                                                    
                              Н A Б O P   M E Л O Д И Й                             
                              -------------------------                             
                                                                                    
                                 1 - MEЛOДИЯ 1 ( M1 )E                              
                                 2 - MEЛOДИЯ 2 ( M2 )                               
                                 3 - MEЛOДИЯ 3 ( M3 )                               
                                 4 - MEЛOДИЯ 4 ( M4 )                               
                                 5 - MEЛOДИЯ 5 ( M5 )                               
                                 6 - MEЛOДИЯ 6 ( M6 )                               
                                 7 - MEЛOДИЯ 7 ( M7 )                               
                                 8 - MEЛOДИЯ 8 ( M8 )                               
                                 9 - MEЛOДИЯ 9 ( M9 )                               
                                                                                    
                                 0 -  BЫXOД                                         
                                                                                    
                                                                                    
                                                                                    
                                                                                    
     ! Apxивный paздeл ЖД !
    ПРОГРАММА успешно запустилась, ищет - хочет в качестве мелодий
    Mn.TXT пронумерованные файлы. Подсовывал ей M1.TXT для теста,
    содеращего мелодию из MUZRED.SAV - сплошной гул стандартным
    звуком на выходе, прервать и выйти в монитор только через
    стоп>0>исп получилось. Шпоры-описания к ней нет увы, как понять
    что она хочет в качестве нот ???
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

  3. #1133

    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,505
    Спасибо Благодарностей отдано 
    344
    Спасибо Благодарностей получено 
    713
    Поблагодарили
    595 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    как понять что она хочет
    Посмотреть
    Цитата Сообщение от hobot Посмотреть сообщение
    MUZ.MAC
    Там всё есть

  4. #1134

    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    374
    Поблагодарили
    311 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hunta Посмотреть сообщение
    Там всё есть
    это домысел или факт?
    я не настолько сильно рюхаю макроассемблер, сопроводите ваш комментарий файлом с нужными входными?или подробнее опишите распишите октаву?
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

  5. #1135

    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,505
    Спасибо Благодарностей отдано 
    344
    Спасибо Благодарностей получено 
    713
    Поблагодарили
    595 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    это домысел или факт?
    Если это программа для проигрывания файлов, очевидно, что там есть разборщик файлов и проигрыватель нот.
    Вы спросили:
    Цитата Сообщение от hobot Посмотреть сообщение
    как понять что она хочет в качестве нот ???
    я ответил - при наличии исходника (да ещё и такого мелкого) - проблем в этом нет

  6. #1136

    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    374
    Поблагодарили
    311 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hunta Посмотреть сообщение
    там есть разборщик файлов и проигрыватель нот.
    там и коментарии есть о входящем формате я ничего не увидел кроме заранее прописанных имён файлов,
    как я понял там что с таймером связано, а сама программа кидается в ОЗУ ПП
    Код:
    ;   *********************************************
    ;   *                        *
    ;   *    М У З Ы К А Л Ь Н Ы Й   М А Г А З И Н   *
    ;   *                        *
    ;   *********************************************
    
    
    ;    L9 = 0
    
    
    MUZ::    .MCALL    .EXIT,.LOOKUP,.READW,.CLOSE
    
    
    ;    К О Н С Т А Н Т Ы
    ;    =================
    
        N = 40        ;- начало координат
    .IF DF,L9
        RSK2PR    = 177510
        RDK2PR    = 177512
        RSK2PD    = 177514
        RDK2PD    = 177516
    
        RSK3PD    = 176554
        RDK3PD    = 176556
    .IFF
        RSK2PR    = 176660
        RDK2PR    = 176662
        RSK2PD    = 176664
        RDK2PD    = 176666
    
        RSK3PD    = 176674
        RDK3PD    = 176676
    .ENDC
    
    
    ;    И Н И Ц И А Л И З А Ц И Я
    ;    =========================
    
    MINMUZ:    CLR    @#177560
    
    
    ;    М О Н И Т О Р
    ;    =============
    
    MONMUZ:    JSR    R5,PCS        ;- заголовок
        TZAG
    
        JSR    R5,PMENU    ;- главное меню
        TGMENU,SCGM
        BNE    PMUZ        ;- на чтение файла
    
    WYH:    JSR    R5,PCS
        TWMUZ
        MOV    #100,@#177560
    
        .EXIT            ;- выход в систему
    
    
    PMUZ:    JSR    PC,PCTF        ;- прочитать файл
        BEQ    MONMUZ
        JSR    PC,PWMEL    ;- выполнить мелодию
        BR    MONMUZ
    
    
    ;    ЧТЕНИЕ ФАЙЛА
    ;    ------------
    
    PCTF:    MOV    @#SCGM,R0
        ASL    R0
        ASL    R0
        MOV    TABR50(R0),@#SPF+2    ;- установка спецификации файла
        MOV    TABR50+2(R0),@#SPF+4
    
        .LOOKUP    #BUFEMT,#10,#SPF    ;- открыть файл
        BCS    PCOSH
        TST    R0
        BEQ    PCOSH
    
        MOV    R0,R1
        MUL    #256.,R1
        .READW    #BUFEMT,#10,#BUFT,R1,#0    ;- прочитать файл
        BCS    PCOSH
        MOV    R0,@#DLF
        ASL    @#DLF            ;- длина файла
        MOV    R0,R1
    
    PSBK:    .CLOSE    #10            ;- закрыть файл
        TST    R1
        RTS    PC
    
    PCOSH:    JSR    R5,PCS
        TOSH
        JSR    PC,PRK
        CLR    R1
        BR    PSBK
    
    
    TABR50:    .RAD50    /M1    /
        .RAD50    /M2    /
        .RAD50    /M3    /
        .RAD50    /M4    /
        .RAD50    /M5    /
        .RAD50    /M6    /
        .RAD50    /M7    /
        .RAD50    /M8    /
        .RAD50    /M9    /
    
    SPF:    .RAD50    /DK M1    TXT/            ;- спецификация файла
    BUFEMT:    .BLKW    5
    
    
    ;    ВЫПОЛНИТЬ МЕЛОДИЮ
    ;    =================
    
    PWMEL:    JSR    PC,PPRMEL    ;- преобразовать мелодию
    
        MOV    #40000,APRPP    ;- адрес программы в ПП
        MOV    #MUZPP,APRCP    ;- адрес программы в ЦП
        MOV    #KMUZPP-MUZPP/2,DLPR    ;- длина программы
        JSR    PC,PZPPP    ;- запись программы в ПП и запуск
    
        JSR    PC,PIMEL    ;- исполнить мелодию
    
        RTS    PC
    
    
    ;    ПРЕОБРАЗОВАТЬ МЕЛОДИЮ
    ;    ---------------------
    
    PPRMEL:    MOV    #BUFT,R1    ;- просмотр шапки
    1$:    CMPB    (R1)+,#'/
        BNE    1$
        CLRB    -1(R1)
    
        JSR    R5,PCS        ;- печать шапки
        BUFTK
    
        MOV    #BUFT,R2    ;- буфер счетчиков
    
    2$:    JSR    PC,PCT10C
        MOV    R3,(R2)+
        BNE    2$
        CLR    (R2)+
    
        RTS    PC
    
    
    ;    ИСПОЛНИТЬ МЕЛОДИЮ
    ;    -----------------
    
    PIMEL:    MOV    @#100,-(SP)
        MOV    #POPT,@#100
        TST    @#RDK2PR    ;- сброс канала
    1$:    SOB    R0,1$
    ;2$:    SOB    R0,2$
    
    M0:
    
    4$:    MOV    #BUFT,R2    ;- буфер счетчиков
    
    2$:    TSTB    @#RSK2PD
        BPL    2$
        MOVB    (R2)+,@#RDK2PD    ;- младший байт частоты
    1$:    TSTB    @#RSK2PD
        BPL    1$
        MOVB    (R2)+,@#RDK2PD    ;- старший байт частоты
        MOV    (R2)+,@#SCT    ;- длительность
        BEQ    4$
    3$:    TST    @#SCT
        BNE    3$
    
        TSTB    @#RSK2PR    ;- прерывание с клавиатуры?
        BPL    2$        ;- нет.
        TST    @#RDK2PR
    
    KIMEL:    MOV    (SP)+,@#100
        RTS    PC
    
    
    ;    ПРОГРАММА ОБРАБОТКИ ПРЕРЫВАНИЙ ТАЙМЕРА
    ;    --------------------------------------
    
    POPT:    DEC    @#SCT
        RTI
    
    
    ;    ЗАГРУЗКА ПРОГРАММЫ В ПП И ЗАПУСК
    ;    --------------------------------
    
    PZPPP:    MOVB    #20,KOM
        JSR    PC,PDABP    ;  запись программы в ПП
    
    1$:    MOVB    #30,KOM
        JSR    PC,PDABP    ;  запуск программы в ПП
    
        RTS    PC
    
    
    ;    ПЕРЕДАЧА АДРЕСА БЛОКА ПАРАМЕТРОВ
    ;    --------------------------------
    
    PDABP:    MOV    #ABLPAR,R1
        MOV    #4,R2
    
    1$:    TSTB    @#RSK3PD    ;  передача байта в канал
        BPL    1$
        MOVB    (R1)+,@#RDK3PD
        SOB    R2,1$
    2$:    TSTB    @#RSK3PD    ;  ожидание готовности
        BPL    2$
    
        RTS    PC
    
    
    
    ABLPAR:    BLPAR,177777        ;- адрес блока параметров
    
    
    ;    БЛОК ПАРАМЕТРОВ
    ;    ---------------
    
    BLPAR:    .BYTE    0        ;- ответ
    KOM:    .BYTE    20        ;- команда
    TIPU:    .WORD    32        ;- ОЗУ
    APRPP:    .WORD    40000        ;- адрес программы в ПП
    APRCP:    .WORD    MUZPP        ;- адрес программы в ЦП
    DLPR:    .WORD    KMUZPP-MUZPP/2    ;- длина программы
    
    
    ;    ПРОГРАММА НА ПП
    ;    ===============
    
        WPKL    = 300        ;- вектор клавиатуры
        WPK2    = 330
    
    MUZPP:    CLR    @#177130    ;- сброс диска
        MOV    #401,@#177054    ;- включить таймер ЦП и выключить таймер ПП
    
        MOV    @#WPKL,-(SP)    ;- установка векторов
        MOV    @#WPK2,-(SP)
        MOV    #<POPKL-MUZPP>+40000,@#WPKL
        MOV    #<POPK2-MUZPP>+40000,@#WPK2
        TST    @#RDK2PP    ;- сброс канала
    
    4$:    MOV    #100200,@#177716    ;- генерация звука
        MOV    CZW,R0
        BEQ    1$
    2$:    SOB    R0,2$
        MOV    #100000,@#177716
        MOV    CZW,R0
    3$:    SOB    R0,3$
        BR    4$
    
    1$:    MOV    (SP)+,@#WPK2
        MOV    (SP)+,@#WPKL
        MOV    #1,@#177054
        RTS    PC
    
    
    ;    ОБРАБОТКА ПРЕРЫВАНИЙ КЛАВИАТУРЫ
    ;    -------------------------------
    
    POPKL:    CLR    CZW
        TST    @#177702
        MOV    #100,@#177072    ;- код завершения на ЦП
        RTI
    
    
    ;    ОБРАБОТКА ПРЕРЫВАНИЙ КАНАЛА 2
    ;    -----------------------------
    
        RDK2PP    = 177062
    
    POPK2:    BIT    #1,ICZW
        BNE    1$
        MOVB    @#RDK2PP,CZW
        INC    ICZW
        RTI
    
    1$:    MOVB    @#RDK2PP,CZW+1
        INC    ICZW
        RTI
    
    
    CZW:    .WORD    177777
    ICZW:    .WORD    0
    
    KMUZPP:
    
    
    ;    БИБЛИОТЕКА ПРОЦЕДУР
    ;    ===================
    
    
    ;    ПРИЕМ КОДА
    ;    ----------
    
    PRK:    TSTB    @#177560
        BPL    PRK
        MOV    @#177562,R0
        RTS    PC
    
    
    ;    ПЕЧАТЬ КОДА
    ;    -----------
    
    PCK:    TSTB    @#177564
        BPL    PCK
        MOV    R0,@#177566
        RTS    PC
    
    
    ;    ПЕЧАТЬ СЛОВА
    ;    ------------
    
    PCS:    MOV    (R5)+,R0
    PCSR:
    1$:    TSTB    @#177564
        BPL    1$
        MOVB    (R0)+,@#177566
        BNE    1$
        RTS    R5
    
    
    ;    НОВАЯ СТРОКА
    ;    ------------
    
    PCNS:    JSR    R5,PCS
        TWKPS
        RTS    PC
    
    
    ;    ЧТЕНИЕ 8-РИЧНОГО ЧИСЛА
    ;    ----------------------
    
    ;    Вход:    R1 - текущий адрес
    ;    Выход:    R3 - слово
    
    PCT8C:    CLR    R3
    1$:    MOVB    (R1)+,R0    ;- поиск первой цифры
        BEQ    KCT8C
        CMP    R0,#60
        BLO    1$
        CMP    R0,#67
        BHI    1$
    
    2$:    BIC    #177770,R0    ;- запись триады в R0
        ASL    R3
        ASL    R3
        ASL    R3
        BIS    R0,R3
    
        MOVB    (R1)+,R0    ;- чтение следующей цифры
        CMP    R0,#60
        BLO    KCT8C
        CMP    R0,#67
        BHI    KCT8C
        BR    2$
    
    KCT8C:    DEC    R1
        RTS    PC
    
    
    ;    ЧТЕНИЕ 10-ТИЧНОГО ЧИСЛА
    ;    -----------------------
    
    ;    Вход:    R1 - текущий адрес
    ;    Выход:    R3 - слово
    
    PCT10C:    CLR    R3
    
    1$:    MOVB    (R1)+,R0    ;- поиск первой цифры
        BEQ    KCT8C
        CMP    R0,#60
        BLO    1$
        CMP    R0,#71
        BHI    1$
    
    2$:    BIC    #177760,R0    ;- запись триады в R0
        MUL    #10.,R3
        ADD    R0,R3
    
        MOVB    (R1)+,R0    ;- чтение следующей цифры
        CMP    R0,#60
        BLO    KCT8C
        CMP    R0,#71
        BHI    KCT8C
        BR    2$
    
    KCT10C:    DEC    R1
        RTS    PC
    
    
    
    ;    ВЫБОР МЕНЮ
    ;    ==========
    
    ;    Вход:    (R5)    -  текст меню
    ;            -  указатель меню
    ;    Выход:    SCM    -  указатель меню
    ;        R0    -  код выхода
    
    
    PMENU:
    PMENU0:    MOV    (R5)+,R1    ;- текст меню
        MOVB    (R1)+,R2    ;- счeтчик меню
        MOV    R2,R4        ;- верхняя граница меню
        CLR    R3        ;- текущий указатель меню
        MOV    #16,R0        ;- РУС
        JSR    PC,PCK
    
    3$:    CMP    R3,@(R5)
        BNE    1$
        JSR    R5,PCS        ;- включить инверсию
        TWINW
    
    1$:    MOV    R1,R0        ;- напечатать строку
        JSR    R5,PCSR
        MOV    R0,R1
    
        CMP    R3,@(R5)
        BNE    2$
        JSR    R5,PCS        ;- отключить инверсию
        TOINW
    
    2$:    INC    R3        ;- текущий счетчик
        SOB    R2,3$
        MOV    #17,R0        ;- ЛАТ
        JSR    PC,PCK
    
    5$:    JSR    PC,PRK        ;- принять код
        CMP    R0,#60        ;- цифра?
        BLO    4$        ;- нет.
        SUB    #60,R0
        BNE    11$
        MOV    R4,R0
    11$:    DEC    R0
        CMP    R0,R4        ;- проверка на верхнюю границу
        BHIS    5$
        MOV    R0,@(R5)    ;- новая активная позиция
    
    10$:    TST    -(R5)        ;- на печать меню
        BR    PMENU0
    
    4$:    CMP    R0,#15        ;- ввод?
        BEQ    KMENU        ;- да.
    ;    CMP    R0,#40        ;- пробел?
    ;    BEQ    KMENU        ;- да.
    
        CMP    R0,#33        ;- АР2?
        BNE    5$        ;- нет.
        JSR    PC,PRK
        CMP    R0,#101        ;- стрелка вверх?
        BNE    7$        ;- нет.
    8$:    DEC    @(R5)
        BPL    10$
        MOV    R4,@(R5)
        BR    8$
        
    7$:    CMP    R0,#104        ;- стрелка влево?
        BEQ    8$
        CMP    R0,#102        ;- стрелка вниз?
        BEQ    6$        ;- да.
        CMP    R0,#103        ;- стрелка вправо?
        BNE    5$        ;- нет.
    6$:    INC    @(R5)
        CMP    @(R5),R4
        BNE    10$
        CLR    @(R5)
        BR    10$
    
    KMENU:    DEC    R4
        CMP    @(R5)+,R4    ;- выход из меню
        RTS    R5
    
    
    ;    Т Е К С Т Ы
    ;    ===========
    
    
    TZAG:    .ASCII    <14><33><41><33><100><16>
        .ASCII    <33><131><N+1><N+20.>
        .ASCII    /М У З Ы К А Л Ь Н Ы Й   М А Г А З И Н/
        .ASCII    <33><131><N+2><N+20.>
        .ASCII    /=====================================/
        .ASCII    <33><131><N+6><N+26.>
        .ASCII    /Н А Б О Р   М Е Л О Д И Й/
        .ASCII    <33><131><N+7><N+26.>
        .ASCIZ    /-------------------------/
    
    
    TGMENU:    .ASCII    <10.>
        .ASCIZ    <33><131><N+09.><N+29.>/1 - МЕЛОДИЯ 1 ( М1 )/
        .ASCIZ    <33><131><N+10.><N+29.>/2 - МЕЛОДИЯ 2 ( М2 )/
        .ASCIZ    <33><131><N+11.><N+29.>/3 - МЕЛОДИЯ 3 ( М3 )/
        .ASCIZ    <33><131><N+12.><N+29.>/4 - МЕЛОДИЯ 4 ( М4 )/
        .ASCIZ    <33><131><N+13.><N+29.>/5 - МЕЛОДИЯ 5 ( М5 )/
        .ASCIZ    <33><131><N+14.><N+29.>/6 - МЕЛОДИЯ 6 ( М6 )/
        .ASCIZ    <33><131><N+15.><N+29.>/7 - МЕЛОДИЯ 7 ( М7 )/
        .ASCIZ    <33><131><N+16.><N+29.>/8 - МЕЛОДИЯ 8 ( М8 )/
        .ASCIZ    <33><131><N+17.><N+29.>/9 - МЕЛОДИЯ 9 ( М9 )/
        .ASCIZ    <33><131><N+19.><N+29.>/0 -  ВЫХОД          /<33><131><50><75>
    
    TMENUR:    .ASCII    <2.>
        .ASCIZ    <33><131><N+23.><N+4.>/ ПУСК /
        .ASCIZ    <33><131><N+23.><N+12.>/ ВЫХОД /<33><131><N+23.><N>
    
    
    
    ;.IF DF,L9
    TWINW:    .ASCIZ    <33><145>        ;- включить инверсию
    TOINW:    .ASCIZ    <33><177><145>        ;- отключить инверсию
    ;.IFF
    ;TWINW:    .ASCIZ    <33><243>        ;- включить инверсию
    ;TOINW:    .ASCIZ    <33><277><243>        ;- отключить инверсию
    ;.ENDC
    
    TSBRE:    .ASCIZ    <14><33><41><33><100>        ;- сброс экрана
    TZB:    .ASCIZ    <32><40><32>        ;- забой
    TNE:    .ASCIZ    <33><110>        ;- начало экрана
    TSTPS:    .ASCIZ    <33><113>        ;- стирание последней строки
    TWKPS:    .ASCIZ    <15><12>        ;- новая строка
    
    TOSH:    .ASCII    <33><131><N+22.><N+22.><7><16>
        .ASCIZ    /*** Файл на диске не обнаружен ***  /<17>
    TKPCC:    .ASCIZ    <15><33><101>    
    TWMUZ:    .ASCIZ    <14><33><41><33><100><17>    ;- выход из программы
    
        .EVEN
    
    
    SCGM:    .WORD    0    ;- счетчик главного меню
    SCMR:    .WORD    0    ;- счетчик меню режимов
    ANTS:    .WORD    0    ;- адрес начала теста
    DLF:    .WORD    0    ;- длина файла
    SCT:    .WORD    0    ;- счетчик таймера
    
        .WORD    111111
    
    BUFTK:    .ASCII    <33><131><N+22.><N>    ;- коортинаты шапки
    BUFT:            ;- буфер для текста
    
    
        .END    MUZ
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

  7. #1137

    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,505
    Спасибо Благодарностей отдано 
    344
    Спасибо Благодарностей получено 
    713
    Поблагодарили
    595 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    там и коментарии
    Там самое главное есть - команды и системные макровызовы. Остальное дело техники.

  8. #1138

    Регистрация
    05.04.2016
    Адрес
    г. Мончегорск, Мурманская обл.
    Сообщений
    414
    Спасибо Благодарностей отдано 
    98
    Спасибо Благодарностей получено 
    68
    Поблагодарили
    45 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Любопытно существует для PDP-11 реализация какого нибудь быстрого и компактного декомпрессора?
    Хочется загружать заранее сжатые данные в битпланы и быстро их оттуда вытаскивать в последствии.
    Судя по всему LZ4 то что нужно. Но реализацию на ассемблере и 16-битного проца я нашел только для 8086/8088

  9. #1139

    Регистрация
    20.12.2005
    Адрес
    Москва
    Сообщений
    2,049
    Спасибо Благодарностей отдано 
    1,141
    Спасибо Благодарностей получено 
    1,461
    Поблагодарили
    521 сообщений
    Mentioned
    20 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от randomizer Посмотреть сообщение
    Любопытно существует для PDP-11 реализация какого нибудь быстрого и компактного декомпрессора?
    Хочется загружать заранее сжатые данные в битпланы и быстро их оттуда вытаскивать в последствии.
    Судя по всему LZ4 то что нужно. Но реализацию на ассемблере и 16-битного проца я нашел только для 8086/8088
    Я могу вам дать и декомпрессор на PDP-11 коде и компрессор к нему на C/C++ -- см. https://github.com/nzeemin/ukncbtl-u.../Sav2Cartridge
    там реализован и простой RLE, и LZSS (из кода by Ostapenko Alexey).

    - - - Updated - - -

    Bonus track: вот тут @troosh делал LZ4 в ту же утилиту, но вроде как не доделано - https://github.com/troosh/ukncbtl-utils/commits/master

    Эти 3 пользователя(ей) поблагодарили nzeemin за это полезное сообщение:

    hobot(14.10.2019), Oleg N. Cher(15.10.2019), randomizer(14.10.2019)

  10. #1140

    Регистрация
    18.04.2015
    Адрес
    г. Люберцы
    Сообщений
    342
    Спасибо Благодарностей отдано 
    103
    Спасибо Благодарностей получено 
    32
    Поблагодарили
    27 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от randomizer Посмотреть сообщение
    Любопытно существует для PDP-11 реализация какого нибудь быстрого и компактного декомпрессора?
    Хочется загружать заранее сжатые данные в битпланы и быстро их оттуда вытаскивать в последствии.
    Судя по всему LZ4 то что нужно. Но реализацию на ассемблере и 16-битного проца я нашел только для 8086/8088
    Кроме выложенного почти год назад распаковщика минимального размера, также сегодня выложил более быстрые варианты за счет unroll циклов.
    Впрочем подготовка для раскрученного цикла не бесплатна (подготовка адреса для прыжка внутрь цикла и коррекция счётчика цикла), поэтому могут быть данные на которых выиграша в скорости не будет (как бы вообще не замедлилось). Так что лучше померить скорость разных вариантов. Возможно для разных данных стоит использовать разные версии распаковщика, тоесть в коде программы иметь все версии сразу.

    Всё тут: https://github.com/troosh/ukncbtl-ut...tridge/sandbox
    [ol]
    [li]UNLZ4.MAC - компактный вариант[/li]
    [li]UNLZ43.MAC - оба цикла раскручены[/li]
    [li]UNLZ42.MAC - только цикл копирования раскручен[/li]
    [li]UNLZ41.MAC - только цикл литералов раскручен[/li]
    [/ol]

    Дальнейшее ускорение возможно за счёт копирования слов, а не байт... Но это снова рост размера распаковщика и риск получить код который не заработает, например, на ВМ3.
    Последний раз редактировалось troosh; 16.10.2019 в 13:53.

    Этот пользователь поблагодарил troosh за это полезное сообщение:

    randomizer(16.10.2019)

Страница 114 из 157 ПерваяПервая ... 110111112113114115116117118 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Программирование на Эмуляторе. Возможно ли это?
    от Toxic в разделе Программирование
    Ответов: 10
    Последнее: 20.01.2008, 19:20
  2. Программирование Altera и JTAG
    от Mikka_A в разделе Несортированное железо
    Ответов: 7
    Последнее: 18.01.2008, 09:07
  3. Программирование и софтмейк на NES
    от Splinter в разделе Nintendo
    Ответов: 7
    Последнее: 30.06.2006, 04:31

Ваши права

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