goodboy все необходимое рассказал. Берешь любую тапку или tzx. Загружаешь в Otla, выбираешь RAMTOP и адрес старта и все: на выходе либо wav либо tzx уже включающий в себя загрузчик и коды в турбо-формате. Даже как-то не интересно
Последний раз редактировалось zx-kit; 12.05.2012 в 16:29.
"L-256"
Последний раз редактировалось zx-kit; 12.05.2012 в 17:46.
"L-256"
Когда-то знал, но забыл. А кто может подсказать мне ответ на такой простой вопрос: Вот я допустим подправил выгрузку чтобы пилот-тон выгружался в два раза быстрее:
Скрытый текст
PHP код:
;; SA-LEADER
L04D8: DJNZ L04D8 ; self loop to SA-LEADER for delay.
; after initial loop, count is $A4 (or $A3)
OUT ($FE),A ; output byte $02/$0D to tape port.
XOR $0F ; switch from RED (mic on) to CYAN (mic off).
;LD B,$A4 ; hold count. also timed instruction.
//подправил
LD B,$52
DEC L ; originally $80 or $98.
; but subsequently cycles 256 times.
JR NZ,L04D8 ; back to SA-LEADER until L is zero.
[свернуть]
А чего нужно подшаманить в LD-EDGE чтобы он схватывался?
Скрытый текст
PHP код:
;; LD-EDGE-2
L05E3: CALL L05E7 ; call routine LD-EDGE-1 below.
RET NC ; return if space pressed or time-out.
; else continue and look for another adjacent
; edge which together represent a bit on the
; tape.
; ->
; this entry point is used to find a single edge from above but also
; when detecting a read-in signal on the tape.
;; LD-EDGE-1
L05E7: LD A,$16 ; a delay value of twenty two.
//пробовал тут уменьшать в два раза - болт
;; LD-DELAY
L05E9: DEC A ; decrement counter
JR NZ,L05E9 ; loop back to LD-DELAY 22 times.
AND A ; clear carry.
;; LD-SAMPLE
L05ED: INC B ; increment the time-out counter.
RET Z ; return with failure when $FF passed.
LD A,$7F ; prepare to read keyboard and EAR port
IN A,($FE) ; row $7FFE. bit 6 is EAR, bit 0 is SPACE key.
RRA ; test outer key the space. (bit 6 moves to 5)
RET NC ; return if space pressed. >>>
XOR C ; compare with initial long-term state.
AND $20 ; isolate bit 5
JR Z,L05ED ; back to LD-SAMPLE if no edge.
; but an edge, a transition of the EAR bit, has been found so switch the
; long-term comparison byte containing both border colour and EAR bit.
LD A,C ; fetch comparison value.
CPL ; switch the bits
LD C,A ; and put back in C for long-term.
AND $07 ; isolate new colour bits.
OR $08 ; set bit 3 - MIC off.
OUT ($FE),A ; send to port to effect the change of colour.
SCF ; set carry flag signaling edge found within
; time allowed.
RET ; return.
[свернуть]
Смотрел как сделано в Turbo-Comp - там тонны *****кода, так что ничего не понял.
Последний раз редактировалось SoftLight; 12.05.2012 в 19:39.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Я думаю, это:
Код:LD-LEADER LD B,+9C <--- CALL 05E3,LD-EDGE-2 JR NC,056B,LD-BREAK LD A,+C6 <--- CP B JR NC,056C,LD-START INC H JR NZ,0580,LD-LEADER
Alex Rider, неа, это я тоже пробовал уменьшать, но тогда даже незначительный шум в динамике спектакулятор принимает за полезный сигнал и грузит не как пилот-тон а как байты. Ладно, буду думать По идее первое число это интервал в течении которого должен проскочить один фронт и этот интервал дается с запасаом, а второе число это как раз реальная длина фронта, который попал в заданный интервал.
Последний раз редактировалось SoftLight; 12.05.2012 в 20:06.
Эй...парни.... а R-TYPE есть с турбозагрузкой?
Хотелось бы на плеер tap в формате mp3 скинуть, при том что б mp3 файлы были отдельно (в смысле подгружаемые уровни отдельно в разных файлах)
Если ты в 2 раза увеличиывешь константы 9C и C6 в LD-LEADER, то они становятся почти равны константам C9 и D4 в LD-SYNC, что намекает на начало синхроимпульса. Надо и в LD-SYNC константы в 2 раза увеличить, наверно. Возможно, после этого синхроимпульс может перепутаться с данными, не могу предсказать.
Эту тему просматривают: 11 (пользователей: 0 , гостей: 11)