Важная информация

User Tag List

Страница 58 из 58 ПерваяПервая ... 5455565758
Показано с 571 по 579 из 579

Тема: Elite Legend 128k

  1. #571
    Junior
    Регистрация
    19.12.2008
    Адрес
    UK
    Сообщений
    2
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Firstly, thanks for a great update to Elite! I'm surprised by how much new content you've added to the original Spectrum version.

    I've found a bug that seems to cause memory corruption when using options from the Pause menu when the ship is flying. Selecting either "Change Control" or "Rotate Lasers Turrets" from the Pause menu triggers it. It seems to only affect options that don't have an On/Off toggle. Here's a video showing it happening to me: https://youtu.be/1LSNGNSA3LY

    I'm using v1.07 and have tried both TAP and TRD versions in SpecEmu and Spectaculator, but can reproduce it in all cases.

    I've had a look at the code and think I might be able to see what is causing it:

    Код:
    @D150 in page 6:
    	EX   (SP),HL
    	INC  C
    	JR   Z,LD16F
    	DEC  C
    	PUSH HL
    	AND  C
    	LD   HL,#D384
    	JR   NZ,LD15F
    	LD   HL,#D388
    LD15F:  CALL #86BB
    	XOR  A
    	LD   (#7282),A
    	POP  DE
    	LD   HL,#C016
    	LD   C,#03
    	CALL #AF8A
    LD16F:  POP  HL
    The first JR Z skips displaying the On/Off label, but it also skips setting the screen MSB bit 7 back to zero in #7282. Without that I'm seeing corruption later, but manually setting to zero seems to avoid it. Hopefully that helps you look in the right place.

    I've also spotted a few typos in the English translations too:
    GALAXY GYPERDRIVE -> GALAXY HYPERDRIVE
    MILITARY GALAXY GYPERDRIVE -> MILITARY GALAXY HYPERDRIVE
    EXPERIMENTAL GALAXY GYPERDRIVE -> EXPERIMENTAL GALAXY HYPERDRIVE
    CLOACKING DEVICE -> CLOAKING DEVICE

    I'm also porting the game to run on the SAM Coupé, which has a different memory paging system but with a few patches it can be made to work. I hope that's OK.
    Последний раз редактировалось obo; 19.05.2022 в 01:55.

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

    LW (19.05.2022), Oleg N. Cher (19.05.2022)

  3. #571
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  4. #572
    Activist Аватар для LW
    Регистрация
    05.09.2007
    Адрес
    Орск
    Сообщений
    489
    Спасибо Благодарностей отдано 
    91
    Спасибо Благодарностей получено 
    366
    Поблагодарили
    117 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Tthanks. I will fix these bugs.

    Цитата Сообщение от obo Посмотреть сообщение
    I'm also porting the game to run on the SAM Coupé, which has a different memory paging system but with a few patches it can be made to work. I hope that's OK.
    If you want, I can help with porting. It will be easier to rebuild the project than to edit the codes

  5. #573
    Master
    Регистрация
    23.04.2020
    Адрес
    г. Тотьма
    Сообщений
    540
    Спасибо Благодарностей отдано 
    159
    Спасибо Благодарностей получено 
    164
    Поблагодарили
    85 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Про джойстик спрашивали или нет не помню. Там же должен работать Синклер джой на клавишах 6-0?
    Как включить?
    Я вот словил глюк в последней версии. Если вылететь из станции, нажать левый шифт (пауза), затем кнопка К- сменить управление (про неё в описании ни слова). Затем пробую нажимать 6-0 - нет реакции. Снова нажимаю пауза - К. И после могут возникнуть разные глюки. То станция пропадёт, то планета. То вдруг корабль разрушается и на заставке вместо кораблей мешанина линий ).

    Скрытый текст

    Scorpion ZS-256 Turbo+/GMX 2MB/SMUC v1.3 Open port/CF-IDE 2GB/TS ARM/Covox #DD/FDD 5'25/FDD 3'5/AT Keyboard & Mouse Controller v2.5/Universal PS/2 Keyboard Controller
    Leningrad 1/Sega Joy Adapter
    DivGMX
    ZX Spectrum +2A
    ZX Evolution rev. C

    TCK Computer 486DX2-66/512K Tridend 9000i/8MB SIMM72/CF-IDE 512MB/ESS 1869/CNet CN200/FDD 5'25/FDD 3'5
    [свернуть]

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

    LW (19.05.2022)

  7. #574
    Activist Аватар для LW
    Регистрация
    05.09.2007
    Адрес
    Орск
    Сообщений
    489
    Спасибо Благодарностей отдано 
    91
    Спасибо Благодарностей получено 
    366
    Поблагодарили
    117 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Спасибо. Про этот баг чуть выше товарищ из англии уже написал. Будем фиксить.

    Цитата Сообщение от izzx Посмотреть сообщение
    Про джойстик спрашивали или нет не помню. Там же должен работать Синклер джой на клавишах 6-0?
    Как включить?
    На заставке с предложением нажать пробел, нажатие влево на кепстоне/правом синклере - активирует джойстик
    Последний раз редактировалось LW; 19.05.2022 в 11:35.

  8. #575
    Master
    Регистрация
    23.04.2020
    Адрес
    г. Тотьма
    Сообщений
    540
    Спасибо Благодарностей отдано 
    159
    Спасибо Благодарностей получено 
    164
    Поблагодарили
    85 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от LW Посмотреть сообщение
    Про этот баг чуть выше товарищ из англии уже написал
    Точно, куда ж я смотрел.

    Джой работает, спасибо.

    Скрытый текст

    Scorpion ZS-256 Turbo+/GMX 2MB/SMUC v1.3 Open port/CF-IDE 2GB/TS ARM/Covox #DD/FDD 5'25/FDD 3'5/AT Keyboard & Mouse Controller v2.5/Universal PS/2 Keyboard Controller
    Leningrad 1/Sega Joy Adapter
    DivGMX
    ZX Spectrum +2A
    ZX Evolution rev. C

    TCK Computer 486DX2-66/512K Tridend 9000i/8MB SIMM72/CF-IDE 512MB/ESS 1869/CNet CN200/FDD 5'25/FDD 3'5
    [свернуть]

  9. #576
    Junior
    Регистрация
    19.12.2008
    Адрес
    UK
    Сообщений
    2
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от LW Посмотреть сообщение
    If you want, I can help with porting. It will be easier to rebuild the project than to edit the codes
    Any help you can provide to simplify running on the SAM would be much appreciated. I have patches for v1.07 that already make the game fully playable. The changes remap the second 128K screen location and support 128K paging. I haven't yet converted the sound effects from AY to SAA chip or changed the tape routines to use disk instead.

    Many of my code patches are to change the second screen address from &C000 to &0000. This was needed to keep the second display at a location in internal RAM as the upper 32K is using external memory to support the 128K paging configuration. Your code already has functions for changing between screen 0 and 1 but I had to change some of the code as well as the values. Places that use OR to add bit 7 were changed to use XOR to toggle bit 6 instead. SET 7,r instructions were converted to RES 6,r, etc. There are some tricky CP H;JR C instructions that I need to patch during gameplay too. I can provide details of where I've patched but you probably have a much better idea from the source code. If your official code supported screen 1 at address &0000 as well as &C000 it would eliminate many of my patches.

    Another area I changed was the 128K paging. I was able to change the OUT (C),A in many places to OUT (HEPR),A to write to a SAM paging port. I'm using banks &10 to &17 to be compatible with the values written to the 128K paging ports. One extra change I made was the screen selection bit, which is &08 on the Spectrum 128. I changed it to &10 so ORing the value with the 128K page has no effect, since SAM doesn't use the same port for changing the display. This required a couple of code changes to adapt to the new value. I can provide more details of these patches if you're interested.

    Similar to the paging I had to change places that update the display to change the SAM display page. This was too big to patch inline so I'm patching a call to a routine that does the work. It uses the same screen selection bit as your code to decide which page to select.

    The changes above are enough to have the game fully playable, but I was hoping to make some extra SAM improvements:

    The SAM Coupé support line interrupts, which can generate an interrupt before a specific line on the main screen. I hoped to use this to keep the panel display at &5000, avoiding the expensive 2K+ copy from screen 0 to screen 1 every 2nd frame. However, if interrupts are disabled at this point in the TV scan the wrong page is viewed and the contents flicker. I know interrupts are disabled during the screen clear using the stack, and I wondered if it was possible to do this just after a HALT so interrupts are re-enabled before the TV scan reaches the interrupt point by the panel. I've not yet tried experimenting with this using patches.

    A dream for SAM users has always been to use display mode 2 for the Elite display. This is similar to the 8x1 mode used by the Timex and Pentagon systems, which have a separate attribute byte for each screen byte. The display memory is a linear line layout with attributes 8K after the display bytes. This gives 2K free after the display data and 2K free after the attribute data, which can be used for other things. If Elite Legend avoided using locations &0000-17ff, &2000-37ff, &4000-57ff, &6000-77ff then two mode 2 displays could be mapped in permanently. This would also require changes to screen address conversion routines, and for any attribute drawing to fill 8 bytes instead of 1. It's difficult to achieve using patching and still a lot of work even with source code, so I don't expect you to do it.

    I can continue to maintain patches to avoid you having to create a special SAM version, but if changes inside Elite Legend can simplify my patches that would be great
    Последний раз редактировалось obo; 19.05.2022 в 16:16.

  10. #577
    Member
    Регистрация
    13.02.2010
    Адрес
    г. Харьков
    Сообщений
    127
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    а можно хотелку: оставить звуки бипера, если нет АУ? хотя бы звуки выстрелов?
    speccy2010 rev1, rev2, pentagon 128K

  11. #578
    Activist Аватар для LW
    Регистрация
    05.09.2007
    Адрес
    Орск
    Сообщений
    489
    Спасибо Благодарностей отдано 
    91
    Спасибо Благодарностей получено 
    366
    Поблагодарили
    117 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Сожалею, но нет.

  12. #579
    Guru Аватар для ZX_NOVOSIB
    Регистрация
    24.12.2006
    Адрес
    р.п. Маслянино, Новосибирская обл.
    Сообщений
    5,049
    Спасибо Благодарностей отдано 
    175
    Спасибо Благодарностей получено 
    196
    Поблагодарили
    137 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от LW Посмотреть сообщение
    Сожалею, но нет.
    Злой ты ((
    _

Страница 58 из 58 ПерваяПервая ... 5455565758

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

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

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

Похожие темы

  1. Kung-fu Bruce - The Legend Continues
    от abelenki в разделе PC Remakes
    Ответов: 0
    Последнее: 27.02.2020, 05:20
  2. The Legend Of The Frog Prince
    от abelenki в разделе Игры
    Ответов: 0
    Последнее: 23.12.2019, 03:24
  3. The Legend of Traxtor
    от Rindex в разделе Игры
    Ответов: 2
    Последнее: 30.11.2014, 20:11
  4. legend of grimrock
    от johnny в разделе PC Remakes
    Ответов: 3
    Последнее: 26.11.2012, 17:33
  5. Legend of Kage
    от PATHNK в разделе Игры
    Ответов: 1
    Последнее: 21.11.2012, 16:19

Ваши права

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