Welcome, Guest. Please login or register.

Author Topic: BOOM 68k Port  (Read 19864 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline Crumb

  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 1786
  • Country: 00
    • Show all replies
    • http://cuaz.sourceforge.net
Re: BOOM 68k Port
« on: May 17, 2012, 03:52:47 PM »
Quote from: NovaCoder;693373
This is what I'm currently working on -> AmiQuake, should be ready in a 2 weeks.


In some platforms like mips or arm they modified some fpu code to use integers so perhaps you could apply some speed up.
The only spanish amiga news web page/club: Club de Usuarios de Amiga de Zaragoza (CUAZ)
 

Offline Crumb

  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 1786
  • Country: 00
    • Show all replies
    • http://cuaz.sourceforge.net
Re: BOOM 68k Port
« Reply #1 on: May 18, 2012, 10:10:48 AM »
Quote from: NovaCoder;693466
A couple of points.

1) Don't even try and launch it from the command line, this is a multi-tasking WB friendly application and can only be launched from the WB.

OS-friendly apps should work correctly launched from CLI. Is the problem stack related? ADoom worked flawlessly launched from both CLI and WB.

Quote
2) Use the Icon's Tooltypes to specify locations of WAD files and the BEX files etc.

If you take code from ADoom you could make it override tooltype settings when CLI parameters are specified.

Quote
3) There is currently a bug with the 060 C2P routines, do not specify 060  with an AGA display type (will be fixed with the next release)
You could auto detect cpu type and use that functions unless user forces the app to use other cpu functions. It is easy, just use something like this:
ULONG detecta_cpu(void)
{

  if ((SysBase->AttnFlags & AFF_68060) != 0)
    cpu_type = 68060;
  else if ((SysBase->AttnFlags & AFF_68040) != 0)
    cpu_type = 68040;
  else if ((SysBase->AttnFlags & AFF_68030) != 0)
    cpu_type = 68030;
  else if ((SysBase->AttnFlags & AFF_68020) != 0)
    cpu_type = 68020;
  else if ((SysBase->AttnFlags & AFF_68010) != 0)
    cpu_type = 68010;
  else
    cpu_type = 68000;
  return(cpu_type);
}
ULONG detecta_fpu(void)
{
  if (SysBase->AttnFlags & AFF_FPU40)
    fpu_type = 68040;
  else
  if (SysBase->AttnFlags & AFF_68882)
    fpu_type = 68882;
  else
  if (SysBase->AttnFlags & AFF_68881)
    fpu_type = 68881;
  else fpu_type = 0;
  return(fpu_type);
}

Quote
4) The current AmiNet version of BOOM doesn't use P96 for RTG, it's coded as a native CyberGFX app for max speed
You won't gain a single fps removing p96 support.
Quote
5) This game is only targeted at classic 68k, don't try to run it on any other 'Amiga like' platform and expect it to work properly ;)

It should work as it's an OS-friendly multitasking game. It would be different if it didn't multitask and took over the machine for maximum speed, writting to chipram at 7MB/s perfectly synchronized with the screen refresh in the short while between a frame ends and the next one is shown (like many demos do), but it's not the case.
« Last Edit: May 18, 2012, 10:13:51 AM by Crumb »
The only spanish amiga news web page/club: Club de Usuarios de Amiga de Zaragoza (CUAZ)