Megadrive vs Amiga y el espacio en disco

Avatar de Usuario
VooD
Mensajes: 870
Registrado: 11 Abr 2011 22:19
Ubicación: Málaga
Agradecido : 2 veces
Agradecimiento recibido: 28 veces

Megadrive vs Amiga y el espacio en disco

Mensajepor VooD » 10 Abr 2016 17:29

Últimamente he estado revisando algunos de mis juegos favoritos de Amiga y he vuelto a recordar una pregunta que siempre me ha intrigado.
¿Cómo puede ser que Sonic 1 de Megadrive ocupe 512kb en ROM, mientras que lo más parecido a nivel gráfico (posiblemente inferior) en Amiga sea Mr. Nutz ocupando 3 discos de 880 kb?

Cuando empecé a trastear con emuladores me sorprendió muchísimo comprobar el tamaño de muchas ROMS. La mayoría estaban en torno a 512kb/1mb y sin embargo solían tener bastante más variedad gráfica que los juegos de Amiga/ST que ocupaban varios discos.

¿Compresión? ¿Mejores grafistas? ¿O qué? -hypo

Avatar de Usuario
DyLucke
Mensajes: 4122
Registrado: 30 Oct 2010 12:52
Ubicación: Pompaela vieja
Agradecido : 59 veces
Agradecimiento recibido: 48 veces

Re: Megadrive vs Amiga y el espacio en disco

Mensajepor DyLucke » 10 Abr 2016 19:28

Hay juegos de SNES o de MD que usan técnicas de compresión, pero también lo hacen los de ST y Amiga.
El Mr. Nutz de Amiga, existe en beta para la Megadrive, con el nombre de Mr. Nutz 2. Ocupa 1048kb.
Esto son 16 mega bits.

Es cierto que de tres discos de 880kb a 1mb hay diferencia, pero habría que ver lo que pesa el juego en disco duro para saber que tamaño tiene.
Piensa también que no es tan sencillo como meter un juego de 1mb en lo que ocupe en discos, no... Existe un complicado proceso de ingeniería de disco.

Los discos no son una ROM a la que tener acceso instantaneamente en el momento requerido... Por tanto tienen una estructura mucho mas complicada y "redundante".

Por otro lado, el audio en el Amiga, pesa bastante mas que en la MD, hablamos de sonido digital sampleado y convertido a .MOD o formato similar, frente a un mísero patrón que reproduce sonidos internos de un chip FM... No hay comparación en el tamaño. Si el PAULA tuviera todos los registros que se usan en los módulos como samples internamente, (algo así como una tabla de ondas en una tarjeta MIDI), los archivos de música no pesarían nada... Pero no es el caso.

Creo que el asunto va por ahí.
"I'm a piece of the sun,
i'm an army of one...
I'm the man with the gun".

Avatar de Usuario
elfoscuro
Mensajes: 1330
Registrado: 01 Jun 2012 20:46
Agradecimiento recibido: 44 veces
Contactar:

Re: Megadrive vs Amiga y el espacio en disco

Mensajepor elfoscuro » 11 Abr 2016 00:25

El tema de la compresión era muy importante en las consolas, porque si podían usar un chip más pequeño, más beneficio. Sin embargo en los ordenadores, lo importante era la velocidad de carga. Ten en cuenta que si comprimes en Amiga, más el tiempo de lectura, el retardo puede ser abrumador. Sin embargo en una consola, descomprimir no era un problema, porque los tiempos de carga eran casi inexistentes.

Además de lo que dice DyLucke... depende de la calidad de sonido y de la complejidad del video. Lo que más ocupa en un juego es, al fin y al cabo, el apartado multimedia.

Un saludo.

Avatar de Usuario
VooD
Mensajes: 870
Registrado: 11 Abr 2011 22:19
Ubicación: Málaga
Agradecido : 2 veces
Agradecimiento recibido: 28 veces

Re: Megadrive vs Amiga y el espacio en disco

Mensajepor VooD » 11 Abr 2016 12:00

Pensandolo bien creo que el tema de la compresión tiene poco que ver aquí. Hay que tener en cuenta que si tienes algo comprimido en rom necesitas ram para tener la versión descomprimida, y la ram de la Snes o Megadrive no es que dé para mucho (128kb y 64kb respectivamente..y no estoy seguro de que pueda ser usada para almacenar tiles). Que yo recuerde solo unos pocos juegos de Snes hacían uso de un chip de descompresión de datos gráficos en tiempo real, supongo que conectado a RAM extra (https://en.wikipedia.org/wiki/List_of_S ... hips#S-DD1).

Respecto a las músicas es cierto que en el caso de la Megadrive los datos serán mucho menores al tratar unicamente con pulsaciones de notas en contraposición con los samples del Amiga, e igualmente en Snes al tener un chip que usaba samples comprimidos en tiempo real también encontramos una disminución del espacio utilizado con respecto al Amiga, peeeeeeeeeeero....en Atari ST encontramos las mismas diferencias de tamaño a las que hacía referencia y sin embargo la mayoría de los títulos utilizaban sonido del chip Yamaha sin información de samples.

Pero veamos un caso concreto usando el algoritmo zip como medida de la cantidad de datos usados realmente:

Gods ST: 2 discos. 1600kb, en zip 959kb (de los cuales 312kb sin comprimir corresponden al Mod de la intro. 217kb comprimidos), lo cual nos da unos 742kb de datos comprimidos sin tener en cuenta la música
Gods Amiga: 2 discos 1760kb. en zip 1081kb, si le quitamos los ~217kb de la música comprimida se nos queda en 864kb
Gods Megadrive: 1024kb rom, en zip 432kb
Gods Snes: 1024kb rom, en zip 579kb (aquí sí se nota el aumento debido a la música)

Conclusión, la versión de Amiga tiene unos 864kb de datos "reales", la de ST 742kb, mientras que la versión de Megadrive mete lo mismo en solo 432kb, y la de Snes en 579kb (aunque aquí es verdad que sí que hay samples descomprimidos en tiempo real)

¿Magia? Lo único que se me ocurre es que tenga algo que ver con la forma de almacenar los pixeles, en ST creo que por cada byte pintas 2 pixeles, no sé si será igual en consolas.

Avatar de Usuario
Jinks
Mensajes: 1211
Registrado: 09 Oct 2013 16:47
Agradecido : 50 veces
Agradecimiento recibido: 106 veces
Contactar:

Re: Megadrive vs Amiga y el espacio en disco

Mensajepor Jinks » 11 Abr 2016 12:41

¿No podría ser que muchos efectos gráficos en el Atari/Amiga tienen que ir en el propio juego, mientras que en las consolas son simples llamadas al firmware/hardware dedicado y por lo tanto no ocupan espacio en el juego?

Avatar de Usuario
tognin
Mensajes: 282
Registrado: 18 May 2011 10:01
Ubicación: Villa Pingüino
Agradecido : 7 veces
Agradecimiento recibido: 5 veces
Contactar:

Re: Megadrive vs Amiga y el espacio en disco

Mensajepor tognin » 11 Abr 2016 14:35

Rauli escribió:¿No podría ser que muchos efectos gráficos en el Atari/Amiga tienen que ir en el propio juego, mientras que en las consolas son simples llamadas al firmware/hardware dedicado y por lo tanto no ocupan espacio en el juego?


Eso tiene sentido. En las consolas, con los SDKs que tenian, muchos efectos, movimientos, scrolls, etc, iban ya metidos en chips especializados de la propia consola.

En Amiga tienes tamben el tema de los colores y la resolucion. Es posible, que el Amiga tuviese algo mas de resolucion (Megadrive daba 320x224) y que muchas pantallas de presentacion, etc estuviesen en modo HAM.

y luego esta el tema del codigo. ¿Porque un BAT de DOS que hace 4 cosas ocupa 4KB y si lo compilo en EXE pasa a ocupar 10 veces mas? Todo depende de como sea el codigo que ejecute la maquina en cuestion...

slaudos
ImagenImagenImagenImagen

Avatar de Usuario
ron
Mensajes: 17663
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 756 veces
Agradecimiento recibido: 797 veces

Re: Megadrive vs Amiga y el espacio en disco

Mensajepor ron » 11 Abr 2016 18:56

Más que otra cosa la compresión, los datos del juego ocupan y en algún sitio hay que meterlos.

Compressors/Decompressors
drx Star Decompressor 1.0 drx Lets you decompress data compressed using the Star compression (used mainly in Ristar)
drx SSC Decompressor 1.0 drx Decompresses data compressed with the Sonic Spinball Compression (what an original name...). Theres a list of offsets when you load Sonic Spinball as the source.
Esrael Compressor 1.00 Esrael Compresses things in Kosinski format.
Esrael Decompressor 2.00 Esrael Decompresses things in Nemesis and Kosinski formats.
KENS 1.4 RC3 Magus A set of DLLs which programmers can use in their programs to decompress/compress Nemesis, Kosinski, Kosinski Moduled, Enigma & Saxman stuff. Support for C/C++, Delphi, VB and Game Maker.
KENS (source) 1.4 RC3 Magus Source code for KENS 1.4 RC3.
Kosinski Searcher Nemesis Searches for all Kosinski compressed archives within a ROM.
MD Programs Pack Nemesis Collection of compressors/decompressors for Nemesis, Enigma and Kosinski formats. Also includes a decompressor for the Sonic 2 sound driver, and the Nemesis searcher.
PRS Compressor Nemesis Compresses PRS files.
PRS Decompressor Nemesis Decompresses Dreamcast and Saturn PRS files.
PVM Unpacker Nemesis Unpacks Dreamcast PVM files.
SADX DAT Sound Unpacker Sanik Unpacks SADX (PC) DAT sound files.
SADX DAT Sound Unpacker (source) Sanik Source for SADX DAT Sound Unpacker.
Sonic Heroes ONE Packer Lightning Hedgehog Packs Sonic Heroes (PC) ONE archives.
Sonic Heroes ONE Unpacker Lightning Hedgehog Unpacks Sonic Heroes (PC) ONE archives.
Sonic Heroes TXD Packer Sanik Packs Heroes (PC) TXD graphics files.
Sonic Heroes TXD Unpacker Sanik Unpacks Heroes (PC) TXD graphics files.
The Sega Data Compressor 2.2 RC3 Magus Compressor/Decompressor for Nemesis, Kosinski, Kosinski Moduled, Enigma & Saxman formats.


http://www.hacking-cult.org/?utils

Avatar de Usuario
VooD
Mensajes: 870
Registrado: 11 Abr 2011 22:19
Ubicación: Málaga
Agradecido : 2 veces
Agradecimiento recibido: 28 veces

Re: Megadrive vs Amiga y el espacio en disco

Mensajepor VooD » 11 Abr 2016 21:38

Mmmm no se no se Ron, pero volvemos a lo mismo, con 64kb de ram que tiene la Megadrive...¿donde metemos los tiles una vez descomprimidos? Además que para mí que la ram de sistema de la MD no es usable por el chip gráfico al mismo nivel que los rangos de memoria de las ROM. En fin...sigo sin estar satisfecho con la respuesta jeje, tendré que seguir investigando :P

Avatar de Usuario
metsämies
Mensajes: 29
Registrado: 28 Nov 2015 13:05

Re: Megadrive vs Amiga y el espacio en disco

Mensajepor metsämies » 11 Abr 2016 22:09

No es justo comparar Amiga con las consolas de esa epoca por los jeugos, juegos en consolas eran versiones con soporte "oficial" sobretodo cuando eran conversiones, esos juegos en amiga no eran con nigun soporte, programadores tenian que hacer incluso ingenieria inversa en algunos casos.

Conversiones como Street Fighter, Final Fight, jne... en Amiga eran muy peores por el poco "soporte", conversiones al contrario como Shadow of the Beast, Jim Power, jne... son mejores en Amiga que en consolas incluso contando con el soporte completo que programadores tenian en consola.

Avatar de Usuario
ron
Mensajes: 17663
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 756 veces
Agradecimiento recibido: 797 veces

Re: Megadrive vs Amiga y el espacio en disco

Mensajepor ron » 11 Abr 2016 22:40

Que tal VooD. No pretemdo justificarme pero ya que es una ROM, en cuanto pinchas el cartucho en la MD esa memoria de solo lectura pasa a ser parte del sistema y supongo que el M68K con la electronica asociada se encargara de direccionarlo y accederlo.

Claro, a velocidad de la luz, y por tanto si tiene 64KB de VRAM con que tenga una RAM minima en donde ir guardando variables el programa principal y los datos de este continuan en ROM, la descompresion es al vuelo.


http://www.sega-16.com/forum/showthread ... dd970ea3b7

Lo mismo dije la primera vez que vi el Gran Turismo en una PSX... ¿ como meten todo eso en 2 MB de RAM ?..... compresion a saco.

Avatar de Usuario
VooD
Mensajes: 870
Registrado: 11 Abr 2011 22:19
Ubicación: Málaga
Agradecido : 2 veces
Agradecimiento recibido: 28 veces

Re: Megadrive vs Amiga y el espacio en disco

Mensajepor VooD » 11 Abr 2016 22:52

Mmmm datos datos ricooooooooos... :) habrá que leer jeje. Saludos Ron. -good

Avatar de Usuario
Nandove
Mensajes: 834
Registrado: 10 Ene 2011 12:16
Agradecido : 138 veces
Agradecimiento recibido: 109 veces

Re: Megadrive vs Amiga y el espacio en disco

Mensajepor Nandove » 11 Abr 2016 23:26

Desde mi humilde opinión, creo que es debido a que para el Amiga, existían ciertas herramientas, IDEs de programación de 2º o 3º nivel por encima del código maquina rollo AMOS, librerías que facilitaban el acceso a los diferentes chips para hacer cosas "tradicionales" rollo como el .net de hoy dia, que los exe no funcionan si no tienes los "redistribuibles".

Al incluir esas librerías de necesaria inclusión en el disco, probablemente ocuparan ellas solas como la mitad de un disco. Sacrificas optimización por rapidez de desarrollo.

En Megadrive, se programaba todo en un pc o un Amiga, pero era código maquina. Todo muy bien optimizado.

¿Que ocurría en el Amiga cuando se ponían a hacer las famosas Demos en 4k ? tiraban de codigo maquina atacando directamente a los customchips y si se lo hubieran propuesto podrían haber realizado incluso juegos en ese tamaño, o poco mas.

Esa es la diferencia entre código maquina/ Ensamblador/bajo nivel contra los IDEs que tanto nos facilitan la vida.

Avatar de Usuario
VooD
Mensajes: 870
Registrado: 11 Abr 2011 22:19
Ubicación: Málaga
Agradecido : 2 veces
Agradecimiento recibido: 28 veces

Re: Megadrive vs Amiga y el espacio en disco

Mensajepor VooD » 12 Abr 2016 09:35

Yo creo que no, la gran mayoría de los juegos para ST Y Amiga de la época estaban programados directamente en ensamblador salvo algunas excepciones como Worms o Skidmarks. Como dato curioso Another World estaba programado en GFA Basic pero todas las rutinas de animación eran ensamblador, pero como digo, no solía ser lo común, y menos en juegos de los principales desarrolladores del momento.

Avatar de Usuario
kikems
Mensajes: 2153
Registrado: 30 May 2013 19:23
Agradecido : 421 veces
Agradecimiento recibido: 668 veces

Re: Megadrive vs Amiga y el espacio en disco

Mensajepor kikems » 12 Abr 2016 11:04

En el caso del Another World, lo que estaba realizado en GFA Basic era el editor de polígonos y de scripts de animación que utilizaron para el desarrollo , el código del producto final y motor del juego era ensamblador.

Avatar de Usuario
Jinks
Mensajes: 1211
Registrado: 09 Oct 2013 16:47
Agradecido : 50 veces
Agradecimiento recibido: 106 veces
Contactar:

Re: Megadrive vs Amiga y el espacio en disco

Mensajepor Jinks » 12 Abr 2016 11:33

Yo no sé hasta qué punto son comparables los tamaños de los programas en distintas arquitecturas. Acabo de pasarme por la página de descargas del ScummVM y la versión instalable para Windows ocupa 8,7Mb mientras que la versión comprimida en ZIP para PS3 ocupa 20,7Mb (es un ejemplo).

Pero sí, llama la atención cuando "lo mismo" ocupa para un sistema más del doble que para otro.

Avatar de Usuario
ron
Mensajes: 17663
Registrado: 28 Oct 2010 14:20
Ubicación: retrocrypta
Agradecido : 756 veces
Agradecimiento recibido: 797 veces

Re: Megadrive vs Amiga y el espacio en disco

Mensajepor ron » 12 Abr 2016 13:08

A ver a ver.... que yo he mirado un poco y las cosas empiezan a encajarme.

RAM principal: 64 Kb.
RAM de Vídeo: 64 Kb.
RAM de Sonido: 8 Kb.

ROM: Los primeros modelos de Mega Drive no tienen una BIOS como tal, los siguientes modelos ya incluyen una ROM de arranque de 2Kb que muestra el texto "Produced by or under license from Sega Enterprises Ltd.".

Capacidad de los cartuchos:

Normalmente los juegos eran de entre 4 y 16 Mbits ( Hasta 2 MegaBytes ). 2048 KiloBytes

Algunos cartuchos tienen 24 Mbits ( 3 MegaBytes ) (Jurassic Park, Eternal Champions...). El Sonic 3D tiene32 Mbits ( 4 MegaBytes ) y el Super Street Fighter II ocupa 40 Mbits ( 5 MB ).

Si es así, no cabe otra que los datos de juego van comprimidos, evidentemente no estamos hablando de una ROM que tiene un filesystem, sino que se atacan directamente direcciones de memoria que ya forman parte del sistema.

http://www.gamefaqs.com/genesis/916377- ... /faqs/9755

The Cartridge ROM
-----------------

As others on the net have observed, a standard Genesis
cartridge is nothing more than a small printed circuit board
with a ROM on it. There are some cartridges which have
battery-backed RAM for saving high scores, configurations,
etc., but I havent seen these, so I dont know about them.
If you know of a particular cartridge that has RAM, let me
know so I can go rent one and take it apart (shhhh!) to see
whats in it.

A cartridge contains a word-wide (16 bit) ROM with up to 2
Meg words (4 Mbytes). This is based on the signal !C_CE, which
is used as the cartridge ROMs chip enable on the cartridges
Ive looked at, and which is active at addresses $000000-$3fffff.

It may be possible to have more than 4 Mbyte cartridges; if
so, either they ignore the !C_CE line and do their own
address decoding, or theres a register somewhere in the
Genesis which changes the default address decoding scheme for
!_CE.

Note that cartridges are advertised as being "8 Meg"; as far
as I know, is 8 Meg _bits_, not bytes. 1 Mbyte is still
pretty impressive for a game machine.

SONIC uses a 40-pin 256Kx16 (512Kx8) ROM in word mode.

Ecco the Dolphin uses a 42-pin 512Kx16 (1024Kx8) ROM in word
mode. This one confused me because Id never seen a 42-pin
DIP before, so I thought it was 40 pins. No wonder the
signals didnt look right...

Putting together a little bit of information from a Sharp
data sheet for a 512 Kword ROM with a bit of conjecture based
on the Sonic and Ecco cartridges, this is what I can come up
with for pinouts:

Sonic Ecco
(256 Kword) (512 Kword)

----u----
----u---- A18 1=| |=42 VCC?
A17 1=| |=40 A 8 A17 2=| |=41 A 8
A 7 2=| |=39 A 9 A 7 3=| |=40 A 9
A 6 3=| |=38 A10 A 6 4=| |=39 A10
A 5 4=| |=37 A11 A 5 5=| |=38 A11
A 4 5=| |=36 A12 A 4 6=| |=37 A12
A 3 6=| |=35 A13 A 3 7=| |=36 A13
A 2 7=| |=34 A14 A 2 8=| |=35 A14
A 1 8=| |=33 A15 A 1 9=| |=34 A15
A 0 9=| |=32 A16 A 0 10=| |=33 A16
!CE 10=| |=31 !BYTE !CE 11=| |=32 !BYTE
GND 11=| |=30 GND GND 12=| |=31 GND
!OE 12=| |=29 D15 !OE 13=| |=30 D15
D 0 13=| |=28 D 7 D 0 14=| |=29 D 7
D 8 14=| |=27 D14 D 8 15=| |=28 D14
D 1 15=| |=26 D 6 D 1 16=| |=27 D 6
D 9 16=| |=25 D13 D 9 17=| |=26 D13
D 2 17=| |=24 D 5 D 2 18=| |=25 D 5
D10 18=| |=23 D12 D10 19=| |=24 D12
D 3 19=| |=22 D 4 D 3 20=| |=23 D 4
D11 20=| |=21 VCC D11 21=| |=22 VCC
--------- ---------

Note that the address line numbering is different than that
of the 68000; line A0 of the ROM is really connected to the
68000s A1. This is because of the way the 68000 handles
even/odd byte addressing using !UDS and !LDS.

The !BYTE line is held high. This puts the ROM chip into
"word" mode, where data is accessed 16 bits at a time.

The convenient correspondence between ROM and 68000 data and
address lines (ROM D0 = 68K D0, ROM D1 = 68K D1, etc..., and
ROM A0 = 68K A1, ROM A1 = 68K A2, etc...) may not exist in
all cartridge designs. This is sometimes difficult to
visualize, but keep in mind that the ROM doesnt care whether
its D0 is really D0, or if its A3 is really A3, etc. As long
as each data line is used as the same D## line for both
programming and reading, and each address line is used as the
same A## for both programming and reading, the ROM will
function properly and the 68000 will see the right
instructions. Think about it...

Why bring this up? If you remove the ROM from the cartridge
PCB and try to read it with a EPROM programmer, there may be
situations where you wont see valid 68000 instructions, or
things wont be in the right place... Assuming your
programmer isnt messed up, this would be because the address
and data lines on the ROM arent assigned the way youd
expect.

Why would someone make a cartridge like this? To make your
life difficult, if youre wanting to hack their ROMs, or to
make their life easy, by making the cartridge PCB easier to
design.

The easiest way to avoid this potential problem is to build
an adapter from your programmers EPROM socket to an edge
card connector into which you plug the cartridge. This is a
bit safer, too, so you dont have to remove the ROM from the
cartridge (or even open it up).

The Memory Map
--------------

$000000 $3fffff Cartridge ROM, when enabled by cartridge
control register and !CART_IN.

$000000 $0007ff Internal OS ROM, when enabled by cartridge
control register and !CART_IN.

$ff0000 $ffffff 64Kbytes scratchpad RAM
Partially decoded; RAM actually appears repeated between
$e00000 through $ffffff.

$a14101 cartridge control register
bit 0 = 0: cartridge disabled, OS ROM enabled
bit 0 = 1: cartridge enabled, OS ROM disabled

$a00000 $a????? Unknown. Audio? Controller I/O?

$c00000 $c????? Video display controller registers

The OS puts the top of its stack at $ffff00, and defines a
"user stack pointer" at $000000 (building down through the
top of RAM memory).

The Z80 processor is used for sound and has 8Kbytes of RAM.
I dont know anything about how the Z80 does its work, as I
havent looked


Volver a “Off Topic”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado