Welcome, Guest. Please login or register.

Author Topic: AFA OS4.0 Final  (Read 2097 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline unusedunusedTopic starter

  • Sr. Member
  • ****
  • Join Date: Nov 2005
  • Posts: 479
    • Show all replies
AFA OS4.0 Final
« on: December 24, 2007, 02:52:03 PM »
small display problems on borderless windows fixed  (tkplayer and bubble help from TUI)
flicker of workbench titlebar complete fix.
Boot problem on some Systems fix

http://amidevcpp.amiga-world.de/AfA_Binaries/AFA_OS_V4.0.lha

3 more Skins from Ken Lester
See Screenshot

http://www.five-star.com/kens_icons/screenshots/more_themes.png

Notice
blizzard PPC Card User with still Problems shoud use blitzkick and morelibspace command add here,
because   "Anti WarpUp Code" of Card or romtofast set with jumper, seem overwrite morelibspace Code.

Notice for Coders:
In Aminet is from OS4 API the AllocSysObject.lha Code from Ilkka Lehtoranta from his OS4 emu.
AFA dont add this code , it seem more easy portable for all Systems, when Programmierers
that need this add this to their own Code.

Merry Christmas
 

Offline unusedunusedTopic starter

  • Sr. Member
  • ****
  • Join Date: Nov 2005
  • Posts: 479
    • Show all replies
Re: AFA OS4.0 Final
« Reply #1 on: December 29, 2007, 06:44:03 PM »
I dont know what the blizzard do here.but i read
that blizard load the powerup library early.

But it happen that the resident is always kill on a soft reboot.

see code of morelibspace.
Wy this do not run a a blizzard1260 card ?

seem the resident is always kill

If FindResident_("morelibspace") Then End
memsize=?endresi-?begin+150+SizeOf .Resident
*kicktag.MemList=AllocMem_(memsize,$10001)
*resi.Resident=*kicktag+80
codemem.l=*resi+SizeOf .Resident
*kicktag\ml_Node\ln_Type=0;#NT_KICKMEM
*kicktag\ml_NumEntries=1
*kicktag\ml_ME\meu_Addr=*kicktag,memsize
*resi.Resident\rt_MatchWord=$4afc
*resi\rt_Flags=#RTF_COLDSTART
*resi\rt_Version=45,0,70
*resi\rt_Name=(?name-?begin)+codemem,(?name2-?begin)+codemem
*resi\rt_Init=codemem
*resi\rt_EndSkip=SizeOf .Resident;+(codemem+(?endresi-?begin +SizeOf .Resident))
*resi\rt_MatchTag=*resi
CopyMem_ ?begin,codemem,?endresi-?begin
*exec.ExecBase=execbase
*kicktag\ml_Node\ln_Succ=*exec\KickMemPtr
*exec\KickMemPtr=*kicktag
If *exec\KickTagPtr
Poke.l *resi-4,*exec\KickTagPtr OR $80000000
End If

Poke.l *resi-8,*resi
*exec\KickTagPtr=*resi-8
*exec\KickCheckSum=SumKickData_
CacheClearU_
If NumPars=1 AND Par$(1)="REBOOT" Then ColdReboot_
End

;#include          ;example from Piru for blitzkick compatible
;#include
;
;void Init(void);
;
;struct Resident res =
;{
;    RTC_MATCHWORD,
;    &res,
;    &res + 1,
;    RTF_COLDSTART,
;    1,
;    NT_UNKNOWN,
;    70,
;    "whatever",
;    "whatever 1.0 (26.5.2007)\r\n",
;    Init
;};
;
;void Init(void)
;{
;}




ROMTag:   Dc.w  #RTC_MATCHWORD  ; UWORD RT_MATCHWORD
          Dc.l  ROMTag          ; APTR  RT_MATCHTAG
          Dc.l  endresi         ; APTR  RT_ENDSKIP
          Dc.b  #RTF_COLDSTART  ; UBYTE RT_FLAGS
          Dc.b  45              ; UBYTE RT_VERSION
          Dc.b  #NT_UNKNOWN     ; UBYTE RT_TYPE
          Dc.b  70              ; BYTE  RT_PRI
          Dc.l  name            ; APTR  RT_NAME
          Dc.l  name2           ; APTR  RT_IDSTRING
          Dc.l  begin           ; APTR  RT_INIT

begin
MOVEM.l a0-a6/d0-d7,-(a7)
MOVE.l $4,a6
MOVE.l a6,a1
LEA newfunc(pc),a0
MOVE.l a0,d0
MOVE.l #-84,a0     ;makelibrary
JSR -420(a6)
LEA oldfunc(pc),a0
MOVE.l d0,(a0)
MOVEM.l (a7)+,a0-a6/d0-d7
RTS



newfunc
MOVEM.l d1/a1/a2/a3,-(a7)
JSR -$84(a6)
CMP.l #1492,d0            ;diskfont
BEQ 'ok
CMP.l #134,d0             ;diskfont
BEQ 'ok
CMP.l #3150,d0            ;intuition library
BEQ 'ok
CMP.l #544,d0            ;graphics library
BEQ 'ok
CMP.l #46,d0            ;layers library
BEQ 'ok
CMP.l #348,d0           ;icon.library
BEQ 'ok
CMP.l #50,d0            ;icon.library OS3.1
BNE 'skip
;TRAP #0
'ok
MOVE.l d0,d0store
MOVE.l a0,a0store
MOVEQ #0,d0
CMP.w #-1,(a0)
BNE 'dolong
MOVE.l a0,a2
ADDQ.w #2,a0
LEA funcs(pc),a1
'g1 CMP.w #-1,(a0)
BEQ 'em1
MOVE.w (a0)+,d1
EXT.l d1
ADD.l a2,d1
MOVE.l d1,(a1)+
ADDQ.l #1,d0
BRA 'g1
'em1 ADDQ.l #1,d0
LEA dummy(pc),a0
MOVE.l a0,(a1)+
CMP.l #350,d0
BNE 'em1
MOVE.l #-1,(a1)+
LEA funcs(pc),a0
BRA 'doit
'dolong
LEA funcs(pc),a1
'g2 CMP.l #-1,(a0)
BEQ 'em1
MOVE.l (a0)+,(a1)+
ADDQ.l #1,d0
CMP.l #300,d0             ; failsave libs over 300 Slots are no romlib dont increase
BEQ 'wrong
BRA 'g2
'wrong
 MOVE.l d0store,d0
 MOVE.l a0store,a0
 BRA 'skip
'doit MOVE.l #10000,d0
'skip MOVEM.l (a7)+,a1/a2/d1/a3
MOVE.l a3,-(a7)
;MOVE.l oldfunc(pc),-(a7)
MOVE.l oldfunc(pc),a3
JSR (a3)
MOVE.l (a7)+,a3
JSR -$8a(a6)
RTS
dummy: TRAP #0
       RTS
funcs: Ds.l 410
oldfunc: Dc.l 0
d0store: Dc.l 0
a0store: Dc.l 0
name: Dc.b "morelibspace",0
name2: Dc.b "morelibspace V45",0
Even
endresi
 

Offline unusedunusedTopic starter

  • Sr. Member
  • ****
  • Join Date: Nov 2005
  • Posts: 479
    • Show all replies
Re: AFA OS4.0 Final
« Reply #2 on: December 31, 2007, 01:09:43 PM »
>There is no such code in any phase5 products. >Yes, on BlizzardPPC powerpc.library is >initialized inside the flashrom, but NO, unlike >what the WarpUP guys wanted everyone to >believe, it is no anti-WarpUP measure.

but there is no reason to do that in flashrom because most programs are use warpup.

Is it right that i hear that it is not so easy to boot a new OS maybe linux OS4 MOS on a blizzard Card ?.

what is the trick, wy is the blizard card so critical ?

What is diffrent to cybppc when add resident modules ?