Faits:
Faits:
A. Par jugement du 26 février 2002, le Tribunal pénal économique du canton de Fribourg a condamné W._, pour complicité d'escroquerie (art. 25 et 146 CP) et complicité de faux dans les titres (<ref-law> et art. 251 aCP), à douze mois d'emprisonnement avec sursis durant deux ans, sous déduction de 155 jours de détention préventive. Par le même jugement, le tribunal a condamné le frère de W._, soit Q._, pour escroquerie (art. 146 al. 1 et 2 CP), faux dans les titres (art. 251 ch. 1 aCP), instigation à escroquerie (art. 24 et 146 al. 1 et 2 CP) et instigation à faux dans les titres (<ref-law> et 251 ch. 1 aCP), à trois ans d'emprisonnement sous déduction de 260 jours de détention préventive. Le tribunal a aussi statué sur diverses prétentions civiles. Il a notamment admis dans son principe l'action dirigée par la Banque M._ contre les coaccusés.
En bref, ce jugement retient ce qui suit:
Désireux de se lancer dans la distribution de produits alimentaires, Q._ a créé et acquis depuis 1987 diverses sociétés. En vue de regrouper ses participations, il a constitué la société Y._ SA le 5 mars 1990, dont il était l'administrateur et l'unique actionnaire. La société Z._ SA est devenue actionnaire minoritaire de la société Y._ SA en décembre 1990. Le groupe Y._ SA avait comme but principal la distribution pour la restauration et les détaillants en Suisse de produits alimentaires frais, congelés ou en conserves.
Le 7 juin 1993, une plainte pénale a été déposée, notamment par la société Z._ SA. Une expertise a en particulier été confiée à une fiduciaire pour examiner l'activité des responsables des sociétés liées à la société Y._ SA, l'utilisation des fonds mis à disposition de ces sociétés et l'ampleur des pertes cumulées du groupe. Le rapport d'expertise définitif est daté du 23 juin 1999. Le 4 juillet 2001, le juge d'instruction a en particulier prononcé le renvoi devant le Tribunal pénal économique de Q._ et W._ pour escroquerie et faux dans les titres. Le tribunal a notamment retenu les faits suivants:
Dans le cadre d'échanges internes de marchandises (entre les sociétés du groupe), Q._ a procédé à des ajustements comptables en vue de compenser des pertes, avec effets sur les exercices 1990 à 1993. Il a procédé à des ajustements dans les comptes trimestriels et annuels des filiales du groupe relatifs aux exercices 1991 à 1993, augmentant artificiellement le chiffre d'affaires de ces sociétés par le biais desdits ajustements. Il introduisait dans la comptabilité des montants correspondant à des ventes fictives que les filiales étaient supposées avoir réalisées auprès de deux sociétés hors groupe, qui étaient sous son contrôle (B._ SA et D._ SA). Ces données étaient étayées par des pièces justificatives qu'il établissait ou faisait établir. Les postes "stock" ne reflétaient pas la réalité pour les comptes 1990 à 1993. Pour le bouclement des comptes 1991, il a modifié les listes d'inventaires des filiales au moyen d'un coefficient multiplicateur. Dans les comptes trimestriels de septembre et décembre 1992 des sociétés du groupe, il a procédé à la comptabilisation de l'acquisition d'immobilisations inexistantes venant de B._ SA. Il a fait établir sur la base de pièces au contenu inexact de faux bilans pour la société Y._ SA et les filiales, de même que de faux bilans consolidés pour les exercices 1990, 1991 et 1992, dont seuls les deux premiers ont été révisés. La situation arrêtée au 30 avril 1993 a été établie sur la base des écritures fictives que Q._ a introduit dans les comptabilités du groupe. Dans le cadre des exercices 1990 à 1993, Q._ a ainsi, dès 1991, procédé à la comptabilisation d'écritures fictives à concurrence de quelque 53,9 millions de francs au titre de facturation envers les sociétés B._ SA et D._ SA, ainsi qu'à concurrence de plusieurs millions de francs relativement à d'autres malversations. Ce faisant, il a amélioré les résultats comptables des sociétés du groupe de l'ordre de 9,4 millions de francs sur une période de deux ans et quatre mois. Il a obtenu en faveur de la société Y._ SA et des sociétés du groupe des lignes de crédits bancaires de quelque 30 millions de francs grâce à la présentation de bilans et de comptes qui révélaient des marges bénéficiaires crédibles et des chiffres d'affaires importants. Il savait qu'il jouissait de la confiance des banques, lesquelles le considéraient comme un client important, qui bénéficiait pour la révision de l'ensemble des comptes du groupe de l'appui d'une fiduciaire de qualité et qui avait comme partenaire la société Z._ SA, disposant d'une bonne assise financière. Il savait par ailleurs que les crédits garantis par la cession générale des débiteurs étaient octroyés en blanc et que les comptes falsifiés qu'il faisait parvenir aux banques corroboraient les listes de débiteurs que ces établissements recevaient. Il a convaincu par le même procédé la société Z._ SA, alors actionnaire minoritaire de la holding, de s'engager à hauteur de 7 millions de francs. Il savait que cette partenaire n'avait aucun contrôle sur le détail des comptabilités des filiales. Il a d'ailleurs reconnu avoir trahi les liens de confiance dans le but d'obtenir des liquidités.
Pour ce qui concerne plus spécifiquement W._, le tribunal a indiqué qu'en mars ou avril 1992, sur instructions de son frère, il avait établi de manière ponctuelle des inventaires de stocks fictifs pour l'ensemble des filiales du groupe, documents destinés à être intégrés dans la comptabilité du groupe, ce qu'il n'ignorait pas. Les stocks ont ainsi été améliorés à concurrence d'un montant avoisinant les 7 millions de francs. Quant au modus operandi, W._ a introduit les listes des stock réels, inventoriés par les responsables locaux, dans son ordinateur et a ensuite transféré ces données sur un programme "Excel" pour les présenter à son frère. Celui-ci, après avoir déterminé les montants requis, a introduit dans l'ordinateur le coefficient nécessaire afin d'augmenter fictivement les données des stocks. W._ a accepté d'emporter dans son bureau les inventaires falsifiés en sa présence, les a imprimés puis envoyés à la société Y._ SA, afin qu'ils puissent servir de base à l'établissement des situations comptables. Il ne pouvait ignorer la portée de ses actes puisqu'il avait assisté à la manipulation des listes et pu voir ces listes modifiées lors de leur préparation pour envoi au service comptable. Il n'était pas sans savoir que les sociétés du groupe avaient des problèmes de trésorerie tels qu'il fallait, selon les explications de son frère, les sauver. Le tribunal a relevé que, dans les circonstances d'espèce, même une personne non habile en affaires comprenait que l'objectif poursuivi était de maintenir l'apparence d'une situation saine en dissimulant les mauvais résultats d'exploitation.
Pour ce qui concerne plus spécifiquement W._, le tribunal a indiqué qu'en mars ou avril 1992, sur instructions de son frère, il avait établi de manière ponctuelle des inventaires de stocks fictifs pour l'ensemble des filiales du groupe, documents destinés à être intégrés dans la comptabilité du groupe, ce qu'il n'ignorait pas. Les stocks ont ainsi été améliorés à concurrence d'un montant avoisinant les 7 millions de francs. Quant au modus operandi, W._ a introduit les listes des stock réels, inventoriés par les responsables locaux, dans son ordinateur et a ensuite transféré ces données sur un programme "Excel" pour les présenter à son frère. Celui-ci, après avoir déterminé les montants requis, a introduit dans l'ordinateur le coefficient nécessaire afin d'augmenter fictivement les données des stocks. W._ a accepté d'emporter dans son bureau les inventaires falsifiés en sa présence, les a imprimés puis envoyés à la société Y._ SA, afin qu'ils puissent servir de base à l'établissement des situations comptables. Il ne pouvait ignorer la portée de ses actes puisqu'il avait assisté à la manipulation des listes et pu voir ces listes modifiées lors de leur préparation pour envoi au service comptable. Il n'était pas sans savoir que les sociétés du groupe avaient des problèmes de trésorerie tels qu'il fallait, selon les explications de son frère, les sauver. Le tribunal a relevé que, dans les circonstances d'espèce, même une personne non habile en affaires comprenait que l'objectif poursuivi était de maintenir l'apparence d'une situation saine en dissimulant les mauvais résultats d'exploitation.
B. Par arrêt du 28 avril 2004, la Cour d'appel pénal du Tribunal cantonal fribourgeois a partiellement admis le recours de W._ sur des points touchant à la fixation de la peine. Elle l'a condamné, pour les mêmes infractions que celles prises en compte en première instance, à six mois d'emprisonnement, avec sursis durant deux ans, sous déduction de 155 jours de détention préventive. La Cour d'appel a aussi partiellement admis le recours de Q._ sur des points touchant à la fixation de la peine. Elle l'a condamné, pour les mêmes infractions que celles retenues en première instance, à trente mois d'emprisonnement.
B. Par arrêt du 28 avril 2004, la Cour d'appel pénal du Tribunal cantonal fribourgeois a partiellement admis le recours de W._ sur des points touchant à la fixation de la peine. Elle l'a condamné, pour les mêmes infractions que celles prises en compte en première instance, à six mois d'emprisonnement, avec sursis durant deux ans, sous déduction de 155 jours de détention préventive. La Cour d'appel a aussi partiellement admis le recours de Q._ sur des points touchant à la fixation de la peine. Elle l'a condamné, pour les mêmes infractions que celles retenues en première instance, à trente mois d'emprisonnement.
C. W._ forme un recours de droit public et un pourvoi en nullité au Tribunal fédéral contre cet arrêt. Il conclut à son annulation et sollicite par ailleurs l'assistance judiciaire.

Le Tribunal fédéral considère en droit:
Le Tribunal fédéral considère en droit:
1. Conformément à l'art. 275 al. 5 PPF, le recours de droit public est examiné en premier lieu.
I. Recours de droit public
I. Recours de droit public
2. 2.1 Le recours de droit public au Tribunal fédéral est ouvert contre une décision cantonale pour violation des droits constitutionnels des citoyens (art. 84 al. 1 let. a OJ). Il n'est en revanche pas ouvert pour se plaindre d'une violation du droit fédéral, qui peut donner lieu à un pourvoi en nullité (art. 269 al. 1 PPF); un tel grief ne peut donc pas être invoqué dans le cadre d'un recours de droit public, qui est subsidiaire (art. 84 al. 2 OJ; art. 269 al. 2 PPF).
2.2 En vertu de l'art. 90 al. 1 let. b OJ, l'acte de recours doit, à peine d'irrecevabilité, contenir un exposé succinct des droits constitutionnels ou des principes juridiques violés et préciser en quoi consiste la violation. Saisi d'un recours de droit public, le Tribunal fédéral n'a donc pas à vérifier de lui-même si la décision attaquée est en tous points conforme au droit ou à l'équité. Il n'examine que les griefs d'ordre constitutionnel invoqués et suffisamment motivés dans l'acte de recours. Le recourant ne saurait se contenter de soulever de vagues griefs ou de renvoyer aux actes cantonaux (<ref-ruling> consid. 1.6 p. 189, 113 consid. 2.1 p. 120; <ref-ruling> consid. 1c p. 76). Le Tribunal fédéral n'entre pas non plus en matière sur les critiques de nature appellatoire (<ref-ruling> consid. 1b p. 495).
2.2 En vertu de l'art. 90 al. 1 let. b OJ, l'acte de recours doit, à peine d'irrecevabilité, contenir un exposé succinct des droits constitutionnels ou des principes juridiques violés et préciser en quoi consiste la violation. Saisi d'un recours de droit public, le Tribunal fédéral n'a donc pas à vérifier de lui-même si la décision attaquée est en tous points conforme au droit ou à l'équité. Il n'examine que les griefs d'ordre constitutionnel invoqués et suffisamment motivés dans l'acte de recours. Le recourant ne saurait se contenter de soulever de vagues griefs ou de renvoyer aux actes cantonaux (<ref-ruling> consid. 1.6 p. 189, 113 consid. 2.1 p. 120; <ref-ruling> consid. 1c p. 76). Le Tribunal fédéral n'entre pas non plus en matière sur les critiques de nature appellatoire (<ref-ruling> consid. 1b p. 495).
3. 3.1 Le recourant se plaint d'une violation de son droit d'être entendu. La Cour d'appel n'aurait pas tenu compte de ses critiques tendant à démontrer qu'il n'y avait pas chez lui de volonté et de conscience d'une activité coupable. L'argumentation qu'il a développée en instance cantonale de recours n'aurait pas été réfutée.
3.2 La jurisprudence a déduit du droit d'être entendu (art. 29 al. 2 Cst.) le devoir pour l'autorité de motiver sa décision, afin que le destinataire puisse la comprendre, la contester utilement s'il y a lieu et que l'autorité de recours puisse exercer son contrôle. Pour répondre à ces exigences, le juge doit mentionner, au moins brièvement, les motifs qui l'ont guidé et sur lesquels il a fondé sa décision, de manière à ce que l'intéressé puisse se rendre compte de la portée de celle-ci et l'attaquer en connaissance de cause. Le juge n'a toutefois pas l'obligation d'exposer et de discuter tous les arguments invoqués par les parties. Il n'y a violation du droit d'être entendu que si l'autorité ne satisfait pas à son devoir minimum d'examiner et de traiter les problèmes pertinents (<ref-ruling> consid. 3.2 p. 236; <ref-ruling> consid. 2b p. 102).
3.3 La Cour d'appel a noté que le recourant contestait l'élément intentionnel. Elle a exposé les éléments sur lesquels elle se fondait pour retenir que le recourant avait envisagé et accepté que son frère allait utiliser les documents comptables falsifiés à l'égard des banques et de la société partenaire Z._ SA (cf. arrêt attaqué, p. 27/28). De la sorte, la Cour d'appel a satisfait à son devoir minimum de traiter les critiques du recourant et la motivation qu'elle a adoptée est suffisante pour comprendre ce qui a guidé son choix. Il n'y a pas de violation du droit d'être entendu du recourant. Savoir si les éléments pris en compte par la Cour d'appel pour justifier sa solution sont suffisamment probants ou non relève de l'appréciation des preuves, non du droit d'être entendu.
3.4 Le recourant se plaint aussi d'arbitraire. L'argumentation qu'il présente revient à reformuler d'une manière différente sa critique d'une violation de son droit d'être entendu. S'il fallait malgré tout la considérer comme une critique relative à l'établissement des faits et à l'appréciation des preuves, elle ne consisterait qu'en une libre discussion des faits à caractère appellatoire, irrecevable dans un recours de droit public (supra, consid. 2.2).
3.4 Le recourant se plaint aussi d'arbitraire. L'argumentation qu'il présente revient à reformuler d'une manière différente sa critique d'une violation de son droit d'être entendu. S'il fallait malgré tout la considérer comme une critique relative à l'établissement des faits et à l'appréciation des preuves, elle ne consisterait qu'en une libre discussion des faits à caractère appellatoire, irrecevable dans un recours de droit public (supra, consid. 2.2).
4. Au vu de ce qui précède, le recours de droit public doit être rejeté dans la mesure où il est recevable.
II. Pourvoi en nullité
II. Pourvoi en nullité
5. Saisi d'un pourvoi en nullité, le Tribunal fédéral contrôle l'application du droit fédéral (art. 269 PPF) sur la base d'un état de fait définitivement arrêté par l'autorité cantonale (cf. art. 273 al. 1 let. b et 277bis al. 1 PPF). Il ne peut donc pas revoir les faits retenus dans la décision attaquée ni la manière dont ils ont été établis, de sorte que ces points, sous peine d'irrecevabilité, ne peuvent pas être remis en cause dans le pourvoi (<ref-ruling> consid. 1 p. 66/67).
5. Saisi d'un pourvoi en nullité, le Tribunal fédéral contrôle l'application du droit fédéral (art. 269 PPF) sur la base d'un état de fait définitivement arrêté par l'autorité cantonale (cf. art. 273 al. 1 let. b et 277bis al. 1 PPF). Il ne peut donc pas revoir les faits retenus dans la décision attaquée ni la manière dont ils ont été établis, de sorte que ces points, sous peine d'irrecevabilité, ne peuvent pas être remis en cause dans le pourvoi (<ref-ruling> consid. 1 p. 66/67).
6. 6.1 Le recourant ne remet pas en cause les infractions de base (escroquerie et faux dans les titres) imputées à son frère. En revanche, il conteste pouvoir être condamné comme complice, faute de réaliser l'élément subjectif. Selon lui, il est exclu d'admettre le dol éventuel dans son cas. En particulier, on ne saurait lui imputer d'avoir sérieusement envisagé la possibilité d'un résultat illicite. Seule une négligence consciente doit pouvoir lui être opposée.
6. 6.1 Le recourant ne remet pas en cause les infractions de base (escroquerie et faux dans les titres) imputées à son frère. En revanche, il conteste pouvoir être condamné comme complice, faute de réaliser l'élément subjectif. Selon lui, il est exclu d'admettre le dol éventuel dans son cas. En particulier, on ne saurait lui imputer d'avoir sérieusement envisagé la possibilité d'un résultat illicite. Seule une négligence consciente doit pouvoir lui être opposée.
6.2 6.2.1 Selon l'<ref-law>, le complice est "celui qui aura intentionnellement prêté assistance pour commettre un crime ou un délit". La complicité, qui est une forme de participation accessoire à l'infraction, suppose que le complice apporte à l'auteur principal une contribution causale à la réalisation de l'infraction, de telle sorte que les événements ne se seraient pas déroulés de la même manière sans cet acte de favorisation. Il n'est toutefois pas nécessaire que l'assistance du complice soit une condition sine qua non à la réalisation de l'infraction. Subjectivement, il faut que le complice sache ou se rende compte qu'il apporte son concours à un acte délictueux déterminé et qu'il le veuille ou l'accepte. A cet égard, il suffit qu'il connaisse les principaux traits de l'activité délictueuse qu'aura l'auteur, lequel doit donc avoir pris la décision de l'acte. Le dol éventuel suffit pour la complicité (<ref-ruling> consid. 5f/cc p. 68/69).
6.2.2 Déterminer ce qu'une personne veut, sait ou ce dont elle s'accommode relève du contenu de la pensée, donc de l'établissement des faits, lesquels ne peuvent être revus dans le cadre d'un pourvoi en nullité. Toutefois, pour admettre le dol éventuel, le juge se fonde généralement sur des éléments extérieurs révélateurs. Il est admis à ce propos que les questions de fait et de droit interfèrent étroitement sur certains points. Par conséquent, le juge doit exposer les éléments extérieurs le plus exhaustivement possible afin que l'on puisse discerner ce qui l'a conduit à retenir que l'auteur avait accepté la conséquence dommageable et à conclure au dol éventuel. Le Tribunal fédéral peut ainsi, dans une certaine mesure, revoir dans le cadre d'un pourvoi en nullité si ces éléments extérieurs ont été correctement appréciés au regard de la notion juridique du dol éventuel. Parmi les éléments extérieurs permettant de conclure que l'auteur s'est accommodé du résultat dommageable pour le cas où il se produirait figurent notamment la probabilité (connue par l'auteur) de la réalisation du risque et l'importance de la violation du devoir de prudence. Plus celles-ci sont grandes, plus sera fondée la conclusion que l'auteur, malgré d'éventuelles dénégations, avait accepté l'éventualité de la réalisation du résultat dommageable (<ref-ruling> consid. 3c p. 252; <ref-ruling> consid. 2c p. 248).
6.2.3 Il y a négligence consciente lorsque l'auteur envisage le résultat dommageable comme possible, mais, faisant preuve d'une imprévoyance coupable, il escompte que ce résultat - qu'il refuse - ne se produira pas. Celui qui agit par dol éventuel envisage lui aussi l'avènement du résultat dommageable. Mais il se distingue de celui qui agit par négligence consciente par le fait que, même s'il ne souhaite pas le résultat dommageable, il s'en accommode pour le cas où il se produirait (cf. notamment <ref-ruling> consid. 5a p. 3). La différence se situe donc sur le plan de la volonté et non de la conscience, puisque l'auteur prévoit dans les deux cas de figure la possibilité que les conséquences se réalisent. Mais, dans le cas du dol éventuel, l'auteur veut, plus exactement accepte, le résultat s'il se produit, alors qu'il compte qu'il ne se produira pas dans le cas de la négligence consciente.
6.3 La Cour d'appel s'est référée aux éléments retenus par le Tribunal pénal économique. Celui-ci a en substance indiqué que le recourant n'ignorait pas que les documents falsifiés devaient être intégrés dans la comptabilité commerciale; qu'il a lui-même participé à l'envoi des documents falsifiés au service comptable; qu'il ne pouvait ignorer la portée de ses actes puisqu'il avait assisté à la manipulation des documents et à leur envoi; qu'il savait que les sociétés du groupe avaient des problèmes; que même une personne non avisée en affaires devait comprendre que l'objectif poursuivi était de maintenir l'apparence d'une situation saine en dissimulant les pertes; que le recourant avait accepté la tromperie astucieuse des banques ou d'autres investisseurs privés au cas où elle se produirait (cf. arrêt attaqué, p. 26/27). La Cour d'appel a ajouté que le recourant devait s'attendre à l'intégration des documents falsifiés dans la comptabilité en raison de leur nature même; qu'il avait lui-même reconnu que son frère lui avait dit que les comptes du groupe étaient mauvais et les négociations avec les banques difficiles; qu'il a déclaré se rappeler qu'à l'époque le groupe avait des difficultés et que pour le sauver il fallait établir ces documents (cf. arrêt attaqué, p. 28/29).
6.4 Il ressort de ce qui précède que le recourant savait que les documents étaient falsifiés et qu'ils devaient être intégrés à la comptabilité. Il a en outre participé à leur envoi au service comptable. On déduit à l'évidence de ces éléments que le recourant a accepté que les documents soient intégrés à la comptabilité. Rien ne permet de conclure à une négligence consciente de sa part. C'est donc sans violer le droit fédéral que le recourant a été condamné pour complicité de faux dans les titres.
En ce qui concerne la complicité d'escroquerie, l'élément intentionnel - le dol éventuel en l'occurrence - est aussi réalisé. Selon les constatations cantonales, le recourant connaissait la mauvaise situation du groupe et les difficultés de négociation avec les banques. Il a lui-même déclaré se rappeler que les documents falsifiés avaient été établis pour sauver le groupe. A partir de là, il s'impose à l'esprit que les faux documents avaient pour but de commettre une tromperie. Il existait dans les circonstances concrètes un risque évident que les documents servent à tromper les banques prêteuses ou des investisseurs. La probabilité de la réalisation de ce risque était particulièrement élevée. Cette situation permet de conclure que le recourant s'est accommodé du résultat dommageable pour le cas où il se produirait. On ne saurait retenir chez lui une simple négligence consciente. Sa condamnation pour complicité d'escroquerie ne viole pas le droit fédéral.
En ce qui concerne la complicité d'escroquerie, l'élément intentionnel - le dol éventuel en l'occurrence - est aussi réalisé. Selon les constatations cantonales, le recourant connaissait la mauvaise situation du groupe et les difficultés de négociation avec les banques. Il a lui-même déclaré se rappeler que les documents falsifiés avaient été établis pour sauver le groupe. A partir de là, il s'impose à l'esprit que les faux documents avaient pour but de commettre une tromperie. Il existait dans les circonstances concrètes un risque évident que les documents servent à tromper les banques prêteuses ou des investisseurs. La probabilité de la réalisation de ce risque était particulièrement élevée. Cette situation permet de conclure que le recourant s'est accommodé du résultat dommageable pour le cas où il se produirait. On ne saurait retenir chez lui une simple négligence consciente. Sa condamnation pour complicité d'escroquerie ne viole pas le droit fédéral.
7. Sur le plan civil, le recourant conteste sa condamnation en faveur de l'intimée. Il ne développe pas d'argumentation spécifique mais se prévaut uniquement de l'acquittement qu'il invoque sur le plan pénal. A défaut d'acquittement, il n'y a pas lieu d'entrer en matière sur la question civile (<ref-ruling> consid. 2.4 p. 80/81; 76 IV 102 consid. 4 p. 107).
III. Frais et indemnité
III. Frais et indemnité
8. Comme les recours paraissaient d'emblée voués à l'échec, la requête d'assistance judiciaire est rejetée (art. 152 al. 1 OJ). Le recourant, qui succombe, supporte les frais relatifs aux deux recours (art. 156 al. 1 OJ et 278 al. 1 PPF), qui sont fixés de manière réduite pour tenir compte de sa mauvaise situation financière.
Il n'y a pas lieu d'allouer d'indemnité à l'intimée, qui n'a pas eu à intervenir dans la procédure devant le Tribunal fédéral.

Par ces motifs, le Tribunal fédéral prononce:
Par ces motifs, le Tribunal fédéral prononce:
1. Le recours de droit public est rejeté dans la mesure où il est recevable.
1. Le recours de droit public est rejeté dans la mesure où il est recevable.
2. Le pourvoi en nullité est rejeté dans la mesure où il est recevable.
2. Le pourvoi en nullité est rejeté dans la mesure où il est recevable.
3. La requête d'assistance judiciaire est rejetée.
3. La requête d'assistance judiciaire est rejetée.
4. Un émolument judiciaire de 1'600 francs est mis à la charge du recourant.
4. Un émolument judiciaire de 1'600 francs est mis à la charge du recourant.
5. Le présent arrêt est communiqué en copie aux parties, au Ministère public du canton de Fribourg et à la Cour d'appel pénal du Tribunal cantonal fribourgeois.
Lausanne, le 20 septembre 2004
Au nom de la Cour de cassation pénale
du Tribunal fédéral suisse
Le président: Le greffier: