revert between 56095 -> 55830 in arch
[AROS.git] / arch / m68k-all / dos / bcpl_putpkt.c
blob7d90511f5ae9013cc879ce2054ddbffb2fdef8c1
1 /*
2 Copyright © 2010, The AROS Development Team. All rights reserved.
3 $Id$
5 Desc: BCPL support
6 Lang: english
7 */
9 #include <aros/debug.h>
10 #include <aros/asmcall.h>
12 #include <exec/memory.h>
13 #include <proto/exec.h>
14 #include <dos/rdargs.h>
15 #include <dos/dosextens.h>
17 /*****************************************************************************
19 NAME */
20 #include <proto/dos.h>
22 AROS_UFH2(ULONG, Dos_BCPL_putpkt,
23 /* SYNOPSIS */
24 AROS_UFHA(BSTR, bdospacket, D1),
25 AROS_UFHA(struct DosLibrary *, DOSBase, A6))
27 /* LOCATION
28 BCPL Vector offset 0xa8
30 FUNCTION
32 INPUTS
34 RESULT
36 SEE ALSO
38 *****************************************************************************/
40 AROS_USERFUNC_INIT
42 D(struct Process *me = (struct Process *)FindTask(NULL);)
43 struct DosPacket *dp = BADDR(bdospacket);
45 D(bug("BCPL putPkt: me->pr_MsgPort = %p\n", &me->pr_MsgPort));
46 D(bug("BCPL putPkt: me->pr_FileSystemTask = %p\n", me->pr_FileSystemTask));
47 D(bug("BCPL putPkt: me->pr_ConsoleTask = %p\n", me->pr_ConsoleTask));
48 #define DMP(x) D(bug("BCPL putPkt: dp->dp_%s = %p\n", #x, dp->dp_##x))
49 DMP(Link);
50 DMP(Port);
51 DMP(Type);
52 DMP(Res1);
53 DMP(Res2);
54 DMP(Arg1);
55 DMP(Arg2);
56 DMP(Arg3);
57 DMP(Arg4);
58 DMP(Arg5);
59 DMP(Arg6);
60 DMP(Arg7);
61 #define MMP(x) D(bug("BCPL putPkt: mn->mn_%s = %p\n", #x, dp->dp_Link->mn_##x))
62 MMP(Node.ln_Succ);
63 MMP(Node.ln_Pred);
64 MMP(Node.ln_Type);
65 MMP(Node.ln_Pri);
66 MMP(Node.ln_Name);
67 MMP(ReplyPort);
68 MMP(Length);
70 dp->dp_Link->mn_Node.ln_Name = (char *)dp;
71 dp->dp_Link->mn_Length = sizeof(*dp->dp_Link);
73 D(bug("BCPL putPkt: Send to port %p, reply on port %p, DosPacket %p\n",
74 dp->dp_Port, &me->pr_MsgPort, dp));
76 PutMsg(dp->dp_Port, dp->dp_Link);
77 return DOSTRUE;
79 AROS_USERFUNC_EXIT