[!] Liga interesante, haciendo un S.O. en lenguaje Basic.

Iniciado por BlackZeroX, 20 Febrero 2011, 00:25 AM

0 Miembros y 1 Visitante están viendo este tema.

BlackZeroX

.

Bueno ya NO pueden decir que no se puede hacer un S.O.. en el lenguaje Basic ni denigrarlo tanto.

http://wiki.osdev.org/FreeBasic_Barebones

Dulces Lunas!¡.
The Dark Shadow is my passion.

yalosabes

:D! pues.. si buskar en google un codigo hecho en visual basic llamado "inkafarma" , observamos que ;) hasta sakaron una interfaz similar al winxp (todo en vbasic)

79137913

HOLA!!!

@yalosabes: Si, lo de la interfaz es cierto, pero no es un so de ningun tipo, simplemente es un exe que es ejecutado por W$.

GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

79137913                          *Shadow Scouts Team*

seba123neo

Cita de: yalosabes en 22 Febrero 2011, 00:25 AM
:D! pues.. si buskar en google un codigo hecho en visual basic llamado "inkafarma" , observamos que ;) hasta sakaron una interfaz similar al winxp (todo en vbasic)

esa aplicación fue posteada aca...

   Sistema de una Farmacia

no es un sistema operativo, es una aplicacion que corre en windows, nada mas.

te recomiendo que leas lo que es un sistema operativo.
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

yalosabes

Creo que fui mal interpretado (en todo caso.. tuve una mala redaccion)...

Me referia que con  vbasic se puede obtener una buena interfaz grafica para el usuario =)

79137913

HOLA!!!

Black, perdon, pero tengo una pregunta...

Código (vb) [Seleccionar]
Const s = "Text"
Dim pointer as Byte Ptr
pointer = CPtr(Byte Ptr, @s)
' pointer[0] = Asc("T")
' pointer[1] = Asc("e")
' pointer[2] = Asc("x")
' pointer[3] = Asc("t")
' pointer[4] = 0


Me podes dar un ejemplo de como hacerlo en vb6 (si se puede obvio)

GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

79137913                          *Shadow Scouts Team*

Lunfardo


BlackZeroX

#7
.
@SmogMX

Con Basic puedes manejar OpenGL, DirectX, Programar para Chips/MicroChips, Drivers, etc...

@79137913

Lo que hace ese codigo es que la variable pointer apunta al primer caracter de la constante s es como hacer esto, en vb6 el codigo es mas largo, pero en agun otro compilador de Basic como KBasic, ACE, GCBasic puedes hacer esto:

Me llamo la atención C/C++ para este tipo de cosas por ser mas rapidás aunque los compiladores de Basic actuales tambien ofrecen las ventajas de C/C++ y sinceramente al ver esto vb6 ya esta obsoleto ( Nunca pense decirlo ).



#include <stdio.h>

int main(int argc, char *argv[])
{
    char s[5] = "Text";     //  "Constante".
    char *pointer = &s[0];  //  Apuntamos al primer elemento de s.
    printf("%s",pointer);   //  Mostramos contenido.
    fflush(stdout);         //  Por si las moscas de que el buffer no se puestre.
    /*
    pointer[0] = T
    pointer[1] = e
    pointer[2] = x
    pointer[3] = t
    pointer[4] = /0 ( Byte = 0 , interpretado como fin de cadena ).
    */
    getchar();
    return 0;
}



mas omenos en vb6 seria algo asi:

Código (Vb) [Seleccionar]


Private Sub Form_Load()
Const s         As String = "Text" ' ten en cuenta que en vb6 cada letra esta separada por un byte nulo y 4 bytes antes del puntero al 1er elemento hay 4 bytes que indican la logitud de esta cadena (  bchar()  ).
Dim pointer     As Long
    pointer = StrPtr(s)
    ' Pointer pointer apunta a la letra T de la cadena s.
End Sub



Temibles Lunas!¡.
The Dark Shadow is my passion.