Atari XEGS "besoin d'aide"

Tous les tutos concernant RocketLauncher.

Modérateurs : Nabubokon, Porko, Thesalan, Modérateurs

Avatar de l’utilisateur
micaelo14
Modérateur
Modérateur
Messages : 3379
Inscription : 19 oct. 2012 - 01:00
Localisation : Centre
A remercié : 98 fois
A été remercié : 165 fois

Atari XEGS "besoin d'aide"

Message par micaelo14 » 29 avr. 2016 - 19:31

Hors-sujet
Retrouvez ce tutoriel sur le wiki HFS : Ajout du système Atari XEGS
Ajouté le 04/02/2017
Atari XEGS

Image
Descriptif
Sous les auspices de Jack Tramiel , Atari réédité deux consoles de jeux en 1986: l' Atari 7800 , qui avait déjà été publié dans un bref essai en 1984; et l' Atari 2600 Jr. , une version mise à jour de l'Atari VCS / 2600. Les XEGS suivies, la construction sur la ligne de l' ordinateur 8 bits d'Atari qui avait commencé avec l'Atari 400 et 800. [2] En pratique , le XEGS est un Atari 65XE reconditionné, dans un mouvement semblable à celle adoptée pour l' Atari 5200 , qui est un reconditionné Atari 400/800 ordinateur . Alors que les 5200 internes a légèrement modifiés, le XEGS est compatible avec la gamme existante de Atari logiciels 8-bit et périphériques , et pourrait donc fonctionner comme un ordinateur à la maison .

Atari a conçu la console dans un plan visant à augmenter la part de marché de la console de l'entreprise tout en améliorant les ventes de sa famille d'ordinateur à la maison 8-bit. Fournir un «ordinateur à partir" et "console de jeu sophistiqué» dans un seul appareil, a été pensé pour convaincre plus de détaillants et les développeurs de logiciels pour soutenir la plate-forme. En mai 1987, puis directeur d'Atari des communications, Neil Harris, mis à jour la communauté Atari en ligne en décrivant ce plan. Il a noté que la XEGS était destinée à poursuivre la ligne 8 bits en fournissant des mass-marchands d'un dispositif qui était plus attrayant pour leurs marchés. [4] jeux populaires d'ordinateurs à domicile depuis le début des années 1980 tels que Archon: la lumière et les ténèbres , Lode Runner , et Midnight magic David fait une grande partie du catalogue XEGS.

Le système de co-existé avec l'Atari 2600 Jr. et Atari 7800 sur tablettes des magasins [6] et a parfois été présenté aux côtés de ces systèmes Atari publicités imprimées et à la télévision.
Nous utiliserons l'émulateur Atari800WinPLus

Paramétrer RL ainsi:

Image

Utiliser ce module:
Module
MEmu = Atari800WinPlus
MEmuV = 4.1
MURL = https://github.com/Jaskier/Atari800Win-PLus/downloads" onclick="window.open(this.href);return false;
MAuthor = wahoobrian
MVersion = 1.0
MCRC = A3F59E69
iCRC = 3F1E06FD
mId = 635532589929508800
MSystem = "Atari XEGS","Atari 8-Bit","Atari 5200"

;----------------------------------------------------------------------------
; Notes:
;
; Settings are stored in the registry @ HKEY_CURRENT_USER\Software\Atari800WinPLus
; CLI is the same is nonGUI emulator, Atari800. However, some of the CLI does not seem to do anything,
; so registry updates are used in some cases.
;
; Enter rom images for OS-A, OS-B, XL/XE, 5200 and BASIC via Atari | Rom images
;
; Some Atari 8-Bit computer games require BASIC Revision A version. Not a bad idea to use that as a default,
; since it seems to work for all games that require a version of BASIC.
;
; Mouse can be used to emulate paddles, lightgun and lightpen.
;
; This emulator has proven to be very buggy with lots of random crashes. Also fullscreen doesn't work properly.
; To setup fullscreen mode, go to View->Graphics Options and then select:
; - 640x480, partially clipped - This is the only real fullscreen mode, but the image will be clipped so it's
; no good.
; - 800x600 or 1024x768, full display - These will work without clipping, but the colors will be wrong and you
; will also have the menu and toolbar always visible.
; So it's basically useless. Besides fullscreen will make the emulator crash many times. It's highly suggested
; than you use Atari800 instead of this emulator since it's a much better version.
;----------------------------------------------------------------------------
StartModule()
BezelGUI()
FadeInStart()

mType := Object("Atari XEGS","xegs","Atari 8-Bit","xl","Atari 5200","5200")
ident := mType[systemName] ; search object for the systemName identifier Atari800 uses
If !ident
ScriptError("Your systemName is: " . systemName . "`nIt is not one of the known supported systems for this Atari800 module: " . moduleName)

;clear out registry values - any leftovers from previous executions can cause the emu to crash
RegWrite, REG_SZ, HKCU, Software\Atari800WinPLus, fileAutoboot,
RegWrite, REG_SZ, HKCU, Software\Atari800WinPLus, fileTape,
RegWrite, REG_SZ, HKCU, Software\Atari800WinPLus, pathDiskDrive1,
RegWrite, REG_SZ, HKCU, Software\Atari800WinPLus, fileRomCartridge,
RegWrite, REG_SZ, HKCU, Software\Atari800WinPLus, fileRomCurrent,

IfExist, % modulePath . "\" . systemName . ".ini" ; use a custom systemName ini if it exists
settingsFile := modulePath . "\" . systemName . ".ini"
Else
settingsFile := modulePath . "\" . moduleName . ".ini"

7z(romPath, romName, romExtension, 7zExtractPath)

Fullscreen := IniReadCheck(settingsFile, "Settings", "Fullscreen","true",,1)
fullscreenCLI := If (Fullscreen="true") ? "-fullscreen" : "-windowed"
MouseMode := IniReadCheck(settingsFile, romName, "MouseMode",A_Space,,1)

cliOptions = %fullscreenCLI%

;set mouse mode
if (MouseMode in Paddle,Lightgun,Lightpen)
RegWrite, REG_DWORD, HKCU, Software\Atari800WinPLus, inputState,66
if (MouseMode = "Paddle")
cliOptions := cliOptions . " -mouse pad"
else if (MouseMode = "Lightgun")
cliOptions := cliOptions . " -mouse gun"
else if (MouseMode = "Lightpen")
cliOptions := cliOptions . " -mouse pen"
else {
RegWrite, REG_DWORD, HKCU, Software\Atari800WinPLus, inputState,2
cliOptions := cliOptions . " -mouse off"
}

If (SystemName = "Atari 5200")
{
cliOptions := cliOptions . " -5200 "

CartType := IniReadCheck(settingsFile, romName, "CartType",0,,1)
if (!CartType) {
a5200cartMaps := Object(4,20,8,19,16,6,32,4,40,7)
FileGetSize, fsize, %romPath%\%romName%%romExtension%, K
CartType := a5200cartMaps[fsize] ; search object for the systemName identifier Atari800 uses
}

If (!CartType)
ScriptError("Unknown cart type, make sure you define a CartType for this game on Atari 5200.ini")
Else
RegWrite, REG_DWORD, HKCU, Software\Atari800WinPLus, sysCartType,%CartType%

cliOptions := cliOptions . " -cart "
}
Else If (SystemName = "Atari XEGS")
{
MouseMode := IniReadCheck(settingsFile, romName, "MouseMode", "off",,1)
cliOptions := cliOptions . " -xegs -mouse " . MouseMode . " -cart "
}
Else
{
Basic := IniReadCheck(settingsFile, romName, "Basic","false",,1)
OSType := IniReadCheck(settingsFile, romName, "OSType",2,,1)
VideoMode := IniReadCheck(settingsFile, romName, "VideoMode","PAL",,1)
MachineType := IniReadCheck(settingsFile, romName, "MachineType","xl",,1)
CassetteLoadingMethod := IniReadCheck(settingsFile, romName, "CassetteLoadingMethod","Auto",,1)
CartType := IniReadCheck(settingsFile, romName, "CartType",0,,1)
Command := IniReadCheck(settingsFile, romName, "Command", "",,1)
SendCommandDelay := IniReadCheck(settingsFile, romName, "SendCommandDelay", "2000",,1)
MouseMode := IniReadCheck(settingsFile, romName, "MouseMode", "off",,1)
DisableSIOPatch := IniReadCheck(settingsFile, romName, "DisableSIOPatch","false",,1)
LoadBasicAsCart := IniReadCheck(settingsFile, romName, "LoadBasicAsCart","",,1)

;set machine type (OS-A, OS-B, XL)
RegWrite, REG_DWORD, HKCU, Software\Atari800WinPLus, sysMachineType,%OSType%

;set sio patch (fast i/o access)
if (DisableSIOPatch = "true")
RegWrite, REG_DWORD, HKCU, Software\Atari800WinPLus, sysEnableSIOPatch,0
else
RegWrite, REG_DWORD, HKCU, Software\Atari800WinPLus, sysEnableSIOPatch,1

basic := If (Basic="true") ? " -basic" : " -nobasic"
videomode := If (VideoMode="PAL") ? " -pal" : " -ntsc"

cliOptions := cliOptions . basic . videomode . " -"MachineType . " -mouse " . MouseMode

if (LoadBasicAsCart)
{
PathToBasicCart := AbsoluteFromRelative(EmuPath, LoadBasicAsCart)
CheckFile(PathToBasicCart)
cliOptions := cliOptions . " -cart " . PathToBasicCart
}

If romExtension in .a52,.car,.cart,.rom,.bin ;Carts
{ cliOptions := cliOptions . " -cart"
RegWrite, REG_DWORD, HKCU, Software\Atari800WinPLus, sysCartType,%CartType%
}
Else if romExtension in .atr,.xfd,.atx,.bin ;Disks
cliOptions := cliOptions . " -disk1"
Else if romExtension in .xex,.com,.bas,.bin ;Programs
cliOptions := cliOptions . " -run"
Else if romExtension in .cas ;Tapes
{
fullRomPath := romPath . "\" . romName . romExtension
if (CassetteLoadingMethod = "Auto")
cliOptions := cliOptions . " -boottape"
else
RegWrite, REG_SZ, HKCU, Software\Atari800WinPLus, fileTape, %fullRomPath%
}
Else
ScriptError("Your rom has an extension of " . romExtension . ", only these extensions are supported:`a52,car,cart,rom,cas,atr,xfd,atx,xex,com,bas,bin")
}

BezelStart("fixResMode")
Run(executable . " " . cliOptions . " """ . romPath . "\" . romName . romExtension, emuPath)

WinWait("Atari800Win PLus")
Sleep, 500

; script to look for previous crash window...
; If previous run of emu crashed, auto-select No to avoid resetting ALL settings
IfWinExist, Atari800Win PLus ahk_class #32770
{
WinActivate, Atari800Win PLus ahk_class #32770
IfWinActive, Atari800Win PLus ahk_class #32770
{
SetControlDelay -1
;ControlClick, Button2, Atari800Win PLus ahk_class #32770 ; Click No
PostMessage, 0x111, 7,,,Atari800Win PLus ahk_class #32770 ;Same as clicking No, but more reliable
}
}

WinWaitActive("Atari800Win PLus 4.1")

If (Fullscreen="true") ;CLI for fullscreen is broken so enable it through a PostMessage instead
{
PostMessage, 0x111, 32851,,,Atari800Win PLus 4.1
Sleep, 100
}
BezelDraw()

if (CassetteLoadingMethod="CLOAD+RUN") {
Sleep,1000
SendCommand("CLOAD{Enter}", 100)
SendCommand("{Enter}", 100)
Sleep, 3000
SendCommand("RUN{Enter}", 100)
}

SendCommand(Command, 1000)

;check if emu crashed, if it did, just get out - can we log/display a message so user knows what happened?
Sleep, 5000
IfWinExist, Atari800Win PLus Monitor
WinClose, Atari800Win PLus Monitor

FadeInExit()
Process("WaitClose", executable)
7zCleanUp()
FadeOutExit()
ExitModule()


MultiGame:
Log("MultiGame Label was run!")

If romExtension in .atr
{ Send !1 ; swaps a Disk
wvTitle:="Select disk to insert into drive 1 ahk_class #32770"
} Else If romExtension in .cas
{ Send !t ; swaps a Tape
wvTitle:="Select tape image to attach ahk_class #32770"
} Else
ScriptError(romExtension . " is an invalid multi-game extension")

WinWait(wvTitle)
WinWaitActive(wvTitle)
OpenROM(wvTitle, selectedRom)
Log("Module - WinWaitActive`, ahk_class Atari800Win PLus 4.1`, `, 5")
WinWaitActive("Atari800Win PLus 4.1",,5)
WinActivate, Atari800Win PLus 4.1
Return

CheckCreateFile(file){
IfNotExist, %file%
FileAppend,, %file%
Return file
}

CloseProcess:
FadeOutStart()
BezelExit()
If (Fullscreen="true") ;If the process is closed on fullscreen then the emulator will always start to a black screen
{
PostMessage, 0x111, 32851,,,Atari800Win PLus 4.1
Sleep, 100
}
WinClose("Atari800Win PLus 4.1")
Return
Et ... un petit soucis !!

Image

L'émulateur lance mais pas en plein écran ( pour être honnête je me suis pas trop attardé ^^ ), si vous avez la solution :D

Passons ce système en vert ^^

Répondre

Revenir à « Tutos pour RocketLauncher »