Автор Тема: Sega Genesis Intro.  (Прочитано 22102 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Zephyr

  • Пользователь
  • Сообщений: 544
  • Пол: Мужской
  • coder
    • Просмотр профиля
Sega Genesis Intro.
« : 16 Июль 2007, 02:04:10 »

Оффлайн evgeny

  • Пользователь
  • Сообщений: 1390
  • Пол: Мужской
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #1 : 16 Июль 2007, 05:17:50 »
Ну, на чем ты писал мне понятно. Меня вот DAC интересует. Не мог бы ты поделиться исходным кодом ? Интересно... у тебя там даже z80 не используется, как же DAC вывел?

Оффлайн cari

  • Пользователь
  • Сообщений: 257
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #2 : 16 Июль 2007, 10:23:46 »
Где можно скачать Digital Audio Converter???

Оффлайн Zephyr

  • Пользователь
  • Сообщений: 544
  • Пол: Мужской
  • coder
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #3 : 16 Июль 2007, 19:04:03 »
cari,
Если для Басика - то конвертировал в 16Mhz 8 Bit Mono - используя
Winamp.
После просто вырезал заголовок используя текстовый редактор Bred 3.
Оставшиеся данные подавал на ЦАП.
*********************************************************
evgeny, держи (с комментариями)

pcmdata: datafile music.PCM,BIN 'load music data

'Turn DAC on
 Asm "move.b #$2B,$A04000"
 gosub BUSYWAIT
 Asm "move.b #$80,$A04001"
 
'Turn on both speakers
 poke &hA04002,&hB6
 gosub BUSYWAIT
 poke &hA04003,&hC0
    
'Send PCM data to DAC
 asm "move.b #$2A,$A04000"

loopstart:
 asm "move.l #0,d3"
 for a=1 to 24 ' chunk part
  for b=c to d ' from offset to size (offset + 65535)
    reload pcmdata
    gosub changeoffset
    read pcmtest
    gosub BUSYWAIT
    poke &hA04001, pcmtest
    asm "add.l #1,d3"
  next

 c=a*65535 'chunk offset
 d=c+65535 'chunk size
 next

BUSYWAIT:
   status=peek(&hA04001)
   if status.7=0 then return else goto BUSYWAIT
   return   
   
changeoffset:
   asm
      move.l   d3,d1
      add.l   d1,a6
   end asm
   return

Оффлайн evgeny

  • Пользователь
  • Сообщений: 1390
  • Пол: Мужской
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #4 : 16 Июль 2007, 20:50:53 »
спасибо, будем проверять.

Оффлайн cari

  • Пользователь
  • Сообщений: 257
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #5 : 16 Июль 2007, 21:33:38 »
А где скачать программу для создания музыкального файла??

Оффлайн Zephyr

  • Пользователь
  • Сообщений: 544
  • Пол: Мужской
  • coder
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #6 : 17 Июль 2007, 01:07:30 »
cari,
Это поток, не модульное строение. Просто *.wav файл
в формате PCM (Pulse Code Modulation)
16000 Hz 8 Bit Mono. Просто нужно еще заголовок вырезать
(52 байта - я вырезал).

Есть тракер для басика, но он пока 1 канальный вроде.
Есть нормальный тракер от Паскаль О Рама,
но его вроде только чистым асмом реально
подсоединить. Я пока не разбирал.
В планах все...

Оффлайн Mashin

  • Пользователь
  • Сообщений: 85
  • Пол: Мужской
    • Twitter
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #7 : 17 Июль 2007, 01:23:34 »
Zephyr, это какой язык? BasiEgaXorz?

Оффлайн Zephyr

  • Пользователь
  • Сообщений: 544
  • Пол: Мужской
  • coder
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #8 : 17 Июль 2007, 17:43:52 »
BasiEgaXorz - это бейсик, но самопальный. Больше на асм похоже.
http://devster.monkeeh.com/sega/basiegaxorz/
Форум
http://devster.proboards22.com/index.cgi
Вообще я собираюсь в ближайшее время статью по нему
написать.

Оффлайн Mashin

  • Пользователь
  • Сообщений: 85
  • Пол: Мужской
    • Twitter
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #9 : 18 Июль 2007, 02:20:22 »
Имхо, лучше про чистый асм напиши.

Оффлайн Zephyr

  • Пользователь
  • Сообщений: 544
  • Пол: Мужской
  • coder
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #10 : 29 Июль 2007, 23:31:18 »
По просьбам трудящихся залил исходный код сего "творения".
Пост 4
http://forum.mirgames.ru/index.php?showtopic=3957

Оффлайн Йобан Матич

  • Emu-Land Team
  • Сообщений: 2593
  • Пол: Мужской
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #11 : 30 Июль 2007, 00:22:24 »
Zephyr,
Прикольно, но... Нафиа тебе басик?
FreePascal умеет под m68k компилить. Если написать пару модулей (Добавить новую платформу не так уж и сложно), то можно будет и под сегу кодить. Pascal ты знаешь лучше чем basic, правда?

Если поможешь с инфой по m68k асму могу попробовать написать rtl для sega.

Оффлайн Zephyr

  • Пользователь
  • Сообщений: 544
  • Пол: Мужской
  • coder
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #12 : 30 Июль 2007, 19:37:08 »
Йобан Матич,
Да получше. Чтоже нужно порыться немного по сети. Посмотреть
доки, потестить. После выйду с тобою на связь.

PS: спасибо за инфу.

Оффлайн Йобан Матич

  • Emu-Land Team
  • Сообщений: 2593
  • Пол: Мужской
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #13 : 31 Июль 2007, 21:59:04 »
Zephyr,
Беру на себя компилятор и rtl.
Кое-что уже получилось. дня через два буду мучить линкер.

Со временем может напишу свой компилер...
« Последнее редактирование: 31 Июль 2007, 22:34:27 от Йобан Матич »

Оффлайн Henty

  • Пользователь
  • Сообщений: 796
  • Пол: Мужской
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #14 : 16 Август 2007, 15:48:31 »
Можете меня обругать благим матом, но я так понял, что Йобан Матич хочет сделать компилятор для FreePascal'я чтобы сразу в исходный код Сеги компилить, так? Это было бы неплохо..

Оффлайн Йобан Матич

  • Emu-Land Team
  • Сообщений: 2593
  • Пол: Мужской
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #15 : 16 Август 2007, 16:00:12 »
Цитата: Henty
но я так понял, что Йобан Матич хочет сделать компилятор для FreePascal'я чтобы сразу в исходный код Сеги компилить


Я себе ГТА поставил, поэтому проект ваременно заморожен.
Вообще лучше сделать транслятор из паскаля в асм. по типу BasiEgaXorz, но только с генерацией меньшего по размеру кода. BasiEgaXorz много мусора генерит.

Во фрипаскале м68к официально уже не поддерживается, а версия 1.0 у меня собираться отказалась.

Оффлайн evgeny

  • Пользователь
  • Сообщений: 1390
  • Пол: Мужской
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #16 : 28 Сентябрь 2007, 11:49:34 »
Вот, тоже кое-что сделал.
http://evgeny1.land.ru/mk3demo.zip

Оффлайн Taven

  • Пользователь
  • Сообщений: 1351
  • Пол: Мужской
  • Под голубым небом. :)
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #17 : 28 Сентябрь 2007, 12:12:26 »
evgeny,
Интересно!Только клетчатый фон вызывает отвращение.

Оффлайн ALEX_230_VOLT

  • Модератор
  • Сообщений: 7645
  • Пол: Мужской
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #18 : 28 Сентябрь 2007, 16:45:43 »
А чё, круто! Тока звук раздражающий и вообще сюжета мало. Можно было бы выдрать из трилогии рассказ о МК (с картинками конечно, начиная со слов Рэйдена и кончая спином с 15 бойцами)

Оффлайн evgeny

  • Пользователь
  • Сообщений: 1390
  • Пол: Мужской
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #19 : 28 Сентябрь 2007, 17:28:34 »
Можно, конечно, а это так, эксперимент со слоями.

Оффлайн Zephyr

  • Пользователь
  • Сообщений: 544
  • Пол: Мужской
  • coder
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #20 : 28 Сентябрь 2007, 21:37:37 »
Неплохо! Звук - оцифровки или YM синтезатор? На чем код?

Оффлайн Йобан Матич

  • Emu-Land Team
  • Сообщений: 2593
  • Пол: Мужской
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #21 : 28 Сентябрь 2007, 22:31:18 »
Zephyr,
IDA тебе в помощь =)
BasiegaXorz, звук походу синтезатор.
Со слоями прикольно вышло.

Оффлайн evgeny

  • Пользователь
  • Сообщений: 1390
  • Пол: Мужской
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #22 : 29 Сентябрь 2007, 04:53:35 »
Да, BasiegaXorz, YM синтезатор.

Оффлайн evgeny

  • Пользователь
  • Сообщений: 1390
  • Пол: Мужской
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #23 : 13 Октябрь 2007, 18:49:33 »
Еще одна демка. http://evgeny1.land.ru/rayden.zip

Оффлайн Taven

  • Пользователь
  • Сообщений: 1351
  • Пол: Мужской
  • Под голубым небом. :)
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #24 : 13 Октябрь 2007, 18:56:45 »
Нету звука и слишком быстро меняется картинка. =\
И что за шар у  него в руках?

Оффлайн ALEX_230_VOLT

  • Модератор
  • Сообщений: 7645
  • Пол: Мужской
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #25 : 13 Октябрь 2007, 20:23:03 »
evgeny, прикольно! Без 5 минут Галага :) Не,я знаю что галага снизу вверх, а это слева направо, но встётаки...

Оффлайн Zephyr

  • Пользователь
  • Сообщений: 544
  • Пол: Мужской
  • coder
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #26 : 13 Октябрь 2007, 20:57:53 »
Шарик реально прозрачный или фейк?

Оффлайн ALEX_230_VOLT

  • Модератор
  • Сообщений: 7645
  • Пол: Мужской
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #27 : 13 Октябрь 2007, 21:16:02 »
Zephyr, если ты не заметил то можно менять фон кнопками А В С, и ещё вверх вниз летать.

Оффлайн Taven

  • Пользователь
  • Сообщений: 1351
  • Пол: Мужской
  • Под голубым небом. :)
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #28 : 13 Октябрь 2007, 22:34:56 »
Вау!Тема!
Понравилось,твори есчо!

Оффлайн Zephyr

  • Пользователь
  • Сообщений: 544
  • Пол: Мужской
  • coder
    • Просмотр профиля
Sega Genesis Intro.
« Ответ #29 : 13 Октябрь 2007, 23:45:47 »
ALEX_230_VOLT
Если способ использовать аж 2 фона с разными градациями
яркости на разных аппаратных слоях, то легче использовать маску.
-----------------------------------------------------------------------
Просто в сеге есть аппаратный способ создания прозрачности:
один из эффектов растра, воссаздаваемый тем,
что для VDP единицей является 1 полная линия,
но это на асме пишется :(