Jump to content
Jagware

Zerosquare

Administrators
  • Content count

    2,138
  • Joined

  • Last visited

  • Days Won

    5

Posts posted by Zerosquare


  1. Nice idea !

     

    I agree with Matthias - there's already a well-known Jaguar tool with the same name. Why not something different? (JagPic, JagImage, Bmp2Jag...?)

     

    If you want maximum quality, you could use 24-bit mode on the Jaguar. On the other hand, if you want to stick to the color mode that's likely to be used in a real game (RGB16 or CRY), I've got some conversion code (including dithering) I can contribute if you need it :)


  2. Tursi has just announced that no new Skunkboards will be manufactured, and that the "official" support is going to be discontinued.

     

    But the good news is that he and Tursi kindly released the full sources, hardware design files and documentation to the public domain :)

     

    For more details, see here.

     


  3. It is possible to "pass through" parameters in batch files. Here's an example.

     

    If you save the following piece of code to test.bat :

    prog1 %1 %1.tmp

    prog2 %2 %3 %4 %5 %6 %7 %8 %9 %1.tmp

    del %1.tmp

     

    and then execute "test file.bin option1 option2 option3", here's what happens :

    - "prog1 test.bin test.bin.tmp" is executed

    - "prog2 option1 option2 option3 test.bin.tmp" is executed

    - "test.bin.tmp" is deleted

     

    If prog1 is your packer, and prog2 your BJL uploader, then you've made a BJL uploader that compresses programs before sending them, and still allows you to use the same options as the original uploader :)

     


  4. It must be a matter of taste, then ; it looks very busy to me ;)

     

    If you definitely want to host every format for every homebrew, I think a folder per release (with an additional level if several versions have been released) would make it neater. Something like this :

     

    Reboot/Some_project/v1.1/Some_Project.rom

    Reboot/Some_project/v1.1/Some_Project.cof

    Reboot/Some_project/v1.1/Some_Project.cdi

     

    An index file at the root with a short description of each homebrew would be good, too :)


  5. I agree with Orion_. It's a very nice idea. But storing every format sounds definitely overkill, since it's so easy to use Jiffi.

     

    I'd suggest :

    - ABS or COFF format if possible (since it's the most compatible one, and easy to convert to ROM/CD)

    - ROM with header for stuff that can only run from cartridge space

    - CDI for CD-only stuff

     

    As for JiFFI use - some people can't use it, they don't have a windows machine
    Nonsense. There's Wine :P

     

    or are too scared of it
    Too bad for them. The Jaguar is not a console for cowards :D

  6. Yes, PAL Jaguars can do 60 Hz, even without a hardware switch.

    In fact, the switch doesn't affect the video circuit directly ; it's connected to a general-purpose input pin, whose state is mirrored in bit 4 of the JOYBUTS register. Based on this, the boot ROM initializes the video registers with either the 50 Hz or the 60 Hz timings. That's why nothing happens until the next reset if you toggle the switch when the Jaguar is running.

     

    Warning!

    Forcing 60 Hz on a PAL Jaguar has a few drawbacks you should be aware of:

    • It requires writing to some registers Atari tells you not to touch. To quote the doc:
      Do not ever write to any of the following registers. The BOOTROM (in a standard retail console) or the STUBULATOR (in a development console) will set them up. Especially the settings in CLK2, CLK3 and HP registers must be correct to make the hardware work at all and prevent dot crawl in particular. We really do mean it: DON'T TOUCH THIS! (yes, this part in in full caps)

    • People whose TV sets/monitors don't support 60 Hz will hate you. Most TV sets and monitors in Europe do, but not all - especially the really old ones.

    • The timings won't match the "real 60 Hz" ones perfectly. That's because NTSC and PAL Jaguars have slightly different clock frequencies (26.590906 MHz vs 26.593900 Mhz, respectively), and the video clock is the same as the system clock. But TV sets/monitors can cope with slight timing errors, so it's probably not going to be a problem (Atari probably wanted to be extra safe by using two different clock frequency for NTSC and PAL, instead of a compromise between the two).

    Now, the code (ripped from the K series boot ROM):

            lea     $F00000,a0
            move    #$00B5,$F10012; CLK2 
            move    #$034C,46(a0); HP 
            move    #$06B1,48(a0); HBB 
            move    #$007D,50(a0); HBE 
            move    #$06CD,52(a0); HS
            move    #$028B,54(a0); HVS
            move    #$0310,84(a0); HEQ (the M series boot ROM uses $030E instead of $0310)
            move    #$06A0,60(a0); HDE 
            move    #$00A6,56(a0); HDB1 
            move    #$00A6,58(a0); HDB2
            move    #$020B,62(a0); VP 
            move    #$0006,76(a0); VEE
            move    #$0018,66(a0); VBE 
            move    #$002E,70(a0); VDB 
            move    #$01F0,72(a0); VDE (the M series boot ROM uses $FFFF instead of $01F0)
            move    #$01F4,64(a0); VBB 
            move    #$01FF,74(a0); VEB 
            move    #$0205,68(a0); VS

    And if for some reason you'd like to use 50 Hz on a NTSC Jag:

            lea     $F00000,a0
            move    #$00E2,$F10012; CLK2
            move    #$0352,46(a0); HP
            move    #$06AF,48(a0); HBB 
            move    #$009E,50(a0); HBE 
            move    #$06D5,52(a0); HS 
            move    #$0259,54(a0); HVS 
            move    #$0313,84(a0); HEQ 
            move    #$06A0,60(a0); HDE 
            move    #$00A6,56(a0); HDB1 
            move    #$00A6,58(a0); HDB2 
            move    #$026F,62(a0); VP   
            move    #$0006,76(a0); VEE 
            move    #$0022,66(a0); VBE 
            move    #$002E,70(a0); VDB        
            move    #$020E,72(a0); VDE  (the M series boot ROM uses $FFFF instead of $020E)        
            move    #$0258,64(a0); VBB 
            move    #$0265,74(a0); VEB 
            move    #$026A,68(a0); VS

×