Gamoover

Vous êtes nostalgiques des jeux vidéos de votre enfance ? Vous désirez acquérir, ou construire une borne d'arcade ? Vous trouverez ici les réponses a vos questions et une communauté de joueurs passionnés.

[Beta] - BackForceFeeder : feeder vJoy FFB pour racecabs

Démarré par njz3, Mardi 17 Mars 2020, 19:02:44 PM

gareth_iowc

I'm using Bigpanik's M2PAC setup using the original FFB board

Re-flashed the arduino with FeederIOBoard.ino


gareth_iowc



It's a custom build and the EEPROM on the FFB is from Daytona (it's been running fine with m2pac so I'm not going in blind :) )

gareth_iowc

#787
Sorry have it working with model 2. Wasn't aware the importance of commit & reset

Supermodel3 hangs when opening so looking into that

njz3

Supermodel will probably not send the correct ffb codes, giving erratic effects. Would be better to use compatibility mode, but unfortunately I do not support Daytona yet.
In the next version 0.6, Sega Rally will be supported in compatibility mode. I dont know if you can swap the eprom from Daytona to Sega Rally ?

gareth_iowc

I'm having a few issues with it being consistent with the model 2 emulator.

When using SailorSats Daytona output script I get no in-game force feedback but it will work for the test menu.

With the script removed force feedback works but not as expected.

Race 1 - feedback working
Race 2 - no  feedback
Race 3 - feedback working
Race 4 - no feedback

So 1 on one-off but it will work from the test menu each time.



Is compatibility mode the "Digital PWM (FFB Converter - PWM2M2)" check box?

I have a switchable FFB rom so i can toggle to sega rally (with a board reboot). Am i still only able to play daytona and sega really with this setup?   

Thanks for the help so far :)

Daytonas.lua

require("model2"); -- Import model2 machine globals

function Init()
Patch_SpecialInputs();
Patch_LampOutputs();
end

function Patch_SpecialInputs()
-- first, disable old read
Romset_PatchDWord(0, 0x1E504, 0x5CA01E00); -- MOV g4,0x00 (NOOP?)

-- now jump to our patched read
Romset_PatchDWord(0, 0x1E508, 0x090219F8); -- CALL 0x0003FF00

-- read io port
Romset_PatchDWord(0, 0x3FF00, 0x80A03000);
Romset_PatchDWord(0, 0x3FF04, 0x01C00012); -- LDOB g4,0x01C00012

-- read patched mask
Romset_PatchDWord(0, 0x3FF08, 0x80B83000);
Romset_PatchDWord(0, 0x3FF0C, 0x00500820); -- LDOB g7,0x00500820

-- and em
Romset_PatchDWord(0, 0x3FF10, 0x58A50097); -- AND g4,g4,g7

-- restore old mask
Romset_PatchDWord(0, 0x3FF14, 0x8CB800FF); -- LDA g7,0xff

-- return
Romset_PatchDWord(0, 0x3FF18, 0x0A000000);  -- RET
end

function Patch_LampOutputs()
-- reroute 0x01C0001E to 0x00500824
for offset = 0x00000000, 0x0003FFFF, 4 do
if Romset_ReadDWord(0, offset) == 0x01C0001E then
Romset_PatchDWord(0, offset, 0x00500824);
local opcode = offset - 1;
if Romset_ReadByte(0, opcode) == 0x80 then
Romset_PatchByte(0, opcode, 0x90) -- replace LDOB with LD
end
if Romset_ReadByte(0, opcode) == 0x82 then
Romset_PatchByte(0, opcode, 0x92) -- replace STOB with ST
end
end
end
end

function PostDraw()
if I960_ReadByte(RAMBASE + 0x00000820) == 0x00 then
I960_WriteByte(RAMBASE + 0x00000820, 0xFF);
end

-- 0xFF = normal
-- 0xFD = force beginner
-- 0xFB = force advanced
-- 0xF9 = force expert

-- 0xF7 = emergency/remote start

-- 0x7F = ex.start; found in shematics but don't yet know what it does

-- 0x3E = DIK_F4
-- 0x3E = DIK_F5
local data = 0xFF;
data = XOR(SHL(Input_IsKeyPressed(0x3E), 0x07), data); -- F4 for ex.start
data = XOR(SHL(Input_IsKeyPressed(0x3F), 0x03), data);  -- F5 for emergency/remote start
I960_WriteByte(RAMBASE + 0x00000820, data);

Video_DrawText(0,0,HEX8(I960_ReadByte(0x00500824)),0xFFFFFF);
end

njz3

Your video is very nice.
It seems like the force feedback is enabled in model 2 emulator (the log shows that effects are received), which may interfere with the raw value. Can you try model 2 emulator with disabled ffb in the ini file ?


gareth_iowc

So I disabled FFB in the model 2 config file and it works every time, But to get it working you must go into the test menu and choose drive board test or no effects are felt in game.

Can't get force feedback working with the daytonas.lua script in place

njz3

Not sure where is the issue.
I will have to try to see what is going on.

nonosto

Citation de: dvseb le Vendredi 30 Juillet 2021, 08:24:50 AM
Salut,

J'ai eu le même dans ma borne.

C'est un volant qui est de type model 3, on le trouve dans les bornes lindbergh (outrun 2, rtuned, sega race tv, etc...)

Il marche parfaitement avec les cartes FFB controller d'aganyte et le soft Backforcefeeder de NJZ3.

Il a une réactivité plus violente que les moteurs utiliser par sega sur les scud race, daytona 2, f355 ou sega rally 2...

Hello dvseb as tu essayé l'emulateur xbox 360 pour le meilleure port de tous les tps de daytona usa stp?

ninjanuin83


Popo69


njz3

#796
Correction de bugs principalement, mode pwm shaker (pour panel avec vibration seulement), gestion de saturation pour limiter la force (surtout pour les moteurs shaker et DC), éditeur de sequence pour un emuler un vr 4 boutons avec 1 ou 2 boutons, ou pour emuler un H shifter, editeur pour le decodage shifter en H.
Support natif driveboard sega rally et daytona.
Le reglage son c'était déjà là.
Attention gros changement, maintenant le soft nécessite de s'enregistrer aupres de moi, ce n'est plus gratuit et open source  ::)

Popo69


njz3

L'objectif est de tracer qui utilise mon soft.
Envoie moi un MP

leestow

I have a cabinet setup with njz3 vjoy ffb software.  And I'm using boomslangz ffb plugin.  When I play Dirty Driving, it works fantastic, unless I choose one of the mirrored tracks.  Then, it seems to have reversed the ffb feel.  Such as, it pulls right when it should pull left, and vice versa.  Anyone else have this issue?  Could this be a ffb plugin problem, or nj3z software problem?