Fórum Unificado de Romhacking e Tradução

Romhacking e Tradução de Jogos => Dúvidas e Ajuda => Tópico iniciado por: MachineMX online Agosto 14, 2018, 20:09:30 PM

Título: (SNES) Bug Na Ferramenta PIC2SNES
Enviado por: MachineMX online Agosto 14, 2018, 20:09:30 PM
Boa Noite

O Arquivo pic2snes tem dois arquivos gfx2sopt e pcx2sopt, meu arquivo está exatamente com 16 cores e não 17 cores após usar o xnview resumindo o assunto ele faz a conversão normal de arquivos de imagens 256 x 224 passa tranquilo, mas quando passo exatos 64x64 ele aparece todo tosco, as vezes ele fica todo preto a tela no meu windows 7 de 32 bits, vcs prefere usa o pic2snes em windows xp em maquinas virtuais, ou porque ele aparece todo errado após compila, a rotina dma está certa, alguém j´passou por isso?
Abs a todos
Título: Re:(SNES)Bug em ferramenta pic2snes ferramenta tradicional gráfica
Enviado por: tvtoon online Agosto 15, 2018, 23:15:10 PM
Eu não conheço esses programas que você mencionou, mas pela sua mensagem há dois conceitos claramente diferentes no que você está produzindo...

O primeiro, que passou, é uma amostra de tela a ser exibida, com a resolução padrão. Isso pode ser uma camada do fundo.

O segundo, que não passou, é o tamanho máximo de um "sprite" a ser exibido em tela. Seria bom você especificar como pretende usar este, pois a composição é diferente.

E mais: 17 cores? Não seriam 15?
Título: Re:(SNES)Bug em ferramenta pic2snes ferramenta tradicional gráfica
Enviado por: huskie online Agosto 15, 2018, 23:25:47 PM
O título deste tópico foi alterado e resumido para se adequar às regras.
Espero que consiga solucionar o problema.
Título: Re:(SNES) Bug Na Ferramenta PIC2SNES
Enviado por: MachineMX online Agosto 16, 2018, 18:38:21 PM
Boa Noite tvtoon e huskie

É exatamente isso tvtoon o primeiro é o arquivo set eu consegui exibi corretamente graças ao pcx2snes que roda tranquilo no windows 7 em vez do arquivo set, gera o arquivo.pic com tamanho 63x64, Esse sim funciona, mas quando gero pelo gif2sopt com arquivo gif em 15(0-15 cores), com tamanho 64x64 ele aparece errado.

Eu tentei fazer como o arquivo set + arquivo map + arquivo col não deu certo.
Como o pcx2snes não gera o arquivo.map pro tamanho 64x64
Tentei pega o arquivo.map do gif2sopt mas aparece errado, meu problema tá no arquivo tilemap eu deixei no code assim:
Ex:
  LDA #$80
  STA $2100
  LDX #$3000
  STX $2116
 
  LDX #$1801
  STX $4300
  LDA #$00
  STA $4304
  LDX #(face_set)
  STX $4302
  LDX #$0800
  STX $4305
  LDA #$01
  STA $420B

  LDX #$2000
  STX $2116
  LDX #$1801
  STX $4300
  LDA #$00
  STA $4304
  LDX #(face_map)
  STX $4302
  LDX #$0800
  STX $4305
  LDA #$01
  STA $420B
  LDA #$0F
  STA $2100


O arquivo asm completo está tudo certo mais se vc quiser eu anexo aqui eu posto.
Título: Re:(SNES) Bug Na Ferramenta PIC2SNES
Enviado por: denim online Agosto 16, 2018, 19:22:07 PM
Sugiro utilizar o programa snesgfx para gerar os três arquivos que precisa.
https://www.smwcentral.net/?p=section&a=details&id=6523
Título: Re:(SNES) Bug Na Ferramenta PIC2SNES
Enviado por: MachineMX online Agosto 16, 2018, 20:12:05 PM
Valeu Denim
:parabens:

Eu acho que agora vai da certo, eu vou testa e já te falo.

Melhorou bastante mais ainda não deu certo. Olhe o print.

A minha rotina dma está assim:

  LDA #$80
  STA $2100
  LDX #$3000
  STX $2116
 
  LDX #$1801
  STX $4300
  LDA #$00
  STA $4304
  LDX #(face_set)
  STX $4302 
  LDX #$0800
  STX $4305
  LDA #$01
  STA $420B

  LDX #$2000
  STX $2116
  LDX #$1801
  STX $4300
  LDA #$00
  STA $4304
  LDX #(face_map)
  STX $4302
  LDX #$0800
  STX $4305
  LDA #$01
  STA $420B

  STZ $2121
  LDX #$2200
  STX $4300
  LDA #$00
  STA $4304
  LDX #(face_col)
  STX $4302
  LDX #$0200
  STX $4305
  LDA #$01
  STA $420B
  LDA #$0F
  STA $2100

loop:
  JMP loop
Título: Re:(SNES) Bug Na Ferramenta PIC2SNES
Enviado por: denim online Agosto 17, 2018, 08:39:57 AM
Aparentemente você esqueceu de inicializar o snes no modo correto, via $2105. Então, ele deve estar no modo 0, que possui apenas 4 cores na BG0, e seu gráfico está com 16 cores (4bpp). Para o seu caso, o modo 1 seria um dos modos possíveis para a correta exibição. Esta seria a primeira correção que eu sugiro.
Título: Re:(SNES) Bug Na Ferramenta PIC2SNES
Enviado por: MachineMX online Agosto 17, 2018, 20:37:06 PM
Entendi Denim ele deve esta no modo 0 do BG0 que está apenas com 4 cores, então pra corrigi devo muda pro modo 1 do BG que tem 16 cores, eu vou conferi aqui e já te falo, eu vou corrigi isso.

    LDX #$1FFF
    TXS
    JSL format_routine
    SEP #$20
    REP #$10

  STZ $2121
  LDA #$80
  STA $2115
  LDA #$11
  STA $2105
  LDA #$20
  STA $2107
  LDA #$00
  STA $2109
  LDA #$03
  STA $210B
  LDA #$01
  STA $210C
  LDA #$05
  STA $212C
  LDA #$0F
  STA $2100


Ele também, carrega o BG2 com 4 cores no registro tilemap $0000

O mode 1 seria 12h no registro $2105?

Título: Re:(SNES) Bug Na Ferramenta PIC2SNES
Enviado por: denim online Agosto 17, 2018, 21:10:55 PM
Precisa entender o significado dos registradores. No caso do $2105, se escrever $12 nele, vai ter o modo 2, que já atende o que você precisa. O problema entretanto é que com $12, você está configurando o background do bg0 para que tenha tamanho 16x16 e não o usual, que é 8x8. O seu mapa provavelmente foi gerado para tiles de 8x8, então o correto seria escrever $02 no $2105.

2105  wb+++-
        DCBAemmm

        A/B/C/D   = BG character size for BG1/BG2/BG3/BG4
             mmm  = BG Mode
            e     = Mode 1 BG3 priority bit

If the BG character size for BG1/BG2/BG3/BG4 bit is set, then the BG is made of 16x16 tiles. Otherwise, 8x8 tiles are used.
         
Título: Re:(SNES) Bug Na Ferramenta PIC2SNES
Enviado por: MachineMX online Agosto 17, 2018, 21:28:51 PM
Eu tirei de um tutorial na net: https://problemkaputt.de/fullsnes.htm

  5    BG2 Tile Size (0=8x8, 1=16x16)  ; (BgMode6: fixed 16x8?)
  4    BG1 Tile Size (0=8x8, 1=16x16)  ;/(BgMode7: fixed 8x8)

Se o bit do Character Size é set ou 1 é igual a 16x16 no meu caso é 0 porque está em 8x8 o bloco.
Em BG Mode 2-0 eu deixei como 02 consegui entender em números bits vai 0-7 ou 111 em BG mode.

Edit:
Valeu Denim
:parabens:

Finalmente consegui valeu mestre, se vc não tivesse olhado eu não sai desse ponto. eu fico horas e horas por dia estudando esses videos do youtube, e colocando em prática o que eu assisto e acompanho sempre o forum romhacking.net.br e o site romhackers.org. Eu troquei o snesgfs pelo pcx2sopt e deu certo.
Obrigado a vc denim e a todos que postaram neste tópico.