crt.c

来自「SimpleGraphicOperatingSystem 32位图形化操作系统 」· C语言 代码 · 共 80 行

C
80
字号
#include <osdef.h>
#include <stdio.h>
#include "crt.h"

int __argc;
char **__argv;
char **_environ;
char **_fmode;
int __app_type;
int _commode;
int __initenv;

EXPORT int *          __p___argc(void)
{
    return &__argc;
}

EXPORT int *          __p___initenv(void)
{
    return &__initenv;
}

EXPORT int *          __p__commode(void)
{
    return &_commode;
}

EXPORT char ***       __p___argv(void)
{
    return &__argv;
}

EXPORT char ***       __p__environ(void)
{
    return &_environ;
}

EXPORT char ***       __p__fmode(void)
{
    return &_fmode;
}


void __setargv()
{
    __argv = (char**)malloc(16);
    _environ = (char**)malloc(16);
    __argc = 0;
}

EXPORT void __set_app_type (
        int at
        )
{
  __app_type = at;
}


EXPORT void __getmainargs (
        int *pargc,
        char ***pargv,
        char ***penvp,
        int dowildcard,
        _startupinfo * startinfo
        )
{
        /* set global new mode flag */
        //_newmode = startinfo->newmode;
        __setargv();
        *pargc = __argc;
        *pargv = __argv;
        *penvp = _environ;
}

typedef int _PVFV;
EXPORT void _initterm(_PVFV *a, _PVFV *b)
{
    dprintf("_initterm not implemented\n");
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?