Página 1 de 1
Rodar Basic no Harbour
Enviado: 24 Out 2020 10:49
por ricardosierban
Senhores, bom dia.
É possível rodar Basic no Harbour ? Pergunto porque estou com um material que oferece códigos em Basic para criar jogos e eu gostaria de fazer uns testes.
Caso seja possível enviem se possível como fazê-lo, porque eu tentei passar o códigos dos exemplos apenas colocando Procedure Main no início e return no final, mas não deu certo.
Desde já agradeço.
Segue anexo a capa do material comentado.
Ricardo
Rodar Basic no Harbour
Enviado: 24 Out 2020 13:18
por MSDN
Olha, meio inusitado tua postagem !
Escrever " Function Main().....Return " e colocar código Basic no meio e querer que funcione, utilizando o Harbour, é no mínimo bizarro não acha !
Será que talvez o que vc queria perguntar era se tinha como portar o código Basic para Harbour ?
Rodar Basic no Harbour
Enviado: 24 Out 2020 15:49
por ricardosierban
Olá MSDN, é isso mesmo

, quero fazer uns testes de Basic no Harbour, é possíivel.
Sei que é bizarro o que eu perguntei, mas ão vejo como impossível
A questão ´que não sei como fazer.
Obrigado por responder.
Rodar Basic no Harbour
Enviado: 24 Out 2020 22:12
por alxsts
Olá!
ricardosierban escreveu:não sei como fazer
Use o pré processador...
Rodar Basic no Harbour
Enviado: 25 Out 2020 22:46
por marcosgambeta
Ricardo,
O Harbour foi criado para executar código compatível com a linguagem usada no Clipper (xBase). Sendo assim, não há nada nele voltado para a linguagem BASIC.
Você pode usar BASIC no FreeBASIC (entre outras opções):
https://www.freebasic.net/
https://github.com/freebasic/fbc
Rodar Basic no Harbour
Enviado: 26 Out 2020 13:13
por rochinha
Amiguinhos,
Nada é impossivel com xBase mas sim passível.
Código: Selecionar todos
// Sample directives to help translation of VBScript.
// WARNING: Line continuation _ is NOT supported.
// : LOOP becomes END so don't mix VBScript support with XBScript
// code that uses LOOP!
// : VBScript Function call without () is NOT supported.
#command ' <*x*> =>
#command Dim <vars,...> => Local <vars>
#command Set <!id!> = <exp> => <id> := <exp>
#command If <cond> Then => IF <cond>
#command Loop => End
#translate .<!id!> => :<id>
#translate Not => !
#translate And => .AND.
#translate Or => .OR.
#translate MsgBox <exp>[.<more>] => MessageBox( 0, <exp>[:<more>], "XBScript", 0 )
#translate Nothing => NIL
//#translate _ => ;
#translate & => +
#define adCmdTable 0
/* ****************************** codigo exemplo ****************************** *
' Vbscript comment.
Dim cn
Dim rs
Set cn = CreateObject( "ADODB.Connection" )
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;" ;
& "User Id=Admin; Data Source=ado.mdb"
cn.Open
Set rs = CreateObject( "ADODB.Recordset" )
rs.Open( "Names", cn, 0, 1, 2 )
do while not rs.eof()
MsgBox rs.Fields( "First" ).Value
rs.MoveNext()
loop
rs.Close
Set rs = Nothing
'cn.Close
Set cn = Nothing
* ****************************** codigo exemplo ****************************** */
Usando
xcommand e
#translate você pode simular alguns comandos e funções em outras linguagens.
Recentemente o
José M Quintas também falou sobre o assunto.
Quando eu colecionava revistas de programação importadas com Clipper Advisor encontrei uma reportagem onde um programador criou um .CH com todos os comandos do Cobol, tornando possivel se programar nesta linguagem e compilar com Clipper.
Basta um esmero.
Rodar Basic no Harbour
Enviado: 26 Out 2020 13:24
por JoséQuintas
Vai acabar topando com coisas que não dá pra traduzir.
Como é pra games, provavelmente vai topar a parte gráfica que pode complicar.
Tem um detalhe também do array começar no número 0 e não no 1, o que pode precisar de ajustes adicionais.
Tudo vai depender dos fontes/recursos usados.
Rodar Basic no Harbour
Enviado: 26 Out 2020 14:50
por marcosgambeta
Os jogos presentes no livro citado fazem uso intenso do GOTO e tem as linhas numeradas (característica dos dialetos BASIC mais antigos).
Podem ver no link abaixo:
https://archive.org/details/Basic_Compu ... 5/mode/2up
Então, não se resume a uma simples conversão de comandos usando o pré-processador. Tem de resolver o problema do GOTO para lá, GOTO para cá. Mas não tem o problema dos gráficos, pois são jogos em modo texto.
Como exercício de programação, pode ser interessante adaptar os programas para xBase. Mas se o objetivo é se divertir com os jogos, um compilador BASIC seria a melhor e mais rápida opção.
Rodar Basic no Harbour
Enviado: 27 Out 2020 20:45
por ricardosierban
Agradeço à todos a ajuda, vou fazer os testes com o Free Basic e deixar o Harbour só para o Clipper mesmo
De qualquer maneira estou gostando muito da linguagem.
Rodar Basic no Harbour
Enviado: 27 Out 2020 21:31
por MSDN
Ricardo, não sei os outros programadores, mas quando eu vi isso
Harbour só para o Clipper mesmo
, dá entender que Harbour é só uma ferramenta para código legado Clipper, sendo que suas capacidades vão muito, mas muito além disso, então, se nos seus vídeos for esse o rumo que vai tomar, peço que reconsidere, pois não ajudaria em nada a linguagem e as pessoas que se utilizam dela profissionalmente.