{{htmlmetatags>metatag-robots=() metatag-title=(COMANDI STANDARD BASIC SCAMBIO DI NUMERI | ugBASIC User Manual) metatag-keywords=(ugBASIC,Commodore 64,Commodore PLUS/4,ZX Spectrum) metatag-description=(An isomorphic language for retrocomputers) metatag-media-og:image=(:ugbasic:logo-ugbasic-fb.png) metatag-og:title=(COMANDI STANDARD BASIC SCAMBIO DI NUMERI | ugBASIC User Manual) metatag-og:description=(An isomorphic language for retrocomputers) }} ====== ugBASIC Manuale Utente ====== ===== COMANDI STANDARD BASIC SCAMBIO DI NUMERI ===== ==== SCOPO ==== Questo esempio mostra come scambiare tra loro due variabili dello stesso tipo. ==== SORGENTE ==== CLS DIM firstbs AS SIGNED BYTE, secondbs AS SIGNED BYTE DIM firstbu AS BYTE, secondbu AS BYTE DIM firstws AS SIGNED WORD, secondws AS SIGNED WORD DIM firstwu AS WORD, secondwu AS WORD DIM firstds AS SIGNED DWORD, secondds AS SIGNED DWORD DIM firstdu AS DWORD, seconddu AS DWORD firstbs = -42: secondbs = 24 firstbu = 42: secondbu = 24 firstws = -4200: secondws = 2400 firstwu = 4200: secondwu = 2400 firstds = -1024000: secondds = 204800 firstdu = 1024000: seconddu = 204800 SWAP firstbs, secondbs SWAP firstbu, secondbu SWAP firstws, secondws SWAP firstwu, secondwu SWAP firstds, secondds SWAP firstdu, seconddu PRINT "BYTE SIGNED:"; IF firstbs = 24 THEN PRINT "OK (1) "; ELSE PRINT "FAIL (1) = ";firstbs ENDIF IF secondbs = -42 THEN PRINT "OK (2) "; ELSE PRINT "FAIL (2) = ";secondbs ENDIF PRINT PRINT "BYTE UNSIGNED:"; IF firstbu = 24 THEN PRINT "OK (1) "; ELSE PRINT "FAIL (2) = ";firstbu ENDIF IF secondbu = 42 THEN PRINT "OK (2) "; ENDIF PRINT PRINT "WORD SIGNED:"; IF firstws = 2400 THEN PRINT "OK (1) "; ENDIF IF secondws = -4200 THEN PRINT "OK (2) "; ENDIF PRINT PRINT "WORD UNSIGNED:"; IF firstwu = 2400 THEN PRINT "OK (1) "; ENDIF IF secondwu = 4200 THEN PRINT "OK (2) "; ENDIF PRINT PRINT "DWORD SIGNED:"; IF firstds = 204800 THEN PRINT "OK (1) "; ENDIF IF secondds = -1024000 THEN PRINT "OK (2) "; ENDIF PRINT PRINT "DWORD UNSIGNED:"; IF firstdu = 204800 THEN PRINT "OK (1) "; ENDIF IF seconddu = 1024000 THEN PRINT "OK (2) "; ENDIF ==== FILE ==== * ''[[https://github.com/spotlessmind1975/ugbasic/tree/main/examples/basic_swap.bas|basic_swap.bas]]'' ==== COME ESEGUIRLO ==== === Atari 400/800 === Per poter eseguire l'esempio, è necessario disporre dell'emulatore Altirra, e in particolare che l'eseguibile ''x64sc'' sia accessibile. Digitare quindi il seguente comando: # Linux ugbc.atari basic_swap.bas -o example.xex altirra example.xex # Windows ugbc.atari.exe basic_swap.bas -o example.xex altirra example.xex === Atari 600XL/800XL/1200XL/XG(SE) === Per poter eseguire l'esempio, è necessario disporre dell'emulatore Altirra, e in particolare che l'eseguibile ''x64sc'' sia accessibile. Digitare quindi il seguente comando: # Linux ugbc.atarixl basic_swap.bas -o example.xex altirra example.xex # Windows ugbc.atarixl.exe basic_swap.bas -o example.xex altirra example.xex === Commodore 64 === Per poter eseguire l'esempio, è necessario disporre dell'emulatore VICE, e in particolare che l'eseguibile ''x64sc'' sia accessibile. Digitare quindi il seguente comando: # Linux ugbc.c64 basic_swap.bas -o example.prg x64sc example.prg # Windows ugbc.c64.exe basic_swap.bas -o example.prg x64sc example.prg === Commodore 64+REU === Per poter eseguire l'esempio, è necessario disporre dell'emulatore VICE, e in particolare che l'eseguibile ''x64sc'' sia accessibile. Digitare quindi il seguente comando: # Linux ugbc.c64reu basic_swap.bas -o example.prg x64sc -reu example.prg # Windows ugbc.c64reu.exe basic_swap.bas -o example.prg x64sc -reu example.prg === Commodore PLUS/4 === == Usando YAPE == Per poter eseguire l'esempio, è necessario disporre dell'emulatore YAPE, e in particolare che l'eseguibile ''yape'' sia accessibile. Digitare quindi il seguente comando: # Linux ugbc.plus4 basic_swap.bas -o example.prg yape example.prg # Windows ugbc.plus4.exe basic_swap.bas -o example.prg yape example.prg == Usando VICE == Per poter eseguire l'esempio, è necessario disporre dell'emulatore VICE, e in particolare che l'eseguibile ''xplus4'' sia accessibile. Digitare quindi il seguente comando: # Linux ugbc.plus4 basic_swap.bas -o example.prg xplus4 example.prg # Windows ugbc.plus4.exe basic_swap.bas -o example.prg xplus4 example.prg === Dragon 32 === Per poter eseguire l'esempio, è necessario disporre dell'emulatore XROAR, e in particolare che l'eseguibile ''x64sc'' sia accessibile. Digitare quindi il seguente comando: # Linux ugbc.d32 basic_swap.bas -o example.bin xroar -rompath (percorso ROM) example.bin # Windows ugbc.d32.exe basic_swap.bas -o example.bin xroar.exe -rompath (percorso ROM) example.bin === Dragon 64 === Per poter eseguire l'esempio, è necessario disporre dell'emulatore XROAR, e in particolare che l'eseguibile ''x64sc'' sia accessibile. Digitare quindi il seguente comando: # Linux ugbc.d64 basic_swap.bas -o example.bin xroar -rompath (percorso ROM) example.bin # Windows ugbc.d64.exe basic_swap.bas -o example.bin xroar.exe -rompath (percorso ROM) example.bin === PC128 Olivetti Prodest === Per poter eseguire l'esempio, è necessario disporre dell'emulatore DCMOTO, e in particolare che l'eseguibile ''x64sc'' sia accessibile. Digitare quindi i seguenti comandi: # Linux ugbc.pc128op basic_swap.bas -o example.bin dcmoto example.bin (scegliere example.bin) (scegliere BASIC 128) CLEAR,&H2FFF: LOADM"CASS:",R: EXEC # Windows ugbc.pc128op.exe basic_swap.bas -o example.bin dcmoto example.bin (scegliere BASIC 128) CLEAR,&H2FFF: LOADM"CASS:",R: EXEC === Thomson MO5 === Per poter eseguire l'esempio, è necessario disporre dell'emulatore DCMOTO, e in particolare che l'eseguibile ''x64sc'' sia accessibile. Digitare quindi i seguenti comandi: # Linux ugbc.mo5 basic_swap.bas -o example.bin dcmoto example.bin (scegliere example.bin) (scegliere BASIC 128) CLEAR,&H2FFF: LOADM"CASS:",R: EXEC # Windows ugbc.mo5.exe basic_swap.bas -o example.bin dcmoto example.bin (scegliere BASIC 128) CLEAR,&H2FFF: LOADM"CASS:",R: EXEC === Commodore VIC-20 === Per poter eseguire l'esempio, è necessario disporre dell'emulatore XEMU, e in particolare che l'eseguibile ''xmega65'' sia accessibile. Digitare quindi il seguente comando: # Linux ugbc.vic20 basic_swap.bas -o example.prg xvic --memory 24k example.prg # Windows ugbc.vic20.exe basic_swap.bas -o example.prg xvic --memory 24k example.prg === ZX Spectrum === Per poter eseguire l'esempio, è necessario disporre dell'emulatore Speccy, e in particolare che l'eseguibile ''speccy'' sia accessibile. Digitare quindi il seguente comando: # Linux ugbc.zx basic_swap.bas -o example.tap Speccy example.tap # Windows ugbc.zx.exe basic_swap.bas -o example.tap Speccy example.tap === ColecoVision === Per compilare e mandare in esecuzione l'esempio, hai bisogno di avere l'emulatore openMsx oppure il BlueMSX, e in particolare che il suo eseguibile sia accessibile. Dopo di che, digita questo comando sulla linea di comando: == openMSX == # Linux ugbc.coleco basic_swap.bas -o example.rom openmsx -machine \"COL - ColecoVision\" -cart example.rom # Windows ugbc.coleco.exe basic_swap.bas -o example.rom bluemsx -machine \"COL - ColecoVision\" example.rom == blueMSX == # Linux ugbc.coleco basic_swap.bas -o example.rom bluemsx /machine \"COL - ColecoVision\" /rom1 example.rom # Windows ugbc.coleco.exe basic_swap.bas -o example.rom bluemsx /machine \"COL - ColecoVision\" /rom1 example.rom === SEGA SC-3000 === Per compilare e mandare in esecuzione l'esempio, hai bisogno di avere l'emulatore BlueMSX, e in particolare che il suo eseguibile sia accessibile. Dopo di che, digita questo comando sulla linea di comando: # Linux ugbc.sc3000 basic_swap.bas -o example.rom bluemsx /machine \"SEGA - SC-3000\" /rom1 example.rom # Windows ugbc.sc3000.exe basic_swap.bas -o example.rom bluemsx /machine \"SEGA - SC-3000\" /rom1 example.rom === SEGA SG-1000 === Per compilare e mandare in esecuzione l'esempio, hai bisogno di avere l'emulatore BlueMSX, e in particolare che il suo eseguibile sia accessibile. Dopo di che, digita questo comando sulla linea di comando: # Linux ugbc.sg1000 basic_swap.bas -o example.rom bluemsx /machine \"SEGA - SG-1000\" /rom1 example.rom # Windows ugbc.sg1000.exe basic_swap.bas -o example.rom bluemsx /machine \"SEGA - SG-1000\" /rom1 example.rom ==== PROBLEMI? ==== Se hai trovato un problema nel cercare di eseguire questo esempio, se pensi che ci sia un bug o, più semplicemente, vorresti che fosse migliorato, [[https://github.com/spotlessmind1975/ugbasic/issues/new?title=MIGLIORARE COMANDI STANDARD BASIC SCAMBIO DI NUMERI|apri una segnalazione]] su GitHub per questo specifico esempio. Grazie!===== POWERED BY ===== [[:it:ugbasic:user:examples|{{ :ugbasic:user:logo-ugbasic.png?nolink&600 |}}]]